# HG changeset patch # User Claus Gittinger # Date 1576594580 -3600 # Node ID d4de0de1a9918e7e2de6bf8b972fd3237c5e7c6a # Parent bd1cae72d73d897b541acf2ddc926903eb85c06c #FEATURE by cg class: ViewTreeInspectorApplication changed: #postBuildBrowserCanvas: #updateBrowser class: ViewTreeInspectorApplication class changed: #windowSpec diff -r bd1cae72d73d -r d4de0de1a991 Tools__ViewTreeApplication.st --- a/Tools__ViewTreeApplication.st Fri Dec 13 21:50:18 2019 +0100 +++ b/Tools__ViewTreeApplication.st Tue Dec 17 15:56:20 2019 +0100 @@ -369,7 +369,7 @@ hasHorizontalScrollBar: true hasVerticalScrollBar: true majorKey: #'Tools::NewSystemBrowser' - minorKey: singleClassWithoutVariableListBrowserSpec + minorKey: multipleClassBrowserSpec "/ singleClassWithoutVariableListBrowserSpec createNewApplication: true createNewBuilder: true postBuildCallback: postBuildBrowserCanvas: @@ -1245,17 +1245,31 @@ ! updateBrowser - |cls widget| + |cls widget navigationState| widget := self selectedView. "/ update the browser self inspectorMode == #widgetClass ifTrue:[ - cls := widget class. + cls := widget class. ] ifFalse:[ - cls := widget application class + cls := widget application class ]. - browser switchToClass:cls selector:nil. + "/ browser switchToClass:cls selector:nil. + + navigationState := browser navigationState. + + navigationState classList value:(cls theNonMetaclass withAllSuperclasses). + navigationState meta value:(cls isMetaclass). + browser classListGenerator value:(cls theNonMetaclass withAllSuperclasses). + browser sortByNameAndInheritance value:true. + browser + selectClass:cls; + selectProtocol: (Tools::BrowserList nameListEntryForALL). + browser switchToClass:cls selector:nil updateHistory: false. + + "/ sigh must be done after postbuild + "/ navigationState classListApplication addOwnerClasses value:false. ! updateInspector @@ -1540,8 +1554,25 @@ ! postBuildBrowserCanvas:aSubCanvas + |navigationState| + browser := aSubCanvas application. + browser isEmbeddedBrowser:true. +"/ navigationState := browser navigationState. +"/ +"/ navigationState classList value:(aClass theNonMetaclass withAllSuperclasses). +"/ navigationState meta value:(aClass isMetaclass). +"/ browser classListGenerator value:(aClass theNonMetaclass withAllSuperclasses). +"/ browser sortByNameAndInheritance value:true. +"/ browser +"/ selectClass:aClass; +"/ selectProtocol: (Tools::BrowserList nameListEntryForALL). +"/ browser switchToClass:aClass selector:initialSelectorOrNil updateHistory: false. +"/ +"/ "/ sigh must be done after postbuild +"/ navigationState classListApplication addOwnerClasses value:false. + "/ browser navigationState meta onChangeEvaluate:(self updateBrowser). "/ self updateBrowser. !