static void XAAChangeGC ( GCPtr pGC, unsigned long mask ) { XAA_GC_FUNC_PROLOGUE (pGC); (*pGC->funcs->ChangeGC) (pGC, mask); XAA_GC_FUNC_EPILOGUE (pGC); /* we have to assume that shared memory pixmaps are dirty because we can't wrap all operations on them */ if((mask & GCTile) && !pGC->tileIsPixel && PIXMAP_IS_SHARED(pGC->tile.pixmap)) { XAAPixmapPtr pPixPriv = XAA_GET_PIXMAP_PRIVATE(pGC->tile.pixmap); pPixPriv->flags |= DIRTY; } if((mask & GCStipple) && PIXMAP_IS_SHARED(pGC->stipple)){ XAAPixmapPtr pPixPriv = XAA_GET_PIXMAP_PRIVATE(pGC->stipple); pPixPriv->flags |= DIRTY; } }
static Bool XAAChangeWindowAttributes (WindowPtr pWin, unsigned long mask) { ScreenPtr pScreen = pWin->drawable.pScreen; Bool ret; XAA_SCREEN_PROLOGUE (pScreen, ChangeWindowAttributes); ret = (*pScreen->ChangeWindowAttributes) (pWin, mask); XAA_SCREEN_EPILOGUE (pScreen, ChangeWindowAttributes, XAAChangeWindowAttributes); /* we have to assume that shared memory pixmaps are dirty because we can't wrap operations on them */ if((mask & CWBackPixmap) && (pWin->backgroundState == BackgroundPixmap) && PIXMAP_IS_SHARED(pWin->background.pixmap)) { XAAPixmapPtr pPixPriv = XAA_GET_PIXMAP_PRIVATE(pWin->background.pixmap); pPixPriv->flags |= DIRTY; } if((mask & CWBorderPixmap) && !(pWin->borderIsPixel) && PIXMAP_IS_SHARED(pWin->border.pixmap)) { XAAPixmapPtr pPixPriv = XAA_GET_PIXMAP_PRIVATE(pWin->border.pixmap); pPixPriv->flags |= DIRTY; } return ret; }