Index: ui/views/cocoa/bridged_native_widget.mm |
diff --git a/ui/views/cocoa/bridged_native_widget.mm b/ui/views/cocoa/bridged_native_widget.mm |
index f4efcb249d13e83a09ff5afd023d874b44851829..a5e26e6acc8d1f388f175b639129305c375babb7 100644 |
--- a/ui/views/cocoa/bridged_native_widget.mm |
+++ b/ui/views/cocoa/bridged_native_widget.mm |
@@ -39,7 +39,8 @@ void BridgedNativeWidget::SetRootView(views::View* view) { |
// the old views::View will be gone, so any method calls will become no-ops. |
if (view) { |
- bridged_view_.reset([[BridgedContentView alloc] initWithView:view]); |
+ bridged_view_.reset( |
+ [[BridgedContentView alloc] initWithView:view parent:this]); |
// Objective C initializers can return nil. However, if |view| is non-NULL |
// this should be treated as an error and caught early. |
CHECK(bridged_view_); |
@@ -76,4 +77,15 @@ void BridgedNativeWidget::DispatchKeyEventPostIME(const ui::KeyEvent& key) { |
widget->GetFocusManager()->OnKeyEvent(key); |
} |
+void BridgedNativeWidget::OnWillChangeFocus(View* focused_before, |
+ View* focused_now) { |
+} |
+ |
+void BridgedNativeWidget::OnDidChangeFocus(View* focused_before, |
+ View* focused_now) { |
+ ui::TextInputClient* input_client = |
+ focused_now ? focused_now->GetTextInputClient() : NULL; |
+ [bridged_view_ setTextInputClient:input_client]; |
+} |
+ |
} // namespace views |