Patrick Rein uploaded a new version of Kernel to project The Trunk: http://source.squeak.org/trunk/Kernel-pre.1430.mcz
==================== Summary ====================
Name: Kernel-pre.1430 Author: pre Time: 1 December 2021, 2:57:51.27597 pm UUID: 2ac40a83-9e98-f24b-9bcf-ad603b6e7054 Ancestors: Kernel-nice.1429
Slightly improves the ObjectViewer by returning the ObjectViewer whenever the wrapped object would return itself. Thereby, the ObjectViewer stays in place somewhat longer. Recategorizes the ObjectViewer interface on Object to debugging, as it does not have anything to do with dependents access.
=============== Diff against Kernel-nice.1429 ===============
Item was changed: + ----- Method: Object>>evaluate:wheneverChangeIn: (in category 'debugging') ----- - ----- Method: Object>>evaluate:wheneverChangeIn: (in category 'dependents access') ----- evaluate: actionBlock wheneverChangeIn: aspectBlock | viewerThenObject objectThenViewer | objectThenViewer := self. viewerThenObject := ObjectViewer on: objectThenViewer. objectThenViewer become: viewerThenObject. "--- Then ---" objectThenViewer xxxViewedObject: viewerThenObject evaluate: actionBlock wheneverChangeIn: aspectBlock!
Item was changed: ----- Method: ObjectViewer>>doesNotUnderstand: (in category 'very few messages') ----- doesNotUnderstand: aMessage "Check for change after sending aMessage" | returnValue newValue | recursionFlag ifTrue: [^ aMessage sendTo: tracedObject]. recursionFlag := true. returnValue := aMessage sendTo: tracedObject. + returnValue == tracedObject ifTrue: [ + "Keep the ObjectViewer in place as long as possible" + returnValue := self]. newValue := valueBlock cull: aMessage. newValue = lastValue ifFalse: [changeBlock cull: aMessage. lastValue := newValue]. recursionFlag := false. ^ returnValue!
squeak-dev@lists.squeakfoundation.org