aboutsummaryrefslogtreecommitdiffstats
path: root/src/imports/controls
Commit message (Collapse)AuthorAgeFilesLines
* Make ToolTips wrapMitch Curtis2019-11-155-5/+5
| | | | | | | | Otherwise the text will go outside the window. Change-Id: I3d50a195b1ee6c9b5d49952ef6c49d17c61372fa Fixes: QTBUG-62350 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* SwipeView: fix issue where child items couldn't get focusMitch Curtis2019-11-153-0/+3
| | | | | | | | | Set the focus property of the contentItem (ListView) to the focus property of the SwipeView itself. Change-Id: Ic410f7fb8db9fbb758b956dfe07e1b4265f5f687 Fixes: QTBUG-62401 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-11-081-0/+7
|\ | | | | | | Change-Id: I551670d92af2bc96d5d8b8724bf5b280e94498c7
| * Doc: advise against naming root resource dirs the same as style namesMitch Curtis2019-11-071-0/+7
| | | | | | | | | | | | | | Task-number: QTBUG-59330 Change-Id: Ie983f27f2eca0bc9c906fb7bcfe9e077616ef88b Reviewed-by: Kavindra Palaraja <kpalaraja@luxoft.com> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14v5.14.0-beta3Qt Forward Merge Bot2019-11-051479-0/+0
|\ \ | |/ | | | | Change-Id: I4b970036bdb5d312b0dc5cb1bcbd8e161e3d4c7e
| * Run optipng on all imagesMitch Curtis2019-11-041479-0/+0
| | | | | | | | | | | | | | | | find . -name "*.png" -exec optipng -o 7 -strip all {} \; Change-Id: I2238b2dd38813d33ed48d79817f872f922cfa28d Fixes: QTBUG-79275 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-261-1/+1
|\ \ | |/ | | | | Change-Id: I5da24592eb292ef4f430d734fec234166ce6e1e3
| * Docs: Update qmlmodule to use QtMinorVersion so that this version is always ↵Kavindra Palaraja2019-10-251-1/+1
| | | | | | | | | | | | | | | | | | up to date Fixes: QTBUG-76077 Change-Id: Ica06051a8ca5dc3858110f5eef47fec20bd2d2c1 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Update plugins.qmltypes for 5.14Kai Koehne2019-10-215-5/+1075
| | | | | | | | | | | | Task-number: QTBUG-78690 Change-Id: I0e421232f4335a7a351562f23134eccdd0b1c674 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-10-122-14/+28
|\ \ | |/ | | | | Change-Id: I0b00323007dc02adf98dc581e2694e44b298da29
| * Universal: disable wrapping for TabBarMitch Curtis2019-10-111-13/+10
| | | | | | | | | | | | | | | | | | | | | | | | The wrapping behavior makes for a poor user experience. Use ListView as other styles do. [ChangeLog][Universal][TabBar] Disabled wrapping. The Universal style TabBar now behaves like TabBar from other styles. Change-Id: I0a37490cdc2b81ff864ec682256f469a1a930628 Fixes: QTBUG-50027 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| * Imagine: fix crash when switching between 9-patch and regular imageMitch Curtis2019-10-021-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Consider the following changes in source: normal.png => press.9.png => normal.png => focus.png If the last two events happen quickly, pixmapChange() can be called twice with no call to updatePaintNode() inbetween. On the first call, resetNode will be true (because ninePatch is not null since it is still in the process of going from a 9-patch image to a regular image), and on the second call, resetNode would be false if we didn't have this check. This results in the oldNode never being deleted, and QQuickImage tries to static_cast a QQuickNinePatchImage to a QSGInternalImageNode. Only change resetNode when it's false; i.e. when no reset is pending. updatePaintNode() will take care of setting it to false if it's true. Change-Id: I614c172c3e24fda2506f081f8fcdb6acd1c65fb8 Fixes: QTBUG-78790 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
* | Minor performance improvements suggested by clang-tidyAlbert Astals Cid2019-10-072-2/+2
| | | | | | | | | | | | | | | | * Add const & to function parameters * Add const & to variables assigned from functions that return const & Change-Id: Ibf35e54ffb78f164493222125411f2ba279cb861 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.13' into 5.14Qt Forward Merge Bot2019-09-0630-173/+222
|\ \ | |/ | | | | Change-Id: Ie9314e1a5daa20cee9d95a3c42873dbe515b3333
| * Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-09-061-0/+45
| |\ | | | | | | | | | Change-Id: I859406dc779e59ee5d8e2980e04f8be28b1a69aa
| | * ComboBox: document the behavior surrounding the accepted() signalMitch Curtis2019-09-061-0/+45
| | | | | | | | | | | | | | | | | | | | | | | | Change-Id: I65be8e54ded284d2f80b5a1f301b75223bd81bb3 Fixes: QTBUG-75338 Reviewed-by: Henning Gründl <henning.gruendl@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-08-311-1/+1
| |\ \ | | |/ | | | | | | Change-Id: Ia89d3600269126768ede2305dcf60d968f772fb7
| | * Doc: Rename section title for 'TabBar'Topi Reinio2019-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Having a section title identical to a QML type name caused links intended to go to the QML reference to link to this page instead. Fixes: QTBUG-77840 Change-Id: I06219a67fd384c51be6080ef7ef8579b6a405d0d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Doc: Fix the qhp project nameVenugopal Shivashankar2019-08-261-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1abdfe5d5 renamed the doc module without the version no. 2 in the name, but a bug was left behind. The qhp.project name was still called QtQuickControls2, while all the qhp settings in the qdocconf were using QtQuickControls. Task-number: QTBUG-77815 Change-Id: I1e8d10212798a1f4dfedcd7888f846e149851d23 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
| * | Doc: Replace the "Qt Quick Controls 2" instancesVenugopal Shivashankar2019-08-2229-173/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | Now that Controls 1 is deprecated, it's ideal to use "Qt Quick Controls" instead of "Qt Quick Controls 2". Task-number: QTBUG-70333 Change-Id: Ie745db4b61071ddb5e06150d4e739cda74c59f41 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | | Enable Material style with RHILaszlo Agocs2019-07-253-0/+29
| | | | | | | | | | | | | | | Change-Id: I9100d20b76b9cc6ac138f474e5d808db19ed6684 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Remove redundant codeVitaly Fanaskov2019-07-191-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Reasons: 1) Qt::TexturePattern has never set by any code (this branch is unreachable); 2) There is no knowleage about any brushes in QML (this method is supposed to be invoked from QML only). Palette is used for colors only; 3) Even if brush style has been set somehow, it will be erased during palettes resolving process after assigning a new "window color". Looks like this code was copied from widgets styling and has been compiling only because of the current design. In light of redesigning palette class this code also makes no sense. Bringing knowledge about brushes and its styles to QML requires additional job. Change-Id: I555d062335593ad945b024136750dcd548cd9f16 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Nils Jeisecke <nils.jeisecke@saltation.com>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-07-131-0/+1
|\ \ \ | |/ / | | | | | | Change-Id: I76bfa11f39261e03b52ad237a09ff623bc865e0f
| * | Doc: Replace example file lists with links to code.qt.ioTopi Reinio2019-07-091-0/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-74391 Change-Id: I354049c5c8edb36cb94afa4483ae177a736f2374 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-07-044-5/+6
|\ \ \ | |/ / | | | | | | | | | | | | | | | Conflicts: .qmake.conf Change-Id: Ib55ecb95e5ae47cc7a46f136a2f2eb158676ea34
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Liang Qi2019-07-044-5/+6
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf tests/auto/accessibility/tst_accessibility.cpp Change-Id: I0bc187e2a8edb4e357c1bf114dd9b1977d5c1e45
| | * Doc: Fix documentation warnings for Qt Quick Controls 2Topi Reinio2019-01-151-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - The correct module header name is QtQuickControls2 - Add dependency to qtgraphicaleffetcs - RangeSlider: Move \qmlsignal commands out of \qmlpropertygroup - Fix linking to content[Width|Height] for ScrollView Change-Id: I1636fef5f4365a8e9f80b0b8df17e78999bfd3f8 Reviewed-by: Paul Wicking <paul.wicking@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Material: account for accent color in flat highlighted button's rippleKonstantin Ritt2019-05-211-2/+1
| | | | | | | | | | | | | | | | | | | | | According to https://material.io/design/components/buttons.html#text-button Change-Id: Ia36a676864a8f738d204cf8db9430b797f1f2f99 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * doc - use the correct attributions fileKavindra Palaraja2019-05-201-1/+1
| | | | | | | | | | | | | | | Change-Id: Ib83e2ec925e0c37b40562aea7f11e09759ce3abc Reviewed-by: Kai Koehne <kai.koehne@qt.io>
| | * CursorDelegate: stop cursor timer when interval is set to 0Richard Moe Gustavsen2019-05-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The cursor flash iterval can sometimes be set to 0. This is done from e.g the iOS plugin while selecting text, since the cursor should not flash when the user is dragging it around inside a magnifier glass. Setting the interval to 0 simply means "don't flash", rather than "hide the cursor". But setting the interval of a QML Timer to 0 will cause it to never trigger, which is not what we want, since then the cursor can end up staying hidden if done in-between two "flashes". This patch will add an extra condition that checks for this case. Fixes: QTBUG-75844 Change-Id: Ib1ca594a49a18cb161a2b2a67928fb6766984988 Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* | | Fix installation of .png filesJoerg Bornemann2019-06-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The content of AUX_QML_FILES must consist of valid file paths, not wildcard patterns. The wildcard will produce an invalid installation rule, and since qtbase/20e9422e069a27b7e29b54207447e6ca02b3a55a we're not ignoring installation errors anymore. Fixes: QTBUG-76378 Change-Id: I8498e3559c97cf502cf8b1a5823f1a6775ee2400 Reviewed-by: Liang Qi <liang.qi@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Qualify unqualified id lookup in controlsFabian Kosmale2019-06-1156-169/+173
| | | | | | | | | | | | | | | | | | | | | | | | | | | This is a preparation for https://codereview.qt-project.org/c/qt/qtdeclarative/+/259561 and also avoids walking up the contexts Change-Id: I9f016b7346db088dfe1519924c9770e486b46ec9 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
* | | Add valueRole API to ComboBoxMitch Curtis2019-04-236-31/+89
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This allows the user to conveniently manage data for a role associated with the text role. A common example of this is an enum stored in a backend with nicely formatted text displayed to the user. Before this patch, developers would have to write code like this: ComboBox { textRole: "text" onActivated: backend.modifier = model[currentIndex].value Component.onCompleted: currentIndex = findValue(backend.modifier) model: [ { value: Qt.NoModifier, text: qsTr("No modifier") }, { value: Qt.ShiftModifier, text: qsTr("Shift") }, { value: Qt.ControlModifier, text: qsTr("Control") } ] function findValue(value) { for (var i = 0; i < model.length; ++i) { if (model[i].value === value) return i } return -1 } } With this patch, the code becomes much simpler: ComboBox { textRole: "text" valueRole: "value" onActivated: backend.modifier = currentValue Component.onCompleted: currentIndex = indexOfValue(backend.modifier) model: [ { value: Qt.NoModifier, text: qsTr("No modifier") }, { value: Qt.ShiftModifier, text: qsTr("Shift") }, { value: Qt.ControlModifier, text: qsTr("Control") } ] } [ChangeLog][Controls][ComboBox] Added valueRole, currentValue and indexOfValue(). These allow convenient management of data for a role associated with the text role. Change-Id: I0ed19bd0ba9cf6b044a8113ff1a8782d43065449 Fixes: QTBUG-73491 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-04-162-2/+2
|\ \ \ | |/ / | | | | | | Change-Id: Ica87b5aac6a7ca335acd9c5da998cc1831347420
| * | Update plugins.qmltypes for QtQuick.ControlsKai Koehne2019-04-112-2/+2
| | | | | | | | | | | | | | | | | | | | | This amends 1693a19fd557c857ef4f43ab303ea1056790481e Change-Id: I70ef68de56405eb705d1c79be4eed8925def319a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-04-094-3/+5
|\ \ \ | |/ / | | | | | | Change-Id: Icc0bf6680e7c329a797f9924c283023a3d42b93a
| * | Merge remote-tracking branch 'origin/5.12' into 5.13v5.13.0-beta2Qt Forward Merge Bot2019-04-064-3/+5
| |\ \ | | |/ | | | | | | Change-Id: I5b112e0e4021191c387da86bb5b0477fe0c4da30
| | * Doc: Add the moduleheader informationVenugopal Shivashankar2019-04-031-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Although the doc project is named QtQuickControls, the repo is still called qtquickcontrols2 and the exported headers are installed under QT_INSTALL_PREFIX/include/QtQuickControls2. By default, Qdoc tries to look for the headers in a directory that matches the doc project name, which is not the right include directory in this case. Change-Id: I77889fe35c028a2fc903d49b571a564c57326c21 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Default: fix highlighted ItemDelegate colorsMitch Curtis2019-03-273-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Make ItemDelegate respect highlightedText - Change ItemDelegate's highlightedText palette role from white to almost black (i.e inversion of "light" which is 0xFF090909), so that text shows up against a highlighted background. This also allows easily switching ComboBox to a dark style via palette customization. Fixes: QTBUG-72786 Fixes: QTBUG-74678 Change-Id: I5ad0d86de112f869edf0488d06bb308cdc900363 Reviewed-by: Massimo Callegari <massimocallegari@yahoo.it> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-03-213-7/+20
|\ \ \ | |/ / | | | | | | Change-Id: I48383fc70de754394259d5dfd19c7b25f1280f67
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-03-162-4/+6
| |\ \ | | |/ | | | | | | Change-Id: If27c142786ad2457a80ce1ef65220834eda81e94
| | * Fix DialogButtonBox content size calculationMitch Curtis2019-03-152-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some history: - f1f884d3 worked around an issue in DialogButtonBox. - c2fd8f7d fixed it by using contentWidth; i.e. the implicit width of the contentItem. It caused QTBUG-72372. - I tried to fix QTBUG-72372 with 6476de0b, but created (or exposed) QTBUG-73860. The problem in QTBUG-73860 can be seen with the following example: Dialog { id: dialog visible: true standardButtons: Dialog.Ok } The single 'Ok' button here will go outside of the dialog. The underlying issue can be seen by looking into DialogButtonBox.qml: implicitWidth: Math.max(implicitBackgroundWidth + leftInset + rightInset, (control.count === 1 ? contentWidth * 2 : contentWidth) + leftPadding + rightPadding) implicitHeight: Math.max(implicitBackgroundHeight + topInset + bottomInset, contentHeight + topPadding + bottomPadding) The implicit width of the box in this case is contentWidth * 2 (there is one button, so control.count === 1). This should result in the button taking half the width of the box and being aligned to the right: alignment: count === 1 ? Qt.AlignRight : undefined ... delegate: Button { width: control.count === 1 ? control.availableWidth / 2 : undefined } What actually happens is that the contentItem (ListView) is temporarily 0 until it gets its final size of 100. However, QQuickDialogButtonBox doesn't respond to this change in the ListView's contentWidth. This problem can be fixed by returning to c2fd8f7d's resizeContent() implementation, which uses contentWidth. Then, there is a second issue: Dialog { id: dialog visible: true standardButtons: Dialog.Ok width: 300 } The button here is also positioned outside of the box. The problem is that the contentWidth is based on implicitContentWidth: QQuickContainerPrivate::updateContentWidth() { // ... contentWidth = implicitContentWidth; // ... } implicitContentWidth is calculated by calling getContentWidth(): void QQuickControlPrivate::updateImplicitContentWidth() { // ... implicitContentWidth = getContentWidth(); // ... } In the case of horizontal alignment, QQuickDialogButtonBoxPrivate::getContentWidth() uses the implicit width of the largest button: for (int i = 0; i < count; ++i) { QQuickItem *item = q->itemAt(i); if (item) { totalWidth += item->implicitWidth(); maxWidth = qMax(maxWidth, item->implicitWidth()); } } // ... if ((alignment & Qt::AlignHorizontal_Mask) == 0) totalWidth = qMax(totalWidth, count * maxWidth + totalSpacing); The Default style button has an implicitWidth of 100. The DialogButtonBox in the example above is 300 pixels wide, so the button should be 150, and it is, thanks to its width binding. However, the DialogButtonBox uses contentWidth to size its contentItem (ListView), and the contentWidth is, as mentioned, 100: the implicit width of the button. So, the button ends up hanging over the side of the box, as it's larger than the box thinks it is. This problem is fixed by setting DialogButtonBox's contentWidth to the contentWidth of the contentItem (ListView). This makes DialogButtonBox use the explicit widths of the buttons rather than their implicit widths. Since the contentWidth is no longer implicit, we must also change any use of contentWidth in the implicitWidth binding to implicitContentWidth. While writing auto tests for this, they caught an issue where contentWidth wasn't updated, so now we call resizeContent() in QQuickContainer::setContentWidth(). Change-Id: I99ffda21b47aeb14d4382e453e87c4312f343a1c Fixes: QTBUG-72886 Fixes: QTBUG-73860 Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
| * | Doc: update qtquickcontrols2.differences.qdocMitch Curtis2019-03-141-3/+14
| | | | | | | | | | | | | | | | | | | | | Add SplitView and TableView. Change-Id: Ib049d12d6e922269ac80d2e9b10f37f5e274a567 Reviewed-by: Paul Wicking <paul.wicking@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-03-1220-1869/+450
|\ \ \ | |/ / | | | | | | Change-Id: I79759d4101b5267c5d9d74ccb81e994da002b0ef
| * | Update plugins.qmltypes for Qt 5.13Kai Koehne2019-03-0713-1841/+422
| | | | | | | | | | | | | | | | | | | | | Task-number: QTBUG-73484 Change-Id: I5c6019ec015a7d423dcc103d1acf23383c5b6239 Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | SplitView: fix revisions, imports and \since versionsMitch Curtis2019-03-077-28/+28
| | | | | | | | | | | | | | | | | | | | | | | | Work was probably started before 5.12 but the patch ended up getting merged in time for 5.13. It seems that I forgot to update the versions. Change-Id: I19edf08158cca0967a7a536b3aee326e3b393d4c Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* | | Merge remote-tracking branch 'origin/5.13' into devQt Forward Merge Bot2019-03-057-8/+33
|\ \ \ | |/ / | | | | | | Change-Id: Ia4c5ae4b49beb24b7abb0502990b79bd54ca74ec
| * | Explicitly set import namesKai Koehne2019-03-044-0/+8
| | | | | | | | | | | | | | | | | | | | | This makes sure the qmltypes target for qml_plugin's works. Change-Id: I4a7624aa2db2eb40b9b44f158e099c651b1249cb Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
| * | Merge remote-tracking branch 'origin/5.12' into 5.13Qt Forward Merge Bot2019-03-021-6/+23
| |\ \ | | |/ | | | | | | Change-Id: Ibd3a8a111ce70643199c64f41143f332a34826f8
| | * Doc: restructure and fill in Imagine customization sectionMitch Curtis2019-02-251-6/+23
| | | | | | | | | | | | | | | Change-Id: I1b34fe2df28c734395dc2a55340f2a7cb1629692 Reviewed-by: Paul Wicking <paul.wicking@qt.io>