David T. Lewis uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-dtl.727.mcz==================== Summary ====================
Name: Morphic-dtl.727
Author: dtl
Time: 29 June 2014, 5:45:16.039 pm
UUID: 0c60a49f-4fee-44f4-b384-4712b9680000
Ancestors: Morphic-eem.726
Merge Morphic-kfr.723 (see treated inbox)
Name: Morphic-kfr.723
Author: kfr
Time: 25 June 2014, 10:32:51.443 pm
UUID: 773d8298-086f-ce47-b8f2-de2b4ced346b
Ancestors: Morphic-kfr.722
Handling of mouse enter/leave action. Respect the Preferences mouseOverForKeyboardFocus
=============== Diff against Morphic-eem.726 ===============
Item was changed:
+ ----- Method: PluggableListMorph>>mouseEnter: (in category 'events') -----
- ----- Method: PluggableListMorph>>mouseEnter: (in category 'event handling') -----
mouseEnter: event
super mouseEnter: event.
self flag: #arNote. "remove this - keyboard input automatically goes right"
+ Preferences mouseOverForKeyboardFocus ifTrue:[
+ event hand newKeyboardFocus: self. ]!
- event hand newKeyboardFocus: self. !
Item was changed:
----- Method: PluggableListMorph>>mouseLeave: (in category 'events') -----
mouseLeave: event
"The mouse has left the area of the receiver"
super mouseLeave: event.
+ Preferences mouseOverForKeyboardFocus ifTrue:[
+ event hand releaseKeyboardFocus: self]!
- event hand releaseKeyboardFocus: self!
Item was changed:
----- Method: PluggableListMorph>>mouseUp: (in category 'events') -----
mouseUp: event
"The mouse came up within the list; take appropriate action"
| row |
row := self rowAtLocation: event position.
"aMorph ifNotNil: [aMorph highlightForMouseDown: false]."
model okToChange
ifFalse: [^ self].
"No change if model is locked"
row = self selectionIndex
ifTrue: [(autoDeselect ifNil: [true]) ifTrue:[row = 0 ifFalse: [self changeModelSelection: 0] ]]
ifFalse: [self changeModelSelection: (self modelIndexFor: row)].
+ event hand newKeyboardFocus: self.
+ hasFocus := true.
Cursor normal show!
Item was changed:
----- Method: PluggableTextMorph>>mouseEnter: (in category 'event handling') -----
mouseEnter: event
super mouseEnter: event.
selectionInterval ifNotNil:
[textMorph editor selectInterval: selectionInterval; setEmphasisHere].
textMorph selectionChanged.
+ Preferences mouseOverForKeyboardFocus ifTrue:[
+ event hand newKeyboardFocus: textMorph]!
- event hand newKeyboardFocus: textMorph!