public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kxmlgui/files/, kde-frameworks/kxmlgui/
@ 2019-01-30 17:28 Andreas Sturmlechner
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Sturmlechner @ 2019-01-30 17:28 UTC (permalink / raw
  To: gentoo-commits

commit:     547bdf84d94ecfcca5aa09cc2ebd6d1e8fc455ac
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Jan 30 17:03:40 2019 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jan 30 17:03:40 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=547bdf84

kde-frameworks/kxmlgui: Fix Qt5 app artifacts w/ kcheckaccelerators

Fixes long-standing bug in applications under Plasma-5 not linking to KXmlGui,
as seen in QtCreator and Clementine e.g.

KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=337491
Package-Manager: Portage-2.3.59, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/kxmlgui-5.54.0-kcheckaccelerators.patch  | 79 ++++++++++++++++++++++
 kde-frameworks/kxmlgui/kxmlgui-5.54.0-r1.ebuild    | 54 +++++++++++++++
 2 files changed, 133 insertions(+)

diff --git a/kde-frameworks/kxmlgui/files/kxmlgui-5.54.0-kcheckaccelerators.patch b/kde-frameworks/kxmlgui/files/kxmlgui-5.54.0-kcheckaccelerators.patch
new file mode 100644
index 00000000000..0882d5f09f9
--- /dev/null
+++ b/kde-frameworks/kxmlgui/files/kxmlgui-5.54.0-kcheckaccelerators.patch
@@ -0,0 +1,79 @@
+From 02b523bad09aab062355e46771889b0f3709692f Mon Sep 17 00:00:00 2001
+From: Albert Astals Cid <aacid@kde.org>
+Date: Sat, 12 Jan 2019 18:39:33 +0100
+Subject: Make KCheckAccelerators less invasive for apps that don't directly
+ link to KXmlGui
+
+Summary: BUGS: 337491
+
+Test Plan:
+Ran qtcreator and it no longer has the & in Details
+Added some debug and checked that okular still gets the code called
+
+Reviewers: anthonyfieroni
+
+Reviewed By: anthonyfieroni
+
+Subscribers: davidedmundson, anthonyfieroni, kde-frameworks-devel
+
+Tags: #frameworks
+
+Differential Revision: https://phabricator.kde.org/D18204
+---
+ src/kcheckaccelerators.cpp | 38 ++++++++++++++++++++++++++++++++++++--
+ 1 file changed, 36 insertions(+), 2 deletions(-)
+
+diff --git a/src/kcheckaccelerators.cpp b/src/kcheckaccelerators.cpp
+index 13fc012..e08447d 100644
+--- a/src/kcheckaccelerators.cpp
++++ b/src/kcheckaccelerators.cpp
+@@ -80,10 +80,44 @@ public Q_SLOTS:
+ 
+ static void startupFunc()
+ {
+-    // Call initiateIfNeeded once we're in the event loop
+-    // This is to prevent using KSharedConfig before main() can set the app name
++    // Static because in some cases this is called multiple times
++    // but if an application had any of the bad cases we always want
++    // to skip the check
++    static bool doCheckAccelerators = true;
++
++    if (!doCheckAccelerators) {
++        return;
++    }
++
+     QCoreApplication *app = QCoreApplication::instance();
++    if (!app) {
++        // We're being loaded by something that doesn't have a QCoreApplication
++        // this would probably crash at some later point since we do use qApp->
++        // quite a lot, so skip the magic
++        doCheckAccelerators = false;
++        return;
++    }
++
++    if (!QCoreApplication::startingUp()) {
++        // If the app has already started, this means we're not being run as part of
++        // qt_call_pre_routines, which most probably means that we're being run as part
++        // of KXmlGui being loaded as part of some plugin of the app, so don't
++        // do any magic
++        doCheckAccelerators = false;
++        return;
++    }
++
++    if (!QCoreApplication::eventDispatcher()) {
++        // We are called with event dispatcher being null when KXmlGui is being loaded
++        // through plasma-integration instead of being linked to the app (i.e. QtCreator vs Okular)
++        // For apps that don't link directly to KXmlGui do not do the accelerator magic
++        doCheckAccelerators = false;
++        return;
++    }
++
+     KCheckAcceleratorsInitializer *initializer = new KCheckAcceleratorsInitializer(app);
++    // Call initiateIfNeeded once we're in the event loop
++    // This is to prevent using KSharedConfig before main() can set the app name
+     QMetaObject::invokeMethod(initializer, "initiateIfNeeded", Qt::QueuedConnection);
+ }
+ 
+-- 
+cgit v1.1
+

diff --git a/kde-frameworks/kxmlgui/kxmlgui-5.54.0-r1.ebuild b/kde-frameworks/kxmlgui/kxmlgui-5.54.0-r1.ebuild
new file mode 100644
index 00000000000..eac5c3cc9e2
--- /dev/null
+++ b/kde-frameworks/kxmlgui/kxmlgui-5.54.0-r1.ebuild
@@ -0,0 +1,54 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+VIRTUALX_REQUIRED="test"
+inherit kde5
+
+DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
+KEYWORDS="~amd64 ~arm ~arm64 ~x86"
+LICENSE="LGPL-2+"
+IUSE="attica"
+
+# slot op: includes QtCore/private/qlocale_p.h
+RDEPEND="
+	$(add_frameworks_dep kconfig)
+	$(add_frameworks_dep kconfigwidgets)
+	$(add_frameworks_dep kcoreaddons)
+	$(add_frameworks_dep kglobalaccel)
+	$(add_frameworks_dep ki18n)
+	$(add_frameworks_dep kiconthemes)
+	$(add_frameworks_dep kitemviews)
+	$(add_frameworks_dep ktextwidgets)
+	$(add_frameworks_dep kwidgetsaddons)
+	$(add_frameworks_dep kwindowsystem)
+	$(add_qt_dep qtcore '' '' '5=')
+	$(add_qt_dep qtdbus)
+	$(add_qt_dep qtgui)
+	$(add_qt_dep qtnetwork 'ssl')
+	$(add_qt_dep qtprintsupport)
+	$(add_qt_dep qtwidgets)
+	$(add_qt_dep qtxml)
+	attica? ( $(add_frameworks_dep attica) )
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=( "${FILESDIR}/${P}-kcheckaccelerators.patch" )
+
+src_configure() {
+	local mycmakeargs=(
+		$(cmake-utils_use_find_package attica KF5Attica)
+	)
+
+	kde5_src_configure
+}
+
+src_test() {
+	# Files are missing; whatever. Bugs 650290, 668198
+	local myctestargs=(
+		-E "(ktoolbar_unittest|kxmlgui_unittest)"
+	)
+
+	kde5_src_test
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kxmlgui/files/, kde-frameworks/kxmlgui/
@ 2020-12-29 19:54 Andreas Sturmlechner
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Sturmlechner @ 2020-12-29 19:54 UTC (permalink / raw
  To: gentoo-commits

commit:     d16e0dec7a73f0bdbb00d8f5e679d87b6f4a3563
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Dec 29 16:49:18 2020 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Tue Dec 29 19:54:08 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d16e0dec

kde-frameworks/kxmlgui: Fix key recording by setWindow

KDE-bug: https://bugs.kde.org/show_bug.cgi?id=430388
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 .../files/kxmlgui-5.77.0-fix-key-recording.patch   | 29 +++++++++++
 kde-frameworks/kxmlgui/kxmlgui-5.77.0-r1.ebuild    | 58 ++++++++++++++++++++++
 2 files changed, 87 insertions(+)

diff --git a/kde-frameworks/kxmlgui/files/kxmlgui-5.77.0-fix-key-recording.patch b/kde-frameworks/kxmlgui/files/kxmlgui-5.77.0-fix-key-recording.patch
new file mode 100644
index 00000000000..ae1269ac667
--- /dev/null
+++ b/kde-frameworks/kxmlgui/files/kxmlgui-5.77.0-fix-key-recording.patch
@@ -0,0 +1,29 @@
+From 1bd9ac05b0eed3582937829150b31ea48fd95bb0 Mon Sep 17 00:00:00 2001
+From: Weng Xuetian <wengxt@gmail.com>
+Date: Thu, 17 Dec 2020 11:12:40 -0800
+Subject: [PATCH] Fix key recording by setWindow before capture starts.
+
+It is common that during the construction of widget, it is not yet added to
+a window. Thus windowHandle will simply return null in this case. Always set
+the window to before the capture starts.
+
+BUG: 430388
+---
+ src/kkeysequencewidget.cpp | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/src/kkeysequencewidget.cpp b/src/kkeysequencewidget.cpp
+index a51c6cc..c1f5c42 100644
+--- a/src/kkeysequencewidget.cpp
++++ b/src/kkeysequencewidget.cpp
+@@ -493,6 +493,7 @@ void KKeySequenceWidget::setCheckActionCollections(const QList<KActionCollection
+ //slot
+ void KKeySequenceWidget::captureKeySequence()
+ {
++    d->recorder->setWindow(window()->windowHandle());
+     d->recorder->startRecording();
+ }
+ 
+-- 
+GitLab
+

diff --git a/kde-frameworks/kxmlgui/kxmlgui-5.77.0-r1.ebuild b/kde-frameworks/kxmlgui/kxmlgui-5.77.0-r1.ebuild
new file mode 100644
index 00000000000..5a6e29e0ebb
--- /dev/null
+++ b/kde-frameworks/kxmlgui/kxmlgui-5.77.0-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.15.1
+VIRTUALX_REQUIRED="test"
+inherit ecm kde.org
+
+DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+LICENSE="LGPL-2+"
+IUSE=""
+
+# slot op: includes QtCore/private/qlocale_p.h
+DEPEND="
+	>=dev-qt/qtcore-${QTMIN}:5=
+	>=dev-qt/qtdbus-${QTMIN}:5
+	>=dev-qt/qtgui-${QTMIN}:5
+	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+	>=dev-qt/qtprintsupport-${QTMIN}:5
+	>=dev-qt/qtwidgets-${QTMIN}:5
+	>=dev-qt/qtxml-${QTMIN}:5
+	=kde-frameworks/kconfig-${PVCUT}*:5
+	=kde-frameworks/kconfigwidgets-${PVCUT}*:5
+	=kde-frameworks/kcoreaddons-${PVCUT}*:5
+	=kde-frameworks/kglobalaccel-${PVCUT}*:5
+	=kde-frameworks/kguiaddons-${PVCUT}*:5
+	=kde-frameworks/ki18n-${PVCUT}*:5
+	=kde-frameworks/kiconthemes-${PVCUT}*:5
+	=kde-frameworks/kitemviews-${PVCUT}*:5
+	=kde-frameworks/kwidgetsaddons-${PVCUT}*:5
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-no-kwindowsystem.patch
+	"${FILESDIR}"/${P}-fix-key-recording.patch
+)
+
+src_configure() {
+	local mycmakeargs=(
+		-DCMAKE_DISABLE_FIND_PACKAGE_KF5Attica=ON
+	)
+
+	ecm_src_configure
+}
+
+src_test() {
+	# Files are missing; whatever. Bugs 650290, 668198
+	local myctestargs=(
+		-E "(ktoolbar_unittest|kxmlgui_unittest)"
+	)
+
+	ecm_src_test
+}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

* [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kxmlgui/files/, kde-frameworks/kxmlgui/
@ 2021-01-11 12:28 Andreas Sturmlechner
  0 siblings, 0 replies; 3+ messages in thread
From: Andreas Sturmlechner @ 2021-01-11 12:28 UTC (permalink / raw
  To: gentoo-commits

commit:     9c4513f8bc62b1e748246f83b1834c1b6ab3a464
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan  9 09:49:33 2021 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Mon Jan 11 12:27:55 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9c4513f8

kde-frameworks/kxmlgui: drop 5.74.0*

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 kde-frameworks/kxmlgui/Manifest                    |  1 -
 ...-5.74.0-fix-multiple-tabs-popup-on-logout.patch | 68 ----------------------
 kde-frameworks/kxmlgui/kxmlgui-5.74.0-r2.ebuild    | 55 -----------------
 3 files changed, 124 deletions(-)

diff --git a/kde-frameworks/kxmlgui/Manifest b/kde-frameworks/kxmlgui/Manifest
index a78fa1a0afa..7888f563e96 100644
--- a/kde-frameworks/kxmlgui/Manifest
+++ b/kde-frameworks/kxmlgui/Manifest
@@ -1,3 +1,2 @@
-DIST kxmlgui-5.74.0.tar.xz 864784 BLAKE2B d6cc88603f0036415981411bbaeca6ba7877df085d5b5095b04b7d5567d0e1f23ad3d8c8b1472a365018e9360ee4351c7523fd791d4e53ecca3e9143cc8f2b72 SHA512 98f3e65c30a095d17c0512894bbba0bb172b2044652a0d23324f843489f5bb726359be40a9d68a7916d45a2a6e135f0bbbf7924b35a1939611b75ad6d44ccd92
 DIST kxmlgui-5.77.0.tar.xz 860548 BLAKE2B c862dd9524698c5fc3f83933a20b229ad8b52c94b3b5a703f64518bd4e13543f46bfa2dcf85ed21a0d19c0d72e9efafe412f6cbf6698c14e4827ad4f38da6afa SHA512 bd0e9f0b41927f6e90b71328f5e680a9d83a9c9f502edefc78f898fcab6be3cf553409b63e117c80cc8541b7a48ceb66de49fbcc6e7c8afc33a0d9fd901512b0
 DIST kxmlgui-5.78.0.tar.xz 860428 BLAKE2B 4d92a748ebd107d7f6388b33b1b4cd288779866a17ac97f6899a660fe0f0b47da31dfa1d63243bd53608b89efb280095fd56bcb689edf31c159e37832277ee8a SHA512 187ed211c369b9b6195a164ed0b41ddf87397b5677e38b84f73ade1cbf62388e9665ef3d58ce6bcd7d56754a50e57ea0cbd2cf56cdde5b94fd8d8c2cc6484790

diff --git a/kde-frameworks/kxmlgui/files/kxmlgui-5.74.0-fix-multiple-tabs-popup-on-logout.patch b/kde-frameworks/kxmlgui/files/kxmlgui-5.74.0-fix-multiple-tabs-popup-on-logout.patch
deleted file mode 100644
index f49999eb649..00000000000
--- a/kde-frameworks/kxmlgui/files/kxmlgui-5.74.0-fix-multiple-tabs-popup-on-logout.patch
+++ /dev/null
@@ -1,68 +0,0 @@
-From 7cefdcf3d04669978aa28481d8ea274402935374 Mon Sep 17 00:00:00 2001
-From: Allan Sandfeld Jensen <allan.jensen@qt.io>
-Date: Mon, 10 Aug 2020 09:54:14 +0200
-Subject: [PATCH] Handle double close in main window
-
-After a bug fix in Qt 5.14 we now get real close events for unclosed windows
-when the application closes, so we would be getting two close events breaking
-our logic when when to suppress on-close dialogs.
-
-Suppress the real close event after we have handled our own simulated one. Also
-works if there is no real close event.
-
-BUG: 416728
-
-* Fixup after git merged the wrong commit
----
- src/kmainwindow.cpp | 8 ++++++++
- src/kmainwindow_p.h | 1 +
- 2 files changed, 9 insertions(+)
-
-diff --git a/src/kmainwindow.cpp b/src/kmainwindow.cpp
-index b9bc2b6..33babb9 100644
---- a/src/kmainwindow.cpp
-+++ b/src/kmainwindow.cpp
-@@ -269,6 +269,7 @@ void KMainWindowPrivate::init(KMainWindow *_q)
-     letDirtySettings = true;
- 
-     sizeApplied = false;
-+    suppressCloseEvent = false;
- }
- 
- static bool endsWithHashNumber(const QString &s)
-@@ -532,6 +533,10 @@ void KMainWindow::appHelpActivated()
- void KMainWindow::closeEvent(QCloseEvent *e)
- {
-     K_D(KMainWindow);
-+    if (d->suppressCloseEvent) {
-+        e->accept();
-+        return;
-+    }
- 
-     // Save settings if auto-save is enabled, and settings have changed
-     if (d->settingsTimer && d->settingsTimer->isActive()) {
-@@ -556,6 +561,9 @@ void KMainWindow::closeEvent(QCloseEvent *e)
-     } else {
-         e->ignore();    //if the window should not be closed, don't close it
-     }
-+    // If saving session, we are processing a fake close event, and might get the real one later.
-+    if (e->isAccepted() && qApp->isSavingSession())
-+        d->suppressCloseEvent = true;
- }
- 
- bool KMainWindow::queryClose()
-diff --git a/src/kmainwindow_p.h b/src/kmainwindow_p.h
-index 13f6f19..bdd1eb4 100644
---- a/src/kmainwindow_p.h
-+++ b/src/kmainwindow_p.h
-@@ -33,6 +33,7 @@ public:
-     bool settingsDirty: 1;
-     bool autoSaveWindowSize: 1;
-     bool sizeApplied: 1;
-+    bool suppressCloseEvent: 1;
-     KConfigGroup autoSaveGroup;
-     QTimer *settingsTimer;
-     QTimer *sizeTimer;
--- 
-2.28.0
-

diff --git a/kde-frameworks/kxmlgui/kxmlgui-5.74.0-r2.ebuild b/kde-frameworks/kxmlgui/kxmlgui-5.74.0-r2.ebuild
deleted file mode 100644
index 405c52cf9ed..00000000000
--- a/kde-frameworks/kxmlgui/kxmlgui-5.74.0-r2.ebuild
+++ /dev/null
@@ -1,55 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-ECM_DESIGNERPLUGIN="true"
-PVCUT=$(ver_cut 1-2)
-QTMIN=5.15.1
-VIRTUALX_REQUIRED="test"
-inherit ecm kde.org
-
-DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
-KEYWORDS="amd64 ~arm arm64 ~ppc64 x86"
-LICENSE="LGPL-2+"
-IUSE=""
-
-# slot op: includes QtCore/private/qlocale_p.h
-DEPEND="
-	>=dev-qt/qtcore-${QTMIN}:5=
-	>=dev-qt/qtdbus-${QTMIN}:5
-	>=dev-qt/qtgui-${QTMIN}:5
-	>=dev-qt/qtnetwork-${QTMIN}:5[ssl]
-	>=dev-qt/qtprintsupport-${QTMIN}:5
-	>=dev-qt/qtwidgets-${QTMIN}:5
-	>=dev-qt/qtxml-${QTMIN}:5
-	=kde-frameworks/kconfig-${PVCUT}*:5
-	=kde-frameworks/kconfigwidgets-${PVCUT}*:5
-	=kde-frameworks/kcoreaddons-${PVCUT}*:5
-	=kde-frameworks/kglobalaccel-${PVCUT}*:5
-	=kde-frameworks/ki18n-${PVCUT}*:5
-	=kde-frameworks/kiconthemes-${PVCUT}*:5
-	=kde-frameworks/kitemviews-${PVCUT}*:5
-	=kde-frameworks/kwidgetsaddons-${PVCUT}*:5
-	=kde-frameworks/kwindowsystem-${PVCUT}*:5
-"
-RDEPEND="${DEPEND}"
-
-PATCHES=( "${FILESDIR}"/${P}-fix-multiple-tabs-popup-on-logout.patch )
-
-src_configure() {
-	local mycmakeargs=(
-		-DCMAKE_DISABLE_FIND_PACKAGE_KF5Attica=ON
-	)
-
-	ecm_src_configure
-}
-
-src_test() {
-	# Files are missing; whatever. Bugs 650290, 668198
-	local myctestargs=(
-		-E "(ktoolbar_unittest|kxmlgui_unittest)"
-	)
-
-	ecm_src_test
-}


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2021-01-11 12:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-30 17:28 [gentoo-commits] repo/gentoo:master commit in: kde-frameworks/kxmlgui/files/, kde-frameworks/kxmlgui/ Andreas Sturmlechner
  -- strict thread matches above, loose matches on Subject: below --
2020-12-29 19:54 Andreas Sturmlechner
2021-01-11 12:28 Andreas Sturmlechner

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox