aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2
Commit message (Collapse)AuthorAgeFilesLines
* QQuickScrollBar: handle touch eventsJ-P Nurmi2017-04-103-0/+55
| | | | | Change-Id: I0521eb36ee01abc72edc869d92910e823f00a2f2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickTabBar: add missing Q_REVISION() for contentWidth/HeightChanged()J-P Nurmi2017-04-061-2/+2
| | | | | | | Missed in 24acfcaf. Change-Id: I11c87a21d7d29befec5784eff1961a6feb5ea24b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* RangeSlider: react immediately when using a mouseJ-P Nurmi2017-04-051-3/+3
| | | | | | | | | | | | The initial drag threshold is a necessary evil on touch to avoid conflicting with flickables, but leads to bad experience (QTBUG-47081) when using a mouse. Now that we have separate mouse and touch handling, we can apply immediate moves when using a mouse, but keep the old behavior on touch. Task-number: QTBUG-59920 Change-Id: Ida36eed1f59a30173e3a2c53b55e044a87c98d8b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Dial: react immediately when using a mouseJ-P Nurmi2017-04-051-3/+3
| | | | | | | | | | | | The initial drag threshold is a necessary evil on touch to avoid conflicting with flickables, but leads to bad experience (QTBUG-47081) when using a mouse. Now that we have separate mouse and touch handling, we can apply immediate moves when using a mouse, but keep the old behavior on touch. Task-number: QTBUG-59920 Change-Id: I097cbdaed4933c0d907097b75f15ba16dcf615b1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Slider: react immediately when using a mouseJ-P Nurmi2017-04-051-3/+3
| | | | | | | | | | | | | | | | | | | The initial drag threshold is a necessary evil on touch to avoid conflicting with flickables, but leads to bad experience (QTBUG-47081) when using a mouse. Now that we have separate mouse and touch handling, we can apply immediate moves when using a mouse, but keep the old behavior on touch. Changing the behavior is simple, but auto tests need quite many tweaks so RangeSlider and Dial will be done separate follow up changes. [ChangeLog][Important Behavior Changes] Sliders and Dials now react immediately when using a mouse. Now the initial drag threshold applies only on touch, to avoid conflicting with flickables. Task-number: QTBUG-59920 Change-Id: Ifc1e6ed74c7894c3c854c975dff5238278827590 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Set explicit cursors on all interactive controlsJ-P Nurmi2017-04-0511-4/+79
| | | | | | | | | | | | For example, if you have a floating button on top of a text editor, hovering the button must change the cursor from the editor's ibeam cursor to an arrow cursor. This applies to all interactive controls that call setAcceptedMouseButtons(). If a control blocks mouse events, it should not use some random cursor from another control underneath. Task-number: QTBUG-59629 Change-Id: I8a6ae306bbc76a9b22377361cb19cf9c3a872d31 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* StackView: resolve relative URLs to the callerJ-P Nurmi2017-04-042-5/+15
| | | | | | Task-number: QTBUG-59309 Change-Id: I3c19d55431dd4831c4510acb5ef0e9fffa8f478f Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickScrollBar: set implicit Cursor as Qt::ArrowCursorKarol Polak2017-04-041-0/+3
| | | | | | | | Scrollbar over TextArea had Qt::IBeamCursor, although the textarea would not be activated when clicked. Task-number: QTBUG-59629 Change-Id: Ie96ba03360fcfb5872f5bb6345e168c987978aca Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Doc: add missing Popup::aboutToShow() and aboutToHide() signalsJ-P Nurmi2017-04-031-2/+18
| | | | | | | | | The signals have been there since the first release. The docs were just missing. Change-Id: I5f5340859136b8924832da4ddb2a18d4a812cca3 Task-numer: QTBUG-59400 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: mention that standardButtons is ordered according to platformMitch Curtis2017-04-032-0/+4
| | | | | | | | | This was mentioned in the detailed description of DialogButtonBox, but could easily be missed by users looking at Dialog's standardButtons documentation, because that doesn't mention DialogButtonBox. Change-Id: If3229589e24992d3071388a044246906e739a918 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Doc: add missing \since to SwipeView::orientationJ-P Nurmi2017-03-291-0/+1
| | | | | | | The property was added in 4a97498. Change-Id: I0f21f499e74450780db85d5c2c92aa4a0367c3b5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: fix linking error in qquickdial.cppJ-P Nurmi2017-03-281-1/+1
| | | | | | | | | | | Dial::valueAt() does not exist. qquickdial.cpp:515: warning: Can't link to 'valueAt()' The broken see also link was accidentally copied from Slider. Change-Id: I781b7d0bcf15d3b34dd2b8784a273d5cd7218469 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Pass a parent to QQmlContextsMitch Curtis2017-03-243-3/+3
| | | | | | | | To avoid crashes in the future. Task-number: QTBUG-59532 Change-Id: Ie81f95939fc5655567f9d987cf040daf3a32df43 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* StackView: provide better warnings and errorsJ-P Nurmi2017-03-245-22/+57
| | | | | | | | | Check for valid URLs and test object types. Throw warnings when appropriate instead of crashing later. Task-number: QTBUG-59634 Change-Id: Ia269dc8afd31b618f1ff7aec94d684029cb78244 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Add QQuickStackViewPrivate::warn() helperJ-P Nurmi2017-03-243-6/+23
| | | | | | | | | Store the current operation name internally to allow throwing informative warnings when component creation fails. Task-number: QTBUG-59634 Change-Id: I7506c5eb4be35878c8abd73a637357e0d8ae08a2 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* StackView: improve the component creation errorsJ-P Nurmi2017-03-241-2/+2
| | | | | | | | | | Previously it just dumped the error from the component, without telling that it was anyhow related to StackView. Now it uses the standard QML warning syntax and includes the name of the operation (push/replace). Task-number: QTBUG-59634 Change-Id: Iea8df51f587c243ca065627e59bb0e5b5b526664 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickSwipePrivate: parent delegate context to controlMitch Curtis2017-03-241-1/+1
| | | | | | | | | This fixes a crash in QQuickSwipeDelegatePriavte's destructor when using QML debugging. Task-number: QTBUG-59532 Change-Id: I55f97039eb723652fec24e4c3a8ce5d1a8fb6c41 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Doc: fix Control::localeJ-P Nurmi2017-03-221-4/+4
| | | | | | | | | The documentation body was clearly copied from Control::font. Locale doesn't have mutable properties. Instead, one has to create a locale using Qt.locale(). Change the wording to match that. Change-Id: I637b00808c29c16ee768820be327e3c780cfee64 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Doc: add missing docs for ApplicationWindow::localeJ-P Nurmi2017-03-221-0/+14
| | | | | Change-Id: I799eb73a05842b1990b5615fd01ad5204c554f20 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* QQuickComboBox: don't emit highlightedIndexChanged() during destructionJ-P Nurmi2017-03-211-3/+1
| | | | | | | | | | | | | If QQuickComboBox was destroyed while its popup was open, it emitted highlightedIndexChanged() during the destruction due to the popup's visibility change. Use setPopup(nullptr) to destroy the popup in a controlled manner, that is, disconnecting the relevant signals first. This way deleting the popup doesn't have weird side-effects during the destruction of QQuickComboBox. Task-number: QTBUG-57650 Change-Id: I1c55707be68a24e115276ffb6dfa1c89051a45ea Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* Build fix for -no-feature-validatorPaul Olav Tvete2017-03-101-0/+4
| | | | | Change-Id: I869b25ff2c9efe1c21def0baf4de0606c7c9baa2 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* Merge remote-tracking branch 'origin/5.8' into 5.9Liang Qi2017-03-104-6/+17
|\ | | | | | | | | | | | | | | | | Conflicts: src/imports/controls/universal/qtquickcontrols2universalstyleplugin.cpp src/quicktemplates2/qquicktextarea.cpp src/quicktemplates2/qquicktextfield.cpp Change-Id: Ie80a2d3bcbb961a38e3dffa247547d3d860c231a
| * 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>
* | Build fix for -no-feature-imPaul Olav Tvete2017-03-082-0/+6
| | | | | | | | | | Change-Id: I5cd37b78c18847c9535584d0452c8214873db5f2 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Fix QQuickStackViewPrivate::startTransition()J-P Nurmi2017-02-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | This seems like a mistake that slipped in when popTransition(), pushTransition() and replaceTransition() were merged in acecb06. Only immediate push/pop/replace operations were affected, where the animations were force-completed by hand. In this scenario it was always passing the pop transitions for completion, even if the current operation was push or replace. Change-Id: I6a940953feaefe6643ddae26c070856a66bf6c10 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Port from QT_NO_ACCESSIBILITY to QT_CONFIG(accessibility)J-P Nurmi2017-02-2481-124/+124
| | | | | | | | | | Change-Id: I03deebff661746d49e537af5b1c8899b938efb0d Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Port from QT_NO_CURSOR to QT_CONFIG(cursor)J-P Nurmi2017-02-243-3/+3
| | | | | | | | | | Change-Id: If7dd96ed25b1183586b903503b160fdeaef1ccea Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | ApplicationWindow: fix typoJ-P Nurmi2017-02-241-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was meant to be called contentData, as the getter is called, but the part in the Q_PROPERTY macro that specifies the name of the property contained "data" in place of "contentData". [ChangeLog][Controls][ApplicationWindow] The data-property has been renamed to contentData, as it was documented. Notice that a data-property still exists in QML Window, but is no longer overshadowed in ApplicationWindow. Task-number: QTBUG-58932 Change-Id: I5251d42f5ae5ef6d04d87c3f8d20d7adbefe1eb5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | QQuickStackView: fix pop/replace exit leakJ-P Nurmi2017-02-243-6/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | QQuickStackView did not keep track of the element that was exiting the view during a pop/replace exit transition, but it was expecting viewItemTransitionFinished() to be called and cleaned up the element there. If a pop/replace exit transition was running at the destruction time, QQuickStackView did not clean up the element at all (because it had been already removed from the internal stack of elements) and thus the transition was left running. Task-number: QTBUG-59034 Change-Id: I3cd7c761fab79574b9a7cc849788f36765def45b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Prevent StackView filtering of UngrabMouse eventMichael Dippold2017-02-231-0/+2
| | | | | | | | | | | | | | | | | | | | | | Currently the StackView is filtering the UngrabMouse event during transitions. If a MouseArea is still in the pressed state during this time it will forever be in the pressed state as the ungrab event is filtered. Task-number: QTBUG-59098 Change-Id: I7effdad6a36b64336b4770a1dca61ba47998b787 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | QQuickPopup: ensure that the cursor is correct when overlapping itemsMitch Curtis2017-02-201-0/+3
| | | | | | | | | | | | | | | | | | | | When a popup is over an item that has a different cursor (such as a TextField), the cursor incorrectly took on that shape, because QQuickPopup didn’t have an explicitly set cursor. Task-number: QTBUG-58810 Change-Id: I4df6dd725cac027b2c30fe69ad81d9cd7e622c15 Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Cancel incubation of replaced/destroyed delegatesJ-P Nurmi2017-02-1016-96/+23
| | | | | | | | | | | | | | | | Resolves the "Object destroyed during incubation" issues. Task-number: QTBUG-50992 Change-Id: Ie58c958dafbf915da7494dac25351be98106c6ea Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Provide more context for the configurable feature descriptionsJ-P Nurmi2017-02-081-1/+1
| | | | | | | | | | Change-Id: I962d8150583cc1637cbb8d6fb7399b8f408b186e Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Fix -no-feature-shortcut buildJ-P Nurmi2017-02-071-4/+6
| | | | | | | | | | Change-Id: If567b99889b40528150834c3319cdfec8e5b229e Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Add "hover support" configure featureJ-P Nurmi2017-02-0615-6/+151
| | | | | | | | | | | | | | | | | | | | ./configure -no-feature-quicktemplates2-hover [...] Qt Quick Templates 2: Hover support .......................... no Change-Id: I0509a1a9ac3ffe2cbfe4f2016ce0345708860b84 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Doc: move Control::contentItem snippet to match backgroundMitch Curtis2017-02-031-9/+9
| | | | | | | | | | Change-Id: I46ff0f20bbdde131d4206a970ce60c76d491f24b Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
* | Tumbler requires ListView and PathViewJ-P Nurmi2017-02-021-3/+8
| | | | | | | | | | Change-Id: Ieb40f536cc5d68fdf13075df2c9b3e09d5077de3 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | Merge dev into 5.9Oswald Buddenhagen2017-02-019-18/+743
|\ \ | | | | | | | | | Change-Id: I816cc71d81ee6435ff9a58aff2d538698f9f8072
| * | Make TextArea work out of the box inside ScrollViewJ-P Nurmi2017-01-271-5/+12
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][TextArea] TextArea has been made to work inside ScrollView, providing necessary scroll bars out of the box. Change-Id: I212ee4c60912c961cbb9683540848141dcba29a5 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Add ScrollViewJ-P Nurmi2017-01-274-2/+692
| | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Controls][ScrollView] Added ScrollView. Change-Id: I5d68799f0246e04b519bf6a0ec7bc7e5625f50e7 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
| * | QQuickScrollBarAttached: fix change listener removalJ-P Nurmi2017-01-272-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before bb2a6c6 QQuickScrollBarAttached called flickable->updateOrAddGeometryChangeListener(Size) when attaching to a Flickable, and flickable->removeItemChangeListener(Geometry) when detaching from a Flickable. In bb2a6c6 the latter was changed to flickable->updateOrRemoveGeometryChangeListener(listener, Size) to make the attach and detach operations nice and symmetric. Now the problem is that updateOrRemoveGeometryChangeListener(Size) doesn't actually remove the listener, but just resets the geometry types it listens to. Thus, upon destruction of QQuickScrollBarAttached, it leaves behind a dangling pointer in Flickable's list of change listeners. We can call either of these to fix the problem: flickable->updateOrRemoveGeometryChangeListener(Nothing) flickable->removeItemChangeListener(Geometry) The former does essentially the latter with some extra overhead, so we'll just revert back to how it was before bb2a6c6. I added a warning note, also to ScrollIndicator since it's using the same approach, to avoid the same pitfall in the future. Change-Id: Ibdce15b22edf549491426d769b74b18daf0500ca Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Keep track whether ScrollBar::interactive is explicitly setJ-P Nurmi2017-01-263-8/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The upcoming ScrollView toggles between interactive and non-interactive scroll bars depending on whether it is interacted via touch or a mouse device. This allows ScrollView to check whether the user or style explicitly requested a specific mode and respect it. Change-Id: I69d21652b3a91cb9db0f76ba52adc35ccd612ab1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
| * | Merge remote-tracking branch 'origin/5.8' into devLiang Qi2017-01-251-2/+6
| |\| | | | | | | | | | Change-Id: I83cbec9264a8bc620badf210eee53b57f2b93ff0
| | * 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 build with -no-feature-wheeleventJ-P Nurmi2017-01-3116-0/+32
| | | | | | | | | | | | | | | Change-Id: I6f40794ae1977d1f23916bff6d0c58d44440fbe5 Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
* | | Default QQuickRangeSlider::live to trueJ-P Nurmi2017-01-271-18/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Important Behavior Changes] On a popular demand, RangeSlider has been changed to report live value updates. This can be disabled by setting RangeSlider::live to false. Change-Id: I18dee0df6f7a97d11a1994e779e70ac5f08b6dbe Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Default QQuickDial::live to trueJ-P Nurmi2017-01-271-13/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | [ChangeLog][Important Behavior Changes] On a popular demand, Dial has been changed to report live value updates. This can be disabled by setting Dial::live to false. Change-Id: Ie591ec33f56482b825250f64abf55118afec3e6b Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
* | | Default QQuickSlider::live to trueJ-P Nurmi2017-01-271-16/+5
|/ / | | | | | | | | | | | | | | | | [ChangeLog][Important Behavior Changes] On a popular demand, Slider has been changed to report live value updates. This can be disabled by setting Slider::live to false. Change-Id: I48c6a92eb794d2846cfff96d8784c53c22843573 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>