readraw after scroll: process expose events. rel4_1_7 release
authorClaus Gittinger <cg@exept.de>
Wed, 19 Mar 2003 11:06:02 +0100
changeset 2458 0411397ef0a2
parent 2457 d1505cba8e39
child 2459 aba2043446b0
readraw after scroll: process expose events.
DSVColumnView.st
ListModelView.st
--- a/DSVColumnView.st	Mon Mar 03 11:21:56 2003 +0100
+++ b/DSVColumnView.st	Wed Mar 19 11:06:02 2003 +0100
@@ -3151,6 +3151,10 @@
     ].
     self originChanged:dltOrg.
 
+    wg notNil ifTrue:[
+        wg processRealExposeEventsFor:self.
+    ].
+
     "Modified: / 7.9.1998 / 16:39:49 / cg"
 !
 
@@ -3856,5 +3860,5 @@
 !DSVColumnView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.161 2003-02-25 17:34:27 penk Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/DSVColumnView.st,v 1.162 2003-03-19 10:06:02 cg Exp $'
 ! !
--- a/ListModelView.st	Mon Mar 03 11:21:56 2003 +0100
+++ b/ListModelView.st	Wed Mar 19 11:06:02 2003 +0100
@@ -1424,7 +1424,7 @@
     |
 
     realized ifFalse:[
-	^ self
+        ^ self
     ].
 
     innerWT := self innerWidth.
@@ -1433,15 +1433,15 @@
     h := viewOrigin y.
 
     (y := anOrigin y) > h ifTrue:[              "/ end of contents
-	y > (dY := self maxViewOriginY) ifTrue:[
-	    y := dY max:h
-	]
+        y > (dY := self maxViewOriginY) ifTrue:[
+            y := dY max:h
+        ]
     ] ifFalse:[
-	y := y max:0.
+        y := y max:0.
     ].
 
     (x := anOrigin x) > 0 ifTrue:[
-	x := x min:(self widthOfContents - innerWT).
+        x := x min:(self widthOfContents - innerWT).
     ].
     x      := x max:0.
     newOrg := (x @ y).
@@ -1450,7 +1450,7 @@
     dY     := dltOrg y.
 
     (dX == 0 and:[dY == 0]) ifTrue:[
-	^ self
+        ^ self
     ].
     dY := dY abs.
     dX := dX abs.
@@ -1458,48 +1458,52 @@
     (   (dX ~~ 0 and:[dY ~~ 0])                         "/ scroll vertical & horizontal
      or:[(innerHG - dY < 20 or:[innerWT - dX < 20])]    "/ faster to invalidate screen
     ) ifTrue:[
-	viewOrigin := newOrg.
-	self originChanged:dltOrg.
+        viewOrigin := newOrg.
+        self originChanged:dltOrg.
       ^ self invalidate
     ].
 
     (winGrp := self windowGroup) notNil ifTrue:[
-	winGrp processRealExposeEventsFor:self.
+        winGrp processRealExposeEventsFor:self.
     ].
 
     self originWillChange.
 
     doRedraw ifFalse:[
-	viewOrigin := newOrg.
-	^ self originChanged:dltOrg
+        viewOrigin := newOrg.
+        ^ self originChanged:dltOrg
     ].
 
     self catchExpose.
     viewOrigin := newOrg.
 
     dY ~~ 0 ifTrue:[                            "/ SCROLL VERTICAL
-	y0 := y1 := margin + dY.
-	h  := innerHG - dY.
+        y0 := y1 := margin + dY.
+        h  := innerHG - dY.
 
-	dltOrg y < 0 ifTrue:[y0 := margin. y := y0]
-		    ifFalse:[y1 := margin. y := y1 + h].
+        dltOrg y < 0 ifTrue:[y0 := margin. y := y0]
+                    ifFalse:[y1 := margin. y := y1 + h].
 
-	self copyFrom:self x:margin y:y0 toX:margin y:y1 width:innerWT height:h async:true.
-	self invalidateX:margin y:y width:innerWT height:(innerHG - h).
+        self copyFrom:self x:margin y:y0 toX:margin y:y1 width:innerWT height:h async:true.
+        self invalidateX:margin y:y width:innerWT height:(innerHG - h).
 
     ] ifFalse:[                                 "/ SCROLL HORIZONTAL
-	x0 := x1 := dX + margin.
-	w  := innerWT - dX.
+        x0 := x1 := dX + margin.
+        w  := innerWT - dX.
 
-	dltOrg x < 0 ifTrue:[x0 := x := margin ]
-		    ifFalse:[x1 := margin. x := w].
+        dltOrg x < 0 ifTrue:[x0 := x := margin ]
+                    ifFalse:[x1 := margin. x := w].
 
-	self copyFrom:self x:x0 y:margin toX:x1 y:margin width:w height:innerHG async:true.
-	self invalidateX:x y:margin width:(width - w) height:innerHG.
+        self copyFrom:self x:x0 y:margin toX:x1 y:margin width:w height:innerHG async:true.
+        self invalidateX:x y:margin width:(width - w) height:innerHG.
     ].
     self originChanged:dltOrg.
     self waitForExpose.
 
+    winGrp notNil ifTrue:[
+        winGrp processRealExposeEventsFor:self.
+    ].
+
 !
 
 scrollToLine:aLineNumber
@@ -1639,7 +1643,7 @@
 !ListModelView class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libwidg2/ListModelView.st,v 1.73 2002-12-11 07:23:39 ca Exp $'
+    ^ '$Header: /cvs/stx/stx/libwidg2/ListModelView.st,v 1.74 2003-03-19 10:05:51 cg Exp $'
 ! !
 
 ListModelView initialize!