Title: [99896] trunk/Source/WebCore
- Revision
- 99896
- Author
- [email protected]
- Date
- 2011-11-10 13:44:28 -0800 (Thu, 10 Nov 2011)
Log Message
Do not share CSS style for MediaElement backed by a plugin
https://bugs.webkit.org/show_bug.cgi?id=72005
Reviewed by Simon Fraser.
With PLUGIN_PROXY_FOR_VIDEO, the RenderMedia elements are rendered through RenderBoxModelObject.
Like the embedded element, the proxied media element can gain a layer outside a change of style.
This patch prevents style sharing for the Audio and Video elements when PLUGIN_PROXY_FOR_VIDEO
is enabled.
This path is covered by exising tests. In particular, http/tests/misc/empty-urls.html
ASSERT() because of this.
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::canShareStyleWithElement):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (99895 => 99896)
--- trunk/Source/WebCore/ChangeLog 2011-11-10 21:41:04 UTC (rev 99895)
+++ trunk/Source/WebCore/ChangeLog 2011-11-10 21:44:28 UTC (rev 99896)
@@ -1,3 +1,22 @@
+2011-11-10 Benjamin Poulain <[email protected]>
+
+ Do not share CSS style for MediaElement backed by a plugin
+ https://bugs.webkit.org/show_bug.cgi?id=72005
+
+ Reviewed by Simon Fraser.
+
+ With PLUGIN_PROXY_FOR_VIDEO, the RenderMedia elements are rendered through RenderBoxModelObject.
+ Like the embedded element, the proxied media element can gain a layer outside a change of style.
+
+ This patch prevents style sharing for the Audio and Video elements when PLUGIN_PROXY_FOR_VIDEO
+ is enabled.
+
+ This path is covered by exising tests. In particular, http/tests/misc/empty-urls.html
+ ASSERT() because of this.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement):
+
2011-11-10 Dean Jackson <[email protected]>
Move/copy/merge SVG filter rendering code to generic rendering
Modified: trunk/Source/WebCore/css/CSSStyleSelector.cpp (99895 => 99896)
--- trunk/Source/WebCore/css/CSSStyleSelector.cpp 2011-11-10 21:41:04 UTC (rev 99895)
+++ trunk/Source/WebCore/css/CSSStyleSelector.cpp 2011-11-10 21:44:28 UTC (rev 99896)
@@ -1033,7 +1033,12 @@
#if USE(ACCELERATED_COMPOSITING)
// Turn off style sharing for elements that can gain layers for reasons outside of the style system.
// See comments in RenderObject::setStyle().
- if (element->hasTagName(iframeTag) || element->hasTagName(frameTag) || element->hasTagName(embedTag) || element->hasTagName(objectTag) || element->hasTagName(appletTag))
+ if (element->hasTagName(iframeTag) || element->hasTagName(frameTag) || element->hasTagName(embedTag) || element->hasTagName(objectTag) || element->hasTagName(appletTag)
+#if ENABLE(PLUGIN_PROXY_FOR_VIDEO)
+ // With proxying, the media elements are backed by a RenderEmbeddedObject.
+ || element->hasTagName(videoTag) || element->hasTagName(audioTag)
+#endif
+ )
return false;
#endif
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes