[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
tony at chromium.org
tony at chromium.org
Wed Dec 22 15:16:31 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 5bf0386baeee9645621981c8febb2b5b1492e8a2
Author: tony at chromium.org <tony at chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Oct 29 17:32:33 2010 +0000
2010-10-29 Tony Chang <tony at chromium.org>
Unreviewed, rolling out r70850.
http://trac.webkit.org/changeset/70850
https://bugs.webkit.org/show_bug.cgi?id=45640
chromium and qt pixel test regressions
* dom/Document.cpp:
* dom/Document.h:
* page/FrameView.cpp:
(WebCore::FrameView::invalidateRect):
(WebCore::FrameView::repaintContentRectangle):
(WebCore::FrameView::doDeferredRepaints):
* page/FrameView.h:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintContents):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::paintLayer):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70896 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 4cc3c7d..3230b2e 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,23 @@
+2010-10-29 Tony Chang <tony at chromium.org>
+
+ Unreviewed, rolling out r70850.
+ http://trac.webkit.org/changeset/70850
+ https://bugs.webkit.org/show_bug.cgi?id=45640
+
+ chromium and qt pixel test regressions
+
+ * dom/Document.cpp:
+ * dom/Document.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::invalidateRect):
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::doDeferredRepaints):
+ * page/FrameView.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintContents):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintLayer):
+
2010-10-29 Alexey Proskuryakov <ap at apple.com>
Reviewed by Darin Adler.
diff --git a/WebCore/dom/Document.cpp b/WebCore/dom/Document.cpp
index 3763a62..36b080a 100644
--- a/WebCore/dom/Document.cpp
+++ b/WebCore/dom/Document.cpp
@@ -4795,11 +4795,4 @@ PassRefPtr<TouchList> Document::createTouchList(ExceptionCode&) const
}
#endif
-bool Document::mayCauseFlashOfUnstyledContent() const
-{
- if (didLayoutWithPendingStylesheets())
- return true;
- return !body() && (isHTMLDocument() || isXHTMLDocument());
-}
-
} // namespace WebCore
diff --git a/WebCore/dom/Document.h b/WebCore/dom/Document.h
index c7df606..1334aa3 100644
--- a/WebCore/dom/Document.h
+++ b/WebCore/dom/Document.h
@@ -1045,7 +1045,6 @@ public:
PassRefPtr<TouchList> createTouchList(ExceptionCode&) const;
#endif
- bool mayCauseFlashOfUnstyledContent() const;
protected:
Document(Frame*, const KURL& url, bool isXHTML, bool isHTML, const KURL& baseURL = KURL());
diff --git a/WebCore/page/FrameView.cpp b/WebCore/page/FrameView.cpp
index 532d572..2708ce5 100644
--- a/WebCore/page/FrameView.cpp
+++ b/WebCore/page/FrameView.cpp
@@ -303,7 +303,7 @@ bool FrameView::didFirstLayout() const
void FrameView::invalidateRect(const IntRect& rect)
{
if (!parent()) {
- if (hostWindow() && shouldUpdate())
+ if (hostWindow())
hostWindow()->invalidateContentsAndWindow(rect, false /*immediate*/);
return;
}
@@ -1225,7 +1225,7 @@ void FrameView::repaintContentRectangle(const IntRect& r, bool immediate)
return;
}
- if (!shouldUpdate(immediate))
+ if (!immediate && isOffscreen() && !shouldUpdateWhileOffscreen())
return;
#if ENABLE(TILED_BACKING_STORE)
@@ -1299,7 +1299,7 @@ void FrameView::checkStopDelayingDeferredRepaints()
void FrameView::doDeferredRepaints()
{
ASSERT(!m_deferringRepaints);
- if (!shouldUpdate()) {
+ if (isOffscreen() && !shouldUpdateWhileOffscreen()) {
m_repaintRects.clear();
m_repaintCount = 0;
return;
@@ -1540,15 +1540,6 @@ void FrameView::setShouldUpdateWhileOffscreen(bool shouldUpdateWhileOffscreen)
m_shouldUpdateWhileOffscreen = shouldUpdateWhileOffscreen;
}
-bool FrameView::shouldUpdate(bool immediateRequested) const
-{
- if (!immediateRequested && isOffscreen() && !shouldUpdateWhileOffscreen())
- return false;
- if (!m_frame || !m_frame->document() || m_frame->document()->mayCauseFlashOfUnstyledContent())
- return false;
- return true;
-}
-
void FrameView::scheduleEvent(PassRefPtr<Event> event, PassRefPtr<Node> eventTarget)
{
if (!m_enqueueEvents) {
diff --git a/WebCore/page/FrameView.h b/WebCore/page/FrameView.h
index 53f1a5a..f9212c1 100644
--- a/WebCore/page/FrameView.h
+++ b/WebCore/page/FrameView.h
@@ -134,7 +134,6 @@ public:
bool shouldUpdateWhileOffscreen() const;
void setShouldUpdateWhileOffscreen(bool);
- bool shouldUpdate(bool = false) const;
void adjustViewSize();
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index 6bf0629..47ec220 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -2223,7 +2223,7 @@ void RenderBlock::paintContents(PaintInfo& paintInfo, int tx, int ty)
// Avoid painting descendants of the root element when stylesheets haven't loaded. This eliminates FOUC.
// It's ok not to draw, because later on, when all the stylesheets do load, updateStyleSelector on the Document
// will do a full repaint().
- if (document()->mayCauseFlashOfUnstyledContent() && !isRenderView())
+ if (document()->didLayoutWithPendingStylesheets() && !isRenderView())
return;
if (childrenInline())
diff --git a/WebCore/rendering/RenderLayer.cpp b/WebCore/rendering/RenderLayer.cpp
index b3270a6..4e8ceec 100644
--- a/WebCore/rendering/RenderLayer.cpp
+++ b/WebCore/rendering/RenderLayer.cpp
@@ -2356,7 +2356,7 @@ void RenderLayer::paintLayer(RenderLayer* rootLayer, GraphicsContext* p,
// Avoid painting layers when stylesheets haven't loaded. This eliminates FOUC.
// It's ok not to draw, because later on, when all the stylesheets do load, updateStyleSelector on the Document
// will do a full repaint().
- if (renderer()->document()->mayCauseFlashOfUnstyledContent() && !renderer()->isRenderView() && !renderer()->isRoot())
+ if (renderer()->document()->didLayoutWithPendingStylesheets() && !renderer()->isRenderView() && !renderer()->isRoot())
return;
// If this layer is totally invisible then there is nothing to paint.
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list