Increase large animation cutoff
authorantti@apple.com <antti@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Apr 2017 12:57:40 +0000 (12:57 +0000)
committerantti@apple.com <antti@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 20 Apr 2017 12:57:40 +0000 (12:57 +0000)
https://bugs.webkit.org/show_bug.cgi?id=171051
<rdar://problem/31731532>

Reviewed by Andreas Kling.

We currently switch to per-frame decoding if the animation is larger than 5MB. This is very
power-inefficient and such animations are now common. The cutoff originates from 2007 (r20069),
it is time update it.

Note that the normal low memory handling will still kill animation frames as needed.

* platform/graphics/BitmapImage.h:

    Increase cutoff to 30MB. This is enough (with some room to spare) for animations on current
    tumblr.com/search/aww.

    Also remove the separate cutoff value for iOS.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@215557 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/platform/graphics/BitmapImage.h

index 42cf9aa..989c742 100644 (file)
@@ -1,3 +1,24 @@
+2017-04-20  Antti Koivisto  <antti@apple.com>
+
+        Increase large animation cutoff
+        https://bugs.webkit.org/show_bug.cgi?id=171051
+        <rdar://problem/31731532>
+
+        Reviewed by Andreas Kling.
+
+        We currently switch to per-frame decoding if the animation is larger than 5MB. This is very
+        power-inefficient and such animations are now common. The cutoff originates from 2007 (r20069),
+        it is time update it.
+
+        Note that the normal low memory handling will still kill animation frames as needed.
+
+        * platform/graphics/BitmapImage.h:
+
+            Increase cutoff to 30MB. This is enough (with some room to spare) for animations on current
+            tumblr.com/search/aww.
+
+            Also remove the separate cutoff value for iOS.
+
 2017-04-20  Zan Dobersek  <zdobersek@igalia.com>
 
         Register missing AES_CTR, ECDSA and HKDF algorithms in
index bdc5304..87cf6d5 100644 (file)
@@ -195,11 +195,7 @@ private:
     void dump(TextStream&) const override;
 
     // Animated images over a certain size are considered large enough that we'll only hang on to one frame at a time.
-#if !PLATFORM(IOS)
-    static const unsigned LargeAnimationCutoff = 5242880;
-#else
-    static const unsigned LargeAnimationCutoff = 2097152;
-#endif
+    static const unsigned LargeAnimationCutoff = 30 * 1014 * 1024;
 
     mutable ImageSource m_source;