Skip to content

Commit 22829f4

Browse files
committed
Remove instance variables that have a FIXME on them
Reference the repository and windowController proeprties instead
1 parent 1224dd0 commit 22829f4

File tree

4 files changed

+34
-26
lines changed

4 files changed

+34
-26
lines changed

Classes/Controllers/PBGitCommitController.m

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ - (void)awakeFromNib
9898
ascending:true]]];
9999

100100
// listen for updates
101-
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_repositoryUpdatedNotification:) name:PBGitRepositoryEventNotification object:repository];
101+
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(_repositoryUpdatedNotification:) name:PBGitRepositoryEventNotification object:self.repository];
102102

103103
[stagedFilesController setAutomaticallyRearrangesObjects:NO];
104104
[unstagedFilesController setAutomaticallyRearrangesObjects:NO];
@@ -145,12 +145,12 @@ - (NSResponder *)firstResponder;
145145

146146
- (PBGitIndex *)index
147147
{
148-
return repository.index;
148+
return self.repository.index;
149149
}
150150

151151
- (void)commitWithVerification:(BOOL)doVerify
152152
{
153-
if ([[NSFileManager defaultManager] fileExistsAtPath:[repository.gitURL.path stringByAppendingPathComponent:@"MERGE_HEAD"]]) {
153+
if ([[NSFileManager defaultManager] fileExistsAtPath:[self.repository.gitURL.path stringByAppendingPathComponent:@"MERGE_HEAD"]]) {
154154
NSString *message = NSLocalizedString(@"Cannot commit merges",
155155
@"Title for sheet that GitX cannot create merge commits");
156156
NSString *info = NSLocalizedString(@"GitX cannot commit merges yet. Please commit your changes from the command line.",
@@ -188,7 +188,7 @@ - (void)commitWithVerification:(BOOL)doVerify
188188
self.isBusy = YES;
189189
commitMessageView.editable = NO;
190190

191-
[repository.index commitWithMessage:commitMessage andVerify:doVerify];
191+
[self.repository.index commitWithMessage:commitMessage andVerify:doVerify];
192192
}
193193

194194
- (void)discardChangesForFiles:(NSArray *)files force:(BOOL)force
@@ -217,7 +217,7 @@ - (void)discardChangesForFiles:(NSArray *)files force:(BOOL)force
217217
- (IBAction)signOff:(id)sender
218218
{
219219
NSError *error = nil;
220-
GTConfiguration *config = [repository.gtRepo configurationWithError:&error];
220+
GTConfiguration *config = [self.repository.gtRepo configurationWithError:&error];
221221
NSString *userName = [config stringForKey:@"user.name"];
222222
NSString *userEmail = [config stringForKey:@"user.email"];
223223
if (!(userName && userEmail)) {
@@ -243,10 +243,10 @@ - (IBAction)refresh:(id)sender
243243
{
244244
self.isBusy = YES;
245245
self.status = NSLocalizedString(@"Refreshing index…", @"Message in status bar while the index is refreshing");
246-
[repository.index refresh];
246+
[self.repository.index refresh];
247247

248248
// Reload refs (in case HEAD changed)
249-
[repository reloadRefs];
249+
[self.repository reloadRefs];
250250
}
251251

252252
- (IBAction)commit:(id)sender

Classes/Controllers/PBGitHistoryController.m

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -88,6 +88,8 @@ - (void)loadView
8888

8989
self.selectedCommitDetailsIndex = [[NSUserDefaults standardUserDefaults] integerForKey:kHistorySelectedDetailIndexKey];
9090

91+
PBGitRepository *repository = self.repository;
92+
9193
[commitController addObserver:self
9294
keyPath:@"selection"
9395
options:0
@@ -265,6 +267,8 @@ + (NSSet *)keyPathsForValuesAffectingSingleNonHeadCommitSelected
265267

266268
- (void)updateBranchFilterMatrix
267269
{
270+
PBGitRepository *repository = self.repository;
271+
268272
if ([repository.currentBranch isSimpleRef]) {
269273
[allBranchesFilterItem setEnabled:YES];
270274
[localRemoteBranchesFilterItem setEnabled:YES];
@@ -321,7 +325,7 @@ - (NSInteger)selectedCommitDetailsIndex
321325

322326
- (void)updateStatus
323327
{
324-
self.isBusy = repository.revisionList.isUpdating;
328+
self.isBusy = self.repository.revisionList.isUpdating;
325329
self.status = [NSString stringWithFormat:@"%lu commits loaded", [[commitController arrangedObjects] count]];
326330
}
327331

@@ -417,6 +421,8 @@ - (IBAction)setTreeView:(id)sender
417421

418422
- (IBAction)setBranchFilter:(id)sender
419423
{
424+
PBGitRepository *repository = self.repository;
425+
420426
repository.currentBranchFilter = [(NSView *)sender tag];
421427
[PBGitDefaults setBranchFilter:repository.currentBranchFilter];
422428
[self updateBranchFilterMatrix];
@@ -426,7 +432,7 @@ - (IBAction)setBranchFilter:(id)sender
426432
- (void)keyDown:(NSEvent *)event
427433
{
428434
if ([[event charactersIgnoringModifiers] isEqualToString:@"f"] && [event modifierFlags] & NSAlternateKeyMask && [event modifierFlags] & NSCommandKeyMask)
429-
[superController.window makeFirstResponder:searchField];
435+
[self.windowController.window makeFirstResponder:searchField];
430436
else
431437
[super keyDown:event];
432438
}
@@ -518,7 +524,7 @@ - (void)updateQuicklookForce:(BOOL)force
518524

519525
- (IBAction)refresh:(id)sender
520526
{
521-
[repository forceUpdateRevisions];
527+
[self.repository forceUpdateRevisions];
522528
}
523529

524530
- (void)updateView
@@ -628,7 +634,7 @@ - (void)checkoutFiles:(id)sender
628634
[files addObject:[filePath stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]]];
629635

630636
NSError *error = nil;
631-
BOOL success = [repository checkoutFiles:files fromRefish:self.selectedCommits.firstObject error:&error];
637+
BOOL success = [self.repository checkoutFiles:files fromRefish:self.selectedCommits.firstObject error:&error];
632638
if (!success) {
633639
[self.windowController showErrorSheet:error];
634640
}
@@ -664,7 +670,7 @@ - (BOOL)tableView:(NSTableView *)tv writeRowsWithIndexes:(NSIndexSet *)rowIndexe
664670
if ([ref isTag] || [ref isRemoteBranch])
665671
return NO;
666672

667-
if ([[[repository headRef] ref] isEqualToRef:ref])
673+
if ([[[self.repository headRef] ref] isEqualToRef:ref])
668674
return NO;
669675

670676
NSData *data = [NSKeyedArchiver archivedDataWithRootObject:[NSArray arrayWithObjects:[NSNumber numberWithInteger:row], [NSNumber numberWithInt:index], NULL]];
@@ -779,6 +785,7 @@ - (NSArray *)menuItemsForPaths:(NSArray *)paths
779785
action:@selector(showCommitsFromTree:)
780786
keyEquivalent:@""];
781787

788+
PBGitRepository *repository = self.repository;
782789
PBGitRef *headRef = [[repository headRef] ref];
783790
NSString *headRefName = [headRef shortName];
784791
NSString *diffTitleFormat = multiple ? NSLocalizedString(@"Diff files with %@", @"Diff with ref menu item for multiple files") : NSLocalizedString(@"Diff file with %@", @"Diff with ref menu item for single file");

Classes/Controllers/PBGitSidebarController.m

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,8 @@ - (void)awakeFromNib
6767
window.contentView = self.view;
6868
[self populateList];
6969

70+
PBGitRepository *repository = self.repository;
71+
7072
[repository addObserver:self
7173
keyPath:@"currentBranch"
7274
options:0
@@ -147,6 +149,7 @@ - (void)selectStage
147149

148150
- (void)selectCurrentBranch
149151
{
152+
PBGitRepository *repository = self.repository;
150153
PBGitRevSpecifier *rev = repository.currentBranch;
151154
if (!rev) {
152155
[repository reloadRefs];
@@ -234,18 +237,19 @@ - (void)outlineViewSelectionDidChange:(NSNotification *)notification
234237
{
235238
NSInteger index = [sourceView selectedRow];
236239
PBSourceViewItem *item = [sourceView itemAtRow:index];
240+
PBGitWindowController *windowController = self.windowController;
237241

238242
if ([item revSpecifier]) {
239-
if (![repository.currentBranch isEqual:[item revSpecifier]]) {
240-
repository.currentBranch = [item revSpecifier];
243+
if (![self.repository.currentBranch isEqual:[item revSpecifier]]) {
244+
self.repository.currentBranch = [item revSpecifier];
241245
}
242246

243-
[superController changeContentController:superController.historyViewController];
247+
[windowController changeContentController:windowController.historyViewController];
244248
[PBGitDefaults setShowStageView:NO];
245249
}
246250

247251
if (item == stage) {
248-
[superController changeContentController:superController.commitViewController];
252+
[windowController changeContentController:windowController.commitViewController];
249253
[PBGitDefaults setShowStageView:YES];
250254
}
251255

@@ -266,7 +270,7 @@ - (void)doubleClicked:(id)object
266270
PBSourceViewGitBranchItem *branch = item;
267271

268272
NSError *error = nil;
269-
BOOL success = [repository checkoutRefish:[branch ref] error:&error];
273+
BOOL success = [self.repository checkoutRefish:[branch ref] error:&error];
270274
if (!success) {
271275
[self.windowController showErrorSheet:error];
272276
}
@@ -292,7 +296,7 @@ - (NSView *)outlineView:(NSOutlineView *)outlineView viewForTableColumn:(NSTable
292296

293297
cell.textField.stringValue = [[item title] copy];
294298
cell.imageView.image = item.icon;
295-
cell.isCheckedOut = [item.revSpecifier isEqual:[repository headRef]];
299+
cell.isCheckedOut = [item.revSpecifier isEqual:[self.repository headRef]];
296300

297301
return cell;
298302
}
@@ -324,6 +328,7 @@ - (BOOL)outlineView:(NSOutlineView *)outlineView shouldShowOutlineCellForItem:(i
324328

325329
- (void)populateList
326330
{
331+
PBGitRepository *repository = self.repository;
327332
PBSourceViewItem *project = [PBSourceViewItem groupItemWithTitle:[repository projectName]];
328333
project.uncollapsible = YES;
329334

@@ -415,7 +420,7 @@ - (void)addMenuItemsForRef:(PBGitRef *)ref toMenu:(NSMenu *)menu
415420
if (!ref)
416421
return;
417422

418-
for (NSMenuItem *menuItem in [superController.historyViewController menuItemsForRef:ref])
423+
for (NSMenuItem *menuItem in [self.windowController.historyViewController menuItemsForRef:ref])
419424
[menu addItem:menuItem];
420425
}
421426

@@ -488,7 +493,7 @@ - (void)updateRemoteControls
488493
BOOL hasRemote = NO;
489494

490495
PBGitRef *ref = [[self selectedItem] ref];
491-
if ([ref isRemote] || ([ref isBranch] && [[repository remoteRefForBranch:ref error:NULL] remoteName]))
496+
if ([ref isRemote] || ([ref isBranch] && [[self.repository remoteRefForBranch:ref error:NULL] remoteName]))
492497
hasRemote = YES;
493498

494499
[remoteControls setEnabled:hasRemote forSegment:kFetchSegment];
@@ -515,7 +520,7 @@ - (IBAction)fetchPullPushAction:(id)sender
515520
if (![ref isRemote] && ![ref isBranch])
516521
return;
517522

518-
PBGitRef *remoteRef = [repository remoteRefForBranch:ref error:NULL];
523+
PBGitRef *remoteRef = [self.repository remoteRefForBranch:ref error:NULL];
519524
if (!remoteRef)
520525
return;
521526

Classes/Controllers/PBViewController.h

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -11,11 +11,7 @@
1111
#import "PBGitRepository.h"
1212
#import "PBGitWindowController.h"
1313

14-
@interface PBViewController : NSViewController {
15-
// FIXME: these ivars must go, but most controller out there access it directly, so, not today
16-
__weak PBGitRepository *repository;
17-
__weak PBGitWindowController *superController;
18-
}
14+
@interface PBViewController : NSViewController
1915

2016
@property (nonatomic, weak, readonly) PBGitRepository *repository;
2117
@property (weak, readonly) PBGitWindowController *windowController;

0 commit comments

Comments
 (0)