Index: content/browser/renderer_host/render_widget_host_impl.h |
diff --git a/content/browser/renderer_host/render_widget_host_impl.h b/content/browser/renderer_host/render_widget_host_impl.h |
index a0c0e3109c98d948eb7bcd2840c3165eb1ca9508..fad138cd84d910dfb561cfc29647bcf7195ed545 100644 |
--- a/content/browser/renderer_host/render_widget_host_impl.h |
+++ b/content/browser/renderer_host/render_widget_host_impl.h |
@@ -31,6 +31,7 @@ |
#include "content/browser/renderer_host/input/render_widget_host_latency_tracker.h" |
#include "content/browser/renderer_host/input/synthetic_gesture.h" |
#include "content/browser/renderer_host/input/touch_emulator_client.h" |
+#include "content/browser/renderer_host/render_widget_host_delegate.h" |
#include "content/browser/renderer_host/render_widget_host_view_base.h" |
#include "content/common/input/input_event_ack_state.h" |
#include "content/common/input/synthetic_gesture_packet.h" |
@@ -83,7 +84,6 @@ namespace content { |
class BrowserAccessibilityManager; |
class InputRouter; |
class MockRenderWidgetHost; |
-class RenderWidgetHostDelegate; |
class RenderWidgetHostOwnerDelegate; |
class SyntheticGestureController; |
class TimeoutMonitor; |
@@ -287,7 +287,9 @@ class CONTENT_EXPORT RenderWidgetHostImpl : public RenderWidgetHost, |
// Starts a hang monitor timeout. If there's already a hang monitor timeout |
// the new one will only fire if it has a shorter delay than the time |
// left on the existing timeouts. |
- void StartHangMonitorTimeout(base::TimeDelta delay); |
+ void StartHangMonitorTimeout( |
+ base::TimeDelta delay, |
+ RenderWidgetHostDelegate::RendererUnresponsiveType hang_monitor_reason); |
// Stops all existing hang monitor timeouts and assumes the renderer is |
// responsive. |
@@ -812,6 +814,10 @@ class CONTENT_EXPORT RenderWidgetHostImpl : public RenderWidgetHost, |
// This value indicates how long to wait before we consider a renderer hung. |
base::TimeDelta hung_renderer_delay_; |
+ // Stores the reason the hang_monitor_timeout_ has been started. Used to |
+ // report histograms if the renderer is hung. |
+ RenderWidgetHostDelegate::RendererUnresponsiveType hang_monitor_reason_; |
+ |
// This value indicates how long to wait for a new compositor frame from a |
// renderer process before clearing any previously displayed content. |
base::TimeDelta new_content_rendering_delay_; |