The Trunk: Morphic-mt.1162.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Morphic-mt.1162.mcz

commits-2
Marcel Taeumel uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-mt.1162.mcz

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

Name: Morphic-mt.1162
Author: mt
Time: 4 June 2016, 6:42:47.44143 pm
UUID: 8a06cc2e-c607-3341-96d2-06d6329d41ac
Ancestors: Morphic-mt.1161

Quick fix for update issues during last commit.

=============== Diff against Morphic-mt.1161 ===============

Item was changed:
  ----- Method: MouseOverHandler>>processMouseOver: (in category 'event handling') -----
  processMouseOver: anEvent
  "Re-establish the z-order for all morphs wrt the given event"
 
  | hand localEvt focus evt |
+ anEvent ifNil: [^ self].
  hand := anEvent hand.
  leftMorphs := mouseOverMorphs asIdentitySet.
  "Assume some coherence for the number of objects in over list"
  overMorphs := WriteStream on: (Array new: leftMorphs size).
  enteredMorphs := WriteStream on: #().
  "Now go looking for eventual mouse overs"
  hand handleEvent: anEvent asMouseOver.
  "Get out early if there's no change"
  (leftMorphs isEmpty and: [ enteredMorphs position = 0 ])
  ifTrue: [ ^self initializeTrackedMorphs ].
  focus := hand mouseFocus.
  "Send #mouseLeave as appropriate"
  evt := anEvent asMouseLeave.
  "Keep the order of the left morphs by recreating it from the mouseOverMorphs"
  leftMorphs size > 1
  ifTrue:
  [leftMorphs := mouseOverMorphs select: [:m | leftMorphs includes: m]].
  leftMorphs do: [ :m |
  (m == focus or: [m hasOwner: focus])
  ifFalse: [ overMorphs nextPut: m ]
  ifTrue:
  [ localEvt := evt transformedBy: (m transformedFrom: hand).
  m handleEvent: localEvt ] ].
  enteredMorphs ifNil: [ "inform: was called in handleEvent:"
  ^self initializeTrackedMorphs ].
  "Send #mouseEnter as appropriate"
  evt := anEvent asMouseEnter.
  enteredMorphs contents reverseDo: [ :m |
  (m == focus or: [m hasOwner: focus]) ifTrue: [
  localEvt := evt transformedBy: (m transformedFrom: hand).
  m handleEvent: localEvt ] ].
  "And remember the over list"
  overMorphs ifNotNil: [ mouseOverMorphs := overMorphs contents ].
  self initializeTrackedMorphs!