aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2
Commit message (Collapse)AuthorAgeFilesLines
* Add QQuickScrollBarAttachedPrivate::setFlickable()J-P Nurmi2017-01-232-48/+114
| | | | | | | | | | QQuickScrollBarAttached was assuming that a QQuickFlickable instance was passed to the constructor. This patch allows specifying it after the construction, making it possible for the upcoming ScrollView to use attached scrollbars. Change-Id: I7c434734f74df65af86263f09da6a46fa68fc946 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2017-01-232-0/+3
|\ | | | | | | Change-Id: I70bce420ae7d82d1bd72ff3d6c4f034525272aba
| * Fix resizing of implicitly created content itemsJ-P Nurmi2017-01-231-0/+1
| | | | | | | | | | | | | | | | | | Pane, Frame, and other container type of controls create their default content item lazily (commit 0e3636a). Under certain circumstances, the default content item was not resized as appropriate. Change-Id: Ia1f55030f62cc7b02c5bc770b4983f1240acf42d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * QQuickAbstractButton: don't leak space key eventsJ-P Nurmi2017-01-231-0/+2
| | | | | | | | | | | | | | | | Unlike mouse events, key events are not accepted by default. Key events must be accepted to avoid event propagation. Change-Id: I8d9217e6f18d56515470bef2507d462edd274ce2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | QQuickScrollBar: fix overshootJ-P Nurmi2017-01-201-8/+11
| | | | | | | | | | | | | | | | | | | | | | | | ScrollBar should not always force a range of 0.0-1.0, but only when interacted with. This way, the scrollbar stops at bounds when dragged, but flicking the attached Flickable respects its boundsBehavior and overshoots if appropriate. The logic and test is adapted from QQuickScrollIndicator commit 8d093a. Change-Id: Ida720d4cc2bb1de06ba0c02dfb25be51dd3108fc Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add ScrollBar::policyJ-P Nurmi2017-01-203-1/+46
| | | | | | | | | | | | | | | | [ChangeLog][Controls][ScrollBar] Added a policy-property, which holds whether the scroll bar is shown always/never/as needed (default). Change-Id: Ibe25edaef04a7926bc12c59913efa7a3d43a5ccf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Move QQuickScrollBar(Attached)Private to a private headerJ-P Nurmi2017-01-204-75/+144
| | | | | | | | | | | | | | To make the private classes accessible for the upcoming ScrollView. Change-Id: Iae1d7f9b136a99ac5892418c52071a902e665476 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2017-01-204-21/+55
|\| | | | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickswitch.cpp src/quicktemplates2/qquickswitchdelegate.cpp tests/auto/controls/data/tst_dialogbuttonbox.qml tests/auto/controls/data/tst_toolbutton.qml Change-Id: I1da1d6de83c1d9ac854dfce1d6c9d6ba2c460404
| * QQuickSpinBox: enable/disable up/down buttons on range changesJ-P Nurmi2017-01-171-16/+32
| | | | | | | | | | | | | | | | | | | | Previously the buttons were enabled/disabled on range changes only if it caused the value to change. Make sure to update them also when the value does not change. Task-number: QTBUG-58217 Change-Id: Ibab5b8b7a58d5b88341c507a63b69f5a05fdfc1f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * Merge remote-tracking branch 'origin/5.8.0' into 5.8Liang Qi2017-01-143-5/+23
| |\ | | | | | | | | | Change-Id: Ibad627dfcd3389aeddfe08a10d13097c88f081a1
| | * Switch(Delegate): fix handle snappingv5.8.0J-P Nurmi2017-01-122-4/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When Switch is released, nextCheckState() gets called to set the appropriate check state depending on the handle position. If the check state does not change, it must force a position update to avoid that the handle is left somewhere in the middle. Task-number: QTBUG-57944 Change-Id: I872160dafaa7dbf676b026fcc6ba0d0507a91a05 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| | * Implement QQuickDialogButtonBox::standardButton(StandardButton)Konstantin Ritt2017-01-051-1/+11
| | | | | | | | | | | | | | | Change-Id: I25935a069127a48c00dae951bc77665be6a429e1 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | QQuickScrollIndicator: fix layouting on implicit size changesJ-P Nurmi2017-01-201-6/+24
| | | | | | | | | | | | | | | Change-Id: I440dbc1ef97486b6c9129802c2eda7f5d4ca0ebd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickScrollBar: fix layouting on implicit size changesJ-P Nurmi2017-01-201-6/+24
| | | | | | | | | | | | | | | Change-Id: I1816926e7f23324e6143db40d7352524737c0168 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | ScrollIndicator: fix memory leak when attached to a non-FlickableJ-P Nurmi2017-01-202-14/+11
| | | | | | | | | | | | | | | | | | | | | | | | We must pass the attachee QObject as a parent instead of passing a qobject_casted QQuickFlickable, which may be a null pointer. Change-Id: I2e229ff59363246fc4515b1c7cbf1850dd2b1d43 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | ScrollBar: fix memory leak when attached to a non-FlickableJ-P Nurmi2017-01-202-14/+11
| | | | | | | | | | | | | | | | | | | | | | | | We must pass the attachee QObject as a parent instead of passing a qobject_casted QQuickFlickable, which may be a null pointer. Change-Id: If3c785beac76ad989d12579e6d41062f4754ba2e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add ScrollBar::interactiveJ-P Nurmi2017-01-202-1/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][ScrollBar] Added an interactive-property. A non-interactive ScrollBar is visually and behaviorally similar to ScrollIndicator. This property is useful for switching between typical mouse- and touch-orientated UIs with interactive and non- interactive scroll bars, respectively. Change-Id: Ie98bfa0b5bba94a9751baf3c65f17b850b58fd1f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Cleanup QQuickTextAreaJ-P Nurmi2017-01-193-85/+78
| | | | | | | | | | | | | | | | | | | | | Same as the previous commit, but for QQuickTextArea. Change-Id: I8f0880ce51f81a403aa9752cb939716604e464ee Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Cleanup QQuickTextFieldJ-P Nurmi2017-01-193-60/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Organize QQuickTextFieldPrivate methods first, in the same order as they are declared in the header, and then the QQuickTextField methods, instead of mixing them randomly. Also, remove an empty destructor, and apply some cosmetic coding style tweaks, remove unused includes... Change-Id: I36c57c20419cca3aaf77f955a464c5ee0e4e3374 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Cleanup QQuickLabelJ-P Nurmi2017-01-193-19/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Organize QQuickLabelPrivate methods first, in the same order as they are declared in the header, and then the QQuickLabel methods, instead of mixing them randomly. Also, remove an empty destructor, declaration of a non-existing resizeBackground() method, apply some cosmetic coding style tweaks, remove an unused include... Change-Id: If9b956c857f9e5c0f8126aa3d398beab16031464 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Re-format constructorsJ-P Nurmi2017-01-1950-182/+177
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was a bit inconsistent before. Admittedly the colon at the end was the most commonly used style in the quicktemplates2 code base, but some had a line-break before the colon. This is now chosen as the one true coding style of QQC2. ;) It makes the initializer list aligned so that it stands out from the constructor body. Change-Id: I66835e088df90d7219af04915176006d2a934ddc Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Format initializer listsJ-P Nurmi2017-01-1936-171/+298
| | | | | | | | | | | | | | | | | | | | | | | | Initialize one member per line. Allow empty constructors with one initialized member on a single line. Change-Id: Ie115802561ebd19efd4dacda1fa868b64d279109 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QtQuickControls2: Use the newly-introduced qmlWarning instead of qmlInfoRobin Burchell2017-01-1311-24/+24
| | | | | | | | | | | | | | | | | | | | | | | | qmlInfo will shortly be returning info-level messages (as the name hints), rather than warning level messages. Change-Id: I94123464b12b30a4ba085cfb7b606bc26df9b76e Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | QQuickScrollBar::snapModeChanged(): add missing revisionJ-P Nurmi2017-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The property was added in 04502964. The property is revisioned, but the revision was forgotten from the notifier signal. Change-Id: I0dd93149c917e4f5af22ecd8500851c245c672e4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add attached StackView.visible propertyJ-P Nurmi2017-01-126-12/+79
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][StackView] Added attached StackView.visible property that can be used to control whether items below the top- most item are kept visible. Task-number: QTBUG-56801 Change-Id: Ieead0d476f254886cff5f8457bb5c5d23cb7de8a Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add SwipeView::orientationJ-P Nurmi2017-01-112-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][SwipeView] Added orientation property. Task-number: QTBUG-56031 Change-Id: I4ed47d659ef83cb48f63b703b681bdf1b8662fe8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Update the remaining copyright yearsJ-P Nurmi2017-01-118-8/+8
| | | | | | | | | | | | | | | | | | | | | Already done in 5.8 (00a0626) - these files are new in dev. Change-Id: I534c7512a69d4c24ed9ce8191325556beb0fb1f7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2017-01-11128-132/+132
|\| | | | | | | | | | | Change-Id: If797ac58344b20e8de4379343131c097247ba2f2
| * | Welcome to 2017J-P Nurmi2017-01-09128-128/+128
| | | | | | | | | | | | | | | Change-Id: If68cff4efacc7dc5719c8b8e61937e85e9076870 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | QQuickXxxPrivate::deleteDelegate(): don't store null pointersJ-P Nurmi2017-01-064-4/+4
| | | | | | | | | | | | | | | | | | | | | Avoid unnecessarily allocating extra data and/or pendingDeletions. Change-Id: I41d68af513c078a48bbe4f026bfe25e9c45ba3a8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add ScrollBar::snapModeJ-P Nurmi2017-01-102-4/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][ScrollBar] Added snapMode property incremental or discrete scrolling. Task-number: QTBUG-56569 Change-Id: Id0d463b85063a62b7df6307af8fe8b203155a5de Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Revise QScrollBar internalsJ-P Nurmi2017-01-102-10/+48
| | | | | | | | | | | | | | | | | | | | | | | | Move the press/move/release/ungrab logic from mouse event handlers to QQuickScrollBarPrivate methods that can be re-used for touch events. Change-Id: Id0b0f225a4f86a9d9cc8b77c9253001dd6c40bf4 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickTabBar: fix implicit size calculationJ-P Nurmi2017-01-102-24/+168
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before, the implicit size of TabBar was calculated based on the content size of the ListView that TabBar uses internally. The problem was that ListView calculates the content size based on the explicit size of the items. There was a circular dependency, because TabBar resized the tabs to the size of the view. To avoid the circular dependency, TabBar now calculates the content size based on the total implicit size of the tabs. As before, explicit size is respected for tabs that have it set. [ChangeLog][Controls][TabBar] Added contentWidth and contentHeight properties that are automatically calculated based on the total size of the tab items, but can be manually overridden if desired. This fixes an issue that TabBar was not able to reliably calculate an implicit size, and could in certain scenarios enter an infinite loop due to a circular dependency between the items' sizes and the tabbar's size. Task-number: QTBUG-57858 Change-Id: Ie303cbc54247e87b0affc6bf32c7bf99acea4571 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.8' into devJ-P Nurmi2017-01-053-3/+8
|\| | | | | | | | | | | | | | | | | | | | | | | Conflicts: .qmake.conf examples/quickcontrols2/quickcontrols2.pro Change-Id: If2f5e40487ba6515ba322f92380573727bdd6bc0
| * | QQuickDial: account for when the wheel event is invertedJ-P Nurmi2017-01-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | On macOS, the vertical scrolling with the wheel may be inverted, so we need to account for this when getting the y angle. Change-Id: Ia0f59beba905beff7b0cf12271a654c721bd5179 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
| * | Account for when the wheel event is invertedAndy Shaw2017-01-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | On macOS, the vertical scrolling with the wheel may be inverted, so we need to account for this when getting the y angle. Change-Id: Ie66b6ae68d2c733aaae5a837fc6f1a758a66cfb9 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | QQuickMenu: fix Repeater supportJ-P Nurmi2017-01-021-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickMenu had itemChildAdded() copied from QQuickContainer, but it did not actually install an item change listener on the content item so itemChildAdded() got never called. Change-Id: Idfe558c7055b9a3df124b1f009941c423ecef4bb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickDial: handle touch eventsJ-P Nurmi2017-01-032-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In comparison to handling synthesized mouse events, handling touch events has the advantage that it gives multi-touch support. That is, it is possible to move multiple dials at the same time, each handling its own touch point. Change-Id: Icabd971147f291fa4df00c6215c847d7976fda5f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Revise QQuickDial internalsJ-P Nurmi2017-01-031-36/+64
| | | | | | | | | | | | | | | | | | | | | | | | Move the press/move/release/ungrab logic from mouse event handlers to QQuickDialPrivate methods that can be re-used for touch events. Change-Id: I6e4594a3b532d6049117a37b0880e16cc22cb6cf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickDial: operate on floating point coordinatesJ-P Nurmi2017-01-031-14/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | Store the press point as QPointF, and pass also QPointF to QQuickDialPrivate::positionAt(). This makes it easier to add touch event handling later. Change-Id: I256cc5039a7f52a0a04dffa800763898f321b100 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickRangeSlider: handle touch eventsJ-P Nurmi2017-01-032-25/+110
| | | | | | | | | | | | | | | | | | | | | | | | This makes it possible to interact with both handles and multiple sliders at the same time. Change-Id: Iba47b8ec31619b3dbec09dbc9ea176735f984e8b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Revise QQuickRangeSlider internalsJ-P Nurmi2017-01-031-95/+122
| | | | | | | | | | | | | | | | | | | | | | | | Move the press/move/release/ungrab logic from mouse event handlers to QQuickRangeSliderPrivate methods that can be re-used for touch events. Change-Id: I54a3ab8083b778e84759b14fbe74dd487bd8cf2e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickRangeSlider: operate on floating point coordinatesJ-P Nurmi2017-01-031-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | Store the press point as QPointF, and pass also QPointF to positionAt(). This makes it easier to add touch event handling later. Change-Id: I9dfeb559cd623c6807cadfbf0e1ad00f62732884 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickSlider: handle touch eventsJ-P Nurmi2017-01-032-1/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In comparison to handling synthesized mouse events, handling touch events has the advantage that it gives multi-touch support. That is, it is possible to move multiple sliders at the same time, each handling its own touch point. Change-Id: I713307b0e6b5ee777496fc9ba68a5180d13a6aca Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Revise QQuickSlider internalsJ-P Nurmi2017-01-031-30/+59
| | | | | | | | | | | | | | | | | | | | | | | | Move the press/move/release/ungrab logic from mouse event handlers to QQuickSliderPrivate methods that can be re-used for touch events. Change-Id: Icfe4afc2974f07af17f2245723683233945026bd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickSlider: operate on floating point coordinatesJ-P Nurmi2017-01-031-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | Store the press point as QPointF, and pass also QPointF to QQuickSliderPrivate::positionAt(). This makes it easier to add touch event handling later. Change-Id: I4555350002ff35cafe4d3260ba702b662286d1bd Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add DelayButtonJ-P Nurmi2017-01-025-0/+373
| | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][DelayButton] Added DelayButton. Change-Id: I94820dfb41ba9b90f0a29cda01ac476b54cf3de8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Revise QQuickAbstractButton internalsJ-P Nurmi2017-01-022-47/+74
| | | | | | | | | | | | | | | | | | | | | | | | Move the logic of press/move/release/cancel event handlers into methods in the private class, that can be reused or overridden from subclasses. Change-Id: Ie1f73e07c3389955c1d624e5b5a7e6bd240d0490 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | SwipeDelegate: rename swipe.rebound to swipe.transitionJ-P Nurmi2016-12-212-26/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The "rebound" name originates from Flickable::rebound, but for swipe delegate the transition is not only applied on release, but also when calling swipe.open() or swipe.close(). Therefore the "rebound" name feels a bit off in this context. Furthermore, this patch adds the missing docs and a changelog entry. [ChangeLog][Controls][SwipeDelegate] Added a swipe.transition property that holds the transition that is applied when a swipe is released, or swipe.open() or swipe.close() is called. Change-Id: Ic38ec850c64dd21b8d9deb08609172c6cb0f6d71 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Add QQuickAbstractButton::buttonChange()J-P Nurmi2016-12-2112-44/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Merge the various virtuals to a single method that takes an enum value indicating the type of the change. This way we don't need to keep adding more and more virtuals, but can just extend the enum. The next in line is ButtonPressedChanged for the upcoming DelayButton. Change-Id: I40ebf170470790730217aba48c80daff8118dfba Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>