Index: chrome/browser/cocoa/focus_tracker.mm |
=================================================================== |
--- chrome/browser/cocoa/focus_tracker.mm (revision 26217) |
+++ chrome/browser/cocoa/focus_tracker.mm (working copy) |
@@ -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 |