aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/kdrive/ephyr/ephyr.c
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/hw/kdrive/ephyr/ephyr.c')
-rw-r--r--xorg-server/hw/kdrive/ephyr/ephyr.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/xorg-server/hw/kdrive/ephyr/ephyr.c b/xorg-server/hw/kdrive/ephyr/ephyr.c
index 3e1495876..ba22ba225 100644
--- a/xorg-server/hw/kdrive/ephyr/ephyr.c
+++ b/xorg-server/hw/kdrive/ephyr/ephyr.c
@@ -1243,6 +1243,9 @@ ephyrGetColors(ScreenPtr pScreen, int n, xColorItem * pdefs)
void
ephyrPutColors(ScreenPtr pScreen, int n, xColorItem * pdefs)
{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
int min, max, p;
/* XXX Not sure if this is right */
@@ -1262,6 +1265,18 @@ ephyrPutColors(ScreenPtr pScreen, int n, xColorItem * pdefs)
pdefs->green >> 8, pdefs->blue >> 8);
pdefs++;
}
+ if (scrpriv->pDamage) {
+ BoxRec box;
+ RegionRec region;
+
+ box.x1 = 0;
+ box.y1 = 0;
+ box.x2 = pScreen->width;
+ box.y2 = pScreen->height;
+ RegionInit(&region, &box, 1);
+ DamageReportDamage(scrpriv->pDamage, &region);
+ RegionUninit(&region);
+ }
}
/* Mouse calls */