From f149aa885889388a38dfa4c09950f286b08f4e57 Mon Sep 17 00:00:00 2001 From: David Reveman Date: Mon, 2 Jun 2008 08:51:17 -0400 Subject: [PATCH] Ignore expose events for map and unmap requests. --- hw/dmx/dmxextension.c | 1 + hw/dmx/dmxwindow.c | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/hw/dmx/dmxextension.c b/hw/dmx/dmxextension.c index 4bea36649..6de074405 100644 --- a/hw/dmx/dmxextension.c +++ b/hw/dmx/dmxextension.c @@ -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); diff --git a/hw/dmx/dmxwindow.c b/hw/dmx/dmxwindow.c index efa95457a..1f0cbaa73 100644 --- a/hw/dmx/dmxwindow.c +++ b/hw/dmx/dmxwindow.c @@ -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);