[squeak-dev] The Trunk: Tools-ct.1158.mcz

commits at source.squeak.org commits at source.squeak.org
Fri May 20 12:24:02 UTC 2022

Christoph Thiede uploaded a new version of Tools to project The Trunk:

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

Name: Tools-ct.1158
Author: ct
Time: 17 May 2022, 1:04:37.206327 pm
UUID: 1cb879ce-2df7-174b-b4ba-d443e4fdc011
Ancestors: Tools-mt.1157

Do not update process browsers from inactive projects. Before this fix, an auto-updating process browser from a Morphic project would raise periodic errors after entering an MVC project, and an auto-updating process browser from a MVC project would cause spooky screen updates after entering a Morphic project.

Note that a better solution strategy would consist of something like StepMessages for MVC, which however do not exist as of today.

=============== Diff against Tools-mt.1157 ===============

Item was changed:
  ----- Method: ProcessBrowser>>startAutoUpdate (in category 'updating') -----
  	self isAutoUpdatingPaused
  		ifTrue: [^ autoUpdateProcess resume].
+ 	self isAutoUpdating ifFalse:
+ 		[| project |
+ 		project := Project current.
+ 		autoUpdateProcess :=
+ 			[[[self hasView] whileTrue:
+ 				[2 seconds wait.
+ 				project addDeferredUIMessage: [self updateProcessList]].
+ 				autoUpdateProcess := nil]
+ 					ensure: [self removeActionsForEvent: #aboutToEnterWorld]] fork.
+ 		project world
+ 			when: #aboutToLeaveWorld send: #pauseAutoUpdate to: self;
+ 			when: #aboutToEnterWorld send: #startAutoUpdate to: self].
+ 	self updateProcessList.!
- 	self isAutoUpdating
- 		ifFalse: [autoUpdateProcess := [[self hasView]
- 						whileTrue: [(Delay forSeconds: 2) wait.
- 							Project current addDeferredUIMessage: [self updateProcessList]].
- 					autoUpdateProcess := nil] fork].
- 	self updateProcessList
- !

More information about the Squeak-dev mailing list