[squeak-dev] The Trunk: Morphic-cmm.1486.mcz
Chris Muller
asqueaker at gmail.com
Sat Apr 27 01:46:17 UTC 2019
Just replaced this by 1487, which actually _opens_ the Git Browser,
instead of only installsGitInfrastructure.
On Fri, Apr 26, 2019 at 8:36 PM <commits at source.squeak.org> wrote:
>
> Chris Muller uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-cmm.1486.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-cmm.1486
> Author: cmm
> Time: 26 April 2019, 8:35:52.194323 pm
> UUID: 94a2f848-a9cf-43a7-a2bb-597457bf319f
> Ancestors: Morphic-mt.1485
>
> - Fix a glitch in #tryInvokeHalo: which could lead to mis-identification of the correct halo target.
> - Update the new Tools menu entry to read "Git Browser".
>
> =============== Diff against Morphic-mt.1485 ===============
>
> Item was changed:
> ----- Method: PasteUpMorph>>tryInvokeHalo: (in category 'events-processing') -----
> tryInvokeHalo: aUserInputEvent
> "Invoke halos around the top-most world container at aUserInputEvent's #position. If it was already halo'd, zero-in on its next inward component morph at that position. Holding Shift during the click reverses this traversal order."
> | stack innermost haloTarget |
> Preferences noviceMode ifTrue: [ ^ self ].
> Morph haloForAll ifFalse: [ ^ self ].
> "the stack is the top-most morph to bottom-most."
> stack := (self morphsAt: aUserInputEvent position unlocked: true) select:
> [ : each | each wantsHaloFromClick or: [ each handlesMouseDown: aUserInputEvent ] ].
> innermost := aUserInputEvent hand halo
> ifNil: [ stack first ]
> ifNotNil:
> + [ : existingHalo | (stack copyWithout: existingHalo) "No halos on halos"
> - [ : existingHalo | stack allButFirst "existingHalo is first on the stack, not a target"
> detect: [ : each | each owner == self ]
> ifFound:
> [ : worldContainer | "Is existingHalo's target part of the same worldContainer as the morph clicked?"
> (existingHalo target withAllOwners includes: worldContainer)
> ifTrue: [ "same hierarchy, let #transferHalo: continue to handle it for now." ^self ]
> ifFalse:
> [ "different hierarchy, remove + add."
> aUserInputEvent hand removeHalo.
> aUserInputEvent shiftPressed
> ifTrue: [ stack second "first is still the just removed halo" ]
> ifFalse: [ worldContainer ] ] ]
> ifNone: [ "existingHalo is on the World, defer to #transferHalo: for now." ^self ] ].
> "If modifier key is pressed, start at innermost (the target), otherwise the outermost (direct child of the world (self))."
> + haloTarget := (innermost == self or: [aUserInputEvent shiftPressed])
> - haloTarget := (innermost == self or: [aUserInputEvent shiftPressed])
> ifTrue: [ innermost ]
> ifFalse:
> [ "Find the outermost owner that wants it."
> innermost withAllOwners reversed allButFirst
> detect: [ : each | each wantsHaloFromClick ]
> ifNone: [ "haloTarget has its own mouseDown handler, don't halo." ^ self ] ].
> "Now that we have the haloTarget, show the halo."
> aUserInputEvent hand
> newMouseFocus: haloTarget
> event: aUserInputEvent.
> haloTarget invokeHaloOrMove: aUserInputEvent.
> "aUserInputEvent has been consumed, don't let it cause any further side-effects."
> aUserInputEvent ignore!
>
> Item was changed:
> ----- Method: TheWorldMainDockingBar>>gitInfrastructureMenuItemOn: (in category 'submenu - tools') -----
> gitInfrastructureMenuItemOn: menu
> menu addItem:
> [ : item | item
> + contents: 'Git Browser' translated ;
> + help: 'Browse repositories on github.com' translated ;
> - contents: 'Git Infrastructure' translated ;
> - help: 'Load tools for accessing github repositories.' translated ;
> icon: (self colorIcon: Color lightGray) ;
> target: Installer ;
> selector: #installGitInfrastructure ]!
>
> Item was changed:
> + (PackageInfo named: 'Morphic') postscript: '"Added Git Browser to Tools menu"
> - (PackageInfo named: 'Morphic') postscript: '"updated Tools menu"
> TheWorldMainDockingBar updateInstances'!
>
>
More information about the Squeak-dev
mailing list
|