aboutsummaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Fix TextField background not respecting control's widthMitch Curtis2018-12-211-2/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After 6858d4e9, the background of the Material style TextField does not respect the width of the control if the control is resized (e.g. due to being in a layout). - The first time resizeBackground() is called, !extra.isAllocated() returns true - that is, extra has not been allocated yet. - The if statement is executed and the background's width is set to the available width of the control (e.g. 120). - As a result of the background's width being set, its widthValid flag is set to true. This would previously be undone directly afterwards by setting widthValid flag to false. - In the case of the test case, the implicitWidth was already 120, so geometryChanged is not emitted. However, when the height of the background is set, this *does* cause itemGeometryChanged() to be called, which in turn does the following: extra.value().hasBackgroundWidth = p->widthValid; extra.value().hasBackgroundHeight = p->heightValid; resizeBackground(); So now all of the following checks evaluate to false: (!p->widthValid || !extra.isAllocated() || !extra->hasBackgroundWidth) This prevents the background from being resized. This patch fixes the issue by unsetting the widthValid (and heightValid) flags of the background directly after setting its width. To be safe, it also only unsets it if we were the ones to set it. By doing this, the check mentioned above succeeds because p->widthValid and extra->hasBackgroundWidth are both now false. It also adds some extra safety into itemGeometryChanged() that ensures that extra.value().hasBackgroundWidth is only set if necessary, and therefore prevents the extra data from unnecessarily being allocated. This is not necessary for the fix, but feels like the right thing to do. Change-Id: I051e281718bd8a2a20c100767d929fb71497ce1b Fixes: QTBUG-71875 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* QQuickComboBox: update QRegularExpression wildcard codeSamuel Gaist2018-12-171-1/+1
| | | | | | | | | | Following the update of qtbase because of QTBUG-72539, the code using wildcardToRegularExpression must be updated as anchoredPattern is not needed anymore. Task-number: QTBUG-72539 Change-Id: I51c895560866079c9cc27fa076e29fa4546ecf8f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Make it visually clear which ComboBox item is the current itemMitch Curtis2018-12-123-0/+3
| | | | | | | | | | | | Do as the Default style does and make the current item bold. If we don't do this, it can be impossible to distinguish the current item from the highlighted item, especially when the popup obscures the button. Change-Id: If40b9c73c207d07fb5669564cdcfcea29ebed2f1 Fixes: QTBUG-68794 Reviewed-by: Nils Jeisecke <nils.jeisecke@saltation.com> Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
* Merge remote-tracking branch 'origin/5.12.0' into 5.12Qt Forward Merge Bot2018-12-05444-1423/+1367
|\ | | | | | | Change-Id: I7fe9e74beff3cdbfbf02ee0f129a8204ad31046e
| * Revert all Menu delegate patchesv5.12.0-rc2v5.12.0-rc1v5.12.0Mitch Curtis2018-11-158-150/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts the following commits: d5cb26bc56a3b6f6e99c88654d4f7a65f43551ac - Menu: ensure the correct delegates are used when created via Component d923dd467c1aeb3e195a09949b04862084002f88 - MenuBar: ensure the correct delegates are used when created via Component d56c193eb4ceb640611d66f22e1f26aae91cd7d1 - QQuickPopupPositioner: avoid adding duplicate item change listeners 567a2de8cd493aabe0055d6dbc367b39447e70dd - Stabilize tst_qquickmenubar 953fbac6131823e4fce0eb4707a854469c4c04ff - Fix Instantiator-created MenuItems disappearing 936d31179d44220571ded15840bedeccb581c83b - tst_qquickmenu: add a test for MenuItems before and after a Repeater fc1832810f6c09505d9413685ed0b2d6295bea4a - QQuickMenuBar: fix menu not opening The fix for QTBUG-67559 has caused lots of issues, with the latest being a crash right before the 5.12 release. The bug that they fix is a P2, so it's not worth the hassle. The patches might be able to be resubmitted to dev after the crash is fixed. Change-Id: Ic192c7a302176bcdb2503b636b3462b10898a2ba Fixes: QTBUG-71770 Reviewed-by: J-P Nurmi <jpnurmi@gmail.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
| * Doc: Fix the examplesinstallpath in the qdocconfVenugopal Shivashankar2018-11-131-1/+1
| | | | | | | | | | | | | | | | | | Qt Creator tries to look for the example sources in this path, before listing them in the welcome screen. Task-number: QTBUG-71694 Change-Id: I333f380f2f8ada91865474ff95cb0df1affba9cb Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
| * Doc: Rename landing page title to 'Qt Quick Controls'Topi Reinio2018-11-131-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | Qt Quick Controls 2 module is referred to without the version number. The landing page title still had the version number, which caused the table of contents to fail to find the html filename. Fix the landing page title and use the old title as a \keyword, so any external links still continue to work. Task-number: QTBUG-71694 Change-Id: I99e5eabf56028bd8a3180cb7161a0b0dcbdf9863 Reviewed-by: Martin Smith <martin.smith@qt.io>
| * QQuickMenuBar: fix menu not openingMitch Curtis2018-11-092-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a Menu is declared within a MenuBar, a MenuBarItem has to be created for it. Creation takes the following steps: - 1 Begin creation of the item - 1.1 Set the parent of the MenuBarItem to the MenuBar - 2 Set the menu on the item - 3 Complete creation of the item - 4 Add the item When setting the parent of the MenuBarItem, the following call stack can be observed: 1 QQuickContainer::itemChange qquickcontainer.cpp 757 0x7fff6e5f4544 2 QQuickItemPrivate::itemChange qquickitem.cpp 6213 0x7fff6aa226f7 3 QQuickItemPrivate::addChild qquickitem.cpp 2964 0x7fff6aa1e663 4 QQuickItem::setParentItem qquickitem.cpp 2753 0x7fff6aa0f57c 5 QQuickMenuBarPrivate::beginCreateItem qquickmenubar.cpp 100 0x7fff6e627c08 6 QQuickMenuBarPrivate::createItem qquickmenubar.cpp 115 0x7fff6e627c98 7 QQuickMenuBarPrivate::contentData_append qquickmenubar.cpp 263 0x7fff6e6285d9 In particular, the following function is called: void QQuickContainer::itemChange(ItemChange change, const ItemChangeData &data) { Q_D(QQuickContainer); QQuickControl::itemChange(change, data); if (change == QQuickItem::ItemChildAddedChange && isComponentComplete() && data.item != d->background && data.item != d->contentItem) { if (!QQuickItemPrivate::get(data.item)->isTransparentForPositioner() && d->contentModel->indexOf(data.item, nullptr) == -1) addItem(data.item); } } This check is for items that are added after component completion of the control (QQuickMenuBar), as there is a isComponentComplete() check. Before d923dd46, QQuickMenuBarItems were constructed the moment their QQuickMenus were appended to QQuickMenuBar's contentData, which was before component completion. This meant that the isComponentComplete() check above failed as expected and the item was instead added after its creation process was completed (step #4 in the list above): void QQuickMenuBarPrivate::contentData_append(QQmlListProperty<QObject> *prop, QObject *obj) { QQuickMenuBar *menuBar = static_cast<QQuickMenuBar *>(prop->object); if (QQuickMenu *menu = qobject_cast<QQuickMenu *>(obj)) obj = QQuickMenuBarPrivate::get(menuBar)->createItem(menu); QQuickContainerPrivate::contentData_append(prop, obj); // leads to addItem() being called } Part of the process of an item being added to QQuickMenuBar involves connecting to the signals of its corresponding QQuickMenu (if it has a menu). Quoting the code from QQuickMenuBar::itemAdded(): if (QQuickMenu *menu = menuBarItem->menu()) QObjectPrivate::connect(menu, &QQuickPopup::aboutToHide, d, &QQuickMenuBarPrivate::onMenuAboutToHide); After d923dd46, QQuickMenuBarItems are now constructed *after* component completion to ensure that delegates declared outside of the menu bar have been completed. This means that the isComponentComplete() check in QQuickContainer::itemChange() no longer fails and the item is added before its QQuickMenu is set on it (step #2). As a result, it never connects to the QQuickPopup::aboutToHide() signal and hence it stays activated/highlighted even after the menu has been dismissed, which results in having to click twice on the QQuickMenuBarItem to open the menu the next time. This patch fixes the issue by simply setting the menu on the item before setting its parent: - 1 Begin creation of the item - 1.1 Set the menu on the item - 1.2 Set the parent of the MenuBarItem to the MenuBar - 2 Complete creation of the item - 3 Add the item This ensures that the item has a menu and the connection is made. Change-Id: I93edf7e5a8616a851595ce28ed43f0348078f0b5 Fixes: QTBUG-71583 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * QQuickPage: fix a typo to avoid a crashLiang Qi2018-11-091-1/+1
| | | | | | | | | | | | | | | | | | when setting null to footer Fixes: QTBUG-71444 Change-Id: Id4b0a3fd7aa104357674b4e2be6206894f8878da Reviewed-by: J-P Nurmi <jpnurmi@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Fix Instantiator-created MenuItems disappearingMitch Curtis2018-11-021-4/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When d5cb26bc fixed a bug in Menu, it also broke the use case of having an Instantiator create menu items. Using an Instantiator like this allows users to create a "Recent Files" menu, for example. The issue was that we would indiscriminately recreate items, even those owned by an Instantiator. This patch avoids recreating items owned by Instantiators. It also adds a logging category for Menu, to aid debugging. Fixes: QTBUG-71066 Change-Id: Ie0e46de1cbfaee81b43d63f3143435f2514371d5 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Tie minor version of all imports to Qt's minor versionMitch Curtis2018-11-02435-1314/+1333
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change makes all Qt Quick Controls 2 imports match the current Qt minor version, which is 12 as of this patch. It also updates all other Qt Quick imports to match. This will also make future version bumps easier as all version numbers in existing code/docs will match. The following commands were used to verify that no old versions remain: for i in `seq 0 11`; do git grep "import QtGraphicalEffects.*1.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick 2.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick.Layouts 1.$i$"; done for i in `seq 0 5`; do git grep "import QtQuick.Controls.*2.$i$"; done for i in `seq 0 11`; do git grep "import QtQuick.Templates 2.$i as T$"; done [ChangeLog] From Qt 5.12 onwards, all import versions in Qt Quick Controls 2 follow the same minor version as Qt's minor version number. For example, the import version for Qt 5.12 is: "import QtQuick.Controls 2.12". Change-Id: I6d87573f20912e041d9c3b7c773cc7bf7b152ec3 Fixes: QTBUG-71095 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Doc: Update \titles with "Controls 2" in itVenugopal Shivashankar2018-12-045-5/+10
| | | | | | | | | | | | | | | | Alternatively, the old \title is now a \keyword, to avoid broken links to the page. Change-Id: Ib8b97efe8be13559c45c7ca430b2afc93edaa3e7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix for SpinBox crash in Qt Quick DesignerThomas Hartmann2018-12-041-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The crash was not 100% reliable and depends on the order in the hash(). Something in beginDeferred() has a side effect on deferData->bindings and an element gets deleted. This causes a crash while iterating (++it). Therefore we do a copy of the hash. I added a regression test. The test did only crash for SpinBox and it did only crash roughly half the time. Task-number: QTBUG-71942 Change-Id: I339e0a4382f97db44f6ff2e9f07f2be7278d1e24 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Port QQuickComboBox to QRegularExpressionSamuel Gaist2018-12-041-5/+12
| | | | | | | | | | | | | | | | This patch updates the QQuickComboBox code to use QRegularExpression in place of QRegExp which is to be considered deprecated. Change-Id: I6551fac80b071073e3cd09d2016ef99df510e8ff Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Fix QQuickIconLabel's baselineOffsetMitch Curtis2018-12-031-0/+3
| | | | | | | | | | | | | | | | | | Set it to the bottom of the text if there is text. Change-Id: I03e14ec587e0868e1f2104dd464591b243ea9264 Fixes: QTBUG-71554 Reviewed-by: Pierre-Yves Siret <gr3cko@gmail.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Doc: clarify event handlingMitch Curtis2018-12-032-5/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current documentation says: "All controls, except non-interactive indicators, do not let clicks and touches through to items below them. For example, if Pane is used as the header or footer of ApplicationWindow, items underneath it will not get mouse or touch events." This can be confusing, because a Pane declared as a child of a MouseArea is "below" the MouseArea in code, but is "above" the MouseArea in the scene. Add a code example to make it less ambiguous. Also, link to the Event Handling section from Pane's docs. Task-number: QTBUG-71735 Change-Id: I97f4d6501af410bd5d5c0c0e48b14ca65605357d Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Fix compilation with gcc 4.8Ville Voutilainen2018-12-031-1/+1
| | | | | | | | | | | | | | GCC 4.8 doesn't like using QPointer in signal connections. Change-Id: Idc61984b155b0af8d1afb9d43c9eaf44ca9073cd Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | Doc: add "1" to all mentions of the old Qt Quick ControlsMitch Curtis2018-12-032-9/+9
| | | | | | | | | | | | | | Be explicit and reduce the chance for confusion. Change-Id: I4bd912660ee32705cd9c7bdc667ccb4e255a302b Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
* | qquickfusionstyle: do not force a fixed blue color as highlight colorTimur Pocheptsov2018-11-291-2/+0
| | | | | | | | | | | | | | | | use the one from ... mac system palette. Task-number: QTBUG-70652 Change-Id: I0aa9ab0596ceb8222327d9febbb132fffc3968cc Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Doc: Add qmake include flag for modulePaul Wicking2018-11-271-0/+2
| | | | | | | | | | | | Fixes: QTBUG-63834 Change-Id: I8ba52d68a878ec61337e8111d233409a9a98f47d Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* | QQuickScrollView: override getContentWidth/Height()Richard Moe Gustavsen2018-11-271-0/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A ScrollView lets you add the Flickable that should be decorated as a child. If that flickable has one (and only one) child, the contentWidth/Height properties of the ScrollView will be calculated by using the implicit size of that child (unless you assign something else to those properties explicitly). This logic goes wrong when the flickable is a TableView for several reasons. The first is that TableView will populate the content item dynamically, and for the first delegate item added, the content size of the ScrollView will be set to be the size of this item (since the TableView only got one child at that point). The second is that TableView has its own set of contentWidth/Height properties. And those properties are not respected by ScrollView. So even if TableView set the contentWidth/Height to be the size of the table, this will not be used by ScrollView. The result is that ScrollView concludes that the content item is empty, which means that no scrollbars end up visible or usable. This patch will fix this by overriding getContentWidth()/Height() from QQuickPane. The implementation will check if the flickable has valid contentWidth/Height values set, and if so, use them. Otherwise it will fall back to the old QQuickPane implementation (which will inspect the children etc). Fixes: QTBUG-71974 Change-Id: I027b9b939a10df2aeb816dea596adcb452f914b9 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@gmail.com> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | Fix compilation with qreal=floatFriedemann Kleint2018-11-263-5/+6
|/ | | | | | | | Introduce casts where required. Fixes: QTBUG-71952 Change-Id: I63a99d6918bc00367439e967e3c45a733b41c482 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: Ensure all links to 'Qt Quick Controls' lead to controls 2Venugopal Shivashankar2018-10-2912-83/+95
| | | | | | | | | | The name of the documentation module is also changed from 'qtquickcontrols2' to 'qtquickcontrols', and this is reflected in other modules' dependencies and licensing source files (qt_attribution.json). Task-number: QTBUG-70333 Change-Id: I2ba308b7eddae3af00dfb49a751cac8527c46bba Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Fix custom property page for snapeModeThomas Hartmann2018-10-231-1/+1
| | | | | | Change-Id: I013643381229a43b5d8c5c114a9d86156e5e2bd7 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.11' into 5.12v5.12.0-beta3Liang Qi2018-10-156-13/+60
|\ | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickmenubar.cpp src/quicktemplates2/qquickmenubar_p.h src/quicktemplates2/qquickmenubar_p_p.h Change-Id: I5c2115f05826f68f1b1f5ce6762273cd91e6997e
| * QQuickPopupPositioner: avoid adding duplicate item change listenersMitch Curtis2018-10-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The issue is that QQuickPopupPositioner::setParentItem() is called when the delegate has been created and assigned to the Repeater, then the ancestor listeners are added, and then straight after that, the benchmark item itself is parented to benchmarkRoot, which causes QQuickPopupPositioner::itemParentChanged() to be called, which adds a single ancestor listener: the QQuickRootItem (which was just added previously as a result of QQuickPopupPositioner::setParentItem() being called). The item could be arbitrarily high up in the ancestry tree, so there's no nice (i.e. fast) way of checking for duplicates in Controls 2 itself. Instead, use the new QQuickItemPrivate::updateOrAddItemChangeListener() function which only adds the listener if it doesn't already exist. This avoids a heap-use-after-free in qmlbench when creating Menus. Task-number: QTBUG-70729 Change-Id: I0efaa10167c4c9a9c4c1b65a5c34e683c3ec5732 Fixes: QTBUG-70729 Reviewed-by: Michael Brasser <michael.brasser@live.com> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * MenuBar: ensure the correct delegates are used when created via ComponentMitch Curtis2018-10-024-12/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | Don't add items until we're complete, as the delegate could change in the meantime. Instead, add them to contentData and create them when we're complete. A similar fix was already done for Menu in d5cb26bc. Task-number: QTBUG-67559 Change-Id: Idb43b7a69fcf1c1ad6396c73a3c090b92e460ab8 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | QQuickStackView: Fix deprecated function call warningv5.12.0-alpha1Friedemann Kleint2018-09-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QV4::Object::getIndexed(uint) is deprecated in favor of get(uint). On this occasion, fix signedness warnings by changing j and len to be of type uint. Fixes: qquickstackview_p.cpp:103:66: warning: ‘QV4::ReturnedValue QV4::Object::getIndexed(uint, bool*) const’ is deprecated [-Wdeprecated-declarations] QV4::ScopedValue value(scope, array->getIndexed(j)); QT_DEPRECATED inline ReturnedValue getIndexed(uint idx, bool *hasProperty = nullptr) const qquickstackview_p.cpp:107:78: warning: ‘QV4::ReturnedValue QV4::Object::getIndexed(uint, bool*) const’ is deprecated [-Wdeprecated-declarations] QV4::ScopedValue props(scope, array->getIndexed(j + 1)); QT_DEPRECATED inline ReturnedValue getIndexed(uint idx, bool *hasProperty = nullptr) const Change-Id: I6c0b0d54dd4119a2531f847788c531daf92e6954 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into 5.12Qt Forward Merge Bot2018-09-113-21/+49
|\| | | | | | | Change-Id: I3fa0011d8b69db2a004feb177a7f89ccb75a724d
| * Menu: ensure the correct delegates are used when created via ComponentMitch Curtis2018-09-052-17/+45
| | | | | | | | | | | | | | | | | | | | Don't add items until we're complete, as the delegate could change in the meantime. Instead, add them to contentData and create them when we're complete. Task-number: QTBUG-67559 Change-Id: I5f42129f49de861ff5f15d0069daeda0b4e5017c Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
| * Doc: improve SwipeView docsMitch Curtis2018-09-031-4/+4
| | | | | | | | | | Change-Id: Ic1cc85ed76c3ee534b7dda43449140a791cff36d Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
* | Fix enum warningsMitch Curtis2018-08-233-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | QPlatformDialogHelper's meta-object is added to QQuickDialogButtonBox's meta-object as a related meta object, and all of its enums are merged into the same namespace by the QML engine. This produces a conflict with the enum values of the ButtonLayout in QQuickDialogButtonBox, which is a duplicate of the one that's already pulled in. Fixes: QTBUG-70141 Task-number: QTBUG-70141 Change-Id: Ib33dc8ddbe8aa80d03183eb23861658c9e978f04 Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | QQuickContainer: call getContentItem() instead of using memberMitch Curtis2018-08-201-1/+1
| | | | | | | | | | | | | | | | | | | | This ensures that the contentItem is created (lazily) in cases like SplitView, which creates an empty QQuickContentItem. If we don't do this, items added to SplitView don't show up because it has no contentItem. Change-Id: Ide3ce45a2173cc13ee7b194ad6dc501287d6fc6c Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-182-2/+2
|\| | | | | | | Change-Id: I828b8ea2fef35e4e7ab0bb594e683f8643c793a1
| * QQuickStackView: fix crash on viewItemTransitionFinished()Alexandr Akulich2018-08-111-1/+1
| | | | | | | | | | | | | | | | | | | | Check transitioner for nullptr before access. The transitioner created only on some transition setter called and remain nullptr on base unstyled StackView from templates. Task-number: QTBUG-69897 Change-Id: I51564c5e7195112764f5a63b3b48c302a6d29146 Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
| * QQuickPlatformColorDialog - properly initialize platform dialog helperTimur Pocheptsov2018-08-091-1/+1
| | | | | | | | | | | | | | | | | | | | QCocoaColorDialogHelper in its setCurrentColor does some initialization (using NSColorPanel) and required its 'm_options' to be set by this point. So, first set options, then current color. Task-number: QTBUG-69839 Change-Id: I9092c80a511890e958de5b99a9614feb134dba7e Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
* | qquickplatformmessagedialog: fix build errorMitch Curtis2018-08-151-1/+1
| | | | | | | | | | | | | | | | | | | | Not sure why it's considered ambiguous, but since it's an unknown value, it's fine to print it as an int. Task-number: QTBUG-69916 Change-Id: I50335bd140626aa220e0468aef0fd1b3b34e3042 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-08-081-1/+2
|\| | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: I483081703594a8398d51a23c6d2266ac0ae9dfb0
| * QQuickIconImage: prevent color from being applied twiceMitch Curtis2018-07-301-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickIconImage::componentComplete() calls QQuickIconImagePrivate::updateIcon(), which loads the icon's image via QQuickImageBase::load(). That eventually calls QQuickImageBase::requestFinished(), which calls QQuickIconImage::pixmapChange(). That then calls QQuickIconImagePrivate::updateFillMode(), which can in turn cause QQuickIconImage::pixmapChange() to be called again, causing recursion. This recursion resulted in icon.color being applied twice. We already have a recursion check in place in QQuickIconImagePrivate::updateFillMode(), so we can reuse that in QQuickIconImage::pixmapChange() to know whether or not we should apply the color to the image. Task-number: QTBUG-69506 Change-Id: I5cd9edaa524c7ceb9c41c53a9efefcc4c647e246 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-07-281-0/+20
|\| | | | | | | Change-Id: Icd5d8a4292be3a335000a7bd0f30384ad83ff36d
| * Doc: add a note about the best way to set paddingMitch Curtis2018-07-241-0/+20
| | | | | | | | | | | | | | | | | | | | | | As the styles are subject to change over time, it's best to use the most fine-grained properties for specifying padding (topPadding, bottomPadding, etc.). Using these specific properties will ensure that what the user specifies always wins over what the style specifies. Task-number: QTBUG-69551 Change-Id: I4163e9918010fad0cb6ec701b49dbc59b086cf47 Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
* | Fix build with '-no-feature-action' configurationValentin Fokin2018-07-241-0/+2
| | | | | | | | | | Change-Id: I6a1488ef128f64184dccdd28aa12ff83f9975154 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/5.11' into devQt Forward Merge Bot2018-07-1710-8/+212
|\| | | | | | | | | | | | | | | | | Conflicts: src/quickcontrols2/qquickstyle.cpp src/quicktemplates2/qquickscrollview.cpp tests/auto/qquickstyle/tst_qquickstyle.cpp Change-Id: I9afddf07a956f43cf0445e91b8d1a02f167b6bd5
| * Fix crash on exit when using a shader and a PopupSimon Hausmann2018-07-161-1/+1
| | | | | | | | | | | | | | | | | | 3b5143bb67cdaaff6b0eabedff1034e4add7ec87 already fixed a crash with the same stack trace in dev. The same fix works with the referenced bug report. Task-number: QTBUG-66483 Change-Id: I05450d2ff40f317d9b5b59e28991fa92b414022e Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Fix qrc paths in QT_QUICK_CONTROLS_STYLE_PATHMitch Curtis2018-07-161-2/+60
| | | | | | | | | | | | | | | | | | Parse the environment variable manually when the platform's list separator is ':', to avoid issues with qrc paths (which start with ':') not working. Task-number: QTBUG-68219 Change-Id: Ic71d49da5a72a37bc1d2e7b19fbf1de71b3917f3 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Doc: add "Sizing" section to ScrollView's docsMitch Curtis2018-07-111-2/+16
| | | | | | | | | | | | | | | | Mention some important details about contentWidth and contentHeight. Task-number: QTBUG-69376 Change-Id: Iea6c6e36bb11436d30a0284a666c60ab7716f31b Reviewed-by: J-P Nurmi <jpnurmi@gmail.com>
| * Doc: Add AbstractButton.TextUnderIcon to display:enumeration listPaul Wicking2018-07-112-0/+1
| | | | | | | | | | | | Task-number: QTBUG-68298 Change-Id: I049ff1de079f065182429f43a20e1a3899f4a962 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Doc: provide code snippets for Overlay.modal and Overlay.modelessMitch Curtis2018-07-103-0/+120
| | | | | | | | | | Change-Id: I0ea789c0ba3a153b00ac3ab6501ecf10f6c733ce Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * Doc: Re-add .qml files as example sourcesTopi Reinio2018-07-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit dabf5d2e fixed a documentation issue with QML type inheritance by excluding .qml files from the documentation build. A side-effect is that example documentation pages do not list .qml files as part of the example project. Instead of excluding all .qml files, simply exclude '*.qml' from the list of source file extensions. This way, .qml files are still considered to be part of examples. Task-number: QTBUG-69141 Change-Id: I51a6d1768c30cfb9025a1aaf718b93bfae52437a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Move all pendingCurrentIndex assignments to a private setterMitch Curtis2018-07-032-7/+13
| | | | | | | | | | | | | | | | | | This makes debugging significantly easier, in that it's now possible to use one qDebug() statement for the assignment rather than a handful at different places in the code. Change-Id: Ic6fdc2943b6eeb0496148b07d7a3ece0b6399c1b Reviewed-by: Liang Qi <liang.qi@qt.io>