| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
This seems to be one of the reasons why tst_QQuickMenuBar has had
troubles in a busy CI environment.
Change-Id: Ifa20c309eac86e8f47ba0a8c3da76a58f00465cb
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\
| |
| |
| | |
Change-Id: Idb1895dae2870dbed860ba3106fe52b01d733504
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When no content item is explicitly assigned, container type of controls
(Page, Pane, Popup...) create a default content item on demand. Notice
that the content item is created from within the contentItem() getter,
so it must not emit contentItemChanged() to avoid binding loops.
QQuickControl::setContentItem_helper() was introduced in 1eaebd0 to
mitigate basically the same problem with QQuickScrollView, which has
its own special lazy creation of a Flickable content item.
Now, the problem is that the other container controls are not executing
setContentItem_helper(), because they have already assigned contentItem
and therefore it returns right away. Fix the issue by returning the new
content item without assigning it to let setContentItem_helper() do its
job. The issue was spotted while debugging QTBUG-61434.
Change-Id: Id6f84748ec08bbdfd3bd934dda627e2619af7d2a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The first touch point was blocked as appropriate, but the consequent
touch points were leaking through to other popups below Drawers' modal
overlay.
Task-number: QTBUG-61581
Change-Id: I1c3e28e3d25b7489c4a9b684107fd1b5158e1674
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Somehow this passed the 5.9 CI, but the dev branch throws an error:
qquickpageindicator.cpp:110:10: error: 'itemChildAdded' overrides a member function but is not marked 'override' [-Werror,-Winconsistent-missing-override]
Change-Id: I2effeb908552fa2759057cf0953ea65737be3f9a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I8125971dd91614984379e734af21f5ff28852667
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is going to be used for sub-menus by QQuickMenu itself,
by the upcoming QQuickMenuBar, and allows users to implement
their own Menu navigation if desired.
Change-Id: I29258e78fec27e8dd207ed649958df1a718bcd39
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I075241c07702d1e8bbc89c43cef35525d9e67cc7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A cascading sub-menu is parented to the menu item in its parent menu,
but a non-cascading sub-menu is parented to the parent menu's parent
item to be able to have the sub-menu visible while the parent menu
is hidden (non-cascading menus are opened and closed one by one).
Based on these conditions, resolve the parent item automatically
instead of doing it by hand in openSubMenu().
Change-Id: I5dd38ee0978604cd604dabf6f40ac4fb5f3eebbe
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Menu] Added "count" property.
Change-Id: I42971a6bf8fd74b9f2d3df52f191b66cd7022b81
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia63148beee6b574e435a120be245601b3a0b3322
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I0444e3e9137e1b71cdd16c35dc7cc47875937a22
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
To help propagating the cascade-property automatically, instead of
doing it manually in openSubMenu() that we're trying to get rid of.
Change-Id: I3a3d59cafccc85d6affc325eb60e717e22b8f812
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia8ffca05d6eba5214dec3a4675be0f7a109f06bd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Moving stuff away from openSubMenu() until we can remove it...
Change-Id: I0a979a6a0de25584a213b59e1d29d3b9f78b184e
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The parent argument is handy for sharing a single context menu instance
for multiple listview items:
ListView {
delegate: ItemDelegate {
onPressAndHold: contextMenu.popup(this)
}
Menu {
id: contextMenu
}
}
Change-Id: I77ff87ee03d2d1b53485863ab9c99f3226496dfc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia7d205bacf4da4cb13e31ab34fb62d13a77f7ddd
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][Menu] Added a dismiss() method. Unlike close()
that only closes a menu and its sub-menus, dismiss() closes the whole
hierarchy of menus, including the parent menus.
Change-Id: Ibde2102bbb542a5deefdf17843496b7b80021db4
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Since 744164e6, there is no more need to manually transfer the focus
when dealing with nested menus.
Change-Id: I8e283b2ef4501aa36d57b3e06190237a1fee7133
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
.qmake.conf
tests/auto/controls/data/tst_scrollindicator.qml
Change-Id: I1f5581ae7814c0d4152e4c9b79a30a8af5a3a17b
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When a popup is closed, if there are multiple popups open, restore
focus to the next popup in chain instead of transferring focus to the
window content. This allows us to cleanup the custom focus handling
for sub-menus in dev. There is no more need to manually transfer focus
to the parent menu or to a sub-menu, but calling open() or close() is
enough and the focus is automatically transferred as expected.
Change-Id: I54406c7c6b8dd25af261e00ebb1ae00ccbea8b9f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes an issue where an application would crash when opening a
drawer by dragging it after an invalid edge value had been set.
Task-number: QTBUG-61843
Change-Id: Ie9b9ea0276b356b92927b858f2be355bfc042afb
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
2c4b2d48 made Tumbler's wrap property follow its count by default,
but did so using updatePolish() to account for the use case where a
items are appended to the model in a for loop, as is done in
TumblerDatePicker.qml in Tumbler's auto tests. This (appending items
one at a time in a for loop) is not a good idea, but it should work.
The problem with the solution is that the delay means that the use
cases mentioned in the referenced bug report were broken.
This patch removes the delay. The recursion guards are necessary due to
the complex nature of TumblerView (and its non-standard use of the Qt
Quick views), as they prevent a memory leak in
QQuickListView::createHighlight() from being introuduced.
We now call deleteLater() to ensure we do not interfere with the views'
internal operations, and hence we also perform a few extra operations
at the same time as insurance (although it appears that simply
unparenting the internal view from QQuickTumblerView is enough to get
the tests to pass).
Task-number: QTBUG-61374
Change-Id: Ifef9e99522ea183b282ac862f346beaed12d0c09
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QEvent::TouchUpdate can contain touch points in any states. It
iterates the list of points and calls handlePress/Move/Release().
We can re-use the same handling for QEvent::TouchBegin() (pressed)
and QEvent::TouchEnd() (released). This change does not fix anything
but makes the next steps easier.
Change-Id: I29edd949579ab6a4bf923e455a1ef38adb05e3a5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61698
Change-Id: I46db5e9816190ac7afd6b671198dff11089bc4f3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unlike with mouse events there's setAcceptedMouseButtons(), currently
there's no way to control whether a control receives touch events or
not. As a temporary workaround until QQuickItem::setAcceptTouchEvents()
has been added, we'll have to ignore touch events by hand.
Task-number: QTBUG-61785
Change-Id: I9a678570bfdd104ae32b4040ecef7625dcfd1aee
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unlike with mouse events there's setAcceptedMouseButtons(), currently
there's no way to control whether a control receives touch events or
not. As a temporary workaround until QQuickItem::setAcceptTouchEvents()
has been added, we'll have to ignore touch events by hand.
Task-number: QTBUG-61785
Change-Id: I195d5ec3122ca0c7f2fade700b5b0c221472a243
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Unlike with mouse events there's setAcceptedMouseButtons(), currently
there's no way to control whether a control receives touch events or
not. As a temporary workaround until QQuickItem::setAcceptTouchEvents()
has been added, we'll have to ignore touch events by hand.
Task-number: QTBUG-61785
Change-Id: I8e3bdc3df1c3b28afaf8f80965569135e6a53120
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I00d4f6ed466e33be3f31b2cd0bcbae6707d84cb9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I05357bf0605eb152531ded3788437b1d52022528
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I960d90a7d1604f35a67dfe5f4adb57d4d62968f9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This allows taking RTL into account e.g. when defining transitions and
transform origins.
[ChangeLog][Controls][Popup] Added a read-only "mirrored" property that
is true when the popup's locale is right-to-left.
Change-Id: I12fe09d8ed3af2836c92631ae43752929b08feb5
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Set the parent menu when added as a sub-menu, and reset when removed
from the parent menu, instead of waiting until the sub-menu is being
opened and never reseting it. Furthermore, fix onItemTriggered() to
not overwrite the original parentMenu value when iterating the parent
menus to close them.
Change-Id: If4cf9cd8794e34275f38a3b991e5c403725a8706
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This complements the add/insert/remove/take API that was added for
actions and menus. Unlike for menu items, there was no convenient
way to access a specific action or menu directly without accessing
the respective item first.
[ChangeLog][Controls][Menu] Added actionAt() and menuAt() accessors.
Change-Id: I5515441626b3a04b05265d5b42afdaea8e256709
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In general, when shortcuts override key press events, the respective
key release events are still sent. Therefore, in order to respect
shortcuts, key navigation should be based on key press events. Key
release -based navigation is also not going to work with nested menus
in a menubar, because a leaf menu may need to propagate key events up
to the parent menus and finally to the menubar, but only if keys are
not actually handled.
Change-Id: Ia040a387adc782d8828250fbed393ef1794f2148
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
MSVC2015 has very strange issues with QQmlListProperty::data in release
builds. The pointer is somehow lost between constructing the object and
when it reaches a list-property function. It's probably somehow related
to the qSwap() calls in QQmlObjectCreator::setupBindings(), but this is
tricky to investigate, because adding qDebug() output anywhere near the
qSwap() calls also makes the problem disappear. It's easier to use the
standard Private::get() pattern instead. :)
Change-Id: Iaa361f07023820bfe38191a100cebf64fadb4d62
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Use a single example for the whole menu. We can now use Actions and the
delegate property to use the styled menu item for the whole menu. The same
structure will be used for the upcoming MenuBar example.
Change-Id: Idbaa38cc536b27a4d64eb9ad72c07936bf160d6e
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously mnemonics worked only for "normal" menu items, but not for
dynamically created menu items that present actions and sub-menus. This
patch fixes the issue by specifying the menu as a QObject-parent for
such dynamically created items, because QQuickShortcutContext is based
on QObject-hierarchy.
Change-Id: I3637ef06e9cb2a27673e4618c253279a0123b7c8
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Make sure to trigger the associated action if a button is activated via
its shortcut.
Change-Id: I73899a5540285c7c2b11a2481a9621ec6e83c6b8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickmenu.cpp
Change-Id: I595ed1671fcad6c3b87123be2b825bca09552f0f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Remove the OnReleaseOutside close policy, just use the defaults from
QQuickPopup. This way menus won't get immediately closed on release,
when opened from an onPressAndHold signal handler.
Task-number: QTBUG-61608
Change-Id: Ifedd596aa0e71ac5f4211fa42e2ae499918df1b2
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-61647
Change-Id: I090017082de3287fd59f825d1cff01842a5ab5f8
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTBUG-60492
Change-Id: Ic1f380f44593d4a8681bff874789692d17b9edf7
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
QQuickAbstractButton::itemChange() already grabs and ungrabs the
shortcut when the button's visibility changes, but setShortcut() was
grabbing the shortcut without checking the button's visibility, so a
hidden button ended up grabbing a shortcut. Furthermore, make sure to
ungrab the shortcut on destruction to avoid leaving a dangling pointer
to the application shortcut map.
Change-Id: Ie93c2d073d7072abad271ba59a45428e3300cc28
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][ApplicationWindow] Deprecated the overlay grouped
property in favor of the newly introduced Overlay attached properties.
[ChangeLog][Controls][Overlay] Introduced Overlay attached properties
and signals that supersede the overlay grouped property in Application
Window. The Overlay attached type allows providing background dimming
for popups without requiring an ApplicationWindow instance.
Task-number: QTBUG-61336
Change-Id: I9df11bcb167e7725014d5f058fe24d70da4a10b3
Reviewed-by: Topi Reiniƶ <topi.reinio@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
[ChangeLog][Controls][ApplicationWindow] The attached activeFocusControl
property has been made functional with a plain QML Window to make the
functionality available when using QQuickWindow/View/Widget instead of
ApplicationWindow.
Task-number: QTBUG-61336
Change-Id: I46b91bca436d58c349c4f9ba8816245ab4ca33a4
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
During the early days, there was only one visual overlay background
dimmer, so QQuickOverlay was the natural choice to manage it. It was
soon realized that multiple modal popups and drawers needed each their
own background dimming. Now the implementation becomes simpler when
each popup manages its own background dimming. This paves the road for
the upcoming changes making it possible to provide background dimming
without ApplicationWindow.
Task-number: QTBUG-61336
Change-Id: I621db4efe4aa74c147f81f7aee8affebddb00d49
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
9b20157 fixed font inheritence for popups in 5.9. This commit applies
the same logic for palettes, and adds the same inheritance tests.
Change-Id: Ib286ddcb9fc7ac4fb681d440c76d728dd07cb983
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/quicktemplates2/qquickspinbox.cpp
tests/auto/controls/data/tst_scrollbar.qml
Change-Id: Ief9481cb648076a951db0aeffaeb11aeaf392677
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is not obvious for those who are not familiar with grouped
properties.
Change-Id: I4b3e02f3bbba7c7a0ec1897da99af8e5d048e570
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
|