[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:12:06 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit dd7dfe9627370dc41159c1fe301da5cac9880436
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sun Nov 16 20:48:12 2003 +0000

    	3485717, Cleanup of the float code.  Eliminated the -khtml-flow-mode style property in favor of two simple methods,
    	avoidsFloats() and usesLineWidth().  avoidsFloats can be called to tell whether an object does not want
    	floats to intrude into its space (and that it should also move to avoid floats).  usesLineWidth is called
    	to find out if an object's containing block width is the line width or the content width, and has all the
    	right smarts to emulate WinIE's behaviors in both quirks and strict mode.
    
    	Also fixed a bug (3485718) where overflow:scroll blocks with auto height did not factor in the horizontal scrollbar's
    	height (thus causing it to paint on top of content).
    
            Reviewed by darin
    
            * khtml/css/cssparser.cpp:
            (CSSParser::parseValue):
            * khtml/css/cssstyleselector.cpp:
            (khtml::CSSStyleSelector::applyRule):
            * khtml/css/cssvalues.c:
            (hash_val):
            (findValue):
            * khtml/css/cssvalues.h:
            * khtml/css/cssvalues.in:
            * khtml/css/html4.css:
            * khtml/rendering/bidi.cpp:
            (khtml::RenderBlock::layoutInlineChildren):
            * khtml/rendering/render_block.cpp:
            (khtml::RenderBlock::layoutBlock):
            (khtml::RenderBlock::layoutBlockChildren):
            (khtml::RenderBlock::clearFloats):
            * khtml/rendering/render_box.cpp:
            (RenderBox::containingBlockWidth):
            (RenderBox::calcWidth):
            * khtml/rendering/render_object.cpp:
            (RenderObject::isHR):
            * khtml/rendering/render_object.h:
            (khtml::RenderObject::avoidsFloats):
            (khtml::RenderObject::usesLineWidth):
            * khtml/rendering/render_style.h:
            (khtml::RenderStyle::NonInheritedFlags::operator==):
            (khtml::RenderStyle::setBitDefaults):
            (khtml::RenderStyle::initialTextDecoration):
            * khtml/rendering/render_table.cpp:
            (RenderTable::calcWidth):
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@5511 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 6fdb2df..9def7eb 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,47 @@
+2003-11-16  David Hyatt  <hyatt at apple.com>
+
+	3485717, Cleanup of the float code.  Eliminated the -khtml-flow-mode style property in favor of two simple methods,
+	avoidsFloats() and usesLineWidth().  avoidsFloats can be called to tell whether an object does not want
+	floats to intrude into its space (and that it should also move to avoid floats).  usesLineWidth is called
+	to find out if an object's containing block width is the line width or the content width, and has all the
+	right smarts to emulate WinIE's behaviors in both quirks and strict mode.
+
+	Also fixed a bug (3485718) where overflow:scroll blocks with auto height did not factor in the horizontal scrollbar's
+	height (thus causing it to paint on top of content).
+	
+        Reviewed by darin
+
+        * khtml/css/cssparser.cpp:
+        (CSSParser::parseValue):
+        * khtml/css/cssstyleselector.cpp:
+        (khtml::CSSStyleSelector::applyRule):
+        * khtml/css/cssvalues.c:
+        (hash_val):
+        (findValue):
+        * khtml/css/cssvalues.h:
+        * khtml/css/cssvalues.in:
+        * khtml/css/html4.css:
+        * khtml/rendering/bidi.cpp:
+        (khtml::RenderBlock::layoutInlineChildren):
+        * khtml/rendering/render_block.cpp:
+        (khtml::RenderBlock::layoutBlock):
+        (khtml::RenderBlock::layoutBlockChildren):
+        (khtml::RenderBlock::clearFloats):
+        * khtml/rendering/render_box.cpp:
+        (RenderBox::containingBlockWidth):
+        (RenderBox::calcWidth):
+        * khtml/rendering/render_object.cpp:
+        (RenderObject::isHR):
+        * khtml/rendering/render_object.h:
+        (khtml::RenderObject::avoidsFloats):
+        (khtml::RenderObject::usesLineWidth):
+        * khtml/rendering/render_style.h:
+        (khtml::RenderStyle::NonInheritedFlags::operator==):
+        (khtml::RenderStyle::setBitDefaults):
+        (khtml::RenderStyle::initialTextDecoration):
+        * khtml/rendering/render_table.cpp:
+        (RenderTable::calcWidth):
+
 2003-11-14  David Hyatt  <hyatt at apple.com>
 
 	Fix for 3485260, regression on Uniview site from incremental repainting.  When appending/inserting child
diff --git a/WebCore/khtml/css/cssparser.cpp b/WebCore/khtml/css/cssparser.cpp
index 8091341..fd1d13b 100644
--- a/WebCore/khtml/css/cssparser.cpp
+++ b/WebCore/khtml/css/cssparser.cpp
@@ -973,11 +973,6 @@ bool CSSParser::parseValue( int propId, bool important )
 	    valid_primitive = true;
 	break;
 
-    case CSS_PROP__KHTML_FLOW_MODE:
-	if ( id == CSS_VAL__KHTML_NORMAL || id == CSS_VAL__KHTML_AROUND_FLOATS )
-	    valid_primitive = true;
-	break;
-
     /* CSS3 properties */
     case CSS_PROP_OUTLINE_OFFSET:
         valid_primitive = validUnit(value, FLength, strict&(!nonCSSHint));
diff --git a/WebCore/khtml/css/cssstyleselector.cpp b/WebCore/khtml/css/cssstyleselector.cpp
index 2325448..ed90989 100644
--- a/WebCore/khtml/css/cssstyleselector.cpp
+++ b/WebCore/khtml/css/cssstyleselector.cpp
@@ -3044,14 +3044,6 @@ void CSSStyleSelector::applyRule( int id, DOM::CSSValueImpl *value )
         style->setTextDecoration(t);
         break;
     }
-    case CSS_PROP__KHTML_FLOW_MODE:
-        HANDLE_INHERIT_AND_INITIAL(flowAroundFloats, FlowAroundFloats)
-        if (!primitiveValue) return;
-        if (primitiveValue->getIdent()) {
-            style->setFlowAroundFloats( primitiveValue->getIdent() == CSS_VAL__KHTML_AROUND_FLOATS );
-            return;
-        }
-        break;
 
 // shorthand properties
     case CSS_PROP_BACKGROUND:
diff --git a/WebCore/khtml/css/cssvalues.c b/WebCore/khtml/css/cssvalues.c
index 2a72bba..1b07bc5 100644
--- a/WebCore/khtml/css/cssvalues.c
+++ b/WebCore/khtml/css/cssvalues.c
@@ -7,7 +7,7 @@ struct css_value {
     const char *name;
     int id;
 };
-/* maximum key range = 1964, duplicates = 1 */
+/* maximum key range = 1698, duplicates = 2 */
 
 #ifdef __GNUC__
 __inline
@@ -21,32 +21,32 @@ hash_val (register const char *str, register unsigned int len)
 {
   static const unsigned short asso_values[] =
     {
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964,    5, 1964, 1964,    0,    5,
-        10,   15,   20,   25,   30,   35,   40,    0, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964,    0,   99,   34,
-        15,  205,  135,   94,  135,   55,    5,   84,    0,   93,
-        30,  200,  145,   40,  140,   59,    0,  190,   68,  120,
-       223,   30,   95, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964, 1964,
-      1964, 1964, 1964, 1964, 1964, 1964
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698,   30, 1698, 1698,    0,    5,
+        10,   15,   20,   25,   30,   35,   40,    0, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698,    0,   14,   30,
+        15,  195,  219,  247,   85,   65,    0,  194,    0,  117,
+        25,  120,  150,   50,    4,    5,    0,  249,   73,  194,
+       200,    5,  100, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698, 1698,
+      1698, 1698, 1698, 1698, 1698, 1698
     };
   register int hval = 0;
 
@@ -110,17 +110,20 @@ findValue (register const char *str, register unsigned int len)
 {
   enum
     {
-      TOTAL_KEYWORDS = 255,
+      TOTAL_KEYWORDS = 253,
       MIN_WORD_LENGTH = 2,
       MAX_WORD_LENGTH = 22,
       MIN_HASH_VALUE = 0,
-      MAX_HASH_VALUE = 1963
+      MAX_HASH_VALUE = 1697
     };
 
   static const struct css_value wordlist_value[] =
     {
       {"900", CSS_VAL_900},
+      {"ltr", CSS_VAL_LTR},
+      {"rtl", CSS_VAL_RTL},
       {"100", CSS_VAL_100},
+      {"start", CSS_VAL_START},
       {"200", CSS_VAL_200},
       {"300", CSS_VAL_300},
       {"400", CSS_VAL_400},
@@ -128,487 +131,449 @@ findValue (register const char *str, register unsigned int len)
       {"600", CSS_VAL_600},
       {"700", CSS_VAL_700},
       {"800", CSS_VAL_800},
-      {"navy", CSS_VAL_NAVY},
-      {"ltr", CSS_VAL_LTR},
-      {"rtl", CSS_VAL_RTL},
-      {"italic", CSS_VAL_ITALIC},
       {"static", CSS_VAL_STATIC},
-      {"small", CSS_VAL_SMALL},
+      {"navy", CSS_VAL_NAVY},
       {"disc", CSS_VAL_DISC},
-      {"wait", CSS_VAL_WAIT},
+      {"small", CSS_VAL_SMALL},
       {"hand", CSS_VAL_HAND},
-      {"fast", CSS_VAL_FAST},
-      {"initial", CSS_VAL_INITIAL},
-      {"katakana", CSS_VAL_KATAKANA},
-      {"start", CSS_VAL_START},
+      {"bold", CSS_VAL_BOLD},
+      {"scroll", CSS_VAL_SCROLL},
+      {"italic", CSS_VAL_ITALIC},
+      {"cross", CSS_VAL_CROSS},
+      {"thin", CSS_VAL_THIN},
+      {"scrollbar", CSS_VAL_SCROLLBAR},
       {"teal", CSS_VAL_TEAL},
       {"always", CSS_VAL_ALWAYS},
-      {"black", CSS_VAL_BLACK},
-      {"thin", CSS_VAL_THIN},
-      {"aqua", CSS_VAL_AQUA},
+      {"solid", CSS_VAL_SOLID},
+      {"table", CSS_VAL_TABLE},
+      {"red", CSS_VAL_RED},
+      {"both", CSS_VAL_BOTH},
+      {"initial", CSS_VAL_INITIAL},
+      {"fast", CSS_VAL_FAST},
       {"end", CSS_VAL_END},
+      {"black", CSS_VAL_BLACK},
+      {"icon", CSS_VAL_ICON},
       {"fantasy", CSS_VAL_FANTASY},
       {"gray", CSS_VAL_GRAY},
-      {"blink", CSS_VAL_BLINK},
-      {"table", CSS_VAL_TABLE},
-      {"thick", CSS_VAL_THICK},
-      {"bold", CSS_VAL_BOLD},
-      {"icon", CSS_VAL_ICON},
-      {"solid", CSS_VAL_SOLID},
-      {"slide", CSS_VAL_SLIDE},
-      {"up", CSS_VAL_UP},
-      {"avoid", CSS_VAL_AVOID},
-      {"left", CSS_VAL_LEFT},
-      {"top", CSS_VAL_TOP},
+      {"wait", CSS_VAL_WAIT},
+      {"normal", CSS_VAL_NORMAL},
       {"sub", CSS_VAL_SUB},
+      {"top", CSS_VAL_TOP},
+      {"avoid", CSS_VAL_AVOID},
+      {"slide", CSS_VAL_SLIDE},
       {"inset", CSS_VAL_INSET},
-      {"lime", CSS_VAL_LIME},
       {"ahead", CSS_VAL_AHEAD},
-      {"red", CSS_VAL_RED},
-      {"down", CSS_VAL_DOWN},
-      {"mix", CSS_VAL_MIX},
-      {"inline", CSS_VAL_INLINE},
+      {"blink", CSS_VAL_BLINK},
+      {"aqua", CSS_VAL_AQUA},
+      {"crop", CSS_VAL_CROP},
+      {"status-bar", CSS_VAL_STATUS_BAR},
+      {"dashed", CSS_VAL_DASHED},
+      {"crosshair", CSS_VAL_CROSSHAIR},
+      {"stretch", CSS_VAL_STRETCH},
       {"slow", CSS_VAL_SLOW},
-      {"x-small", CSS_VAL_X_SMALL},
-      {"middle", CSS_VAL_MIDDLE},
-      {"auto", CSS_VAL_AUTO},
+      {"smaller", CSS_VAL_SMALLER},
+      {"circle", CSS_VAL_CIRCLE},
       {"small-caps", CSS_VAL_SMALL_CAPS},
-      {"decimal", CSS_VAL_DECIMAL},
-      {"loud", CSS_VAL_LOUD},
-      {"hide", CSS_VAL_HIDE},
+      {"silver", CSS_VAL_SILVER},
+      {"portrait", CSS_VAL_PORTRAIT},
+      {"dotted", CSS_VAL_DOTTED},
+      {"bolder", CSS_VAL_BOLDER},
+      {"pre", CSS_VAL_PRE},
+      {"x-small", CSS_VAL_X_SMALL},
+      {"down", CSS_VAL_DOWN},
       {"block", CSS_VAL_BLOCK},
+      {"hide", CSS_VAL_HIDE},
+      {"invert", CSS_VAL_INVERT},
+      {"none", CSS_VAL_NONE},
+      {"vertical", CSS_VAL_VERTICAL},
+      {"auto", CSS_VAL_AUTO},
       {"inside", CSS_VAL_INSIDE},
-      {"right", CSS_VAL_RIGHT},
+      {"bottom", CSS_VAL_BOTTOM},
+      {"thick", CSS_VAL_THICK},
+      {"inline", CSS_VAL_INLINE},
+      {"lime", CSS_VAL_LIME},
+      {"mix", CSS_VAL_MIX},
+      {"loud", CSS_VAL_LOUD},
+      {"maroon", CSS_VAL_MAROON},
+      {"caption", CSS_VAL_CAPTION},
       {"text", CSS_VAL_TEXT},
-      {"dashed", CSS_VAL_DASHED},
-      {"scroll", CSS_VAL_SCROLL},
-      {"both", CSS_VAL_BOTH},
-      {"dotted", CSS_VAL_DOTTED},
-      {"large", CSS_VAL_LARGE},
-      {"single", CSS_VAL_SINGLE},
       {"run-in", CSS_VAL_RUN_IN},
-      {"hiragana", CSS_VAL_HIRAGANA},
+      {"up", CSS_VAL_UP},
       {"hidden", CSS_VAL_HIDDEN},
-      {"normal", CSS_VAL_NORMAL},
-      {"caption", CSS_VAL_CAPTION},
-      {"none", CSS_VAL_NONE},
-      {"circle", CSS_VAL_CIRCLE},
-      {"grey", CSS_VAL_GREY},
-      {"list-item", CSS_VAL_LIST_ITEM},
-      {"justify", CSS_VAL_JUSTIFY},
-      {"level", CSS_VAL_LEVEL},
-      {"help", CSS_VAL_HELP},
-      {"landscape", CSS_VAL_LANDSCAPE},
-      {"pre", CSS_VAL_PRE},
-      {"cross", CSS_VAL_CROSS},
-      {"blue", CSS_VAL_BLUE},
-      {"smaller", CSS_VAL_SMALLER},
-      {"invert", CSS_VAL_INVERT},
-      {"vertical", CSS_VAL_VERTICAL},
-      {"compact", CSS_VAL_COMPACT},
-      {"ridge", CSS_VAL_RIDGE},
+      {"right", CSS_VAL_RIGHT},
+      {"above", CSS_VAL_ABOVE},
       {"show", CSS_VAL_SHOW},
-      {"white", CSS_VAL_WHITE},
-      {"menu", CSS_VAL_MENU},
-      {"crop", CSS_VAL_CROP},
-      {"silver", CSS_VAL_SILVER},
-      {"olive", CSS_VAL_OLIVE},
-      {"wider", CSS_VAL_WIDER},
-      {"window", CSS_VAL_WINDOW},
+      {"middle", CSS_VAL_MIDDLE},
+      {"transparent", CSS_VAL_TRANSPARENT},
+      {"katakana", CSS_VAL_KATAKANA},
+      {"left", CSS_VAL_LEFT},
       {"visible", CSS_VAL_VISIBLE},
-      {"default", CSS_VAL_DEFAULT},
-      {"table-cell", CSS_VAL_TABLE_CELL},
-      {"backwards", CSS_VAL_BACKWARDS},
-      {"status-bar", CSS_VAL_STATUS_BAR},
+      {"alternate", CSS_VAL_ALTERNATE},
+      {"landscape", CSS_VAL_LANDSCAPE},
+      {"decimal", CSS_VAL_DECIMAL},
+      {"hiragana", CSS_VAL_HIRAGANA},
+      {"help", CSS_VAL_HELP},
       {"armenian", CSS_VAL_ARMENIAN},
-      {"yellow", CSS_VAL_YELLOW},
-      {"infinite", CSS_VAL_INFINITE},
-      {"move", CSS_VAL_MOVE},
-      {"above", CSS_VAL_ABOVE},
-      {"stretch", CSS_VAL_STRETCH},
+      {"inherit", CSS_VAL_INHERIT},
+      {"large", CSS_VAL_LARGE},
+      {"compact", CSS_VAL_COMPACT},
+      {"center", CSS_VAL_CENTER},
       {"larger", CSS_VAL_LARGER},
-      {"alternate", CSS_VAL_ALTERNATE},
-      {"capitalize", CSS_VAL_CAPITALIZE},
-      {"bottom", CSS_VAL_BOTTOM},
+      {"grey", CSS_VAL_GREY},
+      {"olive", CSS_VAL_OLIVE},
+      {"backwards", CSS_VAL_BACKWARDS},
+      {"blue", CSS_VAL_BLUE},
+      {"level", CSS_VAL_LEVEL},
+      {"table-cell", CSS_VAL_TABLE_CELL},
+      {"wider", CSS_VAL_WIDER},
+      {"list-item", CSS_VAL_LIST_ITEM},
       {"serif", CSS_VAL_SERIF},
-      {"xx-small", CSS_VAL_XX_SMALL},
-      {"fuchsia", CSS_VAL_FUCHSIA},
-      {"center", CSS_VAL_CENTER},
-      {"embed", CSS_VAL_EMBED},
-      {"inherit", CSS_VAL_INHERIT},
-      {"small-caption", CSS_VAL_SMALL_CAPTION},
-      {"below", CSS_VAL_BELOW},
-      {"lighter", CSS_VAL_LIGHTER},
-      {"fixed", CSS_VAL_FIXED},
-      {"square", CSS_VAL_SQUARE},
       {"nowrap", CSS_VAL_NOWRAP},
-      {"collapse", CSS_VAL_COLLAPSE},
-      {"medium", CSS_VAL_MEDIUM},
       {"baseline", CSS_VAL_BASELINE},
-      {"outset", CSS_VAL_OUTSET},
-      {"bolder", CSS_VAL_BOLDER},
-      {"-khtml-left", CSS_VAL__KHTML_LEFT},
-      {"maroon", CSS_VAL_MAROON},
+      {"collapse", CSS_VAL_COLLAPSE},
+      {"square", CSS_VAL_SQUARE},
+      {"move", CSS_VAL_MOVE},
       {"lower", CSS_VAL_LOWER},
-      {"-khtml-body", CSS_VAL__KHTML_BODY},
-      {"x-large", CSS_VAL_X_LARGE},
-      {"orange", CSS_VAL_ORANGE},
-      {"scrollbar", CSS_VAL_SCROLLBAR},
+      {"yellow", CSS_VAL_YELLOW},
+      {"horizontal", CSS_VAL_HORIZONTAL},
+      {"below", CSS_VAL_BELOW},
+      {"ridge", CSS_VAL_RIDGE},
       {"relative", CSS_VAL_RELATIVE},
-      {"green", CSS_VAL_GREEN},
-      {"portrait", CSS_VAL_PORTRAIT},
-      {"inline-table", CSS_VAL_INLINE_TABLE},
-      {"unfurl", CSS_VAL_UNFURL},
-      {"multiple", CSS_VAL_MULTIPLE},
-      {"graytext", CSS_VAL_GRAYTEXT},
+      {"embed", CSS_VAL_EMBED},
+      {"single", CSS_VAL_SINGLE},
+      {"white", CSS_VAL_WHITE},
+      {"small-caption", CSS_VAL_SMALL_CAPTION},
+      {"justify", CSS_VAL_JUSTIFY},
       {"repeat", CSS_VAL_REPEAT},
-      {"highlight", CSS_VAL_HIGHLIGHT},
-      {"double", CSS_VAL_DOUBLE},
-      {"-khtml-auto", CSS_VAL__KHTML_AUTO},
-      {"inline-axis", CSS_VAL_INLINE_AXIS},
-      {"outside", CSS_VAL_OUTSIDE},
+      {"narrower", CSS_VAL_NARROWER},
+      {"separate", CSS_VAL_SEPARATE},
+      {"xx-small", CSS_VAL_XX_SMALL},
+      {"sans-serif", CSS_VAL_SANS_SERIF},
+      {"table-row", CSS_VAL_TABLE_ROW},
+      {"pointer", CSS_VAL_POINTER},
+      {"forwards", CSS_VAL_FORWARDS},
+      {"outset", CSS_VAL_OUTSET},
       {"repeat-y", CSS_VAL_REPEAT_Y},
-      {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
-      {"-apple-aqua", CSS_VAL__APPLE_AQUA},
+      {"absolute", CSS_VAL_ABSOLUTE},
+      {"menu", CSS_VAL_MENU},
+      {"orange", CSS_VAL_ORANGE},
+      {"double", CSS_VAL_DOUBLE},
+      {"lighter", CSS_VAL_LIGHTER},
+      {"s-resize", CSS_VAL_S_RESIZE},
       {"super", CSS_VAL_SUPER},
-      {"-khtml-right", CSS_VAL__KHTML_RIGHT},
-      {"sans-serif", CSS_VAL_SANS_SERIF},
-      {"transparent", CSS_VAL_TRANSPARENT},
-      {"-khtml-text", CSS_VAL__KHTML_TEXT},
+      {"capitalize", CSS_VAL_CAPITALIZE},
+      {"-khtml-body", CSS_VAL__KHTML_BODY},
+      {"window", CSS_VAL_WINDOW},
+      {"inline-table", CSS_VAL_INLINE_TABLE},
+      {"n-resize", CSS_VAL_N_RESIZE},
       {"cursive", CSS_VAL_CURSIVE},
-      {"absolute", CSS_VAL_ABSOLUTE},
-      {"separate", CSS_VAL_SEPARATE},
+      {"condensed", CSS_VAL_CONDENSED},
+      {"table-caption", CSS_VAL_TABLE_CAPTION},
       {"lower-latin", CSS_VAL_LOWER_LATIN},
+      {"outside", CSS_VAL_OUTSIDE},
+      {"graytext", CSS_VAL_GRAYTEXT},
+      {"fuchsia", CSS_VAL_FUCHSIA},
       {"block-axis", CSS_VAL_BLOCK_AXIS},
+      {"infinite", CSS_VAL_INFINITE},
+      {"green", CSS_VAL_GREEN},
+      {"reverse", CSS_VAL_REVERSE},
+      {"inline-axis", CSS_VAL_INLINE_AXIS},
+      {"x-large", CSS_VAL_X_LARGE},
+      {"overline", CSS_VAL_OVERLINE},
+      {"default", CSS_VAL_DEFAULT},
       {"higher", CSS_VAL_HIGHER},
-      {"table-row", CSS_VAL_TABLE_ROW},
-      {"table-caption", CSS_VAL_TABLE_CAPTION},
-      {"pointer", CSS_VAL_POINTER},
-      {"text-top", CSS_VAL_TEXT_TOP},
-      {"-khtml-normal", CSS_VAL__KHTML_NORMAL},
+      {"hebrew", CSS_VAL_HEBREW},
       {"oblique", CSS_VAL_OBLIQUE},
-      {"condensed", CSS_VAL_CONDENSED},
-      {"n-resize", CSS_VAL_N_RESIZE},
-      {"inline-block", CSS_VAL_INLINE_BLOCK},
-      {"forwards", CSS_VAL_FORWARDS},
-      {"georgian", CSS_VAL_GEORGIAN},
-      {"crosshair", CSS_VAL_CROSSHAIR},
-      {"s-resize", CSS_VAL_S_RESIZE},
+      {"fixed", CSS_VAL_FIXED},
+      {"text-top", CSS_VAL_TEXT_TOP},
+      {"activeborder", CSS_VAL_ACTIVEBORDER},
+      {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
+      {"no-repeat", CSS_VAL_NO_REPEAT},
+      {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
+      {"lowercase", CSS_VAL_LOWERCASE},
+      {"unfurl", CSS_VAL_UNFURL},
       {"purple", CSS_VAL_PURPLE},
       {"activecaption", CSS_VAL_ACTIVECAPTION},
-      {"expanded", CSS_VAL_EXPANDED},
-      {"-khtml-box", CSS_VAL__KHTML_BOX},
-      {"infotext", CSS_VAL_INFOTEXT},
-      {"horizontal", CSS_VAL_HORIZONTAL},
-      {"table-column", CSS_VAL_TABLE_COLUMN},
-      {"underline", CSS_VAL_UNDERLINE},
-      {"marquee", CSS_VAL_MARQUEE},
-      {"w-resize", CSS_VAL_W_RESIZE},
-      {"background", CSS_VAL_BACKGROUND},
-      {"xx-large", CSS_VAL_XX_LARGE},
-      {"captiontext", CSS_VAL_CAPTIONTEXT},
-      {"buttonface", CSS_VAL_BUTTONFACE},
-      {"overline", CSS_VAL_OVERLINE},
-      {"hebrew", CSS_VAL_HEBREW},
+      {"medium", CSS_VAL_MEDIUM},
       {"groove", CSS_VAL_GROOVE},
-      {"inactivecaption", CSS_VAL_INACTIVECAPTION},
-      {"nw-resize", CSS_VAL_NW_RESIZE},
-      {"upper-latin", CSS_VAL_UPPER_LATIN},
+      {"monospace", CSS_VAL_MONOSPACE},
+      {"inline-block", CSS_VAL_INLINE_BLOCK},
+      {"underline", CSS_VAL_UNDERLINE},
       {"repeat-x", CSS_VAL_REPEAT_X},
-      {"no-repeat", CSS_VAL_NO_REPEAT},
-      {"-khtml-center", CSS_VAL__KHTML_CENTER},
-      {"sw-resize", CSS_VAL_SW_RESIZE},
-      {"menutext", CSS_VAL_MENUTEXT},
-      {"buttontext", CSS_VAL_BUTTONTEXT},
+      {"multiple", CSS_VAL_MULTIPLE},
       {"lower-alpha", CSS_VAL_LOWER_ALPHA},
-      {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
-      {"lowercase", CSS_VAL_LOWERCASE},
-      {"monospace", CSS_VAL_MONOSPACE},
-      {"windowtext", CSS_VAL_WINDOWTEXT},
+      {"table-column", CSS_VAL_TABLE_COLUMN},
+      {"captiontext", CSS_VAL_CAPTIONTEXT},
+      {"w-resize", CSS_VAL_W_RESIZE},
       {"e-resize", CSS_VAL_E_RESIZE},
-      {"narrower", CSS_VAL_NARROWER},
-      {"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
-      {"ne-resize", CSS_VAL_NE_RESIZE},
-      {"reverse", CSS_VAL_REVERSE},
-      {"text-bottom", CSS_VAL_TEXT_BOTTOM},
+      {"-khtml-box", CSS_VAL__KHTML_BOX},
+      {"sw-resize", CSS_VAL_SW_RESIZE},
       {"se-resize", CSS_VAL_SE_RESIZE},
+      {"expanded", CSS_VAL_EXPANDED},
+      {"text-bottom", CSS_VAL_TEXT_BOTTOM},
+      {"buttontext", CSS_VAL_BUTTONTEXT},
+      {"inactiveborder", CSS_VAL_INACTIVEBORDER},
+      {"lower-roman", CSS_VAL_LOWER_ROMAN},
+      {"marquee", CSS_VAL_MARQUEE},
+      {"nw-resize", CSS_VAL_NW_RESIZE},
+      {"ne-resize", CSS_VAL_NE_RESIZE},
+      {"infotext", CSS_VAL_INFOTEXT},
+      {"-khtml-auto", CSS_VAL__KHTML_AUTO},
       {"buttonshadow", CSS_VAL_BUTTONSHADOW},
+      {"inactivecaption", CSS_VAL_INACTIVECAPTION},
+      {"-khtml-text", CSS_VAL__KHTML_TEXT},
+      {"buttonface", CSS_VAL_BUTTONFACE},
+      {"-apple-aqua", CSS_VAL__APPLE_AQUA},
+      {"-khtml-right", CSS_VAL__KHTML_RIGHT},
+      {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
+      {"upper-latin", CSS_VAL_UPPER_LATIN},
+      {"-khtml-left", CSS_VAL__KHTML_LEFT},
+      {"xx-large", CSS_VAL_XX_LARGE},
+      {"highlight", CSS_VAL_HIGHLIGHT},
+      {"background", CSS_VAL_BACKGROUND},
+      {"georgian", CSS_VAL_GEORGIAN},
+      {"-khtml-center", CSS_VAL__KHTML_CENTER},
+      {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
+      {"threedshadow", CSS_VAL_THREEDSHADOW},
       {"threedface", CSS_VAL_THREEDFACE},
-      {"upper-alpha", CSS_VAL_UPPER_ALPHA},
-      {"windowframe", CSS_VAL_WINDOWFRAME},
+      {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
       {"uppercase", CSS_VAL_UPPERCASE},
-      {"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
-      {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
-      {"lower-roman", CSS_VAL_LOWER_ROMAN},
+      {"menutext", CSS_VAL_MENUTEXT},
       {"close-quote", CSS_VAL_CLOSE_QUOTE},
-      {"activeborder", CSS_VAL_ACTIVEBORDER},
+      {"windowtext", CSS_VAL_WINDOWTEXT},
+      {"upper-alpha", CSS_VAL_UPPER_ALPHA},
+      {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
+      {"upper-roman", CSS_VAL_UPPER_ROMAN},
+      {"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
       {"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
       {"line-through", CSS_VAL_LINE_THROUGH},
-      {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
-      {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
+      {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW},
+      {"message-box", CSS_VAL_MESSAGE_BOX},
       {"open-quote", CSS_VAL_OPEN_QUOTE},
-      {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
+      {"windowframe", CSS_VAL_WINDOWFRAME},
+      {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
+      {"appworkspace", CSS_VAL_APPWORKSPACE},
       {"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
-      {"threedshadow", CSS_VAL_THREEDSHADOW},
-      {"message-box", CSS_VAL_MESSAGE_BOX},
-      {"inactiveborder", CSS_VAL_INACTIVEBORDER},
       {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
-      {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
-      {"appworkspace", CSS_VAL_APPWORKSPACE},
-      {"upper-roman", CSS_VAL_UPPER_ROMAN},
-      {"-khtml-around-floats", CSS_VAL__KHTML_AROUND_FLOATS},
-      {"infobackground", CSS_VAL_INFOBACKGROUND},
-      {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
-      {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
-      {"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
-      {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
-      {"lower-greek", CSS_VAL_LOWER_GREEK},
-      {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
       {"extra-expanded", CSS_VAL_EXTRA_EXPANDED},
-      {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
-      {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
+      {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
+      {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
+      {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
+      {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
       {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
-      {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW},
       {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
+      {"infobackground", CSS_VAL_INFOBACKGROUND},
       {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
-      {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
+      {"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
+      {"lower-greek", CSS_VAL_LOWER_GREEK},
+      {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
+      {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
+      {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
       {"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
+      {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
       {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP}
     };
 
   static const short lookup[] =
     {
-         0,   -1,   -1,   -1,   -1,    1,   -1,   -1,
-        -1,   -1,    2,   -1,   -1,   -1,   -1,    3,
-        -1,   -1,   -1,   -1,    4,   -1,   -1,   -1,
-        -1,    5,   -1,   -1,   -1,   -1,    6,   -1,
-        -1,   -1,   -1,    7,   -1,   -1,   -1,   -1,
-         8,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-         9,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1, -397, -245,   -2,   -1,
-        12,   -1,   -1,   -1,   13,   -1,   -1,   -1,
-        14,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   15,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   16,
-        -1,   -1,   -1,   -1,   17,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   18,   19,   -1,   -1,   20,   21,
-        -1,   -1,   -1,   -1,   -1,   22,   -1,   -1,
-        -1,   23,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   24,   -1,   -1,   25,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   26,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   27,   -1,   -1,   -1,   28,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        29,   -1,   -1,   -1,   30,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        31,   -1,   -1,   -1,   32,   -1,   -1,   -1,
-        -1,   -1,   33,   -1,   -1,   -1,   -1,   34,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   35,   -1,   -1,   -1,   -1,   36,   37,
-        -1,   -1,   38,   -1,   39,   -1,   -1,   -1,
-        -1,   40,   -1,   -1,   41,   42,   -1,   -1,
-        -1,   43,   -1,   44,   -1,   -1,   -1,   -1,
-        45,   -1,   -1,   -1,   -1,   46,   -1,   -1,
-        -1,   -1,   -1,   47,   -1,   -1,   -1,   48,
-        -1,   -1,   -1,   49,   50,   -1,   -1,   51,
-        -1,   -1,   -1,   -1,   -1,   -1,   52,   -1,
-        -1,   -1,   -1,   53,   -1,   -1,   -1,   -1,
-        -1,   -1,   54,   -1,   -1,   55,   -1,   -1,
-        -1,   -1,   56,   -1,   -1,   -1,   -1,   -1,
-        -1,   57,   -1,   58,   -1,   -1,   -1,   -1,
-        59,   -1,   -1,   -1,   60,   61,   -1,   -1,
-        -1,   62,   63,   64,   -1,   -1,   -1,   65,
-        -1,   -1,   -1,   66,   -1,   -1,   -1,   -1,
-        -1,   -1,   67,   -1,   -1,   -1,   68,   69,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   70,
-        71,   72,   -1,   -1,   73,   74,   -1,   -1,
-        75,   -1,   76,   -1,   -1,   -1,   77,   -1,
-        -1,   -1,   -1,   -1,   -1,   78,   -1,   -1,
-        79,   -1,   80,   -1,   81,   -1,   82,   -1,
-        -1,   83,   84,   -1,   -1,   -1,   85,   -1,
-        -1,   -1,   86,   -1,   -1,   87,   -1,   -1,
-        -1,   -1,   88,   89,   -1,   -1,   90,   91,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   92,
-        93,   -1,   -1,   -1,   -1,   -1,   -1,   94,
-        -1,   -1,   -1,   -1,   95,   96,   -1,   -1,
-        -1,   97,   -1,   -1,   98,   -1,   -1,   99,
-       100,  101,   -1,  102,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  103,  104,   -1,
-        -1,   -1,   -1,   -1,  105,  106,   -1,   -1,
-        -1,   -1,   -1,  107,  108,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  109,   -1,   -1,
-       110,   -1,  111,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  112,   -1,   -1,   -1,   -1,
-       113,   -1,   -1,   -1,   -1,   -1,  114,   -1,
-        -1,  115,   -1,   -1,  116,  117,   -1,   -1,
-       118,   -1,   -1,   -1,   -1,  119,   -1,   -1,
-        -1,  120,  121,  122,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  123,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  124,   -1,  125,  126,   -1,
-        -1,   -1,   -1,  127,   -1,   -1,  128,  129,
-        -1,  130,  131,  132,   -1,  133,   -1,   -1,
-       134,  135,  136,   -1,   -1,   -1,   -1,   -1,
-       137,   -1,   -1,   -1,  138,  139,   -1,   -1,
-       140,   -1,   -1,   -1,  141,   -1,   -1,  142,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  143,
-        -1,   -1,   -1,   -1,   -1,  144,   -1,   -1,
-       145,   -1,   -1,   -1,   -1,  146,   -1,   -1,
-        -1,   -1,   -1,   -1,  147,   -1,   -1,   -1,
-        -1,   -1,  148,   -1,   -1,  149,   -1,  150,
-        -1,   -1,   -1,  151,   -1,   -1,   -1,   -1,
-        -1,   -1,  152,  153,   -1,  154,  155,  156,
-        -1,  157,  158,  159,   -1,   -1,   -1,  160,
-        -1,   -1,   -1,   -1,  161,   -1,   -1,   -1,
-        -1,  162,   -1,   -1,   -1,  163,   -1,  164,
-        -1,   -1,  165,   -1,   -1,   -1,   -1,   -1,
-        -1,  166,   -1,   -1,   -1,  167,   -1,   -1,
-        -1,  168,  169,   -1,   -1,  170,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  171,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  172,   -1,   -1,   -1,  173,  174,
-        -1,  175,  176,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  177,   -1,
-        -1,   -1,   -1,   -1,  178,   -1,   -1,   -1,
-       179,   -1,   -1,   -1,   -1,   -1,   -1,  180,
-       181,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  182,   -1,
-        -1,  183,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  184,   -1,  185,   -1,
-        -1,   -1,  186,   -1,  187,  188,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  189,
-       190,   -1,   -1,  191,   -1,   -1,   -1,  192,
-        -1,   -1,  193,  194,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  195,   -1,   -1,   -1,   -1,
-        -1,   -1,  196,   -1,   -1,   -1,   -1,   -1,
-       197,   -1,   -1,   -1,   -1,   -1,   -1,  198,
-        -1,   -1,  199,  200,   -1,   -1,  201,   -1,
-        -1,   -1,   -1,   -1,   -1,  202,   -1,   -1,
-        -1,   -1,   -1,  203,   -1,   -1,  204,   -1,
-       205,  206,   -1,   -1,   -1,   -1,   -1,  207,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  208,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  209,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  210,   -1,
-        -1,  211,   -1,   -1,  212,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-       213,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  214,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  215,   -1,
-        -1,  216,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  217,   -1,   -1,   -1,   -1,
-       218,   -1,   -1,  219,   -1,  220,   -1,   -1,
-        -1,   -1,  221,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  222,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  223,   -1,   -1,
+         0,   -1,   -1,   -1, -260,    3, -252,   -2,
+        -1,    4,    5,   -1,   -1,   -1,   -1,    6,
+        -1,   -1,   -1,   -1,    7,   -1,   -1,   -1,
+        -1,    8,   -1,   -1,   -1,   -1,    9,   -1,
+        -1,   -1,   -1,   10,   -1,   -1,   -1,   -1,
+        11,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   12,   -1,   -1,   13,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   14,   -1,   -1,   -1,   -1,
+        -1,   -1,   15,   -1,   -1,   16,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   17,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   18,
+        19,   -1,   -1,   -1,   20,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   21,
+        -1,   22,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   23,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   24,   25,   -1,   -1,
+        -1,   26,   -1,   -1,   -1,   -1,   27,   -1,
+        -1,   -1,   -1,   28,   29,   -1,   -1,   -1,
+        30,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   31,   -1,   -1,   32,   -1,
+        33,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   34,   -1,
+        35,   -1,   -1,   36,   -1,   -1,   -1,   -1,
+        -1,   -1,   37,   -1,   38,   -1,   39,   -1,
+        -1,   40,   -1,   -1,   -1,   -1,   -1,   -1,
+        41,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   42,   -1,   -1,   -1,   -1,   43,
+        -1,   -1,   44,   45,   -1,   -1,   -1,   -1,
+        46,   -1,   -1,   47,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   48,   -1,   -1,   49, -576,
+        -1,   52, -203,   -2,   53,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   54,   -1,   -1,   -1,   -1,   55,   56,
+        -1,   57,   -1,   -1,   58,   59,   -1,   -1,
+        60,   -1,   61,   -1,   -1,   -1,   62,   -1,
+        63,   -1,   64,   -1,   -1,   65,   -1,   66,
+        -1,   67,   68,   69,   -1,   -1,   70,   71,
+        -1,   72,   -1,   -1,   -1,   -1,   73,   -1,
+        74,   -1,   75,   -1,   -1,   -1,   76,   -1,
+        -1,   -1,   -1,   77,   -1,   -1,   78,   79,
+        80,   81,   82,   -1,   83,   -1,   -1,   84,
+        85,   -1,   -1,   -1,   -1,   86,   87,   -1,
+        -1,   88,   -1,   89,   90,   -1,   91,   -1,
+        -1,   -1,   92,   -1,   -1,   -1,   93,   94,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   95,
+        -1,   -1,   -1,   -1,   -1,   -1,   96,   97,
+        -1,   98,   99,  100,   -1,  101,   -1,   -1,
+       102,   -1,  103,   -1,   -1,   -1,   -1,  104,
+       105,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  106,   -1,   -1,   -1,  107,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       108,   -1,   -1,   -1,   -1,  109,   -1,   -1,
+        -1,   -1,   -1,  110,  111,   -1,   -1,  112,
+        -1,  113,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  114,  115,   -1,   -1,   -1,   -1,  116,
+        -1,   -1,   -1,  117,   -1,   -1,  118,   -1,
+        -1,   -1,   -1,   -1,  119,   -1,   -1,   -1,
+       120,  121,   -1,  122,   -1,   -1,  123,  124,
+       125,   -1,  126,   -1,   -1,  127,   -1,   -1,
+       128,  129,   -1,   -1,   -1,  130,   -1,  131,
+        -1,  132,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  133,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  134,   -1,   -1,   -1,  135,
+        -1,   -1,  136,   -1,   -1,   -1,   -1,  137,
+        -1,  138,   -1,   -1,  139,   -1,   -1,  140,
+        -1,   -1,   -1,  141,   -1,  142,   -1,   -1,
+        -1,   -1,  143,   -1,   -1,  144,  145,   -1,
+        -1,   -1,   -1,  146,   -1,  147,   -1,   -1,
+        -1,  148,   -1,   -1,   -1,  149,   -1,   -1,
+        -1,  150,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  151,   -1,  152,   -1,  153,   -1,   -1,
+        -1,   -1,  154,  155,   -1,   -1,   -1,   -1,
+        -1,   -1,  156,   -1,   -1,   -1,   -1,  157,
+        -1,   -1,   -1,  158,  159,  160,  161,   -1,
+        -1,  162,   -1,   -1,   -1,   -1,   -1,  163,
+        -1,   -1,   -1,   -1,   -1,  164,  165,  166,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  167,   -1,  168,   -1,  169,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  170,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  171,
+        -1,   -1,  172,   -1,  173,   -1,   -1,   -1,
+        -1,  174,   -1,   -1,   -1,   -1,  175,  176,
+        -1,   -1,  177,  178,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  179,  180,   -1,
+       181,   -1,  182,   -1,  183,   -1,   -1,   -1,
+        -1,  184,   -1,   -1,  185,  186,  187,   -1,
+        -1,  188,  189,  190,  191,   -1,   -1,   -1,
+        -1,   -1,   -1,  192,   -1,  193,   -1,   -1,
+        -1,  194,  195,   -1,   -1,  196,  197,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       198,  199,   -1,  200,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  201,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,  202,  203,   -1,  204,   -1,
+        -1,  205,   -1,   -1,  206,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  207,   -1,  208,   -1,
+        -1,   -1,   -1,   -1,  209,   -1,   -1,  210,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  211,   -1,   -1,   -1,   -1,  212,
+        -1,  213,   -1,   -1,  214,   -1,   -1,   -1,
+        -1,  215,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  216,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  217,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  218,   -1,   -1,  219,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  220,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       221,   -1,   -1,   -1,   -1,  222,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  224,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  223,   -1,   -1,
+        -1,   -1,   -1,   -1,  224,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,  225,   -1,
-        -1,   -1,  226,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  227,   -1,  228,   -1,
-       229,   -1,   -1,   -1,   -1,  230,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  231,   -1,   -1,   -1,  232,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  233,
-        -1,  234,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  235,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,  236,   -1,   -1,
-       237,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,  238,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  239,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  240,   -1,   -1,  241,   -1,
-        -1,   -1,   -1,   -1,   -1,  242,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  243,   -1,
-        -1,   -1,   -1,  244,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  245,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  246,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  247,   -1,   -1,   -1,  248,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,  249,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  226,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,  227,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  228,   -1,
+       229,   -1,   -1,   -1,   -1,   -1,  230,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,  250,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  231,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  251,
+        -1,  232,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       233,   -1,   -1,  234,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  235,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       236,   -1,   -1,   -1,   -1,   -1,  237,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,  238,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,  239,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  240,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,  252,   -1,
+        -1,   -1,   -1,   -1,   -1,  241,  242,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,   -1,   -1,  243,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  244,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,   -1,  245,   -1,   -1,
+        -1,   -1,  246,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       247,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+       248,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,   -1,   -1,   -1,   -1,  253,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  249,  250,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
+        -1,   -1,   -1,   -1,  251,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
@@ -623,7 +588,7 @@ findValue (register const char *str, register unsigned int len)
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
         -1,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
-        -1,   -1,   -1,  254
+        -1,  252
     };
 
   if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -894,8 +859,6 @@ static const char * const valueList[] = {
 "thin", 
 "underline", 
 "-khtml-nowrap", 
-"-khtml-normal", 
-"-khtml-around-floats", 
 "stretch", 
 "start", 
 "end", 
diff --git a/WebCore/khtml/css/cssvalues.h b/WebCore/khtml/css/cssvalues.h
index c88dee1..8c68fd3 100644
--- a/WebCore/khtml/css/cssvalues.h
+++ b/WebCore/khtml/css/cssvalues.h
@@ -241,30 +241,28 @@ DOM::DOMString getValueName(unsigned short id);
 #define CSS_VAL_THIN 230
 #define CSS_VAL_UNDERLINE 231
 #define CSS_VAL__KHTML_NOWRAP 232
-#define CSS_VAL__KHTML_NORMAL 233
-#define CSS_VAL__KHTML_AROUND_FLOATS 234
-#define CSS_VAL_STRETCH 235
-#define CSS_VAL_START 236
-#define CSS_VAL_END 237
-#define CSS_VAL_REVERSE 238
-#define CSS_VAL_HORIZONTAL 239
-#define CSS_VAL_VERTICAL 240
-#define CSS_VAL_INLINE_AXIS 241
-#define CSS_VAL_BLOCK_AXIS 242
-#define CSS_VAL_SINGLE 243
-#define CSS_VAL_MULTIPLE 244
-#define CSS_VAL_FORWARDS 245
-#define CSS_VAL_BACKWARDS 246
-#define CSS_VAL_AHEAD 247
-#define CSS_VAL_UP 248
-#define CSS_VAL_DOWN 249
-#define CSS_VAL_SLOW 250
-#define CSS_VAL_FAST 251
-#define CSS_VAL_INFINITE 252
-#define CSS_VAL_SLIDE 253
-#define CSS_VAL_ALTERNATE 254
-#define CSS_VAL_UNFURL 255
+#define CSS_VAL_STRETCH 233
+#define CSS_VAL_START 234
+#define CSS_VAL_END 235
+#define CSS_VAL_REVERSE 236
+#define CSS_VAL_HORIZONTAL 237
+#define CSS_VAL_VERTICAL 238
+#define CSS_VAL_INLINE_AXIS 239
+#define CSS_VAL_BLOCK_AXIS 240
+#define CSS_VAL_SINGLE 241
+#define CSS_VAL_MULTIPLE 242
+#define CSS_VAL_FORWARDS 243
+#define CSS_VAL_BACKWARDS 244
+#define CSS_VAL_AHEAD 245
+#define CSS_VAL_UP 246
+#define CSS_VAL_DOWN 247
+#define CSS_VAL_SLOW 248
+#define CSS_VAL_FAST 249
+#define CSS_VAL_INFINITE 250
+#define CSS_VAL_SLIDE 251
+#define CSS_VAL_ALTERNATE 252
+#define CSS_VAL_UNFURL 253
 
-#define CSS_VAL_TOTAL 256
+#define CSS_VAL_TOTAL 254
 #endif
 
diff --git a/WebCore/khtml/css/cssvalues.in b/WebCore/khtml/css/cssvalues.in
index 46aed53..ac0c857 100644
--- a/WebCore/khtml/css/cssvalues.in
+++ b/WebCore/khtml/css/cssvalues.in
@@ -314,75 +314,6 @@ thick
 thin
 underline
 -khtml-nowrap
-# CSS_PROP__khtml_FLOW_MODE
--khtml-normal
--khtml-around-floats
-#
-# Not supported CSS 2 Aural values
-#
-# CSS_PROP_AZIMUTH:
-#
-#A left-side
-#A far-left
-#A #left
-#A center-left
-#A #center
-#A center-right
-#A right
-#A far-right
-#A right-side
-#A behind
-#A leftwards
-#A rightwards
-#
-# CSS_PROP_SPEECH_RATE:
-#
-#A x-slow
-#A slow
-#A #medium
-#A x-fast
-#A fast
-#A faster
-#A slower
-#
-# CSS_PROP_VOLUME:
-#
-#A silent
-#A x-soft
-#A soft
-#A #medium
-#A high
-#A x-high
-#A x-loud
-#
-# CSS_PROP_PITCH:
-#
-#A x-low
-#A low
-#A #medium
-#A #high
-#A #x-high
-#
-# CSS_PROP_SPEAK:
-#
-#A #normal
-#A #none
-#A spell-out
-#
-# CSS_PROP_SPEAK_HEADER:
-#
-#A #once
-#A always
-#
-# CSS_PROP_SPEAK_NUMERAL:
-#
-#A digits
-#A continuous
-#
-# CSS_PROP_SPEAK_PUNCTUATION:
-#
-#A code
-#A #none
 
 # CSS3 Values
 # CSS_PROP_BOX_ALIGN
diff --git a/WebCore/khtml/css/html4.css b/WebCore/khtml/css/html4.css
index 7b5ef2f..0d572e4 100644
--- a/WebCore/khtml/css/html4.css
+++ b/WebCore/khtml/css/html4.css
@@ -107,7 +107,6 @@ HR  {
         border-width: 1px;
         margin-left: auto;
         margin-right: auto;
-        -khtml-flow-mode: -khtml-around-floats;
 }
 
 MAP { 
@@ -166,11 +165,10 @@ H6 {
 
 TABLE { 
 	display: table;
-	border-collapse: separate;
+        border-collapse: separate;
 	text-align: -khtml-auto;
 	border-spacing: 2px;
 	border-color: gray;
-        -khtml-flow-mode: -khtml-around-floats;
 }
 
 TABLE[align="center"] { 
diff --git a/WebCore/khtml/rendering/bidi.cpp b/WebCore/khtml/rendering/bidi.cpp
index 84cb5b8..b63f543 100644
--- a/WebCore/khtml/rendering/bidi.cpp
+++ b/WebCore/khtml/rendering/bidi.cpp
@@ -1282,12 +1282,12 @@ void RenderBlock::layoutInlineChildren(bool relayoutChildren)
 #if BIDI_DEBUG > 1 || defined( DEBUG_LINEBREAKS )
     kdDebug(6041) << " ------- bidi start " << this << " -------" << endl;
 #endif
-    int toAdd = borderBottom();
-    m_height = borderTop();
-
-    m_height += paddingTop();
-    toAdd += paddingBottom();
-
+    
+    m_height = borderTop() + paddingTop();
+    int toAdd = borderBottom() + paddingBottom();
+    if (style()->overflow() == OSCROLL && m_layer)
+        toAdd += m_layer->horizontalScrollbarHeight();
+    
     // Clear out our line boxes.
     deleteLineBoxes();
     
diff --git a/WebCore/khtml/rendering/render_block.cpp b/WebCore/khtml/rendering/render_block.cpp
index 65723c5..53b869f 100644
--- a/WebCore/khtml/rendering/render_block.cpp
+++ b/WebCore/khtml/rendering/render_block.cpp
@@ -438,9 +438,12 @@ void RenderBlock::layoutBlock(bool relayoutChildren)
         layoutBlockChildren( relayoutChildren );
 
     // Expand our intrinsic height to encompass floats.
+    int toAdd = borderBottom() + paddingBottom();
+    if (style()->overflow() == OSCROLL && m_layer)
+        toAdd += m_layer->horizontalScrollbarHeight();
     if ( hasOverhangingFloats() && (isInlineBlockOrInlineTable() || isFloatingOrPositioned() || style()->hidesOverflow() ||
                                     (parent() && parent()->isFlexibleBox())) )
-        m_height = floatBottom() + borderBottom() + paddingBottom();
+        m_height = floatBottom() + toAdd;
            
     int oldHeight = m_height;
     calcHeight();
@@ -509,6 +512,9 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
         xPos = m_width - paddingRight() - borderRight();
 
     int toAdd = borderBottom() + paddingBottom();
+    if (style()->overflow() == OSCROLL && m_layer)
+        toAdd += m_layer->horizontalScrollbarHeight();
+    
     m_height = borderTop() + paddingTop();
 
     // Fieldsets need to find their legend and position it inside the border of the object.
@@ -724,10 +730,8 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
         // Note this occurs after the test for positioning and floating above, since
         // we want to ensure that we don't artificially increase our height because of
         // a positioned or floating child.
-        if ( (child->style()->hidesOverflow() || child->isFlexibleBox() || child->style()->flowAroundFloats() )
-             && !child->isFloating() &&
-             style()->width().isFixed() && child->minWidth() > lineWidth( m_height ) ) {
-            m_height = QMAX( m_height, floatBottom() );
+        if (child->avoidsFloats() && style()->width().isFixed() && child->minWidth() > lineWidth(m_height)) {
+            m_height = kMax(m_height, floatBottom());
             shouldCollapseChild = false;
             clearOccurred = true;
         }
@@ -868,11 +872,9 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
 
             child->setPos(child->xPos(), ypos);
             if (ypos != yPosEstimate) {
-                if (child->style()->htmlHacks() && child->style()->flowAroundFloats() &&
-                    child->style()->width().isPercent())
-                    // The child's width can be a percentage width and if it has the
-                    // quirky flowAroundFloats
-                    // property set, when the child shifts to clear an item, its width can
+                if (child->style()->width().isPercent() && child->usesLineWidth())
+                    // The child's width is a percentage of the line width.
+                    // When the child shifts to clear an item, its width can
                     // change (because it has more available line width).
                     // So go ahead and mark the item as dirty.
                     child->setChildNeedsLayout(true);
@@ -920,13 +922,11 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
             // If our value of clear caused us to be repositioned vertically to be
             // underneath a float, we might have to do another layout to take into account
             // the extra space we now have available.
-            if (child->style()->htmlHacks() && child->style()->flowAroundFloats() &&
-                child->style()->width().isPercent())
-                // The child's width can be a percentage width and if it has the
-                // quirky flowAroundFloats
-                // property set, when the child shifts to clear an item, its width can
+            if (child->style()->width().isPercent() && child->usesLineWidth())
+                // The child's width is a percentage of the line width.
+                // When the child shifts to clear an item, its width can
                 // change (because it has more available line width).
-                // So go ahead an mark the item as dirty.
+                // So go ahead and mark the item as dirty.
                 child->setChildNeedsLayout(true);
             if (child->containsFloats())
                 child->markAllDescendantsWithFloatsForLayout();
@@ -945,10 +945,9 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
             // Add in our left margin.
             chPos += child->marginLeft();
             
-            // html blocks flow around floats
-            if (child->style()->hidesOverflow() || child->isFlexibleBox() || 
-                child->isTable() || child->isReplaced() || child->style()->flowAroundFloats())
-            {
+            // Some objects (e.g., tables, horizontal rules, overflow:auto blocks) avoid floats.  They need
+            // to shift over as necessary to dodge any floats that might get in the way.
+            if (child->avoidsFloats()) {
                 int leftOff = leftOffset(m_height);
                 if (leftOff != xPos) {
                     // The object is shifting right. The object might be centered, so we need to
@@ -965,8 +964,7 @@ void RenderBlock::layoutBlockChildren( bool relayoutChildren )
             }
         } else {
             chPos -= child->width() + child->marginRight();
-            if (child->style()->hidesOverflow() || child->isFlexibleBox() || 
-                child->isTable() || child->isReplaced() || child->style()->flowAroundFloats())
+            if (child->avoidsFloats())
                 chPos -= (xPos - rightOffset(m_height));
         }
 
@@ -1734,56 +1732,42 @@ RenderBlock::clearFloats()
     if (m_floatingObjects)
         m_floatingObjects->clear();
 
-    if (isFloating() || isPositioned() || style()->hidesOverflow() || style()->flowAroundFloats() || isFlexibleBox()) 
+    // Inline blocks are covered by the isReplaced() check in the avoidFloats method.
+    if (avoidsFloats() || isRoot() || isCanvas() || isFloatingOrPositioned() || isTableCell())
         return;
     
-    RenderObject *prev = previousSibling();
-
-    // find the element to copy the floats from
-    // pass non-flows
-    // pass fAF's unless they contain overhanging stuff
+    // Attempt to locate a previous sibling with overhanging floats.  We skip any elements that are
+    // out of flow (like floating/positioned elements), and we also skip over any objects that may have shifted
+    // to avoid floats.
     bool parentHasFloats = false;
-    while (prev) {
-        if (!prev->isRenderBlock() || prev->isFloating() || prev->isPositioned() ||
-            prev->style()->hidesOverflow() || prev->isFlexibleBox() ||
-            (prev->style()->flowAroundFloats() &&
-             // A <table> or <ul> can have a height of 0, so its ypos may be the same
-             // as m_y.  That's why we have a <= and not a < here. -dwh
-             (static_cast<RenderBlock *>(prev)->floatBottom()+prev->yPos() <= m_y ))) {
-            if ( prev->isFloating() && parent()->isRenderBlock() ) {
-                parentHasFloats = true;
-            }
-            prev = prev->previousSibling();
-        } else
-            break;
+    RenderObject *prev = previousSibling();
+    while (prev && (!prev->isRenderBlock() || prev->avoidsFloats() || prev->isFloatingOrPositioned())) {
+        if (prev->isFloating())
+            parentHasFloats = true;
+         prev = prev->previousSibling();
     }
 
+    // First add in floats from the parent.
     int offset = m_y;
     if (parentHasFloats)
         addOverHangingFloats( static_cast<RenderBlock *>( parent() ),
                               parent()->borderLeft() + parent()->paddingLeft(), offset, false );
 
     int xoffset = 0;
-    if (prev) {
-        if(prev->isTableCell()) return;
+    if (prev)
         offset -= prev->yPos();
-    } else {
+    else {
         prev = parent();
-        if(!prev) return;
         xoffset += prev->borderLeft() + prev->paddingLeft();
     }
     //kdDebug() << "RenderBlock::clearFloats found previous "<< (void *)this << " prev=" << (void *)prev<< endl;
 
-    // add overhanging special objects from the previous RenderBlock
-    if(!prev->isRenderBlock()) return;
-    RenderBlock * flow = static_cast<RenderBlock *>(prev);
-    if(!flow->m_floatingObjects) return;
-    if (style()->hidesOverflow() || isFlexibleBox() ||
-        (( style()->htmlHacks() || isTable()) && style()->flowAroundFloats()))
-        return; // these elements don't allow floats from previous blocks to intrude into their space.
-
-    if(flow->floatBottom() > offset)
-        addOverHangingFloats( flow, xoffset, offset );
+    // Add overhanging floats from the previous RenderBlock, but only if it has a float that intrudes into our space.
+    if (!prev->isRenderBlock()) return;
+    RenderBlock* block = static_cast<RenderBlock *>(prev);
+    if (!block->m_floatingObjects) return;
+    if (block->floatBottom() > offset)
+        addOverHangingFloats(block, xoffset, offset);
 }
 
 void RenderBlock::addOverHangingFloats( RenderBlock *flow, int xoff, int offset, bool child )
diff --git a/WebCore/khtml/rendering/render_box.cpp b/WebCore/khtml/rendering/render_box.cpp
index 11cad74..c08fbcb 100644
--- a/WebCore/khtml/rendering/render_box.cpp
+++ b/WebCore/khtml/rendering/render_box.cpp
@@ -513,9 +513,7 @@ short RenderBox::containingBlockWidth() const
         return canvas()->view()->visibleWidth();
     
     RenderBlock* cb = containingBlock();
-    if ((style()->hidesOverflow() || isFlexibleBox() ||
-         ((style()->htmlHacks() || isTable()) && style()->flowAroundFloats()))
-            && style()->width().isVariable())
+    if (usesLineWidth())
         return cb->lineWidth(m_y);
     else
         return cb->contentWidth();
@@ -696,12 +694,8 @@ void RenderBox::calcWidth()
         Length ml = style()->marginLeft();
         Length mr = style()->marginRight();
 
-        int cw;
         RenderBlock *cb = containingBlock();
-        if ((style()->width().isVariable() && (style()->hidesOverflow() || isFlexibleBox())) || style()->flowAroundFloats())
-            cw = cb->lineWidth( m_y );
-        else
-            cw = cb->contentWidth();
+        int cw = containingBlockWidth();
 
         if (cw<0) cw = 0;
 
diff --git a/WebCore/khtml/rendering/render_object.cpp b/WebCore/khtml/rendering/render_object.cpp
index b7b66ac..413e83d 100644
--- a/WebCore/khtml/rendering/render_object.cpp
+++ b/WebCore/khtml/rendering/render_object.cpp
@@ -170,6 +170,11 @@ bool RenderObject::isBody() const
     return element() && element()->renderer() == this && element()->id() == ID_BODY;
 }
 
+bool RenderObject::isHR() const
+{
+    return element() && element()->id() == ID_HR;
+}
+
 bool RenderObject::isHTMLMarquee() const
 {
     return element() && element()->renderer() == this && element()->id() == ID_MARQUEE;
@@ -1937,7 +1942,22 @@ void RenderObject::collectBorders(QPtrList<CollapsedBorderValue>& borderStyles)
     for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling())
         curr->collectBorders(borderStyles);
 }
-    
+
+bool RenderObject::avoidsFloats() const
+{
+    return isReplaced() || isTable() || style()->hidesOverflow() || isHR() || isFlexibleBox(); 
+}
+
+bool RenderObject::usesLineWidth() const
+{
+    // 1. All auto-width objects that avoid floats should always use lineWidth
+    // 2. For objects with a specified width, we match WinIE's behavior:
+    // (a) tables use contentWidth
+    // (b) <hr>s use lineWidth
+    // (c) all other objects use lineWidth in quirks mode and contentWidth in strict mode.
+    return (avoidsFloats() && (style()->width().isVariable() || isHR() || (style()->htmlHacks() && !isTable())));
+}
+
 QChar RenderObject::backslashAsCurrencySymbol() const
 {
 #if !APPLE_CHANGES
diff --git a/WebCore/khtml/rendering/render_object.h b/WebCore/khtml/rendering/render_object.h
index 934d83b..17bcfb4 100644
--- a/WebCore/khtml/rendering/render_object.h
+++ b/WebCore/khtml/rendering/render_object.h
@@ -223,6 +223,7 @@ public:
     virtual bool isCanvas() const { return false; }
     bool isRoot() const;
     bool isBody() const;
+    bool isHR() const;
     virtual bool isBR() const { return false; }
     virtual bool isTableCell() const { return false; }
     virtual bool isTableRow() const { return false; }
@@ -632,7 +633,10 @@ public:
     virtual bool containsFloat(RenderObject* o) { return false; }
     virtual bool hasOverhangingFloats() { return false; }
 
-    // positioning of inline childs (bidi)
+    bool avoidsFloats() const;
+    bool usesLineWidth() const;
+
+    // positioning of inline children (bidi)
     virtual void position(InlineBox*, int, int, bool) {}
 
     enum SelectionState {
diff --git a/WebCore/khtml/rendering/render_style.h b/WebCore/khtml/rendering/render_style.h
index b262d60..861d882 100644
--- a/WebCore/khtml/rendering/render_style.h
+++ b/WebCore/khtml/rendering/render_style.h
@@ -727,7 +727,6 @@ protected:
             (_table_layout == other._table_layout) &&
             (_page_break_before == other._page_break_before) &&
             (_page_break_after == other._page_break_after) &&
-            (_flowAroundFloats == other._flowAroundFloats) &&
             (_styleType == other._styleType) &&
             (_affectedByHover == other._affectedByHover) &&
             (_affectedByActive == other._affectedByActive) &&
@@ -752,8 +751,6 @@ protected:
         
         EPageBreak _page_break_before : 2;
         EPageBreak _page_break_after : 2;
-        
-        bool _flowAroundFloats :1;
 
         PseudoId _styleType : 3;
         bool _affectedByHover : 1;
@@ -815,7 +812,6 @@ protected:
 	noninherited_flags._table_layout = initialTableLayout();
         noninherited_flags._page_break_before = initialPageBreak();
         noninherited_flags._page_break_after = initialPageBreak();
-	noninherited_flags._flowAroundFloats = initialFlowAroundFloats();
 	noninherited_flags._styleType = NOPSEUDO;
         noninherited_flags._affectedByHover = false;
         noninherited_flags._affectedByActive = false;
@@ -1141,9 +1137,6 @@ public:
     bool htmlHacks() const { return inherited_flags._htmlHacks; }
     void setHtmlHacks(bool b=true) { inherited_flags._htmlHacks = b; }
 
-    bool flowAroundFloats() const { return  noninherited_flags._flowAroundFloats; }
-    void setFlowAroundFloats(bool b=true) {  noninherited_flags._flowAroundFloats = b; }
-
     bool hasAutoZIndex() { return box->z_auto; }
     void setHasAutoZIndex() { SET_VAR(box, z_auto, true) }
     int zIndex() const { return box->z_index; }
@@ -1245,7 +1238,6 @@ public:
     static Length initialLineHeight() { return Length(-100, Percent); }
     static ETextAlign initialTextAlign() { return TAAUTO; }
     static ETextDecoration initialTextDecoration() { return TDNONE; }
-    static bool initialFlowAroundFloats() { return false; }
     static int initialOutlineOffset() { return 0; }
     static float initialOpacity() { return 1.0f; }
     static EBoxAlignment initialBoxAlign() { return BSTRETCH; }
diff --git a/WebCore/khtml/rendering/render_table.cpp b/WebCore/khtml/rendering/render_table.cpp
index 8c95e7d..88cc25f 100644
--- a/WebCore/khtml/rendering/render_table.cpp
+++ b/WebCore/khtml/rendering/render_table.cpp
@@ -203,8 +203,7 @@ void RenderTable::calcWidth()
     else {
         // An auto width table should shrink to fit within the line width if necessary in order to 
         // avoid overlapping floats.
-        if (style()->flowAroundFloats())
-            availableWidth = cb->lineWidth( m_y );
+        availableWidth = cb->lineWidth( m_y );
         
         // Subtract out any fixed margins from our available width for auto width tables.
         int marginTotal = 0;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list