diff options
author | Lars Knoll <lars.knoll@qt.io> | 2016-08-17 14:20:45 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2016-10-10 14:12:14 +0000 |
commit | aa98a543cfb0e542a8a3e8416eb04cbae6e0e7c1 (patch) | |
tree | 811482515eb32f5e99da42e977771bce304f6443 | |
parent | b9447812542a4315718cd0fad9a9fb10a25e114a (diff) |
Don't build view transitions if nobody uses them
Change-Id: I162d2ff5e34aecf63f78c3ca49b99a84986c24ed
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
-rw-r--r-- | src/quick/configure.json | 7 | ||||
-rw-r--r-- | src/quick/items/items.pri | 9 | ||||
-rw-r--r-- | src/quick/items/qquickitemsmodule.cpp | 4 | ||||
-rw-r--r-- | src/quick/items/qquickitemviewtransition_p.h | 3 |
4 files changed, 21 insertions, 2 deletions
diff --git a/src/quick/configure.json b/src/quick/configure.json index 87da6d3344..21617c4fea 100644 --- a/src/quick/configure.json +++ b/src/quick/configure.json @@ -74,6 +74,13 @@ "privateFeature" ] }, + "quick-viewtransitions": { + "label": "Transitions required for ItemViews and Positioners", + "condition": "features.quick-itemview || features.quick-positioners", + "output": [ + "privateFeature" + ] + }, "quick-listview": { "label": "ListView item", "purpose": "Provides the Qt Quick ListView item", diff --git a/src/quick/items/items.pri b/src/quick/items/items.pri index 37f3a138ad..0f8061b5ef 100644 --- a/src/quick/items/items.pri +++ b/src/quick/items/items.pri @@ -57,7 +57,6 @@ HEADERS += \ $$PWD/qquickdrag_p.h \ $$PWD/qquickdroparea_p.h \ $$PWD/qquickmultipointtoucharea_p.h \ - $$PWD/qquickitemviewtransition_p.h \ $$PWD/qquickscreen_p.h \ $$PWD/qquickwindowattached_p.h \ $$PWD/qquickwindowmodule_p.h \ @@ -102,7 +101,6 @@ SOURCES += \ $$PWD/qquickdrag.cpp \ $$PWD/qquickdroparea.cpp \ $$PWD/qquickmultipointtoucharea.cpp \ - $$PWD/qquickitemviewtransition.cpp \ $$PWD/qquickwindowmodule.cpp \ $$PWD/qquickscreen.cpp \ $$PWD/qquickwindowattached.cpp \ @@ -133,6 +131,13 @@ qtConfig(quick-itemview) { $$PWD/qquickitemview.cpp } +qtConfig(quick-viewtransitions) { + HEADERS += \ + $$PWD/qquickitemviewtransition_p.h + SOURCES += \ + $$PWD/qquickitemviewtransition.cpp +} + qtConfig(quick-listview) { HEADERS += \ $$PWD/qquicklistview_p.h diff --git a/src/quick/items/qquickitemsmodule.cpp b/src/quick/items/qquickitemsmodule.cpp index 51ce18b23e..944f24c4ad 100644 --- a/src/quick/items/qquickitemsmodule.cpp +++ b/src/quick/items/qquickitemsmodule.cpp @@ -64,7 +64,9 @@ #if QT_CONFIG(quick_pathview) #include "qquickpathview_p.h" #endif +#if QT_CONFIG(quick_viewtransitions) #include "qquickitemviewtransition_p.h" +#endif #if QT_CONFIG(quick_path) #include <private/qquickpath_p.h> #include <private/qquickpathinterpolator_p.h> @@ -239,7 +241,9 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) qmlRegisterUncreatableType<QQuickKeyNavigationAttached>(uri,major,minor,"KeyNavigation",QQuickKeyNavigationAttached::tr("KeyNavigation is only available via attached properties")); qmlRegisterUncreatableType<QQuickKeysAttached>(uri,major,minor,"Keys",QQuickKeysAttached::tr("Keys is only available via attached properties")); qmlRegisterUncreatableType<QQuickLayoutMirroringAttached>(uri,major,minor,"LayoutMirroring", QQuickLayoutMirroringAttached::tr("LayoutMirroring is only available via attached properties")); +#if QT_CONFIG(quick_viewtransitions) qmlRegisterUncreatableType<QQuickViewTransitionAttached>(uri,major,minor,"ViewTransition",QQuickViewTransitionAttached::tr("ViewTransition is only available via attached properties")); +#endif qmlRegisterType<QQuickPinchArea>(uri,major,minor,"PinchArea"); qmlRegisterType<QQuickPinch>(uri,major,minor,"Pinch"); diff --git a/src/quick/items/qquickitemviewtransition_p.h b/src/quick/items/qquickitemviewtransition_p.h index 6641dada29..ff0e82ac7b 100644 --- a/src/quick/items/qquickitemviewtransition_p.h +++ b/src/quick/items/qquickitemviewtransition_p.h @@ -52,6 +52,9 @@ // #include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_viewtransitions); + #include <QtCore/qobject.h> #include <QtCore/qpoint.h> #include <QtQml/qqml.h> |