<?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>167825</bug_id>
          
          <creation_ts>2017-02-03 20:18:52 -0800</creation_ts>
          <short_desc>Change the CSS animation timer a to be little more than 60fps to ensure we hit that frame rate</short_desc>
          <delta_ts>2017-02-06 14:00:15 -0800</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>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>dstockwell</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>thorton</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1273156</commentid>
    <comment_count>0</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-02-03 20:18:52 -0800</bug_when>
    <thetext>The system timer fires little bit slower than 60fps. This might cause the frame to be missed and hence can lower the frame rate significantly. The CSS animation frame rate on iOS is almost 40fps. The rAF timer was set to 15ms for the same reason. So we need to set the repeated CSS animation timer also to 15ms.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273164</commentid>
    <comment_count>1</comment_count>
      <attachid>300598</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-02-03 20:54:29 -0800</bug_when>
    <thetext>Created attachment 300598
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273665</commentid>
    <comment_count>2</comment_count>
      <attachid>300744</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-02-06 11:48:26 -0800</bug_when>
    <thetext>Created attachment 300744
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273668</commentid>
    <comment_count>3</comment_count>
      <attachid>300744</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-02-06 11:55:24 -0800</bug_when>
    <thetext>Comment on attachment 300744
Patch

This seems very fragile.  Is the plan to move this toward using the actual display link?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273684</commentid>
    <comment_count>4</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2017-02-06 12:25:25 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Comment on attachment 300744 [details]
&gt; Patch
&gt; 
&gt; This seems very fragile.  Is the plan to move this toward using the actual
&gt; display link?

I agree. And this is why I logged and created a patch for https://bugs.webkit.org/show_bug.cgi?id=167720. It makes the CSS animation controller a client of the DisplayRefreshMonitor. Instead of using a repeated timer, the CSS animation controller can schedule for the next display link firing.

But we have a bigger plan which will make all kinds of animations be controlled by one central  animation controller: https://bugs.webkit.org/show_bug.cgi?id=167899. The goal is be able to align animations with different frame rates properly.

So I do not think I am going to land https://bugs.webkit.org/show_bug.cgi?id=167720 since most likely this new code will be removed soon anyway.

In the mean time this patch fixes the frame rate of the CSS animation on iOS. We have been using a similar trick for rAF. Please see the definition of MinimumAnimationInterval in WebCore/dom/ScriptedAnimationController.cpp.

This fix is just a temporary one which we know it worked in the past.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273709</commentid>
    <comment_count>5</comment_count>
      <attachid>300744</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-06 14:00:11 -0800</bug_when>
    <thetext>Comment on attachment 300744
Patch

Clearing flags on attachment: 300744

Committed r211748: &lt;http://trac.webkit.org/changeset/211748&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1273711</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-02-06 14:00:15 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300598</attachid>
            <date>2017-02-03 20:54:29 -0800</date>
            <delta_ts>2017-02-06 11:48:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167825-20170203205213.patch</filename>
            <type>text/plain</type>
            <size>1553</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxMTY2NSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE3IEBACisyMDE3LTAyLTAzICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgQ2hhbmdlIHRo
ZSBDU1MgYW5pbWF0aW9uIHRpbWVyIGEgdG8gYmUgbGl0dGxlIG1vcmUgdGhhbiA2MGZwcyB0byBl
bnN1cmUgd2UgaGl0IHRoYXQgZnJhbWUgcmF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgVGhlIHN5c3RlbSB0aW1lciBmaXJlcyBsaXR0bGUgYml0IHNs
b3dlciB0aGFuIDYwZnBzLiBUaGlzIG1pZ2h0IGNhdXNlIHRoZQorICAgICAgICBmcmFtZSB0byBi
ZSBtaXNzZWQgYW5kIGhlbmNlIGNhbiBsb3dlciB0aGUgZnJhbWUgcmF0ZSBzaWduaWZpY2FudGx5
LiBUaGUgckFGCisgICAgICAgIHRpbWVyIHdhcyBzZXQgdG8gMTVtcyBmb3IgdGhlIHNhbWUgcmVh
c29uLiBTbyB3ZSBuZWVkIHRvIHNldCB0aGUgcmVwZWF0ZWQKKyAgICAgICAgQ1NTIGFuaW1hdGlv
biB0aW1lciBhbHNvIHRvIDE1bXMuCisKKyAgICAgICAgKiBwYWdlL2FuaW1hdGlvbi9BbmltYXRp
b25Db250cm9sbGVyLmNwcDoKKwogMjAxNy0wMi0wMyAgSm9zZXBoIFBlY29yYXJvICA8cGVjb3Jh
cm9AYXBwbGUuY29tPgogCiAgICAgICAgIFBlcmZvcm1hbmNlIFRpbWluZzogQ29udmVydCBXVEY6
Ok1vbm90b25pY1RpbWUgYW5kIFdURjo6U2Vjb25kcwpJbmRleDogU291cmNlL1dlYkNvcmUvcGFn
ZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHAKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNl
L1dlYkNvcmUvcGFnZS9hbmltYXRpb24vQW5pbWF0aW9uQ29udHJvbGxlci5jcHAJKHJldmlzaW9u
IDIxMTYzOSkKKysrIFNvdXJjZS9XZWJDb3JlL3BhZ2UvYW5pbWF0aW9uL0FuaW1hdGlvbkNvbnRy
b2xsZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00OCw3ICs0OCw4IEBACiAKIG5hbWVzcGFjZSBX
ZWJDb3JlIHsKIAotc3RhdGljIGNvbnN0IGRvdWJsZSBjQW5pbWF0aW9uVGltZXJEZWxheSA9IDEu
MCAvIDYwOworLy8gQWxsb3cgYSBsaXR0bGUgbW9yZSB0aGFuIDYwZnBzIHRvIG1ha2Ugc3VyZSB3
ZSBjYW4gYXQgbGVhc3QgaGl0IHRoYXQgZnJhbWUgcmF0ZS4KK3N0YXRpYyBjb25zdCBkb3VibGUg
Y0FuaW1hdGlvblRpbWVyRGVsYXkgPSAwLjAxNTsKIHN0YXRpYyBjb25zdCBkb3VibGUgY0JlZ2lu
QW5pbWF0aW9uVXBkYXRlVGltZU5vdFNldCA9IC0xOwogCiBjbGFzcyBBbmltYXRpb25Qcml2YXRl
VXBkYXRlQmxvY2sgewo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>300744</attachid>
            <date>2017-02-06 11:48:26 -0800</date>
            <delta_ts>2017-02-06 14:00:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-167825-20170206114605.patch</filename>
            <type>text/plain</type>
            <size>1734</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjExNzQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYzcwNjcwMGQzZWZlZDA3
MTIwNmY5MTM0OTU1NTFkY2Q5NzdhYjU3YS4uYzRhMGU5YWUwMjIzOWZmZTZmOTRkNzg5OTU2ZTA1
YjliNDIzZWMyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDE5IEBACiAyMDE3LTAyLTA2ICBTYWlk
IEFib3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CiAKKyAgICAgICAgQ2hhbmdl
IHRoZSBDU1MgYW5pbWF0aW9uIHRpbWVyIGEgdG8gYmUgbGl0dGxlIG1vcmUgdGhhbiA2MGZwcyB0
byBlbnN1cmUgd2UgaGl0IHRoYXQgZnJhbWUgcmF0ZQorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY3ODI1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgVGhlIHN5c3RlbSB0aW1lciBmaXJlcyBsaXR0bGUgYml0
IHNsb3dlciB0aGFuIDYwZnBzLiBUaGlzIG1pZ2h0IGNhdXNlIHRoZQorICAgICAgICBmcmFtZSB0
byBiZSBtaXNzZWQgYW5kIGhlbmNlIGl0IGNhbiBsb3dlciB0aGUgZnJhbWUgcmF0ZSBzaWduaWZp
Y2FudGx5LiBUaGUKKyAgICAgICAgckFGIHRpbWVyIHdhcyBzZXQgdG8gMTVtcyBmb3IgdGhlIHNh
bWUgcmVhc29uLiBTbyBzZXQgdGhlIHJlcGVhdGVkIENTUworICAgICAgICBhbmltYXRpb24gdGlt
ZXIgYWxzbyB0byAxNW1zLgorCisgICAgICAgICogcGFnZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9u
Q29udHJvbGxlci5jcHA6CisKKzIwMTctMDItMDYgIFNhaWQgQWJvdS1IYWxsYXdhICA8c2Fib3Vo
YWxsYXdhQGFwcGxlLmNvbT4KKwogICAgICAgICBSZW5hbWUgQW5pbWF0aW9uQ29udHJvbGxlciB0
byBDU1NBbmltYXRpb25Db250cm9sbGVyCiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjc4MjkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGFn
ZS9hbmltYXRpb24vQ1NTQW5pbWF0aW9uQ29udHJvbGxlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
YWdlL2FuaW1hdGlvbi9DU1NBbmltYXRpb25Db250cm9sbGVyLmNwcAppbmRleCA2OTlkMjM5ZTNh
NGFjM2Q1NTljMmZhMjYzNjkwMTE3MDI2MmFmM2M0Li4zNzFkY2RlYTM4MDgwZjFiZWNiZThjODYw
YTBlNzJmMjIzMDIzNDU2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wYWdlL2FuaW1hdGlv
bi9DU1NBbmltYXRpb25Db250cm9sbGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wYWdlL2Fu
aW1hdGlvbi9DU1NBbmltYXRpb25Db250cm9sbGVyLmNwcApAQCAtNDgsNyArNDgsOCBAQAogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKLXN0YXRpYyBjb25zdCBkb3VibGUgY0FuaW1hdGlvblRpbWVy
RGVsYXkgPSAxLjAgLyA2MDsKKy8vIEFsbG93IGEgbGl0dGxlIG1vcmUgdGhhbiA2MGZwcyB0byBt
YWtlIHN1cmUgd2UgY2FuIGF0IGxlYXN0IGhpdCB0aGF0IGZyYW1lIHJhdGUuCitzdGF0aWMgY29u
c3QgZG91YmxlIGNBbmltYXRpb25UaW1lckRlbGF5ID0gMC4wMTU7CiBzdGF0aWMgY29uc3QgZG91
YmxlIGNCZWdpbkFuaW1hdGlvblVwZGF0ZVRpbWVOb3RTZXQgPSAtMTsKIAogY2xhc3MgQW5pbWF0
aW9uUHJpdmF0ZVVwZGF0ZUJsb2NrIHsK
</data>

          </attachment>
      

    </bug>

</bugzilla>