QT_USE_NAMESPACE was missing, so they didn't compile with namespaced qt.
Pick-to: 6.10
Change-Id: Ic4b1126cfab7780c714a737e81f0947664bade02
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
A top-level configuration with FEATURE_thread=OFF fails when autotests
are enabled. Most tools can be built without threads nowadays, so we
enable them and only exclude the qquickworkerscript and gifs tests.
Pick-to: 6.8 6.9
Change-Id: I809b021b4bdc4031d6c3335bea3aee414f5ce863
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Remove the ASM language where no assembler files are used.
Pick-to: 6.5 6.8 6.9
Change-Id: I3c94f798803b054a432fc2c8d6d65c665572a202
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Never use module-wide inclusions. They blow up build times. For QtTest
this is usually just a typo (QTest was meant instead). Add missing
includes as needed.
In the diffs I've spotted other huge inclusions (QtQuick, QtQml), but
those need more attention.
Task-number: QTQAINFRA-7110
Pick-to: 6.9 6.8
Change-Id: I74bf3fe212f50a7a3a6af2b1c80bbcaabc2516d7
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
In cb7eb15220, we stopped
using the leftPadding value for FloatingPlaceholderText.
As a result, the text is now misaligned with the placeholder.
This commit restores the FloatingPlaceholderText X position to
leftPadding. If leftPadding is not set, it defaults to
Material.textFieldHorizontalPadding.
To prevent regressions (such as QTBUG-120149), a new X position
animation has been added to FloatingPlaceholderText.
Fixes: QTBUG-133492
Pick-to: 6.9 6.8
Change-Id: I5c80dcedd7c2beec0891b524fc55388fa5456f2a
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
[ChangeLog][Controls] TextField and TextArea now provide a ContextMenu
by default. If you already have a custom context menu for these types,
ContextMenu will not open its own on e.g. right click.
Fixes: QTBUG-35598
Pick-to: 6.9
Change-Id: I0897a7ba5e1b5b6d5425c80cbc6f2550c904605b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This is an attached type that provides a way to open a context menu
in a platform-appropriate manner.
[ChangeLog][Controls] Added ContextMenu. ContextMenu can be attached
to any item in order to show a context menu upon a platform-specific
event, such as a right click or the context menu key.
Fixes: QTBUG-67331
Pick-to: 6.9
Change-Id: I225a8f498cc5bc18d36c3dc4cf481ef5ef95cd88
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
This helps test out the runtime system theme switching.
Pick-to: 6.8
Change-Id: I02a40f2625a1afce634c7676bd94a78a052dced0
Reviewed-by: Santhosh Kumar <santhosh.kumar.selvaraj@qt.io>
Reviewed-by: Doris Verria <doris.verria@qt.io>
Bind width to the ListView's width, not the parent, which may be null.
Pick-to: 6.5 6.7 6.8
Change-Id: I020d23bb0c98b3da00db9ffd3400a89cfdeb1810
Reviewed-by: Doris Verria <doris.verria@qt.io>
SNIPPETS_DIR needs to be updated after the merge of qtquickcontrols2
into qtdeclarative.
Pick-to: 6.5 6.7 6.8
Change-Id: Ic2ceabd34b35a64868e6b7e261dca19b46c7f195
Reviewed-by: Doris Verria <doris.verria@qt.io>
The purpose of the tool is to show the styled controls.
So don't use native menus or menubars. Also, since the
menubar will warn (since Qt 6.8) if you add a MenuBarItem
to a MenuBar without a Menu, give each MenuBarItem a dummy
menu.
Pick-to: 6.8
Change-Id: I51972deea0308e7c994460ab4c6cca4fa9b5a9ab
Reviewed-by: Doris Verria <doris.verria@qt.io>
Now that we enable native menus by default for the macOS
style, we also need to make sure that we actually respect
the Qt::AA_DontUseNativeMenuWindows.
Pick-to: 6.8
Change-Id: I2a02b5528110a4e0514fb53c0673653f0086dfe8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
According to QUIP-18 [1], all tests file should be
LicenseRef-Qt-Commercial OR GPL-3.0-only
[1]: https://contribute.qt-project.org/quips/18
Pick-to: 6.8
Task-number: QTBUG-121787
Change-Id: I50964da74d6360bb88fc468765f6362ad39d20d1
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Its nice to be able to test that you can still
e.g hover the root menu, even when a subsub menu
is the active popup.
Pick-to: 6.8
Change-Id: Ibf76770a13c41f4712187daeb793439c83730db9
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Update the manual test to reflect that we no longer
have a Popup.Default option. Also, after seeing some
warnings, add a popupType() function, to improve
type safety.
Pick-to: 6.8
Change-Id: I70c4a52d776522541251bb0b2ab260b735d49171
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
The application attribute approach has some weaknesses which makes it
less suitable, than simply having a property which can be set per
instance of Popup. In addition, given just how many of our own tests
that are failing, when changing the default behavior of popup, it`s a
much safer approach to introduce this feature as an opt-in, in the
beginning. We can instead potentially modify the behavior of
PopupType::Default in the future, when we feel that it's less risky
to do so.
To give more context to why the AA approach is bad:
- The AA is too grandiose of a solution, which adds an arbitrary
limitation of not allowing mixing of in-scene popups and popup windows.
This also affects 3rd party libraries.
- It causes inconveniences when styling the various popup types.
Dialog, for instance, has a title property, which should be shown in
the window title, and not inside the popup window.
- It also makes it less flexible for potential future changes. We've
learned that this change is riskier, than initially expected, since
the qobject and visual hierarchy of popup objects are different when
using popup windows, and tests that simulate events,
will need to send the events to a different window.
The introduction of the PopupType::Default value, allows us to, for
instance, add a property later in ApplicationWindow, or somewhere else,
to change the behavior of PopupType::Default. Meaning that we can still
add a more grandiose API, that affects the behavior of multiple popup
instances, if we think it's too cumbersome for developers to add
`popupType: Popup.Window` to all popup instances.
Task-number: QTBUG-121363
Change-Id: I544da820261607621a9b9ad5c4c9679e676e44a0
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Now that Popup has a popupType API, use it in favor
of AA_DontUseNativeMenuWindows.
Change-Id: I6b666e9c36f5d8b95701ac6a94c29ac3d7a6d206
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Changing whether or not to use a native menu bar requires
setting AA_DontUseNativeMenuBar. But this will only take
effect the next time the app is started. So inform about
this, since it can otherwise be quite confusing for the
"tester".
Change-Id: Ie37b9ec0cc66660548ea13cb383440536e6fd707
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
It seems the Quit menu bar item steals the shortcut, so we have to do
something with it.
Change-Id: I3831c8bc99728773e22284232d7ab54ba6eb117f
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
This enables testing the drag-press-release gesture.
Change-Id: I953fee1f891b2ac907a5a69ca98f720496e7ed91
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Add more logic to the manual test to test:
1. changing the delegate
2. changing the title of a menu in the menu bar
3. using sub menus
3. using checkable menu items in the menu bar menus
Change-Id: I6a7256fb368a3557837c0448a6ddc895bb24924d
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
It was decided that we'll have two attributes:
- AA_DontUseNativeMenuBar
- AA_DontUseNativeMenuWindows
Setting AA_DontUseNativeMenuWindows only affects windows we create
(context menus, combobox menus, menus of non-native menu bars).
So, setting AA_DontUseNativeMenuWindows restores Qt to today's behavior.
But we can't control the windows of native menu bars, so if you don't
want those to be native, you have to set AA_DontUseNativeMenuBar just
like today.
By removing requestNative, we also effectively default to native menus
and menu bars, as the attributes are not set by default.
[ChangeLog][Controls][Important Behavior Changes] Menu and MenuBar
now use native menus by default on platforms where they're supported.
Task-number: QTBUG-69558
Change-Id: Ia917c2f820634def0cf815aa8ca8895ca79db75d
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Don't set it to control.leftPadding, because we don't want it to change
if the user changes leftPadding.
Fixes: QTBUG-120149
Pick-to: 6.5 6.6 6.7
Change-Id: I67bbc22192fef386fe088398b67d3eb0a10421ba
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
According to QUIP-18 [1], all test files should be
LicenseRef-Qt-Commercial OR GPL-3.0-only
[1]: https://contribute.qt-project.org/quips/18
Pick-to: 6.7
Task-number: QTBUG-121787
Change-Id: I26d72e8de04d4c7c57b3b7838af5d033265de5ba
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Kai Köhne <kai.koehne@qt.io>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
If the application sets AA_DontUseNativeMenuBar, it should
override the requestNative property.
Change-Id: Id69c09310d61e9a59746e32435a97742e28c80d3
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
The size policy of item updated as part of task QTBUG-117597. This
patch update existing examples and manual tests that depends on quick
layout to embrace size policy change.
Task-number: QTBUG-117597
Pick-to: 6.7
Change-Id: I68469a3bba3c4d3e5ed4b6eae0fd765b5206efc0
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
Not only do we need to ensure that the checked state changes so that
syncing the MenuItem to the native menu item works, but we should also
emit the same signals that would be emitted if the user had actually
interacted with the MenuItem.
Task-number: QTBUG-69558
Change-Id: I0ac1d16c0f84da1d9f6639b724ba47ea124da59a
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Originally the plan was to revert to a non-native menu when MenuItem
was used, but now that we always create the non-native items
regardless, we shouldn't need to do that.
Checkable MenuItems do not currently work. This will be implemented in
a follow-up commit.
Task-number: QTBUG-69558
Change-Id: I7238dad89e478f7cc664738fb6036787e0193dab
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
We can allow this to be set while the menu is a sub-menu and/or
visible, and instead wait until it is re-opened to take the change into
effect.
Task-number: QTBUG-69558
Change-Id: Ie79819609950c2f6432e55c09d21dce7e8d9b220
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
This patch ensures that a native menu is created (or destroyed)
when requestNative is set, if possible.
Task-number: QTBUG-69558
Change-Id: Ic7f8826bf4def66e66932618767a81ad19e114f0
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This can't reliably be auto-tested because we can't interact with menu
items with the mouse, and there's no way to know if a native menu is
focused in order to interact with it via keyboard.
Task-number: QTBUG-69558
Change-Id: I21134743ccc64ca1bf99f085f09c00d66a3ca3dc
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
These examples and .conf files were using two different syntax to create
a subgroup. QSettings may not support one of them and is misbehaving. So
let's use one syntax only and the one that it produces when writing the
output.
This code:
s.beginGroup(u"Material");
s.beginGroup(u"Font");
s.setValue("Family", "Open Sans");
s.setValue("PixelSize", 20);
Produces:
[Material]
Font\Family=Open Sans
Font\PixelSize=20
Fixes: QTBUG-121035
Pick-to: 6.7 6.6
Change-Id: I76ffba14ece04f24b43efffd17ab7ea941910c19
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
This gives us a convenient way to manually test native menus, which
can't be fully auto-tested.
Task-number: QTBUG-69558
Change-Id: I045eef8d30eb8f130f6e4ba4787a9d0ad84c109f
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
The padding was increased with the Material 3 update
(f47f8d6931), but the Dense variant never
had an effect on the values. This patch changes that.
Fixes: QTBUG-119793
Pick-to: 6.5 6.6 6.7
Change-Id: Ic37bb7861fe5e3f3dc9e97fe4ee7369b487f89df
Reviewed-by: Oliver Eftevaag <oliver.eftevaag@qt.io>
fontawesome was replaced with fontello at some point
Change-Id: I435d06611ebf6f2b9b7647b0d769b75a3f6cd089
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>