Ignore expose events for map and unmap requests.

This commit is contained in:
David Reveman 2008-06-02 08:51:17 -04:00
parent 3b5f1a76a4
commit f149aa8858
2 changed files with 8 additions and 0 deletions

View file

@ -1116,6 +1116,7 @@ static void dmxBECreateWindowTree(int idx)
dmxScreen->rootWin = pWinPriv->window = dmxCreateRootWindow(pRoot);
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XMapWindow(dmxScreen->beDisplay, dmxScreen->rootWin);
XLIB_EPILOGUE (dmxScreen);

View file

@ -46,6 +46,7 @@
#include "dmxvisual.h"
#include "dmxinput.h"
#include "dmxextension.h"
#include "dmxscrinit.h"
#ifdef RENDER
#include "dmxpict.h"
#endif
@ -173,6 +174,7 @@ void dmxResizeRootWindow(WindowPtr pRoot,
if (dmxScreen->beDisplay)
{
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XUnmapWindow(dmxScreen->beDisplay, pWinPriv->window);
XLIB_EPILOGUE (dmxScreen);
}
@ -182,6 +184,7 @@ void dmxResizeRootWindow(WindowPtr pRoot,
if (dmxScreen->beDisplay)
{
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XMapWindow(dmxScreen->beDisplay, pWinPriv->window);
XLIB_EPILOGUE (dmxScreen);
}
@ -319,6 +322,7 @@ void dmxCreateAndRealizeWindow(WindowPtr pWindow, Bool doSync)
if (pWinPriv->mapped && MapUnmapEventsEnabled (pWindow))
{
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XMapWindow(dmxScreen->beDisplay, pWinPriv->window);
XLIB_EPILOGUE (dmxScreen);
}
@ -680,6 +684,7 @@ Bool dmxRealizeWindow(WindowPtr pWindow)
pPixPriv->pixmap = None;
}
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XMapWindow (dmxScreen->beDisplay, pWinPriv->window);
pPixPriv->pixmap =
@ -691,6 +696,7 @@ Bool dmxRealizeWindow(WindowPtr pWindow)
else
{
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XMapWindow(dmxScreen->beDisplay, pWinPriv->window);
XLIB_EPILOGUE (dmxScreen);
}
@ -724,6 +730,7 @@ Bool dmxUnrealizeWindow(WindowPtr pWindow)
if (pWinPriv->window) {
/* Unrealize window on back-end server */
XLIB_PROLOGUE (dmxScreen);
dmxSetIgnore (dmxScreen, NextRequest (dmxScreen->beDisplay));
XUnmapWindow(dmxScreen->beDisplay, pWinPriv->window);
XLIB_EPILOGUE (dmxScreen);
dmxSync(dmxScreen, False);