[SCM] qtbase packaging branch, jessie, updated. debian/5.3.2+dfsg-4+deb8u1-3-gb0a4eac
Dmitry Shachnev
mitya57 at moszumanska.debian.org
Sun Dec 25 21:09:41 UTC 2016
Gitweb-URL: http://git.debian.org/?p=pkg-kde/qt/qtbase.git;a=commitdiff;h=b0a4eac
The following commit has been merged in the jessie branch:
commit b0a4eacb8a1e17b5c611bf5f40e5a95414987046
Author: Dmitry Shachnev <mitya57 at gmail.com>
Date: Mon Dec 26 00:08:22 2016 +0300
Backport upstream change to fix X11 tray icons on some desktops.
Closes: #775398, #847665.
---
debian/changelog | 3 ++
debian/patches/series | 1 +
...ing_tray_icon_window_until_it_is_embedded.patch | 37 ++++++++++++++++++++++
3 files changed, 41 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index 1f2d997..d41da93 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -4,6 +4,9 @@ qtbase-opensource-src (5.3.2+dfsg-4+deb8u2) UNRELEASED; urgency=medium
* Backport upstream change (networkconfig_prevent_bad_deref.patch) to
prevent bad-ptrs deref in QNetworkConfigurationManagerPrivate.
Closes: #805265.
+ * Backport upstream change to fix X11 tray icons on some desktops
+ (xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch).
+ Closes: #775398, #847665.
-- Debian Qt/KDE Maintainers <debian-qt-kde at lists.debian.org> Mon, 16 Nov 2015 21:22:34 +0300
diff --git a/debian/patches/series b/debian/patches/series
index f56e691..3580b62 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -5,6 +5,7 @@ gnukfreebsd.diff
fix_bug_in_internal_comparison_operator.patch
fix_imagehandlers_cves.diff
networkconfig_prevent_bad_deref.patch
+xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch
# Patches that need to be upstreamed
fix_sparc_atomics.patch
diff --git a/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch b/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch
new file mode 100644
index 0000000..4939c0c
--- /dev/null
+++ b/debian/patches/xcb_delay_showing_tray_icon_window_until_it_is_embedded.patch
@@ -0,0 +1,37 @@
+Description: xcb: delay showing tray icon window until it is embedded
+ Otherwise there is a race condition: when the tray implementation
+ gets around to embedding the window, if it was already shown,
+ it will be unmapped, embedded, and then remapped. Some tray
+ implementations will resize the tray icon to 1 pixel wide in
+ that case. We also never want to show a window that was intended
+ for the tray in any other location, so it's better that it remain
+ invisible until we are sure it is embedded.
+Origin: upstream, https://code.qt.io/cgit/qt/qtbase.git/commit/?id=612953a626ec21b8
+Bug: https://bugs.debian.org/775398
+Bug: https://bugs.debian.org/847665
+Last-Update: 2016-12-26
+
+--- a/src/plugins/platforms/xcb/qxcbwindow.cpp
++++ b/src/plugins/platforms/xcb/qxcbwindow.cpp
+@@ -701,6 +701,9 @@
+ if (connection()->time() != XCB_TIME_CURRENT_TIME)
+ updateNetWmUserTime(connection()->time());
+
++ if (window()->objectName() == QLatin1String("QSystemTrayIconSysWindow"))
++ return; // defer showing until XEMBED_EMBEDDED_NOTIFY
++
+ Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window));
+
+ if (QGuiApplication::modalWindow() == window())
+@@ -2130,7 +2133,10 @@
+ switch (event->data.data32[1]) {
+ case XEMBED_WINDOW_ACTIVATE:
+ case XEMBED_WINDOW_DEACTIVATE:
++ break;
+ case XEMBED_EMBEDDED_NOTIFY:
++ Q_XCB_CALL(xcb_map_window(xcb_connection(), m_window));
++ m_screen->windowShown(this);
+ break;
+ case XEMBED_FOCUS_IN:
+ Qt::FocusReason reason;
+
--
qtbase packaging
More information about the pkg-kde-commits
mailing list