| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
| |
Use the actual padding from the nine patch image rather than the
hard-coded 12.
Fixes: QTBUG-91924
Pick-to: 6.1 5.15
Change-Id: I4707ae173c088625657a135680619cf646e3a9e2
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the mac style, we draw the focus ring for a slider
from QML around the handle. This has shown to be fragile, since
UIKit doesn't draw the handle in the center of the
rect we get when we query UIKit (using the
[cell knobRectFlipped:slider.isFlipped]). And then the
focus ring will be offset as well.
While we could try to adjust the rect manually from
QQuickMacStyle, this will only be quaranteed to work
on top of the current macOS SDK (macosx11.1). So for
that reason, this patch falls back to use the less
correct, but more future safe, solution of drawng the
focus ring as a rect around the handle instead.
While this doesn't look native, it still looks
better (and correct, for the uninformed) compared
to an eliptic ring that is misplaced on the target.
Fixes: QTBUG-93423
Pick-to: 6.1 6.0
Change-Id: Ibc00f12f9606cd66c8ff384967aa3ea0d7727964
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
| |
Can't have newlines in there otherwise it breaks up the table.
Pick-to: 6.1
Change-Id: Ia64d94fc6d08dd6000b3663af030c8e5a7a7e3ef
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
|
|
|
|
|
|
|
|
| |
Items declared as children must be positioned and sized manually.
Pick-to: 6.1
Change-Id: Ie2b2989de07729464ae38b634992d53063ff739d
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
| |
Change-Id: Id3d3db4b49dcbbc662a24eabb65ac6908577a4af
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
On macOS, the sliders should not get focus from clicking
(Qt::StrongFocus). Instead, it should follow the logic
we already do for buttons (which includes checkboxes
and radiobuttons), which uses Qt::TabFocus by default.
Fixes: QTBUG-93430
Pick-to: 6.1 6.0
Change-Id: I6d0d3d876a0b8c0e9cd9b23f12856090aa6a8173
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a user uses integer values for stepSize, from and to in a Dial, they
most likely want the actual values of the Dial to be integers, too.
Detect this condition, and store it in a new boolean member. If the
condition is met, we round the value in QQuickDialPrivate::valueAt
(which, due to floating point math might not be an exact integer).
As a drive-by, reorder the boolean members to introduce no additional
space overhead.
Pick-to: 6.1 5.15
Fixes: QTBUG-92214
Change-Id: If4633fae1d7d425ca7fb767c7284d6f8ea7ce78c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
The Qt 6 prototype returns size_t.
Pick-to: 6.1
Change-Id: Ic86b606fd125e3b2b9782462c4f929553513f6c6
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
This patch will add documentation for the
native styles that was added to Qt 6.0.
Fixes: QTBUG-88220
Change-Id: Ib0703b3758d48586cd8465ea9188691b9e377064
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
(cherry picked from commit 30cf78d48f6a3778e8b4ec2e2b8924b25fdc85cc)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The macOS nativestyle plugin uses the 'qmake_immediate' resource name,
which conflicts with any test / example that might create a resource
with the same name.
This is problematic in static builds because it causes duplicate
symbol errors when linking.
Use a different unique resource name instead.
Pick-to: 6.1 6.0
Fixes: QTBUG-93172
Change-Id: I29dee69190d75fe11c8993353349e3db2004d276
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
We now generate metatypes by default and every instance of GENERATE_METATYPES now causes a warning.
Change-Id: I691d0a3973c47cab666bd4ca948b2afe047ee13f
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
| |
Change-Id: I871e115f27c3c43a9e9b2e23392cd1dcbfb0cec0
Pick-to: 6.1 6.0 5.15
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
| |
Change-Id: Idc5a1c175fa942e90830ae8b81f6627a729f7220
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
| |
Change-Id: Ib125517f87be0dac22eaeba059a6cdfd18abb7b7
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: I02096558d480dcef456f9cd1e86c7c843179758c
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Check if a Flickable type was actually set as the contentItem before
accessing the pointer. Also warn that using a type other than Flickable
is not supported.
Fixes: QTBUG-93039
Pick-to: 6.1 6.0 5.15
Change-Id: I1470766c6de02b7b601edf1375791d3147f26ab5
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The c++ symbols are already namespaced into QQC2. But since there is no
namespace concept in obj-c, we use QT_MANGLE_NAMESPACE to wrap those
symbols into a "fake" namespace by concatinating symbol name and
namespace name together.
The problem is that QT_MANGLE_NAMESPACE only take the QT_NAMESPACE
into account, and not the additional QQC2 namespace. The result is
that the application will fail linking because of duplicate obj-c
symbols when you combine widgets and controls in a statically linked
application.
This patch will redefine the affected macros locally in
qquickmacstyle_mac, so that both the Qt namespace and the controls
namespace are taken into account.
Pick-to: 6.0 6.1 6.1.0
Fixes: QTBUG-92883
Change-Id: Ic2f84ad9c0005fdd2553729d897cee113a4ff24d
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QDS-4212
Pick-to: 6.1 6.0 5.15
Change-Id: I82d524960a34e9307ddf9b154a326d8fadc7387c
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
Since most Impl elements are QtQuick based we need to add it as a dependency or else the compiler and linter will get confused.
Change-Id: Id7532d254b6d9b305342ab85cc6466e1bde26b65
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
| |
Generated with configurejson2cmake.py
Change-Id: Ib07d883b94462f6e132f36c24e763b31309aaeed
Reviewed-by: Alexey Edelev <alexey.edelev@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Use PROJECT_VERSION instead of CMAKE_PROJECT_VERSION, so that the
repo project version is used in a top-level build, rather
than the version of the qt5 project.
Pick-to: 6.1 6.0
Task-number: QTBUG-92861
Change-Id: Ifd12d6309f358b9b72372a5c069141ecb7322bc7
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
ImageNode->NinePatchNode changes
Basically does what 788865b805bc91151ac8fe18bf7b92b1212ee07d did, but on
the other branch.
Pick-to: 6.1 6.0 5.15
Fixes: QTBUG-87236
Change-Id: Ie8371de8a9d49054c888e4bffb7e89392a6d7c07
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@qt.io>
|
|
|
|
|
|
|
|
| |
The QML_FOREIGN declaration for QQuickPalette is not very useful if
including it doesn't actually get you the type.
Change-Id: Ia5face462112f9cccff4622e2bc6fd369ce204c7
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
| |
Change-Id: I82aa23bf35cb611978939fcbda8baf9520fc2f32
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
| |
Task-number: QTBUG-81525
Change-Id: I1b79fde191bfe0ac11778baf352409ace4cd5a56
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Delivery order has changed to be the same as the z-axis stacking order
(since qtdeclarative 3ff11ceca37dcc4b6f0420332fa7f6aa007be7f3).
Since QQuickSwipeDelegate puts its children under itself by setting
negative z-values, it can now receive mouse events before those
negative-z children, directly rather than via childMouseEventFilter().
It doesn't seem to be enough to ignore() the events and let them
propagate: we now need to explicitly forward them to interactive
child items, and to child items' Attached objects, if any.
Pick-to: 6.0 6.1
Fixes: QTBUG-87018
Fixes: QTBUG-87789
Change-Id: I1e02ceddad7c3221fb09a33046941d654bfa8a4b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since delegateItem might be nullptr after the qobject_cast, it might
still be nullptr even if d->tumbler is set. Don't dereference it without
checking first.
Fixes static analzyer warning 97aff83b6782555664df70d92f65e7dd.
Pick-to: 6.1
Change-Id: I70f4e27eaa5e26538884ead19ae12da7bacbd76b
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
| |
Change-Id: I476fd6dc9bb87dc95265bd92dbb6beeb684644f1
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
|
|
|
|
|
|
|
| |
Pick-to: 6.1
Change-Id: Ib6f0aa7d2fe663f8d1ba090d2c62d57e0073a526
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
Fix compiler warning about deprecated QScopedPointer::take.
Change-Id: I7300e0a4eab5fca101b8b3127abf12e88359a5ca
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Section titles are valid targets for QDoc's autolinker. When
they are identical to other valid link targets, such as for
example a class, these sections may cause invalid links.
Pick-to: 6.0 6.1
Task-number: QTBUG-91141
Change-Id: I466b2d21be030cd34b2a734d5126c45ff763127b
Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Function with the same name is exported from QtQuick which leads
to multiple definition linker error. Marking this function as static
avoids the issue.
Pick-to: 5.15 6.0 6.1
Change-Id: I29f3923ee55b5181e9b76b91e49d9f753f54ed8f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
qmldir files to be generated by the cmake build procedure and don't
need to be stored in the source tree.
Task-number: QTBUG-88263
Change-Id: Idff2800b5b2b6cb74d79a2f42fff717522c10ade
Reviewed-by: Ulf Hermann <ulf.hermann@qt.io>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.1
Change-Id: I688bdd73c939304f572d0e162e7aa09499bf737f
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Remove focusing editText for Combobox when clicking on indicator (when
editable is set to true). Focus on Edit Text should be set only
intentionally by user.
Before this change, when focus was set on Combobox, it automatically set
focus on editText. It was also happening when drop down indicator was
clicked. Because of that, on some platform (like Android) virtual
keyboard was appearing in case when it shouldn't be shown.
Fixes: QTBUG-61021
Pick-to: 5.15 6.0
Change-Id: I813dcc3099c919ec32f0683e7e60e6082c5bc389
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This includes removal of the corresponding .prev_CMakeLists.txt files.
Pick-to: 6.1
Task-number: QTBUG-88742
Change-Id: I4247294258629c92e80914518e9208019090c815
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Because of the previous behavior, the footer could be read aloud by
the screen reader before the content item. And even worse, the footer
could be read aloud even before the header in some cases. This made
it hard for visually impaired people to use the application.
The Page type was used by the Dialog type, so it also affected that.
Fixes: QTBUG-75042
Pick-to: 5.15 6.0
Change-Id: Ic3e8ec3f7dcf18af9262b1d35c986835c8da6900
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix for setting up initial inputMethodHints to Qt::ImhNoPredictiveText
for Combobox.
Before this change, Qt::ImhNoPredictiveText was never set for Combobox.
As inputMethodHints() by default returns Qt::ImhNoPredictiveText value,
setInputMethodHints didn't allow to set this value correctly.
Task-number: QTBUG-61021
Pick-to: 5.15 6.0
Change-Id: Ie4ec0d32fff7586bc3a8bd055b752000c0330fad
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
|
|
|
|
|
|
|
|
| |
Only react to hovered on enabled items.
Fixes: QTBUG-90580
Change-Id: I955033f391e6cd592e3d75b79b9242019db9fcfa
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
syncCurrentIndex () function assumes that PathView is used as view for,
Tumbler component, and states that actualViewIndex should be 0 while
initialization. This statement is not correct when Tumbler is in
non-wrap mode and uses ListView as view, where currentIndex is set to
-1 by default. Fix actualViewIndex condition according to ListView
logic.
Fixes: QTBUG-84426
Pick-to: 5.15
Pick-to: 6.0
Change-Id: I4ef1e7b45399bf748968490f44b8909f3218d9bc
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
| |
The warnings appeared after porting QCcolor to float.
Change-Id: I248f15a7a403281e849f030e412c159f9732261e
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When the geometry of a control changes, this code is called:
void QQuickControl::geometryChange(const QRectF &newGeometry, const QRectF &oldGeometry)
{
Q_D(QQuickControl);
QQuickItem::geometryChange(newGeometry, oldGeometry);
d->resizeBackground();
d->resizeContent();
if (!qFuzzyCompare(newGeometry.width(), oldGeometry.width()))
emit availableWidthChanged();
if (!qFuzzyCompare(newGeometry.height(), oldGeometry.height()))
emit availableHeightChanged();
}
SwipeDelegate works by moving the background and contentItem together
when it is swiped to expose the various delegates. Because this
involves setting the position of the background, the check for
background's x position being 0 in
QQuickControlPrivate::resizeBackground() would fail and the background
would not be resized at all. Fix this by making resizeBackground()
virtual and don't check the x when checking if we should set the width.
Similarly, in QQuickSwipeDelegatePrivate::resizeContent(), we should
set the contentItem's width instead of just repositioning and resizing
it vertically.
Fixes: QTBUG-85770
Pick-to: 5.15 6.0
Change-Id: I36684bf2797719db87fe93063cc7685efe594eea
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
| |
Change-Id: Ifbaadd993924022b1351927aaf3987cb94c74df8
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
| |
Pick-to: 6.0
Change-Id: I8d56f7b7071c51d4dfc88e12864bc3e0e7c5ab10
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A ScrollView will typically contain other controls. And
if we're using a dpr with a fraction (e.g 1.25), the
position of the controls will sometimes jitter as you
scroll. The result is that if e.g a Frame is wrapped
tight around around a Rectangle, the frame will sometimes
be outside the rectangle, and other times on top. This
is because of rounding issues when drawing the Frame
vs the Rectangle.
So let the default flickable used by a ScrollView have
pixelAligned set to true. This will give the best
cross-platform "out of the box" experience.
The developer can always choose to use his own Flickable
for ScrollView, and tweak it, if such default
behavior is not wanted.
Pick-to: 6.0
Change-Id: I7dc7b0b390dbf055f35cca2a6c15a6075e33c0a4
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Some more contrived usages of nine patch images can uncover an issue with
the nine patch node implementation when used together with the threaded
render loop of Qt Quick: pixmapChanged generates a QImage that
references external data, which then gets passed to the scenegraph
in updatePaintNode during the scenegraph's sychronization phase.
This pattern (QSGTexture from non-data-owning QImage) should be avoided
in general, because when the gui thread gets unblocked and continues
after the sync phase, it could invalidate the data the QImage points to.
If now the independently running render thread happens to try accessing
the data (still the QImage that got passed in in the sync phase), bad
things may happen.
While it can be difficult to reproduce an actual crash (without ASAN and
such), logging with the specially crafted example code shows that the logic
is problematic if non-owning QImages are involved: (the pointers are the
QImage's constBits)
- pixmapChange 0x1f1053a5954 [gui thread]
- updatePaintNode 0x1f1053a5954 [render thread, gui blocked]
- beforeRendering [render thread]
- pixmapChange 0x1f1053e7424 [gui thread]
- QSGPlainTexture bind/update 0x1f1053a5954 [render thread] // but 0x1f1053a5954 may be invalid at this point if not owned by the QImage passed to createTextureFromImage
- frameSwapped [render thread]
Pick-to: 6.0 5.15
Fixes: QTBUG-88162
Change-Id: Id83d04fce668a3e05d150c086abdecc9d59e51e8
Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a popup had an exit transition set and was destroyed upon e.g.
being rejected, it would not destroy its modal dimmer, and so events
would not go through to popups that were beneath it even after it
was destroyed.
QQuickPopup's destructor does indirectly attempt to call
finalizeExitTransition() through a setParentItem(nullptr) call,
but prepareExitTransition() returns false if it sees that the
exit transition is already running, and so transitionExit()
never calls finished().
This patch fixes the problem by explicitly calling
finalizeExitTransition() in QQuickPopup's destructor if the exit
transition is running.
Fixes: QTBUG-89673
Pick-to: 5.15 6.0
Change-Id: I468fae52f6a83ac314877c67d062028634bb7e17
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since 8b534487044dfb3b464431ecb91ef4e0864af4ed, the C++ tests were only
being run with the default style for the platform that they were run
on.
Fix this by keeping track of whether a default style is in use and
checking it in the tests.
Pick-to: 6.0
Change-Id: I4ddd90aba12ede83fff0d3d1002534e79fce8c87
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
This ensures that the modules provide versions matching the current Qt
version.
Change-Id: I164b54af60de3b2b6ca6f54c417eb58b1eafd1e5
Reviewed-by: Jarkko Koivikko <jarkko.koivikko@code-q.fi>
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
It should of course be 4, not 3. The result
of it being 3 is that we would always also print info
when debugging imagerect.
Pick-to: 6.0
Change-Id: I257159b25b8aad1848d82af9855ecd194e7360a0
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
|