2015-06-09 20:23 GMT+02:00 stepharo <stepharo@free.fr>:
reverting ... reintroduces the old behavior and bug but we can browse class methods.

If you revert this change, you can add the following change

replace
self selectedClass�� = class
������ ������ ������ ������ ������ ifTrue: [ self selectedClass: nil ].
with
self selectedClass theNonMetaClass = class
������ ������ ������ ������ ������ ifTrue: [ self selectedClass: nil ].

in AbstractNautilusUI>>#classRemoved:

this should solve the bug "15708 Deleting a class with nautilus raises an error"

��

selectedClassWithoutChangingSelection: aClass

�� �� self resetCategoriesList.
�� �� self okToChangeSourceAndComment
�� �� �� �� ifFalse: [ ^ self ].
�� �� aClass
�� �� �� �� ifNil: [ self unselectClass ]
�� �� �� �� ifNotNil: [
�� �� �� �� �� �� acceptor := ClassOrMethodDefinitionAcceptor model: self.
�� �� �� �� �� �� self classWidget selectClass: aClass.
�� �� �� �� �� �� ((self selectedPackageIncludes: aClass theNonMetaClass) or: [ model showHierarchy ])
�� �� �� �� �� �� �� �� ifTrue: [
�� �� �� �� �� �� �� �� �� �� self model
�� �� �� �� �� �� �� �� �� �� �� �� package: self selectedPackage
�� �� �� �� �� �� �� �� �� �� �� �� class: aClass theNonMetaClass
�� �� �� �� �� �� �� �� �� �� �� �� category: nil
�� �� �� �� �� �� �� �� �� �� �� �� method: nil ]
�� �� �� �� �� �� �� �� ifFalse: [ self selectedClass: aClass withSelection: (self parentOfClass: aClass theNonMetaClass) ].
�� �� �� �� �� �� self updateOnClassSelection ].

=>

selectedClassWithoutChangingSelection: aClass

�� �� self resetCategoriesList.
�� �� self okToChangeSourceAndComment
�� �� �� �� ifFalse: [ ^ self ].
�� �� aClass
�� �� �� �� ifNil: [ self unselectClass ]
�� �� �� �� ifNotNil: [
�� �� �� �� �� �� acceptor := ClassOrMethodDefinitionAcceptor model: self.
�� �� �� �� �� �� self classWidget selectClass: aClass.
�� �� �� �� �� �� ((self selectedPackageIncludes: aClass theNonMetaClass) or: [ model showHierarchy ])
�� �� �� �� �� �� �� �� ifTrue: [
�� �� �� �� �� �� �� �� �� �� self model
�� �� �� �� �� �� �� �� �� �� �� �� package: self selectedPackage
�� �� �� �� �� �� �� �� �� �� �� �� class: aClass
�� �� �� �� �� �� �� �� �� �� �� �� category: nil
�� �� �� �� �� �� �� �� �� �� �� �� method: nil ]
�� �� �� �� �� �� �� �� ifFalse: [ self selectedClass: aClass withSelection: (self parentOfClass: aClass) ].
�� �� �� �� �� �� self updateOnClassSelection ].