| Index: content/browser/renderer_host/render_widget_host_view_aura.cc
|
| diff --git a/content/browser/renderer_host/render_widget_host_view_aura.cc b/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| index 2b1704f20e6cf04234a310e52fd88995f7652ef5..75c3a4e7e84ea5bc6c2284ed3c26b5614fd57fd2 100644
|
| --- a/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| +++ b/content/browser/renderer_host/render_widget_host_view_aura.cc
|
| @@ -453,6 +453,7 @@ RenderWidgetHostViewAura::RenderWidgetHostViewAura(RenderWidgetHost* host,
|
| has_snapped_to_boundary_(false),
|
| touch_editing_client_(NULL),
|
| is_guest_view_hack_(is_guest_view_hack),
|
| + begin_frame_observer_proxy_(new BeginFrameObserverProxy(this)),
|
| weak_ptr_factory_(this) {
|
| if (!is_guest_view_hack_)
|
| host_->SetView(this);
|
| @@ -482,6 +483,8 @@ bool RenderWidgetHostViewAura::OnMessageReceived(
|
| // RenderWidgetHostViewAndroid should also be moved at the same time.
|
| IPC_MESSAGE_HANDLER(ViewHostMsg_TextInputStateChanged,
|
| OnTextInputStateChanged)
|
| + IPC_MESSAGE_HANDLER(ViewHostMsg_SetNeedsBeginFrames,
|
| + OnSetNeedsBeginFrames)
|
| IPC_MESSAGE_UNHANDLED(handled = false)
|
| IPC_END_MESSAGE_MAP()
|
| return handled;
|
| @@ -711,6 +714,15 @@ ui::TextInputClient* RenderWidgetHostViewAura::GetTextInputClient() {
|
| return this;
|
| }
|
|
|
| +void RenderWidgetHostViewAura::OnSetNeedsBeginFrames(bool needs_begin_frames) {
|
| + begin_frame_observer_proxy_->SetNeedsBeginFrames(needs_begin_frames);
|
| +}
|
| +
|
| +void RenderWidgetHostViewAura::SendBeginFrame(const cc::BeginFrameArgs& args) {
|
| + delegated_frame_host_->UpdateVSyncParameters(args.frame_time, args.interval);
|
| + host_->Send(new ViewMsg_BeginFrame(host_->GetRoutingID(), args));
|
| +}
|
| +
|
| void RenderWidgetHostViewAura::SetKeyboardFocus() {
|
| #if defined(OS_WIN)
|
| if (CanFocus()) {
|
| @@ -2578,6 +2590,7 @@ void RenderWidgetHostViewAura::AddedToRootWindow() {
|
| #endif
|
|
|
| delegated_frame_host_->SetCompositor(window_->GetHost()->compositor());
|
| + begin_frame_observer_proxy_->SetCompositor(window_->GetHost()->compositor());
|
| }
|
|
|
| void RenderWidgetHostViewAura::RemovingFromRootWindow() {
|
| @@ -2590,6 +2603,7 @@ void RenderWidgetHostViewAura::RemovingFromRootWindow() {
|
|
|
| window_->GetHost()->RemoveObserver(this);
|
| delegated_frame_host_->ResetCompositor();
|
| + begin_frame_observer_proxy_->ResetCompositor();
|
|
|
| #if defined(OS_WIN)
|
| // Update the legacy window's parent temporarily to the desktop window. It
|
|
|