[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    branches/KDE/3.5/kdelibs/khtml/rendering
From:       Allan Sandfeld Jensen <kde () carewolf ! com>
Date:       2006-10-24 14:35:19
Message-ID: 1161700519.074967.19854.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 598761 by carewolf:

Fix for webkit bug 4379
BUG:


 M  +4 -3      render_box.cpp  


--- branches/KDE/3.5/kdelibs/khtml/rendering/render_box.cpp #598760:598761
@@ -970,7 +970,7 @@
     }
     else
     {
-        if ( (ml.isVariable() && mr.isVariable()) ||
+        if ( (ml.isVariable() && mr.isVariable() && m_width<cw) ||
              (!ml.isVariable() && !mr.isVariable() &&
                 containingBlock()->style()->textAlign() == KHTML_CENTER) )
         {
@@ -978,14 +978,14 @@
             if (m_marginLeft<0) m_marginLeft=0;
             m_marginRight = cw - m_width - m_marginLeft;
         }
-        else if (mr.isVariable() ||
+        else if ( (mr.isVariable() && m_width<cw) ||
                  (!ml.isVariable() && containingBlock()->style()->direction() == RTL &&
                   containingBlock()->style()->textAlign() == KHTML_LEFT))
         {
             m_marginLeft = ml.width(cw);
             m_marginRight = cw - m_width - m_marginLeft;
         }
-        else if (ml.isVariable() ||
+        else if ( (ml.isVariable() && m_width<cw) ||
                  (!mr.isVariable() && containingBlock()->style()->direction() == LTR &&
                   containingBlock()->style()->textAlign() == KHTML_RIGHT))
         {
@@ -994,6 +994,7 @@
         }
         else
         {
+           // this makes auto margins 0 if we failed a m_width<cw test above (css2.1, 10.3.3)
             m_marginLeft = ml.minWidth(cw);
             m_marginRight = mr.minWidth(cw);
         }
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic