Title: [110718] trunk/Source/WebCore
- Revision
- 110718
- Author
- [email protected]
- Date
- 2012-03-14 11:29:32 -0700 (Wed, 14 Mar 2012)
Log Message
Make RenderIFrame::flattenFrame() return earlier, when frame flattening is disabled.
https://bugs.webkit.org/show_bug.cgi?id=80301
Patch by Zalan Bujtas <[email protected]> on 2012-03-14
Reviewed by Antti Koivisto.
Reorganize RenderIFrame flattenFrame() code, so that it returns
earlier for the normal use case, when frame flattening is disabled.
It also removes leftover null check.
No new tests, since there's no new functionality.
* rendering/RenderIFrame.cpp:
(WebCore::RenderIFrame::flattenFrame):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (110717 => 110718)
--- trunk/Source/WebCore/ChangeLog 2012-03-14 18:16:49 UTC (rev 110717)
+++ trunk/Source/WebCore/ChangeLog 2012-03-14 18:29:32 UTC (rev 110718)
@@ -1,3 +1,19 @@
+2012-03-14 Zalan Bujtas <[email protected]>
+
+ Make RenderIFrame::flattenFrame() return earlier, when frame flattening is disabled.
+ https://bugs.webkit.org/show_bug.cgi?id=80301
+
+ Reviewed by Antti Koivisto.
+
+ Reorganize RenderIFrame flattenFrame() code, so that it returns
+ earlier for the normal use case, when frame flattening is disabled.
+ It also removes leftover null check.
+
+ No new tests, since there's no new functionality.
+
+ * rendering/RenderIFrame.cpp:
+ (WebCore::RenderIFrame::flattenFrame):
+
2012-03-14 James Robinson <[email protected]>
[chromium] Provide explicit polling API to check if the platform is capable of accelerated 2d canvas
Modified: trunk/Source/WebCore/rendering/RenderIFrame.cpp (110717 => 110718)
--- trunk/Source/WebCore/rendering/RenderIFrame.cpp 2012-03-14 18:16:49 UTC (rev 110717)
+++ trunk/Source/WebCore/rendering/RenderIFrame.cpp 2012-03-14 18:29:32 UTC (rev 110718)
@@ -85,25 +85,21 @@
return false;
HTMLIFrameElement* element = static_cast<HTMLIFrameElement*>(node());
- bool isScrollable = element->scrollingMode() != ScrollbarAlwaysOff;
+ Frame* frame = element->document()->frame();
+ bool enabled = frame && frame->settings() && frame->settings()->frameFlatteningEnabled();
+
+ if (!enabled || !frame->page())
+ return false;
+
if (style()->width().isFixed() && style()->height().isFixed()) {
- if (!isScrollable)
+ // Do not flatten iframes with scrolling="no".
+ if (element->scrollingMode() == ScrollbarAlwaysOff)
return false;
if (style()->width().value() <= 0 || style()->height().value() <= 0)
return false;
}
- Frame* frame = element->document()->frame();
- bool enabled = frame && frame->settings() && frame->settings()->frameFlatteningEnabled();
-
- if (!enabled || !frame->page())
- return false;
-
- FrameView* view = frame->page()->mainFrame()->view();
- if (!view)
- return false;
-
// Do not flatten offscreen inner frames during frame flattening, as flattening might make them visible.
IntRect boundingRect = absoluteBoundingBoxRectIgnoringTransforms();
return boundingRect.maxX() > 0 && boundingRect.maxY() > 0;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes