summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2010-11-15 11:25:12 +1000
committerJulien Cristau <jcristau@debian.org>2010-12-01 23:48:19 +0100
commit333a6355917c552132e1dd3a2aa066c5b7e70566 (patch)
tree89b3af268e7a8a94aa72505b262bcef151bb053e
parentc9bca39848add875a76cf2434aabbadb97ddd721 (diff)
xfree86: apply gamma settings on EnterVT.
When entering the VT, re-apply the saved gamma settings for each screen. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com> (cherry picked from commit c050aa2f5fa6a7ff8ce4f91def14ca44f799f067)
-rw-r--r--hw/xfree86/modes/xf86RandR12.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c
index 9325e9b5e..07482ec6b 100644
--- a/hw/xfree86/modes/xf86RandR12.c
+++ b/hw/xfree86/modes/xf86RandR12.c
@@ -1774,6 +1774,7 @@ xf86RandR12EnterVT (int screen_index, int flags)
ScreenPtr pScreen = screenInfo.screens[screen_index];
ScrnInfoPtr pScrn = xf86Screens[screen_index];
XF86RandRInfoPtr randrp = XF86RANDRINFO(pScreen);
+ rrScrPrivPtr rp = rrGetScrPriv(pScreen);
Bool ret;
if (randrp->orig_EnterVT) {
@@ -1785,6 +1786,11 @@ xf86RandR12EnterVT (int screen_index, int flags)
return FALSE;
}
+ /* reload gamma */
+ int i;
+ for (i = 0; i < rp->numCrtcs; i++)
+ xf86RandR12CrtcSetGamma(pScreen, rp->crtcs[i]);
+
return RRGetInfo (pScreen, TRUE); /* force a re-probe of outputs and notify clients about changes */
}