summaryrefslogtreecommitdiffstats
path: root/views/controls/native/native_view_host_gtk.cc
diff options
context:
space:
mode:
Diffstat (limited to 'views/controls/native/native_view_host_gtk.cc')
-rw-r--r--views/controls/native/native_view_host_gtk.cc27
1 files changed, 7 insertions, 20 deletions
diff --git a/views/controls/native/native_view_host_gtk.cc b/views/controls/native/native_view_host_gtk.cc
index 581f08d..ac761b88 100644
--- a/views/controls/native/native_view_host_gtk.cc
+++ b/views/controls/native/native_view_host_gtk.cc
@@ -48,7 +48,7 @@ void NativeViewHostGtk::NativeViewAttached() {
}
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 @@ void NativeViewHostGtk::NativeViewDetaching() {
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;
@@ -165,11 +165,6 @@ void NativeViewHostGtk::HideWidget() {
gtk_widget_hide(fixed_);
}
-void NativeViewHostGtk::SetFocus() {
- DCHECK(host_->native_view());
- gtk_widget_grab_focus(host_->native_view());
-}
-
////////////////////////////////////////////////////////////////////////////////
// NativeViewHostGtk, private:
@@ -216,19 +211,11 @@ void NativeViewHostGtk::CallDestroy(GtkObject* object,
}
// 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;
}
////////////////////////////////////////////////////////////////////////////////