Gentoo Archives: gentoo-commits

From: Andreas Sturmlechner <asturm@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: kde-apps/akonadi-calendar/files/, kde-apps/akonadi-calendar/
Date: Sat, 28 Jan 2023 22:48:49
Message-Id: 1674945146.7530e75c45ce9caa4e5cfd2722f797af4c90adda.asturm@gentoo
1 commit: 7530e75c45ce9caa4e5cfd2722f797af4c90adda
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Sat Jan 28 22:29:06 2023 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Sat Jan 28 22:32:26 2023 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7530e75c
7
8 kde-apps/akonadi-calendar: Fix hidpi scaling, kalendarac crashes
9
10 KDE-bug: https://bugs.kde.org/show_bug.cgi?id=453676
11 KDE-bug: https://bugs.kde.org/show_bug.cgi?id=463222
12
13 Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
14
15 .../akonadi-calendar-22.08.3-r1.ebuild | 6 +++-
16 ...konadi-calendar-22.08.3-fix-hidpi-scaling.patch | 32 +++++++++++++++++++
17 ...adi-calendar-22.08.3-fix-kalendarac-crash.patch | 36 ++++++++++++++++++++++
18 3 files changed, 73 insertions(+), 1 deletion(-)
19
20 diff --git a/kde-apps/akonadi-calendar/akonadi-calendar-22.08.3-r1.ebuild b/kde-apps/akonadi-calendar/akonadi-calendar-22.08.3-r1.ebuild
21 index d5f48f842b30..4880c2331795 100644
22 --- a/kde-apps/akonadi-calendar/akonadi-calendar-22.08.3-r1.ebuild
23 +++ b/kde-apps/akonadi-calendar/akonadi-calendar-22.08.3-r1.ebuild
24 @@ -46,4 +46,8 @@ DEPEND="
25 "
26 RDEPEND="${DEPEND}"
27
28 -PATCHES=( "${FILESDIR}/${P}-convert-event-start-time-to-local-tz.patch" )
29 +PATCHES=(
30 + "${FILESDIR}/${P}-fix-hidpi-scaling.patch"
31 + "${FILESDIR}/${P}-fix-kalendarac-crash.patch"
32 + "${FILESDIR}/${P}-convert-event-start-time-to-local-tz.patch"
33 +)
34
35 diff --git a/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-hidpi-scaling.patch b/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-hidpi-scaling.patch
36 new file mode 100644
37 index 000000000000..26698be849c4
38 --- /dev/null
39 +++ b/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-hidpi-scaling.patch
40 @@ -0,0 +1,32 @@
41 +From cb8e88e6b50a6edc399510b1a8d6307177f00bb7 Mon Sep 17 00:00:00 2001
42 +From: Moody Liu <mooodyhunter@×××××××.com>
43 +Date: Fri, 14 Oct 2022 23:19:25 +0000
44 +Subject: [PATCH] kalendarac: set AA_EnableHighDpiScaling attribute before
45 + constructing QGuiApplication
46 +
47 +---
48 + reminder-daemon/kalendaracmain.cpp | 5 ++++-
49 + 1 file changed, 4 insertions(+), 1 deletion(-)
50 +
51 +diff --git a/reminder-daemon/kalendaracmain.cpp b/reminder-daemon/kalendaracmain.cpp
52 +index 0566c7f..c0ae2be 100644
53 +--- a/reminder-daemon/kalendaracmain.cpp
54 ++++ b/reminder-daemon/kalendaracmain.cpp
55 +@@ -12,10 +12,13 @@
56 +
57 + int main(int argc, char **argv)
58 + {
59 ++#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
60 ++ // set this attribute before contructing QGuiApplication
61 ++ QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
62 ++#endif
63 + QGuiApplication app(argc, argv);
64 + app.setQuitOnLastWindowClosed(false);
65 + #if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
66 +- QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling);
67 + app.setAttribute(Qt::AA_UseHighDpiPixmaps, true);
68 + #endif
69 +
70 +--
71 +GitLab
72 +
73
74 diff --git a/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-kalendarac-crash.patch b/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-kalendarac-crash.patch
75 new file mode 100644
76 index 000000000000..64801160d886
77 --- /dev/null
78 +++ b/kde-apps/akonadi-calendar/files/akonadi-calendar-22.08.3-fix-kalendarac-crash.patch
79 @@ -0,0 +1,36 @@
80 +From 9baa8ca070a73658bec0c5a9a1854e4ec73abd8a Mon Sep 17 00:00:00 2001
81 +From: Allen Winter <winter@×××.org>
82 +Date: Fri, 30 Dec 2022 09:29:02 -0500
83 +Subject: [PATCH] Ensure Akonadi IncidenceChanger doesn't try to show dialogs
84 +
85 +Since kalendarac is not a proper QApplication it can't
86 +show dialogs anyway. Else you'll see crashes with:
87 +"QWidget: Cannot create a QWidget without QApplication"
88 +---
89 + reminder-daemon/kalendaralarmclient.cpp | 3 +++
90 + 1 file changed, 3 insertions(+)
91 +
92 +diff --git a/reminder-daemon/kalendaralarmclient.cpp b/reminder-daemon/kalendaralarmclient.cpp
93 +index b726ac1..da3b050 100644
94 +--- a/reminder-daemon/kalendaralarmclient.cpp
95 ++++ b/reminder-daemon/kalendaralarmclient.cpp
96 +@@ -6,6 +6,7 @@
97 + #include "calendarinterface.h"
98 + #include "logging.h"
99 +
100 ++#include <Akonadi/IncidenceChanger>
101 + #include <KIO/ApplicationLauncherJob>
102 +
103 + #include <KCheckableProxyModel>
104 +@@ -52,6 +53,8 @@ void KalendarAlarmClient::setupAkonadi()
105 + const QStringList mimeTypes{Event::eventMimeType(), Todo::todoMimeType()};
106 + mCalendar = Akonadi::ETMCalendar::Ptr(new Akonadi::ETMCalendar(mimeTypes));
107 + mCalendar->setObjectName(QStringLiteral("KalendarAC's calendar"));
108 ++ Akonadi::IncidenceChanger *changer = mCalendar->incidenceChanger();
109 ++ changer->setShowDialogsOnError(false);
110 + mETM = mCalendar->entityTreeModel();
111 +
112 + connect(&mCheckTimer, &QTimer::timeout, this, &KalendarAlarmClient::checkAlarms);
113 +--
114 +GitLab
115 +