This commit is contained in:
Jan Grulich 2023-01-05 17:03:30 +01:00
parent c625538cf5
commit 94dd25600e
10 changed files with 128 additions and 21 deletions

1
.gitignore vendored
View File

@ -16,3 +16,4 @@
/qtquickcontrols2-everywhere-opensource-src-5.15.5.tar.xz /qtquickcontrols2-everywhere-opensource-src-5.15.5.tar.xz
/qtquickcontrols2-everywhere-opensource-src-5.15.6.tar.xz /qtquickcontrols2-everywhere-opensource-src-5.15.6.tar.xz
/qtquickcontrols2-everywhere-opensource-src-5.15.7.tar.xz /qtquickcontrols2-everywhere-opensource-src-5.15.7.tar.xz
/qtquickcontrols2-everywhere-opensource-src-5.15.8.tar.xz

View File

@ -1,7 +1,7 @@
From 77b25c91dfcc5b4320b25c30ad8955c41b7d2fdb Mon Sep 17 00:00:00 2001 From cee73a3e19048ab056edc857bae28e9f8d7d6c4b Mon Sep 17 00:00:00 2001
From: David Redondo <qt@david-redondo.de> From: David Redondo <qt@david-redondo.de>
Date: Mon, 19 Jul 2021 10:06:17 +0200 Date: Mon, 19 Jul 2021 10:06:17 +0200
Subject: [PATCH 1/5] Unset mouseGrabberPopup if it's removed from children Subject: [PATCH 1/7] Unset mouseGrabberPopup if it's removed from children
The mouseGrabberPopup is supposed to be unset in handleRelease, however The mouseGrabberPopup is supposed to be unset in handleRelease, however
when the exit transition of the mouseGrabberPopup (that closed itself on when the exit transition of the mouseGrabberPopup (that closed itself on
@ -30,7 +30,7 @@ Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
create mode 100644 tests/auto/qquickpopup/data/releaseAfterExitTransition.qml create mode 100644 tests/auto/qquickpopup/data/releaseAfterExitTransition.qml
diff --git a/src/quicktemplates2/qquickoverlay.cpp b/src/quicktemplates2/qquickoverlay.cpp diff --git a/src/quicktemplates2/qquickoverlay.cpp b/src/quicktemplates2/qquickoverlay.cpp
index b8d417f29..c8cd142ae 100644 index 91bd59184..0ce518f84 100644
--- a/src/quicktemplates2/qquickoverlay.cpp --- a/src/quicktemplates2/qquickoverlay.cpp
+++ b/src/quicktemplates2/qquickoverlay.cpp +++ b/src/quicktemplates2/qquickoverlay.cpp
@@ -399,8 +399,11 @@ void QQuickOverlay::itemChange(ItemChange change, const ItemChangeData &data) @@ -399,8 +399,11 @@ void QQuickOverlay::itemChange(ItemChange change, const ItemChangeData &data)
@ -131,10 +131,10 @@ index 000000000..9e4598b9f
+ } + }
+} +}
diff --git a/tests/auto/qquickpopup/tst_qquickpopup.cpp b/tests/auto/qquickpopup/tst_qquickpopup.cpp diff --git a/tests/auto/qquickpopup/tst_qquickpopup.cpp b/tests/auto/qquickpopup/tst_qquickpopup.cpp
index ede3640c2..f1840946b 100644 index 54952d128..3d50e2dd4 100644
--- a/tests/auto/qquickpopup/tst_qquickpopup.cpp --- a/tests/auto/qquickpopup/tst_qquickpopup.cpp
+++ b/tests/auto/qquickpopup/tst_qquickpopup.cpp +++ b/tests/auto/qquickpopup/tst_qquickpopup.cpp
@@ -97,6 +97,7 @@ private slots: @@ -100,6 +100,7 @@ private slots:
void invisibleToolTipOpen(); void invisibleToolTipOpen();
void centerInOverlayWithinStackViewItem(); void centerInOverlayWithinStackViewItem();
void destroyDuringExitTransition(); void destroyDuringExitTransition();
@ -142,7 +142,7 @@ index ede3640c2..f1840946b 100644
}; };
void tst_QQuickPopup::initTestCase() void tst_QQuickPopup::initTestCase()
@@ -1459,6 +1460,34 @@ void tst_QQuickPopup::destroyDuringExitTransition() @@ -1575,6 +1576,34 @@ void tst_QQuickPopup::destroyDuringExitTransition()
QVERIFY(!button->isDown()); QVERIFY(!button->isDown());
} }
@ -178,5 +178,5 @@ index ede3640c2..f1840946b 100644
#include "tst_qquickpopup.moc" #include "tst_qquickpopup.moc"
-- --
2.37.3 2.39.0

View File

@ -1,7 +1,7 @@
From 4ec806a511090cd6298fa783d63a7a46f9174a21 Mon Sep 17 00:00:00 2001 From eea00f031d5ef3b0691ebe87e9e61dac805ca1cc Mon Sep 17 00:00:00 2001
From: Aleix Pol <aleixpol@kde.org> From: Aleix Pol <aleixpol@kde.org>
Date: Tue, 4 Jan 2022 16:34:16 +0100 Date: Tue, 4 Jan 2022 16:34:16 +0100
Subject: [PATCH 2/5] Ensure we don't crash when changing sizes after cleanup Subject: [PATCH 2/7] Ensure we don't crash when changing sizes after cleanup
This addresses the problems I've seen during destruction. Only This addresses the problems I've seen during destruction. Only
encountered it when using complex layouts on a DialogButtonBox. encountered it when using complex layouts on a DialogButtonBox.
@ -79,5 +79,5 @@ index e6db14eb5..6197d1547 100644
qreal maxHeight = 0; qreal maxHeight = 0;
for (int i = 0; i < count; ++i) { for (int i = 0; i < count; ++i) {
-- --
2.37.3 2.39.0

View File

@ -1,7 +1,7 @@
From 034a6e6f046d6ce97395ecad1b31b6a920f980d4 Mon Sep 17 00:00:00 2001 From 5ccf04cc3cbfb8539b71e8f1a0717ee7fa798ee6 Mon Sep 17 00:00:00 2001
From: Oliver Eftevaag <oliver.eftevaag@qt.io> From: Oliver Eftevaag <oliver.eftevaag@qt.io>
Date: Wed, 19 Jan 2022 22:09:56 +0100 Date: Wed, 19 Jan 2022 22:09:56 +0100
Subject: [PATCH 3/5] QQuickAction: don't grab the same shortcut multiple times Subject: [PATCH 3/7] QQuickAction: don't grab the same shortcut multiple times
If the entry for the QQuickItem that the QQuickAction is set on has If the entry for the QQuickItem that the QQuickAction is set on has
already grabbed the shortcut, then m_shortcutId is no longer 0 and we already grabbed the shortcut, then m_shortcutId is no longer 0 and we
@ -45,5 +45,5 @@ index 2041e7741..8610cdfae 100644
Qt::ShortcutContext context = Qt::WindowShortcut; // TODO Qt::ShortcutContext context = Qt::WindowShortcut; // TODO
-- --
2.37.3 2.39.0

View File

@ -1,7 +1,7 @@
From 1bd1ceae8b8340f9d0e06b55a301c4642324d64a Mon Sep 17 00:00:00 2001 From 3dbb20b182650fce15777feaac31a5db2e04fa85 Mon Sep 17 00:00:00 2001
From: Ulf Hermann <ulf.hermann@qt.io> From: Ulf Hermann <ulf.hermann@qt.io>
Date: Tue, 11 Jan 2022 12:42:47 +0100 Date: Tue, 11 Jan 2022 12:42:47 +0100
Subject: [PATCH 4/5] QQuickAbstractButton: fix crash on destruction Subject: [PATCH 4/7] QQuickAbstractButton: fix crash on destruction
If we listen for size changes we also need to remove the object listened If we listen for size changes we also need to remove the object listened
to when it's deleted. to when it's deleted.
@ -85,5 +85,5 @@ index b3fab41ca..10b6baa02 100644
+ } + }
} }
-- --
2.37.3 2.39.0

View File

@ -1,7 +1,7 @@
From 9ff77702cc3649cbaf94046742d682d77cdea698 Mon Sep 17 00:00:00 2001 From 7651ffc8762aa5eca5c7d519b91cd8a0d4e3408a Mon Sep 17 00:00:00 2001
From: Mitch Curtis <mitch.curtis@qt.io> From: Mitch Curtis <mitch.curtis@qt.io>
Date: Mon, 18 Jul 2022 15:21:49 +0800 Date: Mon, 18 Jul 2022 15:21:49 +0800
Subject: [PATCH 5/5] Fix scroll bars not showing up when binding to standalone Subject: [PATCH 5/7] Fix scroll bars not showing up when binding to standalone
contentItem contentItem
908aa77d16e00f2bccc0ddae0f8b61955c56a6a1 hid old scroll bars, but 908aa77d16e00f2bccc0ddae0f8b61955c56a6a1 hid old scroll bars, but
@ -175,5 +175,5 @@ index 0e8b08352..cd4931184 100644
+ } + }
} }
-- --
2.37.3 2.39.0

View File

@ -0,0 +1,55 @@
From 8fba89821b1978468863a1d23a6146441960c502 Mon Sep 17 00:00:00 2001
From: Harald Sitter <sitter@kde.org>
Date: Wed, 2 Nov 2022 12:39:11 +0100
Subject: [PATCH 6/7] implement a11y pressing of qquickabstractbutton
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
this adds a pressAction default implementation that simply calls trigger
(which in turn either triggers the action or emits a click), allowing
accessibility tools to issue a button press via a11y api.
Change-Id: I75b4fb8680835093b1135fdbf4329aaa85dc3243
Reviewed-by: Arjen Hiemstra <ahiemstra@heimr.nl>
Reviewed-by: Aleix Pol Gonzalez <aleixpol@kde.org>
Reviewed-by: Jan Arve Sæther <jan-arve.saether@qt.io>
(cherry picked from commit 705659eaaf47af72eeb5f5c742e18a5c665a76eb in
qtdeclarative)
---
src/quicktemplates2/qquickabstractbutton.cpp | 6 ++++++
src/quicktemplates2/qquickabstractbutton_p.h | 1 +
2 files changed, 7 insertions(+)
diff --git a/src/quicktemplates2/qquickabstractbutton.cpp b/src/quicktemplates2/qquickabstractbutton.cpp
index 1df0c706d..b81fbea0b 100644
--- a/src/quicktemplates2/qquickabstractbutton.cpp
+++ b/src/quicktemplates2/qquickabstractbutton.cpp
@@ -1187,6 +1187,12 @@ QAccessible::Role QQuickAbstractButton::accessibleRole() const
}
return QAccessible::Button;
}
+
+void QQuickAbstractButton::accessiblePressAction()
+{
+ Q_D(QQuickAbstractButton);
+ d->trigger();
+}
#endif
QT_END_NAMESPACE
diff --git a/src/quicktemplates2/qquickabstractbutton_p.h b/src/quicktemplates2/qquickabstractbutton_p.h
index 0fa48980e..ab66220d0 100644
--- a/src/quicktemplates2/qquickabstractbutton_p.h
+++ b/src/quicktemplates2/qquickabstractbutton_p.h
@@ -209,6 +209,7 @@ protected:
#if QT_CONFIG(accessibility)
void accessibilityActiveChanged(bool active) override;
QAccessible::Role accessibleRole() const override;
+ Q_INVOKABLE void accessiblePressAction();
#endif
private:
--
2.39.0

View File

@ -0,0 +1,45 @@
From 56ce8233382a091a8476c831edd416b5f704ae4f Mon Sep 17 00:00:00 2001
From: Inho Lee <inho.lee@qt.io>
Date: Mon, 22 Aug 2022 21:05:00 +0800
Subject: [PATCH 7/7] Fix the popup position of a Menu
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
QPA code should operate in native coord.
Treat QWidgetPlatformMenu::showPopup's input as native coord.
Fixes: QTBUG-94619
Fixes: QTBUG-94783
Change-Id: Iaa030c96d84e4a588e625fe191e4324f70be961f
Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
(cherry picked from commit f8cf17166c9af147f0b8fea72f5b4a8a6098a5d7 in
qtdeclarative)
---
src/imports/platform/widgets/qwidgetplatformmenu.cpp | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/imports/platform/widgets/qwidgetplatformmenu.cpp b/src/imports/platform/widgets/qwidgetplatformmenu.cpp
index e5fe734f7..e36922775 100644
--- a/src/imports/platform/widgets/qwidgetplatformmenu.cpp
+++ b/src/imports/platform/widgets/qwidgetplatformmenu.cpp
@@ -38,6 +38,7 @@
#include "qwidgetplatformmenuitem_p.h"
#include <QtGui/qwindow.h>
+#include <QtGui/private/qhighdpiscaling_p.h>
#include <QtWidgets/qmenu.h>
#include <QtWidgets/qaction.h>
@@ -145,7 +146,7 @@ void QWidgetPlatformMenu::showPopup(const QWindow *window, const QRect &targetRe
QPoint targetPos = targetRect.bottomLeft();
if (window)
- targetPos = window->mapToGlobal(targetPos);
+ targetPos = window->mapToGlobal(QHighDpi::fromNativeLocalPosition(targetPos, window));
const QWidgetPlatformMenuItem *widgetItem = qobject_cast<const QWidgetPlatformMenuItem *>(item);
m_menu->popup(targetPos, widgetItem ? widgetItem->action() : nullptr);
--
2.39.0

View File

@ -2,7 +2,7 @@
Name: qt5-%{qt_module} Name: qt5-%{qt_module}
Summary: Qt5 - module with set of QtQuick controls for embedded Summary: Qt5 - module with set of QtQuick controls for embedded
Version: 5.15.7 Version: 5.15.8
Release: 1%{?dist} Release: 1%{?dist}
License: GPLv2+ or LGPLv3 and GFDL License: GPLv2+ or LGPLv3 and GFDL
@ -15,6 +15,9 @@ Patch2: 0002-Ensure-we-don-t-crash-when-changing-sizes-after-clea.patch
Patch3: 0003-QQuickAction-don-t-grab-the-same-shortcut-multiple-t.patch Patch3: 0003-QQuickAction-don-t-grab-the-same-shortcut-multiple-t.patch
Patch4: 0004-QQuickAbstractButton-fix-crash-on-destruction.patch Patch4: 0004-QQuickAbstractButton-fix-crash-on-destruction.patch
Patch5: 0005-Fix-scroll-bars-not-showing-up-when-binding-to-stand.patch Patch5: 0005-Fix-scroll-bars-not-showing-up-when-binding-to-stand.patch
Patch6: 0006-implement-a11y-pressing-of-qquickabstractbutton.patch
Patch7: 0007-Fix-the-popup-position-of-a-Menu.patch
# filter qml provides # filter qml provides
%global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$ %global __provides_exclude_from ^%{_qt5_archdatadir}/qml/.*\\.so$
@ -109,6 +112,9 @@ rm -f %{buildroot}%{_qt5_libdir}/libQt5*.la
%{_libdir}/cmake/Qt5QuickTemplates2/ %{_libdir}/cmake/Qt5QuickTemplates2/
%changelog %changelog
* Thu Jan 05 2023 Jan Grulich <jgrulich@redhat.com> - 5.15.8-1
- 5.15.8
* Mon Oct 31 2022 Jan Grulich <jgrulich@redhat.com> - 5.15.7-1 * Mon Oct 31 2022 Jan Grulich <jgrulich@redhat.com> - 5.15.7-1
- 5.15.7 - 5.15.7

View File

@ -1 +1 @@
SHA512 (qtquickcontrols2-everywhere-opensource-src-5.15.7.tar.xz) = f49e330593b23ab9e84874a7cee1583df9355dd68d7c25e57fba080997b860b86f9003190e5d9a5b393efcb143fd20866daf2c8088a769e3094d6cf9607febd5 SHA512 (qtquickcontrols2-everywhere-opensource-src-5.15.8.tar.xz) = d42fd70f1d9d1d951e5a8eee886311bf70f0c9b21718b3b76b87ee38fee010c654abc82259e73883c9aca36dafcefb25e5297bf34213cafe4da6a68c4f45d816