From 7b7322c497042b738507108bcd54fa37694392d9 Mon Sep 17 00:00:00 2001 From: Mitch Curtis Date: Wed, 14 Dec 2016 13:49:26 +0100 Subject: ListView, GridView: fix missing keyNavigationEnabled property Before this patch, this code: import QtQuick 2.7 ListView { keyNavigationEnabled: true } Would cause this error: "ListView.keyNavigationEnabled" is not available in QtQuick 2.7. This is because ItemView was missing a revision: qmlRegisterUncreatableType( uri, 2, 7, "ItemView", QQuickItemView::tr("ItemView is an abstract base class")); Task-number: QTBUG-57621 Change-Id: Ia00cb7446a0d83278760f3aa361db5a864661bc6 Reviewed-by: Robin Burchell --- src/quick/items/qquickitemsmodule.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) (limited to 'src/quick/items/qquickitemsmodule.cpp') diff --git a/src/quick/items/qquickitemsmodule.cpp b/src/quick/items/qquickitemsmodule.cpp index 8dd4a96b62..0296ebe88c 100644 --- a/src/quick/items/qquickitemsmodule.cpp +++ b/src/quick/items/qquickitemsmodule.cpp @@ -298,8 +298,10 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) qmlRegisterType(uri, 2, 1, "Grid"); #endif #if QT_CONFIG(quick_itemview) - qmlRegisterUncreatableType(uri, 2, 1, "ItemView", QQuickItemView::tr("ItemView is an abstract base class")); - qmlRegisterUncreatableType(uri, 2, 3, "ItemView", QQuickItemView::tr("ItemView is an abstract base class")); + const char *itemViewName = "ItemView"; + const QString itemViewMessage = QQuickItemView::tr("ItemView is an abstract base class"); + qmlRegisterUncreatableType(uri, 2, 1, itemViewName, itemViewMessage); + qmlRegisterUncreatableType(uri, 2, 3, itemViewName, itemViewMessage); #endif #if QT_CONFIG(quick_listview) qmlRegisterType(uri, 2, 1, "ListView"); @@ -361,6 +363,9 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) #if QT_CONFIG(quick_pathview) qmlRegisterType(uri, 2, 7, "PathView"); #endif +#if QT_CONFIG(quick_itemview) + qmlRegisterUncreatableType(uri, 2, 7, itemViewName, itemViewMessage); +#endif qmlRegisterUncreatableType(uri, 2, 7, nullptr, QQuickMouseEvent::tr("MouseEvent is only available within handlers in MouseArea")); -- cgit v1.2.3