Index: content/browser/renderer_host/render_widget_host_view_gtk.cc |
diff --git a/content/browser/renderer_host/render_widget_host_view_gtk.cc b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
index 1fe5d4c3e54070707a1b091f05efc165ce15b2f1..9c05bca69e176e9abf7d9349c8192c587a3fb51b 100644 |
--- a/content/browser/renderer_host/render_widget_host_view_gtk.cc |
+++ b/content/browser/renderer_host/render_widget_host_view_gtk.cc |
@@ -683,17 +683,18 @@ RenderWidgetHost* RenderWidgetHostViewGtk::GetRenderWidgetHost() const { |
} |
void RenderWidgetHostViewGtk::WasShown() { |
- if (!is_hidden_) |
+ if (!host_ || !is_hidden_) |
return; |
if (web_contents_switch_paint_time_.is_null()) |
web_contents_switch_paint_time_ = base::TimeTicks::Now(); |
is_hidden_ = false; |
+ |
host_->WasShown(); |
} |
void RenderWidgetHostViewGtk::WasHidden() { |
- if (is_hidden_) |
+ if (!host_ || is_hidden_) |
return; |
// If we receive any more paint messages while we are hidden, we want to |
@@ -792,10 +793,12 @@ bool RenderWidgetHostViewGtk::IsSurfaceAvailableForCopy() const { |
void RenderWidgetHostViewGtk::Show() { |
gtk_widget_show(view_.get()); |
+ WasShown(); |
} |
void RenderWidgetHostViewGtk::Hide() { |
gtk_widget_hide(view_.get()); |
+ WasHidden(); |
} |
bool RenderWidgetHostViewGtk::IsShowing() { |