QWidget::setWindowRole does nothing (QTBUG-45484)
This commit is contained in:
parent
03e171010a
commit
e0cb122fdd
39
0002-xcb-set-SM_CLIENT_ID-property.patch
Normal file
39
0002-xcb-set-SM_CLIENT_ID-property.patch
Normal file
@ -0,0 +1,39 @@
|
||||
From 72de0df09c2fb5b0d61b019753aa4522964113a5 Mon Sep 17 00:00:00 2001
|
||||
From: Stefan Becker <chemobejk@gmail.com>
|
||||
Date: Mon, 25 May 2015 17:46:49 +0300
|
||||
Subject: [PATCH 2/2] xcb: set SM_CLIENT_ID property
|
||||
|
||||
SM_CLIENT_ID is required by kwin for proper session management.
|
||||
|
||||
Copy the code from the QT4 implementation to the appropriate place in
|
||||
QT5.
|
||||
|
||||
Task-number: QTBUG-46310
|
||||
---
|
||||
src/plugins/platforms/xcb/qxcbwindow.cpp | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/src/plugins/platforms/xcb/qxcbwindow.cpp b/src/plugins/platforms/xcb/qxcbwindow.cpp
|
||||
index f8c2ff8..513f556 100644
|
||||
--- a/src/plugins/platforms/xcb/qxcbwindow.cpp
|
||||
+++ b/src/plugins/platforms/xcb/qxcbwindow.cpp
|
||||
@@ -530,6 +530,16 @@ void QXcbWindow::create()
|
||||
atom(QXcbAtom::WM_CLIENT_LEADER), XCB_ATOM_WINDOW, 32,
|
||||
1, &leader));
|
||||
|
||||
+#ifndef QT_NO_SESSIONMANAGER
|
||||
+ // If we are session managed, inform the window manager about it
|
||||
+ QByteArray session = qApp->sessionId().toLatin1();
|
||||
+ if (!session.isEmpty()) {
|
||||
+ Q_XCB_CALL(xcb_change_property(xcb_connection(), XCB_PROP_MODE_REPLACE, leader,
|
||||
+ atom(QXcbAtom::SM_CLIENT_ID), XCB_ATOM_STRING, 8,
|
||||
+ session.length(), session.constData()));
|
||||
+ }
|
||||
+#endif
|
||||
+
|
||||
/* Add XEMBED info; this operation doesn't initiate the embedding. */
|
||||
quint32 data[] = { XEMBED_VERSION, XEMBED_MAPPED };
|
||||
Q_XCB_CALL(xcb_change_property(xcb_connection(), XCB_PROP_MODE_REPLACE, m_window,
|
||||
--
|
||||
2.4.0
|
||||
|
@ -105,6 +105,10 @@ Patch52: qtbase-opensource-src-5.4.1-QTBUG-33093.patch
|
||||
# adapted to apply on top of patch51
|
||||
Patch53: qtbase-opensource-src-5.4.1-QTBUG-45484.patch
|
||||
|
||||
# https://bugreports.qt.io/browse/QTBUG-46310
|
||||
#SM_CLIENT_ID property is not set
|
||||
Patch54: https://bugreports.qt.io/secure/attachment/48820/0002-xcb-set-SM_CLIENT_ID-property.patch
|
||||
|
||||
## upstream patches
|
||||
# workaround https://bugreports.qt-project.org/browse/QTBUG-43057
|
||||
# 'make docs' crash on el6, use qSort instead of std::sort
|
||||
@ -389,6 +393,7 @@ rm -fv mkspecs/linux-g++*/qmake.conf.multilib-optflags
|
||||
%patch51 -p1 -b .QTBUG-42985
|
||||
%patch52 -p1 -b .QTBUG-33093
|
||||
%patch53 -p1 -b .QTBUG-45484
|
||||
%patch54 -p1 -b .QTBUG-46310
|
||||
|
||||
%if 0%{?rhel} == 6
|
||||
%patch100 -p1 -b .QTBUG-43057
|
||||
|
Loading…
Reference in New Issue
Block a user