Index: views/controls/native/native_view_host_gtk.cc |
=================================================================== |
--- views/controls/native/native_view_host_gtk.cc (revision 27081) |
+++ views/controls/native/native_view_host_gtk.cc (working copy) |
@@ -48,7 +48,7 @@ |
} |
if (!focus_signal_id_) { |
- focus_signal_id_ = g_signal_connect(G_OBJECT(host_->native_view()), |
+ focus_signal_id_ = g_signal_connect(G_OBJECT(host_->focus_native_view()), |
"focus-in-event", |
G_CALLBACK(CallFocusIn), this); |
} |
@@ -70,7 +70,7 @@ |
destroy_signal_id_); |
destroy_signal_id_ = 0; |
- g_signal_handler_disconnect(G_OBJECT(host_->native_view()), |
+ g_signal_handler_disconnect(G_OBJECT(host_->focus_native_view()), |
focus_signal_id_); |
focus_signal_id_ = 0; |
@@ -164,11 +164,6 @@ |
gtk_widget_hide(fixed_); |
} |
-void NativeViewHostGtk::SetFocus() { |
- DCHECK(host_->native_view()); |
- gtk_widget_grab_focus(host_->native_view()); |
-} |
- |
//////////////////////////////////////////////////////////////////////////////// |
// NativeViewHostGtk, private: |
@@ -215,19 +210,11 @@ |
} |
// static |
-void NativeViewHostGtk::CallFocusIn(GtkWidget* widget, |
- GdkEventFocus* event, |
- NativeViewHostGtk* host) { |
- FocusManager* focus_manager = |
- FocusManager::GetFocusManagerForNativeView(widget); |
- if (!focus_manager) { |
- // TODO(jcampan): http://crbug.com/21378 Reenable this NOTREACHED() when the |
- // options page is only based on views. |
- // NOTREACHED(); |
- NOTIMPLEMENTED(); |
- return; |
- } |
- focus_manager->SetFocusedView(host->host_->focus_view()); |
+gboolean NativeViewHostGtk::CallFocusIn(GtkWidget* widget, |
+ GdkEventFocus* event, |
+ NativeViewHostGtk* host) { |
+ host->host_->GotNativeFocus(); |
+ return false; |
} |
//////////////////////////////////////////////////////////////////////////////// |