}
}
-static bool RequestFrameExtents(Window window)
+static bool RequestFrameExtents(X11Window windowHandle)
{
- if(window.nativeDecorations && frameExtentSupported != broken)
+ if(frameExtentSupported != broken)
{
// Request decoration frame extents
XClientMessageEvent event = { 0 };
event.message_type = atoms[_net_request_frame_extents];
event.display = xGlobalDisplay;
event.serial = 0;
- event.window = (X11Window)window.windowHandle;
+ event.window = windowHandle;
event.send_event = 1;
- window.windowHandle = (void *)window.windowHandle;
event.format = 32;
if(frameExtentSupported == unknown && !frameExtentRequest)
{
frameExtentRequest = GetTime();
- frameExtentWindow = (X11Window)window.windowHandle;
+ frameExtentWindow = windowHandle;
}
XSendEvent(xGlobalDisplay, DefaultRootWindow(xGlobalDisplay), bool::false,
int x, y, w, h;
if(unmaximized)
{
- if(window.nativeDecorations && RequestFrameExtents(window))
+ if(window.nativeDecorations && RequestFrameExtents((X11Window)window.windowHandle))
WaitForFrameExtents(window);
// Ensure we set the normal size anchor when un-maximizing
XUngrabPointer(xGlobalDisplay, CurrentTime);
}
- if(!window.nativeDecorations || !RequestFrameExtents(window))
+ if(!window.nativeDecorations || !RequestFrameExtents(windowHandle))
((XWindowData)window.windowData).gotFrameExtents = true;
+
return (void *)windowHandle;
}