diff --git a/src/modules/welcome/checker/GeneralRequirements.cpp b/src/modules/welcome/checker/GeneralRequirements.cpp index 1881558b8..6e8e66d5d 100644 --- a/src/modules/welcome/checker/GeneralRequirements.cpp +++ b/src/modules/welcome/checker/GeneralRequirements.cpp @@ -48,6 +48,7 @@ #include #include #include +#include #include #include //geteuid @@ -59,9 +60,28 @@ GeneralRequirements::GeneralRequirements( QObject* parent ) { } +static QSize +biggestSingleScreen() +{ + QSize s; + for ( const auto* screen : QGuiApplication::screens() ) + { + QSize thisScreen = screen->availableSize(); + if ( !s.isValid() ) + { + s = thisScreen; + } + else if ( s.width() * s.height() < thisScreen.width() * thisScreen.height() ) + { + s = thisScreen; + } + } + return s; +} + Calamares::RequirementsList GeneralRequirements::checkRequirements() { - QSize availableSize = qApp->desktop()->availableGeometry().size(); + QSize availableSize = biggestSingleScreen(); bool enoughStorage = false; bool enoughRam = false;