diff --git a/src/private/qquickcontrolsettings.cpp b/src/private/qquickcontrolsettings.cpp index 161398322ba2c2e0cfdc32396cb63feb770f06dc..01456b2a169d63a2628f68e72d8e12efa284e07e 100644 --- a/src/private/qquickcontrolsettings.cpp +++ b/src/private/qquickcontrolsettings.cpp @@ -54,14 +54,20 @@ QString QQuickControlSettings::theme() { static QString currentTheme; if (currentTheme.isEmpty()) { - currentTheme = QLatin1String("Styles/Base"); -#ifndef QT_NO_WIDGETS - //Only enable QStyle support when we are using QApplication - if (QCoreApplication::instance()->inherits("QApplication")) { - if (qgetenv("QT_QUICK_CONTROLS_NO_WIDGETS").toInt() < 1) - currentTheme = QLatin1String("Styles/Desktop"); + //Following variable is for internal use only. It is very possible + //that it will disappear in future releases. + currentTheme = qgetenv("QT_QUICK_CONTROLS_STYLE"); + + if (currentTheme.isEmpty()) { + //Only enable QStyle support when we are using QApplication + if (QCoreApplication::instance()->inherits("QApplication")) + currentTheme = QLatin1String("Desktop"); + else + currentTheme = QLatin1String("Base"); } -#endif + + if (!currentTheme.startsWith(QLatin1String("Styles/"))) + currentTheme.prepend(QLatin1String("Styles/")); } return currentTheme; }