Title: [163188] trunk/Source/WebCore
- Revision
- 163188
- Author
- [email protected]
- Date
- 2014-01-31 12:56:06 -0800 (Fri, 31 Jan 2014)
Log Message
Unreviewed, rolling out r163182.
http://trac.webkit.org/changeset/163182
https://bugs.webkit.org/show_bug.cgi?id=128012
Broke lots of tests (Requested by smfr on #webkit).
* page/FrameView.cpp:
(WebCore::FrameView::visibleContentsResized):
* page/FrameView.h:
* rendering/RenderView.cpp:
(WebCore::isFixedPositionInViewport):
(WebCore::RenderView::hasCustomFixedPosition):
* rendering/RenderView.h:
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (163187 => 163188)
--- trunk/Source/WebCore/ChangeLog 2014-01-31 20:50:57 UTC (rev 163187)
+++ trunk/Source/WebCore/ChangeLog 2014-01-31 20:56:06 UTC (rev 163188)
@@ -1,3 +1,19 @@
+2014-01-31 Commit Queue <[email protected]>
+
+ Unreviewed, rolling out r163182.
+ http://trac.webkit.org/changeset/163182
+ https://bugs.webkit.org/show_bug.cgi?id=128012
+
+ Broke lots of tests (Requested by smfr on #webkit).
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::visibleContentsResized):
+ * page/FrameView.h:
+ * rendering/RenderView.cpp:
+ (WebCore::isFixedPositionInViewport):
+ (WebCore::RenderView::hasCustomFixedPosition):
+ * rendering/RenderView.h:
+
2014-01-31 Brady Eidson <[email protected]>
IDB: openCursor() needs to prime the cursor with first position values
Modified: trunk/Source/WebCore/page/FrameView.cpp (163187 => 163188)
--- trunk/Source/WebCore/page/FrameView.cpp 2014-01-31 20:50:57 UTC (rev 163187)
+++ trunk/Source/WebCore/page/FrameView.cpp 2014-01-31 20:56:06 UTC (rev 163188)
@@ -2139,11 +2139,6 @@
ScrollView::fixedLayoutSizeChanged();
}
-bool FrameView::shouldLayoutAfterViewportChange() const
-{
- return hasViewportConstrainedObjects() && (!useFixedLayout() || useCustomFixedPositionLayoutRect());
-}
-
void FrameView::visibleContentsResized()
{
// We check to make sure the view is attached to a frame() as this method can
@@ -2165,7 +2160,7 @@
}
#endif
- if (shouldLayoutAfterViewportChange() && needsLayout())
+ if (!useFixedLayout() && needsLayout())
layout();
if (RenderView* renderView = this->renderView()) {
Modified: trunk/Source/WebCore/page/FrameView.h (163187 => 163188)
--- trunk/Source/WebCore/page/FrameView.h 2014-01-31 20:50:57 UTC (rev 163187)
+++ trunk/Source/WebCore/page/FrameView.h 2014-01-31 20:56:06 UTC (rev 163188)
@@ -129,8 +129,6 @@
IntRect customFixedPositionLayoutRect() const { return m_customFixedPositionLayoutRect; }
void setCustomFixedPositionLayoutRect(const IntRect&);
bool updateFixedPositionLayoutRect();
-#else
- bool useCustomFixedPositionLayoutRect() const { return false; }
#endif
#if ENABLE(REQUEST_ANIMATION_FRAME)
@@ -481,7 +479,6 @@
bool useSlowRepaintsIfNotOverlapped() const;
void updateCanBlitOnScrollRecursively();
bool contentsInCompositedLayer() const;
- bool shouldLayoutAfterViewportChange() const;
bool shouldUpdateCompositingLayersAfterScrolling() const;
Modified: trunk/Source/WebCore/rendering/RenderView.cpp (163187 => 163188)
--- trunk/Source/WebCore/rendering/RenderView.cpp 2014-01-31 20:50:57 UTC (rev 163187)
+++ trunk/Source/WebCore/rendering/RenderView.cpp 2014-01-31 20:56:06 UTC (rev 163188)
@@ -1197,6 +1197,24 @@
return *m_flowThreadController;
}
+#if PLATFORM(IOS)
+static bool isFixedPositionInViewport(const RenderObject& renderer, const RenderObject* container)
+{
+ return (renderer.style().position() == FixedPosition) && renderer.container() == container;
+}
+
+bool RenderView::hasCustomFixedPosition(const RenderObject& renderer, ContainingBlockCheck checkContainer) const
+{
+ if (!frameView().useCustomFixedPositionLayoutRect())
+ return false;
+
+ if (checkContainer == CheckContainingBlock)
+ return isFixedPositionInViewport(renderer, this);
+
+ return renderer.style().position() == FixedPosition;
+}
+#endif
+
void RenderView::pushLayoutStateForCurrentFlowThread(const RenderObject& object)
{
if (!m_flowThreadController)
Modified: trunk/Source/WebCore/rendering/RenderView.h (163187 => 163188)
--- trunk/Source/WebCore/rendering/RenderView.h 2014-01-31 20:50:57 UTC (rev 163187)
+++ trunk/Source/WebCore/rendering/RenderView.h 2014-01-31 20:56:06 UTC (rev 163188)
@@ -191,6 +191,11 @@
virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) override;
+#if PLATFORM(IOS)
+ enum ContainingBlockCheck { CheckContainingBlock, DontCheckContainingBlock };
+ bool hasCustomFixedPosition(const RenderObject&, ContainingBlockCheck = CheckContainingBlock) const;
+#endif
+
IntervalArena* intervalArena();
IntSize viewportSize() const;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes