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-frameworks/kxmlgui/, kde-frameworks/kxmlgui/files/
Date: Wed, 18 Jul 2018 18:46:48
Message-Id: 1531939595.8eca89a494294f5923ff4c62e1d2723ea02998dc.asturm@gentoo
1 commit: 8eca89a494294f5923ff4c62e1d2723ea02998dc
2 Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
3 AuthorDate: Wed Jul 18 18:32:12 2018 +0000
4 Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
5 CommitDate: Wed Jul 18 18:46:35 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8eca89a4
7
8 kde-frameworks/kxmlgui: KMainWindow saving incorrect widget settings
9
10 KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=395988
11 See also: https://phabricator.kde.org/D13808
12
13 Package-Manager: Portage-2.3.43, Repoman-2.3.10
14
15 .../kxmlgui/files/kxmlgui-5.48.0-kmainwindow.patch | 32 +++++++++++++
16 kde-frameworks/kxmlgui/kxmlgui-5.48.0-r1.ebuild | 54 ++++++++++++++++++++++
17 2 files changed, 86 insertions(+)
18
19 diff --git a/kde-frameworks/kxmlgui/files/kxmlgui-5.48.0-kmainwindow.patch b/kde-frameworks/kxmlgui/files/kxmlgui-5.48.0-kmainwindow.patch
20 new file mode 100644
21 index 00000000000..ffc62a676d5
22 --- /dev/null
23 +++ b/kde-frameworks/kxmlgui/files/kxmlgui-5.48.0-kmainwindow.patch
24 @@ -0,0 +1,32 @@
25 +From d35a88289513c0420863b80aa6c1cb7d2c6e978f Mon Sep 17 00:00:00 2001
26 +From: Mladen Milinkovic <max@×××××××××××××××××××.com>
27 +Date: Tue, 17 Jul 2018 09:45:30 +0200
28 +Subject: Fix KMainWindow saving incorrect widget settings
29 +
30 +BUG: 395988
31 +In certain cases KMainWindow::saveMainWindowSettings() could have been
32 +called after mainwindow started destroying itself. Window settings would
33 +be saved with incorrect child widget states. e.g. some widgets would be
34 +saved as hidden even if they were visible before destroying.
35 +---
36 + src/kmainwindow.cpp | 4 ++++
37 + 1 file changed, 4 insertions(+)
38 +
39 +diff --git a/src/kmainwindow.cpp b/src/kmainwindow.cpp
40 +index 810bf32..885ac60 100644
41 +--- a/src/kmainwindow.cpp
42 ++++ b/src/kmainwindow.cpp
43 +@@ -524,6 +524,10 @@ void KMainWindow::closeEvent(QCloseEvent *e)
44 + }
45 +
46 + if (queryClose()) {
47 ++ // widgets will start destroying themselves at this point and we don't
48 ++ // want to save state anymore after this as it might be incorrect
49 ++ d->autoSaveSettings = false;
50 ++ d->letDirtySettings = false;
51 + e->accept();
52 + } else {
53 + e->ignore(); //if the window should not be closed, don't close it
54 +--
55 +cgit v0.11.2
56 +
57
58 diff --git a/kde-frameworks/kxmlgui/kxmlgui-5.48.0-r1.ebuild b/kde-frameworks/kxmlgui/kxmlgui-5.48.0-r1.ebuild
59 new file mode 100644
60 index 00000000000..1bf6dd9dd26
61 --- /dev/null
62 +++ b/kde-frameworks/kxmlgui/kxmlgui-5.48.0-r1.ebuild
63 @@ -0,0 +1,54 @@
64 +# Copyright 1999-2018 Gentoo Foundation
65 +# Distributed under the terms of the GNU General Public License v2
66 +
67 +EAPI=6
68 +
69 +VIRTUALX_REQUIRED="test"
70 +inherit kde5
71 +
72 +DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
73 +KEYWORDS="~amd64 ~arm ~arm64 ~x86"
74 +LICENSE="LGPL-2+"
75 +IUSE="attica"
76 +
77 +# slot op: includes QtCore/private/qlocale_p.h
78 +RDEPEND="
79 + $(add_frameworks_dep kconfig)
80 + $(add_frameworks_dep kconfigwidgets)
81 + $(add_frameworks_dep kcoreaddons)
82 + $(add_frameworks_dep kglobalaccel)
83 + $(add_frameworks_dep ki18n)
84 + $(add_frameworks_dep kiconthemes)
85 + $(add_frameworks_dep kitemviews)
86 + $(add_frameworks_dep ktextwidgets)
87 + $(add_frameworks_dep kwidgetsaddons)
88 + $(add_frameworks_dep kwindowsystem)
89 + $(add_qt_dep qtcore '' '' '5=')
90 + $(add_qt_dep qtdbus)
91 + $(add_qt_dep qtgui)
92 + $(add_qt_dep qtnetwork 'ssl')
93 + $(add_qt_dep qtprintsupport)
94 + $(add_qt_dep qtwidgets)
95 + $(add_qt_dep qtxml)
96 + attica? ( $(add_frameworks_dep attica) )
97 +"
98 +DEPEND="${RDEPEND}"
99 +
100 +PATCHES=( "${FILESDIR}/${P}-kmainwindow.patch" )
101 +
102 +src_configure() {
103 + local mycmakeargs=(
104 + $(cmake-utils_use_find_package attica KF5Attica)
105 + )
106 +
107 + kde5_src_configure
108 +}
109 +
110 +src_test() {
111 + # Files are missing; whatever. Bug: 650290
112 + local myctestargs=(
113 + -E "(kxmlgui_unittest)"
114 + )
115 +
116 + kde5_src_test
117 +}