Blame gnome-screensaver-2.20.0-restore-gamma.patch
|
|
2483bdc |
--- gnome-screensaver-2.20.0/src/gs-fade.c
|
|
|
2483bdc |
+++ gnome-screensaver-2.20.0/src/gs-fade.c
|
|
|
2483bdc |
@@ -296,6 +296,10 @@
|
|
|
2483bdc |
}
|
|
|
2483bdc |
# endif
|
|
|
2483bdc |
|
|
|
2483bdc |
+ if (fade->priv->gamma_info) {
|
|
|
2483bdc |
+ return TRUE;
|
|
|
2483bdc |
+ }
|
|
|
2483bdc |
+
|
|
|
2483bdc |
info = g_new0 (xf86_gamma_info, fade->priv->num_screens);
|
|
|
2483bdc |
fade->priv->gamma_info = info;
|
|
|
2483bdc |
|
|
|
2483bdc |
@@ -402,8 +406,10 @@
|
|
|
2483bdc |
int screen;
|
|
|
2483bdc |
gboolean res;
|
|
|
2483bdc |
|
|
|
2483bdc |
- for (screen = 0; screen < fade->priv->num_screens; screen++) {
|
|
|
2483bdc |
- res = xf86_whack_gamma (screen, &fade->priv->gamma_info [screen], alpha);
|
|
|
2483bdc |
+ if (fade->priv->gamma_info) {
|
|
|
2483bdc |
+ for (screen = 0; screen < fade->priv->num_screens; screen++) {
|
|
|
2483bdc |
+ res = xf86_whack_gamma (screen, &fade->priv->gamma_info [screen], alpha);
|
|
|
2483bdc |
+ }
|
|
|
2483bdc |
}
|
|
|
2483bdc |
|
|
|
2483bdc |
return TRUE;
|
|
|
2483bdc |
@@ -523,6 +529,8 @@
|
|
|
2483bdc |
|
|
|
2483bdc |
g_return_if_fail (GS_IS_FADE (fade));
|
|
|
2483bdc |
|
|
|
2483bdc |
+ gamma_info_init (fade);
|
|
|
2483bdc |
+
|
|
|
2483bdc |
if (fade->priv->timer_id > 0) {
|
|
|
2483bdc |
gs_fade_stop (fade);
|
|
|
2483bdc |
}
|
|
|
2483bdc |
@@ -641,6 +649,8 @@
|
|
|
2483bdc |
fade->priv->current_alpha = 1.0;
|
|
|
2483bdc |
|
|
|
2483bdc |
gs_fade_set_alpha (fade, fade->priv->current_alpha);
|
|
|
2483bdc |
+
|
|
|
2483bdc |
+ gamma_info_free (fade);
|
|
|
2483bdc |
}
|
|
|
2483bdc |
|
|
|
2483bdc |
static void
|
|
|
2483bdc |
@@ -681,7 +691,7 @@
|
|
|
2483bdc |
display = gdk_display_get_default ();
|
|
|
2483bdc |
fade->priv->num_screens = gdk_display_get_n_screens (display);
|
|
|
2483bdc |
|
|
|
2483bdc |
- gamma_info_init (fade);
|
|
|
2483bdc |
+ fade->priv->gamma_info = NULL;
|
|
|
2483bdc |
}
|
|
|
2483bdc |
|
|
|
2483bdc |
static void
|