aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote-tracking branch 'origin/5.9' into 5.10J-P Nurmi2017-12-15229-113/+12790
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf examples/quickcontrols2/quickcontrols2.pro src/imports/controls/ComboBox.qml src/quicktemplates2/qquickabstractbutton.cpp src/quicktemplates2/qquickabstractbutton_p.h src/quicktemplates2/qquickapplicationwindow_p.h src/quicktemplates2/qquickcombobox.cpp src/quicktemplates2/qquickcontainer.cpp src/quicktemplates2/qquickcontrol.cpp src/quicktemplates2/qquickcontrol_p.h src/quicktemplates2/qquickcontrol_p_p.h src/quicktemplates2/qquicklabel_p.h src/quicktemplates2/qquicklabel_p_p.h src/quicktemplates2/qquickslider_p.h src/quicktemplates2/qquickspinbox.cpp src/quicktemplates2/qquicktextarea_p.h src/quicktemplates2/qquicktextarea_p_p.h src/quicktemplates2/qquicktextfield_p.h src/quicktemplates2/qquicktextfield_p_p.h tests/auto/auto.pro tests/auto/controls/data/tst_combobox.qml Change-Id: I34cdd5a9794e34e0f38f70353f2a2d04dfc11074
| * Control: defer the execution of the content itemJ-P Nurmi2017-12-1516-71/+18
| | | | | | | | | | | | | | | | | | Tumbler is excluded because test_customContentItemAtConstruction() starts failing if deferred execution is enabled for the content item. Task-number: QTBUG-50992 Change-Id: I11022c3c380311396453cf6229e068e4aae2d82a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Control: defer the execution of the background itemJ-P Nurmi2017-12-1511-9/+2
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I6372e143c68f0a5bf7212d759281acef3c81618e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Page: use deferred executionJ-P Nurmi2017-12-143-1/+5
| | | | | | | | | | Change-Id: Icb22f656893c89f61233bb547f03e63240bb8f97 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Extend and improve tst_customizationJ-P Nurmi2017-12-14155-118/+8148
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add more test cases, and clarify the roles of the test styles. - empty: no delegates at all - incomplete: has all delegates, but with no bindings that access delegates and therefore trigger creation (tests that delegates must be created regardless) - simple: has all delegates and creates bindings to simulate a full style - override: overrides the simple style and tests that the default instances of overridden delegates are not created There are still several non-popup controls that lack deferred execution. These are marked with QEXPECT_FAIL() to make it easy to track what's missing. This list still excludes all popups. Task-number: QTBUG-50992 Change-Id: I70ce42592e7a320251edebfab3030ccc7c0eb978 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * SpinBox: use deferred executionJ-P Nurmi2017-12-147-15/+348
| | | | | | | | | | | | | | | | | | | | tst_controls::SpinBox::test_initialFocus() caught an issue that focus was not transferred as expected when the creation of the content item was deferred. Task-number: QTBUG-50992 Change-Id: I6b9f5684ab7141fa4ebfe4c7fe3e32528553b96d Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * Fix QQuickStyle::setFallbackStyle() in static buildsJ-P Nurmi2017-12-141-2/+2
| | | | | | | | | | | | | | | | | | | | Use QQmlFile::urlToLocalFileOrQrc() instead of QUrl::toLocalFile() to avoid assuming a local file path. In static builds, QML files are in QRC. Task-number: QTBUG-65016 Change-Id: Ide36e5269d8692620f352574c726fbd1997c0a77 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Tumbler: ensure that currentIndex animations aren't too slowMitch Curtis2017-12-141-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The default (for ListView) is 400 pixels a second, which is really slow when there are 1000 items. Set highlightMoveDuration to 1000 (one second) for both view types to ensure a constant amount of time to animate currentIndex changes. [ChangeLog][Controls][Tumbler] Made currentIndex animations take a constant amount of time (1 second) regardless of how many items are in the model. This prevents Tumblers with large amounts of items from scrolling too slowly when changing the currentIndex. Task-number: QTBUG-65165 Change-Id: I0342236e49fae346926eb7e8a5fb6ed0813e457e Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * GroupBox: use deferred executionJ-P Nurmi2017-12-144-11/+100
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I3e5c8bf7cc39fae0e882440079bb43292ace1810 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Improve and fix tst_customizationJ-P Nurmi2017-12-142-22/+34
| | | | | | | | | | | | | | | | | | | | | | | | - Don't collect multiple object names for the same object. It was confusing that the "override" tests contained both "label-override" and "label-simple", for instance. - If creation fails, output the error as part of the FAIL message. - Verify that the QML files actually contain correct types. One of the RadioButton tests was accidentally running with a CheckBox. Change-Id: Ide56eed84b5625652321bfe4ef5e32fcf6f45438 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Pane: use deferred executionJ-P Nurmi2017-12-1415-0/+763
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: Ibba0e79f8eaf76336dad3708606484a2846b2912 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * ComboBox: use deferred executionJ-P Nurmi2017-12-1412-37/+400
| | | | | | | | | | | | | | | | | | | | | | | | As a special case, ComboBox defers the execution of the popup until the popup is either accessed or made visible. This gives a nice boost in creation time benchmarks (20->25, ~25%). The old optimization of setting the delegate model only when the popup is visible is no longer needed. Task-number: QTBUG-50992 Change-Id: Ifeaceb759ab676bb54c6bc09dc97810eade72ca1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * ApplicationWindow: use deferred executionJ-P Nurmi2017-12-136-4/+211
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: Ia07055d2fa3d30c91bdf3c526cf7301c7ed1ce2b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * RangeSlider: use deferred executionJ-P Nurmi2017-12-137-6/+315
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: Ibbc946c3402c65f9b100fc74dde04e4d439c8535 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * TextArea: use deferred executionJ-P Nurmi2017-12-137-4/+211
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I6d205f8ea0c90986b18b7e6cedbf347f1ce38eec Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * TextField: use deferred executionJ-P Nurmi2017-12-137-4/+211
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I99a8d97e7f25cfff398fb30e365c7b245b738c37 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Label: use deferred executionJ-P Nurmi2017-12-137-5/+215
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I8e626d1a0585f93cbd612aca39a1e9050f5e0ed3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Dial: use deferred executionJ-P Nurmi2017-12-137-4/+285
| | | | | | | | | | | | Task-number: QTBUG-50992 Change-Id: I432be00d81344ce129bc8906370555b134fdf423 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Slider: use deferred executionJ-P Nurmi2017-12-137-4/+285
| | | | | | | | | | | | | | | | | | | | | | Note: It is important to repeat the names of the deferred properties in base classes. The QML engine ask for the class info from the meta- object. A class info declaration in a sub-class overshadows the class info declaration by the same name in the base class. Task-number: QTBUG-50992 Change-Id: Ib674b943db2f0bf196c9386ea22b511715c0a98f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Migitate the performance regression caused by deferred executionJ-P Nurmi2017-12-126-29/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 458eb65f7 introduced a performance regression. Before 458eb65f7, qmlbench delegates_button.qml results were around 40 frames on a TX1. After 458eb65f, it dropped to 32. This patch is unfortunately not able to bring it on the original level, but at least improves the results to 37. For QQuickText, it is extremely important that implicitWidth() gets called before the component is completed, to avoid doing implicit size calculation multiple times. Deferred execution caused a performance regression by creating contentItem in "one go". We need to split the deferred execution to two parts so that bindings get first setup, and later enabled upon completion. This way, we utilize QQuickText's performance optimization for implicit size calculation. Task-number: QTBUG-50992 Change-Id: I4bf00af71b6d7dbf1d4b58b00fe547c6c321f8ed Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Fix custom scenegraph item animations when used with QQuickWidgetMitch Curtis2017-12-121-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When used within a QQuickWidget, our custom scenegraph item animations wouldn't update. Gunnar suggested that the cause of this is the fact that we're not calling QQuickWindow::update() anywhere (as would be done for us if we implemented these controls with Animators in QML). To go into more detail, QQuickWidget uses a QQuickRenderControl internally, and the render control's renderRequested() and sceneChanged() signals are both connected to QQuickWidget::triggerUpdate(), so if calling QQuickWindow::update() is enough to kick it into action. QQuickWindow::frameSwapped is not emitted as part of QQuickWidget's render cycle, so that is probably the core of the problem. So instead, of using frameSwapped to drive the animation, we drive it directly from our beforeRendering handler. We also want to ensure that the very first animation triggers a start as well, so we make QQuickAnimatedNode::start() call QQuickWindow::update(). It was also suggested that we use direct connections when connecting to QQuickWindow::beforeRendering and QQuickWindow::frameSwapped, as QQuickWindow has affinity to the GUI thread. So, to make sure that things get called on the right thread at the right time, we change that as well. Task-number: QTBUG-62874 Change-Id: Id233be1b80858ec19eef9312f143adffadababff Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * Bump versionOswald Buddenhagen2017-12-121-1/+1
| | | | | | | | Change-Id: I22b0bf8f03b472bae7a25711cca83c0657c9e848
| * Doc: mention indicator in customizing ComboBoxJ-P Nurmi2017-12-111-1/+1
| | | | | | | | | | Change-Id: I24ae2872dd74c682e24dbeda563c0fa281ae5522 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Buttons: defer the execution of the delegatesJ-P Nurmi2017-12-1125-11/+1382
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In practice, deferring the execution of the delegates (until accessed) means that the default delegate item does not get created at all, when a custom control replaces it at construction time. Button { background: Rectangle { ... } } Before, such custom Button would never be faster than the original one, because the default delegate was first created and then thrown away at construction time. Originally, this was not considered a huge problem, because the plan was to keep the default delegates so light- weight that it wouldn't matter. However, then came the fancy styles with shadows and effects and thus, heavier default delegates. There's also a growing demand for more features, and the default delegates are slowly getting heavier... Now, after this patch, if you replace a heavy default delegate with a light and simple custom delegate, the result is a much faster control. For example, replacing Material style Button's background, which has a shadow effect, with a plain Rectangle gives a ~10x boost, because the default background with its heavy shadow effect is not executed at all. At the same time, deferring the execution of the default delegates avoids troubles with asynchronous incubation, because we don't need to destroy an object in the middle of the incubation process. Task-number: QTBUG-50992 Change-Id: I2274bff99b9ff126d3748278d58d859222910c98 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Example flatstyle needs widgets modulePeter Seiderer2017-11-261-1/+2
| | | | | | | | | | | | | | | | Fixes compile with disabled widgets module. Task-number: QTBUG-64761 Change-Id: I743884d77d51e89061d87cab006bab0cafc9ddb7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * Merge remote-tracking branch 'origin/5.9.3' into 5.9Liang Qi2017-11-2347-177/+1630
| |\ | | | | | | | | | Change-Id: I53a6ca82706ff6afbad9e1f40e001c81b8c8ceb8
| * | watch for the actual render window if there is a QQuickRenderControlMarco Martin2017-11-221-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | if the scene is rendered by a QQuickRenderControl and we have a different target window (for instance QQuickWidget) we check the target window of the render control instead of the own window, this fixes window keyboard shortcuts for QQuickWidget Task-number: QTBUG-64548 Change-Id: I7614be580f2a707c752189e4c9b53a5d5f0159d7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Add means to test binary compatibility and add the test file for 5.10Milla Pohjanheimo2017-12-142-0/+10988
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added global.cfg file that lists the includes needed to create the binary compatibility test file. Also added the binary compatibility file to test 5.10 content. Change-Id: I9ddf9000991452c63d491695fb30c5c27199164d Reviewed-by: J-P Nurmi <jpnurmi@qt.io> Reviewed-by: Sergio Ahumada <sahumada@texla.cl>
* | | Update plugins.qmltypes for stylesJ-P Nurmi2017-12-133-8/+32
| | | | | | | | | | | | | | | | | | Change-Id: I19202b23a3027c7a24e15be2b929e9fc02aed044 Reviewed-by: Marco Benelli <marco.benelli@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Doc: link to Imagine examples from index and Imagine pagesMitch Curtis2017-12-132-0/+4
| | | | | | | | | | | | | | | Change-Id: I8dfe1ddca7d06553450bd3b7906a05e3530c3a85 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Fix double toggling through Action with checked AbstractButtonJoni Poikelin2017-12-134-6/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Action caused checked state of the button to be reset back to its original value if checked status had been change through click or key press. To avoid this, separate private function has been added to that does not change the status. Task-number: QTBUG-65108 Change-Id: I8a5aaa9aab739db3ba10d0202f5fb718cc7195bd Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Doc: mention qtquickcontrols2.conf file in font docsMitch Curtis2017-12-111-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | Currently, there's no explicit mention of being able to customize the font via the qtquickcontrols2.conf file. Change-Id: I0c62e19b721a2d652021c303f876aaaa1098b880 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Doc: mention qtquickcontrols2.conf file in palette docsMitch Curtis2017-12-111-3/+10
| | | | | | | | | | | | | | | | | | | | | | | | Currently, there's no explicit mention of being able to customize the palette via the qtquickcontrols2.conf file. Change-Id: I11f16a4e7dd759de2121e986df17ae9fdc651180 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Merge remote-tracking branch 'origin/5.10.0' into 5.10Liang Qi2017-12-0850-178/+1813
|\ \ \ | | | | | | | | | | | | Change-Id: I0553212e943114e3fa592d9e1e9c1f7d59219186
| * \ \ Merge remote-tracking branch 'origin/5.9.3' into 5.10.0v5.10.0-rc3v5.10.0-rc2v5.10.0-rc1v5.10.0Liang Qi2017-11-2147-177/+1630
| |\ \ \ | | | |/ | | |/| | | | | Change-Id: Iacaf1656f2a66df0a97641f855aaf4d9d9189e6d
| | * | Update Quick Designer supportv5.9.3J-P Nurmi2017-11-1046-177/+1578
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a lot of missing controls and properties. Change-Id: I7c0ff3cc7fd7220e338d78cac575091ff12abf48 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
| | * | Add changes file for Qt 5.9.3Antti Kokko2017-11-091-0/+52
| | |/ | | | | | | | | | | | | Change-Id: Id3ab86fcc29b411e47b9930d3b1d4f313d7be91b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Merge 5.10 into 5.10.0Oswald Buddenhagen2017-11-2012-29/+107
| |\ \ | |/ / |/| | | | | Change-Id: I043c6f0484a3075db15687595026c0af76ba63ff
* | | Fix outdated FDL license headerLiang Qi2017-11-163-12/+12
| | | | | | | | | | | | | | | Change-Id: I969a911c3e66aff502188ff9a103f16dc6544ba5 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | Merge remote-tracking branch 'origin/5.9' into 5.10Liang Qi2017-11-159-17/+95
|\ \ \ | | |/ | |/| | | | Change-Id: Ide4b85626dd153b534c39a3afa2f3b9e732badf5
| * | DialogButtonBox: micro optimization for resizeContent()Konstantin Ritt2017-11-081-9/+6
| | | | | | | | | | | | | | | Change-Id: Ie72671fb92108dfaf5aaae4ea3ffb279e14b2f1a Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | Fix QQuickSlider::valueAt()J-P Nurmi2017-11-072-5/+7
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-64065 Change-Id: Id77a85ce5b88c20795e9f7fe9d2ece974f46a315 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | Qt.labs.platform: declare and register enums to the meta systemJ-P Nurmi2017-11-066-3/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | To make them correctly available in QML so that they also work as signal arguments. Task-number: QTBUG-64259 Change-Id: I5fa00871f96357d924661c4b8af323a0f1748c9d Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * QQuickIconLabel: fix alignmentJ-P Nurmi2017-11-151-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickIconLabel is a wrapper around QQuickText & QQuickImage. While the alignment is mostly handled by layouting the internal QQuickText and QQuickImage instances, it must also propagate the alignment so that the text and image elements themselves also apply the correct content alignment. Task-number: QTBUG-64492 Change-Id: Ieb9d26fce703247bc6e2e61fa38e44c29937d1ad Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * Default: fix CheckDelegateJ-P Nurmi2017-11-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | A regression introduced by 0504150. A wrong binding for the x-coordinate was chosen while merging CheckIndicator back to CheckDelegate. Task-number: QTBUG-64430 Change-Id: Ia3b07e7537cc888406076c700ecd495a958cb7c1 Reviewed-by: Liang Qi <liang.qi@qt.io>
| | * Add changes file for Qt 5.10.0Antti Kokko2017-11-121-0/+166
| |/ |/| | | | | | | Change-Id: I6ed929757a3d526b2c521359e744322e3f519250 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Update plugins.qmltypesv5.10.0-beta4J-P Nurmi2017-11-062-72/+88
| | | | | | | | | | Change-Id: I792cd065a70aaabf2349e1fe2c5b5dc41e29d1d3 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Update .gitignoreJ-P Nurmi2017-11-061-0/+2
| | | | | | | | | | Change-Id: I696b405843f9eda79ec586cb99953469cb7f3c86 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Re-order revision 3 members and add explanatory commentsJ-P Nurmi2017-11-0622-69/+117
| | | | | | | | | | | | | | | | | | | | | | | | We've come to realize that even though it's tempting to group similar properties together, organizing the API so that revisions are grouped together makes future maintenance more pleasant. It's a lot easier to to see what was added and when. The same was done for earlier revisions in 5.9 in commit 430fe83. Change-Id: I738d7fdadd348c21737228c37d0f31e39b37f8e7 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.9' into 5.10J-P Nurmi2017-11-0635-442/+542
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickabstractbutton_p.h src/quicktemplates2/qquickbuttongroup_p.h src/quicktemplates2/qquickrangeslider.cpp src/quicktemplates2/qquickrangeslider_p.h src/quicktemplates2/qquickswipeview_p.h src/quicktemplates2/qquicktextarea.cpp src/quicktemplates2/qquicktextarea_p.h src/quicktemplates2/qquicktextfield_p.h Change-Id: I7cba8783b1dd85a4db534222e36572ee05dd01d0