[squeak-dev] The Inbox: Morphic-ct.2032.mcz

commits at source.squeak.org commits at source.squeak.org
Wed Aug 24 10:16:04 UTC 2022


A new version of Morphic was added to project The Inbox:
http://source.squeak.org/inbox/Morphic-ct.2032.mcz

==================== Summary ====================

Name: Morphic-ct.2032
Author: ct
Time: 24 August 2022, 12:15:59.039424 pm
UUID: 385fbab8-ecc3-9f42-8b04-5ce73768f082
Ancestors: Morphic-ct.2031

Proposal: After resizing the display, also make all open dialog windows and progress morphs visible.

=============== Diff against Morphic-ct.2031 ===============

Item was added:
+ ----- Method: DialogWindow>>makeMeVisible (in category 'updating') -----
+ makeMeVisible
+ 	"Assure that the receiver is visible within the current world bounds."
+ 
+ 	self world extent > (0 @ 0) ifFalse: [^ self].
+ 	
+ 	((self world bounds insetBy: (0 @ 0 corner: self firstSubmorph height asPoint))
+ 		containsPoint: self position) ifTrue: [^ self "OK -- at least my top left is visible"].
+ 	
+ 	"window not on screen (probably due to reframe) -- move it now"
+ 	self position: (RealEstateAgent initialFrameFor: self initialExtent: self extent world: self world) topLeft.!

Item was changed:
  ----- Method: PasteUpMorph>>fullRepaintNeeded (in category 'world state') -----
  fullRepaintNeeded
  
  	worldState doFullRepaint.
+ 	self submorphsDo: [:morph |
+ 		(morph respondsTo: #makeMeVisible)
+ 			ifTrue: [morph makeMeVisible]].
+ 	SystemProgressMorph fullRepaintNeeded.!
- 	SystemWindow windowsIn: self
- 		satisfying: [:w | w makeMeVisible. false].
- 
- !

Item was added:
+ ----- Method: SystemProgressMorph class>>fullRepaintNeeded (in category 'class initialization') -----
+ fullRepaintNeeded
+ 
+ 	UniqueInstance ifNotNil: [UniqueInstance recenter].!

Item was changed:
+ ----- Method: SystemWindow>>makeMeVisible (in category 'updating') -----
+ makeMeVisible
+ 	"Assure that the receiver is visible within the current world bounds."
- ----- Method: SystemWindow>>makeMeVisible (in category 'drawing') -----
- makeMeVisible 
  
+ 	self world extent > (0 @ 0) ifFalse: [^ self].
- 	self world extent > (0 at 0) ifFalse: [^ self].
  
+ 	((self world bounds insetBy: (0 @ 0 corner: self labelHeight asPoint))
- 	((self world bounds insetBy: (0 at 0 corner: self labelHeight asPoint))
  		containsPoint: self position) ifTrue: [^ self "OK -- at least my top left is visible"].
  
  	"window not on screen (probably due to reframe) -- move it now"
+ 	self position: (self isCollapsed
+ 		ifTrue: [RealEstateAgent assignCollapsePointFor: self]
+ 		ifFalse: [(RealEstateAgent initialFrameFor: self initialExtent: self extent world: self world) topLeft]).!
- 	self isCollapsed
- 		ifTrue: [self position: (RealEstateAgent assignCollapsePointFor: self)]
- 		ifFalse: [self position: (RealEstateAgent initialFrameFor: self initialExtent: self extent world: self world) topLeft].
- 
- !



More information about the Squeak-dev mailing list