Eliot Miranda uploaded a new version of VMMakerUI to project VM Maker: http://source.squeak.org/VMMaker/VMMakerUI-eem.37.mcz
==================== Summary ====================
Name: VMMakerUI-eem.37 Author: eem Time: 22 June 2021, 3:01:24.300424 pm UUID: 2a363fe6-bb8f-4817-a0de-5dba9bb773fd Ancestors: VMMakerUI-eem.36
Robustess prior to display installation in the simulators' handleListenEvent:s
=============== Diff against VMMakerUI-eem.36 ===============
Item was changed: ----- Method: CogVMSimulator>>handleListenEvent: (in category '*VMMakerUI-I/O primitive support') ----- handleListenEvent: aMorphicEvent "openAsMorph[NoTranscript] registered me for listen events via HandMorph>>addEventListener. + Transform the listen event and add it to my event queue. Also check if the displayForm should resize." + (displayForm notNil and: [displayForm ~~ fakeForm and: [displayForm extent ~= displayView extent]]) ifTrue: - Transform the listen event and add it to my event queue. ALso check if the displayForm should resize." - (displayForm ~~ fakeForm and: [displayForm extent ~= displayView extent]) ifTrue: [| newForm | newForm := Form extent: displayView extent depth: displayForm depth. displayForm displayOn: newForm. displayForm := newForm. displayView image: displayForm]. ((aMorphicEvent isMouse or: [aMorphicEvent isKeyboard]) and: [displayView bounds containsPoint: aMorphicEvent position]) ifTrue: [[eventTransformer degenerateEvent: aMorphicEvent for: self] on: Error do: [:ex| displayView activeHand removeEventListener: self. ex pass]]!
Item was changed: ----- Method: StackInterpreterSimulator>>handleListenEvent: (in category '*VMMakerUI-I/O primitive support') ----- handleListenEvent: aMorphicEvent "openAsMorph[NoTranscript] registered me for listen events via HandMorph>>addEventListener. + Transform the listen event and add it to my event queue. Also check if the displayForm should resize." + (displayForm notNil and: [displayForm ~~ fakeForm and: [displayForm extent ~= displayView extent]]) ifTrue: - Transform the listen event and add it to my event queue. ALso check if the displayForm should resize." - (displayForm ~~ fakeForm and: [displayForm extent ~= displayView extent]) ifTrue: [| newForm | newForm := Form extent: displayView extent depth: displayForm depth. displayForm displayOn: newForm. displayForm := newForm. displayView image: displayForm]. ((aMorphicEvent isMouse or: [aMorphicEvent isKeyboard]) and: [displayView bounds containsPoint: aMorphicEvent position]) ifTrue: [[eventTransformer degenerateEvent: aMorphicEvent for: self] on: Error do: [:ex| displayView activeHand removeEventListener: self. ex pass]]!
Item was changed: ----- Method: StackInterpreterSimulator>>openAsMorph (in category '*VMMakerUI-InterpreterSimulation-Morphic') ----- openAsMorph "Open a morphic view on this simulation." | localImageName borderWidth window | localImageName := imageName ifNotNil: [self localNameFor: imageName] ifNil: [' synthetic image']. window := (SystemWindow labelled: 'Simulation of ', localImageName) model: self. window paneColor: self windowColorToUse.
window addMorph: (displayView := SimulatorImageMorph new image: displayForm) frame: (0@0 corner: 1@0.8). displayView activeHand addEventListener: self. eventTransformer := SimulatorEventTransformer new.
transcript := TranscriptStream on: (String new: 10000). window addMorph: (PluggableTextMorph on: transcript text: nil accept: nil readSelection: nil menu: #codePaneMenu:shifted:) frame: (0@0.8 corner: 0.7@1). window addMorph: (PluggableTextMorph on: self text: #byteCountText accept: nil readSelection: nil menu: #utilitiesMenu:) hideScrollBarsIndefinitely frame: (0.7@0.8 corner: 1@1).
borderWidth := [SystemWindow borderWidth] "Squeak 4.1" on: MessageNotUnderstood do: [:ex| 0]. "3.8" borderWidth := borderWidth + window borderWidth. window openInWorldExtent: (self desiredDisplayExtent + + (2 * borderWidth @ borderWidth) - + (2 * borderWidth@borderWidth) + (0@window labelHeight) * (1@(1/0.8))) rounded. ^window!
vm-dev@lists.squeakfoundation.org