* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2016-09-10 21:11 Tobias Klausmann
0 siblings, 0 replies; 7+ messages in thread
From: Tobias Klausmann @ 2016-09-10 21:11 UTC (permalink / raw
To: gentoo-commits
commit: cfc3a87c6e403fde395e87d9b6aaa9bb2acb7ddb
Author: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 10 21:09:47 2016 +0000
Commit: Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Sat Sep 10 21:09:47 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cfc3a87c
x11-themes/qtcurve: fix usage of isnan() for bug 431848
Gentoo-Bug: 431848
.../qtcurve/files/qtcurve-1.8.18-std_isnan.patch | 22 ++++++++++++++++++++++
x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild | 1 +
2 files changed, 23 insertions(+)
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch
new file mode 100644
index 00000000..ae78995
--- /dev/null
+++ b/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch
@@ -0,0 +1,22 @@
+Index: qtcurve-1.8.18/lib/utils/color.h
+===================================================================
+--- qtcurve-1.8.18.orig/lib/utils/color.h
++++ qtcurve-1.8.18/lib/utils/color.h
+@@ -250,7 +250,7 @@ qtcColorTint(const QColor *base, const Q
+ return *base;
+ } else if (amount >= 1.0) {
+ return *col;
+- } else if (isnan(amount)) {
++ } else if (std::isnan(amount)) {
+ return *base;
+ }
+ const QtcColor qtc_base = {base->redF(), base->greenF(), base->blueF()};
+@@ -267,7 +267,7 @@ qtcColorMix(const QColor *c1, const QCol
+ return *c1;
+ } else if (bias >= 1.0) {
+ return *c2;
+- } else if (isnan(bias)) {
++ } else if (std::isnan(bias)) {
+ return *c1;
+ }
+ const QtcColor qtc_c1 = {c1->redF(), c1->greenF(), c1->blueF()};
diff --git a/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild b/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild
index eaa3ace..335092f 100644
--- a/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild
+++ b/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild
@@ -55,6 +55,7 @@ PATCHES=(
"${DISTDIR}/${P}-dont_use_c++11.patch"
"${FILESDIR}/${P}-remove_qt_filedialog_api.patch"
"${FILESDIR}/${P}-gtk2_segfault.patch"
+ "${FILESDIR}/${P}-std_isnan.patch"
)
pkg_setup() {
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2017-11-23 22:09 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2017-11-23 22:09 UTC (permalink / raw
To: gentoo-commits
commit: c7bc65ae2f713e7c45368e75a0e188ff5a3622ac
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Nov 23 22:04:33 2017 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Nov 23 22:04:33 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7bc65ae
x11-themes/qtcurve: Drop old
Package-Manager: Portage-2.3.16, Repoman-2.3.6
x11-themes/qtcurve/Manifest | 3 -
.../qtcurve/files/qtcurve-1.8.18-glibc-2.23.patch | 13 ----
.../files/qtcurve-1.8.18-gtk2_segfault.patch | 14 ----
.../qtcurve-1.8.18-remove_qt_filedialog_api.patch | 58 -----------------
.../qtcurve/files/qtcurve-1.8.18-std_isnan.patch | 31 ---------
.../files/qtcurve-1.8.18_p20170601-include.patch | 10 ---
.../files/qtcurve-9999-add_utils_include.patch | 10 ---
x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild | 74 ----------------------
x11-themes/qtcurve/qtcurve-1.8.18_p20170601.ebuild | 66 -------------------
9 files changed, 279 deletions(-)
diff --git a/x11-themes/qtcurve/Manifest b/x11-themes/qtcurve/Manifest
index eb61495f992..969ecaf2a7d 100644
--- a/x11-themes/qtcurve/Manifest
+++ b/x11-themes/qtcurve/Manifest
@@ -1,4 +1 @@
-DIST qtcurve-1.8.18-dont_use_c++11.patch 1096 SHA256 09a9c42bd045dc9161881fdfe62b854d8577fc57e00a245ae03fb00a384cb82f SHA512 3228e4e5babd6a309fca02c4a103500acd913f40364e9dffd8238aa05377f4d31c3b2ba2c84427804de909712a2dd9b391e9f84206fca5146dbadc0d96183cf7 WHIRLPOOL 23f4e2d568e6a2331e2f34f8c3061c1f4171ef0b39e74a56da44c7d761626eefc2a5ff0fa39d4983d8c99742f753ec26dcc2287320aa8d43d5cab9a0d13f2245
-DIST qtcurve-1.8.18.tar.gz 991195 SHA256 85997c9fa4a948945d719342f5993486aecf189d176408280bad9af8600873a6 SHA512 0ba7927db11d1f2d7bad08fa923d3f0f2167d89fdf0d09bf0b677ffd4f2cc547c22890c87b8f18495e73f8ce21ffbd40899792a512dd9e2a481b81a52abd84eb WHIRLPOOL d3c7dc0c08b42deafdd5fcd513dcb2d9ea9c52ade8090d6cc022315ac80b1ea196a8a763d9c96096ee645f45bc329b837f23987bf7229c718d2a5811a35c68d1
-DIST qtcurve-1.8.18_p20170601.tar.xz 450280 SHA256 aa06d2ac8d4b5b01d227db30555db81f0b6e31ad8fd46cc31abcb3e03589742a SHA512 bde72d2f03403bcdc420612fc83b5dd20c51a4e0cd99a32dfbbd5de4bd2da666a990298ce760642a6d857d74df5e5bef0c737bf49c329ed21ae7e6f2b9ab7080 WHIRLPOOL 2adf543a03b8e88718cd7382ea52be683a7940c6b5593303d8c006d6bc1a1d828b70ad1d24d04379297918fee649a4bed03320a7bceb07077476ed640d2b3f95
DIST qtcurve-1.9.0_rc1.tar.gz 800845 SHA256 3a5ca031761195f58f92f676355f0da6e424e997fdc4fe5914b3f58fe9d57291 SHA512 c586c5c922dcc2a374bf9e3b3abb3e64dcb6299531615fe980b8eba7d2e5a68038ec2eafae24a0c0d4782b2e08984534723bb713386d5119fa8016b9fbdd436e WHIRLPOOL dab6f2b56afdb9f1e52fbfee1680d5f57e489a7a5ee0963487a4b13eef44d0db21af21aa929d2907084a5ace845edac518f0899d98d6686275fe023f7959dfba
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18-glibc-2.23.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18-glibc-2.23.patch
deleted file mode 100644
index 06a27d5a885..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.8.18-glibc-2.23.patch
+++ /dev/null
@@ -1,13 +0,0 @@
---- a/lib/utils/color.h.orig 2017-02-16 00:55:24.000000000 +0300
-+++ b/lib/utils/color.h 2017-02-16 01:00:40.176467232 +0300
-@@ -25,6 +25,10 @@
-
- #include <math.h>
-
-+#if __cplusplus >= 201103L && (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 23))
-+#include <cmath>
-+#endif
-+
- #include "utils.h"
- #include "options.h"
-
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18-gtk2_segfault.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18-gtk2_segfault.patch
deleted file mode 100644
index b4a2f1a4461..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.8.18-gtk2_segfault.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-https://github.com/QtCurve/qtcurve-gtk2/issues/3
-https://gist.github.com/anonymous/8e6e4ea32dabf03cf630
-
---- qtcurve-1.8.18/gtk2/style/qtcurve.c
-+++ qtcurve-1.8.18/gtk2/style/qtcurve.c
-@@ -372,7 +372,7 @@
- } else if (!(qtSettings.app == GTK_APP_JAVA && widget &&
- GTK_IS_LABEL(widget))) {
- if (state != GTK_STATE_PRELIGHT || opts.crHighlight ||
-- strcmp(detail, "checkbutton") != 0) {
-+ ( detail != NULL && strcmp(detail, "checkbutton") != 0 )) {
- parent_class->draw_flat_box(style, window, state, shadow, area,
- widget, detail, x, y, width, height);
- }
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18-remove_qt_filedialog_api.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18-remove_qt_filedialog_api.patch
deleted file mode 100644
index 087ec7f27f6..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.8.18-remove_qt_filedialog_api.patch
+++ /dev/null
@@ -1,58 +0,0 @@
-From 323402d8b99502300f65e909c61153cbd5d5d997 Mon Sep 17 00:00:00 2001
-From: Marco Martin <notmart@gmail.com>
-Date: Mon, 19 May 2014 10:37:37 +0200
-Subject: [PATCH] remove qt_filedialog_* api
-
-it has been removed and doesn't build anymore with recent Qt5 stable
-branch
----
- qt5/style/qtcurve_api.cpp | 26 --------------------------
- 1 file changed, 26 deletions(-)
-
-diff --git a/qt5/style/qtcurve_api.cpp b/qt5/style/qtcurve_api.cpp
-index a5ded22..2c794b7 100644
---- a/qt5/style/qtcurve_api.cpp
-+++ b/qt5/style/qtcurve_api.cpp
-@@ -67,25 +67,6 @@
-
- #include <QDebug>
-
--extern QString (*qt_filedialog_existing_directory_hook)(
-- QWidget *parent, const QString &caption, const QString &dir,
-- QFileDialog::Options options);
--
--extern QString (*qt_filedialog_open_filename_hook)(
-- QWidget *parent, const QString &caption, const QString &dir,
-- const QString &filter, QString *selectedFilter,
-- QFileDialog::Options options);
--
--extern QStringList (*qt_filedialog_open_filenames_hook)(
-- QWidget * parent, const QString &caption, const QString &dir,
-- const QString &filter, QString *selectedFilter,
-- QFileDialog::Options options);
--
--extern QString (*qt_filedialog_save_filename_hook)(
-- QWidget *parent, const QString &caption, const QString &dir,
-- const QString &filter, QString *selectedFilter,
-- QFileDialog::Options options);
--
- namespace QtCurve {
-
- void
-@@ -163,13 +144,6 @@ Style::polish(QApplication *app)
- opts.menuBgndAppearance = APPEARANCE_FLAT;
- }
-
-- if (opts.useQtFileDialogApps.contains(appName)) {
-- qt_filedialog_existing_directory_hook = 0L;
-- qt_filedialog_open_filename_hook = 0L;
-- qt_filedialog_open_filenames_hook = 0L;
-- qt_filedialog_save_filename_hook = 0L;
-- }
--
- QCommonStyle::polish(app);
- if (opts.hideShortcutUnderline) {
- app->installEventFilter(m_shortcutHandler);
---
-1.9.3
-
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch
deleted file mode 100644
index 1064d202689..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.8.18-std_isnan.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-diff --git a/lib/utils/color.h.orig b/lib/utils/color.h
-index 2c7081f..37d83b5 100644
---- a/lib/utils/color.h.orig
-+++ b/lib/utils/color.h
-@@ -23,6 +23,8 @@
- #ifndef QTC_UTILS_COLOR_H
- #define QTC_UTILS_COLOR_H
-
-+#include <math.h>
-+
- #include "utils.h"
- #include "options.h"
-
-@@ -250,7 +252,7 @@ qtcColorTint(const QColor *base, const QColor *col, double amount)
- return *base;
- } else if (amount >= 1.0) {
- return *col;
-- } else if (isnan(amount)) {
-+ } else if (std::isnan(amount)) {
- return *base;
- }
- const QtcColor qtc_base = {base->redF(), base->greenF(), base->blueF()};
-@@ -267,7 +269,7 @@ qtcColorMix(const QColor *c1, const QColor *c2, double bias)
- return *c1;
- } else if (bias >= 1.0) {
- return *c2;
-- } else if (isnan(bias)) {
-+ } else if (std::isnan(bias)) {
- return *c1;
- }
- const QtcColor qtc_c1 = {c1->redF(), c1->greenF(), c1->blueF()};
diff --git a/x11-themes/qtcurve/files/qtcurve-1.8.18_p20170601-include.patch b/x11-themes/qtcurve/files/qtcurve-1.8.18_p20170601-include.patch
deleted file mode 100644
index 8b66c693c76..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.8.18_p20170601-include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/qt5/style/qtcurve.cpp
-+++ b/qt5/style/qtcurve.cpp
-@@ -67,6 +67,7 @@
- #include <QSettings>
- #include <QPixmapCache>
- #include <QTextStream>
-+#include <QDebug>
-
- #include "shadowhelper.h"
- #include <qtcurve-utils/x11qtc.h>
diff --git a/x11-themes/qtcurve/files/qtcurve-9999-add_utils_include.patch b/x11-themes/qtcurve/files/qtcurve-9999-add_utils_include.patch
deleted file mode 100644
index 5536937f9b1..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-9999-add_utils_include.patch
+++ /dev/null
@@ -1,10 +0,0 @@
---- a/qt4/style/qtcurve_plugin.cpp 2016-10-25 10:12:41.000000000 +0200
-+++ b/qt4/style/qtcurve_plugin.cpp 2016-10-25 10:21:32.446853060 +0200
-@@ -22,6 +22,7 @@
-
- #include "qtcurve_plugin.h"
- #include "qtcurve.h"
-+#include "utils.h"
- #include "config.h"
-
- #include <qtcurve-utils/qtprops.h>
diff --git a/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild b/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild
deleted file mode 100644
index 7a9617a62d9..00000000000
--- a/x11-themes/qtcurve/qtcurve-1.8.18-r1.ebuild
+++ /dev/null
@@ -1,74 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-inherit cmake-utils
-
-DESCRIPTION="A set of widget styles for Qt and GTK2"
-HOMEPAGE="https://github.com/QtCurve/qtcurve"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/QtCurve/qtcurve.git"
-else
- SRC_URI="https://github.com/QtCurve/${PN}/archive/${PV/_/}.tar.gz -> ${P}.tar.gz
- https://github.com/QtCurve/qtcurve/commit/020b70404f6202490d5ca131f0ec084355cb98e3.patch -> ${PN}-1.8.18-dont_use_c++11.patch"
- KEYWORDS="alpha amd64 hppa ppc ppc64 sparc x86"
-fi
-
-LICENSE="LGPL-2+"
-SLOT="0"
-IUSE="+X gtk nls +qt4 qt5"
-REQUIRED_USE="gtk? ( X )
- || ( gtk qt4 qt5 )"
-
-RDEPEND="X? ( x11-libs/libxcb
- x11-libs/libX11 )
- gtk? ( x11-libs/gtk+:2 )
- qt4? ( dev-qt/qtdbus:4
- dev-qt/qtgui:4
- dev-qt/qtsvg:4
- )
- qt5? ( dev-qt/qtdeclarative:5
- dev-qt/qtgui:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- X? ( dev-qt/qtdbus:5
- dev-qt/qtx11extras:5 )
- )
- !x11-themes/gtk-engines-qtcurve"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- nls? ( sys-devel/gettext )"
-
-S="${WORKDIR}/${P/_/}"
-
-DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
-
-PATCHES=(
- "${DISTDIR}/${P}-dont_use_c++11.patch"
- "${FILESDIR}/${P}-remove_qt_filedialog_api.patch"
- "${FILESDIR}/${P}-gtk2_segfault.patch"
- "${FILESDIR}/${P}-std_isnan.patch"
- "${FILESDIR}/${P}-glibc-2.23.patch"
- )
-
-pkg_setup() {
- # bug #498776
- if ! version_is_at_least 4.7 $(gcc-version) ; then
- append-cxxflags -Doverride=
- fi
-}
-
-src_configure() {
- local mycmakeargs=(
- -DQTC_QT4_ENABLE_KDE=OFF
- -DQTC_QT4_ENABLE_KWIN=OFF
- $(cmake-utils_use_enable gtk GTK2)
- $(cmake-utils_use_enable qt4 QT4)
- $(cmake-utils_use_enable qt5 QT5)
- $(cmake-utils_use X QTC_ENABLE_X11 )
- $(cmake-utils_use nls QTC_INSTALL_PO )
- )
- cmake-utils_src_configure
-}
diff --git a/x11-themes/qtcurve/qtcurve-1.8.18_p20170601.ebuild b/x11-themes/qtcurve/qtcurve-1.8.18_p20170601.ebuild
deleted file mode 100644
index 5beaa57b806..00000000000
--- a/x11-themes/qtcurve/qtcurve-1.8.18_p20170601.ebuild
+++ /dev/null
@@ -1,66 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit cmake-utils
-
-DESCRIPTION="A set of widget styles for Qt and GTK2"
-HOMEPAGE="https://github.com/QtCurve/qtcurve"
-
-if [[ ${PV} == *9999* ]]; then
- inherit git-r3
- EGIT_REPO_URI="https://github.com/QtCurve/qtcurve.git"
-else
- SRC_URI="https://dev.gentoo.org/~kensington/distfiles/${P}.tar.xz"
- KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
-fi
-
-LICENSE="LGPL-2+"
-SLOT="0"
-IUSE="+X gtk nls +qt4 qt5"
-REQUIRED_USE="gtk? ( X )
- || ( gtk qt4 qt5 )"
-
-RDEPEND="X? (
- x11-libs/libxcb
- x11-libs/libX11
- )
- gtk? ( x11-libs/gtk+:2 )
- qt4? (
- dev-qt/qtcore:4
- dev-qt/qtdbus:4
- dev-qt/qtgui:4
- dev-qt/qtsvg:4
- )
- qt5? (
- dev-qt/qtcore:5
- dev-qt/qtdeclarative:5
- dev-qt/qtgui:5
- dev-qt/qtsvg:5
- dev-qt/qtwidgets:5
- X? ( dev-qt/qtdbus:5
- dev-qt/qtx11extras:5 )
- )
- !x11-themes/gtk-engines-qtcurve"
-DEPEND="${RDEPEND}
- virtual/pkgconfig
- nls? ( sys-devel/gettext )"
-
-DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
-
-PATCHES=( "${FILESDIR}/${P}-include.patch" )
-
-src_configure() {
- local mycmakeargs=(
- -DQTC_ENABLE_X11=$(usex X)
- -DQTC_INSTALL_PO=$(usex nls)
- -DQTC_QT4_ENABLE_KDE=OFF
- -DQTC_QT4_ENABLE_KWIN=OFF
- -DQTC_QT5_ENABLE_KDE=OFF
- -DENABLE_GTK2=$(usex gtk)
- -DENABLE_QT4=$(usex qt4)
- -DENABLE_QT5=$(usex qt5)
- )
- cmake-utils_src_configure
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2018-06-02 12:54 Lars Wendler
0 siblings, 0 replies; 7+ messages in thread
From: Lars Wendler @ 2018-06-02 12:54 UTC (permalink / raw
To: gentoo-commits
commit: 987bac35e9eb0edf61387f4e42c1cb41f2df64e7
Author: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 2 12:54:08 2018 +0000
Commit: Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Sat Jun 2 12:54:33 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=987bac35
x11-themes/qtcurve: Revbump to add a fix against a rare crash/hang.
Thanks-to: Andreas Sturmlechner <asturm <AT> gentoo.org>
Package-Manager: Portage-2.3.40, Repoman-2.3.9
.../files/qtcurve-1.9.0-rare_crash_hang_fix.patch | 238 +++++++++++++++++++++
x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild | 94 ++++++++
2 files changed, 332 insertions(+)
diff --git a/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch b/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch
new file mode 100644
index 00000000000..921001f4454
--- /dev/null
+++ b/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch
@@ -0,0 +1,238 @@
+From b7da5ec7e2965332e3922dfb03a3d100aa203b94 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ren=C3=A9=20J=2EV=2E=20Bertin?= <rjvbertin@gmail.com>
+Date: Fri, 8 Dec 2017 10:10:47 +0100
+Subject: address a rare crash/hang on exit
+
+Under rare circumstances Qt would attempt to deliver signals to stale
+style instances, or leave orphaned style instances after unloading the
+plugin. This is addressed by disconnecting the (currently only) signal
+originating from an external application and the plugin now ensures it
+leaves no orphaned style instances behind.
+Also, moves the code handling pre-exit disconnection to a subclass.
+
+Differential Revision: https://phabricator.kde.org/D9229
+---
+ qt5/style/qtcurve.cpp | 72 ++++++++++++++++++++++++++++++++------------
+ qt5/style/qtcurve.h | 5 +--
+ qt5/style/qtcurve_plugin.cpp | 15 ++++++---
+ 3 files changed, 67 insertions(+), 25 deletions(-)
+
+diff --git a/qt5/style/qtcurve.cpp b/qt5/style/qtcurve.cpp
+index 1bf6e1d..07eca0f 100644
+--- a/qt5/style/qtcurve.cpp
++++ b/qt5/style/qtcurve.cpp
+@@ -101,6 +101,26 @@
+
+ namespace QtCurve {
+
++class Style::DBusHelper {
++public:
++ DBusHelper()
++ : m_dBus(0)
++ , m_dbusConnected(false)
++ {}
++ ~DBusHelper()
++ {
++ if (m_dBus) {
++ m_dBus->disconnect();
++ m_dBus->deleteLater();
++ m_dBus = 0;
++ }
++ }
++
++ std::once_flag m_aboutToQuitInit;
++ QDBusInterface *m_dBus;
++ bool m_dbusConnected;
++};
++
+ static inline void setPainterPen(QPainter *p, const QColor &col, const qreal width=1.0)
+ {
+ p->setPen(QPen(col, width));
+@@ -321,6 +341,7 @@ static void parseWindowLine(const QString &line, QList<int> &data)
+ #endif
+
+ Style::Style() :
++ m_dBusHelper(new DBusHelper()),
+ m_popupMenuCols(0L),
+ m_sliderCols(0L),
+ m_defBtnCols(0L),
+@@ -343,13 +364,11 @@ Style::Style() :
+ m_progressBarAnimateTimer(0),
+ m_animateStep(0),
+ m_titlebarHeight(0),
+- m_dBus(0),
+ m_shadowHelper(new ShadowHelper(this)),
+ m_sViewSBar(0L),
+ m_windowManager(new WindowManager(this)),
+ m_blurHelper(new BlurHelper(this)),
+- m_shortcutHandler(new ShortcutHandler(this)),
+- m_dbusConnected(false)
++ m_shortcutHandler(new ShortcutHandler(this))
+ {
+ const char *env = getenv(QTCURVE_PREVIEW_CONFIG);
+ #ifdef QTC_QT5_ENABLE_KDE
+@@ -394,6 +413,23 @@ void Style::init(bool initial)
+ #ifdef QTC_QT5_ENABLE_KDE
+ connect(KWindowSystem::self(), &KWindowSystem::compositingChanged, this, &Style::compositingToggled);
+ #endif
++ // prepare the cleanup handler
++ if (QCoreApplication::instance()) {
++ std::call_once(m_dBusHelper->m_aboutToQuitInit, [this] {
++ connect(QCoreApplication::instance(), &QCoreApplication::aboutToQuit, this, [this] () {
++ // disconnect from the session DBus. We're no longer interested in the
++ // information it might send when the app we're serving is shutting down.
++ disconnectDBus();
++ // Stop listening to select signals. We shouldn't stop emitting signals
++ // (like QObject::destroyed) but we can reduce the likelihood that pending
++ // signals will be sent to us post-mortem.
++#ifdef QTC_QT5_ENABLE_KDE
++ disconnect(KWindowSystem::self(), &KWindowSystem::compositingChanged,
++ this, &Style::compositingToggled);
++#endif
++ } );
++ } );
++ }
+ }
+ }
+
+@@ -663,14 +699,11 @@ void Style::init(bool initial)
+
+ void Style::connectDBus()
+ {
+- if (m_dbusConnected)
++ if (m_dBusHelper->m_dbusConnected)
+ return;
+ auto bus = QDBusConnection::sessionBus();
+ if (bus.isConnected()) {
+- m_dbusConnected = true;
+- if (QCoreApplication::instance()) {
+- connect(QCoreApplication::instance(), &QCoreApplication::aboutToQuit, this, &Style::disconnectDBus);
+- }
++ m_dBusHelper->m_dbusConnected = true;
+ bus.connect(QString(), "/KGlobalSettings", "org.kde.KGlobalSettings",
+ "notifyChange", this, SLOT(kdeGlobalSettingsChange(int, int)));
+ #ifndef QTC_QT5_ENABLE_KDE
+@@ -699,12 +732,15 @@ void Style::connectDBus()
+
+ void Style::disconnectDBus()
+ {
+- if (!m_dbusConnected)
++ if (!m_dBusHelper->m_dbusConnected)
+ return;
+- m_dbusConnected = false;
+ auto bus = QDBusConnection::sessionBus();
++ if (!bus.isConnected())
++ return;
++ m_dBusHelper->m_dbusConnected = false;
+ if (getenv("QTCURVE_DEBUG")) {
+ qWarning() << Q_FUNC_INFO << this << "Disconnecting from" << bus.name() << "/" << bus.baseService();
++ dumpObjectInfo();
+ }
+ bus.disconnect(QString(), "/KGlobalSettings", "org.kde.KGlobalSettings",
+ "notifyChange",
+@@ -739,9 +775,7 @@ Style::~Style()
+ m_plugin->m_styleInstances.removeAll(this);
+ }
+ freeColors();
+- if (m_dBus) {
+- delete m_dBus;
+- }
++ delete m_dBusHelper;
+ }
+
+ void Style::freeColor(QSet<QColor *> &freedColors, QColor **cols)
+@@ -4467,10 +4501,10 @@ void Style::emitMenuSize(QWidget *w, unsigned short size, bool force)
+ if (oldSize != size) {
+ w->setProperty(constMenuSizeProperty, size);
+ qtcX11SetMenubarSize(wid, size);
+- if(!m_dBus)
+- m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
++ if(!m_dBusHelper->m_dBus)
++ m_dBusHelper->m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
+ "org.kde.QtCurve");
+- m_dBus->call(QDBus::NoBlock, "menuBarSize",
++ m_dBusHelper->m_dBus->call(QDBus::NoBlock, "menuBarSize",
+ (unsigned int)wid, (int)size);
+ }
+ }
+@@ -4479,10 +4513,10 @@ void Style::emitMenuSize(QWidget *w, unsigned short size, bool force)
+ void Style::emitStatusBarState(QStatusBar *sb)
+ {
+ if (opts.statusbarHiding & HIDE_KWIN) {
+- if (!m_dBus)
+- m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
++ if (!m_dBusHelper->m_dBus)
++ m_dBusHelper->m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
+ "org.kde.QtCurve");
+- m_dBus->call(QDBus::NoBlock, "statusBarState",
++ m_dBusHelper->m_dBus->call(QDBus::NoBlock, "statusBarState",
+ (unsigned int)qtcGetWid(sb->window()),
+ sb->isVisible());
+ }
+diff --git a/qt5/style/qtcurve.h b/qt5/style/qtcurve.h
+index 56960a5..ecfa2e7 100644
+--- a/qt5/style/qtcurve.h
++++ b/qt5/style/qtcurve.h
+@@ -522,6 +522,9 @@ private:
+ const QWidget *widget) const;
+
+ private:
++ class DBusHelper;
++ DBusHelper *m_dBusHelper;
++
+ mutable Options opts;
+ QColor m_highlightCols[TOTAL_SHADES + 1],
+ m_backgroundCols[TOTAL_SHADES + 1],
+@@ -564,14 +567,12 @@ private:
+ mutable QList<int> m_mdiButtons[2]; // 0=left, 1=right
+ mutable int m_titlebarHeight;
+
+- QDBusInterface *m_dBus;
+ ShadowHelper *m_shadowHelper;
+ mutable QScrollBar *m_sViewSBar;
+ mutable QMap<QWidget*, QSet<QWidget*> > m_sViewContainers;
+ WindowManager *m_windowManager;
+ BlurHelper *m_blurHelper;
+ ShortcutHandler *m_shortcutHandler;
+- bool m_dbusConnected;
+ #ifdef QTC_QT5_ENABLE_KDE
+ KSharedConfigPtr m_configFile;
+ KSharedConfigPtr m_kdeGlobals;
+diff --git a/qt5/style/qtcurve_plugin.cpp b/qt5/style/qtcurve_plugin.cpp
+index ce363ac..481fffc 100644
+--- a/qt5/style/qtcurve_plugin.cpp
++++ b/qt5/style/qtcurve_plugin.cpp
+@@ -129,6 +129,11 @@ StylePlugin::create(const QString &key)
+ if (key.toLower() == "qtcurve") {
+ qtc = new Style;
+ qtc->m_plugin = this;
++ // keep track of all style instances we allocate, for instance
++ // for KLineEdit widgets which apparently insist on overriding
++ // certain things (cf. KLineEditStyle). We want to be able to
++ // delete those instances as properly and as early as
++ // possible during the global destruction phase.
+ m_styleInstances << qtc;
+ } else {
+ qtc = nullptr;
+@@ -151,12 +156,14 @@ StylePlugin::~StylePlugin()
+ qtcInfo("Deleting QtCurve plugin (%p)\n", this);
+ if (!m_styleInstances.isEmpty()) {
+ qtcWarn("there remain(s) %d Style instance(s)\n", m_styleInstances.count());
+- QList<Style*>::Iterator it = m_styleInstances.begin();
+- while (it != m_styleInstances.end()) {
+- Style *that = *it;
+- it = m_styleInstances.erase(it);
++ foreach (Style *that, m_styleInstances) {
++ // don't let ~Style() touch m_styleInstances from here.
++ that->m_plugin = nullptr;
++ // each instance should already have disconnected from the D-Bus
++ // and disconnected from receiving select signals.
+ delete that;
+ }
++ m_styleInstances.clear();
+ }
+ if (firstPlInstance == this) {
+ firstPlInstance = nullptr;
+--
+cgit v0.11.2
+
diff --git a/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild b/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
new file mode 100644
index 00000000000..08539806e18
--- /dev/null
+++ b/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
@@ -0,0 +1,94 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+KDE_AUTODEPS="false"
+inherit kde5
+
+DESCRIPTION="Widget styles for Qt and GTK2"
+HOMEPAGE="https://cgit.kde.org/qtcurve.git"
+
+LICENSE="LGPL-2+"
+SLOT="0"
+IUSE="+X gtk nls plasma qt4 +qt5 test"
+
+if [[ "${PV}" != 9999 ]] ; then
+ SRC_URI="https://github.com/KDE/qtcurve/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz"
+ KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86"
+ S="${WORKDIR}/${P/_/-}"
+fi
+
+REQUIRED_USE="gtk? ( X )
+ || ( gtk qt4 qt5 )
+ plasma? ( qt5 )
+"
+
+COMMON_DEPEND="
+ gtk? ( x11-libs/gtk+:2 )
+ qt4? (
+ dev-qt/qtcore:4
+ dev-qt/qtdbus:4
+ dev-qt/qtgui:4
+ dev-qt/qtsvg:4
+ )
+ qt5? (
+ $(add_qt_dep qtdbus)
+ $(add_qt_dep qtgui)
+ $(add_qt_dep qtsvg)
+ $(add_qt_dep qtwidgets)
+ $(add_qt_dep qtx11extras)
+ )
+ plasma? (
+ $(add_frameworks_dep frameworkintegration)
+ $(add_frameworks_dep karchive)
+ $(add_frameworks_dep kcompletion)
+ $(add_frameworks_dep kconfig)
+ $(add_frameworks_dep kconfigwidgets)
+ $(add_frameworks_dep kcoreaddons)
+ $(add_frameworks_dep kdelibs4support)
+ $(add_frameworks_dep kguiaddons)
+ $(add_frameworks_dep ki18n)
+ $(add_frameworks_dep kiconthemes)
+ $(add_frameworks_dep kio)
+ $(add_frameworks_dep kwidgetsaddons)
+ $(add_frameworks_dep kwindowsystem)
+ $(add_frameworks_dep kxmlgui)
+ $(add_qt_dep qtprintsupport)
+ )
+ X? (
+ x11-libs/libX11
+ x11-libs/libxcb
+ )
+"
+DEPEND="${COMMON_DEPEND}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )
+"
+RDEPEND="${COMMON_DEPEND}
+ !x11-themes/gtk-engines-qtcurve
+"
+
+DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
+
+PATCHES=(
+ "${FILESDIR}/${PN}-1.9.0-rare_crash_hang_fix.patch"
+)
+
+src_configure() {
+ local mycmakeargs=(
+ -DLIB_INSTALL_DIR="$(get_libdir)"
+ -DQTC_QT4_ENABLE_KDE=OFF
+ -DQTC_QT4_ENABLE_KWIN=OFF
+ -DQTC_KDE4_DEFAULT_HOME=ON
+ -DENABLE_GTK2="$(usex gtk)"
+ -DENABLE_QT4="$(usex qt4)"
+ -DENABLE_QT5="$(usex qt5)"
+ -DENABLE_TEST="$(usex test)"
+ -DQTC_ENABLE_X11="$(usex X)"
+ -DQTC_INSTALL_PO="$(usex nls)"
+ -DQTC_QT5_ENABLE_KDE="$(usex plasma)"
+ )
+
+ kde5_src_configure
+}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2018-06-27 19:00 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2018-06-27 19:00 UTC (permalink / raw
To: gentoo-commits
commit: e0b122677c959ea9ecb1c99ca85a85a817a0c689
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Tue Jun 26 16:13:04 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jun 27 19:00:21 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0b12267
x11-themes/qtcurve: Drop 2/3 unused cmake variables
Already upstreamed patch enables kde5.eclass to handle the option.
Bug: https://bugs.gentoo.org/659190
Package-Manager: Portage-2.3.40, Repoman-2.3.9
.../files/qtcurve-1.9.0-build_testing.patch | 44 ++++++++++++++++++++++
x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild | 2 +-
x11-themes/qtcurve/qtcurve-9999.ebuild | 1 -
3 files changed, 45 insertions(+), 2 deletions(-)
diff --git a/x11-themes/qtcurve/files/qtcurve-1.9.0-build_testing.patch b/x11-themes/qtcurve/files/qtcurve-1.9.0-build_testing.patch
new file mode 100644
index 00000000000..16f7198aba8
--- /dev/null
+++ b/x11-themes/qtcurve/files/qtcurve-1.9.0-build_testing.patch
@@ -0,0 +1,44 @@
+From 237912b291dcc706fcc1d9b02a8398385d19f38f Mon Sep 17 00:00:00 2001
+From: Andreas Sturmlechner <asturm@gentoo.org>
+Date: Tue, 26 Jun 2018 18:03:06 +0200
+Subject: [PATCH] Switch from ENABLE_TEST to the ECM/CMake standard
+ BUILD_TESTING
+
+Summary:
+BUILD_TESTING is used throughout KDE projects as provided by
+CTest and/or KDECMakeSettings.
+
+Reviewers: yuyichao
+
+Reviewed By: yuyichao
+
+Differential Revision: https://phabricator.kde.org/D13741
+---
+ CMakeLists.txt | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 70e21b3a..15f6b177 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -52,7 +52,7 @@ qtc_option(ENABLE_QT4 "Building Qt4 theme." On)
+ qtc_option(ENABLE_QT5 "Building Qt5 theme." On)
+ qtc_option(ENABLE_GTK2 "Building Gtk2 theme." On)
+ # option(ENABLE_GTK3 "Building Gtk3 theme." On)
+-option(ENABLE_TEST "Enable testing." On)
++option(BUILD_TESTING "Enable testing." On)
+ option(QTC_ENABLE_X11 "Enable X11" On)
+ option(QTC_INSTALL_PO "Install translation files." On)
+
+@@ -247,7 +247,7 @@ if(ENABLE_GTK2)
+ add_subdirectory(gtk2)
+ endif()
+ add_subdirectory(tools)
+-if(ENABLE_TEST)
++if(BUILD_TESTING)
+ enable_testing()
+ add_subdirectory(test)
+ endif()
+--
+2.18.0
+
diff --git a/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild b/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
index ae1d8dc5cf1..e795ba2ee0f 100644
--- a/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
+++ b/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
@@ -67,6 +67,7 @@ DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
PATCHES=(
"${FILESDIR}/${PN}-1.9.0-rare_crash_hang_fix.patch"
+ "${FILESDIR}/${PN}-1.9.0-build_testing.patch"
)
src_configure() {
@@ -77,7 +78,6 @@ src_configure() {
-DQTC_KDE4_DEFAULT_HOME=ON
-DENABLE_GTK2="$(usex gtk)"
-DENABLE_QT5="$(usex qt5)"
- -DENABLE_TEST="$(usex test)"
-DQTC_ENABLE_X11="$(usex X)"
-DQTC_INSTALL_PO="$(usex nls)"
-DQTC_QT5_ENABLE_KDE="$(usex plasma)"
diff --git a/x11-themes/qtcurve/qtcurve-9999.ebuild b/x11-themes/qtcurve/qtcurve-9999.ebuild
index ca3205965a3..d5f28086e7c 100644
--- a/x11-themes/qtcurve/qtcurve-9999.ebuild
+++ b/x11-themes/qtcurve/qtcurve-9999.ebuild
@@ -77,7 +77,6 @@ src_configure() {
-DQTC_KDE4_DEFAULT_HOME=ON
-DENABLE_GTK2="$(usex gtk)"
-DENABLE_QT5="$(usex qt5)"
- -DENABLE_TEST="$(usex test)"
-DQTC_ENABLE_X11="$(usex X)"
-DQTC_INSTALL_PO="$(usex nls)"
-DQTC_QT5_ENABLE_KDE="$(usex plasma)"
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2018-11-10 20:27 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2018-11-10 20:27 UTC (permalink / raw
To: gentoo-commits
commit: 3d6e675d90c69b51c03b9fac7b9caa806852028c
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 10 20:15:39 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 10 20:27:01 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3d6e675d
x11-themes/qtcurve: Fix build w/ USE-X and dev-qt/qtwebengine present
Closes: https://bugs.gentoo.org/670466
Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
.../files/qtcurve-1.9.0-no-X-buildfix.patch | 54 ++++++++++++++++++++++
x11-themes/qtcurve/qtcurve-1.9.0.ebuild | 3 +-
x11-themes/qtcurve/qtcurve-9999.ebuild | 4 +-
3 files changed, 58 insertions(+), 3 deletions(-)
diff --git a/x11-themes/qtcurve/files/qtcurve-1.9.0-no-X-buildfix.patch b/x11-themes/qtcurve/files/qtcurve-1.9.0-no-X-buildfix.patch
new file mode 100644
index 00000000000..883a8af2435
--- /dev/null
+++ b/x11-themes/qtcurve/files/qtcurve-1.9.0-no-X-buildfix.patch
@@ -0,0 +1,54 @@
+From 9aae21bb68308d9017977a53059dd75b347d7bbd Mon Sep 17 00:00:00 2001
+From: "R.J.V. Bertin" <rjvbertin@gmail.com>
+Date: Tue, 3 Apr 2018 18:18:37 +0200
+Subject: Minor X11-related build fixes:
+
+- don't override QTC_ENABLE_X11 with platform conditionals
+- use qtcX11Enabled() instead of QTC_ENABLE_X11 everywhere
+
+Committed from host : Portia.local
+---
+ qt5/CMakeLists.txt | 2 +-
+ qt5/config/qtcurveconfig.cpp | 7 ++++---
+ 2 files changed, 5 insertions(+), 4 deletions(-)
+
+diff --git a/qt5/CMakeLists.txt b/qt5/CMakeLists.txt
+index 930c919..8cff198 100644
+--- a/qt5/CMakeLists.txt
++++ b/qt5/CMakeLists.txt
+@@ -36,7 +36,7 @@ if(ENABLE_QT5)
+ set(QTC_QT5_DEFS ${QTC_QT5_DEFS} ${${QtModule}_DEFINITIONS})
+ set(QTC_QT5_INCLUDES ${QTC_QT5_INCLUDES} ${${QtModule}_INCLUDE_DIRS})
+ endforeach()
+- if(NOT APPLE)
++ if(QTC_ENABLE_X11)
+ set(QTC_QT5_OPT_MODULES Qt5X11Extras)
+ endif()
+ foreach(QtModule ${QTC_QT5_OPT_MODULES})
+diff --git a/qt5/config/qtcurveconfig.cpp b/qt5/config/qtcurveconfig.cpp
+index b320c25..a34f9bd 100644
+--- a/qt5/config/qtcurveconfig.cpp
++++ b/qt5/config/qtcurveconfig.cpp
+@@ -42,6 +42,7 @@
+ #include <qtcurve-utils/dirs.h>
+ #include <qtcurve-utils/process.h>
+ #include <qtcurve-utils/qtutils.h>
++#include <qtcurve-utils/x11base.h>
+
+ // Qt
+ #include <QCheckBox>
+@@ -975,9 +976,9 @@ QtCurveConfig::QtCurveConfig(QWidget *parent)
+ dropShadowSize->setRange(0, 100);
+ dropShadowSize->setSingleStep(1);
+ dropShadowSize->setValue(qtcX11ShadowSize());
+-#ifndef QTC_ENABLE_X11
+- dropShadowSize->setEnabled(false);
+-#endif
++ if (!qtcX11Enabled()) {
++ dropShadowSize->setEnabled(false);
++ }
+
+
+ sliderWidth->setRange(MIN_SLIDER_WIDTH, MAX_SLIDER_WIDTH);
+--
+cgit v0.11.2
diff --git a/x11-themes/qtcurve/qtcurve-1.9.0.ebuild b/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
index cb783404aa5..6047b67909d 100644
--- a/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
+++ b/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
@@ -49,7 +49,7 @@ COMMON_DEPEND="
$(add_qt_dep qtgui)
$(add_qt_dep qtsvg)
$(add_qt_dep qtwidgets)
- $(add_qt_dep qtx11extras)
+ X? ( $(add_qt_dep qtx11extras) )
)
X? (
x11-libs/libX11
@@ -68,6 +68,7 @@ DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
PATCHES=(
"${FILESDIR}/${PN}-1.9.0-build_testing.patch"
+ "${FILESDIR}/${PN}-1.9.0-no-X-buildfix.patch"
)
src_configure() {
diff --git a/x11-themes/qtcurve/qtcurve-9999.ebuild b/x11-themes/qtcurve/qtcurve-9999.ebuild
index 9a99d8eec62..0d7ef602fb6 100644
--- a/x11-themes/qtcurve/qtcurve-9999.ebuild
+++ b/x11-themes/qtcurve/qtcurve-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -49,7 +49,7 @@ COMMON_DEPEND="
$(add_qt_dep qtgui)
$(add_qt_dep qtsvg)
$(add_qt_dep qtwidgets)
- $(add_qt_dep qtx11extras)
+ X? ( $(add_qt_dep qtx11extras) )
)
X? (
x11-libs/libX11
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2018-11-24 23:18 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2018-11-24 23:18 UTC (permalink / raw
To: gentoo-commits
commit: cd1325eb7f1d815a5853b7de8ee6392974378f04
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 24 19:38:41 2018 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Sat Nov 24 23:16:41 2018 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cd1325eb
x11-themes/qtcurve: Drop 1.9.0_rc1-r2
Package-Manager: Portage-2.3.52, Repoman-2.3.12
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
x11-themes/qtcurve/Manifest | 1 -
.../files/qtcurve-1.9.0-rare_crash_hang_fix.patch | 238 ---------------------
x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild | 88 --------
3 files changed, 327 deletions(-)
diff --git a/x11-themes/qtcurve/Manifest b/x11-themes/qtcurve/Manifest
index 122befb8381..69b27ecedfc 100644
--- a/x11-themes/qtcurve/Manifest
+++ b/x11-themes/qtcurve/Manifest
@@ -1,2 +1 @@
DIST qtcurve-1.9.0.tar.gz 801675 BLAKE2B ed8d490b6e00e527f7da62c1fb676072ed3d75e50e14ae57e7807e7a9bd37f10a7b6b29e062ac05e02507c19be13ac3d003ea240fd00cff27bc74938a216a3e0 SHA512 a158f0880a2dc657e5f14366e046b18f0fe9d9983d1e1b243417f26987f6e69612c83f8b69293ae9036361adf67833b296564750f0f4cc0f405604f628dbff66
-DIST qtcurve-1.9.0_rc1.tar.gz 800845 BLAKE2B a63049086d967bb755d4f071ac4a5058a679d4d2914855b98e82763cbd9a22cdc6d75afb6ddb15b7e24a55e8e248b8df0a5cb517fc9be7ef3b07881448c2b5be SHA512 c586c5c922dcc2a374bf9e3b3abb3e64dcb6299531615fe980b8eba7d2e5a68038ec2eafae24a0c0d4782b2e08984534723bb713386d5119fa8016b9fbdd436e
diff --git a/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch b/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch
deleted file mode 100644
index 921001f4454..00000000000
--- a/x11-themes/qtcurve/files/qtcurve-1.9.0-rare_crash_hang_fix.patch
+++ /dev/null
@@ -1,238 +0,0 @@
-From b7da5ec7e2965332e3922dfb03a3d100aa203b94 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Ren=C3=A9=20J=2EV=2E=20Bertin?= <rjvbertin@gmail.com>
-Date: Fri, 8 Dec 2017 10:10:47 +0100
-Subject: address a rare crash/hang on exit
-
-Under rare circumstances Qt would attempt to deliver signals to stale
-style instances, or leave orphaned style instances after unloading the
-plugin. This is addressed by disconnecting the (currently only) signal
-originating from an external application and the plugin now ensures it
-leaves no orphaned style instances behind.
-Also, moves the code handling pre-exit disconnection to a subclass.
-
-Differential Revision: https://phabricator.kde.org/D9229
----
- qt5/style/qtcurve.cpp | 72 ++++++++++++++++++++++++++++++++------------
- qt5/style/qtcurve.h | 5 +--
- qt5/style/qtcurve_plugin.cpp | 15 ++++++---
- 3 files changed, 67 insertions(+), 25 deletions(-)
-
-diff --git a/qt5/style/qtcurve.cpp b/qt5/style/qtcurve.cpp
-index 1bf6e1d..07eca0f 100644
---- a/qt5/style/qtcurve.cpp
-+++ b/qt5/style/qtcurve.cpp
-@@ -101,6 +101,26 @@
-
- namespace QtCurve {
-
-+class Style::DBusHelper {
-+public:
-+ DBusHelper()
-+ : m_dBus(0)
-+ , m_dbusConnected(false)
-+ {}
-+ ~DBusHelper()
-+ {
-+ if (m_dBus) {
-+ m_dBus->disconnect();
-+ m_dBus->deleteLater();
-+ m_dBus = 0;
-+ }
-+ }
-+
-+ std::once_flag m_aboutToQuitInit;
-+ QDBusInterface *m_dBus;
-+ bool m_dbusConnected;
-+};
-+
- static inline void setPainterPen(QPainter *p, const QColor &col, const qreal width=1.0)
- {
- p->setPen(QPen(col, width));
-@@ -321,6 +341,7 @@ static void parseWindowLine(const QString &line, QList<int> &data)
- #endif
-
- Style::Style() :
-+ m_dBusHelper(new DBusHelper()),
- m_popupMenuCols(0L),
- m_sliderCols(0L),
- m_defBtnCols(0L),
-@@ -343,13 +364,11 @@ Style::Style() :
- m_progressBarAnimateTimer(0),
- m_animateStep(0),
- m_titlebarHeight(0),
-- m_dBus(0),
- m_shadowHelper(new ShadowHelper(this)),
- m_sViewSBar(0L),
- m_windowManager(new WindowManager(this)),
- m_blurHelper(new BlurHelper(this)),
-- m_shortcutHandler(new ShortcutHandler(this)),
-- m_dbusConnected(false)
-+ m_shortcutHandler(new ShortcutHandler(this))
- {
- const char *env = getenv(QTCURVE_PREVIEW_CONFIG);
- #ifdef QTC_QT5_ENABLE_KDE
-@@ -394,6 +413,23 @@ void Style::init(bool initial)
- #ifdef QTC_QT5_ENABLE_KDE
- connect(KWindowSystem::self(), &KWindowSystem::compositingChanged, this, &Style::compositingToggled);
- #endif
-+ // prepare the cleanup handler
-+ if (QCoreApplication::instance()) {
-+ std::call_once(m_dBusHelper->m_aboutToQuitInit, [this] {
-+ connect(QCoreApplication::instance(), &QCoreApplication::aboutToQuit, this, [this] () {
-+ // disconnect from the session DBus. We're no longer interested in the
-+ // information it might send when the app we're serving is shutting down.
-+ disconnectDBus();
-+ // Stop listening to select signals. We shouldn't stop emitting signals
-+ // (like QObject::destroyed) but we can reduce the likelihood that pending
-+ // signals will be sent to us post-mortem.
-+#ifdef QTC_QT5_ENABLE_KDE
-+ disconnect(KWindowSystem::self(), &KWindowSystem::compositingChanged,
-+ this, &Style::compositingToggled);
-+#endif
-+ } );
-+ } );
-+ }
- }
- }
-
-@@ -663,14 +699,11 @@ void Style::init(bool initial)
-
- void Style::connectDBus()
- {
-- if (m_dbusConnected)
-+ if (m_dBusHelper->m_dbusConnected)
- return;
- auto bus = QDBusConnection::sessionBus();
- if (bus.isConnected()) {
-- m_dbusConnected = true;
-- if (QCoreApplication::instance()) {
-- connect(QCoreApplication::instance(), &QCoreApplication::aboutToQuit, this, &Style::disconnectDBus);
-- }
-+ m_dBusHelper->m_dbusConnected = true;
- bus.connect(QString(), "/KGlobalSettings", "org.kde.KGlobalSettings",
- "notifyChange", this, SLOT(kdeGlobalSettingsChange(int, int)));
- #ifndef QTC_QT5_ENABLE_KDE
-@@ -699,12 +732,15 @@ void Style::connectDBus()
-
- void Style::disconnectDBus()
- {
-- if (!m_dbusConnected)
-+ if (!m_dBusHelper->m_dbusConnected)
- return;
-- m_dbusConnected = false;
- auto bus = QDBusConnection::sessionBus();
-+ if (!bus.isConnected())
-+ return;
-+ m_dBusHelper->m_dbusConnected = false;
- if (getenv("QTCURVE_DEBUG")) {
- qWarning() << Q_FUNC_INFO << this << "Disconnecting from" << bus.name() << "/" << bus.baseService();
-+ dumpObjectInfo();
- }
- bus.disconnect(QString(), "/KGlobalSettings", "org.kde.KGlobalSettings",
- "notifyChange",
-@@ -739,9 +775,7 @@ Style::~Style()
- m_plugin->m_styleInstances.removeAll(this);
- }
- freeColors();
-- if (m_dBus) {
-- delete m_dBus;
-- }
-+ delete m_dBusHelper;
- }
-
- void Style::freeColor(QSet<QColor *> &freedColors, QColor **cols)
-@@ -4467,10 +4501,10 @@ void Style::emitMenuSize(QWidget *w, unsigned short size, bool force)
- if (oldSize != size) {
- w->setProperty(constMenuSizeProperty, size);
- qtcX11SetMenubarSize(wid, size);
-- if(!m_dBus)
-- m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
-+ if(!m_dBusHelper->m_dBus)
-+ m_dBusHelper->m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
- "org.kde.QtCurve");
-- m_dBus->call(QDBus::NoBlock, "menuBarSize",
-+ m_dBusHelper->m_dBus->call(QDBus::NoBlock, "menuBarSize",
- (unsigned int)wid, (int)size);
- }
- }
-@@ -4479,10 +4513,10 @@ void Style::emitMenuSize(QWidget *w, unsigned short size, bool force)
- void Style::emitStatusBarState(QStatusBar *sb)
- {
- if (opts.statusbarHiding & HIDE_KWIN) {
-- if (!m_dBus)
-- m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
-+ if (!m_dBusHelper->m_dBus)
-+ m_dBusHelper->m_dBus = new QDBusInterface("org.kde.kwin", "/QtCurve",
- "org.kde.QtCurve");
-- m_dBus->call(QDBus::NoBlock, "statusBarState",
-+ m_dBusHelper->m_dBus->call(QDBus::NoBlock, "statusBarState",
- (unsigned int)qtcGetWid(sb->window()),
- sb->isVisible());
- }
-diff --git a/qt5/style/qtcurve.h b/qt5/style/qtcurve.h
-index 56960a5..ecfa2e7 100644
---- a/qt5/style/qtcurve.h
-+++ b/qt5/style/qtcurve.h
-@@ -522,6 +522,9 @@ private:
- const QWidget *widget) const;
-
- private:
-+ class DBusHelper;
-+ DBusHelper *m_dBusHelper;
-+
- mutable Options opts;
- QColor m_highlightCols[TOTAL_SHADES + 1],
- m_backgroundCols[TOTAL_SHADES + 1],
-@@ -564,14 +567,12 @@ private:
- mutable QList<int> m_mdiButtons[2]; // 0=left, 1=right
- mutable int m_titlebarHeight;
-
-- QDBusInterface *m_dBus;
- ShadowHelper *m_shadowHelper;
- mutable QScrollBar *m_sViewSBar;
- mutable QMap<QWidget*, QSet<QWidget*> > m_sViewContainers;
- WindowManager *m_windowManager;
- BlurHelper *m_blurHelper;
- ShortcutHandler *m_shortcutHandler;
-- bool m_dbusConnected;
- #ifdef QTC_QT5_ENABLE_KDE
- KSharedConfigPtr m_configFile;
- KSharedConfigPtr m_kdeGlobals;
-diff --git a/qt5/style/qtcurve_plugin.cpp b/qt5/style/qtcurve_plugin.cpp
-index ce363ac..481fffc 100644
---- a/qt5/style/qtcurve_plugin.cpp
-+++ b/qt5/style/qtcurve_plugin.cpp
-@@ -129,6 +129,11 @@ StylePlugin::create(const QString &key)
- if (key.toLower() == "qtcurve") {
- qtc = new Style;
- qtc->m_plugin = this;
-+ // keep track of all style instances we allocate, for instance
-+ // for KLineEdit widgets which apparently insist on overriding
-+ // certain things (cf. KLineEditStyle). We want to be able to
-+ // delete those instances as properly and as early as
-+ // possible during the global destruction phase.
- m_styleInstances << qtc;
- } else {
- qtc = nullptr;
-@@ -151,12 +156,14 @@ StylePlugin::~StylePlugin()
- qtcInfo("Deleting QtCurve plugin (%p)\n", this);
- if (!m_styleInstances.isEmpty()) {
- qtcWarn("there remain(s) %d Style instance(s)\n", m_styleInstances.count());
-- QList<Style*>::Iterator it = m_styleInstances.begin();
-- while (it != m_styleInstances.end()) {
-- Style *that = *it;
-- it = m_styleInstances.erase(it);
-+ foreach (Style *that, m_styleInstances) {
-+ // don't let ~Style() touch m_styleInstances from here.
-+ that->m_plugin = nullptr;
-+ // each instance should already have disconnected from the D-Bus
-+ // and disconnected from receiving select signals.
- delete that;
- }
-+ m_styleInstances.clear();
- }
- if (firstPlInstance == this) {
- firstPlInstance = nullptr;
---
-cgit v0.11.2
-
diff --git a/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild b/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
deleted file mode 100644
index 752def4b821..00000000000
--- a/x11-themes/qtcurve/qtcurve-1.9.0_rc1-r2.ebuild
+++ /dev/null
@@ -1,88 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-ECM_KDEINSTALLDIRS="false"
-KDE_AUTODEPS="false"
-inherit kde5
-
-DESCRIPTION="Widget styles for Qt and GTK2"
-HOMEPAGE="https://cgit.kde.org/qtcurve.git"
-
-LICENSE="LGPL-2+"
-SLOT="0"
-IUSE="+X gtk nls plasma +qt5 test"
-
-if [[ "${PV}" != 9999 ]] ; then
- SRC_URI="https://github.com/KDE/qtcurve/archive/${PV/_/-}.tar.gz -> ${P}.tar.gz"
- KEYWORDS="alpha amd64 ~hppa ppc ppc64 ~sparc x86"
- S="${WORKDIR}/${P/_/-}"
-fi
-
-REQUIRED_USE="gtk? ( X )
- || ( gtk qt5 )
- plasma? ( qt5 )
-"
-
-COMMON_DEPEND="
- gtk? ( x11-libs/gtk+:2 )
- plasma? (
- $(add_frameworks_dep frameworkintegration)
- $(add_frameworks_dep karchive)
- $(add_frameworks_dep kcompletion)
- $(add_frameworks_dep kconfig)
- $(add_frameworks_dep kconfigwidgets)
- $(add_frameworks_dep kcoreaddons)
- $(add_frameworks_dep kdelibs4support)
- $(add_frameworks_dep kguiaddons)
- $(add_frameworks_dep ki18n)
- $(add_frameworks_dep kiconthemes)
- $(add_frameworks_dep kio)
- $(add_frameworks_dep kwidgetsaddons)
- $(add_frameworks_dep kwindowsystem)
- $(add_frameworks_dep kxmlgui)
- $(add_qt_dep qtprintsupport)
- )
- qt5? (
- $(add_qt_dep qtdbus)
- $(add_qt_dep qtgui)
- $(add_qt_dep qtsvg)
- $(add_qt_dep qtwidgets)
- $(add_qt_dep qtx11extras)
- )
- X? (
- x11-libs/libX11
- x11-libs/libxcb
- )
-"
-DEPEND="${COMMON_DEPEND}
- virtual/pkgconfig
- nls? ( sys-devel/gettext )
-"
-RDEPEND="${COMMON_DEPEND}
- !x11-themes/gtk-engines-qtcurve
-"
-
-DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
-
-PATCHES=(
- "${FILESDIR}/${PN}-1.9.0-rare_crash_hang_fix.patch"
- "${FILESDIR}/${PN}-1.9.0-build_testing.patch"
-)
-
-src_configure() {
- local mycmakeargs=(
- -DENABLE_QT4=OFF
- -DLIB_INSTALL_DIR="$(get_libdir)"
- -DQTC_QT4_ENABLE_KDE=OFF
- -DQTC_KDE4_DEFAULT_HOME=ON
- -DENABLE_GTK2="$(usex gtk)"
- -DENABLE_QT5="$(usex qt5)"
- -DQTC_ENABLE_X11="$(usex X)"
- -DQTC_INSTALL_PO="$(usex nls)"
- -DQTC_QT5_ENABLE_KDE="$(usex plasma)"
- )
-
- kde5_src_configure
-}
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/
@ 2019-06-05 16:09 Andreas Sturmlechner
0 siblings, 0 replies; 7+ messages in thread
From: Andreas Sturmlechner @ 2019-06-05 16:09 UTC (permalink / raw
To: gentoo-commits
commit: 88894187c72800cb4491cf3abf1e532197d45f75
Author: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Jun 5 16:03:50 2019 +0000
Commit: Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Jun 5 16:08:45 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=88894187
x11-themes/qtcurve: Fix build with GCC-9
Closes: https://bugs.gentoo.org/685794
Package-Manager: Portage-2.3.67, Repoman-2.3.14
Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>
x11-themes/qtcurve/files/qtcurve-1.9.0-gcc9.patch | 26 +++++++++++++++++++++++
x11-themes/qtcurve/qtcurve-1.9.0.ebuild | 3 ++-
2 files changed, 28 insertions(+), 1 deletion(-)
diff --git a/x11-themes/qtcurve/files/qtcurve-1.9.0-gcc9.patch b/x11-themes/qtcurve/files/qtcurve-1.9.0-gcc9.patch
new file mode 100644
index 00000000000..56bf30b4562
--- /dev/null
+++ b/x11-themes/qtcurve/files/qtcurve-1.9.0-gcc9.patch
@@ -0,0 +1,26 @@
+From ee2228ea2f18ac5da9b434ee6089381df815aa94 Mon Sep 17 00:00:00 2001
+From: Yichao Yu <yyc1992@gmail.com>
+Date: Wed, 5 Jun 2019 09:03:40 -0400
+Subject: [utils/gtkprops] Remove unnecessary constexpr, this is not allowed in
+ C++14
+
+BUG: 408286
+---
+ lib/utils/gtkprops.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/utils/gtkprops.h b/lib/utils/gtkprops.h
+index abc0675..e248255 100644
+--- a/lib/utils/gtkprops.h
++++ b/lib/utils/gtkprops.h
+@@ -74,7 +74,7 @@ class GtkWidgetProps {
+ };
+ #define DEF_WIDGET_SIG_CONN_PROPS(name) \
+ struct _SigConn_##name##_ObjGetter { \
+- constexpr inline GObject* \
++ inline GObject* \
+ operator()(SigConn<_SigConn_##name##_ObjGetter> *p) const \
+ { \
+ return (GObject*)qtcContainerOf(p, Props, name)->m_w; \
+--
+cgit v1.1
diff --git a/x11-themes/qtcurve/qtcurve-1.9.0.ebuild b/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
index 85ce451395d..428c60441af 100644
--- a/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
+++ b/x11-themes/qtcurve/qtcurve-1.9.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=6
@@ -71,6 +71,7 @@ DOCS=( AUTHORS ChangeLog.md README.md TODO.md )
PATCHES=(
"${FILESDIR}/${PN}-1.9.0-build_testing.patch"
"${FILESDIR}/${PN}-1.9.0-no-X-buildfix.patch"
+ "${FILESDIR}/${PN}-1.9.0-gcc9.patch"
)
src_configure() {
^ permalink raw reply related [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-06-05 16:09 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-06-27 19:00 [gentoo-commits] repo/gentoo:master commit in: x11-themes/qtcurve/files/, x11-themes/qtcurve/ Andreas Sturmlechner
-- strict thread matches above, loose matches on Subject: below --
2019-06-05 16:09 Andreas Sturmlechner
2018-11-24 23:18 Andreas Sturmlechner
2018-11-10 20:27 Andreas Sturmlechner
2018-06-02 12:54 Lars Wendler
2017-11-23 22:09 Andreas Sturmlechner
2016-09-10 21:11 Tobias Klausmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox