[Xfce4-commits] <xfce4-settings:bluesabre/display-settings> Try to reduce flickering

Nick Schermer noreply at xfce.org
Mon Dec 9 12:56:59 CET 2013


Updating branch refs/heads/bluesabre/display-settings
         to b6139161381874dff079765a2e1f2abae5061ac5 (commit)
       from cc38417d940d0d5ff79a6d056bc190d6c9f654f5 (commit)

commit b6139161381874dff079765a2e1f2abae5061ac5
Author: Lionel Le Folgoc <lionel at lefolgoc.net>
Date:   Mon Oct 15 17:38:41 2012 +0200

    Try to reduce flickering
    
    Signed-off-by: Simon Steinbeiss <simon.steinbeiss at elfenbeinturm.at>

 xfsettingsd/displays.c |   34 +++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/xfsettingsd/displays.c b/xfsettingsd/displays.c
index d5a7799..8948637 100644
--- a/xfsettingsd/displays.c
+++ b/xfsettingsd/displays.c
@@ -739,28 +739,28 @@ xfce_displays_helper_channel_apply (XfceDisplaysHelper *helper,
     for (m = 0; m < resources->ncrtc; ++m)
     {
         /* ignore disabled outputs for size computations */
-        if (crtcs[m].mode == None)
-            continue;
-
-        /* normalize positions to ensure the upper left corner is at (0,0) */
-        if (min_x || min_y)
+        if (crtcs[m].mode != None)
         {
-            crtcs[m].x -= min_x;
-            crtcs[m].y -= min_y;
-            crtcs[m].changed = TRUE;
-        }
+            /* normalize positions to ensure the upper left corner is at (0,0) */
+            if (min_x || min_y)
+            {
+                crtcs[m].x -= min_x;
+                crtcs[m].y -= min_y;
+                crtcs[m].changed = TRUE;
+            }
 
-        xfsettings_dbg (XFSD_DEBUG_DISPLAYS, "Normalized CRTC %lu: size=%dx%d, pos=%dx%d.",
-                        crtcs[m].id, crtcs[m].width, crtcs[m].height, crtcs[m].x, crtcs[m].y);
+            xfsettings_dbg (XFSD_DEBUG_DISPLAYS, "Normalized CRTC %lu: size=%dx%d, pos=%dx%d.",
+                            crtcs[m].id, crtcs[m].width, crtcs[m].height, crtcs[m].x, crtcs[m].y);
 
-        /* calculate the total screen size */
-        xfce_displays_helper_process_screen_size (crtcs[m].width, crtcs[m].height,
-                                                  crtcs[m].x, crtcs[m].y, &width,
-                                                  &height, &mm_width, &mm_height);
+            /* calculate the total screen size */
+            xfce_displays_helper_process_screen_size (crtcs[m].width, crtcs[m].height,
+                                                      crtcs[m].x, crtcs[m].y, &width,
+                                                      &height, &mm_width, &mm_height);
+        }
 
-        /* disable the CRTC, it will be reenabled after size calculation */
+        /* disable the CRTC, it will be reenabled after size calculation, unless the user disabled it */
         if (xfce_displays_helper_disable_crtc (xdisplay, resources, crtcs[m].id) == RRSetConfigSuccess)
-            crtcs[m].changed = TRUE;
+            crtcs[m].changed = (crtcs[m].mode != None);
         else
             g_warning ("Failed to disable CRTC %lu.", crtc->id);
 


More information about the Xfce4-commits mailing list