diff options
36 files changed, 149 insertions, 58 deletions
diff --git a/.qmake.conf b/.qmake.conf index 31431340..5b8a4939 100644 --- a/.qmake.conf +++ b/.qmake.conf @@ -1,8 +1,8 @@ load(qt_build_config) CONFIG += warning_clean -DEFINES += QT_NO_FOREACH QT_NO_JAVA_STYLE_ITERATORS QT_NO_LINKED_LIST +DEFINES += QT_NO_FOREACH QT_NO_JAVA_STYLE_ITERATORS QQC2_SOURCE_TREE = $$PWD -MODULE_VERSION = 5.15.0 +MODULE_VERSION = 6.0.0 diff --git a/dependencies.yaml b/dependencies.yaml new file mode 100644 index 00000000..607a345b --- /dev/null +++ b/dependencies.yaml @@ -0,0 +1,7 @@ +dependencies: + ../qtgraphicaleffects: + ref: 1a1416501b484166743d8fc98ef24db7be5bbddb + required: true + ../qtimageformats: + ref: 10c6352fb384b732e942af9ada4cb8d07a793c45 + required: false diff --git a/examples/quickcontrols2/quickcontrols2.pro b/examples/quickcontrols2/quickcontrols2.pro index 6d0a3875..a9784d86 100644 --- a/examples/quickcontrols2/quickcontrols2.pro +++ b/examples/quickcontrols2/quickcontrols2.pro @@ -9,6 +9,5 @@ SUBDIRS += \ wearable \ imagine/automotive \ imagine/musicplayer - wearable qtHaveModule(widgets): SUBDIRS += flatstyle diff --git a/examples/quickcontrols2/texteditor/documenthandler.cpp b/examples/quickcontrols2/texteditor/documenthandler.cpp index 5def1b61..e840d411 100644 --- a/examples/quickcontrols2/texteditor/documenthandler.cpp +++ b/examples/quickcontrols2/texteditor/documenthandler.cpp @@ -385,3 +385,5 @@ void DocumentHandler::setModified(bool m) if (m_document) m_document->textDocument()->setModified(m); } + +#include "moc_documenthandler.cpp" diff --git a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp index dcba73fe..985945cf 100644 --- a/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp +++ b/src/imports/controls/fusion/qtquickcontrols2fusionstyleplugin.cpp @@ -73,10 +73,10 @@ QtQuickControls2FusionStylePlugin::QtQuickControls2FusionStylePlugin(QObject *pa void QtQuickControls2FusionStylePlugin::registerTypes(const char *uri) { qmlRegisterModule(uri, 2, 3); // Qt 5.10->2.3 - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterSingletonType<QQuickFusionStyle>(import, 2, 3, "Fusion", styleSingleton); diff --git a/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp b/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp index 71c013d5..41fd0e85 100644 --- a/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp +++ b/src/imports/controls/imagine/qtquickcontrols2imaginestyleplugin.cpp @@ -67,11 +67,11 @@ QtQuickControls2ImagineStylePlugin::QtQuickControls2ImagineStylePlugin(QObject * void QtQuickControls2ImagineStylePlugin::registerTypes(const char *uri) { - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterUncreatableType<QQuickImagineStyle>(uri, 2, 3, "Imagine", tr("Imagine is an attached property")); QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterType<QQuickAnimatedImageSelector>(import, 2, 3, "AnimatedImageSelector"); qmlRegisterType<QQuickImageSelector>(import, 2, 3, "ImageSelector"); diff --git a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp index eb0e6c87..d8cc04dd 100644 --- a/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp +++ b/src/imports/controls/material/qtquickcontrols2materialstyleplugin.cpp @@ -68,11 +68,11 @@ QtQuickControls2MaterialStylePlugin::QtQuickControls2MaterialStylePlugin(QObject void QtQuickControls2MaterialStylePlugin::registerTypes(const char *uri) { - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterUncreatableType<QQuickMaterialStyle>(uri, 2, 0, "Material", tr("Material is an attached property")); QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterType<QQuickMaterialBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); qmlRegisterType<QQuickMaterialProgressBar>(import, 2, 0, "ProgressBarImpl"); diff --git a/src/imports/controls/qtquickcontrols2plugin.cpp b/src/imports/controls/qtquickcontrols2plugin.cpp index 9fe82ba2..6730848f 100644 --- a/src/imports/controls/qtquickcontrols2plugin.cpp +++ b/src/imports/controls/qtquickcontrols2plugin.cpp @@ -79,6 +79,7 @@ public: ~QtQuickControls2Plugin(); void registerTypes(const char *uri) override; + void unregisterTypes() override; QString name() const override; void initializeTheme(QQuickTheme *theme) override; @@ -94,7 +95,8 @@ QtQuickControls2Plugin::QtQuickControls2Plugin(QObject *parent) : QQuickStylePlu QtQuickControls2Plugin::~QtQuickControls2Plugin() { - QQuickStylePrivate::reset(); + // Intentionally empty: we use register/unregisterTypes() to do + // initialization and cleanup, as plugins are not unloaded on macOS. } static bool isDefaultStyle(const QString &style) @@ -120,13 +122,9 @@ void QtQuickControls2Plugin::registerTypes(const char *uri) stylePlugin->initializeTheme(theme); qDeleteAll(stylePlugins); - // Register the latest version, even if there are no new types or new revisions for existing types yet. - // Before Qt 5.12, we would do the following: - // - // qmlRegisterModule(uri, 2, QT_VERSION_MINOR - 7); // Qt 5.7->2.0, 5.8->2.1, 5.9->2.2... - // - // However, we want to align with the rest of Qt Quick which uses Qt's minor version. - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); + // The minor version used to be the current Qt 5 minor. For compatibility it is the last + // Qt 5 release. + qmlRegisterModule(uri, 2, 15); // QtQuick.Controls 2.0 (originally introduced in Qt 5.7) qmlRegisterType(resolvedUrl(QStringLiteral("AbstractButton.qml")), uri, 2, 0, "AbstractButton"); @@ -202,14 +200,10 @@ void QtQuickControls2Plugin::registerTypes(const char *uri) qmlRegisterType(resolvedUrl(QStringLiteral("HorizontalHeaderView.qml")), uri, 2, 15, "HorizontalHeaderView"); qmlRegisterType(resolvedUrl(QStringLiteral("VerticalHeaderView.qml")), uri, 2, 15, "VerticalHeaderView"); - // Register the latest version, even if there are no new types or new revisions for existing types yet. - // Before Qt 5.12, we would do the following: - // - // qmlRegisterModule(import, 2, QT_VERSION_MINOR - 7); // Qt 5.7->2.0, 5.8->2.1, 5.9->2.2... - // - // However, we want to align with the rest of Qt Quick which uses Qt's minor version. + // The minor version used to be the current Qt 5 minor. For compatibility it is the last + // Qt 5 release. const QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, QT_VERSION_MINOR); + qmlRegisterModule(import, 2, 15); // QtQuick.Controls.impl 2.0 (Qt 5.7) qmlRegisterType<QQuickDefaultBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); @@ -246,6 +240,12 @@ void QtQuickControls2Plugin::registerTypes(const char *uri) qmlRegisterRevision<QQuickText, 6>(import, 2, 3); } +void QtQuickControls2Plugin::unregisterTypes() +{ + QQuickStylePlugin::unregisterTypes(); + QQuickStylePrivate::reset(); +} + QString QtQuickControls2Plugin::name() const { return QStringLiteral("Default"); diff --git a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp index 7a999b79..08cd5001 100644 --- a/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp +++ b/src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp @@ -65,11 +65,11 @@ QtQuickControls2UniversalStylePlugin::QtQuickControls2UniversalStylePlugin(QObje void QtQuickControls2UniversalStylePlugin::registerTypes(const char *uri) { - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(uri, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterUncreatableType<QQuickUniversalStyle>(uri, 2, 0, "Universal", tr("Universal is an attached property")); QByteArray import = QByteArray(uri) + ".impl"; - qmlRegisterModule(import, 2, QT_VERSION_MINOR); // Qt 5.12->2.12, 5.13->2.13... + qmlRegisterModule(import, 2, 15); // Qt 5.12->2.12, 5.13->2.13... qmlRegisterType<QQuickUniversalFocusRectangle>(import, 2, 0, "FocusRectangle"); qmlRegisterType<QQuickUniversalBusyIndicator>(import, 2, 0, "BusyIndicatorImpl"); diff --git a/src/imports/platform/qquickplatformdialog.cpp b/src/imports/platform/qquickplatformdialog.cpp index 2a785bbc..983c2766 100644 --- a/src/imports/platform/qquickplatformdialog.cpp +++ b/src/imports/platform/qquickplatformdialog.cpp @@ -407,3 +407,5 @@ QWindow *QQuickPlatformDialog::findParentWindow() const } QT_END_NAMESPACE + +#include "moc_qquickplatformdialog_p.cpp" diff --git a/src/imports/platform/qquickplatformmenu.cpp b/src/imports/platform/qquickplatformmenu.cpp index 1f5f52d7..8954d439 100644 --- a/src/imports/platform/qquickplatformmenu.cpp +++ b/src/imports/platform/qquickplatformmenu.cpp @@ -938,3 +938,5 @@ void QQuickPlatformMenu::updateIcon() } QT_END_NAMESPACE + +#include "moc_qquickplatformmenu_p.cpp" diff --git a/src/imports/platform/qquickplatformmenubar.cpp b/src/imports/platform/qquickplatformmenubar.cpp index 99757829..592a6bfe 100644 --- a/src/imports/platform/qquickplatformmenubar.cpp +++ b/src/imports/platform/qquickplatformmenubar.cpp @@ -328,3 +328,5 @@ void QQuickPlatformMenuBar::menus_clear(QQmlListProperty<QQuickPlatformMenu> *pr } QT_END_NAMESPACE + +#include "moc_qquickplatformmenubar_p.cpp" diff --git a/src/imports/platform/qquickplatformmenuitem.cpp b/src/imports/platform/qquickplatformmenuitem.cpp index fa3fdafb..e5741b6b 100644 --- a/src/imports/platform/qquickplatformmenuitem.cpp +++ b/src/imports/platform/qquickplatformmenuitem.cpp @@ -623,3 +623,5 @@ void QQuickPlatformMenuItem::updateIcon() } QT_END_NAMESPACE + +#include "moc_qquickplatformmenuitem_p.cpp" diff --git a/src/imports/platform/qquickplatformmenuitemgroup.cpp b/src/imports/platform/qquickplatformmenuitemgroup.cpp index 7e091881..e0773bb1 100644 --- a/src/imports/platform/qquickplatformmenuitemgroup.cpp +++ b/src/imports/platform/qquickplatformmenuitemgroup.cpp @@ -388,3 +388,5 @@ void QQuickPlatformMenuItemGroup::items_clear(QQmlListProperty<QQuickPlatformMen } QT_END_NAMESPACE + +#include "moc_qquickplatformmenuitemgroup_p.cpp" diff --git a/src/imports/platform/qquickplatformsystemtrayicon.cpp b/src/imports/platform/qquickplatformsystemtrayicon.cpp index da483822..4a96b38f 100644 --- a/src/imports/platform/qquickplatformsystemtrayicon.cpp +++ b/src/imports/platform/qquickplatformsystemtrayicon.cpp @@ -482,3 +482,5 @@ void QQuickPlatformSystemTrayIcon::updateIcon() } QT_END_NAMESPACE + +#include "moc_qquickplatformsystemtrayicon_p.cpp" diff --git a/src/imports/templates/qtquicktemplates2plugin.cpp b/src/imports/templates/qtquicktemplates2plugin.cpp index 3b085c56..9c57b471 100644 --- a/src/imports/templates/qtquicktemplates2plugin.cpp +++ b/src/imports/templates/qtquicktemplates2plugin.cpp @@ -131,6 +131,7 @@ public: ~QtQuickTemplates2Plugin(); void registerTypes(const char *uri) override; + void unregisterTypes() override; private: bool registered; @@ -142,34 +143,27 @@ private: QtQuickTemplates2Plugin::QtQuickTemplates2Plugin(QObject *parent) : QQmlExtensionPlugin(parent), registered(false) { -#if QT_CONFIG(shortcut) - originalContextMatcher = qt_quick_shortcut_context_matcher(); - qt_quick_set_shortcut_context_matcher(QQuickShortcutContext::matcher); -#endif } QtQuickTemplates2Plugin::~QtQuickTemplates2Plugin() { - if (registered) - cleanupProviders(); - -#if QT_CONFIG(shortcut) - qt_quick_set_shortcut_context_matcher(originalContextMatcher); -#endif + // Intentionally empty: we use register/unregisterTypes() to do + // initialization and cleanup, as plugins are not unloaded on macOS. } void QtQuickTemplates2Plugin::registerTypes(const char *uri) { +#if QT_CONFIG(shortcut) + originalContextMatcher = qt_quick_shortcut_context_matcher(); + qt_quick_set_shortcut_context_matcher(QQuickShortcutContext::matcher); +#endif + registered = true; initProviders(); - // Register the latest version, even if there are no new types or new revisions for existing types yet. - // Before Qt 5.12, we would do the following: - // - // qmlRegisterModule(uri, 2, QT_VERSION_MINOR - 7); // Qt 5.7->2.0, 5.8->2.1, 5.9->2.2... - // - // However, we want to align with the rest of Qt Quick which uses Qt's minor version. - qmlRegisterModule(uri, 2, QT_VERSION_MINOR); + // The minor version used to be the current Qt 5 minor. For compatibility it is the last + // Qt 5 release. + qmlRegisterModule(uri, 2, 15); // QtQuick.Templates 2.0 (originally introduced in Qt 5.7) qmlRegisterType<QQuickAbstractButton>(uri, 2, 0, "AbstractButton"); @@ -368,6 +362,16 @@ void QtQuickTemplates2Plugin::registerTypes(const char *uri) qmlRegisterType<QQuickVerticalHeaderView>(uri, 2, 15, "VerticalHeaderView"); } +void QtQuickTemplates2Plugin::unregisterTypes() +{ + if (registered) + cleanupProviders(); + +#if QT_CONFIG(shortcut) + qt_quick_set_shortcut_context_matcher(originalContextMatcher); +#endif +} + QT_END_NAMESPACE #include "qtquicktemplates2plugin.moc" diff --git a/src/quickcontrols2/qquickstyle.cpp b/src/quickcontrols2/qquickstyle.cpp index 0d7b44c6..e1cf4bfe 100644 --- a/src/quickcontrols2/qquickstyle.cpp +++ b/src/quickcontrols2/qquickstyle.cpp @@ -43,6 +43,7 @@ #include <QtCore/qsettings.h> #include <QtCore/qfileselector.h> #include <QtCore/qlibraryinfo.h> +#include <QtCore/qloggingcategory.h> #include <QtCore/qmetaobject.h> #include <QtGui/qcolor.h> #include <QtGui/qfont.h> @@ -57,6 +58,8 @@ QT_BEGIN_NAMESPACE +Q_LOGGING_CATEGORY(lcQtQuickControlsStyle, "qt.quick.controls.style") + /*! \class QQuickStyle \brief The QQuickStyle class allows configuring the application style. @@ -188,6 +191,8 @@ struct QQuickStyleSpec void resolve(const QUrl &baseUrl = QUrl()) { + qCDebug(lcQtQuickControlsStyle) << "resolving style with baseUrl" << baseUrl; + if (style.isEmpty()) style = QGuiApplicationPrivate::styleOverride; if (style.isEmpty()) @@ -240,6 +245,15 @@ struct QQuickStyleSpec } resolved = true; } + + qCDebug(lcQtQuickControlsStyle).nospace() << "done resolving:" + << "\n custom=" << custom + << "\n resolved=" << resolved + << "\n style=" << style + << "\n fallbackStyle=" << fallbackStyle + << "\n fallbackMethod=" << fallbackMethod + << "\n configFilePath=" << configFilePath + << "\n customStylePaths=" << customStylePaths; } void reset() @@ -266,12 +280,19 @@ struct QQuickStyleSpec return configFilePath; } + // Is this a custom style defined by the user and not "built-in" style? bool custom; + // Did we manage to find a valid style path? bool resolved; + // The full path to the style. QString style; + // The built-in style to use if the requested style cannot be found. QString fallbackStyle; + // A description of the way in which fallbackStyle was set, used in e.g. warning messages shown to the user. QByteArray fallbackMethod; + // The path to the qtquickcontrols2.conf file. QString configFilePath; + // An extra list of directories where we search for available styles before any other directories. QStringList customStylePaths; }; @@ -555,7 +576,9 @@ QString QQuickStyle::path() */ void QQuickStyle::setStyle(const QString &style) { - if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), 2, 0)) { + qCDebug(lcQtQuickControlsStyle) << "setStyle called with" << style; + + if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0))) { qWarning() << "ERROR: QQuickStyle::setStyle() must be called before loading QML that imports Qt Quick Controls 2."; return; } @@ -579,7 +602,7 @@ void QQuickStyle::setStyle(const QString &style) */ void QQuickStyle::setFallbackStyle(const QString &style) { - if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), 2, 0)) { + if (QQmlMetaType::isModule(QStringLiteral("QtQuick.Controls"), QTypeRevision::fromVersion(2, 0))) { qWarning() << "ERROR: QQuickStyle::setFallbackStyle() must be called before loading QML that imports Qt Quick Controls 2."; return; } diff --git a/src/quickcontrols2/qquickstyleplugin.cpp b/src/quickcontrols2/qquickstyleplugin.cpp index 553a6cad..c35c8735 100644 --- a/src/quickcontrols2/qquickstyleplugin.cpp +++ b/src/quickcontrols2/qquickstyleplugin.cpp @@ -63,7 +63,15 @@ QString QQuickStylePlugin::name() const void QQuickStylePlugin::initializeTheme(QQuickTheme *theme) { - Q_UNUSED(theme); + Q_UNUSED(theme) +} + +void QQuickStylePlugin::unregisterTypes() +{ + Q_D(QQuickStylePlugin); + // Destroy the selector so that it is recreated in resolvedUrl() and + // any new style that has been set at runtime will be accounted for when selecting QML files. + d->selector.reset(); } QUrl QQuickStylePlugin::resolvedUrl(const QString &fileName) const diff --git a/src/quickcontrols2/qquickstyleplugin_p.h b/src/quickcontrols2/qquickstyleplugin_p.h index 6b89926c..67103e12 100644 --- a/src/quickcontrols2/qquickstyleplugin_p.h +++ b/src/quickcontrols2/qquickstyleplugin_p.h @@ -66,6 +66,7 @@ public: virtual QString name() const; virtual void initializeTheme(QQuickTheme *theme); + virtual void unregisterTypes() override; QUrl resolvedUrl(const QString &fileName) const; diff --git a/src/quickcontrols2/qquickstyleselector.cpp b/src/quickcontrols2/qquickstyleselector.cpp index d11a95bd..72e7af66 100644 --- a/src/quickcontrols2/qquickstyleselector.cpp +++ b/src/quickcontrols2/qquickstyleselector.cpp @@ -48,7 +48,9 @@ QT_BEGIN_NAMESPACE -Q_LOGGING_CATEGORY(lcQtQuickControlsStyle, "qt.quick.controls.style") +Q_LOGGING_CATEGORY(lcStyleSelectorSelect, "qt.quick.controls.styleSelector.select") +Q_LOGGING_CATEGORY(lcStyleSelectorSetPaths, "qt.quick.controls.styleSelector.setPaths") +Q_LOGGING_CATEGORY(lcStyleSelectorAddSelector, "qt.quick.controls.styleSelector.addSelector") static QString ensureSlash(const QString &path) { @@ -112,6 +114,9 @@ void QQuickStyleSelector::addSelector(const QString &selector) return; d->selectors += selector; + + qCDebug(lcStyleSelectorSetPaths).nospace() << "added selector " << selector + << "; full list is now: " << d->selectors; } QStringList QQuickStyleSelector::paths() const @@ -123,6 +128,7 @@ QStringList QQuickStyleSelector::paths() const void QQuickStyleSelector::setPaths(const QStringList &paths) { Q_D(QQuickStyleSelector); + qCDebug(lcStyleSelectorSetPaths) << "setting paths to" << paths; d->paths = paths; } @@ -133,7 +139,7 @@ QUrl QQuickStyleSelector::select(const QString &fileName) const // 1) requested style (e.g. "MyStyle", included in d->selectors) // 2) fallback style (e.g. "Material", included in d->selectors) // 3) default style (empty selector, not in d->selectors) - qCDebug(lcQtQuickControlsStyle) << "selecting" << fileName << "from" << d->paths << "with selectors" << d->selectors; + qCDebug(lcStyleSelectorSelect) << "selecting" << fileName << "from" << d->paths << "with selectors" << d->selectors; int to = d->selectors.count() - 1; if (d->selectors.isEmpty() || !d->selectors.first().isEmpty()) @@ -145,7 +151,7 @@ QUrl QQuickStyleSelector::select(const QString &fileName) const for (const QString &path : d->paths) { const QUrl selectedUrl = d->select(ensureSlash(path) + selector + QLatin1Char('/') + fileName); if (selectedUrl.isValid()) { - qCDebug(lcQtQuickControlsStyle) << "==>" << selectedUrl << "from" << path << "with selector" << selector; + qCDebug(lcStyleSelectorSelect) << "==>" << selectedUrl << "from" << path << "with selector" << selector; return selectedUrl; } } diff --git a/src/quickcontrols2/qquicktumblerview.cpp b/src/quickcontrols2/qquicktumblerview.cpp index 4a64ad7f..eaa58032 100644 --- a/src/quickcontrols2/qquicktumblerview.cpp +++ b/src/quickcontrols2/qquicktumblerview.cpp @@ -316,3 +316,5 @@ QQuickItem *QQuickTumblerView::view() } QT_END_NAMESPACE + +#include "moc_qquicktumblerview_p.cpp" diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp index 8632e14c..f5dec6c2 100644 --- a/src/quicktemplates2/qquickabstractbutton.cpp +++ b/src/quicktemplates2/qquickabstractbutton.cpp @@ -1177,3 +1177,5 @@ QAccessible::Role QQuickAbstractButton::accessibleRole() const #endif QT_END_NAMESPACE + +#include "moc_qquickabstractbutton_p.cpp" diff --git a/src/quicktemplates2/qquickcombobox.cpp b/src/quicktemplates2/qquickcombobox.cpp index d9bbd2bd..f8b91b4e 100644 --- a/src/quicktemplates2/qquickcombobox.cpp +++ b/src/quicktemplates2/qquickcombobox.cpp @@ -1966,3 +1966,5 @@ void QQuickComboBox::accessibilityActiveChanged(bool active) #endif // QT_END_NAMESPACE + +#include "moc_qquickcombobox_p.cpp" diff --git a/src/quicktemplates2/qquickdelaybutton.cpp b/src/quicktemplates2/qquickdelaybutton.cpp index 7b769089..abc1488d 100644 --- a/src/quicktemplates2/qquickdelaybutton.cpp +++ b/src/quicktemplates2/qquickdelaybutton.cpp @@ -265,3 +265,5 @@ QPalette QQuickDelayButton::defaultPalette() const } QT_END_NAMESPACE + +#include "moc_qquickdelaybutton_p.cpp" diff --git a/src/quicktemplates2/qquickmenubaritem.cpp b/src/quicktemplates2/qquickmenubaritem.cpp index ee407f5b..bfb23a06 100644 --- a/src/quicktemplates2/qquickmenubaritem.cpp +++ b/src/quicktemplates2/qquickmenubaritem.cpp @@ -183,3 +183,5 @@ QAccessible::Role QQuickMenuBarItem::accessibleRole() const #endif QT_END_NAMESPACE + +#include "moc_qquickmenubaritem_p.cpp" diff --git a/src/quicktemplates2/qquickmenuitem.cpp b/src/quicktemplates2/qquickmenuitem.cpp index ec1ea621..f0cb2045 100644 --- a/src/quicktemplates2/qquickmenuitem.cpp +++ b/src/quicktemplates2/qquickmenuitem.cpp @@ -277,3 +277,5 @@ QAccessible::Role QQuickMenuItem::accessibleRole() const #endif QT_END_NAMESPACE + +#include "moc_qquickmenuitem_p.cpp" diff --git a/src/quicktemplates2/qquickpopupanchors.cpp b/src/quicktemplates2/qquickpopupanchors.cpp index 5acc2934..c48ca5ff 100644 --- a/src/quicktemplates2/qquickpopupanchors.cpp +++ b/src/quicktemplates2/qquickpopupanchors.cpp @@ -70,3 +70,5 @@ void QQuickPopupAnchors::resetCenterIn() } QT_END_NAMESPACE + +#include "moc_qquickpopupanchors_p.cpp" diff --git a/src/quicktemplates2/qquickspinbox.cpp b/src/quicktemplates2/qquickspinbox.cpp index 3482af8c..a3441c51 100644 --- a/src/quicktemplates2/qquickspinbox.cpp +++ b/src/quicktemplates2/qquickspinbox.cpp @@ -1176,3 +1176,5 @@ qreal QQuickSpinButton::implicitIndicatorHeight() const } QT_END_NAMESPACE + +#include "moc_qquickspinbox_p.cpp" diff --git a/src/quicktemplates2/qquickstackview.cpp b/src/quicktemplates2/qquickstackview.cpp index 4c314904..1d7bb91f 100644 --- a/src/quicktemplates2/qquickstackview.cpp +++ b/src/quicktemplates2/qquickstackview.cpp @@ -1383,3 +1383,5 @@ void QQuickStackViewAttached::resetVisible() */ QT_END_NAMESPACE + +#include "moc_qquickstackview_p.cpp" diff --git a/src/quicktemplates2/qquickswipedelegate.cpp b/src/quicktemplates2/qquickswipedelegate.cpp index 30616f7a..4a66ecef 100644 --- a/src/quicktemplates2/qquickswipedelegate.cpp +++ b/src/quicktemplates2/qquickswipedelegate.cpp @@ -1383,3 +1383,6 @@ void QQuickSwipeDelegateAttached::setPressed(bool pressed) } QT_END_NAMESPACE + +#include "moc_qquickswipe_p.cpp" +#include "moc_qquickswipedelegate_p.cpp" diff --git a/src/quicktemplates2/qquickswipeview.cpp b/src/quicktemplates2/qquickswipeview.cpp index dab20b93..f8b6ea77 100644 --- a/src/quicktemplates2/qquickswipeview.cpp +++ b/src/quicktemplates2/qquickswipeview.cpp @@ -474,3 +474,5 @@ bool QQuickSwipeViewAttached::isPreviousItem() const } QT_END_NAMESPACE + +#include "moc_qquickswipeview_p.cpp" diff --git a/tests/auto/focus/tst_focus.cpp b/tests/auto/focus/tst_focus.cpp index 958b996b..8a1b36ad 100644 --- a/tests/auto/focus/tst_focus.cpp +++ b/tests/auto/focus/tst_focus.cpp @@ -232,7 +232,9 @@ void tst_focus::policy() QVERIFY(!control->hasActiveFocus()); // Qt::WheelFocus - QWheelEvent wheelEvent(QPoint(control->width() / 2, control->height() / 2), 10, Qt::NoButton, Qt::NoModifier); + QWheelEvent wheelEvent(QPointF(control->width() / 2, control->height() / 2), QPointF(), + QPoint(), QPoint(0, 10), Qt::NoButton, Qt::NoModifier, + Qt::NoScrollPhase, false); QGuiApplication::sendEvent(control, &wheelEvent); QVERIFY(!control->hasActiveFocus()); QVERIFY(!control->hasVisualFocus()); @@ -403,7 +405,9 @@ void tst_focus::scope() QVERIFY(control->hasActiveFocus()); // Qt::WheelFocus - QWheelEvent wheelEvent(QPoint(control->width() / 2, control->height() / 2), 10, Qt::NoButton, Qt::NoModifier); + QWheelEvent wheelEvent(QPointF(control->width() / 2, control->height() / 2), QPointF(), + QPoint(), QPoint(0, 10), Qt::NoButton, Qt::NoModifier, + Qt::NoScrollPhase, false); QGuiApplication::sendEvent(control, &wheelEvent); QVERIFY(!child->hasActiveFocus()); QVERIFY(control->hasActiveFocus()); diff --git a/tests/auto/qquickdrawer/tst_qquickdrawer.cpp b/tests/auto/qquickdrawer/tst_qquickdrawer.cpp index 4cf0dabe..7644cacf 100644 --- a/tests/auto/qquickdrawer/tst_qquickdrawer.cpp +++ b/tests/auto/qquickdrawer/tst_qquickdrawer.cpp @@ -615,7 +615,9 @@ void tst_QQuickDrawer::wheel_data() static bool sendWheelEvent(QQuickItem *item, const QPoint &localPos, int degrees) { QQuickWindow *window = item->window(); - QWheelEvent wheelEvent(localPos, item->window()->mapToGlobal(localPos), QPoint(0, 0), QPoint(0, 8 * degrees), 0, Qt::Vertical, Qt::NoButton, 0); + QWheelEvent wheelEvent(localPos, item->window()->mapToGlobal(localPos), QPoint(0, 0), + QPoint(0, 8 * degrees), Qt::NoButton, Qt::NoModifier, Qt::NoScrollPhase, + false); QSpontaneKeyEvent::setSpontaneous(&wheelEvent); return qGuiApp->notify(window, &wheelEvent); } diff --git a/tests/auto/qquickpopup/tst_qquickpopup.cpp b/tests/auto/qquickpopup/tst_qquickpopup.cpp index 0b7d14bd..d96436de 100644 --- a/tests/auto/qquickpopup/tst_qquickpopup.cpp +++ b/tests/auto/qquickpopup/tst_qquickpopup.cpp @@ -795,9 +795,9 @@ void tst_QQuickPopup::wheel_data() static bool sendWheelEvent(QQuickItem *item, const QPoint &localPos, int degrees) { QQuickWindow *window = item->window(); - QWheelEvent wheelEvent(localPos, item->window()->mapToGlobal(localPos), - QPoint(0, 0), QPoint(0, 8 * degrees), - 0, Qt::Vertical, Qt::NoButton, {}); + QWheelEvent wheelEvent(localPos, item->window()->mapToGlobal(localPos), QPoint(0, 0), + QPoint(0, 8 * degrees), Qt::NoButton, Qt::NoModifier, Qt::NoScrollPhase, + false); QSpontaneKeyEvent::setSpontaneous(&wheelEvent); return qGuiApp->notify(window, &wheelEvent); } diff --git a/tests/auto/revisions/tst_revisions.cpp b/tests/auto/revisions/tst_revisions.cpp index 606cea33..82b32827 100644 --- a/tests/auto/revisions/tst_revisions.cpp +++ b/tests/auto/revisions/tst_revisions.cpp @@ -56,7 +56,7 @@ void tst_revisions::revisions_data() QTest::addColumn<int>("revision"); // Qt 5.7: 2.0, Qt 5.8: 2.1, Qt 5.9: 2.2... - for (int i = 0; i <= QT_VERSION_MINOR - 7; ++i) + for (int i = 0; i <= 15; ++i) QTest::newRow(qPrintable(QString("2.%1").arg(i))) << i; } @@ -91,7 +91,7 @@ void tst_revisions::window_data() QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << QString(":1 \"ApplicationWindow.screen\" is not available in QtQuick.Templates 2.%1").arg(i); // Qt 5.9: 2.2, Qt 5.10: 2.3... - for (int i = 2; i <= QT_VERSION_MINOR - 7; ++i) + for (int i = 2; i <= 15; ++i) QTest::newRow(qPrintable(QString("screen:2.%1").arg(i))) << i << "screen: null" << ""; } diff --git a/tests/auto/sanity/tst_sanity.cpp b/tests/auto/sanity/tst_sanity.cpp index 1793ccfa..78b86f00 100644 --- a/tests/auto/sanity/tst_sanity.cpp +++ b/tests/auto/sanity/tst_sanity.cpp @@ -156,7 +156,7 @@ void tst_Sanity::initTestCase() { QQmlEngine engine; QQmlComponent component(&engine); - component.setData(QString("import QtQuick.Templates 2.%1; Control { }").arg(QT_VERSION_MINOR - 7).toUtf8(), QUrl()); + component.setData(QString("import QtQuick.Templates 2.%1; Control { }").arg(15).toUtf8(), QUrl()); const QStringList qmlTypeNames = QQmlMetaType::qmlTypeNames(); |