[squeak-dev] The Trunk: System-mt.1052.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Jan 24 13:05:18 UTC 2019


Marcel Taeumel uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-mt.1052.mcz

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

Name: System-mt.1052
Author: mt
Time: 24 January 2019, 2:05:11.02266 pm
UUID: 6db55eef-6153-0949-b109-6cf5ab454a91
Ancestors: System-mt.1051

Synchronize preference cache for pragma-preferences on clean-up. For example, the 5.2 release misses the "sort message categories alphabetically" entry in our Preference Browser.

=============== Diff against System-mt.1051 ===============

Item was added:
+ ----- Method: PragmaPreference>>isPragmaPreference (in category 'testing') -----
+ isPragmaPreference
+ 
+ 	^ true!

Item was added:
+ ----- Method: Preference>>isPragmaPreference (in category 'testing') -----
+ isPragmaPreference
+ 
+ 	^ false!

Item was changed:
+ ----- Method: Preferences class>>cleanUp (in category 'class initialization') -----
- ----- Method: Preferences class>>cleanUp (in category 'initialization') -----
  cleanUp
+ 	"Synchronize the cache for pragma preferences. Note that the actual preferences values are stored in class variables. So, no such value gets lost if we remove all such preferences from that cache."
+ 
+ 	"1/2 - Remove all pragma-preference objects from the dictionary of preferences."
+ 	self atomicUpdatePreferences: [:copyOfDictionaryOfPreferences |
+ 		copyOfDictionaryOfPreferences keys do: [:key |
+ 			(copyOfDictionaryOfPreferences at: key) isPragmaPreference
+ 				ifTrue: [copyOfDictionaryOfPreferences removeKey: key]]].
+ 		
+ 	"2/2 - Re-create all those pragma-preference objects."
+ 	SystemNavigation default allSelectorsAndMethodsDo: [:behavior :selector :method |
+ 		method pragmas do: [:pragma | self addPragmaPreference: pragma]].!
- 	self removeObsolete.!



More information about the Squeak-dev mailing list