DSVColumnView.st
changeset 5737 eeb4d51e4e3a
parent 5730 dcaa2eb5a14b
child 5805 a76e98c02491
--- a/DSVColumnView.st	Mon Apr 23 14:56:06 2018 +0200
+++ b/DSVColumnView.st	Mon Apr 23 16:50:46 2018 +0200
@@ -1,3 +1,5 @@
+"{ Encoding: utf8 }"
+
 "
  COPYRIGHT (c) 1997 by Claus Gittinger / eXept Software AG
               All Rights Reserved
@@ -2279,7 +2281,8 @@
 
     stopRedraw := false.
 
-    self class stopRedrawSignal handle:[:ex|
+    self class stopRedrawSignal handle:[:ex |
+        "/ redraw aborted due to too many changes while drawing.
         stopRedraw := true.
     ] do:[
         columnDescriptors do:[:aCol| |cw|
@@ -2291,7 +2294,7 @@
                 right := x1 min:maxX.
                 rect  := Rectangle left:left top:y width:(right - left) height:h.
 
-                self clippingBounds:nil.
+                "/ self clippingBounds:nil.
                 self clippingBounds:rect.
                 aCol redrawX:x0 y:yTop h:clHg  from:start to:stop.
             ].
@@ -2303,8 +2306,11 @@
     self clippingBounds:savClip.
 
     stopRedraw ifTrue:[
-        self invalidate.
-        self makeSelectionVisible.
+        "/ redraw aborted due to too many changes while drawing.
+        "/ try again after some grace period
+        Processor addTimedBlock:[self invalidate] after:0.1 seconds.
+        "/  self invalidate.
+        "/ self makeSelectionVisible.
         ^ self
     ].