| Index: chrome/browser/ui/gtk/bubble/bubble_gtk.cc
|
| diff --git a/chrome/browser/ui/gtk/bubble/bubble_gtk.cc b/chrome/browser/ui/gtk/bubble/bubble_gtk.cc
|
| index 1035f42061c726cfdfa691580f03298bfae5a8fa..c4c35a6fc9beeb5a77e6b341d717978bc43493b1 100644
|
| --- a/chrome/browser/ui/gtk/bubble/bubble_gtk.cc
|
| +++ b/chrome/browser/ui/gtk/bubble/bubble_gtk.cc
|
| @@ -461,7 +461,7 @@ gboolean BubbleGtk::OnGtkAccelerator(GtkAccelGroup* group,
|
|
|
| gboolean BubbleGtk::OnExpose(GtkWidget* widget, GdkEventExpose* expose) {
|
| // TODO(erg): This whole method will need to be rewritten in cairo.
|
| - GdkDrawable* drawable = GDK_DRAWABLE(window_->window);
|
| + GdkDrawable* drawable = GDK_DRAWABLE(gtk_widget_get_window(window_));
|
| GdkGC* gc = gdk_gc_new(drawable);
|
| gdk_gc_set_rgb_fg_color(gc, &kFrameColor);
|
|
|
| @@ -494,14 +494,15 @@ gboolean BubbleGtk::OnButtonPress(GtkWidget* widget,
|
| // check that it falls within our bounds, since we've grabbed the pointer and
|
| // some events that actually occurred in other windows will be reported with
|
| // respect to our window).
|
| - if (event->window == window_->window &&
|
| + GdkWindow* gdk_window = gtk_widget_get_window(window_);
|
| + if (event->window == gdk_window &&
|
| (mask_region_ && gdk_region_point_in(mask_region_, event->x, event->y))) {
|
| return FALSE; // Propagate.
|
| }
|
|
|
| // Our content widget got a click.
|
| - if (event->window != window_->window &&
|
| - gdk_window_get_toplevel(event->window) == window_->window) {
|
| + if (event->window != gdk_window &&
|
| + gdk_window_get_toplevel(event->window) == gdk_window) {
|
| return FALSE;
|
| }
|
|
|
|
|