diff --git a/Classes/Controllers/PBGitCommitController.m b/Classes/Controllers/PBGitCommitController.m index 1840e2cd..5ed6319a 100644 --- a/Classes/Controllers/PBGitCommitController.m +++ b/Classes/Controllers/PBGitCommitController.m @@ -135,6 +135,7 @@ - (void)closeView { [[NSNotificationCenter defaultCenter] removeObserver:self]; [webController closeView]; + [super closeView]; } - (NSResponder *)firstResponder; diff --git a/Classes/Controllers/PBGitSidebarController.m b/Classes/Controllers/PBGitSidebarController.m index ca89627a..dbe4ec6c 100644 --- a/Classes/Controllers/PBGitSidebarController.m +++ b/Classes/Controllers/PBGitSidebarController.m @@ -125,6 +125,11 @@ - (void)awakeFromNib [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(expandCollapseItem:) name:NSOutlineViewItemWillCollapseNotification object:sourceView]; } +- (void)closeView +{ + [super closeView]; +} + - (void)dealloc { [[NSNotificationCenter defaultCenter] removeObserver:self name:NSOutlineViewItemWillExpandNotification object:sourceView]; diff --git a/Classes/Controllers/PBViewController.m b/Classes/Controllers/PBViewController.m index 044f610d..1ee7bb86 100644 --- a/Classes/Controllers/PBViewController.m +++ b/Classes/Controllers/PBViewController.m @@ -35,7 +35,9 @@ - (void)closeView { [self unbind:@"repository"]; if (_hasViewLoaded) - [[self view] removeFromSuperview]; // remove the current view + [[self view] removeFromSuperview]; // remove the current view + repository = nil; + superController = nil; } - (void)awakeFromNib diff --git a/Classes/Views/PBSourceViewItem.h b/Classes/Views/PBSourceViewItem.h index b0f57242..0d99c8bd 100644 --- a/Classes/Views/PBSourceViewItem.h +++ b/Classes/Views/PBSourceViewItem.h @@ -40,7 +40,7 @@ NS_ASSUME_NONNULL_BEGIN @property (getter=isUncollapsible) BOOL uncollapsible; @property (getter=isExpanded) BOOL expanded; @property PBGitRevSpecifier *revSpecifier; -@property PBSourceViewItem *parent; +@property (weak) PBSourceViewItem *parent; @property (readonly) NSString *iconName; @property (nullable, readonly) NSImage *icon;