aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRaphael Kubo da Costa <rakuco@FreeBSD.org>2015-03-06 22:03:14 +0000
committerRaphael Kubo da Costa <rakuco@FreeBSD.org>2015-03-06 22:03:14 +0000
commit9f2a4f6580225894390af982c711d32f2027a604 (patch)
treec6e1fc1ef424bd0b921808de5c87e06c1d7f7aa2
parent0077252c5730a7f598bfbddc40862ec418e9f056 (diff)
downloadports-9f2a4f6580225894390af982c711d32f2027a604.tar.gz
ports-9f2a4f6580225894390af982c711d32f2027a604.zip
MFH: r379187
Fix QSystemTray Add a patch found by PCBSD's Kris Moore <kris@pcbsd.org> that fixes QSystemTrayIcons on Desktops other than KDE. Provided by Kris via mailing list on 2015-01-29. Approved by: rakuco (mentor) Approved by: portmgr (erwin)
Notes
Notes: svn path=/branches/2015Q1/; revision=380628
-rw-r--r--x11-toolkits/qt5-gui/files/patch-src_plugins_platforms_xcb_qxcbwindow.cpp23
1 files changed, 23 insertions, 0 deletions
diff --git a/x11-toolkits/qt5-gui/files/patch-src_plugins_platforms_xcb_qxcbwindow.cpp b/x11-toolkits/qt5-gui/files/patch-src_plugins_platforms_xcb_qxcbwindow.cpp
new file mode 100644
index 000000000000..6b9e50bc9afe
--- /dev/null
+++ b/x11-toolkits/qt5-gui/files/patch-src_plugins_platforms_xcb_qxcbwindow.cpp
@@ -0,0 +1,23 @@
+--- src/plugins/platforms/xcb/qxcbwindow.cpp.orig 2015-01-29 15:05:03.094563565 -0500
++++ src/plugins/platforms/xcb/qxcbwindow.cpp 2015-01-29 15:08:10.219554046 -0500
+@@ -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;