You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
30 lines
1.0 KiB
30 lines
1.0 KiB
13 years ago
|
--- kdebase/kdesktop/lock/lockprocess.cc.tooltips 2012-08-10 15:16:14.047229047 +0200
|
||
|
+++ kdebase/kdesktop/lock/lockprocess.cc 2012-08-10 15:41:08.433645385 +0200
|
||
|
@@ -960,6 +960,26 @@
|
||
|
|
||
|
setGeometry(0, 0, mRootWidth, mRootHeight);
|
||
|
|
||
|
+ // Hack to close all tooltips on screen
|
||
|
+ Window rootWindow = RootWindow(x11Display(), x11Screen());
|
||
|
+ Window parent;
|
||
|
+ Window* children = NULL;
|
||
|
+ Window* child = NULL;
|
||
|
+ unsigned int noOfChildren = 0;
|
||
|
+ XWindowAttributes childAttr;
|
||
|
+ Window childTransient;
|
||
|
+
|
||
|
+ if(XQueryTree(x11Display(), rootWindow, &rootWindow, &parent, &children, &noOfChildren) && noOfChildren>0 ) {
|
||
|
+ for (unsigned int i=0; i<noOfChildren; i++) {
|
||
|
+ if (XGetWindowAttributes(x11Display(), children[i], &childAttr) && XGetTransientForHint(x11Display(), children[i], &childTransient)) {
|
||
|
+ if((childAttr.map_state == IsViewable) && (childAttr.override_redirect) && (childTransient)) {
|
||
|
+ XUnmapWindow(x11Display(), children[i]);
|
||
|
+ }
|
||
|
+ }
|
||
|
+ }
|
||
|
+ }
|
||
|
+
|
||
|
+
|
||
|
kdDebug(1204) << "Saver window Id: " << winId() << endl;
|
||
|
}
|
||
|
|