diff options
Diffstat (limited to 'chrome/browser/cocoa')
-rw-r--r-- | chrome/browser/cocoa/find_bar_cocoa_controller.h | 3 | ||||
-rw-r--r-- | chrome/browser/cocoa/find_bar_cocoa_controller.mm | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/chrome/browser/cocoa/find_bar_cocoa_controller.h b/chrome/browser/cocoa/find_bar_cocoa_controller.h index 523db10..b974fcf 100644 --- a/chrome/browser/cocoa/find_bar_cocoa_controller.h +++ b/chrome/browser/cocoa/find_bar_cocoa_controller.h @@ -39,6 +39,9 @@ class FindNotificationDetails; // running (stopAnimation is currently called before the last tab in a // window is removed). scoped_nsobject<NSViewAnimation> currentAnimation_; + + // If YES, do nothing as a result of find pasteboard update notifications. + BOOL suppressPboardUpdateActions_; }; // Initializes a new FindBarCocoaController. diff --git a/chrome/browser/cocoa/find_bar_cocoa_controller.mm b/chrome/browser/cocoa/find_bar_cocoa_controller.mm index 995f29c..dc39596 100644 --- a/chrome/browser/cocoa/find_bar_cocoa_controller.mm +++ b/chrome/browser/cocoa/find_bar_cocoa_controller.mm @@ -92,6 +92,8 @@ static float kFindBarCloseDuration = 0.15; } - (void)findPboardUpdated:(NSNotification*)notification { + if (suppressPboardUpdateActions_) + return; [self prepopulateText:[[FindPasteboard sharedInstance] findText] stopSearch:YES]; } @@ -132,7 +134,9 @@ static float kFindBarCloseDuration = 0.15; return; NSString* findText = [findText_ stringValue]; + suppressPboardUpdateActions_ = YES; [[FindPasteboard sharedInstance] setFindText:findText]; + suppressPboardUpdateActions_ = NO; if ([findText length] > 0) { tab_contents->StartFinding(base::SysNSStringToUTF16(findText), true, false); |