[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 08:34:09 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 9505ecd09b6c80760d43ab2b5cbf7e2bcbe4b470
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Apr 12 21:13:32 2004 +0000

    	Fix for 3556036, make sure that when the position changes via style that all render layer
    	descendants simply immediately repaint.
    
            Reviewed by kocienda
    
            * khtml/rendering/render_layer.cpp:
            (RenderLayer::repaintIncludingDescendants):
            * khtml/rendering/render_layer.h:
            * khtml/rendering/render_object.cpp:
            (RenderObject::setStyle):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6354 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 32f82df..4b93c6e 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,16 @@
+2004-04-12  David Hyatt  <hyatt at apple.com>
+
+	Fix for 3556036, make sure that when the position changes via style that all render layer
+	descendants simply immediately repaint.
+	
+        Reviewed by kocienda
+	
+        * khtml/rendering/render_layer.cpp:
+        (RenderLayer::repaintIncludingDescendants):
+        * khtml/rendering/render_layer.h:
+        * khtml/rendering/render_object.cpp:
+        (RenderObject::setStyle):
+
 2004-04-12  Chris Blumenberg  <cblu at apple.com>
 
 	- Fixed build failure by removing references to WebArchive in WebCore.
diff --git a/WebCore/khtml/rendering/render_layer.cpp b/WebCore/khtml/rendering/render_layer.cpp
index 25c0030..8d9806f 100644
--- a/WebCore/khtml/rendering/render_layer.cpp
+++ b/WebCore/khtml/rendering/render_layer.cpp
@@ -1232,6 +1232,13 @@ void RenderLayer::collectLayers(QPtrVector<RenderLayer>*& posBuffer, QPtrVector<
     }
 }
 
+void RenderLayer::repaintIncludingDescendants()
+{
+    m_object->repaint();
+    for (RenderLayer* curr = firstChild(); curr; curr = curr->nextSibling())
+        curr->repaintIncludingDescendants();
+}
+
 void RenderLayer::styleChanged()
 {
     if (m_object->style()->overflow() == OMARQUEE && m_object->style()->marqueeBehavior() != MNONE) {
diff --git a/WebCore/khtml/rendering/render_layer.h b/WebCore/khtml/rendering/render_layer.h
index 3c355bf..652cc65 100644
--- a/WebCore/khtml/rendering/render_layer.h
+++ b/WebCore/khtml/rendering/render_layer.h
@@ -144,6 +144,8 @@ public:
     void removeOnlyThisLayer();
     void insertOnlyThisLayer();
 
+    void repaintIncludingDescendants();
+    
     void styleChanged();
     
     Marquee* marquee() const { return m_marquee; }
diff --git a/WebCore/khtml/rendering/render_object.cpp b/WebCore/khtml/rendering/render_object.cpp
index e16c724..2a62bd1 100644
--- a/WebCore/khtml/rendering/render_object.cpp
+++ b/WebCore/khtml/rendering/render_object.cpp
@@ -1378,6 +1378,9 @@ void RenderObject::setStyle(RenderStyle *style)
         // having an outline to not having an outline.
         repaint();
 
+    if (m_style && m_style->position() != style->position() && layer())
+        layer()->repaintIncludingDescendants();
+
     if (m_style && isFloating() && (m_style->floating() != style->floating()))
         // For changes in float styles, we need to conceivably remove ourselves
         // from the floating objects list.

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list