Diff
Modified: trunk/LayoutTests/ChangeLog (266659 => 266660)
--- trunk/LayoutTests/ChangeLog 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/ChangeLog 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,3 +1,22 @@
+2020-09-05 Darin Adler <[email protected]>
+
+ CSS revert should serialize as "revert", not "Revert"
+ https://bugs.webkit.org/show_bug.cgi?id=216187
+
+ Reviewed by Anders Carlsson.
+
+ * editing/spelling/spelling-dots-position-expected.html: Remove some unneeded style text.
+ Caught my eye because it uses "background-position: initial".
+
+ * fast/css/background-position-serialize-expected.txt: Updated for a progression.
+ We now correctly omit "background-position: initial initial; background-repeat: initial initial;".
+
+ * platform/gtk/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt: Removed.
+ * platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt: Removed.
+ * platform/wpe/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt: Removed.
+ These were only needed because the failure strings depended on the exact set of attributes.
+ But the test passes now.
+
2020-09-05 Commit Queue <[email protected]>
Unreviewed, reverting r266614 and r266657.
Modified: trunk/LayoutTests/editing/spelling/spelling-dots-position-expected.html (266659 => 266660)
--- trunk/LayoutTests/editing/spelling/spelling-dots-position-expected.html 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/editing/spelling/spelling-dots-position-expected.html 2020-09-05 15:45:27 UTC (rev 266660)
@@ -10,9 +10,9 @@
</head>
<body>
<div>There should be no misspelling dots visible below (because they're covered up by a div)</div>
-<div contenteditable="" id="root" class="editing">wafewerewdfea <span id="test"></span><div style="background-color: black; width: 1px; height: 150px; display: inline-block; background-position: initial initial; background-repeat: initial initial;"></div></div>
+<div contenteditable="" id="root" class="editing">wafewerewdfea <span id="test"></span><div style="background-color: black; width: 1px; height: 150px; display: inline-block"></div></div>
<script>
runEditingTest();
-</script><div style="background-color: black; position: absolute; left: 8px; top: 179.9726px; width: 237px; height: 4.7689200000000005px; background-position: initial initial; background-repeat: initial initial;"></div>
+</script><div style="background-color: black; position: absolute; left: 8px; top: 179.9726px; width: 237px; height: 4.76892px"></div>
</body>
</html>
Modified: trunk/LayoutTests/fast/css/background-position-serialize-expected.txt (266659 => 266660)
--- trunk/LayoutTests/fast/css/background-position-serialize-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/fast/css/background-position-serialize-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -72,4 +72,4 @@
t.setAttribute('style', 'background: url(about:blank) 80% 80%;');
t.style.backgroundPositionY = '50px'
style.cssText =
-background-image: url("about:blank"); background-position: 80% 50px; background-repeat: initial initial;
+background-image: url("about:blank"); background-position: 80% 50px;
Modified: trunk/LayoutTests/imported/w3c/ChangeLog (266659 => 266660)
--- trunk/LayoutTests/imported/w3c/ChangeLog 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/imported/w3c/ChangeLog 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,5 +1,18 @@
2020-09-05 Darin Adler <[email protected]>
+ CSS revert should serialize as "revert", not "Revert"
+ https://bugs.webkit.org/show_bug.cgi?id=216187
+
+ Reviewed by Anders Carlsson.
+
+ * web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid-expected.txt: Expect
+ one additional test to pass instead of fail.
+
+ * web-platform-tests/css/css-values/unset-value-storage-expected.txt: Expect pass instead of fail.
+ * web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt: Ditto.
+
+2020-09-05 Darin Adler <[email protected]>
+
Implement serialization of CSSPropertyGap
https://bugs.webkit.org/show_bug.cgi?id=216210
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid-expected.txt (266659 => 266660)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-color-adjust/parsing/color-scheme-valid-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -15,7 +15,7 @@
PASS e.style['color-scheme'] = "inherit" should set the property value
PASS e.style['color-scheme'] = "initial" should set the property value
PASS e.style['color-scheme'] = "unset" should set the property value
-FAIL e.style['color-scheme'] = "revert" should set the property value assert_equals: serialization should be canonical expected "revert" but got "Revert"
+PASS e.style['color-scheme'] = "revert" should set the property value
PASS e.style['color-scheme'] = "only" should set the property value
FAIL e.style['color-scheme'] = "only only" should set the property value assert_not_equals: property should be set got disallowed value ""
PASS e.style['color-scheme'] = "only light dark" should set the property value
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/unset-value-storage-expected.txt (266659 => 266660)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/unset-value-storage-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-values/unset-value-storage-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,3 +1,3 @@
-FAIL Storage of "unset" value assert_equals: border is expected to be "unset" expected "unset" but got "unset unset unset"
+PASS Storage of "unset" value
Modified: trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt (266659 => 266660)
--- trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,9 +1,9 @@
PASS Style attribute should create CSS declaration block based on its content
-FAIL Changes to style attribute should reflect on CSS declaration block assert_equals: CSS declaration block after removing the style attribute expected "" but got "z-index: 21;"
+PASS Changes to style attribute should reflect on CSS declaration block
PASS Changes to CSS declaration block should reflect on style attribute
PASS Changes to CSS declaration block should queue mutation record for style attribute
PASS Removing non-existing property or setting invalid value on CSS declaration block shouldn't queue mutation record
PASS Changes to CSS declaration block after a base URL change
-FAIL Expansion of all:unset and all:revert treated identically assert_equals: expected "color: unset; color-scheme: unset; display: unset; font-family: unset; font-feature-settings: unset; font-optical-sizing: unset; font-size: unset; font-stretch: unset; font-style: unset; font-synthesis: unset; font-variant-alternates: unset; font-variant-caps: unset; font-variant-east-asian: unset; font-variant-ligatures: unset; font-variant-numeric: unset; font-variant-position: unset; font-variation-settings: unset; font-weight: unset; text-rendering: unset; writing-mode: unset; zoom: unset; -webkit-font-kerning: unset; -webkit-font-smoothing: unset; -webkit-locale: unset; -webkit-text-orientation: unset; -webkit-text-size-adjust: unset; -webkit-text-zoom: unset; align-content: unset; align-items: unset; align-self: unset; alignment-baseline: unset; alt: unset; animation: unset unset unset unset unset unset unset unset; background-attachment: unset; background-blend-mode: unset
; background-clip: unset; background-color: unset; background-image: unset; background-origin: unset; background-size: unset; baseline-shift: unset; block-size: unset; border-block-end-color: unset; border-block-end-style: unset; border-block-end-width: unset; border-block-start-color: unset; border-block-start-style: unset; border-block-start-width: unset; border: unset unset unset; border-bottom-right-radius: unset; border-collapse: unset; border-image-outset: unset; border-image-repeat: unset; border-image-slice: unset; border-image-source: unset; border-image-width: unset; border-inline-end-color: unset; border-inline-end-style: unset; border-inline-end-width: unset; border-inline-start-color: unset; border-inline-start-style: unset; border-inline-start-width: unset; border-top-left-radius: unset; border-top-right-radius: unset; bottom: unset; box-shadow: unset; box-sizing: unset; break-after: unset; break-before: unset; break-inside: unset; buffered-rendering: unset; caption-si
de: unset; caret-color: unset; clear: unset; clip: unset; clip-path: unset; clip-rule: unset; color-interpolation: unset; color-interpolation-filters: unset; color-profile: unset; color-rendering: unset; column-count: unset; column-fill: unset; column-gap: unset; column-rule-color: unset; column-rule-style: unset; column-rule-width: unset; column-span: unset; column-width: unset; content: unset; counter-increment: unset; counter-reset: unset; cursor: unset; cx: unset; cy: unset; dominant-baseline: unset; empty-cells: unset; enable-background: unset; fill: unset; fill-opacity: unset; fill-rule: unset; filter: unset; flex: unset unset unset; flex-flow: unset unset; float: unset; flood-color: unset; flood-opacity: unset; font-display: unset; glyph-orientation-horizontal: unset; glyph-orientation-vertical: unset; grid-auto-columns: unset; grid-auto-flow: unset; grid-auto-rows: unset; grid-column-end: unset; grid-column-start: unset; grid-row-end: unset; grid-row-start: unset; grid-templ
ate-areas: unset; grid-template-columns: unset; grid-template-rows: unset; hanging-punctuation: unset; height: unset; image-orientation: unset; image-rendering: unset; inline-size: unset; isolation: unset; justify-content: unset; justify-items: unset; justify-self: unset; kerning: unset; left: unset; letter-spacing: unset; lighting-color: unset; line-break: unset; line-height: unset; list-style: unset unset unset; margin-block-end: unset; margin-block-start: unset; margin: unset; margin-inline-end: unset; margin-inline-start: unset; marker-end: unset; marker-mid: unset; marker-start: unset; mask: unset; mask-type: unset; max-block-size: unset; max-height: unset; max-inline-size: unset; max-width: unset; min-block-size: unset; min-height: unset; min-inline-size: unset; min-width: unset; mix-blend-mode: unset; object-fit: unset; object-position: unset; opacity: unset; order: unset; orphans: unset; outline: unset unset unset; outline-offset: unset; overflow-wrap: unset; overflow: unset
; padding-block-end: unset; padding-block-start: unset; padding: unset; padding-inline-end: unset; padding-inline-start: unset; page: unset; paint-order: unset; perspective: unset; perspective-origin: unset unset; pointer-events: unset; position: unset; quotes: unset; r: unset; resize: unset; right: unset; row-gap: unset; rx: unset; ry: unset; scroll-behavior: unset; scroll-padding: unset; scroll-snap-align: unset; scroll-snap-margin: unset; scroll-snap-type: unset; shape-image-threshold: unset; shape-margin: unset; shape-outside: unset; shape-rendering: unset; size: unset; speak-as: unset; src: unset; stop-color: unset; stop-opacity: unset; stroke: unset; stroke-color: unset; stroke-dasharray: unset; stroke-dashoffset: unset; stroke-linecap: unset; stroke-linejoin: unset; stroke-miterlimit: unset; stroke-opacity: unset; stroke-width: unset; tab-size: unset; table-layout: unset; text-align: unset; text-anchor: unset; text-decoration: unset; text-decoration-color: unset; text-decorat
ion-line: unset; text-decoration-skip: unset; text-decoration-style: unset; text-decoration-thickness: unset; text-indent: unset; text-overflow: unset; text-shadow: unset; text-transform: unset; text-underline-offset: unset; text-underline-position: unset; top: unset; touch-action: unset; transform: unset; transform-box: unset; transform-origin: unset unset unset; transform-style: unset; transition: unset unset unset unset; unicode-range: unset; vector-effect: unset; vertical-align: unset; visibility: unset; white-space: unset; widows: unset; width: unset; will-change: unset; word-break: unset; word-spacing: unset; word-wrap: unset; x: unset; y: unset; z-index: unset; -apple-color-filter: unset; -apple-pay-button-style: unset; -apple-pay-button-type: unset; -apple-trailing-word: unset; -internal-text-autosizing-status: unset; -webkit-appearance: unset; -webkit-aspect-ratio: unset; -webkit-backdrop-filter: unset; -webkit-backface-visibility: unset; -webkit-background-clip: unset; -we
bkit-background-composite: unset; -webkit-background-origin: unset; -webkit-background-size: unset; -webkit-border-fit: unset; border-spacing: unset; -webkit-border-image: unset; -webkit-box-align: unset; -webkit-box-decoration-break: unset; -webkit-box-direction: unset; -webkit-box-flex: unset; -webkit-box-flex-group: unset; -webkit-box-lines: unset; -webkit-box-ordinal-group: unset; -webkit-box-orient: unset; -webkit-box-pack: unset; -webkit-box-reflect: unset; -webkit-box-shadow: unset; -webkit-column-axis: unset; -webkit-column-progression: unset; -webkit-cursor-visibility: unset; -webkit-font-size-delta: unset; -webkit-hyphenate-character: unset; -webkit-hyphenate-limit-after: unset; -webkit-hyphenate-limit-before: unset; -webkit-hyphenate-limit-lines: unset; -webkit-hyphens: unset; -webkit-initial-letter: unset; -webkit-line-align: unset; -webkit-line-box-contain: unset; -webkit-line-clamp: unset; -webkit-line-grid: unset; -webkit-line-snap: unset; -webkit-margin-after-collaps
e: unset; -webkit-margin-before-collapse: unset; -webkit-margin-bottom-collapse: unset; -webkit-margin-top-collapse: unset; -webkit-marquee-direction: unset; -webkit-marquee-increment: unset; -webkit-marquee-repetition: unset; -webkit-marquee-speed: unset; -webkit-marquee-style: unset; -webkit-mask-box-image: unset; -webkit-mask-box-image-outset: unset; -webkit-mask-box-image-repeat: unset; -webkit-mask-box-image-slice: unset; -webkit-mask-box-image-source: unset; -webkit-mask-box-image-width: unset; -webkit-mask: unset unset unset unset / unset unset unset unset unset; -webkit-mask-composite: unset; -webkit-mask-size: unset; -webkit-mask-source-type: unset; -webkit-nbsp-mode: unset; -webkit-print-color-adjust: unset; -webkit-rtl-ordering: unset; -webkit-ruby-position: unset; -webkit-text-combine: unset; -webkit-text-decorations-in-effect: unset; -webkit-text-emphasis-color: unset; -webkit-text-emphasis-position: unset; -webkit-text-emphasis-style: unset; -webkit-text-fill-color: un
set; -webkit-text-security: unset; -webkit-text-stroke-color: unset; -webkit-text-stroke-width: unset; -webkit-transform-style: unset; -webkit-user-drag: unset; -webkit-user-modify: unset; -webkit-user-select: unset; border-bottom-left-radius: 1px; background-position: unset unset; background-repeat: unset unset;" but got "color: Revert; color-scheme: Revert; display: Revert; font-family: Revert; font-feature-settings: Revert; font-optical-sizing: Revert; font-size: Revert; font-stretch: Revert; font-style: Revert; font-synthesis: Revert; font-variant-alternates: Revert; font-variant-caps: Revert; font-variant-east-asian: Revert; font-variant-ligatures: Revert; font-variant-numeric: Revert; font-variant-position: Revert; font-variation-settings: Revert; font-weight: Revert; text-rendering: Revert; writing-mode: Revert; zoom: Revert; -webkit-font-kerning: Revert; -webkit-font-smoothing: Revert; -webkit-locale: Revert; -webkit-text-orientation: Revert; -webkit-text-size-adju
st: Revert; -webkit-text-zoom: Revert; align-content: Revert; align-items: Revert; align-self: Revert; alignment-baseline: Revert; alt: Revert; animation: Revert Revert Revert Revert Revert Revert Revert Revert; background-attachment: Revert; background-blend-mode: Revert; background-clip: Revert; background-color: Revert; background-image: Revert; background-origin: Revert; background-size: Revert; baseline-shift: Revert; block-size: Revert; border-block-end-color: Revert; border-block-end-style: Revert; border-block-end-width: Revert; border-block-start-color: Revert; border-block-start-style: Revert; border-block-start-width: Revert; border: Revert Revert Revert; border-bottom-right-radius: Revert; border-collapse: Revert; border-image-outset: Revert; border-image-repeat: Revert; border-image-slice: Revert; border-image-source: Revert; border-image-width: Revert; border-inline-end-color: Revert; border-inline-end-style: Revert; border-inline-end-width: Revert; border-inline-start
-color: Revert; border-inline-start-style: Revert; border-inline-start-width: Revert; border-top-left-radius: Revert; border-top-right-radius: Revert; bottom: Revert; box-shadow: Revert; box-sizing: Revert; break-after: Revert; break-before: Revert; break-inside: Revert; buffered-rendering: Revert; caption-side: Revert; caret-color: Revert; clear: Revert; clip: Revert; clip-path: Revert; clip-rule: Revert; color-interpolation: Revert; color-interpolation-filters: Revert; color-profile: Revert; color-rendering: Revert; column-count: Revert; column-fill: Revert; column-gap: Revert; column-rule-color: Revert; column-rule-style: Revert; column-rule-width: Revert; column-span: Revert; column-width: Revert; content: Revert; counter-increment: Revert; counter-reset: Revert; cursor: Revert; cx: Revert; cy: Revert; dominant-baseline: Revert; empty-cells: Revert; enable-background: Revert; fill: Revert; fill-opacity: Revert; fill-rule: Revert; filter: Revert; flex: Revert Revert Revert; flex-
flow: Revert Revert; float: Revert; flood-color: Revert; flood-opacity: Revert; font-display: Revert; glyph-orientation-horizontal: Revert; glyph-orientation-vertical: Revert; grid-auto-columns: Revert; grid-auto-flow: Revert; grid-auto-rows: Revert; grid-column-end: Revert; grid-column-start: Revert; grid-row-end: Revert; grid-row-start: Revert; grid-template-areas: Revert; grid-template-columns: Revert; grid-template-rows: Revert; hanging-punctuation: Revert; height: Revert; image-orientation: Revert; image-rendering: Revert; inline-size: Revert; isolation: Revert; justify-content: Revert; justify-items: Revert; justify-self: Revert; kerning: Revert; left: Revert; letter-spacing: Revert; lighting-color: Revert; line-break: Revert; line-height: Revert; list-style: Revert Revert Revert; margin-block-end: Revert; margin-block-start: Revert; margin: Revert; margin-inline-end: Revert; margin-inline-start: Revert; marker-end: Revert; marker-mid: Revert; marker-start: Revert; mask: Rever
t; mask-type: Revert; max-block-size: Revert; max-height: Revert; max-inline-size: Revert; max-width: Revert; min-block-size: Revert; min-height: Revert; min-inline-size: Revert; min-width: Revert; mix-blend-mode: Revert; object-fit: Revert; object-position: Revert; opacity: Revert; order: Revert; orphans: Revert; outline: Revert Revert Revert; outline-offset: Revert; overflow-wrap: Revert; overflow: Revert; padding-block-end: Revert; padding-block-start: Revert; padding: Revert; padding-inline-end: Revert; padding-inline-start: Revert; page: Revert; paint-order: Revert; perspective: Revert; perspective-origin: Revert Revert; pointer-events: Revert; position: Revert; quotes: Revert; r: Revert; resize: Revert; right: Revert; row-gap: Revert; rx: Revert; ry: Revert; scroll-behavior: Revert; scroll-padding: Revert; scroll-snap-align: Revert; scroll-snap-margin: Revert; scroll-snap-type: Revert; shape-image-threshold: Revert; shape-margin: Revert; shape-outside: Revert; shape-rendering:
Revert; size: Revert; speak-as: Revert; src: Revert; stop-color: Revert; stop-opacity: Revert; stroke: Revert; stroke-color: Revert; stroke-dasharray: Revert; stroke-dashoffset: Revert; stroke-linecap: Revert; stroke-linejoin: Revert; stroke-miterlimit: Revert; stroke-opacity: Revert; stroke-width: Revert; tab-size: Revert; table-layout: Revert; text-align: Revert; text-anchor: Revert; text-decoration: Revert; text-decoration-color: Revert; text-decoration-line: Revert; text-decoration-skip: Revert; text-decoration-style: Revert; text-decoration-thickness: Revert; text-indent: Revert; text-overflow: Revert; text-shadow: Revert; text-transform: Revert; text-underline-offset: Revert; text-underline-position: Revert; top: Revert; touch-action: Revert; transform: Revert; transform-box: Revert; transform-origin: Revert Revert Revert; transform-style: Revert; transition: Revert Revert Revert Revert; unicode-range: Revert; vector-effect: Revert; vertical-align: Revert; visibility: Revert;
white-space: Revert; widows: Revert; width: Revert; will-change: Revert; word-break: Revert; word-spacing: Revert; word-wrap: Revert; x: Revert; y: Revert; z-index: Revert; -apple-color-filter: Revert; -apple-pay-button-style: Revert; -apple-pay-button-type: Revert; -apple-trailing-word: Revert; -internal-text-autosizing-status: Revert; -webkit-appearance: Revert; -webkit-aspect-ratio: Revert; -webkit-backdrop-filter: Revert; -webkit-backface-visibility: Revert; -webkit-background-clip: Revert; -webkit-background-composite: Revert; -webkit-background-origin: Revert; -webkit-background-size: Revert; -webkit-border-fit: Revert; border-spacing: Revert; -webkit-border-image: Revert; -webkit-box-align: Revert; -webkit-box-decoration-break: Revert; -webkit-box-direction: Revert; -webkit-box-flex: Revert; -webkit-box-flex-group: Revert; -webkit-box-lines: Revert; -webkit-box-ordinal-group: Revert; -webkit-box-orient: Revert; -webkit-box-pack: Revert; -webkit-box-reflect: Revert; -webkit-b
ox-shadow: Revert; -webkit-column-axis: Revert; -webkit-column-progression: Revert; -webkit-cursor-visibility: Revert; -webkit-font-size-delta: Revert; -webkit-hyphenate-character: Revert; -webkit-hyphenate-limit-after: Revert; -webkit-hyphenate-limit-before: Revert; -webkit-hyphenate-limit-lines: Revert; -webkit-hyphens: Revert; -webkit-initial-letter: Revert; -webkit-line-align: Revert; -webkit-line-box-contain: Revert; -webkit-line-clamp: Revert; -webkit-line-grid: Revert; -webkit-line-snap: Revert; -webkit-margin-after-collapse: Revert; -webkit-margin-before-collapse: Revert; -webkit-margin-bottom-collapse: Revert; -webkit-margin-top-collapse: Revert; -webkit-marquee-direction: Revert; -webkit-marquee-increment: Revert; -webkit-marquee-repetition: Revert; -webkit-marquee-speed: Revert; -webkit-marquee-style: Revert; -webkit-mask-box-image: Revert; -webkit-mask-box-image-outset: Revert; -webkit-mask-box-image-repeat: Revert; -webkit-mask-box-image-slice: Revert; -webkit-mask-box-
image-source: Revert; -webkit-mask-box-image-width: Revert; -webkit-mask: Revert Revert Revert Revert / Revert Revert Revert Revert Revert; -webkit-mask-composite: Revert; -webkit-mask-size: Revert; -webkit-mask-source-type: Revert; -webkit-nbsp-mode: Revert; -webkit-print-color-adjust: Revert; -webkit-rtl-ordering: Revert; -webkit-ruby-position: Revert; -webkit-text-combine: Revert; -webkit-text-decorations-in-effect: Revert; -webkit-text-emphasis-color: Revert; -webkit-text-emphasis-position: Revert; -webkit-text-emphasis-style: Revert; -webkit-text-fill-color: Revert; -webkit-text-security: Revert; -webkit-text-stroke-color: Revert; -webkit-text-stroke-width: Revert; -webkit-transform-style: Revert; -webkit-user-drag: Revert; -webkit-user-modify: Revert; -webkit-user-select: Revert; border-bottom-left-radius: 1px; background-position: Revert Revert; background-repeat: Revert Revert;"
+PASS Expansion of all:unset and all:revert treated identically
Deleted: trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt (266659 => 266660)
--- trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/platform/gtk/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,9 +0,0 @@
-
-PASS Style attribute should create CSS declaration block based on its content
-FAIL Changes to style attribute should reflect on CSS declaration block assert_equals: CSS declaration block after removing the style attribute expected "" but got "z-index: 21;"
-PASS Changes to CSS declaration block should reflect on style attribute
-PASS Changes to CSS declaration block should queue mutation record for style attribute
-PASS Removing non-existing property or setting invalid value on CSS declaration block shouldn't queue mutation record
-PASS Changes to CSS declaration block after a base URL change
-FAIL Expansion of all:unset and all:revert treated identically assert_equals: expected "color: unset; color-scheme: unset; display: unset; font-family: unset; font-feature-settings: unset; font-optical-sizing: unset; font-size: unset; font-stretch: unset; font-style: unset; font-synthesis: unset; font-variant-alternates: unset; font-variant-caps: unset; font-variant-east-asian: unset; font-variant-ligatures: unset; font-variant-numeric: unset; font-variant-position: unset; font-variation-settings: unset; font-weight: unset; text-rendering: unset; writing-mode: unset; zoom: unset; -webkit-font-kerning: unset; -webkit-font-smoothing: unset; -webkit-locale: unset; -webkit-text-orientation: unset; -webkit-text-zoom: unset; align-content: unset; align-items: unset; align-self: unset; alignment-baseline: unset; alt: unset; animation: unset unset unset unset unset unset unset unset; background-attachment: unset; background-blend-mode: unset; background-clip: unset; background-color: u
nset; background-image: unset; background-origin: unset; background-size: unset; baseline-shift: unset; block-size: unset; border-block-end-color: unset; border-block-end-style: unset; border-block-end-width: unset; border-block-start-color: unset; border-block-start-style: unset; border-block-start-width: unset; border: unset unset unset; border-bottom-right-radius: unset; border-collapse: unset; border-image-outset: unset; border-image-repeat: unset; border-image-slice: unset; border-image-source: unset; border-image-width: unset; border-inline-end-color: unset; border-inline-end-style: unset; border-inline-end-width: unset; border-inline-start-color: unset; border-inline-start-style: unset; border-inline-start-width: unset; border-top-left-radius: unset; border-top-right-radius: unset; bottom: unset; box-shadow: unset; box-sizing: unset; break-after: unset; break-before: unset; break-inside: unset; buffered-rendering: unset; caption-side: unset; caret-color: unset; clear: unset;
clip: unset; clip-path: unset; clip-rule: unset; color-interpolation: unset; color-interpolation-filters: unset; color-profile: unset; color-rendering: unset; column-count: unset; column-fill: unset; column-gap: unset; column-rule-color: unset; column-rule-style: unset; column-rule-width: unset; column-span: unset; column-width: unset; content: unset; counter-increment: unset; counter-reset: unset; cursor: unset; cx: unset; cy: unset; dominant-baseline: unset; empty-cells: unset; enable-background: unset; fill: unset; fill-opacity: unset; fill-rule: unset; filter: unset; flex: unset unset unset; flex-flow: unset unset; float: unset; flood-color: unset; flood-opacity: unset; font-display: unset; glyph-orientation-horizontal: unset; glyph-orientation-vertical: unset; grid-auto-columns: unset; grid-auto-flow: unset; grid-auto-rows: unset; grid-column-end: unset; grid-column-start: unset; grid-row-end: unset; grid-row-start: unset; grid-template-areas: unset; grid-template-columns: unse
t; grid-template-rows: unset; hanging-punctuation: unset; height: unset; image-orientation: unset; image-rendering: unset; inline-size: unset; isolation: unset; justify-content: unset; justify-items: unset; justify-self: unset; kerning: unset; left: unset; letter-spacing: unset; lighting-color: unset; line-break: unset; line-height: unset; list-style: unset unset unset; margin-block-end: unset; margin-block-start: unset; margin: unset; margin-inline-end: unset; margin-inline-start: unset; marker-end: unset; marker-mid: unset; marker-start: unset; mask: unset; mask-type: unset; max-block-size: unset; max-height: unset; max-inline-size: unset; max-width: unset; min-block-size: unset; min-height: unset; min-inline-size: unset; min-width: unset; mix-blend-mode: unset; object-fit: unset; object-position: unset; opacity: unset; order: unset; orphans: unset; outline: unset unset unset; outline-offset: unset; overflow-wrap: unset; overflow: unset; padding-block-end: unset; padding-block-sta
rt: unset; padding: unset; padding-inline-end: unset; padding-inline-start: unset; page: unset; paint-order: unset; perspective: unset; perspective-origin: unset unset; pointer-events: unset; position: unset; quotes: unset; r: unset; resize: unset; right: unset; row-gap: unset; rx: unset; ry: unset; scroll-behavior: unset; shape-image-threshold: unset; shape-margin: unset; shape-outside: unset; shape-rendering: unset; size: unset; speak-as: unset; src: unset; stop-color: unset; stop-opacity: unset; stroke: unset; stroke-color: unset; stroke-dasharray: unset; stroke-dashoffset: unset; stroke-linecap: unset; stroke-linejoin: unset; stroke-miterlimit: unset; stroke-opacity: unset; stroke-width: unset; tab-size: unset; table-layout: unset; text-align: unset; text-anchor: unset; text-decoration: unset; text-decoration-color: unset; text-decoration-line: unset; text-decoration-skip: unset; text-decoration-style: unset; text-decoration-thickness: unset; text-indent: unset; text-overflow: u
nset; text-shadow: unset; text-transform: unset; text-underline-offset: unset; text-underline-position: unset; top: unset; touch-action: unset; transform: unset; transform-box: unset; transform-origin: unset unset unset; transform-style: unset; transition: unset unset unset unset; unicode-range: unset; vector-effect: unset; vertical-align: unset; visibility: unset; white-space: unset; widows: unset; width: unset; will-change: unset; word-break: unset; word-spacing: unset; word-wrap: unset; x: unset; y: unset; z-index: unset; -apple-color-filter: unset; -webkit-appearance: unset; -webkit-aspect-ratio: unset; -webkit-backdrop-filter: unset; -webkit-backface-visibility: unset; -webkit-background-clip: unset; -webkit-background-composite: unset; -webkit-background-origin: unset; -webkit-background-size: unset; -webkit-border-fit: unset; border-spacing: unset; -webkit-border-image: unset; -webkit-box-align: unset; -webkit-box-decoration-break: unset; -webkit-box-direction: unset; -webkit
-box-flex: unset; -webkit-box-flex-group: unset; -webkit-box-lines: unset; -webkit-box-ordinal-group: unset; -webkit-box-orient: unset; -webkit-box-pack: unset; -webkit-box-reflect: unset; -webkit-box-shadow: unset; -webkit-column-axis: unset; -webkit-column-progression: unset; -webkit-cursor-visibility: unset; -webkit-font-size-delta: unset; -webkit-hyphenate-character: unset; -webkit-hyphenate-limit-after: unset; -webkit-hyphenate-limit-before: unset; -webkit-hyphenate-limit-lines: unset; -webkit-hyphens: unset; -webkit-initial-letter: unset; -webkit-line-align: unset; -webkit-line-box-contain: unset; -webkit-line-clamp: unset; -webkit-line-grid: unset; -webkit-line-snap: unset; -webkit-margin-after-collapse: unset; -webkit-margin-before-collapse: unset; -webkit-margin-bottom-collapse: unset; -webkit-margin-top-collapse: unset; -webkit-marquee-direction: unset; -webkit-marquee-increment: unset; -webkit-marquee-repetition: unset; -webkit-marquee-speed: unset; -webkit-marquee-style:
unset; -webkit-mask-box-image: unset; -webkit-mask-box-image-outset: unset; -webkit-mask-box-image-repeat: unset; -webkit-mask-box-image-slice: unset; -webkit-mask-box-image-source: unset; -webkit-mask-box-image-width: unset; -webkit-mask: unset unset unset unset / unset unset unset unset unset; -webkit-mask-composite: unset; -webkit-mask-size: unset; -webkit-mask-source-type: unset; -webkit-nbsp-mode: unset; -webkit-print-color-adjust: unset; -webkit-rtl-ordering: unset; -webkit-ruby-position: unset; -webkit-tap-highlight-color: unset; -webkit-text-combine: unset; -webkit-text-decorations-in-effect: unset; -webkit-text-emphasis-color: unset; -webkit-text-emphasis-position: unset; -webkit-text-emphasis-style: unset; -webkit-text-fill-color: unset; -webkit-text-security: unset; -webkit-text-stroke-color: unset; -webkit-text-stroke-width: unset; -webkit-transform-style: unset; -webkit-user-drag: unset; -webkit-user-modify: unset; -webkit-user-select: unset; border-bottom-left-radius:
1px; background-position: unset unset; background-repeat: unset unset;" but got "color: Revert; color-scheme: Revert; display: Revert; font-family: Revert; font-feature-settings: Revert; font-optical-sizing: Revert; font-size: Revert; font-stretch: Revert; font-style: Revert; font-synthesis: Revert; font-variant-alternates: Revert; font-variant-caps: Revert; font-variant-east-asian: Revert; font-variant-ligatures: Revert; font-variant-numeric: Revert; font-variant-position: Revert; font-variation-settings: Revert; font-weight: Revert; text-rendering: Revert; writing-mode: Revert; zoom: Revert; -webkit-font-kerning: Revert; -webkit-font-smoothing: Revert; -webkit-locale: Revert; -webkit-text-orientation: Revert; -webkit-text-zoom: Revert; align-content: Revert; align-items: Revert; align-self: Revert; alignment-baseline: Revert; alt: Revert; animation: Revert Revert Revert Revert Revert Revert Revert Revert; background-attachment: Revert; background-blend-mode: Revert; bac
kground-clip: Revert; background-color: Revert; background-image: Revert; background-origin: Revert; background-size: Revert; baseline-shift: Revert; block-size: Revert; border-block-end-color: Revert; border-block-end-style: Revert; border-block-end-width: Revert; border-block-start-color: Revert; border-block-start-style: Revert; border-block-start-width: Revert; border: Revert Revert Revert; border-bottom-right-radius: Revert; border-collapse: Revert; border-image-outset: Revert; border-image-repeat: Revert; border-image-slice: Revert; border-image-source: Revert; border-image-width: Revert; border-inline-end-color: Revert; border-inline-end-style: Revert; border-inline-end-width: Revert; border-inline-start-color: Revert; border-inline-start-style: Revert; border-inline-start-width: Revert; border-top-left-radius: Revert; border-top-right-radius: Revert; bottom: Revert; box-shadow: Revert; box-sizing: Revert; break-after: Revert; break-before: Revert; break-inside: Revert; buffe
red-rendering: Revert; caption-side: Revert; caret-color: Revert; clear: Revert; clip: Revert; clip-path: Revert; clip-rule: Revert; color-interpolation: Revert; color-interpolation-filters: Revert; color-profile: Revert; color-rendering: Revert; column-count: Revert; column-fill: Revert; column-gap: Revert; column-rule-color: Revert; column-rule-style: Revert; column-rule-width: Revert; column-span: Revert; column-width: Revert; content: Revert; counter-increment: Revert; counter-reset: Revert; cursor: Revert; cx: Revert; cy: Revert; dominant-baseline: Revert; empty-cells: Revert; enable-background: Revert; fill: Revert; fill-opacity: Revert; fill-rule: Revert; filter: Revert; flex: Revert Revert Revert; flex-flow: Revert Revert; float: Revert; flood-color: Revert; flood-opacity: Revert; font-display: Revert; glyph-orientation-horizontal: Revert; glyph-orientation-vertical: Revert; grid-auto-columns: Revert; grid-auto-flow: Revert; grid-auto-rows: Revert; grid-column-end: Revert; g
rid-column-start: Revert; grid-row-end: Revert; grid-row-start: Revert; grid-template-areas: Revert; grid-template-columns: Revert; grid-template-rows: Revert; hanging-punctuation: Revert; height: Revert; image-orientation: Revert; image-rendering: Revert; inline-size: Revert; isolation: Revert; justify-content: Revert; justify-items: Revert; justify-self: Revert; kerning: Revert; left: Revert; letter-spacing: Revert; lighting-color: Revert; line-break: Revert; line-height: Revert; list-style: Revert Revert Revert; margin-block-end: Revert; margin-block-start: Revert; margin: Revert; margin-inline-end: Revert; margin-inline-start: Revert; marker-end: Revert; marker-mid: Revert; marker-start: Revert; mask: Revert; mask-type: Revert; max-block-size: Revert; max-height: Revert; max-inline-size: Revert; max-width: Revert; min-block-size: Revert; min-height: Revert; min-inline-size: Revert; min-width: Revert; mix-blend-mode: Revert; object-fit: Revert; object-position: Revert; opacity: R
evert; order: Revert; orphans: Revert; outline: Revert Revert Revert; outline-offset: Revert; overflow-wrap: Revert; overflow: Revert; padding-block-end: Revert; padding-block-start: Revert; padding: Revert; padding-inline-end: Revert; padding-inline-start: Revert; page: Revert; paint-order: Revert; perspective: Revert; perspective-origin: Revert Revert; pointer-events: Revert; position: Revert; quotes: Revert; r: Revert; resize: Revert; right: Revert; row-gap: Revert; rx: Revert; ry: Revert; scroll-behavior: Revert; shape-image-threshold: Revert; shape-margin: Revert; shape-outside: Revert; shape-rendering: Revert; size: Revert; speak-as: Revert; src: Revert; stop-color: Revert; stop-opacity: Revert; stroke: Revert; stroke-color: Revert; stroke-dasharray: Revert; stroke-dashoffset: Revert; stroke-linecap: Revert; stroke-linejoin: Revert; stroke-miterlimit: Revert; stroke-opacity: Revert; stroke-width: Revert; tab-size: Revert; table-layout: Revert; text-align: Revert; text-anchor:
Revert; text-decoration: Revert; text-decoration-color: Revert; text-decoration-line: Revert; text-decoration-skip: Revert; text-decoration-style: Revert; text-decoration-thickness: Revert; text-indent: Revert; text-overflow: Revert; text-shadow: Revert; text-transform: Revert; text-underline-offset: Revert; text-underline-position: Revert; top: Revert; touch-action: Revert; transform: Revert; transform-box: Revert; transform-origin: Revert Revert Revert; transform-style: Revert; transition: Revert Revert Revert Revert; unicode-range: Revert; vector-effect: Revert; vertical-align: Revert; visibility: Revert; white-space: Revert; widows: Revert; width: Revert; will-change: Revert; word-break: Revert; word-spacing: Revert; word-wrap: Revert; x: Revert; y: Revert; z-index: Revert; -apple-color-filter: Revert; -webkit-appearance: Revert; -webkit-aspect-ratio: Revert; -webkit-backdrop-filter: Revert; -webkit-backface-visibility: Revert; -webkit-background-clip: Revert; -webkit-background
-composite: Revert; -webkit-background-origin: Revert; -webkit-background-size: Revert; -webkit-border-fit: Revert; border-spacing: Revert; -webkit-border-image: Revert; -webkit-box-align: Revert; -webkit-box-decoration-break: Revert; -webkit-box-direction: Revert; -webkit-box-flex: Revert; -webkit-box-flex-group: Revert; -webkit-box-lines: Revert; -webkit-box-ordinal-group: Revert; -webkit-box-orient: Revert; -webkit-box-pack: Revert; -webkit-box-reflect: Revert; -webkit-box-shadow: Revert; -webkit-column-axis: Revert; -webkit-column-progression: Revert; -webkit-cursor-visibility: Revert; -webkit-font-size-delta: Revert; -webkit-hyphenate-character: Revert; -webkit-hyphenate-limit-after: Revert; -webkit-hyphenate-limit-before: Revert; -webkit-hyphenate-limit-lines: Revert; -webkit-hyphens: Revert; -webkit-initial-letter: Revert; -webkit-line-align: Revert; -webkit-line-box-contain: Revert; -webkit-line-clamp: Revert; -webkit-line-grid: Revert; -webkit-line-snap: Revert; -webkit-mar
gin-after-collapse: Revert; -webkit-margin-before-collapse: Revert; -webkit-margin-bottom-collapse: Revert; -webkit-margin-top-collapse: Revert; -webkit-marquee-direction: Revert; -webkit-marquee-increment: Revert; -webkit-marquee-repetition: Revert; -webkit-marquee-speed: Revert; -webkit-marquee-style: Revert; -webkit-mask-box-image: Revert; -webkit-mask-box-image-outset: Revert; -webkit-mask-box-image-repeat: Revert; -webkit-mask-box-image-slice: Revert; -webkit-mask-box-image-source: Revert; -webkit-mask-box-image-width: Revert; -webkit-mask: Revert Revert Revert Revert / Revert Revert Revert Revert Revert; -webkit-mask-composite: Revert; -webkit-mask-size: Revert; -webkit-mask-source-type: Revert; -webkit-nbsp-mode: Revert; -webkit-print-color-adjust: Revert; -webkit-rtl-ordering: Revert; -webkit-ruby-position: Revert; -webkit-tap-highlight-color: Revert; -webkit-text-combine: Revert; -webkit-text-decorations-in-effect: Revert; -webkit-text-emphasis-color: Revert; -webkit-text-e
mphasis-position: Revert; -webkit-text-emphasis-style: Revert; -webkit-text-fill-color: Revert; -webkit-text-security: Revert; -webkit-text-stroke-color: Revert; -webkit-text-stroke-width: Revert; -webkit-transform-style: Revert; -webkit-user-drag: Revert; -webkit-user-modify: Revert; -webkit-user-select: Revert; border-bottom-left-radius: 1px; background-position: Revert Revert; background-repeat: Revert Revert;"
-
Deleted: trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt (266659 => 266660)
--- trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/platform/ios-wk2/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,9 +0,0 @@
-
-PASS Style attribute should create CSS declaration block based on its content
-FAIL Changes to style attribute should reflect on CSS declaration block assert_equals: CSS declaration block after removing the style attribute expected "" but got "z-index: 21;"
-PASS Changes to CSS declaration block should reflect on style attribute
-PASS Changes to CSS declaration block should queue mutation record for style attribute
-PASS Removing non-existing property or setting invalid value on CSS declaration block shouldn't queue mutation record
-PASS Changes to CSS declaration block after a base URL change
-FAIL Expansion of all:unset and all:revert treated identically assert_equals: expected "color: unset; color-scheme: unset; display: unset; font-family: unset; font-feature-settings: unset; font-optical-sizing: unset; font-size: unset; font-stretch: unset; font-style: unset; font-synthesis: unset; font-variant-alternates: unset; font-variant-caps: unset; font-variant-east-asian: unset; font-variant-ligatures: unset; font-variant-numeric: unset; font-variant-position: unset; font-variation-settings: unset; font-weight: unset; text-rendering: unset; writing-mode: unset; zoom: unset; -webkit-font-kerning: unset; -webkit-font-smoothing: unset; -webkit-locale: unset; -webkit-text-orientation: unset; -webkit-text-size-adjust: unset; -webkit-text-zoom: unset; align-content: unset; align-items: unset; align-self: unset; alignment-baseline: unset; alt: unset; animation: unset unset unset unset unset unset unset unset; background-attachment: unset; background-blend-mode: unset; background
-clip: unset; background-color: unset; background-image: unset; background-origin: unset; background-size: unset; baseline-shift: unset; block-size: unset; border-block-end-color: unset; border-block-end-style: unset; border-block-end-width: unset; border-block-start-color: unset; border-block-start-style: unset; border-block-start-width: unset; border: unset unset unset; border-bottom-right-radius: unset; border-collapse: unset; border-image-outset: unset; border-image-repeat: unset; border-image-slice: unset; border-image-source: unset; border-image-width: unset; border-inline-end-color: unset; border-inline-end-style: unset; border-inline-end-width: unset; border-inline-start-color: unset; border-inline-start-style: unset; border-inline-start-width: unset; border-top-left-radius: unset; border-top-right-radius: unset; bottom: unset; box-shadow: unset; box-sizing: unset; break-after: unset; break-before: unset; break-inside: unset; buffered-rendering: unset; caption-side: unset; c
aret-color: unset; clear: unset; clip: unset; clip-path: unset; clip-rule: unset; color-interpolation: unset; color-interpolation-filters: unset; color-profile: unset; color-rendering: unset; column-count: unset; column-fill: unset; column-gap: unset; column-rule-color: unset; column-rule-style: unset; column-rule-width: unset; column-span: unset; column-width: unset; content: unset; counter-increment: unset; counter-reset: unset; cursor: unset; cx: unset; cy: unset; dominant-baseline: unset; empty-cells: unset; enable-background: unset; fill: unset; fill-opacity: unset; fill-rule: unset; filter: unset; flex: unset unset unset; flex-flow: unset unset; float: unset; flood-color: unset; flood-opacity: unset; font-display: unset; glyph-orientation-horizontal: unset; glyph-orientation-vertical: unset; grid-auto-columns: unset; grid-auto-flow: unset; grid-auto-rows: unset; grid-column-end: unset; grid-column-start: unset; grid-row-end: unset; grid-row-start: unset; grid-template-areas: u
nset; grid-template-columns: unset; grid-template-rows: unset; hanging-punctuation: unset; height: unset; image-orientation: unset; image-rendering: unset; inline-size: unset; isolation: unset; justify-content: unset; justify-items: unset; justify-self: unset; kerning: unset; left: unset; letter-spacing: unset; lighting-color: unset; line-break: unset; line-height: unset; list-style: unset unset unset; margin-block-end: unset; margin-block-start: unset; margin: unset; margin-inline-end: unset; margin-inline-start: unset; marker-end: unset; marker-mid: unset; marker-start: unset; mask: unset; mask-type: unset; max-block-size: unset; max-height: unset; max-inline-size: unset; max-width: unset; min-block-size: unset; min-height: unset; min-inline-size: unset; min-width: unset; mix-blend-mode: unset; object-fit: unset; object-position: unset; opacity: unset; order: unset; orphans: unset; outline: unset unset unset; outline-offset: unset; overflow-wrap: unset; overflow: unset; padding-bl
ock-end: unset; padding-block-start: unset; padding: unset; padding-inline-end: unset; padding-inline-start: unset; page: unset; paint-order: unset; perspective: unset; perspective-origin: unset unset; pointer-events: unset; position: unset; quotes: unset; r: unset; resize: unset; right: unset; row-gap: unset; rx: unset; ry: unset; scroll-behavior: unset; scroll-padding: unset; scroll-snap-align: unset; scroll-snap-margin: unset; scroll-snap-type: unset; shape-image-threshold: unset; shape-margin: unset; shape-outside: unset; shape-rendering: unset; size: unset; speak-as: unset; src: unset; stop-color: unset; stop-opacity: unset; stroke: unset; stroke-color: unset; stroke-dasharray: unset; stroke-dashoffset: unset; stroke-linecap: unset; stroke-linejoin: unset; stroke-miterlimit: unset; stroke-opacity: unset; stroke-width: unset; tab-size: unset; table-layout: unset; text-align: unset; text-anchor: unset; text-decoration: unset; text-decoration-color: unset; text-decoration-line: un
set; text-decoration-skip: unset; text-decoration-style: unset; text-decoration-thickness: unset; text-indent: unset; text-overflow: unset; text-shadow: unset; text-transform: unset; text-underline-offset: unset; text-underline-position: unset; top: unset; touch-action: unset; transform: unset; transform-box: unset; transform-origin: unset unset unset; transform-style: unset; transition: unset unset unset unset; unicode-range: unset; vector-effect: unset; vertical-align: unset; visibility: unset; white-space: unset; widows: unset; width: unset; will-change: unset; word-break: unset; word-spacing: unset; word-wrap: unset; x: unset; y: unset; z-index: unset; -apple-color-filter: unset; -apple-pay-button-style: unset; -apple-pay-button-type: unset; -apple-trailing-word: unset; -internal-text-autosizing-status: unset; -webkit-appearance: unset; -webkit-aspect-ratio: unset; -webkit-backdrop-filter: unset; -webkit-backface-visibility: unset; -webkit-background-clip: unset; -webkit-backgro
und-composite: unset; -webkit-background-origin: unset; -webkit-background-size: unset; -webkit-border-fit: unset; border-spacing: unset; -webkit-border-image: unset; -webkit-box-align: unset; -webkit-box-decoration-break: unset; -webkit-box-direction: unset; -webkit-box-flex: unset; -webkit-box-flex-group: unset; -webkit-box-lines: unset; -webkit-box-ordinal-group: unset; -webkit-box-orient: unset; -webkit-box-pack: unset; -webkit-box-reflect: unset; -webkit-box-shadow: unset; -webkit-column-axis: unset; -webkit-column-progression: unset; -webkit-cursor-visibility: unset; -webkit-font-size-delta: unset; -webkit-hyphenate-character: unset; -webkit-hyphenate-limit-after: unset; -webkit-hyphenate-limit-before: unset; -webkit-hyphenate-limit-lines: unset; -webkit-hyphens: unset; -webkit-initial-letter: unset; -webkit-line-align: unset; -webkit-line-box-contain: unset; -webkit-line-clamp: unset; -webkit-line-grid: unset; -webkit-line-snap: unset; -webkit-margin-after-collapse: unset; -w
ebkit-margin-before-collapse: unset; -webkit-margin-bottom-collapse: unset; -webkit-margin-top-collapse: unset; -webkit-marquee-direction: unset; -webkit-marquee-increment: unset; -webkit-marquee-repetition: unset; -webkit-marquee-speed: unset; -webkit-marquee-style: unset; -webkit-mask-box-image: unset; -webkit-mask-box-image-outset: unset; -webkit-mask-box-image-repeat: unset; -webkit-mask-box-image-slice: unset; -webkit-mask-box-image-source: unset; -webkit-mask-box-image-width: unset; -webkit-mask: unset unset unset unset / unset unset unset unset unset; -webkit-mask-composite: unset; -webkit-mask-size: unset; -webkit-mask-source-type: unset; -webkit-nbsp-mode: unset; -webkit-overflow-scrolling: unset; -webkit-print-color-adjust: unset; -webkit-rtl-ordering: unset; -webkit-ruby-position: unset; -webkit-text-combine: unset; -webkit-text-decorations-in-effect: unset; -webkit-text-emphasis-color: unset; -webkit-text-emphasis-position: unset; -webkit-text-emphasis-style: unset; -web
kit-text-fill-color: unset; -webkit-text-security: unset; -webkit-text-stroke-color: unset; -webkit-text-stroke-width: unset; -webkit-touch-callout: unset; -webkit-transform-style: unset; -webkit-user-drag: unset; -webkit-user-modify: unset; -webkit-user-select: unset; border-bottom-left-radius: 1px; background-position: unset unset; background-repeat: unset unset;" but got "color: Revert; color-scheme: Revert; display: Revert; font-family: Revert; font-feature-settings: Revert; font-optical-sizing: Revert; font-size: Revert; font-stretch: Revert; font-style: Revert; font-synthesis: Revert; font-variant-alternates: Revert; font-variant-caps: Revert; font-variant-east-asian: Revert; font-variant-ligatures: Revert; font-variant-numeric: Revert; font-variant-position: Revert; font-variation-settings: Revert; font-weight: Revert; text-rendering: Revert; writing-mode: Revert; zoom: Revert; -webkit-font-kerning: Revert; -webkit-font-smoothing: Revert; -webkit-locale: Revert; -we
bkit-text-orientation: Revert; -webkit-text-size-adjust: Revert; -webkit-text-zoom: Revert; align-content: Revert; align-items: Revert; align-self: Revert; alignment-baseline: Revert; alt: Revert; animation: Revert Revert Revert Revert Revert Revert Revert Revert; background-attachment: Revert; background-blend-mode: Revert; background-clip: Revert; background-color: Revert; background-image: Revert; background-origin: Revert; background-size: Revert; baseline-shift: Revert; block-size: Revert; border-block-end-color: Revert; border-block-end-style: Revert; border-block-end-width: Revert; border-block-start-color: Revert; border-block-start-style: Revert; border-block-start-width: Revert; border: Revert Revert Revert; border-bottom-right-radius: Revert; border-collapse: Revert; border-image-outset: Revert; border-image-repeat: Revert; border-image-slice: Revert; border-image-source: Revert; border-image-width: Revert; border-inline-end-color: Revert; border-inline-end-style: Revert;
border-inline-end-width: Revert; border-inline-start-color: Revert; border-inline-start-style: Revert; border-inline-start-width: Revert; border-top-left-radius: Revert; border-top-right-radius: Revert; bottom: Revert; box-shadow: Revert; box-sizing: Revert; break-after: Revert; break-before: Revert; break-inside: Revert; buffered-rendering: Revert; caption-side: Revert; caret-color: Revert; clear: Revert; clip: Revert; clip-path: Revert; clip-rule: Revert; color-interpolation: Revert; color-interpolation-filters: Revert; color-profile: Revert; color-rendering: Revert; column-count: Revert; column-fill: Revert; column-gap: Revert; column-rule-color: Revert; column-rule-style: Revert; column-rule-width: Revert; column-span: Revert; column-width: Revert; content: Revert; counter-increment: Revert; counter-reset: Revert; cursor: Revert; cx: Revert; cy: Revert; dominant-baseline: Revert; empty-cells: Revert; enable-background: Revert; fill: Revert; fill-opacity: Revert; fill-rule: Reve
rt; filter: Revert; flex: Revert Revert Revert; flex-flow: Revert Revert; float: Revert; flood-color: Revert; flood-opacity: Revert; font-display: Revert; glyph-orientation-horizontal: Revert; glyph-orientation-vertical: Revert; grid-auto-columns: Revert; grid-auto-flow: Revert; grid-auto-rows: Revert; grid-column-end: Revert; grid-column-start: Revert; grid-row-end: Revert; grid-row-start: Revert; grid-template-areas: Revert; grid-template-columns: Revert; grid-template-rows: Revert; hanging-punctuation: Revert; height: Revert; image-orientation: Revert; image-rendering: Revert; inline-size: Revert; isolation: Revert; justify-content: Revert; justify-items: Revert; justify-self: Revert; kerning: Revert; left: Revert; letter-spacing: Revert; lighting-color: Revert; line-break: Revert; line-height: Revert; list-style: Revert Revert Revert; margin-block-end: Revert; margin-block-start: Revert; margin: Revert; margin-inline-end: Revert; margin-inline-start: Revert; marker-end: Revert;
marker-mid: Revert; marker-start: Revert; mask: Revert; mask-type: Revert; max-block-size: Revert; max-height: Revert; max-inline-size: Revert; max-width: Revert; min-block-size: Revert; min-height: Revert; min-inline-size: Revert; min-width: Revert; mix-blend-mode: Revert; object-fit: Revert; object-position: Revert; opacity: Revert; order: Revert; orphans: Revert; outline: Revert Revert Revert; outline-offset: Revert; overflow-wrap: Revert; overflow: Revert; padding-block-end: Revert; padding-block-start: Revert; padding: Revert; padding-inline-end: Revert; padding-inline-start: Revert; page: Revert; paint-order: Revert; perspective: Revert; perspective-origin: Revert Revert; pointer-events: Revert; position: Revert; quotes: Revert; r: Revert; resize: Revert; right: Revert; row-gap: Revert; rx: Revert; ry: Revert; scroll-behavior: Revert; scroll-padding: Revert; scroll-snap-align: Revert; scroll-snap-margin: Revert; scroll-snap-type: Revert; shape-image-threshold: Revert; shape-ma
rgin: Revert; shape-outside: Revert; shape-rendering: Revert; size: Revert; speak-as: Revert; src: Revert; stop-color: Revert; stop-opacity: Revert; stroke: Revert; stroke-color: Revert; stroke-dasharray: Revert; stroke-dashoffset: Revert; stroke-linecap: Revert; stroke-linejoin: Revert; stroke-miterlimit: Revert; stroke-opacity: Revert; stroke-width: Revert; tab-size: Revert; table-layout: Revert; text-align: Revert; text-anchor: Revert; text-decoration: Revert; text-decoration-color: Revert; text-decoration-line: Revert; text-decoration-skip: Revert; text-decoration-style: Revert; text-decoration-thickness: Revert; text-indent: Revert; text-overflow: Revert; text-shadow: Revert; text-transform: Revert; text-underline-offset: Revert; text-underline-position: Revert; top: Revert; touch-action: Revert; transform: Revert; transform-box: Revert; transform-origin: Revert Revert Revert; transform-style: Revert; transition: Revert Revert Revert Revert; unicode-range: Revert; vector-effect
: Revert; vertical-align: Revert; visibility: Revert; white-space: Revert; widows: Revert; width: Revert; will-change: Revert; word-break: Revert; word-spacing: Revert; word-wrap: Revert; x: Revert; y: Revert; z-index: Revert; -apple-color-filter: Revert; -apple-pay-button-style: Revert; -apple-pay-button-type: Revert; -apple-trailing-word: Revert; -internal-text-autosizing-status: Revert; -webkit-appearance: Revert; -webkit-aspect-ratio: Revert; -webkit-backdrop-filter: Revert; -webkit-backface-visibility: Revert; -webkit-background-clip: Revert; -webkit-background-composite: Revert; -webkit-background-origin: Revert; -webkit-background-size: Revert; -webkit-border-fit: Revert; border-spacing: Revert; -webkit-border-image: Revert; -webkit-box-align: Revert; -webkit-box-decoration-break: Revert; -webkit-box-direction: Revert; -webkit-box-flex: Revert; -webkit-box-flex-group: Revert; -webkit-box-lines: Revert; -webkit-box-ordinal-group: Revert; -webkit-box-orient: Revert; -webkit-box
-pack: Revert; -webkit-box-reflect: Revert; -webkit-box-shadow: Revert; -webkit-column-axis: Revert; -webkit-column-progression: Revert; -webkit-cursor-visibility: Revert; -webkit-font-size-delta: Revert; -webkit-hyphenate-character: Revert; -webkit-hyphenate-limit-after: Revert; -webkit-hyphenate-limit-before: Revert; -webkit-hyphenate-limit-lines: Revert; -webkit-hyphens: Revert; -webkit-initial-letter: Revert; -webkit-line-align: Revert; -webkit-line-box-contain: Revert; -webkit-line-clamp: Revert; -webkit-line-grid: Revert; -webkit-line-snap: Revert; -webkit-margin-after-collapse: Revert; -webkit-margin-before-collapse: Revert; -webkit-margin-bottom-collapse: Revert; -webkit-margin-top-collapse: Revert; -webkit-marquee-direction: Revert; -webkit-marquee-increment: Revert; -webkit-marquee-repetition: Revert; -webkit-marquee-speed: Revert; -webkit-marquee-style: Revert; -webkit-mask-box-image: Revert; -webkit-mask-box-image-outset: Revert; -webkit-mask-box-image-repeat: Revert; -w
ebkit-mask-box-image-slice: Revert; -webkit-mask-box-image-source: Revert; -webkit-mask-box-image-width: Revert; -webkit-mask: Revert Revert Revert Revert / Revert Revert Revert Revert Revert; -webkit-mask-composite: Revert; -webkit-mask-size: Revert; -webkit-mask-source-type: Revert; -webkit-nbsp-mode: Revert; -webkit-overflow-scrolling: Revert; -webkit-print-color-adjust: Revert; -webkit-rtl-ordering: Revert; -webkit-ruby-position: Revert; -webkit-text-combine: Revert; -webkit-text-decorations-in-effect: Revert; -webkit-text-emphasis-color: Revert; -webkit-text-emphasis-position: Revert; -webkit-text-emphasis-style: Revert; -webkit-text-fill-color: Revert; -webkit-text-security: Revert; -webkit-text-stroke-color: Revert; -webkit-text-stroke-width: Revert; -webkit-touch-callout: Revert; -webkit-transform-style: Revert; -webkit-user-drag: Revert; -webkit-user-modify: Revert; -webkit-user-select: Revert; border-bottom-left-radius: 1px; background-position: Revert Revert; background-r
epeat: Revert Revert;"
-
Deleted: trunk/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt (266659 => 266660)
--- trunk/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/LayoutTests/platform/wpe/imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block-expected.txt 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,9 +0,0 @@
-
-PASS Style attribute should create CSS declaration block based on its content
-FAIL Changes to style attribute should reflect on CSS declaration block assert_equals: CSS declaration block after removing the style attribute expected "" but got "z-index: 21;"
-PASS Changes to CSS declaration block should reflect on style attribute
-PASS Changes to CSS declaration block should queue mutation record for style attribute
-PASS Removing non-existing property or setting invalid value on CSS declaration block shouldn't queue mutation record
-PASS Changes to CSS declaration block after a base URL change
-FAIL Expansion of all:unset and all:revert treated identically assert_equals: expected "color: unset; display: unset; font-family: unset; font-feature-settings: unset; font-optical-sizing: unset; font-size: unset; font-stretch: unset; font-style: unset; font-synthesis: unset; font-variant-alternates: unset; font-variant-caps: unset; font-variant-east-asian: unset; font-variant-ligatures: unset; font-variant-numeric: unset; font-variant-position: unset; font-variation-settings: unset; font-weight: unset; text-rendering: unset; writing-mode: unset; zoom: unset; -webkit-font-kerning: unset; -webkit-font-smoothing: unset; -webkit-locale: unset; -webkit-text-orientation: unset; -webkit-text-zoom: unset; align-content: unset; align-items: unset; align-self: unset; alignment-baseline: unset; alt: unset; animation: unset unset unset unset unset unset unset unset; background-attachment: unset; background-blend-mode: unset; background-clip: unset; background-color: unset; background-imag
e: unset; background-origin: unset; background-size: unset; baseline-shift: unset; block-size: unset; border-block-end-color: unset; border-block-end-style: unset; border-block-end-width: unset; border-block-start-color: unset; border-block-start-style: unset; border-block-start-width: unset; border: unset unset unset; border-bottom-right-radius: unset; border-collapse: unset; border-image-outset: unset; border-image-repeat: unset; border-image-slice: unset; border-image-source: unset; border-image-width: unset; border-inline-end-color: unset; border-inline-end-style: unset; border-inline-end-width: unset; border-inline-start-color: unset; border-inline-start-style: unset; border-inline-start-width: unset; border-top-left-radius: unset; border-top-right-radius: unset; bottom: unset; box-shadow: unset; box-sizing: unset; break-after: unset; break-before: unset; break-inside: unset; buffered-rendering: unset; caption-side: unset; caret-color: unset; clear: unset; clip: unset; clip-pat
h: unset; clip-rule: unset; color-interpolation: unset; color-interpolation-filters: unset; color-profile: unset; color-rendering: unset; column-count: unset; column-fill: unset; column-gap: unset; column-rule-color: unset; column-rule-style: unset; column-rule-width: unset; column-span: unset; column-width: unset; content: unset; counter-increment: unset; counter-reset: unset; cursor: unset; cx: unset; cy: unset; dominant-baseline: unset; empty-cells: unset; enable-background: unset; fill: unset; fill-opacity: unset; fill-rule: unset; filter: unset; flex: unset unset unset; flex-flow: unset unset; float: unset; flood-color: unset; flood-opacity: unset; font-display: unset; glyph-orientation-horizontal: unset; glyph-orientation-vertical: unset; grid-auto-columns: unset; grid-auto-flow: unset; grid-auto-rows: unset; grid-column-end: unset; grid-column-start: unset; grid-row-end: unset; grid-row-start: unset; grid-template-areas: unset; grid-template-columns: unset; grid-template-rows
: unset; hanging-punctuation: unset; height: unset; image-orientation: unset; image-rendering: unset; inline-size: unset; isolation: unset; justify-content: unset; justify-items: unset; justify-self: unset; kerning: unset; left: unset; letter-spacing: unset; lighting-color: unset; line-break: unset; line-height: unset; list-style: unset unset unset; margin-block-end: unset; margin-block-start: unset; margin: unset; margin-inline-end: unset; margin-inline-start: unset; marker-end: unset; marker-mid: unset; marker-start: unset; mask: unset; mask-type: unset; max-block-size: unset; max-height: unset; max-inline-size: unset; max-width: unset; min-block-size: unset; min-height: unset; min-inline-size: unset; min-width: unset; mix-blend-mode: unset; object-fit: unset; object-position: unset; opacity: unset; order: unset; orphans: unset; outline: unset unset unset; outline-offset: unset; overflow-wrap: unset; overflow: unset; padding-block-end: unset; padding-block-start: unset; padding: u
nset; padding-inline-end: unset; padding-inline-start: unset; page: unset; paint-order: unset; perspective: unset; perspective-origin: unset unset; pointer-events: unset; position: unset; quotes: unset; r: unset; resize: unset; right: unset; row-gap: unset; rx: unset; ry: unset; scroll-behavior: unset; shape-image-threshold: unset; shape-margin: unset; shape-outside: unset; shape-rendering: unset; size: unset; speak-as: unset; src: unset; stop-color: unset; stop-opacity: unset; stroke: unset; stroke-color: unset; stroke-dasharray: unset; stroke-dashoffset: unset; stroke-linecap: unset; stroke-linejoin: unset; stroke-miterlimit: unset; stroke-opacity: unset; stroke-width: unset; tab-size: unset; table-layout: unset; text-align: unset; text-anchor: unset; text-decoration: unset; text-decoration-color: unset; text-decoration-line: unset; text-decoration-skip: unset; text-decoration-style: unset; text-decoration-thickness: unset; text-indent: unset; text-overflow: unset; text-shadow: un
set; text-transform: unset; text-underline-offset: unset; text-underline-position: unset; top: unset; touch-action: unset; transform: unset; transform-box: unset; transform-origin: unset unset unset; transform-style: unset; transition: unset unset unset unset; unicode-range: unset; vector-effect: unset; vertical-align: unset; visibility: unset; white-space: unset; widows: unset; width: unset; will-change: unset; word-break: unset; word-spacing: unset; word-wrap: unset; x: unset; y: unset; z-index: unset; -apple-color-filter: unset; -webkit-appearance: unset; -webkit-aspect-ratio: unset; -webkit-backdrop-filter: unset; -webkit-backface-visibility: unset; -webkit-background-clip: unset; -webkit-background-composite: unset; -webkit-background-origin: unset; -webkit-background-size: unset; -webkit-border-fit: unset; border-spacing: unset; -webkit-border-image: unset; -webkit-box-align: unset; -webkit-box-decoration-break: unset; -webkit-box-direction: unset; -webkit-box-flex: unset; -we
bkit-box-flex-group: unset; -webkit-box-lines: unset; -webkit-box-ordinal-group: unset; -webkit-box-orient: unset; -webkit-box-pack: unset; -webkit-box-reflect: unset; -webkit-box-shadow: unset; -webkit-column-axis: unset; -webkit-column-progression: unset; -webkit-font-size-delta: unset; -webkit-hyphenate-character: unset; -webkit-hyphenate-limit-after: unset; -webkit-hyphenate-limit-before: unset; -webkit-hyphenate-limit-lines: unset; -webkit-hyphens: unset; -webkit-initial-letter: unset; -webkit-line-align: unset; -webkit-line-box-contain: unset; -webkit-line-clamp: unset; -webkit-line-grid: unset; -webkit-line-snap: unset; -webkit-margin-after-collapse: unset; -webkit-margin-before-collapse: unset; -webkit-margin-bottom-collapse: unset; -webkit-margin-top-collapse: unset; -webkit-marquee-direction: unset; -webkit-marquee-increment: unset; -webkit-marquee-repetition: unset; -webkit-marquee-speed: unset; -webkit-marquee-style: unset; -webkit-mask-box-image: unset; -webkit-mask-box
-image-outset: unset; -webkit-mask-box-image-repeat: unset; -webkit-mask-box-image-slice: unset; -webkit-mask-box-image-source: unset; -webkit-mask-box-image-width: unset; -webkit-mask: unset unset unset unset / unset unset unset unset unset; -webkit-mask-composite: unset; -webkit-mask-size: unset; -webkit-mask-source-type: unset; -webkit-nbsp-mode: unset; -webkit-print-color-adjust: unset; -webkit-rtl-ordering: unset; -webkit-ruby-position: unset; -webkit-tap-highlight-color: unset; -webkit-text-combine: unset; -webkit-text-decorations-in-effect: unset; -webkit-text-emphasis-color: unset; -webkit-text-emphasis-position: unset; -webkit-text-emphasis-style: unset; -webkit-text-fill-color: unset; -webkit-text-security: unset; -webkit-text-stroke-color: unset; -webkit-text-stroke-width: unset; -webkit-transform-style: unset; -webkit-user-drag: unset; -webkit-user-modify: unset; -webkit-user-select: unset; border-bottom-left-radius: 1px; background-position: unset unset; background-repe
at: unset unset;" but got "color: Revert; display: Revert; font-family: Revert; font-feature-settings: Revert; font-optical-sizing: Revert; font-size: Revert; font-stretch: Revert; font-style: Revert; font-synthesis: Revert; font-variant-alternates: Revert; font-variant-caps: Revert; font-variant-east-asian: Revert; font-variant-ligatures: Revert; font-variant-numeric: Revert; font-variant-position: Revert; font-variation-settings: Revert; font-weight: Revert; text-rendering: Revert; writing-mode: Revert; zoom: Revert; -webkit-font-kerning: Revert; -webkit-font-smoothing: Revert; -webkit-locale: Revert; -webkit-text-orientation: Revert; -webkit-text-zoom: Revert; align-content: Revert; align-items: Revert; align-self: Revert; alignment-baseline: Revert; alt: Revert; animation: Revert Revert Revert Revert Revert Revert Revert Revert; background-attachment: Revert; background-blend-mode: Revert; background-clip: Revert; background-color: Revert; background-image: Revert; bac
kground-origin: Revert; background-size: Revert; baseline-shift: Revert; block-size: Revert; border-block-end-color: Revert; border-block-end-style: Revert; border-block-end-width: Revert; border-block-start-color: Revert; border-block-start-style: Revert; border-block-start-width: Revert; border: Revert Revert Revert; border-bottom-right-radius: Revert; border-collapse: Revert; border-image-outset: Revert; border-image-repeat: Revert; border-image-slice: Revert; border-image-source: Revert; border-image-width: Revert; border-inline-end-color: Revert; border-inline-end-style: Revert; border-inline-end-width: Revert; border-inline-start-color: Revert; border-inline-start-style: Revert; border-inline-start-width: Revert; border-top-left-radius: Revert; border-top-right-radius: Revert; bottom: Revert; box-shadow: Revert; box-sizing: Revert; break-after: Revert; break-before: Revert; break-inside: Revert; buffered-rendering: Revert; caption-side: Revert; caret-color: Revert; clear: Reve
rt; clip: Revert; clip-path: Revert; clip-rule: Revert; color-interpolation: Revert; color-interpolation-filters: Revert; color-profile: Revert; color-rendering: Revert; column-count: Revert; column-fill: Revert; column-gap: Revert; column-rule-color: Revert; column-rule-style: Revert; column-rule-width: Revert; column-span: Revert; column-width: Revert; content: Revert; counter-increment: Revert; counter-reset: Revert; cursor: Revert; cx: Revert; cy: Revert; dominant-baseline: Revert; empty-cells: Revert; enable-background: Revert; fill: Revert; fill-opacity: Revert; fill-rule: Revert; filter: Revert; flex: Revert Revert Revert; flex-flow: Revert Revert; float: Revert; flood-color: Revert; flood-opacity: Revert; font-display: Revert; glyph-orientation-horizontal: Revert; glyph-orientation-vertical: Revert; grid-auto-columns: Revert; grid-auto-flow: Revert; grid-auto-rows: Revert; grid-column-end: Revert; grid-column-start: Revert; grid-row-end: Revert; grid-row-start: Revert; grid-
template-areas: Revert; grid-template-columns: Revert; grid-template-rows: Revert; hanging-punctuation: Revert; height: Revert; image-orientation: Revert; image-rendering: Revert; inline-size: Revert; isolation: Revert; justify-content: Revert; justify-items: Revert; justify-self: Revert; kerning: Revert; left: Revert; letter-spacing: Revert; lighting-color: Revert; line-break: Revert; line-height: Revert; list-style: Revert Revert Revert; margin-block-end: Revert; margin-block-start: Revert; margin: Revert; margin-inline-end: Revert; margin-inline-start: Revert; marker-end: Revert; marker-mid: Revert; marker-start: Revert; mask: Revert; mask-type: Revert; max-block-size: Revert; max-height: Revert; max-inline-size: Revert; max-width: Revert; min-block-size: Revert; min-height: Revert; min-inline-size: Revert; min-width: Revert; mix-blend-mode: Revert; object-fit: Revert; object-position: Revert; opacity: Revert; order: Revert; orphans: Revert; outline: Revert Revert Revert; outline
-offset: Revert; overflow-wrap: Revert; overflow: Revert; padding-block-end: Revert; padding-block-start: Revert; padding: Revert; padding-inline-end: Revert; padding-inline-start: Revert; page: Revert; paint-order: Revert; perspective: Revert; perspective-origin: Revert Revert; pointer-events: Revert; position: Revert; quotes: Revert; r: Revert; resize: Revert; right: Revert; row-gap: Revert; rx: Revert; ry: Revert; scroll-behavior: Revert; shape-image-threshold: Revert; shape-margin: Revert; shape-outside: Revert; shape-rendering: Revert; size: Revert; speak-as: Revert; src: Revert; stop-color: Revert; stop-opacity: Revert; stroke: Revert; stroke-color: Revert; stroke-dasharray: Revert; stroke-dashoffset: Revert; stroke-linecap: Revert; stroke-linejoin: Revert; stroke-miterlimit: Revert; stroke-opacity: Revert; stroke-width: Revert; tab-size: Revert; table-layout: Revert; text-align: Revert; text-anchor: Revert; text-decoration: Revert; text-decoration-color: Revert; text-decorati
on-line: Revert; text-decoration-skip: Revert; text-decoration-style: Revert; text-decoration-thickness: Revert; text-indent: Revert; text-overflow: Revert; text-shadow: Revert; text-transform: Revert; text-underline-offset: Revert; text-underline-position: Revert; top: Revert; touch-action: Revert; transform: Revert; transform-box: Revert; transform-origin: Revert Revert Revert; transform-style: Revert; transition: Revert Revert Revert Revert; unicode-range: Revert; vector-effect: Revert; vertical-align: Revert; visibility: Revert; white-space: Revert; widows: Revert; width: Revert; will-change: Revert; word-break: Revert; word-spacing: Revert; word-wrap: Revert; x: Revert; y: Revert; z-index: Revert; -apple-color-filter: Revert; -webkit-appearance: Revert; -webkit-aspect-ratio: Revert; -webkit-backdrop-filter: Revert; -webkit-backface-visibility: Revert; -webkit-background-clip: Revert; -webkit-background-composite: Revert; -webkit-background-origin: Revert; -webkit-background-siz
e: Revert; -webkit-border-fit: Revert; border-spacing: Revert; -webkit-border-image: Revert; -webkit-box-align: Revert; -webkit-box-decoration-break: Revert; -webkit-box-direction: Revert; -webkit-box-flex: Revert; -webkit-box-flex-group: Revert; -webkit-box-lines: Revert; -webkit-box-ordinal-group: Revert; -webkit-box-orient: Revert; -webkit-box-pack: Revert; -webkit-box-reflect: Revert; -webkit-box-shadow: Revert; -webkit-column-axis: Revert; -webkit-column-progression: Revert; -webkit-font-size-delta: Revert; -webkit-hyphenate-character: Revert; -webkit-hyphenate-limit-after: Revert; -webkit-hyphenate-limit-before: Revert; -webkit-hyphenate-limit-lines: Revert; -webkit-hyphens: Revert; -webkit-initial-letter: Revert; -webkit-line-align: Revert; -webkit-line-box-contain: Revert; -webkit-line-clamp: Revert; -webkit-line-grid: Revert; -webkit-line-snap: Revert; -webkit-margin-after-collapse: Revert; -webkit-margin-before-collapse: Revert; -webkit-margin-bottom-collapse: Revert; -web
kit-margin-top-collapse: Revert; -webkit-marquee-direction: Revert; -webkit-marquee-increment: Revert; -webkit-marquee-repetition: Revert; -webkit-marquee-speed: Revert; -webkit-marquee-style: Revert; -webkit-mask-box-image: Revert; -webkit-mask-box-image-outset: Revert; -webkit-mask-box-image-repeat: Revert; -webkit-mask-box-image-slice: Revert; -webkit-mask-box-image-source: Revert; -webkit-mask-box-image-width: Revert; -webkit-mask: Revert Revert Revert Revert / Revert Revert Revert Revert Revert; -webkit-mask-composite: Revert; -webkit-mask-size: Revert; -webkit-mask-source-type: Revert; -webkit-nbsp-mode: Revert; -webkit-print-color-adjust: Revert; -webkit-rtl-ordering: Revert; -webkit-ruby-position: Revert; -webkit-tap-highlight-color: Revert; -webkit-text-combine: Revert; -webkit-text-decorations-in-effect: Revert; -webkit-text-emphasis-color: Revert; -webkit-text-emphasis-position: Revert; -webkit-text-emphasis-style: Revert; -webkit-text-fill-color: Revert; -webkit-text-sec
urity: Revert; -webkit-text-stroke-color: Revert; -webkit-text-stroke-width: Revert; -webkit-transform-style: Revert; -webkit-user-drag: Revert; -webkit-user-modify: Revert; -webkit-user-select: Revert; border-bottom-left-radius: 1px; background-position: Revert Revert; background-repeat: Revert Revert;"
-
Modified: trunk/Source/WebCore/ChangeLog (266659 => 266660)
--- trunk/Source/WebCore/ChangeLog 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/Source/WebCore/ChangeLog 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1,5 +1,46 @@
2020-09-05 Darin Adler <[email protected]>
+ CSS revert should serialize as "revert", not "Revert"
+ https://bugs.webkit.org/show_bug.cgi?id=216187
+
+ Reviewed by Anders Carlsson.
+
+ Tests: imported/w3c/web-platform-tests/css/css-values/unset-value-storage.html
+ imported/w3c/web-platform-tests/css/cssom/css-style-attr-decl-block.html
+
+ * css/CSSRevertValue.cpp:
+ (WebCore::CSSRevertValue::customCSSText const): Use lowercase "revert".
+
+ * css/StyleProperties.cpp:
+ (WebCore::isCSSWideValueKeyword): Added. Replaces isInitialOrInherit.
+ (WebCore::StyleProperties::fontValue const): Use isCSSWideValueKeyword rather
+ than isInitialOrInherit.
+ (WebCore::StyleProperties::getLayeredShorthandValue const): Ditto. Also
+ rearranged thee function a bit and shortened some excessively wordy code.
+ (WebCore::StyleProperties::getShorthandValue const): Ditto.
+ (WebCore::StyleProperties::borderPropertyValue const): Ditto.
+ (WebCore::StyleProperties::asText const): Added code to properly handle the
+ case where both background-position/repeat-x and -y are the same CSS-wide
+ value keyword as well as cases involving "initial". The general case above
+ handles these properly, but background-position/repeat have their own code,
+ which needed to repeat some of the same logic.
+ (WebCore::StyleProperties::PropertyReference::cssText const): Use makeString
+ instead of StringBuilder.
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::styleAttributeChanged): Removed incorrect code that
+ detached the CSS object model style wrapper from the element when the style
+ attribute was removed. This was incorrect behavior; it should stay attached.
+ This fix happens to be tested by the same file as the "revert"/"Revert" fix
+ and I wanted the whole file to pass, not just one more test.
+
+ * editing/ApplyStyleCommand.cpp:
+ (WebCore::ApplyStyleCommand::addBlockStyle): Rewrote for simplicity, but
+ also so this works properly when inlineStyle is non-null but empty. This case
+ arises in one test now because of the change to StyledElement above.
+
+2020-09-05 Darin Adler <[email protected]>
+
Implement serialization of CSSPropertyGap
https://bugs.webkit.org/show_bug.cgi?id=216210
Modified: trunk/Source/WebCore/css/CSSRevertValue.cpp (266659 => 266660)
--- trunk/Source/WebCore/css/CSSRevertValue.cpp 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/Source/WebCore/css/CSSRevertValue.cpp 2020-09-05 15:45:27 UTC (rev 266660)
@@ -32,7 +32,7 @@
String CSSRevertValue::customCSSText() const
{
- return "Revert"_s;
+ return "revert"_s;
}
} // namespace WebCore
Modified: trunk/Source/WebCore/css/StyleProperties.cpp (266659 => 266660)
--- trunk/Source/WebCore/css/StyleProperties.cpp 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/Source/WebCore/css/StyleProperties.cpp 2020-09-05 15:45:27 UTC (rev 266660)
@@ -58,9 +58,9 @@
return sizeof(ImmutableStyleProperties) - sizeof(void*) + sizeof(StylePropertyMetadata) * count + sizeof(PackedPtr<const CSSValue>) * count;
}
-static bool isInitialOrInherit(const String& value)
+static bool isCSSWideValueKeyword(StringView value)
{
- return value.length() == 7 && (value == "initial" || value == "inherit");
+ return value == "initial" || value == "inherit" || value == "unset" || value == "revert";
}
Ref<ImmutableStyleProperties> ImmutableStyleProperties::create(const CSSProperty* properties, unsigned count, CSSParserMode cssParserMode)
@@ -399,7 +399,7 @@
if (!result.isEmpty())
result.append(' ');
result.append(fontFamilyProperty.value()->cssText());
- if (isInitialOrInherit(commonValue))
+ if (isCSSWideValueKeyword(commonValue))
return commonValue;
return result.toString();
}
@@ -503,8 +503,7 @@
StringBuilder result;
const unsigned size = shorthand.length();
- // Begin by collecting the properties into an array.
- Vector< RefPtr<CSSValue>> values(size);
+ Vector<RefPtr<CSSValue>> values(size);
size_t numLayers = 0;
for (unsigned i = 0; i < size; ++i) {
@@ -512,7 +511,7 @@
if (!values[i]) {
// We don't have all longhand properties defined as required for the shorthand
// property and thus should not serialize to a shorthand value. See spec at
- // http://www.w3.org/TR/cssom-1/#serialize-a-css-declaration-block.
+ // https://www.w3.org/TR/cssom-1/#serialize-a-css-declaration-block
return String();
}
if (values[i]->isBaseValueList())
@@ -522,10 +521,9 @@
}
String commonValue;
- bool commonValueInitialized = false;
- // Now stitch the properties together. Implicit initial values are flagged as such and
- // can safely be omitted.
+ // Now stitch the properties together.
+ // Implicit initial values are flagged as such and can safely be omitted.
for (size_t i = 0; i < numLayers; i++) {
StringBuilder layerResult;
bool useRepeatXShorthand = false;
@@ -533,15 +531,15 @@
bool useSingleWordShorthand = false;
bool foundPositionYCSSProperty = false;
for (unsigned j = 0; j < size; j++) {
- RefPtr<CSSValue> value;
- if (values[j]) {
- if (values[j]->isBaseValueList())
- value = downcast<CSSValueList>(*values[j]).item(i);
+ auto property = shorthand.properties()[j];
+
+ auto value = values[j];
+ if (value) {
+ if (value->isBaseValueList())
+ value = downcast<CSSValueList>(*value).item(i);
else {
- value = values[j];
-
// Color only belongs in the last layer.
- if (shorthand.properties()[j] == CSSPropertyBackgroundColor) {
+ if (property == CSSPropertyBackgroundColor) {
if (i != numLayers - 1)
value = nullptr;
} else if (i) // Other singletons only belong in the first layer.
@@ -549,28 +547,20 @@
}
}
- // We need to report background-repeat as it was written in the CSS. If the property is implicit,
- // then it was written with only one value. Here we figure out which value that was so we can
- // report back correctly.
- if ((shorthand.properties()[j] == CSSPropertyBackgroundRepeatX && isPropertyImplicit(shorthand.properties()[j]))
- || (shorthand.properties()[j] == CSSPropertyWebkitMaskRepeatX && isPropertyImplicit(shorthand.properties()[j]))) {
-
- // BUG 49055: make sure the value was not reset in the layer check just above.
- if ((j < size - 1 && shorthand.properties()[j + 1] == CSSPropertyBackgroundRepeatY && value)
- || (j < size - 1 && shorthand.properties()[j + 1] == CSSPropertyWebkitMaskRepeatY && value)) {
- RefPtr<CSSValue> yValue;
- RefPtr<CSSValue> nextValue = values[j + 1];
- if (nextValue) {
- if (is<CSSValueList>(*nextValue))
- yValue = downcast<CSSValueList>(*nextValue).itemWithoutBoundsCheck(i);
- else
- yValue = nextValue;
-
+ // We need to report background-repeat as it was written in the CSS.
+ // If the property is implicit, then it was written with only one value. Here we figure out which value that was so we can report back correctly.
+ if (value && j < size - 1 && (property == CSSPropertyBackgroundRepeatX || property == CSSPropertyWebkitMaskRepeatX) && isPropertyImplicit(property)) {
+ // Make sure the value was not reset in the layer check just above.
+ auto nextProperty = shorthand.properties()[j + 1];
+ if (nextProperty == CSSPropertyBackgroundRepeatY || nextProperty == CSSPropertyWebkitMaskRepeatY) {
+ if (auto yValue = values[j + 1]) {
+ if (is<CSSValueList>(*yValue))
+ yValue = downcast<CSSValueList>(*yValue).itemWithoutBoundsCheck(i);
if (!is<CSSPrimitiveValue>(*value) || !is<CSSPrimitiveValue>(*yValue))
continue;
- CSSValueID xId = downcast<CSSPrimitiveValue>(*value).valueID();
- CSSValueID yId = downcast<CSSPrimitiveValue>(*yValue).valueID();
+ auto xId = downcast<CSSPrimitiveValue>(*value).valueID();
+ auto yId = downcast<CSSPrimitiveValue>(*yValue).valueID();
if (xId != yId) {
if (xId == CSSValueRepeat && yId == CSSValueNoRepeat) {
useRepeatXShorthand = true;
@@ -591,12 +581,12 @@
if (value && !value->isImplicitInitialValue()) {
if (!layerResult.isEmpty())
layerResult.append(' ');
- if (foundPositionYCSSProperty
- && (shorthand.properties()[j] == CSSPropertyBackgroundSize || shorthand.properties()[j] == CSSPropertyWebkitMaskSize))
+
+ if (property == CSSPropertyBackgroundSize || property == CSSPropertyWebkitMaskSize) {
+ if (!foundPositionYCSSProperty)
+ continue;
layerResult.appendLiteral("/ ");
- if (!foundPositionYCSSProperty
- && (shorthand.properties()[j] == CSSPropertyBackgroundSize || shorthand.properties()[j] == CSSPropertyWebkitMaskSize))
- continue;
+ }
if (useRepeatXShorthand) {
useRepeatXShorthand = false;
@@ -611,37 +601,24 @@
layerResult.append(valueText);
}
- if (shorthand.properties()[j] == CSSPropertyBackgroundPositionY
- || shorthand.properties()[j] == CSSPropertyWebkitMaskPositionY) {
+ if (property == CSSPropertyBackgroundPositionY || property == CSSPropertyWebkitMaskPositionY)
foundPositionYCSSProperty = true;
-
- // background-position is a special case: if only the first offset is specified,
- // the second one defaults to "center", not the same value.
- if (commonValueInitialized && commonValue != "initial" && commonValue != "inherit")
- commonValue = String();
- }
}
- if (!commonValueInitialized) {
+ if (commonValue.isNull())
commonValue = valueText;
- commonValueInitialized = true;
- } else if (!commonValue.isNull() && commonValue != valueText)
- commonValue = String();
+ else if (commonValue != valueText)
+ commonValue = emptyString(); // Could use value here other than a CSS-wide value keyword or the null string.
}
- if (!layerResult.isEmpty()) {
- if (!result.isEmpty())
- result.appendLiteral(", ");
- result.append(layerResult);
- }
+ if (!layerResult.isEmpty())
+ result.append(result.isEmpty() ? "" : ", ", layerResult.toString());
}
- if (isInitialOrInherit(commonValue))
+ if (isCSSWideValueKeyword(commonValue))
return commonValue;
- if (result.isEmpty())
- return String();
- return result.toString();
+ return result.isEmpty() ? String() : result.toString();
}
String StyleProperties::getGridShorthandValue(const StylePropertyShorthand& shorthand) const
@@ -671,7 +648,7 @@
} else
commonValue = String();
}
- if (isInitialOrInherit(commonValue))
+ if (isCSSWideValueKeyword(commonValue))
return commonValue;
if (result.isEmpty())
return String();
@@ -730,7 +707,7 @@
result.append(' ');
result.append(value);
}
- if (isInitialOrInherit(commonValue))
+ if (isCSSWideValueKeyword(commonValue))
return commonValue;
return result.toString();
}
@@ -1272,78 +1249,47 @@
else
result.append(getPropertyName(propertyID));
- result.appendLiteral(": ");
- result.append(value);
- if (property.isImportant())
- result.appendLiteral(" !important");
- result.append(';');
+ result.append(": ", value, property.isImportant() ? " !important" : "", ';');
}
- // FIXME: This is a not-so-nice way to turn x/y positions into single background-position in output.
- // It is required because background-position-x/y are non-standard properties and WebKit generated output
- // would not work in Firefox (<rdar://problem/5143183>)
- // It would be a better solution if background-position was CSSUnitType::CSS_PAIR.
- if (positionXPropertyIndex != -1 && positionYPropertyIndex != -1 && propertyAt(positionXPropertyIndex).isImportant() == propertyAt(positionYPropertyIndex).isImportant()) {
- PropertyReference positionXProperty = propertyAt(positionXPropertyIndex);
- PropertyReference positionYProperty = propertyAt(positionYPropertyIndex);
-
- if (numDecls++)
- result.append(' ');
- result.appendLiteral("background-position: ");
- if (positionXProperty.value()->isValueList() || positionYProperty.value()->isValueList())
- result.append(getLayeredShorthandValue(backgroundPositionShorthand()));
- else {
- result.append(positionXProperty.value()->cssText());
- result.append(' ');
- result.append(positionYProperty.value()->cssText());
+ // FIXME: This is a not-so-nice way to turn x/y positions into single background-position/repeat in output.
+ // In 2007 we decided this was required because background-position/repeat-x/y are non-standard properties and WebKit generated output would not work in Firefox (<rdar://problem/5143183>).
+ auto appendPositionOrProperty = [&] (int xIndex, int yIndex, const char* name, const StylePropertyShorthand& shorthand) {
+ if (xIndex != -1 && yIndex != -1 && propertyAt(xIndex).isImportant() == propertyAt(yIndex).isImportant()) {
+ String value;
+ auto xProperty = propertyAt(xIndex);
+ auto yProperty = propertyAt(yIndex);
+ if (xProperty.value()->isValueList() || yProperty.value()->isValueList())
+ value = getLayeredShorthandValue(shorthand);
+ else {
+ auto x = xProperty.value()->cssText();
+ auto y = yProperty.value()->cssText();
+ if (x == y && isCSSWideValueKeyword(x))
+ value = x;
+ else
+ value = makeString(x, ' ', y);
+ }
+ if (value != "initial") {
+ result.append(numDecls ? " " : "", name, ": ", value, xProperty.isImportant() ? " !important" : "", ';');
+ ++numDecls;
+ }
+ } else {
+ if (xIndex != -1) {
+ if (numDecls++)
+ result.append(' ');
+ result.append(propertyAt(xIndex).cssText());
+ }
+ if (yIndex != -1) {
+ if (numDecls++)
+ result.append(' ');
+ result.append(propertyAt(yIndex).cssText());
+ }
}
- if (positionXProperty.isImportant())
- result.appendLiteral(" !important");
- result.append(';');
- } else {
- if (positionXPropertyIndex != -1) {
- if (numDecls++)
- result.append(' ');
- result.append(propertyAt(positionXPropertyIndex).cssText());
- }
- if (positionYPropertyIndex != -1) {
- if (numDecls++)
- result.append(' ');
- result.append(propertyAt(positionYPropertyIndex).cssText());
- }
- }
+ };
- // FIXME: We need to do the same for background-repeat.
- if (repeatXPropertyIndex != -1 && repeatYPropertyIndex != -1 && propertyAt(repeatXPropertyIndex).isImportant() == propertyAt(repeatYPropertyIndex).isImportant()) {
- PropertyReference repeatXProperty = propertyAt(repeatXPropertyIndex);
- PropertyReference repeatYProperty = propertyAt(repeatYPropertyIndex);
+ appendPositionOrProperty(positionXPropertyIndex, positionYPropertyIndex, "background-position", backgroundPositionShorthand());
+ appendPositionOrProperty(repeatXPropertyIndex, repeatYPropertyIndex, "background-repeat", backgroundRepeatShorthand());
- if (numDecls++)
- result.append(' ');
- result.appendLiteral("background-repeat: ");
- if (repeatXProperty.value()->isValueList() || repeatYProperty.value()->isValueList())
- result.append(getLayeredShorthandValue(backgroundRepeatShorthand()));
- else {
- result.append(repeatXProperty.value()->cssText());
- result.append(' ');
- result.append(repeatYProperty.value()->cssText());
- }
- if (repeatXProperty.isImportant())
- result.appendLiteral(" !important");
- result.append(';');
- } else {
- if (repeatXPropertyIndex != -1) {
- if (numDecls++)
- result.append(' ');
- result.append(propertyAt(repeatXPropertyIndex).cssText());
- }
- if (repeatYPropertyIndex != -1) {
- if (numDecls++)
- result.append(' ');
- result.append(propertyAt(repeatYPropertyIndex).cssText());
- }
- }
-
ASSERT(!numDecls ^ !result.isEmpty());
return result.toString();
}
@@ -1591,14 +1537,7 @@
String StyleProperties::PropertyReference::cssText() const
{
- StringBuilder result;
- result.append(cssName());
- result.appendLiteral(": ");
- result.append(m_value->cssText());
- if (isImportant())
- result.appendLiteral(" !important");
- result.append(';');
- return result.toString();
+ return makeString(cssName(), ": ", m_value->cssText(), isImportant() ? " !important" : "", ';');
}
Ref<DeferredStyleProperties> DeferredStyleProperties::create(const CSSParserTokenRange& tokenRange, CSSDeferredParser& parser)
Modified: trunk/Source/WebCore/dom/StyledElement.cpp (266659 => 266660)
--- trunk/Source/WebCore/dom/StyledElement.cpp 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/Source/WebCore/dom/StyledElement.cpp 2020-09-05 15:45:27 UTC (rev 266660)
@@ -170,7 +170,7 @@
void StyledElement::setInlineStyleFromString(const AtomString& newStyleString)
{
- RefPtr<StyleProperties>& inlineStyle = elementData()->m_inlineStyle;
+ auto& inlineStyle = elementData()->m_inlineStyle;
// Avoid redundant work if we're using shared attribute data with already parsed inline style.
if (inlineStyle && !elementData()->isUnique())
@@ -192,15 +192,11 @@
void StyledElement::styleAttributeChanged(const AtomString& newStyleString, AttributeModificationReason reason)
{
- WTF::OrdinalNumber startLineNumber = WTF::OrdinalNumber::beforeFirst();
+ auto startLineNumber = WTF::OrdinalNumber::beforeFirst();
if (document().scriptableDocumentParser() && !document().isInDocumentWrite())
startLineNumber = document().scriptableDocumentParser()->textPosition().m_line;
- if (newStyleString.isNull()) {
- if (PropertySetCSSStyleDeclaration* cssomWrapper = inlineStyleCSSOMWrapper())
- cssomWrapper->clearParentElement();
- ensureUniqueElementData().m_inlineStyle = nullptr;
- } else if (reason == ModifiedByCloning || document().contentSecurityPolicy()->allowInlineStyle(document().url().string(), startLineNumber, String(), isInUserAgentShadowTree()))
+ if (reason == ModifiedByCloning || document().contentSecurityPolicy()->allowInlineStyle(document().url().string(), startLineNumber, String(), isInUserAgentShadowTree()))
setInlineStyleFromString(newStyleString);
elementData()->setStyleAttributeIsDirty(false);
Modified: trunk/Source/WebCore/editing/ApplyStyleCommand.cpp (266659 => 266660)
--- trunk/Source/WebCore/editing/ApplyStyleCommand.cpp 2020-09-05 15:18:36 UTC (rev 266659)
+++ trunk/Source/WebCore/editing/ApplyStyleCommand.cpp 2020-09-05 15:45:27 UTC (rev 266660)
@@ -1340,21 +1340,20 @@
// VisibleSelection::validate().
}
+static String joinWithSpace(const String& a, const String& b)
+{
+ if (a.isEmpty())
+ return b;
+ if (b.isEmpty())
+ return a;
+ return makeString(a, ' ', b);
+}
+
void ApplyStyleCommand::addBlockStyle(const StyleChange& styleChange, HTMLElement& block)
{
+ // Do not check for legacy styles here. Those styles, like <B> and <I>, only apply for inline content.
ASSERT(styleChange.cssStyle());
- // Do not check for legacy styles here. Those styles, like <B> and <I>, only apply for
- // inline content.
-
- String cssStyle = styleChange.cssStyle()->asText();
- StringBuilder cssText;
- cssText.append(cssStyle);
- if (const StyleProperties* decl = block.inlineStyle()) {
- if (!cssStyle.isEmpty())
- cssText.append(' ');
- cssText.append(decl->asText());
- }
- setNodeAttribute(block, styleAttr, cssText.toString());
+ setNodeAttribute(block, styleAttr, joinWithSpace(styleChange.cssStyle()->asText(), block.getAttribute(styleAttr)));
}
void ApplyStyleCommand::addInlineStyleIfNeeded(EditingStyle* style, Node& start, Node& end, EAddStyledElement addStyledElement)