diff options
Diffstat (limited to 'chrome/browser/cocoa/focus_tracker.mm')
-rw-r--r-- | chrome/browser/cocoa/focus_tracker.mm | 46 |
1 files changed, 0 insertions, 46 deletions
diff --git a/chrome/browser/cocoa/focus_tracker.mm b/chrome/browser/cocoa/focus_tracker.mm deleted file mode 100644 index ecbb864..0000000 --- a/chrome/browser/cocoa/focus_tracker.mm +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) 2009 The Chromium Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -#import "chrome/browser/cocoa/focus_tracker.h" - -#include "base/logging.h" - -@implementation FocusTracker - -- (id)initWithWindow:(NSWindow*)window { - if ((self = [super init])) { - NSResponder* current_focus = [window firstResponder]; - - // Special case NSTextViews, because they are removed from the - // view hierarchy when their text field does not have focus. If - // an NSTextView is the current first responder, save a pointer to - // its NSTextField delegate instead. - if ([current_focus isKindOfClass:[NSTextView class]]) { - id delegate = [(NSTextView*)current_focus delegate]; - if ([delegate isKindOfClass:[NSTextField class]]) - current_focus = delegate; - else - current_focus = nil; - } - - if ([current_focus isKindOfClass:[NSView class]]) { - NSView* current_focus_view = (NSView*)current_focus; - focusedView_.reset([current_focus_view retain]); - } - } - - return self; -} - -- (BOOL)restoreFocusInWindow:(NSWindow*)window { - if (!focusedView_.get()) - return NO; - - if ([focusedView_ window] && [focusedView_ window] == window) - return [window makeFirstResponder:focusedView_.get()]; - - return NO; -} - -@end |