[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
hyatt
hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:35:49 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 8daada39f23489d5031ab2bff01b10a46b6be67c
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Sep 2 23:35:53 2002 +0000
Tweak the damage rect testing to account for the fact that a child
layer may fall entirely outside the bounds of its parent layer.
* khtml/rendering/render_layer.cpp:
(RenderLayer::constructZTree):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@1949 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index e308002..599c1c5 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,3 +1,11 @@
+2002-09-02 David Hyatt <hyatt at apple.com>
+
+ Tweak the damage rect testing to account for the fact that a child
+ layer may fall entirely outside the bounds of its parent layer.
+
+ * khtml/rendering/render_layer.cpp:
+ (RenderLayer::constructZTree):
+
2002-08-31 Darin Adler <darin at apple.com>
- fixed 3038336 -- repro crash in QTextDecoder trying to display UTF-16 file
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index e308002..599c1c5 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,11 @@
+2002-09-02 David Hyatt <hyatt at apple.com>
+
+ Tweak the damage rect testing to account for the fact that a child
+ layer may fall entirely outside the bounds of its parent layer.
+
+ * khtml/rendering/render_layer.cpp:
+ (RenderLayer::constructZTree):
+
2002-08-31 Darin Adler <darin at apple.com>
- fixed 3038336 -- repro crash in QTextDecoder trying to display UTF-16 file
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index e308002..599c1c5 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,11 @@
+2002-09-02 David Hyatt <hyatt at apple.com>
+
+ Tweak the damage rect testing to account for the fact that a child
+ layer may fall entirely outside the bounds of its parent layer.
+
+ * khtml/rendering/render_layer.cpp:
+ (RenderLayer::constructZTree):
+
2002-08-31 Darin Adler <darin at apple.com>
- fixed 3038336 -- repro crash in QTextDecoder trying to display UTF-16 file
diff --git a/WebCore/khtml/rendering/render_layer.cpp b/WebCore/khtml/rendering/render_layer.cpp
index dc851b2..07424a6 100644
--- a/WebCore/khtml/rendering/render_layer.cpp
+++ b/WebCore/khtml/rendering/render_layer.cpp
@@ -128,10 +128,13 @@ RenderLayer::constructZTree(const QRect& damageRect,
// Compute this layer's absolute position, so that we can compare it with our
// damage rect and avoid repainting the layer if it falls outside that rect.
+ // If we have overhanging contents, we can't just bail, since we may need to paint
+ // our child layers (they may fall outside our bounds and therefore might still
+ // intersect the damage rect).
int x, y;
convertToLayerCoords(rootLayer, x, y);
QRect layerBounds(x, y, width(), height());
- if (!layerBounds.intersects(damageRect))
+ if (!layerBounds.intersects(damageRect) && !m_object->overhangingContents())
return 0;
// Compute our coordinates relative to the layer being painted.
@@ -153,16 +156,18 @@ RenderLayer::constructZTree(const QRect& damageRect,
}
}
- // Now add a leaf node for ourselves.
- RenderLayerElement* layerElt = new RenderLayerElement(this, layerBounds, x, y);
- if (returnNode->child) {
- RenderZTreeNode* leaf = new RenderZTreeNode(layerElt);
- leaf->next = returnNode->child;
- returnNode->child = leaf;
+ // Now add a leaf node for ourselves, but only if we overlap the damage rect.
+ if (layerBounds.intersects(damageRect)) {
+ RenderLayerElement* layerElt = new RenderLayerElement(this, layerBounds, x, y);
+ if (returnNode->child) {
+ RenderZTreeNode* leaf = new RenderZTreeNode(layerElt);
+ leaf->next = returnNode->child;
+ returnNode->child = leaf;
+ }
+ else
+ returnNode->layerElement = layerElt;
}
- else
- returnNode->layerElement = layerElt;
-
+
// Now look for children that have a negative z-index.
for (RenderLayer* child = firstChild(); child; child = child->nextSibling()) {
if (child->zIndex() >= 0)
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list