Eliot Miranda uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-eem.1561.mcz ==================== Summary ==================== Name: Morphic-eem.1561 Author: eem Time: 8 October 2019, 1:03:03.057759 pm UUID: e31f5b77-00f3-4c73-b62f-2d3c5ae045f1 Ancestors: Morphic-mt.1560 Implement postRecompileAction for several classes whose state is affected by Compiler recompileAll, e.g. things like WorldState stepList and alarms. =============== Diff against Morphic-mt.1560 =============== Item was added: + ----- Method: PasteUpMorph class>>postRecompileAction (in category 'recompilation') ----- + postRecompileAction + "PasteUpMorph's worldState refers to blocks in its alarms and stepList inst vars. These should be rebuilt post recompileAll" + Project allProjects do: + [:project| + project isMorphic ifTrue: + [project world updateStatePostRecompile]]. + self currentWorld addGlobalFlaps! Item was added: + ----- Method: PasteUpMorph>>updateStatePostRecompile (in category 'recompilation') ----- + updateStatePostRecompile + "worldState refers to blocks in its alarms and stepList inst vars. These should be rebuilt post recompileAll" + worldState convertAlarms; convertStepList! Item was changed: + ----- Method: ScrollBar class>>alwaysShowFlatScrollbarForAlternativeLook (in category 'preferences') ----- - ----- Method: ScrollBar class>>alwaysShowFlatScrollbarForAlternativeLook (in category 'as yet unclassified') ----- alwaysShowFlatScrollbarForAlternativeLook "Set this value to true, if you want to see the flat scrollbar look in flop-out mode as well as inboard. Otherwise the flop-out scrollbar will be rounded and inboard will be flat." ^ false! Item was added: + ----- Method: ScrollBar class>>postRecompileAction (in category 'class initialization') ----- + postRecompileAction + "The ArrowImagesCache and BoxesImagesCache are LRUCaches that reference blocks + (including indirectly via their map which is a PluggableDictionary integerDictionary). + Rebuild them to ensure blocks reference freshly recompiled methods." + + self initializeImagesCache! Item was changed: ----- Method: WorldState>>convertAlarms (in category 'object fileIn') ----- convertAlarms + "We now store the alarms in a MorphicAlarmQueue, rather than a Heap. + Make sure we have a fresh one. If it is already a MorphicAlarmQueue + updating it will ensure any block to method references are fresh." + alarms ifNotNil: + [:oldAlarms| + alarms class == MorphicAlarmQueue + ifTrue: + [alarms := MorphicAlarmQueue new. + oldAlarms alarmsDoSafely: [:alarm | alarms add: alarm]] + ifFalse: + [alarms := MorphicAlarmQueue new. + oldAlarms do: [:alarm | alarms add: alarm]]]! - "We now store the alarms in a MorphicAlarmQueue, rather than a Heap." - alarms ifNotNil: [ - alarms class == MorphicAlarmQueue ifFalse: [ - | oldAlarms | - oldAlarms := alarms. - alarms := MorphicAlarmQueue new. - oldAlarms do: [:alarm | alarms add: alarm] - ] - ].! |
Free forum by Nabble | Edit this page |