New issue
Advanced search Search tips

Issue 795549 link

Starred by 3 users

Issue metadata

Status: Fixed
Owner:
Closed: May 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 2
Type: Bug

Blocked on:
issue 711736



Sign in to add a comment

Make filter a containing block for all descendants

Project Member Reported by chrishtr@chromium.org, Dec 16 2017

Issue description

The CSSWG resolved to make filter a containing block for all descendants,
with a quirk for the root element so that the filter applies to the root
document canvas. See:

https://github.com/w3c/fxtf-drafts/issues/11
 
Components: Blink>Compositing>Filters
Owner: vmp...@chromium.org

Comment 2 by vmp...@chromium.org, Jan 22 2018

Status: Started (was: Assigned)
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 23 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/b3427b9c9ef5a9d8b9cad168d4b46979384af90b

commit b3427b9c9ef5a9d8b9cad168d4b46979384af90b
Author: Vladimir Levin <vmpstr@chromium.org>
Date: Tue Jan 23 21:58:26 2018

[CI] Add Container/ContainingBlock distinction for fixed elements.

This patch extracts the container/containing block logic for absolute
positioned elements into a common function and adds similar
functionality for fixed positioned elements.

This is a step towards making filtered elements be containing blocks
for absolute and fixed positioned elements. This is required since
LayoutInlines may be filtered, thus becoming containers but not
containing blocks.

R=chrishtr@chromium.org, eae@chromium.org

Bug:  795549 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: I97cb3690f70abf7ebe871bf3644efb2179a9aeda
Reviewed-on: https://chromium-review.googlesource.com/879583
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Emil A Eklund <eae@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#531364}
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/layout/LayoutBlock.cpp
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/layout/LayoutObject.cpp
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/layout/LayoutObject.h
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/layout/LayoutObjectTest.cpp
[modify] https://crrev.com/b3427b9c9ef5a9d8b9cad168d4b46979384af90b/third_party/WebKit/Source/core/paint/PaintLayer.cpp

Comment 4 by vmp...@chromium.org, Jan 24 2018

Status: Assigned (was: Started)
This is on pause pending further resolution of https://github.com/w3c/fxtf-drafts/issues/11
Project Member

Comment 5 by bugdroid1@chromium.org, Jan 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/4e791ce5a0876376c2214d1a764dafc193b73a22

commit 4e791ce5a0876376c2214d1a764dafc193b73a22
Author: Vladimir Levin <vmpstr@chromium.org>
Date: Mon Jan 29 20:37:04 2018

[FilterContainer] Update the code to handle LayoutInline containers for fixed position.

This patch updates several places in the code that assume that
LayoutInlines can only contain absolute position elements (and not fixed).

This is a step towards making filtered elements be able to contain both
absolute and fixed positioned elements.

R=chrishtr@chromium.org

Bug:  795549 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Idf970e4343646574bd9c53d064f7578a2f09f3a3
Reviewed-on: https://chromium-review.googlesource.com/882187
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#532572}
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutBox.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutBoxModelObject.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutInline.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutInline.h
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutObject.h
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/layout/LayoutObjectTest.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/paint/PaintLayer.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.cpp
[modify] https://crrev.com/4e791ce5a0876376c2214d1a764dafc193b73a22/third_party/WebKit/Source/core/paint/PaintPropertyTreeBuilder.h

Project Member

Comment 6 by bugdroid1@chromium.org, May 5 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/0ed6098e00804f14107f170e2611807d5fc2c5b6

commit 0ed6098e00804f14107f170e2611807d5fc2c5b6
Author: Chris Harrelson <chrishtr@chromium.org>
Date: Sat May 05 20:14:35 2018

[FilterContainer] Add WPT for filter establishes containing block.

Based on CL 1033824

This patch adds three tests and test the following:
- Filtered block establishes a container for fixed and abs pos.
- Filtered inline establishes a container for fixed and abs pos.
- Filtered <html> does not establish a container for fixed pos.

Bug:  795549 
Tbr: vmpstr@chromium.org
Change-Id: I3fa13cc7f478503583a191bfb434cdab860862ef
Reviewed-on: https://chromium-review.googlesource.com/1045727
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Chris Harrelson <chrishtr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556343}
[modify] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/TestExpectations
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-block-is-container-ref.html
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-block-is-container.html
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-html-is-not-container-ref.html
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-html-is-not-container.html
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-inline-is-container-ref.html
[add] https://crrev.com/0ed6098e00804f14107f170e2611807d5fc2c5b6/third_party/WebKit/LayoutTests/external/wpt/css/css-filter/filtered-inline-is-container.html

Project Member

Comment 7 by bugdroid1@chromium.org, May 8 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c

commit ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c
Author: Chris Harrelson <chrishtr@chromium.org>
Date: Tue May 08 01:30:19 2018

[SP] Make filtered elements containers for out of flow positioned elements

Based on CL 881838.

This patch makes filtered elements establish a container for descendant
elements.

See I2S:
https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/RthtuwyYT_M

Bug:  795549 
Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_layout_ng;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2
Change-Id: Ic70e27d0a33fea1851bed9786fa243ecb41d1f55
Reviewed-on: https://chromium-review.googlesource.com/1045624
Commit-Queue: Chris Harrelson <chrishtr@chromium.org>
Reviewed-by: Morten Stenshorne <mstensho@chromium.org>
Cr-Commit-Position: refs/heads/master@{#556634}
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/FlagExpectations/enable-blink-features=LayoutNG
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/blur-filter-page-scroll-expected.png
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/blur-filter-page-scroll-expected.txt
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/blur-filter-page-scroll-parents-expected.png
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/blur-filter-page-scroll-parents-expected.txt
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/feoffset-region-zoom-expected.html
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/css3/filters/feoffset-region-zoom.html
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/flag-specific/enable-slimming-paint-v2/paint/invalidation/filters/filter-invalidation-positioned-child-expected.txt
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/paint/invalidation/filters/filter-invalidation-positioned-child-expected.txt
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/WebKit/LayoutTests/virtual/disable-spv175/paint/invalidation/filters/filter-invalidation-positioned-child-expected.txt
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_block.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_box_model_object.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_inline.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_object.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_state.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/layout_table_box_component.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/layout/ng/inline/ng_inline_item.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/paint/paint_property_tree_builder.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/paint/paint_property_tree_builder.h
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/paint/paint_property_tree_builder_test.cc
[modify] https://crrev.com/ecde43d3de87b7ad6b15be5677ad5f0ac53aad2c/third_party/blink/renderer/core/style/computed_style.h

Project Member

Comment 8 by bugdroid1@chromium.org, May 16 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/1505871b55572e4a4766869b64de14dce7d812d3

commit 1505871b55572e4a4766869b64de14dce7d812d3
Author: Chris Harrelson <chrishtr@chromium.org>
Date: Wed May 16 13:38:27 2018

Mark two filter-as-containing-block tests as passing.

Bug:795549

Change-Id: If7c933158b924800515cd09837ed16537adc8b45
Reviewed-on: https://chromium-review.googlesource.com/1060607
Commit-Queue: Stephen Chenney <schenney@chromium.org>
Reviewed-by: Stephen Chenney <schenney@chromium.org>
Cr-Commit-Position: refs/heads/master@{#559066}
[modify] https://crrev.com/1505871b55572e4a4766869b64de14dce7d812d3/third_party/WebKit/LayoutTests/TestExpectations

Status: Fixed (was: Assigned)

Sign in to add a comment