mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-19 12:28:22 +01:00
Remove _NET_FRAME_EXTENTS on shutdown.
After we exit there are no window decorations therefore frame extents are meaningless. We could be left with parts of the window being the wrong opacity if the property is left intact and a compositing manager configured to draw decorations with a different opacity to the rest of the window is still running. Remove the _NET_FRAME_EXTENTS property from all windows when we shut down to prevent windows from being drawn incorrectly after we're gone.
This commit is contained in:
committed by
Carlos R. Mafra
parent
0e995bbf6e
commit
5c0b851cc6
@@ -1617,6 +1617,8 @@ void wUnmanageWindow(WWindow *wwin, Bool restore, Bool destroyed)
|
||||
wApplicationDeactivate(oapp);
|
||||
}
|
||||
|
||||
wNETCleanupFrameExtents(wwin);
|
||||
|
||||
wWindowDestroy(wwin);
|
||||
XFlush(dpy);
|
||||
}
|
||||
|
||||
@@ -1642,3 +1642,8 @@ void wNETFrameExtents(WWindow *wwin)
|
||||
|
||||
XChangeProperty(dpy, wwin->client_win, net_frame_extents, XA_CARDINAL, 32, PropModeReplace, (unsigned char *) extents, 4);
|
||||
}
|
||||
|
||||
void wNETCleanupFrameExtents(WWindow *wwin)
|
||||
{
|
||||
XDeleteProperty(dpy, wwin->client_win, net_frame_extents);
|
||||
}
|
||||
|
||||
@@ -45,4 +45,5 @@ int wNETWMGetCurrentDesktopFromHint(WScreen *scr);
|
||||
char *wNETWMGetIconName(Window window);
|
||||
char *wNETWMGetWindowName(Window window);
|
||||
void wNETFrameExtents(WWindow *wwin);
|
||||
void wNETCleanupFrameExtents(WWindow *wwin);
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user