diff --git a/PBCommitList.h b/PBCommitList.h index 20cea8f..f4c0803 100644 --- a/PBCommitList.h +++ b/PBCommitList.h @@ -13,6 +13,7 @@ @interface PBCommitList : NSTableView { IBOutlet WebView* webView; IBOutlet PBWebGitController* webController; + IBOutlet PBGitHistoryController *controller; } @end diff --git a/PBCommitList.m b/PBCommitList.m index a7f03e2..9b7c2ef 100644 --- a/PBCommitList.m +++ b/PBCommitList.m @@ -28,4 +28,9 @@ [super keyDown: event]; } +- (void) copy:(id)sender +{ + [controller copyCommitInfo]; +}; + @end diff --git a/PBGitHistoryController.h b/PBGitHistoryController.h index 008c943..516f97d 100644 --- a/PBGitHistoryController.h +++ b/PBGitHistoryController.h @@ -40,5 +40,7 @@ - (IBAction) openSelectedFile: sender; - (void) updateQuicklookForce: (BOOL) force; +- (void) copyCommitInfo; + - (BOOL) hasNonlinearPath; @end diff --git a/PBGitHistoryController.m b/PBGitHistoryController.m index 9ef8386..f8c4531 100644 --- a/PBGitHistoryController.m +++ b/PBGitHistoryController.m @@ -102,13 +102,25 @@ - (void)keyDown:(NSEvent*)event { - NSLog(@"Key down!"); if ([[event charactersIgnoringModifiers] isEqualToString: @"f"] && [event modifierFlags] & NSAlternateKeyMask && [event modifierFlags] & NSCommandKeyMask) [superController focusOnSearchField]; else [super keyDown: event]; } +- (void) copyCommitInfo +{ + PBGitCommit *commit = [[commitController selectedObjects] objectAtIndex:0]; + if (!commit) + return; + NSString *info = [NSString stringWithFormat:@"%@ (%@)", [commit sha], [commit subject]]; + + NSPasteboard *a =[NSPasteboard generalPasteboard]; + [a declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:self]; + [a setString:info forType: NSStringPboardType]; + +} + - (IBAction) toggleQuickView: sender { id panel = [QLPreviewPanel sharedPreviewPanel]; diff --git a/PBGitHistoryView.xib b/PBGitHistoryView.xib index 981e66c..be3adf9 100644 --- a/PBGitHistoryView.xib +++ b/PBGitHistoryView.xib @@ -8,7 +8,7 @@ 352.00 YES - + YES @@ -1320,6 +1320,14 @@ 110 + + + controller + + + + 111 + @@ -1852,7 +1860,7 @@ - 110 + 111 @@ -1864,11 +1872,13 @@ YES YES + controller webController webView YES + PBGitHistoryController PBWebGitController WebView