aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2
Commit message (Collapse)AuthorAgeFilesLines
* Material: use proper layout of the buttons in the DialogButtonBoxNikita Krupenko2017-03-101-1/+6
| | | | | | | | | | Instead of using system button layout, use layout from macOS, which better fits the Material Design guidelines and also used in the Android QPA plugin. Task-number: QTBUG-58060 Change-Id: I06381219b5f1ad0a32742487fd314a8017d82dfc Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Editors: fix mouse cursorJ-P Nurmi2017-02-082-4/+8
| | | | | | | | Read-only editors should not use the IBeam cursor, but switch to a plain arrow cursor. Change-Id: If579571ceff086af6b8259ade769b5efb27565db Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Fix a crash with focus handling when destructing QQAppWindowJan Arve Saether2017-02-071-0/+2
| | | | | | | | | | | | | | | | | | | | Because QQuickApplicationWindow connected SIGNAL(activeFocusItemChanged()) to SLOT(_q_updateActiveFocus())); it would enter _q_updateActiveFocus() from the dtor of QQuickWindow (because dtor of QQuickWindow would emit activeFocusItemChanged()). At that point the QQuickApplicationWindow object for the member function _q_updateActiveFocus() was already destroyed, so we would crash. Instead, make sure we clear the focus as early as possible, and then disconnect in case activeFocusItemChanged() is emitted after QQuickApplicationWindow is destroyed. Task-number: QTBUG-57846 Change-Id: I4b1999e647b970394436a2d462b7f352f1c8a811 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* QQuickPopup: allow window change after component completionJ-P Nurmi2017-01-251-2/+7
| | | | | | | | | | | When visible has been set true, don't attempt to start the enter transition from componentComplete(), but wait until the popup is associated with a window. This makes it possible to share a single QQuickView instance for all data rows in tst_snippets. Task-number: QTBUG-58196 Change-Id: I9204e0d2e6468a21ee36f313daedc43d2e919ec6 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickPopup: allow QQuickWindow as a parentJ-P Nurmi2017-01-241-2/+6
| | | | | | | | Previously it would unintuitively complain that "cannot find any window to open popup in" if a window was passed as a parent. Change-Id: I984d4c941afae12733a9c1c2f0441da867298aa1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* 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>
* 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>
* | 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>
* | 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>
* | StackView: don’t push duplicate itemsMitch Curtis2016-12-061-0/+11
| | | | | | | | | | | | | | | | It doesn’t make sense to do this. Task-number: QTBUG-57266 Change-Id: I23f740356f2727a59aa0a68cb57d2c44edfb6046 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-12-011-0/+15
|\ \ | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/controls/data/tst_swipedelegate.qml Change-Id: I15bd0366f1ad0ce35f1dce6d790da6dd5f0221f9
| * | SwipeDelegate: fix animations when releasing from a drag5.7Mitch Curtis2016-11-301-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 9812a9c changed the order in which the pressed and position state is set. Before, when releasing after swiping, it would be: set pressed to false => set position After 9812a9c, it became: set position => set pressed to false The original order is necessary to ensure that animations can rely on being enabled *before* position changes, as their enabled expression typically looks something like this: enabled: !control.down This patch duplicates the contents of QQuickAbstractButton::mouseUngrabEvent() for now, with a TODO comment to ensure that it's moved into a private helper that we can call later on. Task-number: QTBUG-57350 Change-Id: I31af7a665fb2d0e37548df31560ed7bbb0c3cadb Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Dial: add missing wheel handlingJ-P Nurmi2016-11-292-0/+16
| |/ |/| | | | | | | | | | | | | [ChangeLog][Controls][Dial] Added support for wheel handling when wheelEnabled is set to true. Change-Id: If0bc2f0ea9d7cde7726739cdfdbd795c908981f0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge remote-tracking branch 'origin/5.7' into 5.8Liang Qi2016-11-282-5/+13
|\| | | | | | | | | | | | | | | Conflicts: src/imports/controls/doc/src/qtquickcontrols2-differences.qdoc sync.profile Change-Id: I554c40516030075142f9af1dd5c66fdca2b78b9a
| * Merge remote-tracking branch 'origin/5.7.1' into 5.7Liang Qi2016-11-242-5/+13
| |\ | | | | | | | | | Change-Id: I74c00c0b5c36cc96db8bdbd7c1c2a77d6e37d6e7
| | * Fix popups to close on click outsidev5.7.1J-P Nurmi2016-10-252-5/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When a popup closes itself on press outside, it accepts the press event so that it doesn't propagate to other popups or the content below. We must make sure that such closing popup does not become the mouse grabber, because it doesn't make sense to route the subsequent mouse events to the popup that was just closed. Change-Id: I80c6e26a1d94aa1526a61862f00af2fd0778aa82 Task-number: QTBUG-56697 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | SwipeDelegate: fix swipes that begin over a child item of a delegateMitch Curtis2016-11-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the mouse was pressed over a child item of the delegate, the event's position will be for that item, rather than the entire control. To fix this, we need to set the correct pressPoint. To avoid duplicating QQuickAbstractButton::mousePressEvent()'s code, we simply set the correct pressPoint after calling it in QQuickSwipeDelegatePrivate::handleMousePressEvent(). Task-number: QTBUG-57271 Change-Id: I7204d6176c755512eeeb0b1a57a920fbab40392c Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-11-235-81/+229
|\| | | | | | | | | | | | | | | | | | | | Conflicts: src/quicktemplates2/qquickswipedelegate_p.h Change-Id: I5446503c1e4f21cb37f4fffeb3453d1c84b54b30
| * | SwipeDelegate: don't emit clicked when released outsideMitch Curtis2016-11-235-77/+225
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there are no delegates and hence the mouse hasn't been grabbed, we should clear the pressed state when the mouse is dragged outside the control. We can do so by falling back to the event handling of the base class (QQuickItemDelegate) when we have no delegates. This also ensures that the canceled() signal is emitted. A similar thing is done for controls with delegates, except that only the vertical position of the mouse is checked, as we still want to initiate swipes horizontally. Change-Id: I7738f5b9e8e8b6ce4a733008fa4ff73596e854ea Task-number: QTBUG-56312 Task-number: QTBUG-57285 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | SwipeDelegate: fix broken swiping after calling SwipeDelegate.close()Mitch Curtis2016-11-221-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Reset the internal state when close() is called to ensure that it's consistent. Task-number: QTBUG-57243 Change-Id: Id52724e0eb296c3f8a4fc0a0587a04558b1d1ab6 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | AbstractButton: fix press-and-hold for checkable buttonsJ-P Nurmi2016-11-221-1/+1
| | | | | | | | | | | | | | | | | | | | | Don't toggle the checked state on release after press-and-hold. Change-Id: I06b6a0e86dc02c171eef10f3c0d564ff605796f0 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Whitespace fixesJ-P Nurmi2016-11-202-2/+0
| | | | | | | | | | | | | | | Change-Id: I4eab43944ec03b79d713db1c6756e76cbfa38b30 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | SwipeDelegate: comment out the revision of swipe.completed()J-P Nurmi2016-11-181-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The QML engine cannot handle revisioned grouped or attached properties: import QtQuick.Controls 2.1 SwipeDelegate { swipe.onCompleted: { } } => ".onCompleted" is not available due to component versioning." Change-Id: I5bc944aeac7c7f16f482208a523110ccaa42241b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-11-176-19/+20
|\| | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/controls/data/tst_button.qml Change-Id: I5c97b3c1944e52dba44fd3c7d6d9a255c5e08cf7
| * | Doc: a follow-up commit to 'rephase the "logical position" properties'J-P Nurmi2016-11-171-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | We're talking about two quantities, each of which is expressed as a fraction; they are expressed as fractions. Change-Id: I498864376f25d7f432c262d0f0dca27c5878d2bc Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
| * | QQuickSpinBox: fix auto-repeatJ-P Nurmi2016-11-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't cancel auto-repeat on the tiniest mouse/touch move, but keep repeating until moved outside the button. The test has been written so that the exact amount of repeats does not matter, as long as it repeats. This is because waits are not reliable in a busy CI environment. Sometimes waits can take longer, timer events get queued, and we get an unexpected burst of repeats. Change-Id: Ibdcdd9e684bbcda032abfabb8a33ed892c7778df Task-number: QTBUG-57085 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | QQuickAbstractButton: fix auto-repeatJ-P Nurmi2016-11-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't cancel auto-repeat on the tiniest mouse/touch move, but keep repeating until moved outside the button. The test has been changed so that the exact amount of repeats does not matter, as long as it repeats. This is because waits are not reliable in a busy CI environment. Sometimes waits can take longer, timer events get queued, and we get an unexpected burst of repeats. Change-Id: Ic473e04c4d15a0826c8adf460c69507e64590d99 Task-number: QTBUG-57085 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Doc: rephase the "logical position" propertiesJ-P Nurmi2016-11-164-17/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous phrasing was poor and somewhat confusing. The logical position is expressed as a fraction of the value, in the range 0-1. Change-Id: I6c2a4cbb1385af69392d214dd02224ec876131e5 Task-number: QTBUG-57069 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Restore AbstractButton::checkableJ-P Nurmi2016-11-166-49/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In 7a8f055, we hid the checkable property from QQuickAbstractButton and exposed it only in QQuickButton and QQuickMenuItem. The reasoning was that QQuickCheckBox, QQuickRadioButton, QQuickSwitch and their delegate counterparts are inherently checkable, so having the checkable property available in QML didn't seem to make sense. While this still holds true, there are other factors to take into consideration. AbstractButton is meant to be a generic base class for all types of buttons, but the lack of a checkable property makes it unusable as a base class for custom QML-based checkable buttons. If we want to a hide the checkable property from CheckBox, RadioButton, and Switch to avoid having it popup in the auto-completion list, we can probably do it in a less disruptive way via tooling. [ChangeLog][Controls][AbstractButton] The checkable property has been made accessible from QML. Previously it was only exposed for Button and MenuItem, but it is now available for any AbstractButton to make it possible to create custom QML-based checkable buttons. Task-number: QTBUG-51554 Change-Id: I19e29fc87cd15811c43c9b9ebb29701d66cde72f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-11-151-0/+4
|\| | | | | | | | | | | Change-Id: I4a3971034d8e6daf0285c4bc9e5612b5e6cdabf1
| * | Doc: Popup.CloseOnRelease* policies only work with modal popupsMitch Curtis2016-11-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Non-modal popups don't accept the press event because they don't want to block the press. Change-Id: If4e39fe655401e55949e73c40e93626b84d4878a Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Dialog: emit rejected() when closed interactivelyMitch Curtis2016-11-101-2/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is what QDialog does, for example. This allows applications to perform some actions that must be done when the dialog is closed. For example, clearing any unsaved changes in a shortcut editor dialog. [ChangeLog][Controls][Dialog] Dialog now emits rejected() when closed interactively. Task-number: QTBUG-56928 Change-Id: Iad4e2fe984323d0b9fdfd17ee3746043b5eaf849 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | | Prepare for a change to itemGeometryChangedErik Verbruggen2016-11-092-0/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | In an upcoming patch for qtdeclarative, the rectangle passed to itemGeometryChanged will be the old geometry instead of the difference between the old an the new geometry. Change-Id: If096d4986900fea6ada10b18088de12490c9171b Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* | | Merge remote-tracking branch 'origin/5.7' into 5.8J-P Nurmi2016-11-038-76/+232
|\| | | | | | | | | | | | | | | | | | | | Conflicts: tests/auto/accessibility/tst_accessibility.cpp Change-Id: I8c3ccb301730ecdc0acdcb75de607cdd4f753e15
| * | ScrollIndicator: fix documentation review findingsMitch Curtis2016-11-031-3/+40
| | | | | | | | | | | | | | | | | | Change-Id: Ia742b82e9aaacb35cdde5087ccb1deb977af51ed Task-number: QTBUG-55904 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | ScrollBar: Fix documentation review findingsMitch Curtis2016-11-031-2/+49
| | | | | | | | | | | | | | | | | | Change-Id: I83703bf0188aa52b873f717b3470ceba4a4d670e Task-number: QTBUG-55904 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
| * | QQuickComboBox: key searchJ-P Nurmi2016-11-031-39/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][ComboBox] Added missing keyboard search functionality. Change-Id: If132f2ca0bca8cdb09de03f584c07eec6fb384f6 Task-number: QTBUG-56884 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | QQuickComboBox: handle Home and End keysJ-P Nurmi2016-11-031-31/+52
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][ComboBox] Added handling for Home and End keys. Change-Id: I79ec0644f169503ab38a8e2bee18621a1f671478 Task-number: QTBUG-56884 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Popups: use "Dialog" accessible roleJ-P Nurmi2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | LayeredPane is described as "an object that can contain layered children, e.g. in a stack". There is no plain "Popup" accessible role. The closest match is "Dialog". Change-Id: I3fca381a953231ff3339ce05e5a00c82f47ba6e7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | SwipeView: fix accessibility supportJ-P Nurmi2016-11-022-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | Don't specify the role in QML, because using the Accessible attached property creates a hard dependency to the accessibility feature (the QML code won't run when QT_NO_ACCESSIBILITY is defined). Change-Id: Ie540c915547fae94705873292368652e3608c9e7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | StackView: provide accessible roleJ-P Nurmi2016-11-022-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | QAccessible::LayeredPane: An object that can contain layered children, e.g. in a stack. The same accessible role is used by QStackedWidget. Change-Id: Ia1f96afd5e084958538356e3d9033a3d88cf03c3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Doc: add more verbose brief description for DialogJ-P Nurmi2016-11-021-1/+1
| | | | | | | | | | | | | | | | | | Task-number: QTBUG-55904 Change-Id: Idd505e2d953cef237a8b7e90d8db22e746dedea8 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | QQuickDialog: finish accessibility supportJ-P Nurmi2016-11-022-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | 2f1e983 added support for controlling accessible properties via QQuickPopup, so now QQuickDialog can set its title as the accessible name the same way QQuickPage does. Change-Id: Iead1e65a10ec16fbbae8383edb6fa3a77a83d4fe Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>