| Index: chrome/browser/tab_contents/tab_contents_view_mac.mm
|
| diff --git a/chrome/browser/tab_contents/tab_contents_view_mac.mm b/chrome/browser/tab_contents/tab_contents_view_mac.mm
|
| index c560fb64d613814b7239a89b0d917bae0da6890d..19a93c500fa7aa66cc85514970ba4f49de489545 100644
|
| --- a/chrome/browser/tab_contents/tab_contents_view_mac.mm
|
| +++ b/chrome/browser/tab_contents/tab_contents_view_mac.mm
|
| @@ -8,6 +8,9 @@
|
|
|
| #include "chrome/browser/browser.h" // TODO(beng): this dependency is awful.
|
| #import "chrome/browser/cocoa/focus_tracker.h"
|
| +#import "chrome/browser/cocoa/chrome_browser_window.h"
|
| +#import "chrome/browser/cocoa/browser_window_controller.h"
|
| +#include "chrome/browser/global_keyboard_shortcuts_mac.h"
|
| #include "chrome/browser/cocoa/sad_tab_view.h"
|
| #import "chrome/browser/cocoa/web_drag_source.h"
|
| #import "chrome/browser/cocoa/web_drop_target.h"
|
| @@ -294,6 +297,18 @@ void TabContentsViewMac::Observe(NotificationType type,
|
| }
|
|
|
| - (void)processKeyboardEvent:(NSEvent*)event {
|
| + // If this tab is no longer active, it's window will be |nil|. In that case,
|
| + // best ignore the event.
|
| + if (![self window])
|
| + return;
|
| +
|
| + ChromeBrowserWindow* window = (ChromeBrowserWindow*)[self window];
|
| + DCHECK([window isKindOfClass:[ChromeBrowserWindow class]]);
|
| + if ([window handleExtraBrowserKeyboardShortcut:event])
|
| + return;
|
| + if ([window handleExtraWindowKeyboardShortcut:event])
|
| + return;
|
| +
|
| if ([event type] == NSKeyDown)
|
| [super keyDown:event];
|
| else if ([event type] == NSKeyUp)
|
|
|