| Index: content/browser/renderer_host/render_widget_host_view_mac.mm
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_mac.mm b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| index b5444dc934af1ad077e899962eb9a4054d536c96..fa22008815a79b8747088da8dfaeb84b2c7bd229 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| +++ b/content/browser/renderer_host/render_widget_host_view_mac.mm
|
| @@ -415,6 +415,9 @@ void RenderWidgetHostViewMac::BrowserCompositorMacOnLostCompositorResources() {
|
|
|
| void RenderWidgetHostViewMac::BrowserCompositorMacSendBeginFrame(
|
| const cc::BeginFrameArgs& args) {
|
| + needs_flush_input_ = false;
|
| + render_widget_host_->FlushInput();
|
| + UpdateNeedsBeginFramesInternal();
|
| render_widget_host_->Send(
|
| new ViewMsg_BeginFrame(render_widget_host_->GetRoutingID(), args));
|
| }
|
| @@ -451,6 +454,8 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget,
|
| allow_pause_for_resize_or_repaint_(true),
|
| is_guest_view_hack_(is_guest_view_hack),
|
| fullscreen_parent_host_view_(nullptr),
|
| + needs_begin_frames_(false),
|
| + needs_flush_input_(false),
|
| weak_factory_(this) {
|
| // |cocoa_view_| owns us and we will be deleted when |cocoa_view_|
|
| // goes away. Since we autorelease it, our caller must put
|
| @@ -1188,7 +1193,18 @@ void RenderWidgetHostViewMac::ForwardMouseEvent(const WebMouseEvent& event) {
|
| }
|
|
|
| void RenderWidgetHostViewMac::SetNeedsBeginFrames(bool needs_begin_frames) {
|
| - browser_compositor_->SetNeedsBeginFrames(needs_begin_frames);
|
| + needs_begin_frames_ = needs_begin_frames;
|
| + UpdateNeedsBeginFramesInternal();
|
| +}
|
| +
|
| +void RenderWidgetHostViewMac::OnSetNeedsFlushInput() {
|
| + needs_flush_input_ = true;
|
| + UpdateNeedsBeginFramesInternal();
|
| +}
|
| +
|
| +void RenderWidgetHostViewMac::UpdateNeedsBeginFramesInternal() {
|
| + browser_compositor_->SetNeedsBeginFrames(needs_begin_frames_ ||
|
| + needs_flush_input_);
|
| }
|
|
|
| void RenderWidgetHostViewMac::KillSelf() {
|
|
|