Title: [149123] trunk/Source
- Revision
- 149123
- Author
- [email protected]
- Date
- 2013-04-25 11:19:05 -0700 (Thu, 25 Apr 2013)
Log Message
[Qt] Animated opacity does not trigger accelerated compositing
https://bugs.webkit.org/show_bug.cgi?id=115107
Reviewed by Simon Fraser.
Source/WebCore:
Add extra option to also trigger compositing on animated opacity.
* page/ChromeClient.h:
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
Source/WebKit/qt:
We should trigger compositing on animated opacity as it is always faster on Qt.
* WebCoreSupport/ChromeClientQt.cpp:
VideoTrigger removed because we have already disabled AC for video in qwebsettings.
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (149122 => 149123)
--- trunk/Source/WebCore/ChangeLog 2013-04-25 18:09:10 UTC (rev 149122)
+++ trunk/Source/WebCore/ChangeLog 2013-04-25 18:19:05 UTC (rev 149123)
@@ -1,3 +1,16 @@
+2013-04-25 Allan Sandfeld Jensen <[email protected]>
+
+ [Qt] Animated opacity does not trigger accelerated compositing
+ https://bugs.webkit.org/show_bug.cgi?id=115107
+
+ Reviewed by Simon Fraser.
+
+ Add extra option to also trigger compositing on animated opacity.
+
+ * page/ChromeClient.h:
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
+
2013-04-25 Lamarque V. Souza <[email protected]>
Sec-WebSocket-Extensions header field must not appear more than once in an HTTP response.
Modified: trunk/Source/WebCore/page/ChromeClient.h (149122 => 149123)
--- trunk/Source/WebCore/page/ChromeClient.h 2013-04-25 18:09:10 UTC (rev 149122)
+++ trunk/Source/WebCore/page/ChromeClient.h 2013-04-25 18:19:05 UTC (rev 149123)
@@ -279,6 +279,7 @@
AnimationTrigger = 1 << 4,
FilterTrigger = 1 << 5,
ScrollableInnerFrameTrigger = 1 << 6,
+ AnimatedOpacityTrigger = 1 << 7,
AllTriggers = 0xFFFFFFFF
};
typedef unsigned CompositingTriggerFlags;
Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (149122 => 149123)
--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2013-04-25 18:09:10 UTC (rev 149122)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2013-04-25 18:19:05 UTC (rev 149123)
@@ -2107,7 +2107,8 @@
return false;
if (AnimationController* animController = renderer->animation()) {
- return (animController->isRunningAnimationOnRenderer(renderer, CSSPropertyOpacity) && inCompositingMode())
+ return (animController->isRunningAnimationOnRenderer(renderer, CSSPropertyOpacity)
+ && (inCompositingMode() || (m_compositingTriggers & ChromeClient::AnimatedOpacityTrigger)))
#if ENABLE(CSS_FILTERS)
#if !PLATFORM(MAC) || (!PLATFORM(IOS) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1080)
// <rdar://problem/10907251> - WebKit2 doesn't support CA animations of CI filters on Lion and below
Modified: trunk/Source/WebKit/qt/ChangeLog (149122 => 149123)
--- trunk/Source/WebKit/qt/ChangeLog 2013-04-25 18:09:10 UTC (rev 149122)
+++ trunk/Source/WebKit/qt/ChangeLog 2013-04-25 18:19:05 UTC (rev 149123)
@@ -1,3 +1,15 @@
+2013-04-25 Allan Sandfeld Jensen <[email protected]>
+
+ [Qt] Animated opacity does not trigger accelerated compositing
+ https://bugs.webkit.org/show_bug.cgi?id=115107
+
+ Reviewed by Simon Fraser.
+
+ We should trigger compositing on animated opacity as it is always faster on Qt.
+
+ * WebCoreSupport/ChromeClientQt.cpp:
+ VideoTrigger removed because we have already disabled AC for video in qwebsettings.
+
2013-04-23 Allan Sandfeld Jensen <[email protected]>
[Qt][WK1] MemoryCache is not cleaned by default
Modified: trunk/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp (149122 => 149123)
--- trunk/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp 2013-04-25 18:09:10 UTC (rev 149122)
+++ trunk/Source/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp 2013-04-25 18:19:05 UTC (rev 149123)
@@ -655,7 +655,7 @@
ChromeClient::CompositingTriggerFlags ChromeClientQt::allowedCompositingTriggers() const
{
if (allowsAcceleratedCompositing())
- return ThreeDTransformTrigger | VideoTrigger | CanvasTrigger | AnimationTrigger;
+ return ThreeDTransformTrigger | CanvasTrigger | AnimationTrigger | AnimatedOpacityTrigger;
return 0;
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes