diff -r f624fc6ef653 -r 1217eb5963fc AbstractFileBrowser.st --- a/AbstractFileBrowser.st Fri Jun 29 11:42:31 2018 +0200 +++ b/AbstractFileBrowser.st Sat Jun 30 18:44:21 2018 +0200 @@ -3795,6 +3795,12 @@ ^ self aspectFor:#canMake ifAbsent:[ ValueHolder with:false ]. ! +canOpenChangeBrowser + ^ self aspectFor:#canOpenChangeBrowser ifAbsent:[ false asValue ]. + + "Created: / 30-06-2018 / 18:29:53 / Claus Gittinger" +! + currentDirectories " returns a holder on a Collection of all currently selected directories if only a file is selected, currentDirectories holds the directory of the file @@ -4756,6 +4762,7 @@ selectionNotEmpty := selection notEmptyOrNil. self hasSelection value:selectionNotEmpty. self hasFileSelection value:(selectionNotEmpty and:[self firstSelectedFile notNil]). + self canOpenChangeBrowser value:(selectionNotEmpty). newDirectories := self directoriesForFiles:selection. oldDirectories := self currentSelectedDirectories. @@ -4788,6 +4795,7 @@ "Modified: / 29-12-2010 / 11:01:52 / cg" "Modified: / 17-12-2013 / 08:23:31 / Jan Vrany " + "Modified: / 30-06-2018 / 18:30:44 / Claus Gittinger" ! filterModelChanged @@ -8087,7 +8095,21 @@ openChangesBrowser "open a change browser on the selected file(s)" + self currentSelectedDirectories notEmptyOrNil ifTrue:[ + self currentSelectedDirectories do:[:fn | + (fn suffix = 'package') ifTrue:[ + ChangeSetBrowser openOn:(GitHubSmalltalkPackageReader readPackageFrom:fn). + ]. + (fn suffix = 'class') ifTrue:[ + ChangeSetBrowser openOn:(GitHubSmalltalkClassReader readPackageFrom:fn). + ]. + ]. + ^ self. + ]. + self openTool:(UserPreferences current changesBrowserClass) + + "Modified: / 30-06-2018 / 18:35:51 / Claus Gittinger" ! openDiffView