<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>186997</bug_id>
          
          <creation_ts>2018-06-25 02:51:07 -0700</creation_ts>
          <short_desc>[Web Animations] Ensure animations are updated prior to requestAnimationFrame callbacks</short_desc>
          <delta_ts>2018-06-25 13:35:47 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Animations</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=183826</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antoine Quint">graouts</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>dino</cc>
    
    <cc>realdawei</cc>
    
    <cc>ross.kirsling</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1436022</commentid>
    <comment_count>0</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2018-06-25 02:51:07 -0700</bug_when>
    <thetext>The HTML5 event loop mandates that animations are updated prior to requestAnimationFrame callbacks being fired. We need to implement this if only to reduce test flakiness since some tests use a rAF callback to check that animations have been updated. This is needed to fix https://bugs.webkit.org/show_bug.cgi?id=183826.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436023</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-25 02:51:35 -0700</bug_when>
    <thetext>&lt;rdar://problem/41419414&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436024</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2018-06-25 02:51:42 -0700</bug_when>
    <thetext>&lt;rdar://problem/41419416&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436025</commentid>
    <comment_count>3</comment_count>
    <who name="Antoine Quint">graouts</who>
    <bug_when>2018-06-25 02:54:42 -0700</bug_when>
    <thetext>Committed r233140: &lt;https://trac.webkit.org/changeset/233140&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436036</commentid>
    <comment_count>4</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-06-25 05:43:43 -0700</bug_when>
    <thetext>(In reply to Antoine Quint from comment #3)
&gt; Committed r233140: &lt;https://trac.webkit.org/changeset/233140&gt;

Attempt to fix Windows build failure:

Committed r233144: &lt;https://trac.webkit.org/changeset/233144&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436082</commentid>
    <comment_count>5</comment_count>
    <who name="Dawei Fenton (:realdawei)">realdawei</who>
    <bug_when>2018-06-25 09:25:32 -0700</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #4)
&gt; (In reply to Antoine Quint from comment #3)
&gt; &gt; Committed r233140: &lt;https://trac.webkit.org/changeset/233140&gt;
&gt; 
&gt; Attempt to fix Windows build failure:
&gt; 
&gt; Committed r233144: &lt;https://trac.webkit.org/changeset/233144&gt;

unfortunately Windows is still failing to build:

Sample error:
https://build.webkit.org/builders/Apple%20High%20Sierra%20Release%20WK2%20(Tests)/builds/5228/steps/layout-test/logs/stdio

C:\cygwin\home\buildbot\slave\win-release\build\Source\WebCore\dom/Document.cpp(2448): error C2027: use of undefined type &apos;WebCore::DocumentAnimationScheduler&apos; (compiling source file C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource206.cpp) [C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\Source\WebCore\WebCore.vcxproj]
  c:\cygwin\home\buildbot\slave\win-release\build\source\webcore\dom\Document.h(83): note: see declaration of &apos;WebCore::DocumentAnimationScheduler&apos; (compiling source file C:\cygwin\home\buildbot\slave\win-release\build\WebKitBuild\Release\DerivedSources\WebCore\unified-sources\UnifiedSource206.cpp)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436099</commentid>
    <comment_count>6</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-06-25 10:15:09 -0700</bug_when>
    <thetext>The first error before r233144 was
&gt; WebCore\dom/Document.cpp(2448): error C2027: use of undefined type &apos;WebCore::DocumentAnimationScheduler&apos;

The first error after r233144 is now
&gt; WebCore\animation/KeyframeEffectReadOnly.cpp(707): error C2027: use of undefined type &apos;WebCore::FrameView&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436110</commentid>
    <comment_count>7</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-06-25 10:32:45 -0700</bug_when>
    <thetext>Looks like DocumentAnimationScheduler really is an undefined type on Windows:
- https://github.com/WebKit/webkit/blob/master/Source/WTF/wtf/Platform.h#L1138-L1140
- https://github.com/WebKit/webkit/blob/master/Source/WebCore/animation/DocumentAnimationScheduler.h#L28

So I think r233144 could be reversed in favor of three extra #ifs in Document.cpp (unless we wanted to make a stub implementation).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436179</commentid>
    <comment_count>8</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-06-25 12:24:29 -0700</bug_when>
    <thetext>(In reply to Ross Kirsling from comment #7)
&gt; Looks like DocumentAnimationScheduler really is an undefined type on Windows:
&gt; -
&gt; https://github.com/WebKit/webkit/blob/master/Source/WTF/wtf/Platform.h#L1138-
&gt; L1140
&gt; -
&gt; https://github.com/WebKit/webkit/blob/master/Source/WebCore/animation/
&gt; DocumentAnimationScheduler.h#L28
&gt; 
&gt; So I think r233144 could be reversed in favor of three extra #ifs in
&gt; Document.cpp (unless we wanted to make a stub implementation).

Thanks!  Just landed:

Committed r233163: &lt;https://trac.webkit.org/changeset/233163&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436221</commentid>
    <comment_count>9</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2018-06-25 13:34:28 -0700</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #8)
&gt; (In reply to Ross Kirsling from comment #7)
&gt; &gt; Looks like DocumentAnimationScheduler really is an undefined type on Windows:
&gt; &gt; -
&gt; &gt; https://github.com/WebKit/webkit/blob/master/Source/WTF/wtf/Platform.h#L1138-
&gt; &gt; L1140
&gt; &gt; -
&gt; &gt; https://github.com/WebKit/webkit/blob/master/Source/WebCore/animation/
&gt; &gt; DocumentAnimationScheduler.h#L28
&gt; &gt; 
&gt; &gt; So I think r233144 could be reversed in favor of three extra #ifs in
&gt; &gt; Document.cpp (unless we wanted to make a stub implementation).
&gt; 
&gt; Thanks!  Just landed:
&gt; 
&gt; Committed r233163: &lt;https://trac.webkit.org/changeset/233163&gt;

And:

Committed r233170: &lt; https://trac.webkit.org/changeset/233170&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1436224</commentid>
    <comment_count>10</comment_count>
    <who name="Ross Kirsling">ross.kirsling</who>
    <bug_when>2018-06-25 13:35:47 -0700</bug_when>
    <thetext>(In reply to David Kilzer (:ddkilzer) from comment #9)
&gt; (In reply to David Kilzer (:ddkilzer) from comment #8)
&gt; &gt; (In reply to Ross Kirsling from comment #7)
&gt; &gt; &gt; Looks like DocumentAnimationScheduler really is an undefined type on Windows:
&gt; &gt; &gt; -
&gt; &gt; &gt; https://github.com/WebKit/webkit/blob/master/Source/WTF/wtf/Platform.h#L1138-
&gt; &gt; &gt; L1140
&gt; &gt; &gt; -
&gt; &gt; &gt; https://github.com/WebKit/webkit/blob/master/Source/WebCore/animation/
&gt; &gt; &gt; DocumentAnimationScheduler.h#L28
&gt; &gt; &gt; 
&gt; &gt; &gt; So I think r233144 could be reversed in favor of three extra #ifs in
&gt; &gt; &gt; Document.cpp (unless we wanted to make a stub implementation).
&gt; &gt; 
&gt; &gt; Thanks!  Just landed:
&gt; &gt; 
&gt; &gt; Committed r233163: &lt;https://trac.webkit.org/changeset/233163&gt;
&gt; 
&gt; And:
&gt; 
&gt; Committed r233170: &lt; https://trac.webkit.org/changeset/233170&gt;

You beat me to the punch. :)
Apparently KeyframeEffectReadOnly.cpp had a legitimate separate issue, but builds should go green after this one.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>