Fix bug in resizing on variant switch
authorH.G. Muller <h.g.muller@hccnet.nl>
Sun, 21 Oct 2012 13:54:25 +0000 (15:54 +0200)
committerH.G. Muller <h.g.muller@hccnet.nl>
Sun, 21 Oct 2012 13:54:25 +0000 (15:54 +0200)
The fix of the garbage pixels had unfortunately broken this.

xoptions.c

index 097f881..a475c58 100644 (file)
@@ -553,8 +553,10 @@ GraphEventProc(Widget widget, caddr_t client_data, XEvent *event)
            XtGetValues(widget, args, j);
 
            if(w < graph->max || w > graph->max + 1 || h != graph->value) { // use width fudge of 1 pixel
            XtGetValues(widget, args, j);
 
            if(w < graph->max || w > graph->max + 1 || h != graph->value) { // use width fudge of 1 pixel
-               sizing = (((XExposeEvent*)event)->count >= 0); // suppress sizing on expose for ordered redraw in response to sizing.
-               graph->max = w; graph->value = h; // note: old values are kept if we we don't exceed width fudge
+               if(((XExposeEvent*)event)->count >= 0) { // suppress sizing on expose for ordered redraw in response to sizing.
+                   sizing = 1;
+                   graph->max = w; graph->value = h; // note: old values are kept if we we don't exceed width fudge
+               }
            } else w = graph->max;
 
            if(sizing && ((XExposeEvent*)event)->count > 0) { graph->max = 0; return; } // don't bother if further exposure is pending during resize
            } else w = graph->max;
 
            if(sizing && ((XExposeEvent*)event)->count > 0) { graph->max = 0; return; } // don't bother if further exposure is pending during resize