// Created: 25.03.02
// RCS-ID: $Id$
// Copyright: (c) wxWindows team
-// Licence: wxWindows license
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#if defined(__WXX11__) || defined(__WXGTK__) || defined(__WXMOTIF__)
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
+
#include "wx/unix/utilsx11.h"
#include "wx/iconbndl.h"
#include "wx/image.h"
XFlush(m_display);
XSetErrorHandler(m_old);
}
+
private:
Display *m_display;
int (*m_old)(Display*, XErrorEvent *);
if( size > 0 )
{
- wxUint32* data = new wxUint32[size];
- wxUint32* ptr = data;
+// The code below is correct for 64-bit machines also.
+// wxUint32* data = new wxUint32[size];
+// wxUint32* ptr = data;
+ unsigned long* data = new unsigned long[size];
+ unsigned long* ptr = data;
for( i = 0; i < max; ++i )
{
}
// it is neccessary to unmap the window, otherwise kwin will ignore us:
+ XSync(display, False);
+
bool wasMapped = IsMapped(display, w);
if (wasMapped)
+ {
XUnmapWindow(display, w);
+ XSync(display, False);
+ }
+
XChangeProperty(display, w, _NET_WM_WINDOW_TYPE, XA_ATOM, 32,
PropModeReplace, (unsigned char *) &data, lng);
+ XSync(display, False);
+
if (wasMapped)
+ {
XMapRaised(display, w);
+ XSync(display, False);
+ }
wxWMspecSetState(display, rootWnd, w,
fullscreen ? _NET_WM_STATE_ADD : _NET_WM_STATE_REMOVE,
_NET_WM_STATE_STAYS_ON_TOP);
+ XSync(display, False);
if (!fullscreen)
{
XMoveResizeWindow(display, w,
origRect->x, origRect->y,
origRect->width, origRect->height);
+ XSync(display, False);
}
}