| Index: cc/trees/layer_tree_host_impl.cc
|
| diff --git a/cc/trees/layer_tree_host_impl.cc b/cc/trees/layer_tree_host_impl.cc
|
| index 94b8bfa1cfac7e9daaa5cef94a4e41954d7a8880..6771558334ed8cc369f72564c62ad963f7bf15e7 100644
|
| --- a/cc/trees/layer_tree_host_impl.cc
|
| +++ b/cc/trees/layer_tree_host_impl.cc
|
| @@ -1345,6 +1345,8 @@ void LayerTreeHostImpl::SetExternalDrawConstraints(
|
| const gfx::Transform& transform,
|
| const gfx::Rect& viewport,
|
| const gfx::Rect& clip,
|
| + const gfx::Rect& external_tiling_rect,
|
| + const gfx::Transform& external_tiling_transform,
|
| bool resourceless_software_draw) {
|
| if (external_transform_ != transform || external_viewport_ != viewport ||
|
| resourceless_software_draw_ != resourceless_software_draw) {
|
| @@ -1355,6 +1357,11 @@ void LayerTreeHostImpl::SetExternalDrawConstraints(
|
| external_viewport_ = viewport;
|
| external_clip_ = clip;
|
| resourceless_software_draw_ = resourceless_software_draw;
|
| +
|
| + if (!resourceless_software_draw_) {
|
| + external_tiling_rect_ = external_tiling_rect;
|
| + external_tiling_transform_ = external_tiling_transform;
|
| + }
|
| }
|
|
|
| void LayerTreeHostImpl::SetNeedsRedrawRect(const gfx::Rect& damage_rect) {
|
| @@ -2166,6 +2173,18 @@ gfx::Size LayerTreeHostImpl::DrawViewportSize() const {
|
| return DeviceViewport().size();
|
| }
|
|
|
| +gfx::Rect LayerTreeHostImpl::ExternalTilingRect() const {
|
| + gfx::Rect empty;
|
| + if (empty == external_tiling_rect_)
|
| + return gfx::Rect(DrawViewportSize());
|
| +
|
| + return external_tiling_rect_;
|
| +}
|
| +
|
| +const gfx::Transform& LayerTreeHostImpl::ExternalTilingTransform() const {
|
| + return external_tiling_transform_;
|
| +}
|
| +
|
| gfx::Rect LayerTreeHostImpl::DeviceViewport() const {
|
| if (external_viewport_.IsEmpty())
|
| return gfx::Rect(device_viewport_size_);
|
|
|