adds compositor resize lock client implementation
This commit is contained in:
parent
5ef668de64
commit
76d46ce509
2 changed files with 23 additions and 29 deletions
|
@ -831,31 +831,25 @@ bool OffScreenRenderWidgetHostView::DelegatedFrameCanCreateResizeLock() const {
|
||||||
return !render_widget_host_->auto_resize_enabled();
|
return !render_widget_host_->auto_resize_enabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
std::unique_ptr<content::ResizeLock>
|
std::unique_ptr<content::CompositorResizeLock>
|
||||||
OffScreenRenderWidgetHostView::DelegatedFrameHostCreateResizeLock(
|
OffScreenRenderWidgetHostView::DelegatedFrameHostCreateResizeLock() {
|
||||||
bool defer_compositor_lock) {
|
HoldResize();
|
||||||
return std::unique_ptr<content::ResizeLock>(new AtomResizeLock(
|
const gfx::Size& desired_size = GetRootLayer()->bounds().size();
|
||||||
this,
|
return base::MakeUnique<content::CompositorResizeLock>(this, desired_size);
|
||||||
DelegatedFrameHostDesiredSizeInDIP(),
|
|
||||||
defer_compositor_lock));
|
|
||||||
}
|
|
||||||
|
|
||||||
void OffScreenRenderWidgetHostView::DelegatedFrameHostResizeLockWasReleased() {
|
|
||||||
return render_widget_host_->WasResized();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
OffScreenRenderWidgetHostView::DelegatedFrameHostSendReclaimCompositorResources(
|
OffScreenRenderWidgetHostView::OnBeginFrame(const cc::BeginFrameArgs& args) {
|
||||||
int output_surface_id,
|
|
||||||
bool is_swap_ack,
|
|
||||||
const cc::ReturnedResourceArray& resources) {
|
|
||||||
render_widget_host_->Send(new ViewMsg_ReclaimCompositorResources(
|
|
||||||
render_widget_host_->GetRoutingID(), output_surface_id, is_swap_ack,
|
|
||||||
resources));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void OffScreenRenderWidgetHostView::SetBeginFrameSource(
|
std::unique_ptr<ui::CompositorLock>
|
||||||
cc::BeginFrameSource* source) {
|
OffScreenRenderWidgetHostView::GetCompositorLock(
|
||||||
|
ui::CompositorLockClient* client) {
|
||||||
|
return GetCompositor()->GetCompositorLock(client);
|
||||||
|
}
|
||||||
|
|
||||||
|
void OffScreenRenderWidgetHostView::CompositorResizeLockEnded() {
|
||||||
|
ReleaseResize();
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif // !defined(OS_MACOSX)
|
#endif // !defined(OS_MACOSX)
|
||||||
|
|
|
@ -68,6 +68,7 @@ class OffScreenRenderWidgetHostView
|
||||||
public ui::CompositorDelegate,
|
public ui::CompositorDelegate,
|
||||||
#if !defined(OS_MACOSX)
|
#if !defined(OS_MACOSX)
|
||||||
public content::DelegatedFrameHostClient,
|
public content::DelegatedFrameHostClient,
|
||||||
|
public content::CompositorResizeLockClient,
|
||||||
#endif
|
#endif
|
||||||
public NativeWindowObserver,
|
public NativeWindowObserver,
|
||||||
public OffscreenViewProxyObserver {
|
public OffscreenViewProxyObserver {
|
||||||
|
@ -172,15 +173,14 @@ class OffScreenRenderWidgetHostView
|
||||||
bool DelegatedFrameHostIsVisible(void) const override;
|
bool DelegatedFrameHostIsVisible(void) const override;
|
||||||
SkColor DelegatedFrameHostGetGutterColor(SkColor) const override;
|
SkColor DelegatedFrameHostGetGutterColor(SkColor) const override;
|
||||||
gfx::Size DelegatedFrameHostDesiredSizeInDIP(void) const override;
|
gfx::Size DelegatedFrameHostDesiredSizeInDIP(void) const override;
|
||||||
bool DelegatedFrameCanCreateResizeLock(void) const override;
|
bool DelegatedFrameCanCreateResizeLock() const override;
|
||||||
std::unique_ptr<content::ResizeLock> DelegatedFrameHostCreateResizeLock(
|
std::unique_ptr<content::CompositorResizeLock>
|
||||||
bool defer_compositor_lock) override;
|
DelegatedFrameHostCreateResizeLock() override;
|
||||||
void DelegatedFrameHostResizeLockWasReleased(void) override;
|
void OnBeginFrame(const cc::BeginFrameArgs& args) override;
|
||||||
void DelegatedFrameHostSendReclaimCompositorResources(
|
// CompositorResizeLockClient implementation.
|
||||||
int output_surface_id,
|
std::unique_ptr<ui::CompositorLock> GetCompositorLock(
|
||||||
bool is_swap_ack,
|
ui::CompositorLockClient* client) override;
|
||||||
const cc::ReturnedResourceArray& resources) override;
|
void CompositorResizeLockEnded() override;
|
||||||
void SetBeginFrameSource(cc::BeginFrameSource* source) override;
|
|
||||||
#endif // !defined(OS_MACOSX)
|
#endif // !defined(OS_MACOSX)
|
||||||
|
|
||||||
bool TransformPointToLocalCoordSpace(
|
bool TransformPointToLocalCoordSpace(
|
||||||
|
|
Loading…
Reference in a new issue