<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[214394] trunk</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/214394">214394</a></dd>
<dt>Author</dt> <dd>mmaxfield@apple.com</dd>
<dt>Date</dt> <dd>2017-03-24 23:50:18 -0700 (Fri, 24 Mar 2017)</dd>
</dl>

<h3>Log Message</h3>
<pre>Add font-optical-sizing to CSSComputedStyleDeclaration
https://bugs.webkit.org/show_bug.cgi?id=170083

Reviewed by Joseph Pecoraro.

Source/WebCore:

Covered by existing tests.

* css/CSSComputedStyleDeclaration.cpp:

LayoutTests:

* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-font-family-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/resources/property-names.js:
* fast/text/variations/optical-sizing-expected.txt:
* fast/text/variations/optical-sizing.html:
* platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt: Added.
* platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Added.
* platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkLayoutTestsChangeLog">trunk/LayoutTests/ChangeLog</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStylecomputedstyleexpectedtxt">trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStylecomputedstylefontfamilyexpectedtxt">trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt">trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfastcssgetComputedStyleresourcespropertynamesjs">trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js</a></li>
<li><a href="#trunkLayoutTestsfasttextvariationsopticalsizingexpectedtxt">trunk/LayoutTests/fast/text/variations/optical-sizing-expected.txt</a></li>
<li><a href="#trunkLayoutTestsfasttextvariationsopticalsizinghtml">trunk/LayoutTests/fast/text/variations/optical-sizing.html</a></li>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCorecssCSSComputedStyleDeclarationcpp">trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/</li>
<li><a href="#trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstyleexpectedtxt">trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstylefontfamilyexpectedtxt">trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt</a></li>
<li><a href="#trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt">trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkLayoutTestsChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/ChangeLog (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/ChangeLog        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/ChangeLog        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -1,3 +1,20 @@
</span><ins>+2017-03-24  Myles C. Maxfield  &lt;mmaxfield@apple.com&gt;
+
+        Add font-optical-sizing to CSSComputedStyleDeclaration
+        https://bugs.webkit.org/show_bug.cgi?id=170083
+
+        Reviewed by Joseph Pecoraro.
+
+        * fast/css/getComputedStyle/computed-style-expected.txt:
+        * fast/css/getComputedStyle/computed-style-font-family-expected.txt:
+        * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
+        * fast/css/getComputedStyle/resources/property-names.js:
+        * fast/text/variations/optical-sizing-expected.txt:
+        * fast/text/variations/optical-sizing.html:
+        * platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt: Added.
+        * platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt: Added.
+        * platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Added.
+
</ins><span class="cx"> 2017-03-24  Ryan Haddad  &lt;ryanhaddad@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         Consolidate TestExpectations for media/restore-from-page-cache.html.
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStylecomputedstyleexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -50,6 +50,7 @@
</span><span class="cx"> font-synthesis: style weight small-caps;
</span><span class="cx"> font-variant: normal;
</span><span class="cx"> font-weight: normal;
</span><ins>+font-optical-sizing: auto;
</ins><span class="cx"> hanging-punctuation: none;
</span><span class="cx"> height: 576px;
</span><span class="cx"> image-rendering: auto;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStylecomputedstylefontfamilyexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -7,6 +7,7 @@
</span><span class="cx"> font-synthesis: style weight small-caps;
</span><span class="cx"> font-variant: normal;
</span><span class="cx"> font-weight: normal;
</span><ins>+font-optical-sizing: auto;
</ins><span class="cx"> font-variant-ligatures: normal;
</span><span class="cx"> font-variant-position: normal;
</span><span class="cx"> font-variant-caps: normal;
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -49,6 +49,7 @@
</span><span class="cx"> font-synthesis: style weight small-caps
</span><span class="cx"> font-variant: normal
</span><span class="cx"> font-weight: normal
</span><ins>+font-optical-sizing: auto
</ins><span class="cx"> hanging-punctuation: none
</span><span class="cx"> height: 100px
</span><span class="cx"> image-rendering: auto
</span></span></pre></div>
<a id="trunkLayoutTestsfastcssgetComputedStyleresourcespropertynamesjs"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/css/getComputedStyle/resources/property-names.js        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -197,6 +197,7 @@
</span><span class="cx">     &quot;font-variant-numeric&quot;: true,
</span><span class="cx">     &quot;font-variant-position&quot;: true,
</span><span class="cx">     &quot;font-weight&quot;: true,
</span><ins>+    &quot;font-optical-sizing&quot;: true,
</ins><span class="cx">     &quot;glyph-orientation-horizontal&quot;: true,
</span><span class="cx">     &quot;glyph-orientation-vertical&quot;: true,
</span><span class="cx">     &quot;hanging-punctuation&quot;: true,
</span></span></pre></div>
<a id="trunkLayoutTestsfasttextvariationsopticalsizingexpectedtxt"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/text/variations/optical-sizing-expected.txt (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/text/variations/optical-sizing-expected.txt        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/text/variations/optical-sizing-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -13,6 +13,12 @@
</span><span class="cx"> PASS document.getElementById('test3').style.fontOpticalSizing is &quot;auto&quot;
</span><span class="cx"> PASS document.getElementById('test4').style.fontOpticalSizing is &quot;none&quot;
</span><span class="cx"> PASS document.getElementById('test5').style.fontOpticalSizing is &quot;inherit&quot;
</span><ins>+PASS window.getComputedStyle(document.getElementById('test1')).fontOpticalSizing is &quot;auto&quot;
+PASS window.getComputedStyle(document.getElementById('test2')).fontOpticalSizing is &quot;auto&quot;
+PASS window.getComputedStyle(document.getElementById('test3')).fontOpticalSizing is &quot;auto&quot;
+PASS window.getComputedStyle(document.getElementById('test4')).fontOpticalSizing is &quot;none&quot;
+PASS window.getComputedStyle(document.getElementById('test5')).fontOpticalSizing is &quot;none&quot;
+PASS Found optical sizing
</ins><span class="cx"> PASS successfullyParsed is true
</span><span class="cx"> 
</span><span class="cx"> TEST COMPLETE
</span></span></pre></div>
<a id="trunkLayoutTestsfasttextvariationsopticalsizinghtml"></a>
<div class="modfile"><h4>Modified: trunk/LayoutTests/fast/text/variations/optical-sizing.html (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/fast/text/variations/optical-sizing.html        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/LayoutTests/fast/text/variations/optical-sizing.html        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -24,8 +24,26 @@
</span><span class="cx"> shouldBeEqualToString(&quot;document.getElementById('test3').style.fontOpticalSizing&quot;, &quot;auto&quot;);
</span><span class="cx"> shouldBeEqualToString(&quot;document.getElementById('test4').style.fontOpticalSizing&quot;, &quot;none&quot;);
</span><span class="cx"> shouldBeEqualToString(&quot;document.getElementById('test5').style.fontOpticalSizing&quot;, &quot;inherit&quot;);
</span><ins>+
+shouldBeEqualToString(&quot;window.getComputedStyle(document.getElementById('test1')).fontOpticalSizing&quot;, &quot;auto&quot;);
+shouldBeEqualToString(&quot;window.getComputedStyle(document.getElementById('test2')).fontOpticalSizing&quot;, &quot;auto&quot;);
+shouldBeEqualToString(&quot;window.getComputedStyle(document.getElementById('test3')).fontOpticalSizing&quot;, &quot;auto&quot;);
+shouldBeEqualToString(&quot;window.getComputedStyle(document.getElementById('test4')).fontOpticalSizing&quot;, &quot;none&quot;);
+shouldBeEqualToString(&quot;window.getComputedStyle(document.getElementById('test5')).fontOpticalSizing&quot;, &quot;none&quot;);
+
+var computedStyle = window.getComputedStyle(document.getElementById('test1'));
+var found = false;
+for (let i = 0; i &lt; x.length; ++i) {
+    if (computedStyle[i] == &quot;font-optical-sizing&quot;) {
+        found = true;
+        testPassed(&quot;Found optical sizing&quot;);
+        break;
+    }
+}
+if (!found)
+    testFailed(&quot;Didn't find optical sizing&quot;);
</ins><span class="cx"> &lt;/script&gt;
</span><span class="cx"> 
</span><span class="cx"> &lt;script src=&quot;../../../resources/js-test-post.js&quot;&gt;&lt;/script&gt;
</span><span class="cx"> &lt;/body&gt;
</span><del>-&lt;/html&gt;
</del><span class="cx">\ No newline at end of file
</span><ins>+&lt;/html&gt;
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstyleexpectedtxtfromrev214393trunkLayoutTestsfastcssgetComputedStylecomputedstyleexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt (from rev 214393, trunk/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt) (0 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt                                (rev 0)
+++ trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -0,0 +1,288 @@
</span><ins>+Attributes that are exposed in the CSS computed style object:
+
+background-attachment: scroll;
+background-clip: border-box;
+background-color: rgba(0, 0, 0, 0);
+background-image: none;
+background-origin: padding-box;
+background-position: 0% 0%;
+background-repeat: repeat;
+background-size: auto;
+border-bottom-color: rgb(0, 0, 0);
+border-bottom-left-radius: 0px;
+border-bottom-right-radius: 0px;
+border-bottom-style: none;
+border-bottom-width: 0px;
+border-collapse: separate;
+border-image-outset: 0px;
+border-image-repeat: stretch;
+border-image-slice: 100%;
+border-image-source: none;
+border-image-width: 1;
+border-left-color: rgb(0, 0, 0);
+border-left-style: none;
+border-left-width: 0px;
+border-right-color: rgb(0, 0, 0);
+border-right-style: none;
+border-right-width: 0px;
+border-top-color: rgb(0, 0, 0);
+border-top-left-radius: 0px;
+border-top-right-radius: 0px;
+border-top-style: none;
+border-top-width: 0px;
+bottom: auto;
+box-shadow: none;
+box-sizing: content-box;
+caption-side: top;
+clear: none;
+clip: auto;
+color: rgb(0, 0, 0);
+counter-increment: none;
+counter-reset: none;
+content: ;
+cursor: auto;
+direction: ltr;
+display: block;
+empty-cells: show;
+float: none;
+font-size: 16px;
+font-style: normal;
+font-synthesis: style weight small-caps;
+font-variant: normal;
+font-weight: normal;
+hanging-punctuation: none;
+height: 576px;
+image-rendering: auto;
+left: auto;
+letter-spacing: normal;
+line-height: 18px;
+list-style-image: none;
+list-style-position: outside;
+list-style-type: disc;
+margin-bottom: 8px;
+margin-left: 8px;
+margin-right: 8px;
+margin-top: 8px;
+max-height: none;
+max-width: none;
+min-height: 0px;
+min-width: 0px;
+object-fit: fill;
+object-position: 50% 50%;
+opacity: 1;
+orphans: auto;
+outline-color: rgb(0, 0, 0);
+outline-offset: 0px;
+outline-style: none;
+outline-width: 0px;
+overflow-wrap: normal;
+overflow-x: visible;
+overflow-y: visible;
+padding-bottom: 0px;
+padding-left: 0px;
+padding-right: 0px;
+padding-top: 0px;
+page-break-after: auto;
+page-break-before: auto;
+page-break-inside: auto;
+pointer-events: auto;
+position: static;
+resize: none;
+right: auto;
+speak: normal;
+table-layout: auto;
+tab-size: 8;
+text-align: start;
+text-decoration: none;
+text-indent: 0px;
+text-rendering: auto;
+text-shadow: none;
+text-overflow: clip;
+text-transform: none;
+top: auto;
+transform: none;
+transform-origin: 392px 288px;
+transform-style: flat;
+transition-delay: 0s;
+transition-duration: 0s;
+transition-property: all;
+transition-timing-function: ease;
+unicode-bidi: normal;
+vertical-align: baseline;
+visibility: visible;
+white-space: normal;
+widows: auto;
+width: 784px;
+will-change: auto;
+word-break: normal;
+word-spacing: 0px;
+word-wrap: normal;
+z-index: auto;
+zoom: 1;
+-webkit-appearance: none;
+-webkit-backface-visibility: visible;
+-webkit-background-clip: border-box;
+-webkit-background-composite: source-over;
+-webkit-background-origin: padding-box;
+-webkit-background-size: auto;
+-webkit-border-fit: border;
+-webkit-border-horizontal-spacing: 0px;
+-webkit-border-image: none;
+-webkit-border-vertical-spacing: 0px;
+-webkit-box-align: stretch;
+-webkit-box-decoration-break: slice;
+-webkit-box-direction: normal;
+-webkit-box-flex: 0;
+-webkit-box-flex-group: 1;
+-webkit-box-lines: single;
+-webkit-box-ordinal-group: 1;
+-webkit-box-orient: horizontal;
+-webkit-box-pack: start;
+-webkit-box-reflect: none;
+-webkit-box-shadow: none;
+-webkit-column-break-after: auto;
+-webkit-column-break-before: auto;
+-webkit-column-break-inside: auto;
+-webkit-column-axis: auto;
+column-count: auto;
+column-fill: balance;
+column-gap: normal;
+column-rule-color: rgb(0, 0, 0);
+column-rule-style: none;
+column-rule-width: 0px;
+column-span: none;
+column-width: auto;
+align-content: normal;
+align-items: normal;
+align-self: normal;
+filter: none;
+flex-basis: auto;
+flex-direction: row;
+flex-flow: row nowrap;
+flex-grow: 0;
+flex-shrink: 1;
+flex-wrap: nowrap;
+justify-content: normal;
+justify-self: normal;
+justify-items: normal;
+-webkit-font-kerning: auto;
+-webkit-font-smoothing: auto;
+font-variant-ligatures: normal;
+font-variant-position: normal;
+font-variant-caps: normal;
+font-variant-numeric: normal;
+font-variant-alternates: normal;
+font-variant-east-asian: normal;
+grid-auto-columns: auto;
+grid-auto-flow: row;
+grid-auto-rows: auto;
+grid-column-end: auto;
+grid-column-start: auto;
+grid-template-columns: none;
+grid-template-rows: none;
+grid-row-end: auto;
+grid-row-start: auto;
+-webkit-hyphenate-character: auto;
+-webkit-hyphenate-limit-after: auto;
+-webkit-hyphenate-limit-before: auto;
+-webkit-hyphenate-limit-lines: no-limit;
+-webkit-hyphens: manual;
+-webkit-line-align: none;
+-webkit-line-box-contain: block inline replaced;
+-webkit-line-clamp: none;
+-webkit-line-grid: none;
+-webkit-line-snap: none;
+-webkit-locale: auto;
+-webkit-margin-before-collapse: collapse;
+-webkit-margin-after-collapse: collapse;
+-webkit-marquee-direction: auto;
+-webkit-marquee-increment: 6px;
+-webkit-marquee-repetition: infinite;
+-webkit-marquee-style: scroll;
+-webkit-mask-box-image: none;
+-webkit-mask-box-image-outset: 0px;
+-webkit-mask-box-image-repeat: stretch;
+-webkit-mask-box-image-slice: 0 fill;
+-webkit-mask-box-image-source: none;
+-webkit-mask-box-image-width: auto;
+-webkit-mask-clip: border-box;
+-webkit-mask-composite: source-over;
+-webkit-mask-image: none;
+-webkit-mask-origin: border-box;
+-webkit-mask-position: 0% 0%;
+-webkit-mask-repeat: repeat;
+-webkit-mask-size: auto;
+-webkit-nbsp-mode: normal;
+order: 0;
+perspective: none;
+perspective-origin: 392px 288px;
+-webkit-print-color-adjust: economy;
+-webkit-rtl-ordering: logical;
+shape-outside: none;
+-webkit-text-combine: none;
+-webkit-text-decorations-in-effect: none;
+-webkit-text-emphasis-color: rgb(0, 0, 0);
+-webkit-text-emphasis-position: over right;
+-webkit-text-emphasis-style: none;
+-webkit-text-fill-color: rgb(0, 0, 0);
+-webkit-text-orientation: mixed;
+-webkit-text-security: none;
+-webkit-text-stroke-color: rgb(0, 0, 0);
+-webkit-text-stroke-width: 0px;
+-webkit-transform-style: flat;
+-webkit-user-drag: auto;
+-webkit-user-modify: read-only;
+-webkit-user-select: text;
+shape-image-threshold: 0;
+shape-margin: 0px;
+shape-outside: none;
+shape-rendering: auto;
+buffered-rendering: auto;
+clip-path: none;
+clip-rule: nonzero;
+mask: none;
+mask-type: luminance;
+filter: none;
+flood-color: rgb(0, 0, 0);
+flood-opacity: 1;
+lighting-color: rgb(255, 255, 255);
+stop-color: rgb(0, 0, 0);
+stop-opacity: 1;
+color-interpolation: sRGB;
+color-interpolation-filters: linearRGB;
+color-rendering: auto;
+fill: rgb(0, 0, 0);
+fill-opacity: 1;
+fill-rule: nonzero;
+marker-end: none;
+marker-mid: none;
+marker-start: none;
+paint-order: normal;
+stroke: none;
+stroke-dasharray: none;
+stroke-dashoffset: 0px;
+stroke-linecap: butt;
+stroke-linejoin: miter;
+stroke-miterlimit: 4;
+stroke-opacity: 1;
+stroke-width: 1px;
+alignment-baseline: auto;
+baseline-shift: baseline;
+dominant-baseline: auto;
+kerning: 0;
+text-anchor: start;
+writing-mode: horizontal-tb;
+glyph-orientation-horizontal: 0deg;
+glyph-orientation-vertical: auto;
+-webkit-svg-shadow: none;
+vector-effect: none;
+
+Other attributes that the computed style class supports:
+
+background-position-x: 0%;
+background-position-y: 0%;
+border-spacing: 0px 0px;
+overflow: visible;
+-webkit-mask-position-x: 0%;
+-webkit-mask-position-y: 0%;
+
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstylefontfamilyexpectedtxtfromrev214393trunkLayoutTestsfastcssgetComputedStylecomputedstylefontfamilyexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt (from rev 214393, trunk/LayoutTests/fast/css/getComputedStyle/computed-style-font-family-expected.txt) (0 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt                                (rev 0)
+++ trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-font-family-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -0,0 +1,16 @@
</span><ins>+Font attributes. The font-family should list three families:
+
+font-family: monospace, 'Lucida Grande', sans-serif;
+font-size: 16px;
+font-stretch: normal;
+font-style: normal;
+font-synthesis: style weight small-caps;
+font-variant: normal;
+font-weight: normal;
+font-variant-ligatures: normal;
+font-variant-position: normal;
+font-variant-caps: normal;
+font-variant-numeric: normal;
+font-variant-alternates: normal;
+font-variant-east-asian: normal;
+
</ins></span></pre></div>
<a id="trunkLayoutTestsplatformmacelcapitanfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxtfromrev214393trunkLayoutTestsfastcssgetComputedStylecomputedstylewithoutrendererexpectedtxt"></a>
<div class="copfile"><h4>Copied: trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt (from rev 214393, trunk/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt) (0 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt                                (rev 0)
+++ trunk/LayoutTests/platform/mac-elcapitan/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -0,0 +1,299 @@
</span><ins>+Computed style of an element whose parent's 'display' value is 'none':
+background-attachment: scroll
+background-clip: border-box
+background-color: rgb(0, 128, 0)
+background-image: none
+background-origin: padding-box
+background-position: 0% 0%
+background-repeat: repeat
+background-size: auto
+border-bottom-color: rgb(0, 0, 0)
+border-bottom-left-radius: 0px
+border-bottom-right-radius: 0px
+border-bottom-style: none
+border-bottom-width: 0px
+border-collapse: separate
+border-image-outset: 0px
+border-image-repeat: stretch
+border-image-slice: 100%
+border-image-source: none
+border-image-width: 1
+border-left-color: rgb(0, 0, 0)
+border-left-style: none
+border-left-width: 0px
+border-right-color: rgb(0, 0, 0)
+border-right-style: none
+border-right-width: 0px
+border-top-color: rgb(0, 0, 0)
+border-top-left-radius: 0px
+border-top-right-radius: 0px
+border-top-style: solid
+border-top-width: 16px
+bottom: auto
+box-shadow: none
+box-sizing: content-box
+caption-side: top
+clear: none
+clip: auto
+color: rgb(0, 0, 0)
+counter-increment: none
+counter-reset: none
+content: 
+cursor: auto
+direction: ltr
+display: block
+empty-cells: show
+float: none
+font-size: 16px
+font-style: normal
+font-synthesis: style weight small-caps
+font-variant: normal
+font-weight: normal
+hanging-punctuation: none
+height: 100px
+image-rendering: auto
+left: auto
+letter-spacing: normal
+line-height: 18px
+list-style-image: none
+list-style-position: outside
+list-style-type: disc
+margin-bottom: 0px
+margin-left: auto
+margin-right: 0px
+margin-top: 0px
+max-height: none
+max-width: none
+min-height: 0px
+min-width: 0px
+object-fit: fill
+object-position: 50% 50%
+opacity: 1
+orphans: auto
+outline-color: rgb(0, 0, 0)
+outline-offset: 0px
+outline-style: none
+outline-width: 0px
+overflow-wrap: normal
+overflow-x: visible
+overflow-y: visible
+padding-bottom: 0px
+padding-left: 0px
+padding-right: 0px
+padding-top: 0px
+page-break-after: auto
+page-break-before: auto
+page-break-inside: auto
+pointer-events: auto
+position: static
+resize: none
+right: auto
+speak: normal
+table-layout: auto
+tab-size: 8
+text-align: start
+text-decoration: none
+text-indent: 0px
+text-rendering: auto
+text-shadow: none
+text-overflow: clip
+text-transform: none
+top: auto
+transform: none
+transform-origin: 50% 50%
+transform-style: flat
+transition-delay: 0s
+transition-duration: 0s
+transition-property: all
+transition-timing-function: ease
+unicode-bidi: normal
+vertical-align: baseline
+visibility: visible
+white-space: normal
+widows: auto
+width: 50%
+will-change: auto
+word-break: normal
+word-spacing: 0px
+word-wrap: normal
+z-index: auto
+zoom: 1
+-webkit-appearance: none
+-webkit-backface-visibility: visible
+-webkit-background-clip: border-box
+-webkit-background-composite: source-over
+-webkit-background-origin: padding-box
+-webkit-background-size: auto
+-webkit-border-fit: border
+-webkit-border-horizontal-spacing: 0px
+-webkit-border-image: none
+-webkit-border-vertical-spacing: 0px
+-webkit-box-align: stretch
+-webkit-box-decoration-break: slice
+-webkit-box-direction: normal
+-webkit-box-flex: 0
+-webkit-box-flex-group: 1
+-webkit-box-lines: single
+-webkit-box-ordinal-group: 1
+-webkit-box-orient: horizontal
+-webkit-box-pack: start
+-webkit-box-reflect: none
+-webkit-box-shadow: none
+-webkit-column-break-after: auto
+-webkit-column-break-before: auto
+-webkit-column-break-inside: auto
+-webkit-column-axis: auto
+column-count: auto
+column-fill: balance
+column-gap: normal
+column-rule-color: rgb(0, 0, 0)
+column-rule-style: none
+column-rule-width: 0px
+column-span: none
+column-width: auto
+align-content: normal
+align-items: normal
+align-self: normal
+filter: none
+flex-basis: auto
+flex-direction: row
+flex-flow: row nowrap
+flex-grow: 0
+flex-shrink: 1
+flex-wrap: nowrap
+justify-content: normal
+justify-self: normal
+justify-items: normal
+-webkit-font-kerning: auto
+-webkit-font-smoothing: auto
+font-variant-ligatures: normal
+font-variant-position: normal
+font-variant-caps: normal
+font-variant-numeric: normal
+font-variant-alternates: normal
+font-variant-east-asian: normal
+grid-auto-columns: auto
+grid-auto-flow: row
+grid-auto-rows: auto
+grid-column-end: auto
+grid-column-start: auto
+grid-template-columns: none
+grid-template-rows: none
+grid-row-end: auto
+grid-row-start: auto
+-webkit-hyphenate-character: auto
+-webkit-hyphenate-limit-after: auto
+-webkit-hyphenate-limit-before: auto
+-webkit-hyphenate-limit-lines: no-limit
+-webkit-hyphens: manual
+-webkit-line-align: none
+-webkit-line-box-contain: block inline replaced
+-webkit-line-clamp: none
+-webkit-line-grid: none
+-webkit-line-snap: none
+-webkit-locale: auto
+-webkit-margin-before-collapse: collapse
+-webkit-margin-after-collapse: collapse
+-webkit-marquee-direction: auto
+-webkit-marquee-increment: 6px
+-webkit-marquee-repetition: infinite
+-webkit-marquee-style: scroll
+-webkit-mask-box-image: none
+-webkit-mask-box-image-outset: 0px
+-webkit-mask-box-image-repeat: stretch
+-webkit-mask-box-image-slice: 0 fill
+-webkit-mask-box-image-source: none
+-webkit-mask-box-image-width: auto
+-webkit-mask-clip: border-box
+-webkit-mask-composite: source-over
+-webkit-mask-image: none
+-webkit-mask-origin: border-box
+-webkit-mask-position: 0% 0%
+-webkit-mask-repeat: repeat
+-webkit-mask-size: auto
+-webkit-nbsp-mode: normal
+order: 0
+perspective: none
+perspective-origin: 50% 50%
+-webkit-print-color-adjust: economy
+-webkit-rtl-ordering: logical
+shape-outside: none
+-webkit-text-combine: none
+-webkit-text-decorations-in-effect: none
+-webkit-text-emphasis-color: rgb(0, 0, 0)
+-webkit-text-emphasis-position: over right
+-webkit-text-emphasis-style: none
+-webkit-text-fill-color: rgb(0, 0, 0)
+-webkit-text-orientation: mixed
+-webkit-text-security: none
+-webkit-text-stroke-color: rgb(0, 0, 0)
+-webkit-text-stroke-width: 0px
+-webkit-transform-style: flat
+-webkit-user-drag: auto
+-webkit-user-modify: read-only
+-webkit-user-select: text
+shape-image-threshold: 0
+shape-margin: 0px
+shape-outside: none
+shape-rendering: auto
+buffered-rendering: auto
+clip-path: none
+clip-rule: nonzero
+mask: none
+mask-type: luminance
+filter: none
+flood-color: rgb(0, 0, 0)
+flood-opacity: 1
+lighting-color: rgb(255, 255, 255)
+stop-color: rgb(0, 0, 0)
+stop-opacity: 1
+color-interpolation: sRGB
+color-interpolation-filters: linearRGB
+color-rendering: auto
+fill: rgb(0, 0, 0)
+fill-opacity: 1
+fill-rule: nonzero
+marker-end: none
+marker-mid: none
+marker-start: none
+paint-order: normal
+stroke: none
+stroke-dasharray: none
+stroke-dashoffset: 0px
+stroke-linecap: butt
+stroke-linejoin: miter
+stroke-miterlimit: 4
+stroke-opacity: 1
+stroke-width: 1px
+alignment-baseline: auto
+baseline-shift: baseline
+dominant-baseline: auto
+kerning: 0
+text-anchor: start
+writing-mode: horizontal-tb
+glyph-orientation-horizontal: 0deg
+glyph-orientation-vertical: auto
+-webkit-svg-shadow: none
+vector-effect: none
+background-position-x: 0%
+background-position-y: 0%
+border-spacing: 0px 0px
+overflow: visible
+-webkit-mask-position-x: 0%
+-webkit-mask-position-y: 0%
+
+After changing grandparent's 'color' and the parent's 'font-size' inherited properties:
+border-top-width: 18px
+color: rgb(0, 0, 255)
+
+After changing the parent's 'display' property to 'block', so that the child gets a renderer:
+height: 100px
+margin-left: 350px
+width: 350px
+
+After changing the parent's 'display' property back to 'none':
+height: 100px
+margin-left: auto
+width: 50%
+
+
</ins></span></pre></div>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/Source/WebCore/ChangeLog        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -1,3 +1,14 @@
</span><ins>+2017-03-24  Myles C. Maxfield  &lt;mmaxfield@apple.com&gt;
+
+        Add font-optical-sizing to CSSComputedStyleDeclaration
+        https://bugs.webkit.org/show_bug.cgi?id=170083
+
+        Reviewed by Joseph Pecoraro.
+
+        Covered by existing tests.
+
+        * css/CSSComputedStyleDeclaration.cpp:
+
</ins><span class="cx"> 2017-03-24  Daniel Bates  &lt;dabates@apple.com&gt;
</span><span class="cx"> 
</span><span class="cx">         media/restore-from-page-cache.html causes NoEventDispatchAssertion::isEventAllowedInMainThread() assertion failure
</span></span></pre></div>
<a id="trunkSourceWebCorecssCSSComputedStyleDeclarationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp (214393 => 214394)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp        2017-03-25 05:34:02 UTC (rev 214393)
+++ trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp        2017-03-25 06:50:18 UTC (rev 214394)
</span><span class="lines">@@ -162,6 +162,9 @@
</span><span class="cx">     CSSPropertyFontSynthesis,
</span><span class="cx">     CSSPropertyFontVariant,
</span><span class="cx">     CSSPropertyFontWeight,
</span><ins>+#if ENABLE(VARIATION_FONTS)
+    CSSPropertyFontOpticalSizing,
+#endif
</ins><span class="cx">     CSSPropertyHangingPunctuation,
</span><span class="cx">     CSSPropertyHeight,
</span><span class="cx"> #if ENABLE(CSS_IMAGE_ORIENTATION)
</span></span></pre>
</div>
</div>

</body>
</html>