Hello community, here is the log from the commit of package libqt5-qtquickcontrols for openSUSE:Factory checked in at 2015-03-01 15:22:36 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libqt5-qtquickcontrols (Old) and /work/SRC/openSUSE:Factory/.libqt5-qtquickcontrols.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libqt5-qtquickcontrols" Changes: -------- --- /work/SRC/openSUSE:Factory/libqt5-qtquickcontrols/libqt5-qtquickcontrols.changes 2014-12-21 11:56:27.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.libqt5-qtquickcontrols.new/libqt5-qtquickcontrols.changes 2015-03-01 15:22:37.000000000 +0100 @@ -1,0 +2,8 @@ +Tue Feb 24 16:10:25 UTC 2015 - hrvoje.sen...@gmail.com + +- Update to 5.4.1 + * For more details please see: + http://blog.qt.io/blog/2015/02/24/qt-5-4-1-released/ +- Add minimal requires on libQt5Widgets5 and libQtQuick5 + +------------------------------------------------------------------- Old: ---- qtquickcontrols-opensource-src-5.4.0.tar.xz New: ---- qtquickcontrols-opensource-src-5.4.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libqt5-qtquickcontrols.spec ++++++ --- /var/tmp/diff_new_pack.jelvuw/_old 2015-03-01 15:22:38.000000000 +0100 +++ /var/tmp/diff_new_pack.jelvuw/_new 2015-03-01 15:22:38.000000000 +0100 @@ -1,7 +1,7 @@ # # spec file for package libqt5-qtquickcontrols # -# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -19,15 +19,15 @@ %define qt5_snapshot 0 Name: libqt5-qtquickcontrols -Version: 5.4.0 +Version: 5.4.1 Release: 0 Summary: Qt 5 Quick Controls Addon License: SUSE-LGPL-2.1-with-digia-exception-1.1 or GPL-3.0 Group: Development/Libraries/X11 Url: http://qt.digia.com %define base_name libqt5 -%define real_version 5.4.0 -%define so_version 5.4.0 +%define real_version 5.4.1 +%define so_version 5.4.1 %define tar_version qtquickcontrols-opensource-src-%{real_version} Source: %{tar_version}.tar.xz BuildRequires: fdupes @@ -42,6 +42,8 @@ BuildRequires: perl %endif BuildRequires: xz +%requires_ge libQt5Widgets5 +%requires_ge libQtQuick5 BuildRoot: %{_tmppath}/%{name}-%{version}-build %description ++++++ qtquickcontrols-opensource-src-5.4.0.tar.xz -> qtquickcontrols-opensource-src-5.4.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/.qmake.conf new/qtquickcontrols-opensource-src-5.4.1/.qmake.conf --- old/qtquickcontrols-opensource-src-5.4.0/.qmake.conf 2014-12-05 17:24:08.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/.qmake.conf 2015-02-17 05:56:17.000000000 +0100 @@ -2,4 +2,4 @@ CONFIG += warning_clean android|ios|qnx|winrt|isEmpty(QT.widgets.name): CONFIG += no_desktop -MODULE_VERSION = 5.4.0 +MODULE_VERSION = 5.4.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/.tag new/qtquickcontrols-opensource-src-5.4.1/.tag --- old/qtquickcontrols-opensource-src-5.4.0/.tag 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/.tag 2015-02-17 05:56:18.000000000 +0100 @@ -1 +1 @@ -ea099e341b5f8845be56f81b22e44a8b6cb227a2 +daa01c6130b27aad5b59f99727761688f9b509fe diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/dist/changes-5.4.1 new/qtquickcontrols-opensource-src-5.4.1/dist/changes-5.4.1 --- old/qtquickcontrols-opensource-src-5.4.0/dist/changes-5.4.1 1970-01-01 01:00:00.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/dist/changes-5.4.1 2015-02-17 05:56:17.000000000 +0100 @@ -0,0 +1,26 @@ +Qt 5.4.1 is a bug-fix release. It maintains both forward and backward +compatibility (source and binary) with Qt 5.4.0. + + http://doc.qt.io/qt-5.4/ + +The Qt version 5.4 series is binary compatible with the 5.3.x series. +Applications compiled for 5.3 will continue to run with 5.4. + +Some of the changes listed in this file include issue tracking numbers +corresponding to tasks in the Qt Bug Tracker: + + http://bugreports.qt.io/ + +Each of these identifiers can be entered in the bug tracker to obtain more +information about a particular change. + +**************************************************************************** +* General * +**************************************************************************** + + - [QTBUG-42506] Fixed StackView focus handling by making it a FocusScope. + - Documented how to select a specific Android theme. + - Fixed iOS edit menu to show up only when the control has active focus. + - [QTBUG-43693] Fixed popup positioning to take all screen geometry into + account. + - Fixed some documentation linking issues. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/ApplicationWindow.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/ApplicationWindow.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/ApplicationWindow.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/ApplicationWindow.qml 2015-02-17 05:56:18.000000000 +0100 @@ -125,7 +125,7 @@ property Item statusBar // The below documentation was supposed to be written as a grouped property, but qdoc would - // not render it correctly due to a bug (https://bugreports.qt-project.org/browse/QTBUG-34206) + // not render it correctly due to a bug (QTBUG-34206) /*! \qmlproperty ContentItem ApplicationWindow::contentItem diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/EditMenu_ios.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/EditMenu_ios.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/EditMenu_ios.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/EditMenu_ios.qml 2015-02-17 05:56:18.000000000 +0100 @@ -170,6 +170,7 @@ return; if ((__showMenuFromTouchAndHold || selectionStart !== selectionEnd) + && control.activeFocus && (!cursorHandle.pressed && !selectionHandle.pressed) && (!flickable || !flickable.moving) && (cursorHandle.delegate)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/qquickcontrolsettings.cpp new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/qquickcontrolsettings.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/qquickcontrolsettings.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/qquickcontrolsettings.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -35,6 +35,7 @@ #include <qquickitem.h> #include <qcoreapplication.h> #include <qqmlengine.h> +#include <qlibrary.h> #include <qdir.h> #include <QTouchDevice> #include <QGuiApplication> @@ -128,11 +129,29 @@ if (fromResource(path)) path = path.remove(0, 3); // remove qrc from the path - if (!QDir(path).exists()) { + QDir dir(path); + if (!dir.exists()) { QString unknownStyle = m_name; m_name = defaultStyleName(); m_path = styleImportPath(engine, m_name); qWarning() << "WARNING: Cannot find style" << unknownStyle << "- fallback:" << styleFilePath(); + } else { + typedef bool (*StyleInitFunc)(); + typedef const char *(*StylePathFunc)(); + + foreach (const QString &fileName, dir.entryList()) { + if (QLibrary::isLibrary(fileName)) { + QLibrary lib(dir.absoluteFilePath(fileName)); + StyleInitFunc initFunc = (StyleInitFunc) lib.resolve("qt_quick_controls_style_init"); + if (initFunc) + initFunc(); + StylePathFunc pathFunc = (StylePathFunc) lib.resolve("qt_quick_controls_style_path"); + if (pathFunc) + m_path = QString::fromLocal8Bit(pathFunc()); + if (initFunc || pathFunc) + break; + } + } } connect(this, SIGNAL(styleNameChanged()), SIGNAL(styleChanged())); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/qquickspinboxvalidator.cpp new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/qquickspinboxvalidator.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/Private/qquickspinboxvalidator.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/Private/qquickspinboxvalidator.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -200,7 +200,9 @@ bool ok = false; qreal val = locale().toDouble(value, &ok); if (ok) { - if (state == QValidator::Acceptable) { + if (state == QValidator::Acceptable || + (state == QValidator::Intermediate && val >= 0 && val <= m_validator.top()) || + (state == QValidator::Intermediate && val < 0 && val >= m_validator.bottom())) { const_cast<QQuickSpinBoxValidator *>(this)->setValue(val); if (input != textFromValue(val)) state = QValidator::Intermediate; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/StackView.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/StackView.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/StackView.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/StackView.qml 2015-02-17 05:56:18.000000000 +0100 @@ -473,7 +473,7 @@ \endlist */ -Item { +FocusScope { id: root /*! \qmlproperty int StackView::depth diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/Styles/Base/MenuBarStyle.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/Styles/Base/MenuBarStyle.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/Styles/Base/MenuBarStyle.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/Styles/Base/MenuBarStyle.qml 2015-02-17 05:56:18.000000000 +0100 @@ -65,7 +65,7 @@ for \c underline will return the plain text form (e.g., \c formatMnemonic("&File", false) will return \c "File"). - \sa label + \sa Label */ function formatMnemonic(text, underline) { return underline ? StyleHelpers.stylizeMnemonics(text) : StyleHelpers.removeMnemonics(text) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/Styles/Base/MenuStyle.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/Styles/Base/MenuStyle.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/Styles/Base/MenuStyle.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/Styles/Base/MenuStyle.qml 2015-02-17 05:56:18.000000000 +0100 @@ -106,7 +106,7 @@ for \c underline will return the plain text form (e.g., \c formatMnemonic("&Open...", false) will return \c "Open..."). - \sa label + \sa Label */ function formatMnemonic(text, underline) { return underline ? StyleHelpers.stylizeMnemonics(text) : StyleHelpers.removeMnemonics(text) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/TableView.qml new/qtquickcontrols-opensource-src-5.4.1/src/controls/TableView.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/TableView.qml 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/TableView.qml 2015-02-17 05:56:18.000000000 +0100 @@ -56,25 +56,42 @@ A TableView is similar to \l ListView, and adds scroll bars, selection, and resizable header sections. As with \l ListView, data for each row is provided through a \l model: - \code - ListModel { - id: libraryModel - ListElement{ title: "A Masterpiece" ; author: "Gabriel" } - ListElement{ title: "Brilliance" ; author: "Jens" } - ListElement{ title: "Outstanding" ; author: "Frederik" } - } - \endcode + \code + ListModel { + id: libraryModel + ListElement { + title: "A Masterpiece" + author: "Gabriel" + } + ListElement { + title: "Brilliance" + author: "Jens" + } + ListElement { + title: "Outstanding" + author: "Frederik" + } + } + \endcode You provide title and size of a column header by adding a \l TableViewColumn as demonstrated below. - \code - TableView { - TableViewColumn{ role: "title" ; title: "Title" ; width: 100 } - TableViewColumn{ role: "author" ; title: "Author" ; width: 200 } - model: libraryModel - } - \endcode + \code + TableView { + TableViewColumn { + role: "title" + title: "Title" + width: 100 + } + TableViewColumn { + role: "author" + title: "Author" + width: 200 + } + model: libraryModel + } + \endcode The header sections are attached to values in the \l model by defining the model role they attach to. Each property in the model will Files old/qtquickcontrols-opensource-src-5.4.0/src/controls/doc/images/qtquickcontrols-example-gallery-android-dark.png and new/qtquickcontrols-opensource-src-5.4.1/src/controls/doc/images/qtquickcontrols-example-gallery-android-dark.png differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/doc/src/qtquickcontrols-platformnotes.qdoc new/qtquickcontrols-opensource-src-5.4.1/src/controls/doc/src/qtquickcontrols-platformnotes.qdoc --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/doc/src/qtquickcontrols-platformnotes.qdoc 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/doc/src/qtquickcontrols-platformnotes.qdoc 2015-02-17 05:56:18.000000000 +0100 @@ -41,10 +41,29 @@ \note The Android style requires Android 3.0 (API level 11) or later. - It is automatically selected and deployed on Android. See \l{Getting Started + The style is automatically selected and deployed on Android. See \l{Getting Started with Qt for Android} and \l{Deploying an Application on Android} for more details on the Android essentials. + \section2 Android Themes + + Applications may choose a specific \l{http://developer.android.com/design/style/themes.html} + {Android theme} by specifying it in \l{AndroidManifest.xml}. + + \image qtquickcontrols-example-gallery-android-dark.png + + The following example sets a dark Holo theme, and the result can be + seen in the screenshot above. + + \code + <manifest ...> + <application ... android:theme="@android:style/Theme.Holo"> + ... + </application> + ... + </manifest> + \endcode + \section2 Action Bar The \l{http://developer.android.com/guide/topics/ui/actionbar.html} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickmenuitem.cpp new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickmenuitem.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickmenuitem.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickmenuitem.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -177,8 +177,9 @@ /*! \qmlproperty enumeration MenuSeparator::type + \readonly - This property is read-only and constant, and its value is \l MenuItemType.Separator. + This property is read-only and constant, and its value is \c MenuItemType.Separator. */ QQuickMenuSeparator::QQuickMenuSeparator(QObject *parent) @@ -320,8 +321,9 @@ /*! \qmlproperty enumeration MenuItem::type + \readonly - This property is read-only and constant, and its value is \l MenuItemType.Item. + This property is read-only and constant, and its value is \c MenuItemType.Item. */ /*! diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickmenupopupwindow.cpp new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickmenupopupwindow.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickmenupopupwindow.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickmenupopupwindow.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -93,7 +93,7 @@ pw = parentItem()->window(); if (!pw) pw = this; - QRect g = pw->screen()->availableVirtualGeometry(); + QRect g = pw->screen()->virtualGeometry(); if (posx + w > g.right()) { if (qobject_cast<QQuickMenuPopupWindow *>(transientParent())) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickpopupwindow.cpp new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickpopupwindow.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/controls/qquickpopupwindow.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/controls/qquickpopupwindow.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -180,7 +180,8 @@ || e->type() == QEvent::MouseButtonPress)) { // Clicked outside any popup dismissPopup(); - } else if (transientParent()) { + } + if (transientParent()) { QPoint parentPos = transientParent()->mapFromGlobal(mapToGlobal(e->pos())); QMouseEvent pe = QMouseEvent(e->type(), parentPos, e->button(), e->buttons(), e->modifiers()); QGuiApplication::sendEvent(transientParent(), &pe); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/DefaultFontDialog.qml new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/DefaultFontDialog.qml --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/DefaultFontDialog.qml 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/DefaultFontDialog.qml 2015-02-17 05:56:18.000000000 +0100 @@ -58,8 +58,8 @@ id: content SystemPalette { id: palette } - implicitWidth: Math.min(root.__maximumDimension, Math.max(Screen.pixelDensity * 60, mainLayout.implicitWidth + outerSpacing * 2)) - implicitHeight: Math.min(root.__maximumDimension, Math.max(Screen.pixelDensity * 40, mainLayout.implicitHeight + outerSpacing * 2)) + implicitWidth: Math.min(root.__maximumDimension, Math.max(Screen.pixelDensity * 100, mainLayout.implicitWidth + outerSpacing * 2)) + implicitHeight: Math.min(root.__maximumDimension, Math.max(Screen.pixelDensity * 60, mainLayout.implicitHeight + outerSpacing * 2)) property real spacing: 6 property real outerSpacing: 12 color: palette.window @@ -126,7 +126,7 @@ focus: true Layout.fillWidth: true Layout.fillHeight: true - Layout.minimumWidth: fontColumn.width + Layout.preferredWidth: fontColumn.width headerVisible: false function reset() { fontModel.findIndex() @@ -200,7 +200,7 @@ function reset() { weightModel.findIndex() } - TableViewColumn{ id: weightColumn; role: "name"; title: qsTr("Weight") } + TableViewColumn { id: weightColumn; role: "name"; title: qsTr("Weight") } model: ListModel { id: weightModel ListElement { @@ -339,28 +339,6 @@ } Item { Layout.fillHeight: true; } //spacer Label { id: writingSystemLabel; text: qsTr("Writing System"); font.bold: true } - ComboBox { - id: wsComboBox - function reset() { - if (wsModel.count > 0) { - currentIndex = 0 - } - } - textRole: "name" - model: WritingSystemListModel { - id: wsModel - Component.onCompleted: wsComboBox.reset() - } - onCurrentIndexChanged: { - if (currentIndex == -1) - return - - content.writingSystem = wsModel.get(currentIndex).name - fontModel.writingSystem = content.writingSystem - content.writingSystemSample = wsModel.get(currentIndex).sample - fontListView.reset() - } - } } ColumnLayout { @@ -397,6 +375,28 @@ id: buttonRow Layout.columnSpan: 3 spacing: content.spacing + ComboBox { + id: wsComboBox + function reset() { + if (wsModel.count > 0) { + currentIndex = 0 + } + } + textRole: "name" + model: WritingSystemListModel { + id: wsModel + Component.onCompleted: wsComboBox.reset() + } + onCurrentIndexChanged: { + if (currentIndex == -1) + return + + content.writingSystem = wsModel.get(currentIndex).name + fontModel.writingSystem = content.writingSystem + content.writingSystemSample = wsModel.get(currentIndex).sample + fontListView.reset() + } + } Item { Layout.fillWidth: true; } //spacer Button { text: qsTr("Cancel") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/plugin.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/plugin.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/plugin.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/plugin.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -53,7 +53,8 @@ #include <QTouchDevice> //#define PURE_QML_ONLY -//#define DEBUG_REGISTRATION + +Q_LOGGING_CATEGORY(lcRegistration, "qt.quick.dialogs.registration") static void initResources() { @@ -86,11 +87,7 @@ QtQuick2DialogsPlugin() : QQmlExtensionPlugin(), m_useResources(true) { } virtual void initializeEngine(QQmlEngine *engine, const char * uri) { -#ifdef DEBUG_REGISTRATION - qDebug() << Q_FUNC_INFO << uri << m_decorationComponentUrl; -#else - Q_UNUSED(uri) -#endif + qCDebug(lcRegistration) << uri << m_decorationComponentUrl; QQuickAbstractDialog::m_decorationComponent = new QQmlComponent(engine, m_decorationComponentUrl, QQmlComponent::Asynchronous); } @@ -98,12 +95,10 @@ virtual void registerTypes(const char *uri) { initResources(); -#ifdef DEBUG_REGISTRATION - qDebug() << Q_FUNC_INFO << uri; -#endif Q_ASSERT(QLatin1String(uri) == QLatin1String("QtQuick.Dialogs")); bool hasTopLevelWindows = QGuiApplicationPrivate::platformIntegration()-> hasCapability(QPlatformIntegration::MultipleWindows); + qCDebug(lcRegistration) << uri << "can use top-level windows?" << hasTopLevelWindows; QDir qmlDir(baseUrl().toLocalFile()); QDir widgetsDir(baseUrl().toLocalFile()); widgetsDir.cd("../PrivateWidgets"); @@ -165,9 +160,7 @@ QUrl dialogQmlPath = m_useResources ? QUrl("qrc:/QtQuick/Dialogs/DefaultDialogWrapper.qml") : QUrl::fromLocalFile(qmlDir.filePath("DefaultDialogWrapper.qml")); -#ifdef DEBUG_REGISTRATION - qDebug() << " registering DefaultDialogWrapper.qml as Dialog; success?" << -#endif + qCDebug(lcRegistration) << " registering" << dialogQmlPath << "as Dialog"; qmlRegisterType(dialogQmlPath, uri, 1, 2, "Dialog"); } } @@ -176,11 +169,8 @@ template <class WrapperType> void registerWidgetOrQmlImplementation(QDir widgetsDir, QDir qmlDir, const char *qmlName, const char *uri, bool hasTopLevelWindows, int versionMajor, int versionMinor) { - // qDebug() << "QtQuick2DialogsPlugin::registerWidgetOrQmlImplementation" << uri << qmlName << ": QML in" << qmlDir.absolutePath() - // << "using resources?" << m_useResources << "; widgets in" << widgetsDir.absolutePath(); -#ifdef DEBUG_REGISTRATION - qDebug() << Q_FUNC_INFO << qmlDir << qmlName << uri; -#endif + qCDebug(lcRegistration) << qmlName << uri << ": QML in" << qmlDir.absolutePath() + << "using resources?" << m_useResources << "; widgets in" << widgetsDir.absolutePath(); bool needQmlImplementation = true; #ifdef PURE_QML_ONLY @@ -207,9 +197,7 @@ QUrl::fromLocalFile(qmlDir.filePath(QString("Widget%1.qml").arg(qmlName))); if (qmlRegisterType(dialogQmlPath, uri, versionMajor, versionMinor, qmlName) >= 0) { needQmlImplementation = false; -#ifdef DEBUG_REGISTRATION - qDebug() << " registering" << qmlName << " as " << dialogQmlPath << "success?" << !needQmlImplementation; -#endif + qCDebug(lcRegistration) << " registering" << qmlName << " as " << dialogQmlPath << "success?" << !needQmlImplementation; } } #endif @@ -219,9 +207,7 @@ QUrl dialogQmlPath = m_useResources ? QUrl(QString("qrc:/QtQuick/Dialogs/Default%1.qml").arg(qmlName)) : QUrl::fromLocalFile(qmlDir.filePath(QString("Default%1.qml").arg(qmlName))); -#ifdef DEBUG_REGISTRATION - qDebug() << " registering" << qmlName << " as " << dialogQmlPath << "success?" << -#endif + qCDebug(lcRegistration) << " registering" << qmlName << " as " << dialogQmlPath; qmlRegisterType(dialogQmlPath, uri, versionMajor, versionMinor, qmlName); } } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickabstractdialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickabstractdialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickabstractdialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickabstractdialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -36,6 +36,7 @@ #include <private/qguiapplication_p.h> #include <private/qqmlglobal_p.h> +#include <QLoggingCategory> #include <QWindow> #include <QQmlComponent> #include <QQuickWindow> @@ -43,6 +44,8 @@ QT_BEGIN_NAMESPACE +Q_LOGGING_CATEGORY(lcWindow, "qt.quick.dialogs.window") + QQmlComponent *QQuickAbstractDialog::m_decorationComponent(0); QQuickAbstractDialog::QQuickAbstractDialog(QObject *parent) @@ -71,6 +74,7 @@ if (m_visible == v) return; m_visible = v; if (helper()) { + qCDebug(lcWindow) << "via helper" << helper(); if (v) { Qt::WindowFlags flags = Qt::Dialog; if (!title().isEmpty()) @@ -108,6 +112,7 @@ m_dialogWindow->setMinimumSize(minSize); connect(win, SIGNAL(widthChanged(int)), this, SLOT(windowGeometryChanged())); connect(win, SIGNAL(heightChanged(int)), this, SLOT(windowGeometryChanged())); + qCDebug(lcWindow) << "created window" << win; } if (!m_dialogWindow) { @@ -129,6 +134,7 @@ } // Window decoration wasn't possible, so just reparent it into the scene else { + qCDebug(lcWindow) << "no window and no decoration"; m_contentItem->setParentItem(parentWindow()->contentItem()); m_contentItem->setZ(10000); } @@ -138,9 +144,11 @@ if (m_dialogWindow) { // "grow up" to the size and position expected to achieve if (!m_sizeAspiration.isNull()) { - if (m_hasAspiredPosition) + if (m_hasAspiredPosition) { + qCDebug(lcWindow) << "geometry aspiration" << m_sizeAspiration; m_dialogWindow->setGeometry(m_sizeAspiration); - else { + } else { + qCDebug(lcWindow) << "size aspiration" << m_sizeAspiration.size(); if (m_sizeAspiration.width() > 0) m_dialogWindow->setWidth(m_sizeAspiration.width()); if (m_sizeAspiration.height() > 0) @@ -191,6 +199,7 @@ m_windowDecoration->setProperty("content", contentVariant); connect(m_windowDecoration, SIGNAL(dismissed()), this, SLOT(reject())); ok = true; + qCDebug(lcWindow) << "using synthetic window decoration" << m_windowDecoration; } else { qWarning() << m_decorationComponent->url() << "cannot be used as a window decoration because it's not an Item"; @@ -203,12 +212,14 @@ if (!ok) { m_contentItem->setParentItem(parentItem); m_contentItem->setZ(10000); + qCDebug(lcWindow) << "no decoration"; } } void QQuickAbstractDialog::setModality(Qt::WindowModality m) { if (m_modality == m) return; + qCDebug(lcWindow) << "modality" << m; m_modality = m; emit modalityChanged(); } @@ -228,12 +239,14 @@ void QQuickAbstractDialog::visibleChanged(bool v) { m_visible = v; + qCDebug(lcWindow) << "visible" << v; emit visibilityChanged(); } void QQuickAbstractDialog::windowGeometryChanged() { if (m_dialogWindow && m_contentItem) { + qCDebug(lcWindow) << m_dialogWindow->geometry(); m_contentItem->setWidth(m_dialogWindow->width()); m_contentItem->setHeight(m_dialogWindow->height()); } @@ -241,18 +254,23 @@ void QQuickAbstractDialog::minimumWidthChanged() { - m_dialogWindow->setMinimumWidth(qMax(m_contentItem->implicitWidth(), - m_contentItem->property("minimumWidth").toReal())); + qreal min = m_contentItem->property("minimumWidth").toReal(); + qCDebug(lcWindow) << "content implicitWidth" << m_contentItem->implicitWidth() << "minimumWidth" << min; + m_dialogWindow->setMinimumWidth(qMax(m_contentItem->implicitWidth(), min)); } void QQuickAbstractDialog::minimumHeightChanged() { + qreal min = m_contentItem->property("minimumHeight").toReal(); + qCDebug(lcWindow) << "content implicitHeight" << m_contentItem->implicitHeight() << "minimumHeight" << min; m_dialogWindow->setMinimumHeight(qMax(m_contentItem->implicitHeight(), m_contentItem->property("minimumHeight").toReal())); } void QQuickAbstractDialog::implicitHeightChanged() { + qCDebug(lcWindow) << "content implicitHeight" << m_contentItem->implicitHeight() + << "window minimumHeight" << m_dialogWindow->minimumHeight(); if (m_contentItem->implicitHeight() < m_dialogWindow->minimumHeight()) m_dialogWindow->setMinimumHeight(m_contentItem->implicitHeight()); } @@ -271,6 +289,7 @@ void QQuickAbstractDialog::setContentItem(QQuickItem *obj) { m_contentItem = obj; + qCDebug(lcWindow) << obj; if (m_dialogWindow) { disconnect(this, SLOT(visibleChanged(bool))); // Can't necessarily delete because m_dialogWindow might have been provided by the QML. @@ -337,6 +356,7 @@ } else if (m_contentItem) { m_contentItem->setX(arg); } + qCDebug(lcWindow) << arg; emit geometryChanged(); } @@ -352,6 +372,7 @@ } else if (m_contentItem) { m_contentItem->setY(arg); } + qCDebug(lcWindow) << arg; emit geometryChanged(); } @@ -366,6 +387,7 @@ } else if (m_contentItem) { m_contentItem->setWidth(arg); } + qCDebug(lcWindow) << arg; emit geometryChanged(); } @@ -380,6 +402,7 @@ } else if (m_contentItem) { m_contentItem->setHeight(arg); } + qCDebug(lcWindow) << arg; emit geometryChanged(); } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickcolordialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickcolordialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickcolordialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickcolordialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -40,7 +40,7 @@ /*! \qmltype AbstractColorDialog \instantiates QQuickColorDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup qtquick-visual \brief API wrapper for QML file dialog implementations \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickfiledialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickfiledialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickfiledialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickfiledialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -44,7 +44,7 @@ /*! \qmltype AbstractFileDialog \instantiates QQuickFileDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup qtquick-visual \brief API wrapper for QML file dialog implementations \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickfontdialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickfontdialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickfontdialog.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickfontdialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -41,7 +41,7 @@ /*! \qmltype AbstractFontDialog \instantiates QQuickFontDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup qtquick-visual \brief API wrapper for QML font dialog implementations \since 5.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickmessagedialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickmessagedialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickmessagedialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickmessagedialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -40,7 +40,7 @@ /*! \qmltype AbstractMessageDialog \instantiates QQuickMessageDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup qtquick-visual \brief API wrapper for QML message dialog implementations \since 5.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformcolordialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformcolordialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformcolordialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformcolordialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -44,7 +44,7 @@ /*! \qmltype ColorDialog \instantiates QQuickPlatformColorDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup dialogs \brief Dialog component for choosing a color. \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformfiledialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformfiledialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformfiledialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformfiledialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -44,7 +44,7 @@ /*! \qmltype FileDialog \instantiates QQuickPlatformFileDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup dialogs \brief Dialog component for choosing files from a local filesystem. \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformfontdialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformfontdialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformfontdialog.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformfontdialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -44,7 +44,7 @@ /*! \qmltype FontDialog \instantiates QQuickPlatformFontDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup qtquick-visual \ingroup dialogs \brief Dialog component for choosing a font. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformmessagedialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformmessagedialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/dialogs/qquickplatformmessagedialog.cpp 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/dialogs/qquickplatformmessagedialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -44,7 +44,7 @@ /*! \qmltype MessageDialog \instantiates QQuickPlatformMessageDialog - \inqmlmodule QtQuick.Dialogs 1 + \inqmlmodule QtQuick.Dialogs \ingroup dialogs \brief Dialog component for displaying popup messages. \since 5.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqcolordialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqcolordialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqcolordialog.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqcolordialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -81,7 +81,7 @@ /*! \qmltype QtColorDialog \instantiates QQuickQColorDialog - \inqmlmodule QtQuick.PrivateWidgets 1 + \inqmlmodule QtQuick.PrivateWidgets \ingroup qtquick-visual \brief Dialog component for choosing a color. \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqfiledialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqfiledialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqfiledialog.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqfiledialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -45,7 +45,7 @@ /*! \qmltype QtFileDialog \instantiates QQuickQFileDialog - \inqmlmodule QtQuick.PrivateWidgets 1 + \inqmlmodule QtQuick.PrivateWidgets \ingroup qtquick-visual \brief Dialog component for choosing files from a local filesystem. \since 5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqfontdialog.cpp new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqfontdialog.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqfontdialog.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqfontdialog.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -83,7 +83,7 @@ /*! \qmltype QtFontDialog \instantiates QQuickQFontDialog - \inqmlmodule QtQuick.PrivateWidgets 1 + \inqmlmodule QtQuick.PrivateWidgets \ingroup qtquick-visual \brief Dialog component for choosing files from a local filesystem. \since 5.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqmessagebox.cpp new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqmessagebox.cpp --- old/qtquickcontrols-opensource-src-5.4.0/src/widgets/qquickqmessagebox.cpp 2014-12-05 17:24:10.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/src/widgets/qquickqmessagebox.cpp 2015-02-17 05:56:18.000000000 +0100 @@ -47,7 +47,7 @@ /*! \qmltype QtMessageDialog \instantiates QQuickQMessageBox - \inqmlmodule QtQuick.PrivateWidgets 1 + \inqmlmodule QtQuick.PrivateWidgets \ingroup qtquick-visual \brief Dialog component for choosing a color. \since 5.2 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/controls.pro new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/controls.pro --- old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/controls.pro 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/controls.pro 2015-02-17 05:56:18.000000000 +0100 @@ -34,6 +34,8 @@ $$PWD/data/tst_rowlayout.qml \ $$PWD/data/tst_gridlayout.qml \ $$PWD/data/tst_slider.qml \ + $$PWD/data/tst_stack.qml \ + $$PWD/data/tst_stackview.qml \ $$PWD/data/tst_statusbar.qml \ $$PWD/data/tst_switch.qml \ $$PWD/data/tst_tab.qml \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/data/tst_spinbox.qml new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/data/tst_spinbox.qml --- old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/data/tst_spinbox.qml 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/data/tst_spinbox.qml 2015-02-17 05:56:18.000000000 +0100 @@ -132,7 +132,10 @@ {tag: "-20", input: [Qt.Key_Minus, Qt.Key_2, Qt.Key_0, Qt.Key_Return], value: -2, minimumValue: -10}, {tag: "-200", input: [Qt.Key_Minus, Qt.Key_2, Qt.Key_0, Qt.Key_0, Qt.Key_Return], value: -20, minimumValue: -100}, {tag: "-2000", input: [Qt.Key_Minus, Qt.Key_2, Qt.Key_0, Qt.Key_0, Qt.Key_0, Qt.Key_Return], value: -200, minimumValue: -1000}, - {tag: "-0123", input: [Qt.Key_Minus, Qt.Key_0, Qt.Key_1, Qt.Key_2, Qt.Key_3, Qt.Key_Return], value: -123, minimumValue: -150} + {tag: "-0123", input: [Qt.Key_Minus, Qt.Key_0, Qt.Key_1, Qt.Key_2, Qt.Key_3, Qt.Key_Return], value: -123, minimumValue: -150}, + + {tag: "5", input: [Qt.Key_2, Qt.Key_0, Qt.Key_Return], value: 20, minimumValue: 10, maximumValue: 99}, + {tag: "-5", input: [Qt.Key_Minus, Qt.Key_2, Qt.Key_0, Qt.Key_Return], value: -20, minimumValue: -99, maximumValue: -10}, ] } @@ -157,6 +160,7 @@ keyClick(data.input[i]) compare(spinbox.value, data.value) + spinbox.destroy() } function test_increment_mouse() { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/data/tst_stackview.qml new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/data/tst_stackview.qml --- old/qtquickcontrols-opensource-src-5.4.0/tests/auto/controls/data/tst_stackview.qml 2014-12-05 17:24:09.000000000 +0100 +++ new/qtquickcontrols-opensource-src-5.4.1/tests/auto/controls/data/tst_stackview.qml 2015-02-17 05:56:18.000000000 +0100 @@ -46,10 +46,12 @@ id: testCase name: "Tests_StackView" when: windowShown + visible: true width: 400 height: 400 Item { id: anItem } + TextField { id: textField } Component { id: pageComponent Item {} @@ -57,7 +59,7 @@ Component { id: stackComponent - StackView {} + StackView { anchors.fill: parent } } function test_stackview() { @@ -73,5 +75,27 @@ verify (stack.depth === 1) stack.push(pageComponent) verify (stack.depth === 2) + stack.destroy() + } + + function test_focus() { + var stack = stackComponent.createObject(testCase, {initialItem: anItem}) + verify (stack !== null, "stackview created is null") + compare(stack.currentItem, anItem) + + stack.forceActiveFocus() + verify(stack.activeFocus) + + stack.push({item: textField, immediate: true}) + compare(stack.currentItem, textField) + textField.forceActiveFocus() + verify(textField.activeFocus) + + stack.pop({immediate: true}) + compare(stack.currentItem, anItem) + verify(stack.activeFocus) + verify(!textField.activeFocus) + + stack.destroy() } } -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org