Hello community,

here is the log from the commit of package libqt5-qtquickcontrols for 
openSUSE:Factory checked in at 2019-03-21 09:40:43
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libqt5-qtquickcontrols (Old)
 and      /work/SRC/openSUSE:Factory/.libqt5-qtquickcontrols.new.28833 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libqt5-qtquickcontrols"

Thu Mar 21 09:40:43 2019 rev:34 rq:685637 version:5.12.2

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/libqt5-qtquickcontrols/libqt5-qtquickcontrols.changes
    2018-12-14 20:55:28.764868624 +0100
+++ 
/work/SRC/openSUSE:Factory/.libqt5-qtquickcontrols.new.28833/libqt5-qtquickcontrols.changes
 2019-03-21 09:40:44.578974361 +0100
@@ -1,0 +2,16 @@
+Thu Mar 14 08:51:37 UTC 2019 - [email protected]
+
+- Update to 5.12.2:
+  * New bugfix release
+  * For more details please see:
+  * 
http://code.qt.io/cgit/qt/qtquickcontrols.git/plain/dist/changes-5.12.2/?h=5.12.2
+
+-------------------------------------------------------------------
+Fri Feb  1 08:40:08 UTC 2019 - [email protected]
+
+- Update to 5.12.1:
+  * New bugfix release
+  * For more details please see:
+  * 
http://code.qt.io/cgit/qt/qtquickcontrols.git/plain/dist/changes-5.12.1/?h=v5.12.1
+
+-------------------------------------------------------------------

Old:
----
  qtquickcontrols-everywhere-src-5.12.0.tar.xz

New:
----
  qtquickcontrols-everywhere-src-5.12.2.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libqt5-qtquickcontrols.spec ++++++
--- /var/tmp/diff_new_pack.NqX2sg/_old  2019-03-21 09:40:45.470974157 +0100
+++ /var/tmp/diff_new_pack.NqX2sg/_new  2019-03-21 09:40:45.474974156 +0100
@@ -19,16 +19,16 @@
 %define qt5_snapshot 0
 
 Name:           libqt5-qtquickcontrols
-Version:        5.12.0
+Version:        5.12.2
 Release:        0
 Summary:        Qt 5 Quick Controls Addon
 License:        LGPL-2.1-with-Qt-Company-Qt-exception-1.1 or LGPL-3.0-only
 Group:          Development/Libraries/X11
 Url:            https://www.qt.io
 %define base_name libqt5
-%define real_version 5.12.0
-%define so_version 5.12.0
-%define tar_version qtquickcontrols-everywhere-src-5.12.0
+%define real_version 5.12.2
+%define so_version 5.12.2
+%define tar_version qtquickcontrols-everywhere-src-5.12.2
 Source:         
https://download.qt.io/official_releases/qt/5.12/%{real_version}/submodules/%{tar_version}.tar.xz
 BuildRequires:  fdupes
 BuildRequires:  libQt5Core-private-headers-devel >= %{version}

++++++ qtquickcontrols-everywhere-src-5.12.0.tar.xz -> 
qtquickcontrols-everywhere-src-5.12.2.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtquickcontrols-everywhere-src-5.12.0/.qmake.conf 
new/qtquickcontrols-everywhere-src-5.12.2/.qmake.conf
--- old/qtquickcontrols-everywhere-src-5.12.0/.qmake.conf       2018-11-27 
06:41:44.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/.qmake.conf       2019-02-25 
10:38:43.000000000 +0100
@@ -2,4 +2,4 @@
 CONFIG += warning_clean
 android|ios|qnx|isEmpty(QT.widgets.name): CONFIG += no_desktop
 
-MODULE_VERSION = 5.12.0
+MODULE_VERSION = 5.12.2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/qtquickcontrols-everywhere-src-5.12.0/.tag 
new/qtquickcontrols-everywhere-src-5.12.2/.tag
--- old/qtquickcontrols-everywhere-src-5.12.0/.tag      2018-11-27 
06:41:44.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/.tag      2019-02-25 
10:38:43.000000000 +0100
@@ -1 +1 @@
-7250a5c2f9dbb61e2c8289f1bf28db2300ce43ad
+c231395eec3494619f4977b4c5cd845b9d7341ae
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.11.3 
new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.11.3
--- old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.11.3       
1970-01-01 01:00:00.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.11.3       
2019-02-25 10:38:43.000000000 +0100
@@ -0,0 +1,20 @@
+Qt 5.11.3 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.11.0 through 5.11.2.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+http://doc.qt.io/qt-5/index.html
+
+The Qt version 5.11 series is binary compatible with the 5.10.x series.
+Applications compiled for 5.10 will continue to run with 5.11.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+https://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+ - This release contains only minor code improvements.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.12.1 
new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.12.1
--- old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.12.1       
1970-01-01 01:00:00.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.12.1       
2019-02-25 10:38:43.000000000 +0100
@@ -0,0 +1,27 @@
+Qt 5.12.1 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.12.0.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+http://doc.qt.io/qt-5/index.html
+
+The Qt version 5.12 series is binary compatible with the 5.11.x series.
+Applications compiled for 5.11 will continue to run with 5.12.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+https://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+*                                 Controls                                 *
+****************************************************************************
+
+ - QQuickTreeModelAdaptor1:
+   * Fixed an issue where an invalid access was done if either extended or
+     multiple selection was in use and the mouse went out of the view on
+     top of the model.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.12.2 
new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.12.2
--- old/qtquickcontrols-everywhere-src-5.12.0/dist/changes-5.12.2       
1970-01-01 01:00:00.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/dist/changes-5.12.2       
2019-02-25 10:38:43.000000000 +0100
@@ -0,0 +1,30 @@
+Qt 5.12.2 is a bug-fix release. It maintains both forward and backward
+compatibility (source and binary) with Qt 5.12.0 through 5.12.1.
+
+For more details, refer to the online documentation included in this
+distribution. The documentation is also available online:
+
+https://doc.qt.io/qt-5/index.html
+
+The Qt version 5.12 series is binary compatible with the 5.11.x series.
+Applications compiled for 5.11 will continue to run with 5.12.
+
+Some of the changes listed in this file include issue tracking numbers
+corresponding to tasks in the Qt Bug Tracker:
+
+https://bugreports.qt.io/
+
+Each of these identifiers can be entered in the bug tracker to obtain more
+information about a particular change.
+
+****************************************************************************
+*                          Library                                         *
+****************************************************************************
+
+ - [QTBUG-73765] Fixed Calendar's day of week header not being updated when
+   the locale is changed.
+ - [QTBUG-65209] Fixed progress indicator with vertical ProgessBar.
+ - [QTBUG-69041] Fixed TableView's vertical scrollbar being drawn over the
+   header.
+ - [QTBUG-71997] Fixed time component of minimumDate and maximumDate
+   affecting valid range of dates.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/BasicTableView.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/BasicTableView.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/BasicTableView.qml
   2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/BasicTableView.qml
   2019-02-25 10:38:43.000000000 +0100
@@ -260,6 +260,17 @@
         if (index >= 0 && index <= columnCount && object.Accessible.role === 
Accessible.ColumnHeader) {
             object.__view = root
             columnModel.insert(index, {columnItem: object})
+            if (root.__columns[index] !== object) {
+                // The new column needs to be put into __columns at the 
specified index
+                // so the list needs to be recreated to be correct
+                var arr = []
+                for (var i = 0; i < index; ++i)
+                    arr.push(root.__columns[i])
+                arr.push(object)
+                for (i = index; i < root.__columns.length; ++i)
+                    arr.push(root.__columns[i])
+                root.__columns = arr
+            }
             return object
         }
 
@@ -411,9 +422,9 @@
         interactive: Settings.hasTouchScreen
         property var rowItemStack: [] // Used as a cache for rowDelegates
 
-        readonly property bool transientScrollbars: __style && 
!!__style.transientScrollBars
+        readonly property bool transientScrollBars: __style && 
!!__style.transientScrollBars
         readonly property real vScrollbarPadding: 
__scroller.verticalScrollBar.visible
-                                                  && !transientScrollbars && 
Qt.platform.os === "osx" ?
+                                                  && !transientScrollBars && 
Qt.platform.os === "osx" ?
                                                   __verticalScrollBar.width + 
__scroller.scrollBarSpacing + root.__style.padding.right : 0
 
         Binding {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/CalendarHeaderModel.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/CalendarHeaderModel.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/CalendarHeaderModel.qml
      2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/CalendarHeaderModel.qml
      2019-02-25 10:38:43.000000000 +0100
@@ -89,7 +89,10 @@
         dayOfWeek: Locale.Saturday
     }
 
-    Component.onCompleted: {
+    Component.onCompleted: updateFirstDayOfWeek()
+    onLocaleChanged: updateFirstDayOfWeek()
+
+    function updateFirstDayOfWeek() {
         var daysOfWeek = [Locale.Sunday, Locale.Monday, Locale.Tuesday,
             Locale.Wednesday, Locale.Thursday, Locale.Friday, Locale.Saturday];
         var firstDayOfWeek = root.locale.firstDayOfWeek;
@@ -97,7 +100,7 @@
         var shifted = daysOfWeek.splice(firstDayOfWeek, daysOfWeek.length - 
firstDayOfWeek);
         daysOfWeek = shifted.concat(daysOfWeek)
 
-        if (firstDayOfWeek !== Locale.Sunday) {
+        if (firstDayOfWeek !== root.get(0).dayOfWeek) {
             for (var i = 0; i < daysOfWeek.length; ++i) {
                 root.setProperty(i, "dayOfWeek", daysOfWeek[i]);
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquickrangeddate.cpp
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquickrangeddate.cpp
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquickrangeddate.cpp
 2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquickrangeddate.cpp
 2019-02-25 10:38:43.000000000 +0100
@@ -42,8 +42,8 @@
 QT_BEGIN_NAMESPACE
 
 // JavaScript Date > QDate conversion is not correct for large negative dates.
-Q_GLOBAL_STATIC_WITH_ARGS(const QDateTime, jsMinimumDate, (QDateTime(QDate(1, 
1, 1), QTime())))
-Q_GLOBAL_STATIC_WITH_ARGS(const QDateTime, jsMaximumDate, 
(QDateTime(QDate(275759, 10, 25), QTime())))
+Q_GLOBAL_STATIC_WITH_ARGS(const QDate, jsMinimumDate, (1, 1, 1))
+Q_GLOBAL_STATIC_WITH_ARGS(const QDate, jsMaximumDate, (275759, 10, 25))
 
 QQuickRangedDate1::QQuickRangedDate1() :
     QObject(0),
@@ -61,10 +61,11 @@
     if (date == mDate)
         return;
 
-    if (date < mMinimumDate) {
-        mDate = mMinimumDate;
-    } else if (date > mMaximumDate) {
-        mDate = mMaximumDate;
+    const QDate tmpDate = date.date();
+    if (tmpDate < mMinimumDate) {
+        mDate = minimumDate();
+    } else if (tmpDate > mMaximumDate) {
+        mDate = maximumDate();
     } else {
         mDate = date;
     }
@@ -75,17 +76,18 @@
 /*! \internal
     \qmlproperty date QQuickRangedDate::minimumDate
 */
-void QQuickRangedDate1::setMinimumDate(const QDateTime &minimumDate)
+void QQuickRangedDate1::setMinimumDate(const QDateTime &minDate)
 {
-    if (minimumDate == mMinimumDate)
+    const QDate tmpDate = minDate.date();
+    if (tmpDate == mMinimumDate)
         return;
 
-    mMinimumDate = qMax(minimumDate, *jsMinimumDate);
+    mMinimumDate = qMax(tmpDate, *jsMinimumDate);
     emit minimumDateChanged();
 
     // If the new minimumDate makes date invalid, clamp date to it.
-    if (mDate < mMinimumDate) {
-        mDate = mMinimumDate;
+    if (mDate < minimumDate()) {
+        mDate = minimumDate();
         emit dateChanged();
     }
 }
@@ -93,19 +95,20 @@
 /*! \internal
     \qmlproperty date QQuickRangedDate::maximumDate
 */
-void QQuickRangedDate1::setMaximumDate(const QDateTime &maximumDate)
+void QQuickRangedDate1::setMaximumDate(const QDateTime &maxDate)
 {
-    if (maximumDate == mMaximumDate)
+    const QDate tmpDate = maxDate.date();
+    if (tmpDate == mMaximumDate)
         return;
 
     // If the new maximumDate is smaller than minimumDate, clamp maximumDate 
to it.
     // If the new maximumDate is larger than jsMaximumDate, also clamp it.
-    mMaximumDate = maximumDate < mMinimumDate ? mMinimumDate : 
qMin(maximumDate, *jsMaximumDate);
+    mMaximumDate = tmpDate < mMinimumDate ? mMinimumDate : qMin(tmpDate, 
*jsMaximumDate);
     emit maximumDateChanged();
 
     // If the new maximumDate makes the date invalid, clamp it.
-    if (mDate > mMaximumDate) {
-        mDate = mMaximumDate;
+    if (mDate > maximumDate()) {
+        mDate = maximumDate();
         emit dateChanged();
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquickrangeddate_p.h
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquickrangeddate_p.h
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquickrangeddate_p.h
 2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquickrangeddate_p.h
 2019-02-25 10:38:43.000000000 +0100
@@ -60,11 +60,11 @@
     void setDate(const QDateTime &date);
     void resetDate() {}
 
-    QDateTime minimumDate() const { return mMinimumDate; }
+    QDateTime minimumDate() const { return QDateTime(mMinimumDate, QTime()); }
     void setMinimumDate(const QDateTime &minimumDate);
     void resetMinimumDate() {}
 
-    QDateTime maximumDate() const { return mMaximumDate; }
+    QDateTime maximumDate() const { return QDateTime(mMaximumDate, QTime(23, 
59, 59, 999)); }
     void setMaximumDate(const QDateTime &maximumDate);
     void resetMaximumDate() {}
 
@@ -75,8 +75,8 @@
 
 private:
     QDateTime mDate;
-    QDateTime mMinimumDate;
-    QDateTime mMaximumDate;
+    QDate mMinimumDate;
+    QDate mMaximumDate;
 };
 
 QT_END_NAMESPACE
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquicktreemodeladaptor.cpp
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquicktreemodeladaptor.cpp
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Private/qquicktreemodeladaptor.cpp
   2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Private/qquicktreemodeladaptor.cpp
   2019-02-25 10:38:43.000000000 +0100
@@ -283,6 +283,8 @@
             return QItemSelection();
         return QItemSelection(toIndex, toIndex);
     }
+
+    to = qMax(to, 0);
     if (from > to)
         qSwap(from, to);
 
@@ -360,8 +362,15 @@
     if (start == 0) {
         startIdx = rowIdx;
     } else {
-        const QModelIndex &prevSiblingIdx = m_model->index(start - 1, 0, 
parentIndex);
-        startIdx = lastChildIndex(prevSiblingIdx) + 1;
+        // Prefer to insert before next sibling instead of after last child of 
previous, as
+        // the latter is potentially buggy, see QTBUG-66062
+        const QModelIndex &nextSiblingIdx = m_model->index(end + 1, 0, 
parentIndex);
+        if (nextSiblingIdx.isValid()) {
+            startIdx = itemIndex(nextSiblingIdx);
+        } else {
+            const QModelIndex &prevSiblingIdx = m_model->index(start - 1, 0, 
parentIndex);
+            startIdx = lastChildIndex(prevSiblingIdx) + 1;
+        }
     }
 
     int rowDepth = rowIdx == 0 ? 0 : parentItem.depth + 1;
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/CalendarStyle.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/CalendarStyle.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/CalendarStyle.qml
        2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/CalendarStyle.qml
        2019-02-25 10:38:43.000000000 +0100
@@ -410,6 +410,7 @@
                 anchors.leftMargin: (control.weekNumbersVisible ? 
weekNumbersItem.width : 0)
                 anchors.right: parent.right
                 spacing: gridVisible ? __gridLineWidth : 0
+                property alias __repeater: repeater
 
                 Repeater {
                     id: repeater
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/ProgressBarStyle.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/ProgressBarStyle.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/ProgressBarStyle.qml
     2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/ProgressBarStyle.qml
     2019-02-25 10:38:43.000000000 +0100
@@ -134,8 +134,7 @@
         clip: true
         Rectangle {
             id: base
-            width: control.width
-            height: control.height
+            anchors.fill: parent
             radius: TextSingleton.implicitHeight * 0.16
             antialiasing: true
             gradient: Gradient {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/ScrollViewStyle.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/ScrollViewStyle.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/Base/ScrollViewStyle.qml
      2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/Base/ScrollViewStyle.qml
      2019-02-25 10:38:43.000000000 +0100
@@ -370,8 +370,8 @@
 
         property var flickableItem: control.flickableItem
         property int extent: Math.max(minimumHandleLength, 
__styleData.horizontal ?
-                                          Math.min(1, (flickableItem ? 
flickableItem.width/flickableItem.contentWidth : 1)) * bg.width :
-                                          Math.min(1, (flickableItem ? 
flickableItem.height/flickableItem.contentHeight : 1)) * bg.height)
+                                          Math.min(1, ((flickableItem && 
flickableItem.contentWidth > 0.0) ? 
flickableItem.width/flickableItem.contentWidth : 1)) * bg.width :
+                                          Math.min(1, ((flickableItem && 
flickableItem.contentHeight > 0.0) ? 
flickableItem.height/flickableItem.contentHeight : 1)) * bg.height)
         readonly property real range: __control.maximumValue - 
__control.minimumValue
         readonly property real begin: __control.value - __control.minimumValue
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/styles.pri 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/styles.pri
--- old/qtquickcontrols-everywhere-src-5.12.0/src/controls/Styles/styles.pri    
2018-11-27 06:41:44.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/src/controls/Styles/styles.pri    
2019-02-25 10:38:43.000000000 +0100
@@ -108,6 +108,7 @@
     $$PWD/Base/images/knob.png \
     $$PWD/Base/images/needle.png
 
-STYLES_QML_FILES += $$PWD/qmldir
+AUX_QML_FILES += $$PWD/qmldir
+static: QML_FILES += $$AUX_QML_FILES
 ios:static: include(iOS/iOS.pri)
 !qtquickcompiler|static: QML_FILES += $$STYLES_QML_FILES
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/controls.pro 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/controls.pro
--- old/qtquickcontrols-everywhere-src-5.12.0/src/controls/controls.pro 
2018-11-27 06:41:44.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/src/controls/controls.pro 
2019-02-25 10:38:43.000000000 +0100
@@ -45,6 +45,7 @@
 } else {
     QML_FILES += $$CONTROLS_QML_FILES
     !static: CONFIG += qmlcache
+    else: CONTROLS_QML_FILES += qmldir
 }
 
 SOURCES += $$PWD/plugin.cpp
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/src/controls/plugin.cpp 
new/qtquickcontrols-everywhere-src-5.12.2/src/controls/plugin.cpp
--- old/qtquickcontrols-everywhere-src-5.12.0/src/controls/plugin.cpp   
2018-11-27 06:41:44.000000000 +0100
+++ new/qtquickcontrols-everywhere-src-5.12.2/src/controls/plugin.cpp   
2019-02-25 10:38:43.000000000 +0100
@@ -73,10 +73,12 @@
 
 QT_BEGIN_NAMESPACE
 
-static const struct {
+struct QmldirStruct {
     const char *type;
     int major, minor;
-} qmldir [] = {
+};
+
+static const QmldirStruct qmldir [] = {
     { "ApplicationWindow", 1, 0 },
     { "Button", 1, 0 },
     { "Calendar", 1, 2 },
@@ -119,6 +121,43 @@
     { "Slider", 1, 6 }
 };
 
+static const QmldirStruct stylesQmldir [] = {
+    { "ApplicationWindowStyle", 1, 3 },
+    { "ButtonStyle", 1, 0 },
+    { "BusyIndicatorStyle", 1, 1 },
+    { "CalendarStyle", 1, 1 },
+    { "CheckBoxStyle", 1, 0 },
+    { "ComboBoxStyle", 1, 0 },
+    { "MenuStyle", 1, 2 },
+    { "MenuBarStyle", 1, 2 },
+    { "ProgressBarStyle", 1, 0 },
+    { "RadioButtonStyle", 1, 0 },
+    { "ScrollViewStyle", 1, 0 },
+    { "SliderStyle", 1, 0 },
+    { "SpinBoxStyle", 1, 1 },
+    { "SwitchStyle", 1, 1 },
+    { "TabViewStyle", 1, 0 },
+    { "TableViewStyle", 1, 0 },
+    { "TreeViewStyle", 1, 4 },
+    { "TextAreaStyle", 1, 1 },
+    { "TextFieldStyle", 1, 0 },
+    { "ToolBarStyle", 1, 0 },
+    { "StatusBarStyle", 1, 0 },
+    { "CircularGaugeStyle", 1, 0 },
+    { "CircularButtonStyle", 1, 0 },
+    { "CircularTickmarkLabelStyle", 1, 0 },
+    { "CommonStyleHelper", 1, 0 },
+    { "DelayButtonStyle", 1, 0 },
+    { "DialStyle", 1, 1 },
+    { "GaugeStyle", 1, 0 },
+    { "HandleStyle", 1, 0 },
+    { "HandleStyleHelper", 1, 0 },
+    { "PieMenuStyle", 1, 3 },
+    { "StatusIndicatorStyle", 1, 1 },
+    { "ToggleButtonStyle", 1, 0 },
+    { "TumblerStyle", 1, 2 }
+};
+
 QtQuickControls1Plugin::QtQuickControls1Plugin(QObject *parent) : 
QQmlExtensionPlugin(parent)
 {
 }
@@ -172,6 +211,12 @@
 #ifdef QT_WIDGETS_LIB
     qmlRegisterType<QQuickStyleItem1>(private_uri, 1, 0, "StyleItem");
 #endif
+
+    const char *styles_uri = "QtQuick.Controls.Styles";
+    const QString baseStyleLocation = filesLocation + "/Styles/Base";
+    for (int i = 0; i < int(sizeof(stylesQmldir)/sizeof(stylesQmldir[0])); i++)
+        qmlRegisterType(QUrl(baseStyleLocation + "/" + stylesQmldir[i].type + 
".qml"), styles_uri,
+                        stylesQmldir[i].major, stylesQmldir[i].minor, 
stylesQmldir[i].type);
 }
 
 void QtQuickControls1Plugin::initializeEngine(QQmlEngine *engine, const char 
*uri)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml
 1970-01-01 01:00:00.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tableview/table_resizedynamiccolumns.qml
 2019-02-25 10:38:43.000000000 +0100
@@ -0,0 +1,75 @@
+/****************************************************************************
+**
+** Copyright (C) 2018 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the test suite of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:BSD$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** BSD License Usage
+** Alternatively, you may use this file under the terms of the BSD license
+** as follows:
+**
+** "Redistribution and use in source and binary forms, with or without
+** modification, are permitted provided that the following conditions are
+** met:
+**   * Redistributions of source code must retain the above copyright
+**     notice, this list of conditions and the following disclaimer.
+**   * Redistributions in binary form must reproduce the above copyright
+**     notice, this list of conditions and the following disclaimer in
+**     the documentation and/or other materials provided with the
+**     distribution.
+**   * Neither the name of The Qt Company Ltd nor the names of its
+**     contributors may be used to endorse or promote products derived
+**     from this software without specific prior written permission.
+**
+**
+** THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+** "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+** LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+** A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+** OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+** SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+** LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+** DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+** THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+** (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+** OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+import QtQuick 2.2
+import QtQuick.Controls 1.2
+
+TableView {
+    id: tableView
+    Component {
+        id: columnComponentWithDelegate
+        TableViewColumn {
+            delegate: Rectangle {
+                implicitWidth: 50
+                height: 10
+                color: "red"
+            }
+        }
+    }
+    Component {
+        id: columnComponent
+        TableViewColumn { }
+    }
+    Component.onCompleted: {
+        addColumn(columnComponentWithDelegate.createObject(tableView, { title: 
"rects", width: 20 }));
+        addColumn(columnComponent.createObject(tableView, { title: "numbers" 
}));
+    }
+    model: 10
+}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_calendar.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_calendar.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_calendar.qml
 2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_calendar.qml
 2019-02-25 10:38:43.000000000 +0100
@@ -124,11 +124,19 @@
         }
 
         function test_defaultConstructed() {
-            calendar.minimumDate = new Date(1, 0, 1);
-            calendar.maximumDate = new Date(4000, 0, 1);
+            // Minimum date needs to be at least 1921-05-01 due to date 
problems in < JS7 which
+            // causes problems with the Finnish timezone in CI. So use 1922 to 
avoid those
+            // causing an invalid failure
+
+            // The minimum and maximum are set with "different" times
+            // to confirm that they have no bearing from what it will
+            // return later on as we only care about the date part
+            // and not the specific time in the range.
+            calendar.minimumDate = new Date(22, 0, 1, 23, 59, 59, 999);
+            calendar.maximumDate = new Date(4000, 0, 1, 0, 0, 0, 0);
 
-            compare(calendar.minimumDate, new Date(1, 0, 1));
-            compare(calendar.maximumDate, new Date(4000, 0, 1));
+            compare(calendar.minimumDate, new Date(22, 0, 1));
+            compare(calendar.maximumDate, new Date(4000, 0, 1, 23, 59, 59, 
999));
             var expectedDate = new Date();
             compare(calendar.selectedDate.getFullYear(), 
expectedDate.getFullYear());
             compare(calendar.selectedDate.getMonth(), expectedDate.getMonth());
@@ -139,15 +147,15 @@
         }
 
         function test_setAfterConstructed() {
-            calendar.minimumDate = new Date(1900, 0, 1);
+            calendar.minimumDate = new Date(1922, 0, 1);
             calendar.maximumDate = new Date(1999, 11, 31);
             calendar.selectedDate = new Date(1980, 0, 1);
             calendar.frameVisible = false;
             calendar.dayOfWeekFormat = Locale.NarrowFormat;
             calendar.locale = Qt.locale("de_DE");
 
-            compare(calendar.minimumDate, new Date(1900, 0, 1));
-            compare(calendar.maximumDate, new Date(1999, 11, 31));
+            compare(calendar.minimumDate, new Date(1922, 0, 1));
+            compare(calendar.maximumDate, new Date(1999, 11, 31, 23, 59, 59, 
999));
             compare(calendar.selectedDate, new Date(1980, 0, 1));
             compare(calendar.frameVisible, false);
             compare(calendar.locale, Qt.locale("de_DE"));
@@ -977,5 +985,13 @@
                 compare(testcase.aysncDelegatesDestructed[i], true);
             }
         }
+
+        function test_firstDayOfWeekAfterLocaleChange() {
+            calendar.selectedDate = new Date(2013, 0, 1);
+            calendar.locale = Qt.locale("en");
+            
compare(calendar.__panel.dayOfWeekHeaderRow.__repeater.model.get(0).dayOfWeek, 
0)
+            calendar.locale = Qt.locale("fr");
+            
compare(calendar.__panel.dayOfWeekHeaderRow.__repeater.model.get(0).dayOfWeek, 
1)
+        }
     }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_rangeddate.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_rangeddate.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_rangeddate.qml
       2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_rangeddate.qml
       2019-02-25 10:38:43.000000000 +0100
@@ -86,45 +86,49 @@
         }
 
         function test_constructionPropertyOrder() {
+            // Minimum date needs to be at least 1921-05-01 due to date 
problems in < JS7 which
+            // causes problems with the Finnish timezone in CI. So use 1922 to 
avoid those
+            // causing an invalid failure
+
             // All values are valid; fine.
             rangedDate = Qt.createQmlObject(importsStr + " RangedDate { "
-                + "date: new Date(1900, 0, 2); "
-                + "minimumDate: new Date(1900, 0, 1); "
-                + "maximumDate: new Date(1900, 0, 3); "
+                + "date: new Date(1922, 0, 2); "
+                + "minimumDate: new Date(1922, 0, 1); "
+                + "maximumDate: new Date(1922, 0, 3); "
                 + " }", container, "");
-            compare(rangedDate.date.getTime(), new Date(1900, 0, 2).getTime());
-            compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 
1).getTime());
-            compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 
3).getTime());
+            compare(rangedDate.date.getTime(), new Date(1922, 0, 2).getTime());
+            compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 
1).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 3, 23, 
59, 59, 999).getTime());
 
             // All values are the same; doesn't make sense, but is fine [1].
             rangedDate = Qt.createQmlObject(importsStr + " RangedDate { "
-                + "date: new Date(1900, 0, 1);"
-                + "minimumDate: new Date(1900, 0, 1);"
-                + "maximumDate: new Date(1900, 0, 1);"
+                + "date: new Date(1922, 0, 1);"
+                + "minimumDate: new Date(1922, 0, 1);"
+                + "maximumDate: new Date(1922, 0, 1);"
                 + " }", container, "");
-            compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime());
-            compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 
1).getTime());
-            compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 
1).getTime());
+            compare(rangedDate.date.getTime(), new Date(1922, 0, 1).getTime());
+            compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 
1).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 
59, 59, 999).getTime());
 
             // date is lower than min - should be clamped to min.
             rangedDate = Qt.createQmlObject(importsStr + " RangedDate { "
                 + "date: new Date(1899, 0, 1);"
-                + "minimumDate: new Date(1900, 0, 1);"
-                + "maximumDate: new Date(1900, 0, 1);"
+                + "minimumDate: new Date(1922, 0, 1);"
+                + "maximumDate: new Date(1922, 0, 1);"
                 + " }", container, "");
-            compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime());
-            compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 
1).getTime());
-            compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 
1).getTime());
+            compare(rangedDate.date.getTime(), new Date(1922, 0, 1).getTime());
+            compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 
1).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 
59, 59, 999).getTime());
 
             // date is higher than max - should be clamped to max.
             rangedDate = Qt.createQmlObject(importsStr + " RangedDate { "
-                + "date: new Date(1900, 0, 2);"
-                + "minimumDate: new Date(1900, 0, 1);"
-                + "maximumDate: new Date(1900, 0, 1);"
+                + "date: new Date(1922, 0, 2);"
+                + "minimumDate: new Date(1922, 0, 1);"
+                + "maximumDate: new Date(1922, 0, 1);"
                 + " }", container, "");
-            compare(rangedDate.date.getTime(), new Date(1900, 0, 1).getTime());
-            compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 
1).getTime());
-            compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 
1).getTime());
+            compare(rangedDate.date.getTime(), new Date(1922, 0, 1, 23, 59, 
59, 999).getTime());
+            compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 
1).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 1, 23, 
59, 59, 999).getTime());
 
             // If the order of property construction is undefined (as it 
should be if it's declarative),
             // then is min considered higher than max or max lower than min? 
Which should be changed?
@@ -132,13 +136,13 @@
             // For now, max will always be the one that's changed. It will be 
set to min,
             // as min may already be the largest possible date (See [1]).
             rangedDate = Qt.createQmlObject(importsStr + " RangedDate { "
-                + "date: new Date(1900, 0, 1);"
-                + "minimumDate: new Date(1900, 0, 2);"
-                + "maximumDate: new Date(1900, 0, 1);"
+                + "date: new Date(1922, 0, 1);"
+                + "minimumDate: new Date(1922, 0, 2);"
+                + "maximumDate: new Date(1922, 0, 1);"
                 + " }", container, "");
-            compare(rangedDate.date.getTime(), new Date(1900, 0, 2).getTime());
-            compare(rangedDate.minimumDate.getTime(), new Date(1900, 0, 
2).getTime());
-            compare(rangedDate.maximumDate.getTime(), new Date(1900, 0, 
2).getTime());
+            compare(rangedDate.date.getTime(), new Date(1922, 0, 2).getTime());
+            compare(rangedDate.minimumDate.getTime(), new Date(1922, 0, 
2).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1922, 0, 2, 23, 
59, 59, 999).getTime());
 
             // [1] Do we want to enforce min and max being different? E.g. if 
min
             // is (1900, 0, 1) and max is (1900, 0, 1), max should be set 
(1900, 0, 2).
@@ -159,7 +163,7 @@
             rangedDate.minimumDate = new Date(1990, 0, 1);
             compare(rangedDate.minimumDate.getTime(), new Date(1990, 0, 
1).getTime());
             rangedDate.maximumDate = new Date(1999, 0, 1);
-            compare(rangedDate.maximumDate.getTime(), new Date(1999, 0, 
1).getTime());
+            compare(rangedDate.maximumDate.getTime(), new Date(1999, 0, 1, 23, 
59, 59, 999).getTime());
 
             //    MIN   DATE    MAX
             // [ 1996 | 1996 | 1999 ]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_tableview.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_tableview.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_tableview.qml
        2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_tableview.qml
        2019-02-25 10:38:43.000000000 +0100
@@ -1131,5 +1131,20 @@
         tableView.moveColumn(0, 1);
         compare(tableView.sortIndicatorColumn, 1);
     }
+
+    function test_resize_dynamic_columns() {
+        var component = 
Qt.createComponent("tableview/table_resizedynamiccolumns.qml")
+        compare(component.status, Component.Ready)
+        var table = createTemporaryObject(component, container);
+        verify(table !== null, "table created is null")
+        waitForRendering(table)
+        compare(table.getColumn(0).width, 20)
+        table.getColumn(0).resizeToContents()
+        tryCompare(table.getColumn(0), "width", 50)
+        table.getColumn(0).width = 20
+        compare(table.getColumn(0).width, 20)
+        table.resizeColumnsToContents()
+        compare(table.getColumn(0).width, 50)
+    }
 }
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_treeview.qml
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_treeview.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/auto/controls/data/tst_treeview.qml
 2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/auto/controls/data/tst_treeview.qml
 2019-02-25 10:38:43.000000000 +0100
@@ -747,7 +747,6 @@
         }
 
         function test_indexAt() {
-            skip("Fails because of bug QTBUG-47523")
             var component = Qt.createComponent("treeview/treeview_1.qml")
             compare(component.status, Component.Ready)
             var tree = component.createObject(container);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/gallery.qrc 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/gallery.qrc
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/gallery.qrc  
    2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/gallery.qrc  
    2019-02-25 10:38:43.000000000 +0100
@@ -1,6 +1,5 @@
 <RCC>
     <qresource prefix="/">
-        <file>timer.qml</file>
         <file 
alias="main.qml">../../../examples/quickcontrols/controls/gallery/main.qml</file>
         <file 
alias="qml/ButtonPage.qml">../../../examples/quickcontrols/controls/gallery/qml/ButtonPage.qml</file>
         <file 
alias="qml/InputPage.qml">../../../examples/quickcontrols/controls/gallery/qml/InputPage.qml</file>
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/startup_bench.cpp
 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/startup_bench.cpp
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/startup_bench.cpp
        2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/startup_bench.cpp
        2019-02-25 10:38:43.000000000 +0100
@@ -50,29 +50,26 @@
 
 #include "qtquickcontrolsapplication.h"
 #include <QtQml/QQmlApplicationEngine>
+#include <QQuickWindow>
 #include <QtCore/QElapsedTimer>
 #include <functional>
 #include <stdio.h>
 
-int runBenchmark(std::function<int()> f) {
+int runBenchmark(std::function<qint64()> f) {
     {
-        QElapsedTimer t;
-        t.start();
-        int r = f();
-        if (r == 0)
-            printf("%d,", static_cast<int>(t.elapsed()));
+        auto r = f();
+        if (r >= 0)
+            printf("%d,", static_cast<int>(r));
         else
-            return r;
+            return -1;
     }
 
     {
-        QElapsedTimer t;
-        t.start();
-        int r = f();
-        if (r == 0)
-            printf("%d\n", static_cast<int>(t.elapsed()));
+        auto r = f();
+        if (r >= 0)
+            printf("%d\n", static_cast<int>(r));
         else
-            return r;
+            return -1;
     }
 
     return 0;
@@ -83,14 +80,18 @@
 {
     QtQuickControlsApplication app(argc, argv);
 
-    auto startup = [&app]() {
+    auto startup = [&app]() -> qint64 {
+        QElapsedTimer timer;
+        timer.start();
         QQmlApplicationEngine engine(QUrl("qrc:/main.qml"));
-        QObject::connect(&engine, &QQmlApplicationEngine::quit,
+        if (engine.rootObjects().size() != 1)
+            return -1;
+        QQuickWindow *window = 
qobject_cast<QQuickWindow*>(engine.rootObjects().first());
+        QObject::connect(window, &QQuickWindow::frameSwapped,
                          QCoreApplication::instance(), 
&QCoreApplication::quit);
-        engine.load(QUrl("qrc:/timer.qml"));
-        if (engine.rootObjects().size() != 2)
+        if (app.exec() != 0)
             return -1;
-        return app.exec();
+        return timer.elapsed();
     };
 
     return runBenchmark(startup);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/timer.qml 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/timer.qml
--- 
old/qtquickcontrols-everywhere-src-5.12.0/tests/benchmarks/startup/timer.qml    
    2018-11-27 06:41:44.000000000 +0100
+++ 
new/qtquickcontrols-everywhere-src-5.12.2/tests/benchmarks/startup/timer.qml    
    1970-01-01 01:00:00.000000000 +0100
@@ -1,7 +0,0 @@
-import QtQuick 2.2
-
-Timer {
-    running: true
-    interval: 0
-    onTriggered: Qt.quit();
-}


Reply via email to