summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlan Hourihane <alanh@fairlite.demon.co.uk>2006-11-22 16:49:36 +0000
committerAlan Hourihane <alanh@fairlite.demon.co.uk>2006-11-22 16:51:18 +0000
commite065324661ad08b3b359136f48090232f6138959 (patch)
tree54f7027e94087305b2cc6783d2fbd4ec2b6b574f /src
parentb649f95ea6fd3555d073fdbf8f2f035dfe1afd33 (diff)
update port attributes immediately when overlay is on.
Diffstat (limited to 'src')
-rw-r--r--src/i830_video.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/i830_video.c b/src/i830_video.c
index 054d26bb..1a1b9680 100644
--- a/src/i830_video.c
+++ b/src/i830_video.c
@@ -934,14 +934,16 @@ I830SetPortAttribute(ScrnInfoPtr pScrn,
pPriv->brightness = value;
overlay->OCLRC0 = (pPriv->contrast << 18) | (pPriv->brightness & 0xff);
ErrorF("BRIGHTNESS\n");
- OVERLAY_UPDATE;
+ if (*pI830->overlayOn)
+ OVERLAY_UPDATE;
} else if (attribute == xvContrast) {
if ((value < 0) || (value > 255))
return BadValue;
pPriv->contrast = value;
overlay->OCLRC0 = (pPriv->contrast << 18) | (pPriv->brightness & 0xff);
ErrorF("CONTRAST\n");
- OVERLAY_UPDATE;
+ if (*pI830->overlayOn)
+ OVERLAY_UPDATE;
} else if (pI830->Clone && attribute == xvPipe) {
if ((value < 0) || (value > 1))
return BadValue;
@@ -955,7 +957,8 @@ I830SetPortAttribute(ScrnInfoPtr pScrn,
else
overlay->OCONFIG |= OVERLAY_PIPE_B;
ErrorF("PIPE CHANGE\n");
- OVERLAY_UPDATE;
+ if (*pI830->overlayOn)
+ OVERLAY_UPDATE;
} else if (attribute == xvGamma0 && (IS_I9XX(pI830))) {
pPriv->gamma0 = value;
} else if (attribute == xvGamma1 && (IS_I9XX(pI830))) {
@@ -982,7 +985,8 @@ I830SetPortAttribute(ScrnInfoPtr pScrn,
break;
}
ErrorF("COLORKEY\n");
- OVERLAY_UPDATE;
+ if (*pI830->overlayOn)
+ OVERLAY_UPDATE;
REGION_EMPTY(pScrn->pScreen, &pPriv->clip);
} else if(attribute == xvDoubleBuffer) {
if ((value < 0) || (value > 1))
@@ -1000,13 +1004,8 @@ I830SetPortAttribute(ScrnInfoPtr pScrn,
attribute == xvGamma3 ||
attribute == xvGamma4 ||
attribute == xvGamma5) && (IS_I9XX(pI830))) {
- CARD32 r = overlay->OCMD & OVERLAY_ENABLE;
ErrorF("GAMMA\n");
- overlay->OCMD &= ~OVERLAY_ENABLE;
- OVERLAY_UPDATE;
I830UpdateGamma(pScrn);
- overlay->OCMD |= r;
- OVERLAY_UPDATE;
}
return Success;