diff options
author | Adam Jackson <ajax@redhat.com> | 2010-11-15 11:25:12 +1000 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2010-11-24 11:29:31 -0800 |
commit | c050aa2f5fa6a7ff8ce4f91def14ca44f799f067 (patch) | |
tree | 10772813451c901c354add8a1a72fd38a6118ce7 /hw | |
parent | 38c46ccf796462d068d95acb9022de2acfc3a1f7 (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>
Diffstat (limited to 'hw')
-rw-r--r-- | hw/xfree86/modes/xf86RandR12.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c index ba0862a6c..f562f58f4 100644 --- a/hw/xfree86/modes/xf86RandR12.c +++ b/hw/xfree86/modes/xf86RandR12.c @@ -1731,6 +1731,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) { @@ -1742,6 +1743,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 */ } |