Do not use override redirect - causes windows to appear on all desktops

Enable non-rectangular windows and test with windows media player
This commit is contained in:
David Sundstrom 2012-05-15 10:21:01 -05:00
parent e97a2bc158
commit cfcabaefc2
1 changed files with 7 additions and 10 deletions

View File

@ -230,15 +230,6 @@ void xf_SetWindowStyle(xfInfo* xfi, xfWindow* window, uint32 style, uint32 ex_st
if ((ex_style & WS_EX_TOPMOST) || (ex_style & WS_EX_TOOLWINDOW))
{
/*
* These include tool tips, dropdown menus, etc. These won't work
* correctly if the local window manager resizes or moves them.
* Set override redirect to prevent this from occurring.
*/
XSetWindowAttributes attrs;
attrs.override_redirect = True;
XChangeWindowAttributes(xfi->display, window->handle, CWOverrideRedirect, &attrs);
window->is_transient = true;
xf_SetWindowUnlisted(xfi, window);
@ -666,6 +657,9 @@ void xf_SetWindowRects(xfInfo* xfi, xfWindow* window, RECTANGLE_16* rects, int n
int i;
XRectangle* xrects;
if (nrects == 0)
return;
xrects = xmalloc(sizeof(XRectangle) * nrects);
for (i = 0; i < nrects; i++)
@ -688,6 +682,9 @@ void xf_SetWindowVisibilityRects(xfInfo* xfi, xfWindow* window, RECTANGLE_16* re
int i;
XRectangle* xrects;
if (nrects == 0)
return;
xrects = xmalloc(sizeof(XRectangle) * nrects);
for (i = 0; i < nrects; i++)
@ -699,7 +696,7 @@ void xf_SetWindowVisibilityRects(xfInfo* xfi, xfWindow* window, RECTANGLE_16* re
}
#ifdef WITH_XEXT
//XShapeCombineRectangles(xfi->display, window->handle, ShapeBounding, 0, 0, xrects, nrects, ShapeSet, 0);
XShapeCombineRectangles(xfi->display, window->handle, ShapeBounding, 0, 0, xrects, nrects, ShapeSet, 0);
#endif
xfree(xrects);