[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 07:21:37 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit e2b1409fd9d739e893ac185e0ecf61d2acbb7e40
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Jan 23 23:33:39 2003 +0000

    	Fix for 3144763, inlines clear too many floats, and jump all the
    	way to the end of the lowest float instead of only moving as far
    	down as they have to in order to fit.
    
            Reviewed by darin
    
            * khtml/rendering/bidi.cpp:
            (RenderFlow::findNextLineBreak):
            * khtml/rendering/render_flow.cpp:
            (RenderFlow::nearestFloatBottom):
            * khtml/rendering/render_flow.h:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3434 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index f2a8ce3..50352b4 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,17 @@
+2003-01-23  David Hyatt  <hyatt at apple.com>
+
+	Fix for 3144763, inlines clear too many floats, and jump all the
+	way to the end of the lowest float instead of only moving as far
+	down as they have to in order to fit.
+	
+        Reviewed by darin
+
+        * khtml/rendering/bidi.cpp:
+        (RenderFlow::findNextLineBreak):
+        * khtml/rendering/render_flow.cpp:
+        (RenderFlow::nearestFloatBottom):
+        * khtml/rendering/render_flow.h:
+
 2003-01-23  Darin Adler  <darin at apple.com>
 
         Reviewed by John.
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index f2a8ce3..50352b4 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,17 @@
+2003-01-23  David Hyatt  <hyatt at apple.com>
+
+	Fix for 3144763, inlines clear too many floats, and jump all the
+	way to the end of the lowest float instead of only moving as far
+	down as they have to in order to fit.
+	
+        Reviewed by darin
+
+        * khtml/rendering/bidi.cpp:
+        (RenderFlow::findNextLineBreak):
+        * khtml/rendering/render_flow.cpp:
+        (RenderFlow::nearestFloatBottom):
+        * khtml/rendering/render_flow.h:
+
 2003-01-23  Darin Adler  <darin at apple.com>
 
         Reviewed by John.
diff --git a/WebCore/khtml/rendering/bidi.cpp b/WebCore/khtml/rendering/bidi.cpp
index 05351a4..1110230 100644
--- a/WebCore/khtml/rendering/bidi.cpp
+++ b/WebCore/khtml/rendering/bidi.cpp
@@ -1323,7 +1323,7 @@ BidiIterator RenderFlow::findNextLineBreak(BidiIterator &start, QPtrList<BidiIte
                     kdDebug(6041) << "found space at " << pos << " in string '" << QString( str, strlen ).latin1() << "' adding " << tmpW << " new width = " << w << endl;
 #endif
                     if ( !isPre && w + tmpW > width && w == 0 ) {
-                        int fb = floatBottom();
+                        int fb = nearestFloatBottom(m_height);
                         int newLineWidth = lineWidth(fb);
                         if(!w && m_height < fb && width < newLineWidth) {
                             m_height = fb;
@@ -1411,7 +1411,7 @@ BidiIterator RenderFlow::findNextLineBreak(BidiIterator &start, QPtrList<BidiIte
             if (sawSpace && !ignoringSpaces && o->style()->whiteSpace() != PRE)
                 trailingSpaceObject = 0;
             
-            int fb = floatBottom();
+            int fb = nearestFloatBottom(m_height);
             int newLineWidth = lineWidth(fb);
             if( !w && m_height < fb && width < newLineWidth ) {
                 m_height = fb;
diff --git a/WebCore/khtml/rendering/render_flow.cpp b/WebCore/khtml/rendering/render_flow.cpp
index 430c4de..cdad1c3 100644
--- a/WebCore/khtml/rendering/render_flow.cpp
+++ b/WebCore/khtml/rendering/render_flow.cpp
@@ -1082,6 +1082,19 @@ RenderFlow::lineWidth(int y) const
 }
 
 int
+RenderFlow::nearestFloatBottom(int height) const
+{
+    if (!specialObjects) return 0;
+    int bottom=0;
+    SpecialObject* r;
+    QPtrListIterator<SpecialObject> it(*specialObjects);
+    for ( ; (r = it.current()); ++it )
+        if (r->endY>height && (r->endY<bottom || bottom==0) && (int)r->type <= (int)SpecialObject::FloatRight)
+            bottom=r->endY;
+    return bottom;
+}
+
+int
 RenderFlow::floatBottom() const
 {
     if (!specialObjects) return 0;
diff --git a/WebCore/khtml/rendering/render_flow.h b/WebCore/khtml/rendering/render_flow.h
index 1b035a8..4a41f86 100644
--- a/WebCore/khtml/rendering/render_flow.h
+++ b/WebCore/khtml/rendering/render_flow.h
@@ -135,6 +135,7 @@ protected:
     void layoutSpecialObjects( bool relayoutChildren );
 
 public:
+    int nearestFloatBottom(int height) const;
     int floatBottom() const;
     inline int leftBottom();
     inline int rightBottom();

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list