diff --git a/src/Spec2-Code/SpCodePresenter.class.st b/src/Spec2-Code/SpCodePresenter.class.st index cf8fd883..d6024f2b 100644 --- a/src/Spec2-Code/SpCodePresenter.class.st +++ b/src/Spec2-Code/SpCodePresenter.class.st @@ -272,16 +272,17 @@ SpCodePresenter >> doBrowseHierarchy [ { #category : 'commands' } SpCodePresenter >> doBrowseImplementors [ + | variableOrClassName variable | - variableOrClassName := self selectedSelector ifNil: [ ^ nil ]. variable := self lookupEnvironment lookupVar: variableOrClassName. - + "For global and class variables, implementors-of browses the class of the value of the variable, for classes this means it browses the class" - (variable isNotNil and: [variable isGlobalVariable or: [variable isClassVariable]]) + (variable isNotNil and: [ variable isGlobalVariable or: [ variable isClassVariable ] ]) ifTrue: [ self systemNavigation browse: variable value ] - ifFalse: [ self systemNavigation browseAllImplementorsOf: variableOrClassName ] + ifFalse: [ + (Smalltalk tools toolNamed: #messageList) browseImplementorsOfAll: { variableOrClassName } from: self interactionModel behavior ] ] { #category : 'commands' }