Commit 24e35d34 authored by John van Groningen's avatar John van Groningen

In function setcontrolviewdomain, if only the scrollbars need to be updated,

update the whole domain if the update region of the window is not empty,
because otherwise the call back that updates the view domain is lost
on windows, because it happens during a RedrawWindow call to redraw the scrollbars,
that cannot handle call backs.
parent da53f918
......@@ -1376,10 +1376,14 @@ where
compoundInfo` = CompoundInfo` info
# tb = setcompoundsliderthumb hasHScroll ableContext1 miOSMetrics wPtr itemPtr hPtr True (minx,newOrigin.x,maxx) viewx itemSize` (hRect,vRect) tb
# tb = setcompoundsliderthumb hasVScroll ableContext1 miOSMetrics wPtr itemPtr vPtr False (miny,newOrigin.y,maxy) viewy itemSize` (hRect,vRect) tb
| newOrigin==oldOrigin
&& intersectRects (addVector (toVector absolutePos) newDomainRect) clipRect ==
intersectRects (addVector (toVector absolutePos) oldDomainRect) clipRect
&& newContentSize == rectSize oldContentRect
#! no_update_necessary = newOrigin==oldOrigin
&& intersectRects (addVector (toVector absolutePos) newDomainRect) clipRect ==
intersectRects (addVector (toVector absolutePos) oldDomainRect) clipRect
&& newContentSize == rectSize oldContentRect;
# (update_necessary,tb) = if no_update_necessary
(osWindowHasUpdateRect wPtr tb)
(True,tb);
| not update_necessary
= (True,{itemH & wItemInfo`= compoundInfo`},(updRgn,tb))
# oldItems` = itemH.wItems`
| isEmpty oldItems` // CompoundControl has no controls
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment