Patch from Thomas Leitner to clear up the confusion Window != WId
when using XGetTransientForHint. svn path=/trunk/kdebase/kwin/; revision=54888
This commit is contained in:
parent
d332cf9c90
commit
fde0167220
1 changed files with 8 additions and 2 deletions
10
client.cpp
10
client.cpp
|
@ -424,8 +424,11 @@ Client::Client( Workspace *ws, WId w, QWidget *parent, const char *name, WFlags
|
||||||
getWmNormalHints(); // get xSizeHint
|
getWmNormalHints(); // get xSizeHint
|
||||||
fetchName();
|
fetchName();
|
||||||
|
|
||||||
if ( !XGetTransientForHint( qt_xdisplay(), (Window) win, (Window*) &transient_for ) )
|
Window ww;
|
||||||
|
if ( !XGetTransientForHint( qt_xdisplay(), (Window) win, &ww ) )
|
||||||
transient_for = None;
|
transient_for = None;
|
||||||
|
else
|
||||||
|
transient_for = (WId) ww;
|
||||||
|
|
||||||
if ( mainClient()->isSticky() )
|
if ( mainClient()->isSticky() )
|
||||||
setSticky( TRUE );
|
setSticky( TRUE );
|
||||||
|
@ -854,8 +857,11 @@ bool Client::propertyNotify( XPropertyEvent& e )
|
||||||
fetchName();
|
fetchName();
|
||||||
break;
|
break;
|
||||||
case XA_WM_TRANSIENT_FOR:
|
case XA_WM_TRANSIENT_FOR:
|
||||||
if ( !XGetTransientForHint( qt_xdisplay(), (Window) win, (Window*) &transient_for ) )
|
Window ww;
|
||||||
|
if ( !XGetTransientForHint( qt_xdisplay(), (Window) win, &ww ) )
|
||||||
transient_for = None;
|
transient_for = None;
|
||||||
|
else
|
||||||
|
transient_for = (WId) ww;
|
||||||
break;
|
break;
|
||||||
case XA_WM_HINTS:
|
case XA_WM_HINTS:
|
||||||
getWMHints();
|
getWMHints();
|
||||||
|
|
Loading…
Reference in a new issue