[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:16:46 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit 1414a071bdb0c2201071ff2db88ad30be11d3e09
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Dec 8 23:50:26 2003 +0000

    	Fix for 3503022, asahi.com is too wide.  Bugs in line breaking of breakable Japanese characters caused
    	the breaks to be ignored.
    
            Reviewed by john
    
            * khtml/rendering/render_text.cpp:
            (RenderText::calcMinMaxWidth):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5718 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 0480e1d..dcb2381 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,13 @@
+2003-12-08  David Hyatt  <hyatt at apple.com>
+
+	Fix for 3503022, asahi.com is too wide.  Bugs in line breaking of breakable Japanese characters caused
+	the breaks to be ignored.
+	
+        Reviewed by john
+
+        * khtml/rendering/render_text.cpp:
+        (RenderText::calcMinMaxWidth):
+
 2003-12-05  David Hyatt  <hyatt at apple.com>
 
 	Fix the position method to return screen coords like it should and to use the lower left corner instead of
diff --git a/WebCore/khtml/rendering/render_text.cpp b/WebCore/khtml/rendering/render_text.cpp
index a8db26b..2538995 100644
--- a/WebCore/khtml/rendering/render_text.cpp
+++ b/WebCore/khtml/rendering/render_text.cpp
@@ -1024,6 +1024,9 @@ void RenderText::calcMinMaxWidth()
             bool isBreakableCharSpace = (i+wordlen < len) ? ((!isPre && str->s[i+wordlen] == '\n') || 
                                                              str->s[i+wordlen] == ' ') : false;
 
+            if (i+wordlen < len && style()->whiteSpace() == NORMAL)
+                m_hasBreakableChar = true;
+            
             // Add in wordspacing to our maxwidth, but not if this is the last word on a line or the
             // last word in the run.
             if (wordSpacing && isBreakableCharSpace && !containsOnlyWhitespace(i+wordlen, len-(i+wordlen)))
@@ -1031,7 +1034,13 @@ void RenderText::calcMinMaxWidth()
 
             if (firstWord) {
                 firstWord = false;
-                m_beginMinWidth = w;
+                // If the first character in the run is breakable, then we consider ourselves to have a beginning
+                // minimum width of 0, since a break could occur right before our run starts, preventing us from ever
+                // being appended to a previous text run when considering the total minimum width of the containing block.
+                bool hasBreak = isBreakable(str->s, i, str->l);
+                if (hasBreak)
+                    m_hasBreakableChar = true;
+                m_beginMinWidth = hasBreak ? 0 : w;
             }
             m_endMinWidth = w;
             

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list