2009-01-12 Simon Fraser <simon.fraser@apple.com>
Reviewed by Dan Bernstein
https://bugs.webkit.org/show_bug.cgi?id=23220
Merge layoutDelta into LayoutState. This requires that we
push even when layoutState is disabled, so that layoutDelta
can still be stored.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@39834 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/rendering/bidi.cpp b/WebCore/rendering/bidi.cpp
index 6ff2d59..38cbdb0 100644
--- a/WebCore/rendering/bidi.cpp
+++ b/WebCore/rendering/bidi.cpp
@@ -867,14 +867,13 @@
if (fullLayout && !selfNeedsLayout()) {
setNeedsLayout(true, false); // Mark ourselves as needing a full layout. This way we'll repaint like
// we're supposed to.
- if (!document()->view()->needsFullRepaint() && m_layer) {
+ RenderView* v = view();
+ if (v && !v->doingFullRepaint() && m_layer) {
// Because we waited until we were already inside layout to discover
// that the block really needed a full layout, we missed our chance to repaint the layer
// before layout started. Luckily the layer has cached the repaint rect for its original
// position and size, and so we can use that to make a repaint happen now.
- RenderView* c = view();
- if (c && !c->printing())
- c->repaintViewRectangle(m_layer->repaintRect());
+ v->repaintViewRectangle(m_layer->repaintRect());
}
}