Title: [107024] trunk/Source/WebCore
- Revision
- 107024
- Author
- e...@google.com
- Date
- 2012-02-07 18:47:50 -0800 (Tue, 07 Feb 2012)
Log Message
Properly detect top level frames when propogating compositing
https://bugs.webkit.org/show_bug.cgi?id=78033
Reviewed by James Robinson.
There's no need to enumerate all tag names when searching for a
top-level frame. If a render view's document has a frame, then that
frame is not the top-level one.
* rendering/RenderLayerCompositor.cpp:
(WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
* rendering/RenderLayerCompositor.h:
(RenderLayerCompositor):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (107023 => 107024)
--- trunk/Source/WebCore/ChangeLog 2012-02-08 02:21:04 UTC (rev 107023)
+++ trunk/Source/WebCore/ChangeLog 2012-02-08 02:47:50 UTC (rev 107024)
@@ -1,3 +1,19 @@
+2012-02-07 Adrienne Walker <e...@google.com>
+
+ Properly detect top level frames when propogating compositing
+ https://bugs.webkit.org/show_bug.cgi?id=78033
+
+ Reviewed by James Robinson.
+
+ There's no need to enumerate all tag names when searching for a
+ top-level frame. If a render view's document has a frame, then that
+ frame is not the top-level one.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
+ * rendering/RenderLayerCompositor.h:
+ (RenderLayerCompositor):
+
2012-02-07 Chris Palmer <pal...@google.com>
Resolve crash in FrameLoader::checkTimerFired.
Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp (107023 => 107024)
--- trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2012-02-08 02:21:04 UTC (rev 107023)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.cpp 2012-02-08 02:47:50 UTC (rev 107024)
@@ -1261,7 +1261,7 @@
// Parent document content needs to be able to render on top of a composited frame, so correct behavior
// is to have the parent document become composited too. However, this can cause problems on platforms that
// use native views for frames (like Mac), so disable that behavior on those platforms for now.
- HTMLFrameOwnerElement* ownerElement = enclosingFrameElement();
+ HTMLFrameOwnerElement* ownerElement = m_renderView->document()->ownerElement();
RenderObject* renderer = ownerElement ? ownerElement->renderer() : 0;
// If we are the top-level frame, don't propagate.
@@ -1292,14 +1292,6 @@
return false;
}
-HTMLFrameOwnerElement* RenderLayerCompositor::enclosingFrameElement() const
-{
- if (HTMLFrameOwnerElement* ownerElement = m_renderView->document()->ownerElement())
- return (ownerElement->hasTagName(iframeTag) || ownerElement->hasTagName(frameTag) || ownerElement->hasTagName(objectTag)) ? ownerElement : 0;
-
- return 0;
-}
-
bool RenderLayerCompositor::needsToBeComposited(const RenderLayer* layer) const
{
if (!canBeComposited(layer))
Modified: trunk/Source/WebCore/rendering/RenderLayerCompositor.h (107023 => 107024)
--- trunk/Source/WebCore/rendering/RenderLayerCompositor.h 2012-02-08 02:21:04 UTC (rev 107023)
+++ trunk/Source/WebCore/rendering/RenderLayerCompositor.h 2012-02-08 02:47:50 UTC (rev 107024)
@@ -178,8 +178,6 @@
static bool allowsIndependentlyCompositedFrames(const FrameView*);
bool shouldPropagateCompositingToEnclosingFrame() const;
- HTMLFrameOwnerElement* enclosingFrameElement() const;
-
static RenderLayerCompositor* frameContentsCompositor(RenderPart*);
// Return true if the layers changed.
static bool parentFrameContentLayers(RenderPart*);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes