Commit a2261062 authored by Xianzhu Wang's avatar Xianzhu Wang Committed by Commit Bot

[PE] Invalidate ChildClippingMaskLayer on resize in all paths

Bug: 849991
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I3aee27a853c880ac5f20aca6b9a19b32bcd97d39
Reviewed-on: https://chromium-review.googlesource.com/1091292Reviewed-by: default avatarPhilip Rogers <pdr@chromium.org>
Commit-Queue: Xianzhu Wang <wangxianzhu@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565415}
parent 3faf932e
<!DOCTYPE html>
<div id="container" style="width: 200px; height: 400px; border-radius: 80px; overflow: auto; will-change: transform">
<div style="height: 1000px; background: blue"></div>
</div>
<!DOCTYPE html>
<div id="container" style="width: 200px; height: 200px; border-radius: 80px; overflow: auto; will-change: transform">
<div style="height: 1000px; background: blue"></div>
</div>
<script src="../../../resources/run-after-layout-and-paint.js"></script>
<script>
runAfterLayoutAndPaint(function() {
container.style.height = '400px';
}, true);
</script>
...@@ -1619,6 +1619,7 @@ void CompositedLayerMapping::UpdateScrollingLayerGeometry( ...@@ -1619,6 +1619,7 @@ void CompositedLayerMapping::UpdateScrollingLayerGeometry(
child_clipping_mask_layer_->SetSize(scrolling_layer_->Size()); child_clipping_mask_layer_->SetSize(scrolling_layer_->Size());
child_clipping_mask_layer_->SetOffsetFromLayoutObject( child_clipping_mask_layer_->SetOffsetFromLayoutObject(
ToIntSize(overflow_clip_rect.Location())); ToIntSize(overflow_clip_rect.Location()));
child_clipping_mask_layer_->SetNeedsDisplay();
} }
bool overflow_clip_rect_offset_changed = bool overflow_clip_rect_offset_changed =
...@@ -1687,6 +1688,7 @@ void CompositedLayerMapping::UpdateChildClippingMaskLayerGeometry() { ...@@ -1687,6 +1688,7 @@ void CompositedLayerMapping::UpdateChildClippingMaskLayerGeometry() {
child_clipping_mask_layer_->SetSize(graphics_layer_->Size()); child_clipping_mask_layer_->SetSize(graphics_layer_->Size());
child_clipping_mask_layer_->SetOffsetFromLayoutObject( child_clipping_mask_layer_->SetOffsetFromLayoutObject(
ToIntSize(padding_box.Location())); ToIntSize(padding_box.Location()));
child_clipping_mask_layer_->SetNeedsDisplay();
// NOTE: also some stuff happening in updateChildContainmentLayerGeometry(). // NOTE: also some stuff happening in updateChildContainmentLayerGeometry().
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment