| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We only report the action if we have any actions to present.
For the other context menu policies we don't know if the user has
overridden contextMenuEvent or connected to customContextMenuRequested,
so we opt to not report the menu action in these cases. A user that
wants to present the menu action will have to subclass QAccessibleWidget,
override actionNames(), and install an accessible interface factory
that returns the specialized QAccessibleWidget.
As of now we do not report QAccessible::ActionChanged anywhere in Qt
when the conditions for actionNames() change, and this includes this
newly added behavior. Initial attempts at plumbing ActionChanged to
the macOS a11y system failed as there is seemingly no way to trigger
an update of this specific state, so this rabbit-hole has been left
for further investigations.
Pick-to: 6.9 6.8
Task-number: QTBUG-137126
Change-Id: I538df87603fbcae9ed2d9bcbb16f1de85a08f200
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit bb0c8bbf20fc1cdddd7e171260c4435f360e23d5)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QAccessible::Window role is for toplevel windows
only, and using it for non-toplevels e.g. breaks
window-relative coordinates in AT-SPI for non-floating
dock widgets and their content.
A QDockWidget is only a top-level if it is floating,
so only report the QAccessible::Window role in that
case, otherwise use QAccessible::Pane ("A generic container.")
because it's a container containing the QDockWidget::widget().
Adjust tst_QAccessibility::dockWidgetTest accordingly.
Notifying about the role change when (un)docking
a dock widget depends on introducing a new QAccessible::Event
and will be implemented separately in an upcoming commit.
Fixes: QTBUG-138206
Pick-to: 6.9 6.8
Change-Id: I9eb1bdc2a60260f169910671ebc82d9735e5ba13
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 62f101c7deef2b49a27d8b6c2df2ba0a1f2ed45f)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The default stylesheet for CT_SpinBox defines a native border which was
added to the sizeHint even though it was already added by the base
style.
Amends 96adebed606cdbc73c73778917d777dc04c6e93e.
Pick-to: 6.9 6.8
Fixes: QTBUG-133845
Task-number: QTBUG-130642
Task-number: QTBUG-132431
Change-Id: I2332c4f027a8f4cceb477ae239c348509e6e7356
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 877d352e490fc80b87dc76b53f4877fbd91c1b08)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
| |
Fixes: QTBUG-138183
Pick-to: 6.9 6.8
Change-Id: I91f1317fe65a02f4a8e64df8c5e9433a670a8509
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 6b9d86fce658812c54c49ff8dc6dfe8e80265c42)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replaced the unlinked tracking() text in the QScrollBar documentation
with a proper link to the tracking property of QAbstractSlider to ensure
correct cross-referencing and clarity.
Pick-to: 6.9
Fixes: QTBUG-85428
Change-Id: Ib8b7b03bd4872642d857d50b575b345b5c892d66
Reviewed-by: Leena Miettinen <[email protected]>
Reviewed-by: Alexei Cazacov <[email protected]>
(cherry picked from commit d6abddcfc11999c68bff25237d5e55324c993092)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the boolean isHorizontal was added in
ca41ace3578e6e49e5e85dc951a336e8d1832b1a. It was implemented wrongly.
Correct it, to restore the ability to resize the right dock area as
expected.
Fixes: QTBUG-137120
Pick-to: 6.9 6.8
Change-Id: I3750923d2a7c4ae2b304d69417e46a92c6ffa911
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 1dbac99cebdb38cd82e72ba7282a18793cac2195)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We shouldn't use ints or qint64 for timeouts anymore due to their poor
type safety and lack of expressiveness. Qt has adopted chrono-first:
https://lists.qt-project.org/pipermail/development/2023-January/043563.html
As a drive-by, remove redundant Q_GUI_EXPORT macros in
qtestsupport_gui.cpp and qtestsupport_widgets.cpp.
Amends 55f163382d36ddf908fc2884f2020a1b92340c10.
[ChangeLog][QtTest] Added QDeadlineTimer overloads for the qWaitFor*
functions.
Change-Id: Ife74a1e83d430072a104e0ac665a8cde9fd689f1
Reviewed-by: Marc Mutz <[email protected]>
(cherry picked from commit ff045b60d93e119c0abe8c354c3d3868c7603095)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The useGlobalMode and globalResizeMode testing was not correct.
We just want to look at the input resize parameter and
switch to normal memory mode if that can cause a section resize.
Fixes: QTBUG-138130
Pick-to: 6.9
Change-Id: If0829e54ec82b68a138a64a770df95ea85ac2e2b
Reviewed-by: Christian Ehrlicher <[email protected]>
(cherry picked from commit 7d19da385a030363343bd9effb38ee877523971d)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Amends 5618710d63db673443ba3872463f4663c09fe204
Fixes: QTBUG-138196
Pick-to: 6.9 6.8
Change-Id: If413f1cf1924a5cff09e3c0dce67209fd1090f73
Reviewed-by: Piotr Wierciński <[email protected]>
Reviewed-by: Christian Ehrlicher <[email protected]>
(cherry picked from commit 67d079a445602e5ac79d8d2e245139499c304835)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QMainWindowLayout::animationFinished(): looped over a copy of the
usedTabBars member and showed all tab bars in the container.
Showing a tab bar, can cause another in the container to become unused.
Unused tab bars were kept in a separate container and re-used, before
a3f0ce4c0d0627ef979052b34b21e6fd2bdc3acf changed this logic and deleted
unused tab bars.
This caused a regression: show() was called on a deleted tab bar,
causing a crash.
Only show tab bars from the copied container, if usedTabBars still
contains them.
Fixes: QTBUG-138201
Pick-to: 6.9
Change-Id: I33de57ab3276d1f786d27f63aebfe8ba8ddc2832
Reviewed-by: Samuel Gaist <[email protected]>
Reviewed-by: Marc Mutz <[email protected]>
(cherry picked from commit 2c8692adaed1c3374ca01842e166af79ed3861cc)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If a menu is set, QAccessibleToolButton takes it into account
for its role, for the QAccessible::State::hasPopup state
and for reporting it as an accessible child.
So far, this was only working when the menu was
directly set using QToolButton::setMenu, but not
when the menu came from the default action set
via QToolButton::setDefaultAction.
From a user perspective, that doesn't make a
difference, so also treat these equally on
the a11y layer, by taking into account the
default action's menu as well.
Fixes: QTBUG-138172
Pick-to: 6.9
Change-Id: Ida6915e983f026db7d9840542e4b5f5c14ae13e1
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 12cd5ef9e8a91aa281fbdd12ef4dbd85033e2659)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Use existing QAccessibleToolButton::toolButton instead
of QAccessibleButton::button and casting manually.
Pick-to: 6.9
Change-Id: Ib63553075f5a0a64d436276703e8717a20cc310f
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 509ccccbc9e3142212ba02af28eef4667e576b98)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The QMenu created by QScrollBar::createStandardContextMenu(QPoint)
had no parent, unlike similar widgets like QLineEdit or QTextEdit,
which set themselves as the parent. This change sets 'this' as the
parent of the QMenu to ensure consistent behavior, proper object
ownership, and proper transient window handling.
Amends: 75ecb176df837331fdac0c386812f5c36e7a6359
Fixes: QTBUG-138049
Change-Id: Ie29fe2100ab91f66eec9f02cd5d768005f78afbc
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 8649e06a14ef141995a1c63926a6cccd64caa8f6)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Coverity complains about a missing std::move(), because the
QDockAreaLayout streaming operator (like all non-QDebug-member ones)
takes the QDebug stream by value.
Add the missing move().
The const char* stream operator is a QDebug member, so takes the
stream by reference, so no std::move() needed.
It's a bit sad that it has come to this, but c'est la vie...
Amends 1cd7e01c909499b4c4c6d7dd250cc67bbb962141.
Coverity-Id: 481489
Change-Id: Ifed3a92e3db9eb21edf14bf79ba0c860311f006a
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 04b235d0120105b901a185e6dbc74c2c5941ce18)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The first argument was the same in all callers; instead of passing
token-by-token-identical lambdas (which have all distinct types), we
can pass the lambda's captured variables instead and inline the
lambdas into the function.
The third argument was always either int or QDeadlineTimer, so
standardize on QDeadlineTimer. A follow-up change will change all
arguments to QDeadlineTimer in the public API, too, so this is
the future-proof and chrono-first-compatible version.
Note 73c52ba2687c2035a40141f2a5236399f8331f4b for the QDeadlineTimer
construction.
Amends 7e4c2ac711c0b68133f06ab997a33f8bf7c4f734 and
3f2a9523a442e44ef52ebca30da9b5d3188df6bc.
Pick-to: 6.9 6.8
Change-Id: I75f84abbf60cd77ce48c7ab0ee797e5e8a0879de
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 943df16c72065cb7f0d13b9f0bceab06abfe3f71)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Give users that may have overridden this function a heads-up that it
will be removed in Qt 7.
Go for immediate deprecation, since there's no replacement, anyway. In
the unlikely case that there's a user of this undocumented feature,
they can use QT_IGNORE_DEPRECATIONS to selectively silence the
warning, the same way we do.
Amends 438b2f2d604133349777c670590b27a82832e290.
Found in API-review.
Change-Id: I064e80250ab7a405cc8abef144b6c7bc7bbf29fd
Reviewed-by: Ivan Solovev <[email protected]>
(cherry picked from commit 06eb3bcf083857e32aaef96fad3e7f274d4dfe9f)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Corrected order of QToolBox and QToolButton to follow alphabetical
listing and improve readability.
Fixes: QTBUG-113759
Pick-to: 6.9
Change-Id: I0ae53c3fccf6f2fd9e44fcdee7bbb73c58fa75c7
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 73d6e8e405d7066f2488c011bbcfbca4aa910888)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A qt_find_package call first tries to find a Config package
with the CONFIG mode option, and if not found, falls back to an
arg-less mode which searches both Config and Find modules.
For some packages, we know we want to find the Find module because
there can't be a Config package, e.g our FindWrap modules or any of
the other Find modules we carry in our cmake directory.
So we should annotate these calls with MODULE.
Aside from slightly faster configuration, there is another reason to
do so.
Future versions of CMake will automatically log find_package
calls that have a state change (e.g. Not Found -> Found) into
CMakeConfigureLog.yaml.
Due to the Config-first logic in qt_find_package, we always unset the
Foo_DIR variable if the Config package is not found.
This means that there will be a constant build up of not-found
messages in the log.
Explicitly annotating the calls with MODULE will prevent this. Do
that.
This commit relands f1a59e974f013fcf8629d8cbacab58d895523100
This reverts commit 0ce82b78a35026cb56ff76d1c24b311008934a53.
Change-Id: I5d37579d2f4957215ce1475b5c0ec8509d77c83d
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 5e405060431cae3cec450a4a73adcb650d3f86af)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add explanation to disambiguate the term before in the context of
visual stacking. Clarify that the item will appear behind the
sibling when overlapping.
Pick-to: 6.9
Fixes: QTBUG-126523
Change-Id: I8040b045bf67c404ef737a88b8328bc302f29227
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 127a0926dff31d9b98397511deb7320a3b6bcc00)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Avoid QPainter::brushOrigin() since it returns a QPoint instead QPointF
so it might loose precision. Use QPainterStateGuard instead to make
sure the correct QPainter state is restored later on.
Task-number: QTBUG-137885
Change-Id: I3f49c72c0425e22ffb1246b42d926e704dc9d8dd
Reviewed-by: Eirik Aavitsland <[email protected]>
(cherry picked from commit e97a1fdad3d2d294ad9bf2e2bcc5f818d9050910)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
\brief is for properties and setSizeConstraints is not the setter of the
sizeConstraint property, it's just a convenience wrapper.
Also, clean up the documentation style, we don't prefix each line of
documentation with '*'.
Amends 5b33c4e84ce23f1d7720306f4f01e771ac8be2e3.
Change-Id: I3eda0f195d14bff68b6dd08ae9dfeb82f75c56e2
Reviewed-by: Thorbjørn Lund Martsum <[email protected]>
(cherry picked from commit 0745bbb61727b6abb4367ae4a9de23fdd3dfff6e)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
Instead, adjust the palette in QStyleOptionToolButton and paint
the widget manually.
Pick-to: 6.9 6.8
Change-Id: Ib4bba0c557c6f87c9b09ddc374cfe898afbc4598
Reviewed-by: Christian Ehrlicher <[email protected]>
(cherry picked from commit 22cec87ff4e76762bc9e6b19b08c8b3ba121f509)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This makes the property accessible to the Widget designer. Document it
as a property.
Amends 7d0017cda8fde28a1130feaeecf41010b40e3cb3
Task-number: QTBUG-137478
Change-Id: I55e95e541c5c1ae162eb7c2ae78c969f9d23ea2a
Reviewed-by: Christian Ehrlicher <[email protected]>
(cherry picked from commit 760579204e314cc4e0fdc7b8b8bd8d8706095a38)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Adjust the draggedPosition calculation to changes in
QAbstractItemViewPrivate::offset(). The draggedPosition was previously
first calculated by adding mouse pos and offset() value, and mouse pos
was later extracted by subtracting the offset() from draggedPosition.
However, the offset() value no longer remains a constant between the
addition and subtraction, which makes it impossible to get the old
mouse position.
Store the offset and mouse position separately to make the
calculations deterministic across events.
Fixes: QTBUG-130978
Pick-to: 6.9 6.8 6.5
Change-Id: I5c601ff7ca40c9d8fb7ad949ff15520d199f5c1f
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 882a4df4fdd2a5952a605ca783142f46d9a92d5b)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The qt_accStripAmp helper function takes a string that
may contain an accelerator/mnemonic and escaped ampersand
characters and returns a "plain text" version of this that
is suitable for an accessible name of the widget/control
containing that text.
Move the helper function to a new private header
(and source file) in QtGui in order to be able to reuse
this in Qt Quick in an upcoming qtdeclarative commit.
Task-number: QTBUG-134208
Pick-to: 6.9 6.8 6.5
Change-Id: I4dfac2d179baf36101066962b6a5f542b3a6fc03
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit fb93950e7ebf7d4bb336e7c9f7a60a6bafdb60ed)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This breaks reconfiguring Qt in various ways, one of which is
CMake Error at cmake/QtTargetHelpers.cmake:1557 (message):
PkgConfig::ATSPI2 is not a valid target.
This happens because pkg_check_modules sets ATSPI2_FOUND to 1, so
qt_find_package thinks it shouldn't find the FindATSPI2.cmake module,
which ends up not creating the ATSPI2 target.
This reverts commit f1a59e974f013fcf8629d8cbacab58d895523100.
Fixes: QTBUG-137870
Change-Id: Ica74a236c6b1bb9d7ca9af29175cb2e84a93251b
Reviewed-by: Fabian Kosmale <[email protected]>
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit 0ce82b78a35026cb56ff76d1c24b311008934a53)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Removed the incorrect word "path" from the description, which
mistakenly referred to the item as a "text path item".
QGraphicsSimpleTextItem provides a simple text item, not a path item.
Fixes: QTBUG-87180
Pick-to: 6.9 6.8
Change-Id: I977d01c667c65f5d35dc3bc60d5362e681e9b5f1
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit df69d25f5a94ac7a6b42f0e91dcb3a49ec7841fb)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of deleting QMainWindowLayout has kept unused separator widgets
around for later usage.
Remove this logic. Delete unused separator widgets, create new ones
when needed.
Pick-to: 6.9
Change-Id: Iec02154d9344ff89386c1e0a5d65b9fbab4e4896
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit d5d0fbd6d811392f2cf0b6375cdec3a40aa736a6)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- After adding the QDataStream::operator bool(), it is not required to
check the QDataStream::status(). It is enough to use the reference
of stream in the statement, which returns true if stream status is OK.
New operator usage makes code more convenient.
Change-Id: Ie92658b613484a1e444ab442f8f821458c511079
Reviewed-by: Marc Mutz <[email protected]>
(cherry picked from commit 7f51608013ba4352d6c5acf77172a7929d7cfdb6)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of keeping unused tab bars in a container, delete them right
away.
Fixes: QTBUG-137755
Pick-to: 6.9
Change-Id: Ie604cdb40145989df6c07714d742d83afd7c9d6f
Reviewed-by: Samuel Gaist <[email protected]>
(cherry picked from commit 1b7dea55ea27737b6ad9613fd6eaceb5bda85c82)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Unused tab bars can cause crashes in the QMainWindow d'tor.
Centralise handling of unused tab bars to avoid access to the container
at multiple places.
This patch doesn't change functionality.
Task-number: QTBUG-137755
Pick-to: 6.9
Change-Id: I70445c1efbbbff3ed637e1c3a531aa90b6584c9e
Reviewed-by: Samuel Gaist <[email protected]>
(cherry picked from commit a3f0ce4c0d0627ef979052b34b21e6fd2bdc3acf)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If the main window layout was already deleted, the method crashed with
a nullptr access to the return value of qt_mainwindow_layout().
Handle a nullptr return value properly.
Task-number: QTBUG-147755
Pick-to: 6.9
Change-Id: I991e831f58e97267a518a98f032f8aa7ea0384bd
Reviewed-by: Samuel Gaist <[email protected]>
(cherry picked from commit cc1ddebf63a2b6c051529d1d3127534aa4c1d55a)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It is essential to know for debugging purposes, what is the parent
of a QMainWindowTabBar and which dock widgets are associated to it.
Add a debug operator<<.
Task-number: QTBUG-137755
Pick-to: 6.9
Change-Id: Ibc04f0a41fe54e0d5d1d1a9b4dcb1cc9ba5d3891
Reviewed-by: Samuel Gaist <[email protected]>
(cherry picked from commit 0fa87580963a5b6352cd2e4d75261cd80f35d371)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The member mainWindow is a raw pointer to the QMainWindow.
A QMainWindowTabBar isn't necessarily parented to the QMainWindow, when
it's unused. If the QMainWindow has already been destroyed, the member
may contain a stale pointer.
Use a QPoitner instead, to avoid use after free.
Task-number: QTBUG-137755
Pick-to: 6.9
Change-Id: I488bfcfd222e5015aec15d8748565e1de1f9adf1
Reviewed-by: Samuel Gaist <[email protected]>
(cherry picked from commit 86b46a011c679bb361b51381ff0e281f03284be1)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A qt_find_package call first tries to find a Config package
with the CONFIG mode option, and if not found, falls back to an
arg-less mode which searches both Config and Find modules.
For some packages, we know we want to find the Find module because
there can't be a Config package, e.g our FindWrap modules or any of
the other Find modules we carry in our cmake directory.
So we should annotate these calls with MODULE.
Aside from slightly faster configuration, there is another reason to
do so.
Future versions of CMake will automatically log find_package
calls that have a state change (e.g. Not Found -> Found) into
CMakeConfigureLog.yaml.
Due to the Config-first logic in qt_find_package, we always unset the
Foo_DIR variable if the Config package is not found.
This means that there will be a constant build up of not-found
messages in the log.
Explicitly annotating the calls with MODULE will prevent this. Do
that.
Change-Id: I465b015ac18f8a09b9a5c86cec7b6312a0bfbdf1
Reviewed-by: Alexey Edelev <[email protected]>
Reviewed-by: Joerg Bornemann <[email protected]>
(cherry picked from commit f1a59e974f013fcf8629d8cbacab58d895523100)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of reporting no/empty text on the a11y layer when
using a QLineEdit::EchoMode that doesn't display the actual
text as is (e.g. in case of a password field), use
QLineEdit::displayText, which already prevents exposing the
actual text unless it's also displayed on screen.
Previously, the character count and caret/cursor position was
still reported for the actual text, but an empty string was reported
for the text itself, which was inconsistent. (A cursor position of
3 within an allegedly empty text doesn't make sense, and empty text
cannot have a character count of 5.)
With this commit in place, entering "hello" in the QLineEdit from the
sample app from QTBUG-109599 now results in replacement/mask
characters as shown on screen being reported for the text on the a11y
layer as well as long as QLineEdit::Password is used.
Demo using Accerciser's IPython console on Linux, with the
QLineEdit's accessible object selected in Accerciser's treeview
of the sample app's a11y hierarchy.
Without this commit in place:
In [11]: text = acc.queryText()
In [12]: text.characterCount
Out[12]: 5
In [13]: text.getText(0, -1)
Out[13]: ''
With this commit in place:
In [16]: text = acc.queryText()
In [17]: text.characterCount
Out[17]: 5
In [18]: text.getText(0, -1)
Out[18]: '●●●●●'
The Orca screen reader now announces "circle" as expected
when moving the cursor between the individual characters.
This also fixes the assert/crash seen with Narrator as mentioned
in QTBUG-109599, due to the above-mentioned mismatch between
reported character count and actual text length.
(QWindowsUiaTextRangeProvider::ExpandToEnclosingUnit relies on
the reported character count, then accesses the character by
index, but the actual string was empty.)
The QAccessibleLineEdit::text(QAccessible::Value) case
previously had manual handling to report mask characters.
Use the displayText there, too.
Adjust tst_QAccessibility::lineEditTest accordingly and
extend it to test the QAccessibleTextInterface in addition.
Since mask characters for passwords in QLineEdit::displayText
are platform-dependent, don't compare the text reported via
a11y interfaces to a hard-coded string, but instead check it
matches the displayText, but differs from the (plain) text.
Fixes: QTBUG-109599
Pick-to: 6.9
Change-Id: Ifebb4502b71e11d431b708eea613cb2a10e3f237
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 9756f62a63f58098513343714b4c0367c0a62dde)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There are applications that reuse menus for different user interface
elements. For example, a menu can be shown in the menubar or in a right
click context menu.
On the other hand, the QMenu currently locks on the first transient
parent and doesn't change it even after effectively getting attached to
another parent.
This change addresses the issue by making the QMenu re-evaluate the
transient parent on every show event and also ensuring that the caused
widget takes the precedence over other heuristics. The caused widget is
more closely related to the user input.
Pick-to: 6.9
Fixes: QTBUG-137467
Change-Id: I4f968833380121be1300af1a44237735b9a97b17
Reviewed-by: Tor Arne Vestbø <[email protected]>
(cherry picked from commit b29531aa954f8f099a5f8340d1b5b102cf36bfd7)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Replace some c-arrays with std::array<> for easier handling.
Pick-to: 6.9
Change-Id: I34766a2aad603d83187515626982adc976667d48
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit cfd52c5c5fc1f157186328962acd0391bb2c891b)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
Replace some for loops with range-based ones.
Pick-to: 6.9
Change-Id: Ib11fb4ec5785b8ec4c9c297684f90d7f5031fe58
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit a0c591c1203bd749b550814bd57597c1b297b26e)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We should not use defaulted arguments of non-trivial type, because
their construction and destruction, even if not passed, is repeated at
every call site, producing O(n) executable code.
By overloading out-of-line, we execute the same code at runtime, but
we have only one copy of the arg construction and destruction, in the
library, O(1) executable code production.
Found in API-review of QAccessibleWidgetV2.
Amends the start of the public history.
Can't pick further than (unreleased) 6.10, because this adds a new
symbol.
Task-number: QTBUG-98117
Change-Id: I705bca764992d9e7a2aa1021e0f94006b6817177
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit ab53b1293122518a512335b94491566305280851)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When QGroupBox::checked changes, it disables children, and enables
children that are not explicitly disabled. The group box itself however
remains enabled, so it's possible for user code to override the behavior
for individual child widgets, which can happen accidentally when
the order in which children are added, and the checked state of the
group box is changed, is inconsistent.
We won't change this as it has too many side effects. Instead, document
the conceptually deviation from enable/disable state propagation.
Pick-to: 6.9 6.8 6.5
Fixes: QTBUG-25938
Change-Id: I2aa37600ec932cd4ce721bfa98f63169eb0d0beb
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 9f93ddd2f3ce77a6d4ccd2de93bff95244d381d8)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
QAccessibleWidget (i.e. V1) has a protected dtor, so V2, which merely
extends V1 because we can't add new virtuals (via a new base class)
due to BC constraints, shouldn't differ in this respect.
Amends bb2121551c3d7b1af1553710bc211ba0e39b4212.
Found in API-review.
Change-Id: I0c9a00691a14c600b020ff1a9f433634bb7c8d24
Reviewed-by: Michael Weghorn <[email protected]>
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 5efcbf9fb83f24963f6bf40a8dc76571ab02e984)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We should not use defaulted arguments of non-trivial type, because
their construction and destruction, even if not passed, is repeated at
every call site, producing O(n) executable code.
By overloading out-of-line, we execute the same code at runtime, but
a) we have only one copy of the arg construction and destruction, in
the library, O(1) executable code production, and b) being out-of-line
in the library, the compiler can optimize the call to the base class
ctor away, if it wants to, because it sees its implementation.
Found in API-review.
Amends bb2121551c3d7b1af1553710bc211ba0e39b4212.
Task-number: QTBUG-98117
Change-Id: Ib6a3b15cc861893797c0445a91691132b21bbf2c
Reviewed-by: Ivan Solovev <[email protected]>
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 79ab9305c1a46e2205ee9be7af7edb78c4483901)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
| |
renderd -> rendered
Pick-to: 6.9 6.8 6.5
Change-Id: If4df3cd0dd7a11e30283bf5925dc6364d0d79225
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 3d405bfe6708ae5c6feed8eddcbb4bef2a732b48)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
There were some artifacts added (white pixels and bad anti aliasing)
when the icon was changed in e771e5e2d7ae77f46d01f087242e0f777fdc02ac
Pick-to: 6.9 6.8 6.5
Change-Id: I12a8658090a1f081321e53433d17fc19ad3e5f12
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit c15e9740b3abf6f4a76c6b958d883808f03c29e0)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Amends 7d0017cda8fde28a1130feaeecf41010b40e3cb3 which added the APIs,
and ef7e5ea616a3f04ff0ba5f6fe34487a332152b01 which only added the guard
for QListWidget.
Address header review comment.
Task-number: QTBUG-137478
Change-Id: I405190190f4d64dd810d7d35e9ef616ab0147b19
Reviewed-by: David Faure <[email protected]>
(cherry picked from commit 45202b26ce9d3b4fa68fe49f392941270a0ca41c)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this patch, we did not set the view item positions in the views.
This was fine as they were ignored until
b780eaf6a063a7efe03417cf6b7008a188e222a4 added a condition to early exit
on invalid positions. This then broke all qss background styling using
QStyleOptionViewItem::ViewItemPosition as they were always invalid.
Set the position when trying to draw a cell of the view before
reaching the code handling the qss rules for backgrounds.
Fixes: QTBUG-137346
Pick-to: 6.9 6.8
Change-Id: I83d7a3ea7b9bab98889791bb807988a74e355b93
Reviewed-by: Santhosh Kumar <[email protected]>
(cherry picked from commit 5aa1bc46217dc6f53fde8fe17608cf0e5f7a5e78)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
| |
most convenience functions in qfiledialog.cpp (e.g. getSaveFileUrl, getOpenFileUrl) open modal dialogs, with the exception of getOpenFileContent and saveFileContent. This makes every function consistently open modal dialogs
Fixes: QTBUG-137329
Pick-to: 6.9
Change-Id: I48952144ed15596b9acba3230c63cece613fb045
Reviewed-by: David Faure <[email protected]>
Reviewed-by: Axel Spoerl <[email protected]>
(cherry picked from commit 25fdc044f58d426c3056409e2883becdc3cf0bd1)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
The iQRhiWidget API got changed in commits acebb97b5880, acebb97b58807d1d591.
Pick-to: 6.9 6.8
Change-Id: I7791b1a61d94f33ba01cfe22e63ecfdc7b81022b
Reviewed-by: Laszlo Agocs <[email protected]>
Reviewed-by: Volker Hilsheimer <[email protected]>
(cherry picked from commit 95229bb7d039bb9e16a2ffd126d7ff1e25b37d32)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
d4c518b210ad56cb51c17e6e1b4a81b0deb7253c has implemented a reset of the
icon on a style change.
This has caused a regression, because it overrode an icon set by a
style sheet.
Do not reset the icon if the new style is a QStyleSheetStyle.
Amdends d4c518b210ad56cb51c17e6e1b4a81b0deb7253c.
Fixes: QTBUG-137011
Pick-to: 6.9 6.8
Change-Id: Ib77faa03c867b2660a45bdc3ab94e7d739eed4f8
Reviewed-by: Christian Ehrlicher <[email protected]>
(cherry picked from commit 839d569dc27cfa5188db477893899d849ac26ea5)
Reviewed-by: Qt Cherry-pick Bot <[email protected]>
|