From 472398196d9109be16d13f3af4e8c423ce45d2e3 Mon Sep 17 00:00:00 2001 From: leviw Date: Mon, 14 Dec 2015 22:20:14 -0800 Subject: Implement Paint Containment Paint containment acts as a containing block for all objects, including fixed. It also clips them. It's also a formatting context and a stacking context. The approach in this patch differs from the spec in one very notable way: it does not mess with the computed style of the overflow property. This is a conscious decision I hope to work with Tab to address. Paint Containment description from spec: https://drafts.csswg.org/css-containment/#containment-paint Intent to implement: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/9W80Kw-z3ss BUG=561713 Review URL: https://codereview.chromium.org/1490063002 Cr-Commit-Position: refs/heads/master@{#365178} --- ...-containment-as-formatting-context-expected.txt | 1 + .../paint-containment-as-formatting-context.html | 24 ++++++++++++++++++++++ ...ontainment-with-absolute-position-expected.html | 10 +++++++++ .../paint-containment-with-absolute-position.html | 23 +++++++++++++++++++++ ...paint-containment-with-box-shadow-expected.html | 10 +++++++++ .../paint-containment-with-box-shadow.html | 16 +++++++++++++++ ...t-containment-with-fixed-position-expected.html | 10 +++++++++ .../paint-containment-with-fixed-position.html | 23 +++++++++++++++++++++ ...nment-with-transformed-descendant-expected.html | 10 +++++++++ ...nt-containment-with-transformed-descendant.html | 22 ++++++++++++++++++++ 10 files changed, 149 insertions(+) create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context-expected.txt create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position-expected.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow-expected.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position-expected.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant-expected.html create mode 100644 third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant.html (limited to 'third_party/WebKit/LayoutTests/fast') diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context-expected.txt b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context-expected.txt new file mode 100644 index 0000000..7ef22e9 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context-expected.txt @@ -0,0 +1 @@ +PASS diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context.html new file mode 100644 index 0000000..128a79b --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-as-formatting-context.html @@ -0,0 +1,24 @@ + + + +
+
+ + \ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position-expected.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position-expected.html new file mode 100644 index 0000000..b880446 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position-expected.html @@ -0,0 +1,10 @@ + + + +
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position.html new file mode 100644 index 0000000..bac8d56 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-absolute-position.html @@ -0,0 +1,23 @@ + + + +
+
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow-expected.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow-expected.html new file mode 100644 index 0000000..b880446 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow-expected.html @@ -0,0 +1,10 @@ + + + +
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow.html new file mode 100644 index 0000000..ffa0f31 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-box-shadow.html @@ -0,0 +1,16 @@ + + + +
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position-expected.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position-expected.html new file mode 100644 index 0000000..b880446 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position-expected.html @@ -0,0 +1,10 @@ + + + +
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position.html new file mode 100644 index 0000000..f028d8c --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-fixed-position.html @@ -0,0 +1,23 @@ + + + +
+
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant-expected.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant-expected.html new file mode 100644 index 0000000..b880446 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant-expected.html @@ -0,0 +1,10 @@ + + + +
\ No newline at end of file diff --git a/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant.html b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant.html new file mode 100644 index 0000000..d11d1821 --- /dev/null +++ b/third_party/WebKit/LayoutTests/fast/css/containment/paint-containment-with-transformed-descendant.html @@ -0,0 +1,22 @@ + + + +
+
\ No newline at end of file -- cgit v1.1