[squeak-dev] The Inbox: Morphic-ct.2033.mcz
commits at source.squeak.org
commits at source.squeak.org
Wed Aug 24 16:02:58 UTC 2022
A new version of Morphic was added to project The Inbox:
http://source.squeak.org/inbox/Morphic-ct.2033.mcz
==================== Summary ====================
Name: Morphic-ct.2033
Author: ct
Time: 24 August 2022, 6:02:53.835133 pm
UUID: 6b380927-4044-c24d-a1cb-b4f6feb6dae3
Ancestors: Morphic-ct.2031
Fixes an drawing/invalidation issue with TransformMorphs. When an ancestor of a TransformMorph is moved directly, it invalidates both its old and its new bounds, so the damageRect can legitimately excess the bounds of the TransformMorph. Solution: Remove the intersection of the damage rect with the TransformMorph's bounds.
Reprocase:
m := Morph new.
f := m addFlexShell
rotationDegrees: 15;
yourself.
f openInWorld.
f center: f world center.
"Do this separately"
m position: m position + 10.
Please review.
=============== Diff against Morphic-ct.2031 ===============
Item was changed:
----- Method: TransformMorph>>invalidRect:from: (in category 'change reporting') -----
invalidRect: damageRect from: aMorph
"Translate damage reports from submorphs by the scrollOffset."
+
+ ^ super
+ invalidRect: (aMorph == self
+ ifTrue: [damageRect]
+ ifFalse: [(transform localBoundsToGlobal: damageRect) expanded])
+ from: self!
- aMorph == self
- ifTrue:[super invalidRect: damageRect from: self]
- ifFalse:[super invalidRect: (((transform localBoundsToGlobal: damageRect) intersect: bounds) expanded) from: self].!
More information about the Squeak-dev
mailing list
|