| Index: views/widget/widget_gtk.cc
|
| ===================================================================
|
| --- views/widget/widget_gtk.cc (revision 25502)
|
| +++ views/widget/widget_gtk.cc (working copy)
|
| @@ -287,6 +287,11 @@
|
|
|
| tooltip_manager_.reset(new TooltipManagerGtk(this));
|
|
|
| + // Register for tooltips.
|
| + g_object_set(G_OBJECT(window_contents_), "has-tooltip", TRUE, NULL);
|
| + g_signal_connect(G_OBJECT(window_contents_), "query_tooltip",
|
| + G_CALLBACK(CallQueryTooltip), this);
|
| +
|
| if (type_ == TYPE_CHILD) {
|
| if (parent) {
|
| WidgetGtk* parent_widget = GetViewForNative(parent);
|
| @@ -668,7 +673,7 @@
|
| last_mouse_event_was_move_ = false;
|
| if (!has_capture_ && !is_mouse_down_)
|
| root_view_->ProcessOnMouseExited();
|
| - return true;
|
| + return false;
|
| }
|
|
|
| gboolean WidgetGtk::OnKeyPress(GtkWidget* widget, GdkEventKey* event) {
|
| @@ -681,6 +686,13 @@
|
| return root_view_->ProcessKeyEvent(key_event);
|
| }
|
|
|
| +gboolean WidgetGtk::OnQueryTooltip(gint x,
|
| + gint y,
|
| + gboolean keyboard_mode,
|
| + GtkTooltip* tooltip) {
|
| + return tooltip_manager_->ShowTooltip(x, y, keyboard_mode, tooltip);
|
| +}
|
| +
|
| gboolean WidgetGtk::OnGrabBrokeEvent(GtkWidget* widget, GdkEvent* event) {
|
| HandleGrabBroke();
|
| return false; // To let other widgets get the event.
|
| @@ -972,6 +984,16 @@
|
| return widget_gtk->OnKeyRelease(widget, event);
|
| }
|
|
|
| +// static
|
| +gboolean WidgetGtk::CallQueryTooltip(GtkWidget* widget,
|
| + gint x,
|
| + gint y,
|
| + gboolean keyboard_mode,
|
| + GtkTooltip* tooltip,
|
| + WidgetGtk* host) {
|
| + return host->OnQueryTooltip(x, y, keyboard_mode, tooltip);
|
| +}
|
| +
|
| gboolean WidgetGtk::CallScroll(GtkWidget* widget, GdkEventScroll* event) {
|
| WidgetGtk* widget_gtk = GetViewForNative(widget);
|
| if (!widget_gtk)
|
|
|