Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.864.mcz==================== Summary ====================
Name: Morphic-mt.864
Author: mt
Time: 12 April 2015, 1:05:00.466 pm
UUID: 549e612e-dfdf-2a42-a0ef-fb2219ce0eea
Ancestors: Morphic-mt.863
Let system windows release mouse and keyboard focus the correct way to give current focus holders a chance to update.
Note: #releaseAllFoci is for internal use in HandMorph only.
=============== Diff against Morphic-mt.863 ===============
Item was changed:
----- Method: SystemWindow>>openAsIsIn: (in category 'open/close') -----
openAsIsIn: aWorld
"This msg and its callees result in the window being activeOnlyOnTop"
aWorld addMorph: self.
self activate.
aWorld startSteppingSubmorphsOf: self.
+ self activeHand
+ releaseKeyboardFocus;
+ releaseMouseFocus.!
- self activeHand releaseAllFoci!
Item was changed:
----- Method: SystemWindow>>openInWorld: (in category 'open/close') -----
openInWorld: aWorld
"This msg and its callees result in the window being activeOnlyOnTop"
[^ self anyOpenWindowLikeMe
ifEmpty:
[ self
bounds: (RealEstateAgent initialFrameFor: self world: aWorld) ;
openAsIsIn: aWorld ]
ifNotEmptyDo:
[ : windows |
windows anyOne
expand ;
activate ;
postAcceptBrowseFor: self ].
+ ] ensure: [
+ self activeHand
+ releaseKeyboardFocus;
+ releaseMouseFocus. ]!
- ] ensure: [ self activeHand releaseAllFoci ]!
Item was changed:
----- Method: SystemWindow>>openInWorld:extent: (in category 'open/close') -----
openInWorld: aWorld extent: extent
"This msg and its callees result in the window being activeOnlyOnTop"
[^ self anyOpenWindowLikeMe
ifEmpty:
[ self
position: (RealEstateAgent initialFrameFor: self initialExtent: extent world: aWorld) topLeft ;
extent: extent.
self openAsIsIn: aWorld ]
ifNotEmptyDo:
[ : windows |
windows anyOne
expand ;
activate ;
postAcceptBrowseFor: self ].
+ ] ensure: [
+ self activeHand
+ releaseKeyboardFocus;
+ releaseMouseFocus. ]!
- ] ensure: [ self activeHand releaseAllFoci ]!