Index: ui/views/cocoa/bridged_native_widget.h |
diff --git a/ui/views/cocoa/bridged_native_widget.h b/ui/views/cocoa/bridged_native_widget.h |
index f034799bbf4357011c6dfff8846b1e2b0d93369d..9f8da5d648c45f41173fd9fe3ab50c242ac96870 100644 |
--- a/ui/views/cocoa/bridged_native_widget.h |
+++ b/ui/views/cocoa/bridged_native_widget.h |
@@ -9,6 +9,7 @@ |
#import "base/mac/scoped_nsobject.h" |
#include "base/memory/scoped_ptr.h" |
+#import "ui/views/focus/focus_manager.h" |
#include "ui/views/ime/input_method_delegate.h" |
#include "ui/views/views_export.h" |
@@ -28,7 +29,8 @@ class View; |
// A bridge to an NSWindow managed by an instance of NativeWidgetMac or |
// DesktopNativeWidgetMac. Serves as a helper class to bridge requests from the |
// NativeWidgetMac to the Cocoa window. Behaves a bit like an aura::Window. |
-class VIEWS_EXPORT BridgedNativeWidget : public internal::InputMethodDelegate { |
+class VIEWS_EXPORT BridgedNativeWidget : public internal::InputMethodDelegate, |
+ public FocusChangeListener { |
public: |
// Creates one side of the bridge. |parent| can be NULL in tests. |
BridgedNativeWidget(NativeWidgetMac* parent); |
@@ -58,6 +60,14 @@ class VIEWS_EXPORT BridgedNativeWidget : public internal::InputMethodDelegate { |
base::scoped_nsobject<ViewsNSWindowDelegate> window_delegate_; |
base::scoped_nsobject<BridgedContentView> bridged_view_; |
scoped_ptr<ui::InputMethod> input_method_; |
+ FocusManager* focus_manager_; // Weak. Owned by our Widget. |
+ // Will be NULL if native_widget_mac_ is NULL. |
+ |
+ // Overridden from FocusChangeListener: |
+ virtual void OnWillChangeFocus(View* focused_before, |
+ View* focused_now) OVERRIDE; |
+ virtual void OnDidChangeFocus(View* focused_before, |
+ View* focused_now) OVERRIDE; |
DISALLOW_COPY_AND_ASSIGN(BridgedNativeWidget); |
}; |