[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:44:46 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit af13e90a9d99498f20898b1ecadd30942afde0fd
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jun 9 20:19:05 2004 +0000
Fix for 3678031, implement better flexing for Emerson headers. This involved adding support for max-width: intrinsic,
fixing the box layout algorithm to properly deal with max-widths, and implementing support for baseline alignment
so that boxes can be aligned vertically along their interior baselines.
Reviewed by kocienda
* khtml/css/cssparser.cpp:
(CSSParser::parseValue):
(CSSParser::parseShadow):
* khtml/css/cssparser.h:
* khtml/css/cssproperties.c:
(hash_prop):
(findProp):
* khtml/css/cssproperties.h:
* khtml/css/cssproperties.in:
* khtml/css/cssstyleselector.cpp:
(khtml::CSSStyleSelector::applyProperty):
* khtml/css/cssvalues.c:
(hash_val):
(findValue):
* khtml/css/cssvalues.h:
* khtml/css/cssvalues.in:
* khtml/misc/khtmllayout.h:
(khtml::):
* khtml/rendering/render_block.cpp:
(khtml::RenderBlock::baselinePosition):
(khtml::RenderBlock::getBaselineOfFirstLineBox):
* khtml/rendering/render_block.h:
* khtml/rendering/render_box.cpp:
(RenderBox::RenderBox):
(RenderBox::overrideWidth):
(RenderBox::overrideHeight):
(RenderBox::calcWidth):
(RenderBox::calcHeight):
* khtml/rendering/render_box.h:
(khtml::RenderBox::overrideSize):
(khtml::RenderBox::setOverrideSize):
* khtml/rendering/render_flexbox.cpp:
(khtml::RenderFlexibleBox::calcMinMaxWidth):
(khtml::RenderFlexibleBox::layoutBlock):
(khtml::RenderFlexibleBox::layoutHorizontalBox):
(khtml::RenderFlexibleBox::layoutVerticalBox):
(khtml::RenderFlexibleBox::placeChild):
(khtml::RenderFlexibleBox::allowedChildFlex):
* khtml/rendering/render_flexbox.h:
* khtml/rendering/render_image.cpp:
(RenderImage::isWidthSpecified):
(RenderImage::isHeightSpecified):
* khtml/rendering/render_object.h:
(khtml::RenderObject::getBaselineOfFirstLineBox):
(khtml::RenderObject::overrideSize):
(khtml::RenderObject::overrideWidth):
(khtml::RenderObject::overrideHeight):
(khtml::RenderObject::setOverrideSize):
* khtml/rendering/render_style.cpp:
(StyleFlexibleBoxData::StyleFlexibleBoxData):
(StyleFlexibleBoxData::operator==):
(ShadowData::operator==):
* khtml/rendering/render_style.h:
(khtml::RenderStyle::boxPack):
(khtml::RenderStyle::setBoxPack):
* khtml/rendering/table_layout.cpp:
(AutoTableLayout::layout):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@6802 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 6f87899..76d9a31 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,69 @@
+2004-06-09 David Hyatt <hyatt at apple.com>
+
+ Fix for 3678031, implement better flexing for Emerson headers. This involved adding support for max-width: intrinsic,
+ fixing the box layout algorithm to properly deal with max-widths, and implementing support for baseline alignment
+ so that boxes can be aligned vertically along their interior baselines.
+
+ Reviewed by kocienda
+
+ * khtml/css/cssparser.cpp:
+ (CSSParser::parseValue):
+ (CSSParser::parseShadow):
+ * khtml/css/cssparser.h:
+ * khtml/css/cssproperties.c:
+ (hash_prop):
+ (findProp):
+ * khtml/css/cssproperties.h:
+ * khtml/css/cssproperties.in:
+ * khtml/css/cssstyleselector.cpp:
+ (khtml::CSSStyleSelector::applyProperty):
+ * khtml/css/cssvalues.c:
+ (hash_val):
+ (findValue):
+ * khtml/css/cssvalues.h:
+ * khtml/css/cssvalues.in:
+ * khtml/misc/khtmllayout.h:
+ (khtml::):
+ * khtml/rendering/render_block.cpp:
+ (khtml::RenderBlock::baselinePosition):
+ (khtml::RenderBlock::getBaselineOfFirstLineBox):
+ * khtml/rendering/render_block.h:
+ * khtml/rendering/render_box.cpp:
+ (RenderBox::RenderBox):
+ (RenderBox::overrideWidth):
+ (RenderBox::overrideHeight):
+ (RenderBox::calcWidth):
+ (RenderBox::calcHeight):
+ * khtml/rendering/render_box.h:
+ (khtml::RenderBox::overrideSize):
+ (khtml::RenderBox::setOverrideSize):
+ * khtml/rendering/render_flexbox.cpp:
+ (khtml::RenderFlexibleBox::calcMinMaxWidth):
+ (khtml::RenderFlexibleBox::layoutBlock):
+ (khtml::RenderFlexibleBox::layoutHorizontalBox):
+ (khtml::RenderFlexibleBox::layoutVerticalBox):
+ (khtml::RenderFlexibleBox::placeChild):
+ (khtml::RenderFlexibleBox::allowedChildFlex):
+ * khtml/rendering/render_flexbox.h:
+ * khtml/rendering/render_image.cpp:
+ (RenderImage::isWidthSpecified):
+ (RenderImage::isHeightSpecified):
+ * khtml/rendering/render_object.h:
+ (khtml::RenderObject::getBaselineOfFirstLineBox):
+ (khtml::RenderObject::overrideSize):
+ (khtml::RenderObject::overrideWidth):
+ (khtml::RenderObject::overrideHeight):
+ (khtml::RenderObject::setOverrideSize):
+ * khtml/rendering/render_style.cpp:
+ (StyleFlexibleBoxData::StyleFlexibleBoxData):
+ (StyleFlexibleBoxData::operator==):
+ (ShadowData::operator==):
+ * khtml/rendering/render_style.h:
+ (khtml::RenderStyle::boxPack):
+ (khtml::RenderStyle::setBoxPack):
+ * khtml/rendering/table_layout.cpp:
+ (AutoTableLayout::layout):
+
2004-06-09 Richard Williamson <rjw at apple.com>
Added support for drawing un-rasterized transformed PDFs.
diff --git a/WebCore/khtml/css/cssparser.cpp b/WebCore/khtml/css/cssparser.cpp
index 570030c..723d536 100644
--- a/WebCore/khtml/css/cssparser.cpp
+++ b/WebCore/khtml/css/cssparser.cpp
@@ -825,14 +825,17 @@ bool CSSParser::parseValue( int propId, bool important )
case CSS_PROP_MAX_HEIGHT: // <length> | <percentage> | none | inherit
case CSS_PROP_MAX_WIDTH: // <length> | <percentage> | none | inherit
- if ( id == CSS_VAL_NONE ) {
+ if (id == CSS_VAL_NONE || id == CSS_VAL_INTRINSIC || id == CSS_VAL_MIN_INTRINSIC) {
valid_primitive = true;
break;
}
/* nobreak */
case CSS_PROP_MIN_HEIGHT: // <length> | <percentage> | inherit
case CSS_PROP_MIN_WIDTH: // <length> | <percentage> | inherit
- valid_primitive = ( !id && validUnit( value, FLength|FPercent|FNonNeg, strict ) );
+ if (id == CSS_VAL_INTRINSIC || id == CSS_VAL_MIN_INTRINSIC)
+ valid_primitive = true;
+ else
+ valid_primitive = ( !id && validUnit( value, FLength|FPercent|FNonNeg, strict ) );
break;
case CSS_PROP_FONT_SIZE:
@@ -865,7 +868,7 @@ bool CSSParser::parseValue( int propId, bool important )
case CSS_PROP_HEIGHT: // <length> | <percentage> | auto | inherit
case CSS_PROP_WIDTH: // <length> | <percentage> | auto | inherit
- if ( id == CSS_VAL_AUTO )
+ if (id == CSS_VAL_AUTO || id == CSS_VAL_INTRINSIC || id == CSS_VAL_MIN_INTRINSIC)
valid_primitive = true;
else
// ### handle multilength case where we allow relative units
@@ -1055,8 +1058,6 @@ bool CSSParser::parseValue( int propId, bool important )
case CSS_PROP__KHTML_BOX_ORDINAL_GROUP:
valid_primitive = validUnit(value, FInteger|FNonNeg, true);
break;
- case CSS_PROP__KHTML_BOX_FLEX_GROUP_TRANSITION:
- return parseFlexGroupTransition(propId, important);
case CSS_PROP__KHTML_MARQUEE: {
const int properties[5] = { CSS_PROP__KHTML_MARQUEE_DIRECTION, CSS_PROP__KHTML_MARQUEE_INCREMENT,
CSS_PROP__KHTML_MARQUEE_REPETITION,
@@ -1932,151 +1933,6 @@ bool CSSParser::parseShadow(int propId, bool important)
return context.failed();
}
-struct FlexGroupTransitionParseContext {
- FlexGroupTransitionParseContext()
- :values(0), allowGroup1(true), allowSlash(false), allowGroup2(false), allowLength(false),
- allowBreak(true), autoValue(false), group1(0), group2(0), length(0)
- {}
-
- ~FlexGroupTransitionParseContext() {
- if (!allowBreak) {
- delete values;
- delete length;
- }
- }
-
- bool failed() { return allowBreak = false; }
-
- bool allowGroup() const {
- return allowGroup1 || allowGroup2;
- }
-
- void commitGroup(Value* val) {
- if (allowGroup1) {
- allowGroup1 = allowGroup2 = allowBreak = false;
- allowSlash = allowLength = true;
- group1 = (unsigned int)val->fValue;
- }
- else if (allowGroup2) {
- allowGroup1 = allowGroup2 = allowBreak = allowSlash = false;
- allowLength = true;
- group2 = (unsigned int)val->fValue;
- }
- }
-
- void commitSlash() {
- allowSlash = allowLength = allowGroup1 = allowBreak = false;
- allowGroup2 = true;
- }
-
- void commitLength(Value* v) {
- length = new CSSPrimitiveValueImpl(v->fValue,
- (CSSPrimitiveValue::UnitTypes)v->unit);
- allowLength = allowGroup1 = allowGroup2 = allowSlash = false;
- allowBreak = true;
- }
-
- void commitAutoValue() {
- autoValue = true;
- allowSlash = allowGroup1 = allowGroup2 = allowLength = false;
- allowBreak = true;
- }
-
- void commitValue() {
- // Handle the ,, case gracefully by doing nothing.
- if (autoValue || ((group1 || group2) && length)) {
- if (!values)
- values = new CSSValueListImpl();
-
- // Construct the current shadow value and add it to the list.
- values->append(autoValue ?
- new FlexGroupTransitionValueImpl() :
- new FlexGroupTransitionValueImpl(group1, group2, length));
- }
-
- // Now reset for the next shadow value.
- group1 = group2 = 0;
- length = 0;
- allowGroup1 = allowBreak = true;
- allowSlash = allowGroup2 = allowLength = autoValue = false;
- }
-
- CSSValueListImpl* values;
- bool allowGroup1;
- bool allowSlash;
- bool allowGroup2;
- bool allowLength;
- bool allowBreak;
-
- // The current value data
- bool autoValue;
- unsigned int group1;
- unsigned int group2;
- CSSPrimitiveValueImpl* length;
-};
-
-bool CSSParser::parseFlexGroupTransition(int propId, bool important)
-{
- FlexGroupTransitionParseContext context;
- Value* val;
- while ((val = valueList->current())) {
- // Check for a comma break first.
- if (val->unit == Value::Operator) {
- if (val->iValue == '/') {
- if (context.allowSlash)
- context.commitSlash();
- else
- return context.failed();
- }
- else if (val->iValue != ',' || !context.allowBreak)
- // Other operators aren't legal or we aren't done with the current flex group transitiion
- // value. Treat as invalid.
- return context.failed();
-
- // The value is good. Commit it.
- context.commitValue();
- }
- // See if an auto value was specified
- else if (val->id == CSS_VAL_AUTO) {
- if (context.allowGroup1)
- context.commitAutoValue();
- else
- return context.failed();
- }
- // Check to see if we're a non-negative number.
- else if (validUnit(val, FInteger|FNonNeg, true)) {
- if (context.allowGroup())
- context.commitGroup(val);
- else
- return context.failed();
- }
- // Check to see if we're a length.
- else if (validUnit(val, FLength, true)) {
- // We required a length and didn't get one. Invalid.
- if (!context.allowLength)
- return context.failed();
-
- // A length is allowed here. Construct the value and add it.
- context.commitLength(val);
- }
- else
- return context.failed();
-
- valueList->next();
- }
-
- if (context.allowBreak) {
- context.commitValue();
- if (context.values->length()) {
- addProperty(propId, context.values, important);
- valueList->next();
- return true;
- }
- }
-
- return context.failed();
-}
-
static inline int yyerror( const char *str ) {
#ifdef CSS_DEBUG
kdDebug( 6080 ) << "CSS parse error " << str << endl;
diff --git a/WebCore/khtml/css/cssparser.h b/WebCore/khtml/css/cssparser.h
index 56a5146..e2b4b35 100644
--- a/WebCore/khtml/css/cssparser.h
+++ b/WebCore/khtml/css/cssparser.h
@@ -136,7 +136,6 @@ namespace DOM {
// CSS3 Parsing Routines (for properties specific to CSS3)
bool parseShadow(int propId, bool important);
- bool parseFlexGroupTransition(int propId, bool important);
int yyparse( void );
public:
diff --git a/WebCore/khtml/css/cssproperties.c b/WebCore/khtml/css/cssproperties.c
index b9f9893..315550f 100644
--- a/WebCore/khtml/css/cssproperties.c
+++ b/WebCore/khtml/css/cssproperties.c
@@ -7,7 +7,7 @@ struct props {
const char *name;
int id;
};
-/* maximum key range = 917, duplicates = 0 */
+/* maximum key range = 1432, duplicates = 0 */
#ifdef __GNUC__
__inline
@@ -21,32 +21,32 @@ hash_prop (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 0, 922, 922, 922, 922,
- 922, 0, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 65, 55, 0,
- 0, 0, 90, 100, 0, 0, 0, 15, 0, 35,
- 5, 0, 50, 45, 0, 75, 0, 105, 0, 420,
- 60, 160, 0, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922, 922, 922, 922, 922,
- 922, 922, 922, 922, 922, 922
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 0, 1437, 1437, 1437, 1437,
+ 1437, 0, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 15, 10, 0,
+ 0, 0, 15, 170, 0, 0, 0, 10, 0, 85,
+ 390, 0, 60, 25, 0, 65, 0, 10, 10, 205,
+ 80, 295, 10, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437, 1437,
+ 1437, 1437, 1437, 1437, 1437, 1437
};
register int hval = len;
@@ -130,232 +130,283 @@ findProp (register const char *str, register unsigned int len)
{
enum
{
- TOTAL_KEYWORDS = 135,
+ TOTAL_KEYWORDS = 134,
MIN_WORD_LENGTH = 3,
MAX_WORD_LENGTH = 32,
MIN_HASH_VALUE = 5,
- MAX_HASH_VALUE = 921
+ MAX_HASH_VALUE = 1436
};
static const struct props wordlist_prop[] =
{
{"color", CSS_PROP_COLOR},
- {"direction", CSS_PROP_DIRECTION},
- {"content", CSS_PROP_CONTENT},
- {"top", CSS_PROP_TOP},
- {"clip", CSS_PROP_CLIP},
{"border", CSS_PROP_BORDER},
- {"border-color", CSS_PROP_BORDER_COLOR},
+ {"left", CSS_PROP_LEFT},
{"clear", CSS_PROP_CLEAR},
- {"z-index", CSS_PROP_Z_INDEX},
+ {"border-color", CSS_PROP_BORDER_COLOR},
+ {"float", CSS_PROP_FLOAT},
+ {"border-left", CSS_PROP_BORDER_LEFT},
+ {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR},
+ {"top", CSS_PROP_TOP},
+ {"clip", CSS_PROP_CLIP},
{"size", CSS_PROP_SIZE},
- {"text-indent", CSS_PROP_TEXT_INDENT},
- {"left", CSS_PROP_LEFT},
- {"bottom", CSS_PROP_BOTTOM},
- {"font", CSS_PROP_FONT},
- {"right", CSS_PROP_RIGHT},
- {"height", CSS_PROP_HEIGHT},
{"border-top", CSS_PROP_BORDER_TOP},
- {"line-height", CSS_PROP_LINE_HEIGHT},
- {"outline", CSS_PROP_OUTLINE},
+ {"cursor", CSS_PROP_CURSOR},
{"border-top-color", CSS_PROP_BORDER_TOP_COLOR},
- {"outline-color", CSS_PROP_OUTLINE_COLOR},
- {"position", CSS_PROP_POSITION},
- {"text-decoration", CSS_PROP_TEXT_DECORATION},
- {"min-height", CSS_PROP_MIN_HEIGHT},
- {"text-decoration-color", CSS_PROP_TEXT_DECORATION_COLOR},
- {"border-left", CSS_PROP_BORDER_LEFT},
+ {"bottom", CSS_PROP_BOTTOM},
+ {"quotes", CSS_PROP_QUOTES},
{"border-bottom", CSS_PROP_BORDER_BOTTOM},
- {"float", CSS_PROP_FLOAT},
- {"border-left-color", CSS_PROP_BORDER_LEFT_COLOR},
{"border-bottom-color", CSS_PROP_BORDER_BOTTOM_COLOR},
+ {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR},
+ {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR},
+ {"border-collapse", CSS_PROP_BORDER_COLLAPSE},
+ {"right", CSS_PROP_RIGHT},
+ {"height", CSS_PROP_HEIGHT},
{"border-right", CSS_PROP_BORDER_RIGHT},
- {"counter-increment", CSS_PROP_COUNTER_INCREMENT},
{"border-right-color", CSS_PROP_BORDER_RIGHT_COLOR},
- {"unicode-bidi", CSS_PROP_UNICODE_BIDI},
- {"font-size", CSS_PROP_FONT_SIZE},
- {"font-stretch", CSS_PROP_FONT_STRETCH},
- {"cursor", CSS_PROP_CURSOR},
- {"-khtml-box-orient", CSS_PROP__KHTML_BOX_ORIENT},
- {"-khtml-box-direction", CSS_PROP__KHTML_BOX_DIRECTION},
- {"counter-reset", CSS_PROP_COUNTER_RESET},
- {"orphans", CSS_PROP_ORPHANS},
- {"caption-side", CSS_PROP_CAPTION_SIDE},
- {"margin", CSS_PROP_MARGIN},
+ {"width", CSS_PROP_WIDTH},
+ {"border-width", CSS_PROP_BORDER_WIDTH},
+ {"overflow", CSS_PROP_OVERFLOW},
+ {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE},
+ {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH},
{"page", CSS_PROP_PAGE},
- {"padding", CSS_PROP_PADDING},
- {"-khtml-binding", CSS_PROP__KHTML_BINDING},
- {"quotes", CSS_PROP_QUOTES},
- {"text-align", CSS_PROP_TEXT_ALIGN},
- {"font-variant", CSS_PROP_FONT_VARIANT},
- {"vertical-align", CSS_PROP_VERTICAL_ALIGN},
- {"border-collapse", CSS_PROP_BORDER_COLLAPSE},
- {"-khtml-box-lines", CSS_PROP__KHTML_BOX_LINES},
- {"margin-top", CSS_PROP_MARGIN_TOP},
+ {"-khtml-user-select", CSS_PROP__KHTML_USER_SELECT},
+ {"scrollbar-3dlight-color", CSS_PROP_SCROLLBAR_3DLIGHT_COLOR},
+ {"-khtml-box-pack", CSS_PROP__KHTML_BOX_PACK},
+ {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH},
+ {"-khtml-box-flex", CSS_PROP__KHTML_BOX_FLEX},
+ {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE},
+ {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER},
+ {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH},
+ {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR},
+ {"white-space", CSS_PROP_WHITE_SPACE},
+ {"table-layout", CSS_PROP_TABLE_LAYOUT},
{"max-height", CSS_PROP_MAX_HEIGHT},
- {"padding-top", CSS_PROP_PADDING_TOP},
+ {"-khtml-user-drag", CSS_PROP__KHTML_USER_DRAG},
+ {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED},
+ {"text-shadow", CSS_PROP_TEXT_SHADOW},
{"opacity", CSS_PROP_OPACITY},
- {"scrollbar-track-color", CSS_PROP_SCROLLBAR_TRACK_COLOR},
- {"visibility", CSS_PROP_VISIBILITY},
{"border-style", CSS_PROP_BORDER_STYLE},
- {"margin-left", CSS_PROP_MARGIN_LEFT},
- {"margin-bottom", CSS_PROP_MARGIN_BOTTOM},
- {"letter-spacing", CSS_PROP_LETTER_SPACING},
- {"-khtml-box-pack", CSS_PROP__KHTML_BOX_PACK},
- {"-khtml-marquee", CSS_PROP__KHTML_MARQUEE},
- {"margin-right", CSS_PROP_MARGIN_RIGHT},
- {"scrollbar-3dlight-color", CSS_PROP_SCROLLBAR_3DLIGHT_COLOR},
+ {"visibility", CSS_PROP_VISIBILITY},
+ {"max-width", CSS_PROP_MAX_WIDTH},
+ {"scrollbar-shadow-color", CSS_PROP_SCROLLBAR_SHADOW_COLOR},
+ {"direction", CSS_PROP_DIRECTION},
+ {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE},
+ {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH},
+ {"outline", CSS_PROP_OUTLINE},
+ {"font", CSS_PROP_FONT},
+ {"outline-color", CSS_PROP_OUTLINE_COLOR},
+ {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE},
+ {"unicode-bidi", CSS_PROP_UNICODE_BIDI},
+ {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR},
{"list-style", CSS_PROP_LIST_STYLE},
- {"padding-left", CSS_PROP_PADDING_LEFT},
- {"-khtml-user-select", CSS_PROP__KHTML_USER_SELECT},
- {"padding-bottom", CSS_PROP_PADDING_BOTTOM},
- {"-khtml-marquee-direction", CSS_PROP__KHTML_MARQUEE_DIRECTION},
- {"-khtml-box-flex", CSS_PROP__KHTML_BOX_FLEX},
- {"empty-cells", CSS_PROP_EMPTY_CELLS},
- {"padding-right", CSS_PROP_PADDING_RIGHT},
- {"-apple-line-clamp", CSS_PROP__APPLE_LINE_CLAMP},
- {"font-style", CSS_PROP_FONT_STYLE},
- {"text-transform", CSS_PROP_TEXT_TRANSFORM},
- {"-khtml-box-align", CSS_PROP__KHTML_BOX_ALIGN},
- {"background", CSS_PROP_BACKGROUND},
- {"border-top-style", CSS_PROP_BORDER_TOP_STYLE},
{"display", CSS_PROP_DISPLAY},
- {"outline-style", CSS_PROP_OUTLINE_STYLE},
- {"background-color", CSS_PROP_BACKGROUND_COLOR},
- {"border-spacing", CSS_PROP_BORDER_SPACING},
- {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT},
- {"scrollbar-face-color", CSS_PROP_SCROLLBAR_FACE_COLOR},
- {"outline-offset", CSS_PROP_OUTLINE_OFFSET},
- {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION},
- {"border-left-style", CSS_PROP_BORDER_LEFT_STYLE},
+ {"border-top-style", CSS_PROP_BORDER_TOP_STYLE},
+ {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR},
+ {"counter-reset", CSS_PROP_COUNTER_RESET},
+ {"widows", CSS_PROP_WIDOWS},
+ {"font-stretch", CSS_PROP_FONT_STRETCH},
{"border-bottom-style", CSS_PROP_BORDER_BOTTOM_STYLE},
+ {"z-index", CSS_PROP_Z_INDEX},
+ {"font-size", CSS_PROP_FONT_SIZE},
+ {"text-decoration", CSS_PROP_TEXT_DECORATION},
+ {"text-decoration-color", CSS_PROP_TEXT_DECORATION_COLOR},
+ {"outline-offset", CSS_PROP_OUTLINE_OFFSET},
+ {"empty-cells", CSS_PROP_EMPTY_CELLS},
+ {"position", CSS_PROP_POSITION},
+ {"orphans", CSS_PROP_ORPHANS},
+ {"-khtml-box-flex-group", CSS_PROP__KHTML_BOX_FLEX_GROUP},
+ {"caption-side", CSS_PROP_CAPTION_SIDE},
{"border-right-style", CSS_PROP_BORDER_RIGHT_STYLE},
- {"-khtml-user-drag", CSS_PROP__KHTML_USER_DRAG},
- {"scrollbar-highlight-color", CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR},
- {"width", CSS_PROP_WIDTH},
+ {"line-height", CSS_PROP_LINE_HEIGHT},
+ {"-khtml-user-modify", CSS_PROP__KHTML_USER_MODIFY},
{"font-size-adjust", CSS_PROP_FONT_SIZE_ADJUST},
- {"-khtml-marquee-speed", CSS_PROP__KHTML_MARQUEE_SPEED},
- {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE},
- {"font-family", CSS_PROP_FONT_FAMILY},
- {"list-style-position", CSS_PROP_LIST_STYLE_POSITION},
- {"table-layout", CSS_PROP_TABLE_LAYOUT},
+ {"-khtml-box-orient", CSS_PROP__KHTML_BOX_ORIENT},
+ {"-khtml-box-direction", CSS_PROP__KHTML_BOX_DIRECTION},
+ {"-khtml-marquee-style", CSS_PROP__KHTML_MARQUEE_STYLE},
+ {"vertical-align", CSS_PROP_VERTICAL_ALIGN},
+ {"background", CSS_PROP_BACKGROUND},
+ {"outline-width", CSS_PROP_OUTLINE_WIDTH},
+ {"background-color", CSS_PROP_BACKGROUND_COLOR},
+ {"padding", CSS_PROP_PADDING},
+ {"-khtml-marquee-direction", CSS_PROP__KHTML_MARQUEE_DIRECTION},
+ {"min-height", CSS_PROP_MIN_HEIGHT},
+ {"-khtml-box-lines", CSS_PROP__KHTML_BOX_LINES},
+ {"padding-left", CSS_PROP_PADDING_LEFT},
+ {"text-transform", CSS_PROP_TEXT_TRANSFORM},
+ {"text-align", CSS_PROP_TEXT_ALIGN},
+ {"margin", CSS_PROP_MARGIN},
+ {"margin-left", CSS_PROP_MARGIN_LEFT},
{"min-width", CSS_PROP_MIN_WIDTH},
{"background-repeat", CSS_PROP_BACKGROUND_REPEAT},
- {"border-width", CSS_PROP_BORDER_WIDTH},
- {"background-position", CSS_PROP_BACKGROUND_POSITION},
- {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING},
- {"-khtml-border-horizontal-spacing", CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING},
- {"page-break-before", CSS_PROP_PAGE_BREAK_BEFORE},
- {"-khtml-box-ordinal-group", CSS_PROP__KHTML_BOX_ORDINAL_GROUP},
- {"overflow", CSS_PROP_OVERFLOW},
- {"page-break-after", CSS_PROP_PAGE_BREAK_AFTER},
+ {"-apple-line-clamp", CSS_PROP__APPLE_LINE_CLAMP},
+ {"-khtml-marquee-repetition", CSS_PROP__KHTML_MARQUEE_REPETITION},
+ {"padding-top", CSS_PROP_PADDING_TOP},
{"list-style-image", CSS_PROP_LIST_STYLE_IMAGE},
- {"-khtml-user-modify", CSS_PROP__KHTML_USER_MODIFY},
+ {"letter-spacing", CSS_PROP_LETTER_SPACING},
+ {"border-spacing", CSS_PROP_BORDER_SPACING},
+ {"margin-top", CSS_PROP_MARGIN_TOP},
+ {"padding-bottom", CSS_PROP_PADDING_BOTTOM},
+ {"page-break-inside", CSS_PROP_PAGE_BREAK_INSIDE},
+ {"margin-bottom", CSS_PROP_MARGIN_BOTTOM},
+ {"outline-style", CSS_PROP_OUTLINE_STYLE},
+ {"font-style", CSS_PROP_FONT_STYLE},
+ {"-khtml-box-align", CSS_PROP__KHTML_BOX_ALIGN},
+ {"content", CSS_PROP_CONTENT},
+ {"font-weight", CSS_PROP_FONT_WEIGHT},
{"list-style-type", CSS_PROP_LIST_STYLE_TYPE},
- {"background-attachment", CSS_PROP_BACKGROUND_ATTACHMENT},
- {"border-top-width", CSS_PROP_BORDER_TOP_WIDTH},
- {"outline-width", CSS_PROP_OUTLINE_WIDTH},
- {"-khtml-marquee-style", CSS_PROP__KHTML_MARQUEE_STYLE},
- {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X},
+ {"padding-right", CSS_PROP_PADDING_RIGHT},
+ {"font-family", CSS_PROP_FONT_FAMILY},
+ {"margin-right", CSS_PROP_MARGIN_RIGHT},
+ {"font-variant", CSS_PROP_FONT_VARIANT},
+ {"-khtml-box-ordinal-group", CSS_PROP__KHTML_BOX_ORDINAL_GROUP},
+ {"-khtml-border-vertical-spacing", CSS_PROP__KHTML_BORDER_VERTICAL_SPACING},
+ {"text-indent", CSS_PROP_TEXT_INDENT},
{"background-image", CSS_PROP_BACKGROUND_IMAGE},
- {"border-left-width", CSS_PROP_BORDER_LEFT_WIDTH},
- {"border-bottom-width", CSS_PROP_BORDER_BOTTOM_WIDTH},
- {"max-width", CSS_PROP_MAX_WIDTH},
- {"-khtml-box-flex-group", CSS_PROP__KHTML_BOX_FLEX_GROUP},
- {"border-right-width", CSS_PROP_BORDER_RIGHT_WIDTH},
- {"-khtml-flow-mode", CSS_PROP__KHTML_FLOW_MODE},
- {"white-space", CSS_PROP_WHITE_SPACE},
- {"font-weight", CSS_PROP_FONT_WEIGHT},
- {"text-shadow", CSS_PROP_TEXT_SHADOW},
- {"background-position-y", CSS_PROP_BACKGROUND_POSITION_Y},
- {"scrollbar-arrow-color", CSS_PROP_SCROLLBAR_ARROW_COLOR},
{"word-spacing", CSS_PROP_WORD_SPACING},
- {"-khtml-box-flex-group-transition", CSS_PROP__KHTML_BOX_FLEX_GROUP_TRANSITION},
- {"scrollbar-shadow-color", CSS_PROP_SCROLLBAR_SHADOW_COLOR},
- {"scrollbar-darkshadow-color", CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR},
- {"widows", CSS_PROP_WIDOWS}
+ {"list-style-position", CSS_PROP_LIST_STYLE_POSITION},
+ {"-khtml-binding", CSS_PROP__KHTML_BINDING},
+ {"-khtml-marquee-increment", CSS_PROP__KHTML_MARQUEE_INCREMENT},
+ {"background-attachment", CSS_PROP_BACKGROUND_ATTACHMENT},
+ {"background-position", CSS_PROP_BACKGROUND_POSITION},
+ {"background-position-x", CSS_PROP_BACKGROUND_POSITION_X},
+ {"-khtml-border-horizontal-spacing", CSS_PROP__KHTML_BORDER_HORIZONTAL_SPACING},
+ {"counter-increment", CSS_PROP_COUNTER_INCREMENT},
+ {"background-position-y", CSS_PROP_BACKGROUND_POSITION_Y}
};
static const short lookup[] =
{
-1, -1, -1, -1, -1, 0, -1, -1, -1, -1,
- -1, -1, -1, -1, 1, -1, -1, 2, -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, 3, 4, -1, -1, -1, -1, -1,
- -1, 5, -1, -1, -1, -1, -1, 6, -1, -1,
- 7, -1, 8, -1, -1, -1, -1, -1, -1, 9,
- -1, 10, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 11, -1, 12, -1, -1, 13,
- -1, -1, -1, -1, -1, 14, 15, -1, -1, -1,
- -1, -1, -1, -1, -1, 16, 17, 18, -1, -1,
- -1, 19, -1, 20, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, 21, -1,
- -1, -1, -1, -1, -1, 22, -1, -1, -1, -1,
- 23, 24, -1, -1, -1, -1, 25, -1, 26, -1,
- 27, -1, 28, -1, 29, -1, -1, 30, -1, -1,
- -1, -1, 31, 32, -1, -1, -1, 33, -1, 34,
- -1, -1, 35, -1, -1, -1, 36, 37, -1, -1,
- 38, -1, -1, -1, -1, -1, -1, -1, 39, -1,
- -1, -1, 40, -1, -1, -1, -1, 41, -1, -1,
- -1, 42, -1, -1, -1, -1, -1, -1, -1, 43,
- -1, -1, -1, -1, -1, -1, -1, 44, -1, 45,
- -1, 46, -1, -1, -1, -1, -1, -1, -1, -1,
- 47, -1, 48, -1, -1, -1, -1, -1, -1, 49,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- 50, 51, -1, -1, -1, 52, -1, -1, -1, -1,
- 53, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 54, 55, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 56, -1, -1, -1,
- 57, -1, 58, -1, -1, -1, 59, -1, 60, 61,
- 62, -1, -1, -1, 63, -1, -1, 64, 65, -1,
- 66, -1, 67, 68, 69, -1, -1, -1, -1, 70,
- 71, 72, -1, 73, -1, -1, -1, 74, -1, -1,
- 75, -1, -1, -1, 76, -1, -1, -1, -1, -1,
- -1, 77, -1, -1, -1, 78, 79, 80, 81, -1,
- -1, 82, -1, -1, 83, -1, -1, -1, -1, 84,
- 85, -1, -1, -1, -1, -1, -1, -1, -1, 86,
- 87, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 88, -1, 89,
- -1, -1, -1, -1, -1, -1, -1, -1, 90, -1,
- -1, 91, -1, -1, -1, -1, -1, -1, -1, -1,
- 92, -1, -1, -1, -1, 93, -1, -1, -1, -1,
- -1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 95, -1, 96, -1, -1,
+ -1, -1, -1, -1, -1, -1, 1, -1, -1, 2,
+ 3, -1, 4, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 5, 6, -1, -1, -1,
+ -1, -1, 7, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 8, 9, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 10,
+ 11, 12, -1, -1, -1, -1, 13, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 14, -1, -1, -1, -1, 15, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 16, -1,
+ -1, -1, -1, -1, 17, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 18, -1, -1, -1,
+ 19, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 20, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 21, 22, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 23, -1, -1, -1, -1, -1, 24, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 25, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 26, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 27, -1,
+ -1, -1, -1, -1, 28, -1, -1, 29, -1, 30,
+ -1, -1, -1, 31, -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, 32, -1, 33, -1, -1, -1, -1,
+ -1, 34, -1, -1, -1, 35, -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, 36, -1, -1, -1, 37, -1, -1, 38,
+ -1, 39, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 40, 41, -1, -1,
+ 42, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 43, -1, -1, -1, 44, 45, 46, -1, -1,
+ -1, -1, 47, -1, -1, -1, -1, -1, -1, -1,
+ 48, -1, -1, -1, 49, -1, -1, 50, -1, 51,
+ -1, -1, 52, 53, -1, -1, -1, 54, -1, 55,
+ -1, -1, -1, 56, -1, -1, 57, -1, -1, -1,
+ -1, -1, 58, -1, -1, -1, 59, -1, -1, -1,
+ -1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
+ -1, -1, 61, -1, -1, -1, 62, -1, -1, -1,
+ -1, -1, -1, -1, -1, 63, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 64, -1,
+ -1, 65, 66, -1, 67, -1, -1, 68, -1, 69,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 70, -1, -1, -1, -1, -1, 71, -1, -1, 72,
+ -1, -1, -1, -1, -1, -1, 73, -1, -1, -1,
+ -1, -1, -1, 74, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 75, -1, -1,
+ -1, 76, 77, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 78, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 79, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 80, -1, -1, 81, -1, -1, -1,
+ -1, -1, 82, -1, -1, 83, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ 84, -1, -1, -1, 85, 86, -1, -1, 87, -1,
+ -1, 88, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 89, -1, 90, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 91, 92, -1, -1, -1,
+ -1, -1, 93, -1, 94, 95, 96, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 97, -1, -1, 98,
- -1, -1, 99, -1, -1, -1, -1, -1, -1, 100,
- -1, -1, -1, -1, -1, -1, -1, 101, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 102, -1, -1,
- -1, -1, -1, -1, 103, 104, -1, -1, -1, -1,
- -1, -1, 105, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 106, -1, 107, -1, -1, -1, 108, -1,
- -1, 109, -1, -1, -1, -1, 110, -1, -1, -1,
- -1, -1, -1, 111, -1, 112, 113, -1, -1, -1,
- -1, 114, -1, 115, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 116, 117, -1, -1, -1,
- -1, 118, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 99, -1, -1,
+ -1, -1, 100, -1, -1, 101, 102, -1, -1, -1,
+ -1, 103, -1, -1, 104, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 105, -1, -1, -1, -1, -1,
+ 106, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 107, -1, -1, -1, -1, -1,
+ -1, -1, 108, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 109, -1,
+ -1, -1, -1, 110, -1, 111, 112, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 113, -1, -1,
+ -1, 114, -1, -1, -1, 115, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, 116, -1,
+ -1, -1, -1, -1, -1, -1, 117, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 118, -1, -1, -1, -1, 119, -1, -1,
+ -1, -1, -1, -1, 120, -1, -1, -1, -1, -1,
+ 121, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 122, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 123, -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, 124, -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, 125,
+ -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, 119, -1, 120, -1, -1, -1, -1, 121,
- -1, 122, -1, 123, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 124, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 125, -1, -1, -1, -1, 126, -1, -1, -1,
- -1, 127, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 128, -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, 129, -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, 130, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, 126,
+ -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, 127,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 128, -1, -1, -1, -1, -1, -1, -1, 129,
+ -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, 130, -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, 131, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 132, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 132, -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,
@@ -364,13 +415,12 @@ findProp (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, -1, -1, -1,
- -1, 133, -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, 134
+ -1, -1, -1, -1, -1, -1, 133
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -423,7 +473,6 @@ static const char * const propertyList[] = {
"-khtml-box-direction",
"-khtml-box-flex",
"-khtml-box-flex-group",
-"-khtml-box-flex-group-transition",
"-khtml-box-lines",
"-khtml-box-ordinal-group",
"-khtml-box-orient",
diff --git a/WebCore/khtml/css/cssproperties.h b/WebCore/khtml/css/cssproperties.h
index adc8360..6df9757 100644
--- a/WebCore/khtml/css/cssproperties.h
+++ b/WebCore/khtml/css/cssproperties.h
@@ -36,114 +36,113 @@
#define CSS_PROP__KHTML_BOX_DIRECTION 27
#define CSS_PROP__KHTML_BOX_FLEX 28
#define CSS_PROP__KHTML_BOX_FLEX_GROUP 29
-#define CSS_PROP__KHTML_BOX_FLEX_GROUP_TRANSITION 30
-#define CSS_PROP__KHTML_BOX_LINES 31
-#define CSS_PROP__KHTML_BOX_ORDINAL_GROUP 32
-#define CSS_PROP__KHTML_BOX_ORIENT 33
-#define CSS_PROP__KHTML_BOX_PACK 34
-#define CSS_PROP_CAPTION_SIDE 35
-#define CSS_PROP_CLEAR 36
-#define CSS_PROP_CLIP 37
-#define CSS_PROP_COLOR 38
-#define CSS_PROP_CONTENT 39
-#define CSS_PROP_COUNTER_INCREMENT 40
-#define CSS_PROP_COUNTER_RESET 41
-#define CSS_PROP_CURSOR 42
-#define CSS_PROP_DIRECTION 43
-#define CSS_PROP_DISPLAY 44
-#define CSS_PROP_EMPTY_CELLS 45
-#define CSS_PROP_FLOAT 46
-#define CSS_PROP_FONT_FAMILY 47
-#define CSS_PROP_FONT_SIZE 48
-#define CSS_PROP_FONT_SIZE_ADJUST 49
-#define CSS_PROP_FONT_STRETCH 50
-#define CSS_PROP_FONT_STYLE 51
-#define CSS_PROP_FONT_VARIANT 52
-#define CSS_PROP_FONT_WEIGHT 53
-#define CSS_PROP_HEIGHT 54
-#define CSS_PROP_LEFT 55
-#define CSS_PROP_LETTER_SPACING 56
-#define CSS_PROP__APPLE_LINE_CLAMP 57
-#define CSS_PROP_LINE_HEIGHT 58
-#define CSS_PROP_LIST_STYLE_IMAGE 59
-#define CSS_PROP_LIST_STYLE_POSITION 60
-#define CSS_PROP_LIST_STYLE_TYPE 61
-#define CSS_PROP_MARGIN_TOP 62
-#define CSS_PROP_MARGIN_RIGHT 63
-#define CSS_PROP_MARGIN_BOTTOM 64
-#define CSS_PROP_MARGIN_LEFT 65
-#define CSS_PROP__KHTML_MARQUEE 66
-#define CSS_PROP__KHTML_MARQUEE_DIRECTION 67
-#define CSS_PROP__KHTML_MARQUEE_INCREMENT 68
-#define CSS_PROP__KHTML_MARQUEE_REPETITION 69
-#define CSS_PROP__KHTML_MARQUEE_SPEED 70
-#define CSS_PROP__KHTML_MARQUEE_STYLE 71
-#define CSS_PROP_MAX_HEIGHT 72
-#define CSS_PROP_MAX_WIDTH 73
-#define CSS_PROP_MIN_HEIGHT 74
-#define CSS_PROP_MIN_WIDTH 75
-#define CSS_PROP_OPACITY 76
-#define CSS_PROP_ORPHANS 77
-#define CSS_PROP_OUTLINE_COLOR 78
-#define CSS_PROP_OUTLINE_OFFSET 79
-#define CSS_PROP_OUTLINE_STYLE 80
-#define CSS_PROP_OUTLINE_WIDTH 81
-#define CSS_PROP_OVERFLOW 82
-#define CSS_PROP_PADDING_TOP 83
-#define CSS_PROP_PADDING_RIGHT 84
-#define CSS_PROP_PADDING_BOTTOM 85
-#define CSS_PROP_PADDING_LEFT 86
-#define CSS_PROP_PAGE 87
-#define CSS_PROP_PAGE_BREAK_AFTER 88
-#define CSS_PROP_PAGE_BREAK_BEFORE 89
-#define CSS_PROP_PAGE_BREAK_INSIDE 90
-#define CSS_PROP_POSITION 91
-#define CSS_PROP_QUOTES 92
-#define CSS_PROP_RIGHT 93
-#define CSS_PROP_SIZE 94
-#define CSS_PROP_TABLE_LAYOUT 95
-#define CSS_PROP_TEXT_ALIGN 96
-#define CSS_PROP_TEXT_DECORATION 97
-#define CSS_PROP_TEXT_DECORATION_COLOR 98
-#define CSS_PROP_TEXT_INDENT 99
-#define CSS_PROP_TEXT_SHADOW 100
-#define CSS_PROP_TEXT_TRANSFORM 101
-#define CSS_PROP_TOP 102
-#define CSS_PROP_UNICODE_BIDI 103
-#define CSS_PROP__KHTML_USER_DRAG 104
-#define CSS_PROP__KHTML_USER_MODIFY 105
-#define CSS_PROP__KHTML_USER_SELECT 106
-#define CSS_PROP_VERTICAL_ALIGN 107
-#define CSS_PROP_VISIBILITY 108
-#define CSS_PROP_WHITE_SPACE 109
-#define CSS_PROP_WIDOWS 110
-#define CSS_PROP_WIDTH 111
-#define CSS_PROP_WORD_SPACING 112
-#define CSS_PROP_Z_INDEX 113
-#define CSS_PROP_BACKGROUND 114
-#define CSS_PROP_BORDER 115
-#define CSS_PROP_BORDER_COLOR 116
-#define CSS_PROP_BORDER_STYLE 117
-#define CSS_PROP_BORDER_TOP 118
-#define CSS_PROP_BORDER_RIGHT 119
-#define CSS_PROP_BORDER_BOTTOM 120
-#define CSS_PROP_BORDER_LEFT 121
-#define CSS_PROP_BORDER_WIDTH 122
-#define CSS_PROP_FONT 123
-#define CSS_PROP_LIST_STYLE 124
-#define CSS_PROP_MARGIN 125
-#define CSS_PROP_OUTLINE 126
-#define CSS_PROP_PADDING 127
-#define CSS_PROP_SCROLLBAR_FACE_COLOR 128
-#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 129
-#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 130
-#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 131
-#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 132
-#define CSS_PROP_SCROLLBAR_TRACK_COLOR 133
-#define CSS_PROP_SCROLLBAR_ARROW_COLOR 134
-#define CSS_PROP__KHTML_FLOW_MODE 135
+#define CSS_PROP__KHTML_BOX_LINES 30
+#define CSS_PROP__KHTML_BOX_ORDINAL_GROUP 31
+#define CSS_PROP__KHTML_BOX_ORIENT 32
+#define CSS_PROP__KHTML_BOX_PACK 33
+#define CSS_PROP_CAPTION_SIDE 34
+#define CSS_PROP_CLEAR 35
+#define CSS_PROP_CLIP 36
+#define CSS_PROP_COLOR 37
+#define CSS_PROP_CONTENT 38
+#define CSS_PROP_COUNTER_INCREMENT 39
+#define CSS_PROP_COUNTER_RESET 40
+#define CSS_PROP_CURSOR 41
+#define CSS_PROP_DIRECTION 42
+#define CSS_PROP_DISPLAY 43
+#define CSS_PROP_EMPTY_CELLS 44
+#define CSS_PROP_FLOAT 45
+#define CSS_PROP_FONT_FAMILY 46
+#define CSS_PROP_FONT_SIZE 47
+#define CSS_PROP_FONT_SIZE_ADJUST 48
+#define CSS_PROP_FONT_STRETCH 49
+#define CSS_PROP_FONT_STYLE 50
+#define CSS_PROP_FONT_VARIANT 51
+#define CSS_PROP_FONT_WEIGHT 52
+#define CSS_PROP_HEIGHT 53
+#define CSS_PROP_LEFT 54
+#define CSS_PROP_LETTER_SPACING 55
+#define CSS_PROP__APPLE_LINE_CLAMP 56
+#define CSS_PROP_LINE_HEIGHT 57
+#define CSS_PROP_LIST_STYLE_IMAGE 58
+#define CSS_PROP_LIST_STYLE_POSITION 59
+#define CSS_PROP_LIST_STYLE_TYPE 60
+#define CSS_PROP_MARGIN_TOP 61
+#define CSS_PROP_MARGIN_RIGHT 62
+#define CSS_PROP_MARGIN_BOTTOM 63
+#define CSS_PROP_MARGIN_LEFT 64
+#define CSS_PROP__KHTML_MARQUEE 65
+#define CSS_PROP__KHTML_MARQUEE_DIRECTION 66
+#define CSS_PROP__KHTML_MARQUEE_INCREMENT 67
+#define CSS_PROP__KHTML_MARQUEE_REPETITION 68
+#define CSS_PROP__KHTML_MARQUEE_SPEED 69
+#define CSS_PROP__KHTML_MARQUEE_STYLE 70
+#define CSS_PROP_MAX_HEIGHT 71
+#define CSS_PROP_MAX_WIDTH 72
+#define CSS_PROP_MIN_HEIGHT 73
+#define CSS_PROP_MIN_WIDTH 74
+#define CSS_PROP_OPACITY 75
+#define CSS_PROP_ORPHANS 76
+#define CSS_PROP_OUTLINE_COLOR 77
+#define CSS_PROP_OUTLINE_OFFSET 78
+#define CSS_PROP_OUTLINE_STYLE 79
+#define CSS_PROP_OUTLINE_WIDTH 80
+#define CSS_PROP_OVERFLOW 81
+#define CSS_PROP_PADDING_TOP 82
+#define CSS_PROP_PADDING_RIGHT 83
+#define CSS_PROP_PADDING_BOTTOM 84
+#define CSS_PROP_PADDING_LEFT 85
+#define CSS_PROP_PAGE 86
+#define CSS_PROP_PAGE_BREAK_AFTER 87
+#define CSS_PROP_PAGE_BREAK_BEFORE 88
+#define CSS_PROP_PAGE_BREAK_INSIDE 89
+#define CSS_PROP_POSITION 90
+#define CSS_PROP_QUOTES 91
+#define CSS_PROP_RIGHT 92
+#define CSS_PROP_SIZE 93
+#define CSS_PROP_TABLE_LAYOUT 94
+#define CSS_PROP_TEXT_ALIGN 95
+#define CSS_PROP_TEXT_DECORATION 96
+#define CSS_PROP_TEXT_DECORATION_COLOR 97
+#define CSS_PROP_TEXT_INDENT 98
+#define CSS_PROP_TEXT_SHADOW 99
+#define CSS_PROP_TEXT_TRANSFORM 100
+#define CSS_PROP_TOP 101
+#define CSS_PROP_UNICODE_BIDI 102
+#define CSS_PROP__KHTML_USER_DRAG 103
+#define CSS_PROP__KHTML_USER_MODIFY 104
+#define CSS_PROP__KHTML_USER_SELECT 105
+#define CSS_PROP_VERTICAL_ALIGN 106
+#define CSS_PROP_VISIBILITY 107
+#define CSS_PROP_WHITE_SPACE 108
+#define CSS_PROP_WIDOWS 109
+#define CSS_PROP_WIDTH 110
+#define CSS_PROP_WORD_SPACING 111
+#define CSS_PROP_Z_INDEX 112
+#define CSS_PROP_BACKGROUND 113
+#define CSS_PROP_BORDER 114
+#define CSS_PROP_BORDER_COLOR 115
+#define CSS_PROP_BORDER_STYLE 116
+#define CSS_PROP_BORDER_TOP 117
+#define CSS_PROP_BORDER_RIGHT 118
+#define CSS_PROP_BORDER_BOTTOM 119
+#define CSS_PROP_BORDER_LEFT 120
+#define CSS_PROP_BORDER_WIDTH 121
+#define CSS_PROP_FONT 122
+#define CSS_PROP_LIST_STYLE 123
+#define CSS_PROP_MARGIN 124
+#define CSS_PROP_OUTLINE 125
+#define CSS_PROP_PADDING 126
+#define CSS_PROP_SCROLLBAR_FACE_COLOR 127
+#define CSS_PROP_SCROLLBAR_SHADOW_COLOR 128
+#define CSS_PROP_SCROLLBAR_HIGHLIGHT_COLOR 129
+#define CSS_PROP_SCROLLBAR_3DLIGHT_COLOR 130
+#define CSS_PROP_SCROLLBAR_DARKSHADOW_COLOR 131
+#define CSS_PROP_SCROLLBAR_TRACK_COLOR 132
+#define CSS_PROP_SCROLLBAR_ARROW_COLOR 133
+#define CSS_PROP__KHTML_FLOW_MODE 134
#define CSS_PROP_MAX CSS_PROP_Z_INDEX
-#define CSS_PROP_TOTAL 136
+#define CSS_PROP_TOTAL 135
#endif
diff --git a/WebCore/khtml/css/cssproperties.in b/WebCore/khtml/css/cssproperties.in
index 12d1d3b..a450648 100644
--- a/WebCore/khtml/css/cssproperties.in
+++ b/WebCore/khtml/css/cssproperties.in
@@ -41,7 +41,6 @@ bottom
-khtml-box-direction
-khtml-box-flex
-khtml-box-flex-group
--khtml-box-flex-group-transition
-khtml-box-lines
-khtml-box-ordinal-group
-khtml-box-orient
diff --git a/WebCore/khtml/css/cssstyleselector.cpp b/WebCore/khtml/css/cssstyleselector.cpp
index 4c59e8c..139d97e 100644
--- a/WebCore/khtml/css/cssstyleselector.cpp
+++ b/WebCore/khtml/css/cssstyleselector.cpp
@@ -2490,7 +2490,17 @@ void CSSStyleSelector::applyProperty( int id, DOM::CSSValueImpl *value )
case CSS_PROP_MARGIN_BOTTOM:
case CSS_PROP_MARGIN_LEFT:
// +inherit +auto
- if(id != CSS_PROP_MAX_WIDTH && primitiveValue &&
+ if (id == CSS_PROP_WIDTH || id == CSS_PROP_MIN_WIDTH || id == CSS_PROP_MAX_WIDTH) {
+ if (primitiveValue && primitiveValue->getIdent() == CSS_VAL_INTRINSIC) {
+ l = Length(Intrinsic);
+ apply = true;
+ }
+ else if (primitiveValue && primitiveValue->getIdent() == CSS_VAL_MIN_INTRINSIC) {
+ l = Length(MinIntrinsic);
+ apply = true;
+ }
+ }
+ else if (id != CSS_PROP_MAX_WIDTH && primitiveValue &&
primitiveValue->getIdent() == CSS_VAL_AUTO)
{
//kdDebug( 6080 ) << "found value=auto" << endl;
@@ -2606,6 +2616,14 @@ void CSSStyleSelector::applyProperty( int id, DOM::CSSValueImpl *value )
apply = true;
case CSS_PROP_HEIGHT:
case CSS_PROP_MIN_HEIGHT:
+ if (primitiveValue && primitiveValue->getIdent() == CSS_VAL_INTRINSIC) {
+ l = Length(Intrinsic);
+ apply = true;
+ }
+ else if (primitiveValue && primitiveValue->getIdent() == CSS_VAL_MIN_INTRINSIC) {
+ l = Length(MinIntrinsic);
+ apply = true;
+ }
if(id != CSS_PROP_MAX_HEIGHT && primitiveValue &&
primitiveValue->getIdent() == CSS_VAL_AUTO)
apply = true;
@@ -3421,39 +3439,6 @@ void CSSStyleSelector::applyProperty( int id, DOM::CSSValueImpl *value )
return; // Error case.
style->setBoxOrdinalGroup((unsigned int)(primitiveValue->getFloatValue(CSSPrimitiveValue::CSS_NUMBER)));
return;
- case CSS_PROP__KHTML_BOX_FLEX_GROUP_TRANSITION: {
- if (isInherit) {
- style->setBoxFlexGroupTransition(parentStyle->boxFlexGroupTransition() ?
- new FlexGroupTransitionData(*parentStyle->boxFlexGroupTransition()) : 0);
- return;
- }
- else if (isInitial) {
- style->setBoxFlexGroupTransition(0);
- return;
- }
-
- if (!value->isValueList()) return;
- CSSValueListImpl *list = static_cast<CSSValueListImpl *>(value);
- int len = list->length();
- for (int i = 0; i < len; i++) {
- FlexGroupTransitionValueImpl *item = static_cast<FlexGroupTransitionValueImpl*>(list->item(i));
- FlexGroupTransitionData* transitionData;
- if (item->isAuto())
- transitionData = new FlexGroupTransitionData();
- else {
- int type = item->length->primitiveType();
- Length l;
- if (type > CSSPrimitiveValue::CSS_PERCENTAGE && type < CSSPrimitiveValue::CSS_DEG)
- l = Length(primitiveValue->computeLength(style, paintDeviceMetrics), Fixed, false);
- else if(type == CSSPrimitiveValue::CSS_PERCENTAGE)
- l = Length((int)primitiveValue->getFloatValue(CSSPrimitiveValue::CSS_PERCENTAGE), Percent);
- transitionData = new FlexGroupTransitionData(item->group1, item->group2, l);
- }
- style->setBoxFlexGroupTransition(transitionData, i != 0);
- }
-
- return;
- }
case CSS_PROP__KHTML_MARQUEE:
if (value->cssValueType() != CSSValue::CSS_INHERIT || !parentNode) return;
style->setMarqueeDirection(parentStyle->marqueeDirection());
diff --git a/WebCore/khtml/css/cssvalues.c b/WebCore/khtml/css/cssvalues.c
index 8ae895a..677fb78 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 = 3149, duplicates = 1 */
+/* maximum key range = 2829, duplicates = 1 */
#ifdef __GNUC__
__inline
@@ -21,32 +21,32 @@ hash_val (register const char *str, register unsigned int len)
{
static const unsigned short asso_values[] =
{
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 15, 3149, 3149, 0, 5,
- 10, 15, 20, 25, 30, 35, 40, 0, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 0, 163, 355,
- 60, 215, 510, 315, 270, 35, 0, 505, 0, 3,
- 55, 45, 165, 135, 280, 10, 0, 375, 28, 6,
- 505, 110, 178, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149, 3149,
- 3149, 3149, 3149, 3149, 3149, 3149
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 15, 2829, 2829, 0, 5,
+ 10, 15, 20, 25, 30, 35, 40, 0, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 0, 58, 3,
+ 211, 225, 13, 390, 95, 35, 5, 480, 0, 165,
+ 55, 50, 53, 10, 290, 10, 0, 65, 153, 435,
+ 278, 45, 195, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829, 2829,
+ 2829, 2829, 2829, 2829, 2829, 2829
};
register int hval = 0;
@@ -110,11 +110,11 @@ findValue (register const char *str, register unsigned int len)
{
enum
{
- TOTAL_KEYWORDS = 258,
+ TOTAL_KEYWORDS = 260,
MIN_WORD_LENGTH = 2,
MAX_WORD_LENGTH = 22,
MIN_HASH_VALUE = 0,
- MAX_HASH_VALUE = 3148
+ MAX_HASH_VALUE = 2828
};
static const struct css_value wordlist_value[] =
@@ -122,513 +122,474 @@ findValue (register const char *str, register unsigned int len)
{"900", CSS_VAL_900},
{"100", CSS_VAL_100},
{"200", CSS_VAL_200},
- {"small", CSS_VAL_SMALL},
{"300", CSS_VAL_300},
{"400", CSS_VAL_400},
+ {"fast", CSS_VAL_FAST},
{"500", CSS_VAL_500},
{"600", CSS_VAL_600},
{"700", CSS_VAL_700},
{"800", CSS_VAL_800},
- {"wait", CSS_VAL_WAIT},
- {"slow", CSS_VAL_SLOW},
- {"always", CSS_VAL_ALWAYS},
- {"solid", CSS_VAL_SOLID},
- {"initial", CSS_VAL_INITIAL},
- {"down", CSS_VAL_DOWN},
- {"avoid", CSS_VAL_AVOID},
- {"navy", CSS_VAL_NAVY},
- {"window", CSS_VAL_WINDOW},
+ {"static", CSS_VAL_STATIC},
+ {"italic", CSS_VAL_ITALIC},
+ {"aqua", CSS_VAL_AQUA},
{"top", CSS_VAL_TOP},
+ {"auto", CSS_VAL_AUTO},
+ {"up", CSS_VAL_UP},
+ {"fantasy", CSS_VAL_FANTASY},
+ {"sub", CSS_VAL_SUB},
+ {"icon", CSS_VAL_ICON},
+ {"initial", CSS_VAL_INITIAL},
+ {"justify", CSS_VAL_JUSTIFY},
+ {"small", CSS_VAL_SMALL},
+ {"thin", CSS_VAL_THIN},
+ {"caption", CSS_VAL_CAPTION},
+ {"both", CSS_VAL_BOTH},
+ {"fuchsia", CSS_VAL_FUCHSIA},
{"teal", CSS_VAL_TEAL},
- {"lime", CSS_VAL_LIME},
- {"bottom", CSS_VAL_BOTTOM},
- {"bold", CSS_VAL_BOLD},
+ {"left", CSS_VAL_LEFT},
+ {"navy", CSS_VAL_NAVY},
+ {"small-caps", CSS_VAL_SMALL_CAPS},
+ {"disc", CSS_VAL_DISC},
+ {"compact", CSS_VAL_COMPACT},
+ {"table", CSS_VAL_TABLE},
{"ltr", CSS_VAL_LTR},
{"rtl", CSS_VAL_RTL},
{"start", CSS_VAL_START},
- {"move", CSS_VAL_MOVE},
- {"list-item", CSS_VAL_LIST_ITEM},
+ {"solid", CSS_VAL_SOLID},
+ {"bold", CSS_VAL_BOLD},
+ {"bottom", CSS_VAL_BOTTOM},
{"inset", CSS_VAL_INSET},
- {"slide", CSS_VAL_SLIDE},
- {"olive", CSS_VAL_OLIVE},
- {"end", CSS_VAL_END},
- {"show", CSS_VAL_SHOW},
- {"thin", CSS_VAL_THIN},
- {"none", CSS_VAL_NONE},
- {"middle", CSS_VAL_MIDDLE},
- {"yellow", CSS_VAL_YELLOW},
- {"table", CSS_VAL_TABLE},
- {"dotted", CSS_VAL_DOTTED},
- {"normal", CSS_VAL_NORMAL},
+ {"loud", CSS_VAL_LOUD},
+ {"collapse", CSS_VAL_COLLAPSE},
+ {"blue", CSS_VAL_BLUE},
+ {"outset", CSS_VAL_OUTSET},
+ {"scroll", CSS_VAL_SCROLL},
{"hand", CSS_VAL_HAND},
+ {"cross", CSS_VAL_CROSS},
+ {"help", CSS_VAL_HELP},
+ {"none", CSS_VAL_NONE},
+ {"small-caption", CSS_VAL_SMALL_CAPTION},
+ {"crop", CSS_VAL_CROP},
{"inline", CSS_VAL_INLINE},
- {"static", CSS_VAL_STATIC},
- {"inside", CSS_VAL_INSIDE},
- {"auto", CSS_VAL_AUTO},
- {"italic", CSS_VAL_ITALIC},
- {"maroon", CSS_VAL_MAROON},
- {"below", CSS_VAL_BELOW},
- {"above", CSS_VAL_ABOVE},
- {"level", CSS_VAL_LEVEL},
- {"disc", CSS_VAL_DISC},
- {"both", CSS_VAL_BOTH},
- {"loud", CSS_VAL_LOUD},
- {"visible", CSS_VAL_VISIBLE},
- {"icon", CSS_VAL_ICON},
- {"smaller", CSS_VAL_SMALLER},
- {"aqua", CSS_VAL_AQUA},
- {"fast", CSS_VAL_FAST},
- {"white", CSS_VAL_WHITE},
+ {"absolute", CSS_VAL_ABSOLUTE},
+ {"lime", CSS_VAL_LIME},
+ {"oblique", CSS_VAL_OBLIQUE},
+ {"status-bar", CSS_VAL_STATUS_BAR},
+ {"avoid", CSS_VAL_AVOID},
+ {"infinite", CSS_VAL_INFINITE},
+ {"olive", CSS_VAL_OLIVE},
{"x-small", CSS_VAL_X_SMALL},
- {"up", CSS_VAL_UP},
+ {"buttonface", CSS_VAL_BUTTONFACE},
+ {"wait", CSS_VAL_WAIT},
{"mix", CSS_VAL_MIX},
+ {"slide", CSS_VAL_SLIDE},
+ {"list-item", CSS_VAL_LIST_ITEM},
+ {"above", CSS_VAL_ABOVE},
+ {"unfurl", CSS_VAL_UNFURL},
+ {"always", CSS_VAL_ALWAYS},
+ {"end", CSS_VAL_END},
+ {"table-caption", CSS_VAL_TABLE_CAPTION},
+ {"slow", CSS_VAL_SLOW},
+ {"text", CSS_VAL_TEXT},
+ {"menu", CSS_VAL_MENU},
+ {"default", CSS_VAL_DEFAULT},
+ {"run-in", CSS_VAL_RUN_IN},
+ {"visible", CSS_VAL_VISIBLE},
+ {"intrinsic", CSS_VAL_INTRINSIC},
+ {"table-cell", CSS_VAL_TABLE_CELL},
{"ahead", CSS_VAL_AHEAD},
- {"lower", CSS_VAL_LOWER},
- {"sub", CSS_VAL_SUB},
- {"nowrap", CSS_VAL_NOWRAP},
- {"red", CSS_VAL_RED},
- {"small-caps", CSS_VAL_SMALL_CAPS},
- {"silver", CSS_VAL_SILVER},
+ {"black", CSS_VAL_BLACK},
+ {"multiple", CSS_VAL_MULTIPLE},
+ {"capitalize", CSS_VAL_CAPITALIZE},
+ {"circle", CSS_VAL_CIRCLE},
+ {"landscape", CSS_VAL_LANDSCAPE},
+ {"normal", CSS_VAL_NORMAL},
{"hide", CSS_VAL_HIDE},
- {"wider", CSS_VAL_WIDER},
- {"invert", CSS_VAL_INVERT},
- {"dashed", CSS_VAL_DASHED},
- {"single", CSS_VAL_SINGLE},
- {"armenian", CSS_VAL_ARMENIAN},
- {"outset", CSS_VAL_OUTSET},
- {"menu", CSS_VAL_MENU},
- {"help", CSS_VAL_HELP},
- {"lower-latin", CSS_VAL_LOWER_LATIN},
- {"caption", CSS_VAL_CAPTION},
- {"embed", CSS_VAL_EMBED},
{"pre", CSS_VAL_PRE},
- {"decimal", CSS_VAL_DECIMAL},
- {"overlay", CSS_VAL_OVERLAY},
- {"small-caption", CSS_VAL_SMALL_CAPTION},
- {"fantasy", CSS_VAL_FANTASY},
- {"scroll", CSS_VAL_SCROLL},
- {"medium", CSS_VAL_MEDIUM},
- {"baseline", CSS_VAL_BASELINE},
- {"hidden", CSS_VAL_HIDDEN},
- {"cross", CSS_VAL_CROSS},
- {"element", CSS_VAL_ELEMENT},
- {"gray", CSS_VAL_GRAY},
- {"text", CSS_VAL_TEXT},
- {"table-row", CSS_VAL_TABLE_ROW},
- {"left", CSS_VAL_LEFT},
+ {"inside", CSS_VAL_INSIDE},
+ {"serif", CSS_VAL_SERIF},
+ {"show", CSS_VAL_SHOW},
+ {"block", CSS_VAL_BLOCK},
+ {"move", CSS_VAL_MOVE},
{"outside", CSS_VAL_OUTSIDE},
- {"blue", CSS_VAL_BLUE},
+ {"square", CSS_VAL_SQUARE},
+ {"level", CSS_VAL_LEVEL},
+ {"baseline", CSS_VAL_BASELINE},
+ {"double", CSS_VAL_DOUBLE},
+ {"maroon", CSS_VAL_MAROON},
+ {"monospace", CSS_VAL_MONOSPACE},
+ {"activecaption", CSS_VAL_ACTIVECAPTION},
+ {"thick", CSS_VAL_THICK},
+ {"text-top", CSS_VAL_TEXT_TOP},
+ {"stretch", CSS_VAL_STRETCH},
{"blink", CSS_VAL_BLINK},
- {"bolder", CSS_VAL_BOLDER},
- {"alternate", CSS_VAL_ALTERNATE},
- {"relative", CSS_VAL_RELATIVE},
- {"read-only", CSS_VAL_READ_ONLY},
+ {"table-column", CSS_VAL_TABLE_COLUMN},
+ {"decimal", CSS_VAL_DECIMAL},
+ {"super", CSS_VAL_SUPER},
+ {"close-quote", CSS_VAL_CLOSE_QUOTE},
+ {"infotext", CSS_VAL_INFOTEXT},
+ {"sans-serif", CSS_VAL_SANS_SERIF},
+ {"purple", CSS_VAL_PURPLE},
+ {"smaller", CSS_VAL_SMALLER},
+ {"dotted", CSS_VAL_DOTTED},
+ {"captiontext", CSS_VAL_CAPTIONTEXT},
+ {"scrollbar", CSS_VAL_SCROLLBAR},
+ {"inactivecaption", CSS_VAL_INACTIVECAPTION},
{"inline-table", CSS_VAL_INLINE_TABLE},
- {"collapse", CSS_VAL_COLLAPSE},
- {"multiple", CSS_VAL_MULTIPLE},
+ {"vertical", CSS_VAL_VERTICAL},
{"pointer", CSS_VAL_POINTER},
+ {"silver", CSS_VAL_SILVER},
+ {"single", CSS_VAL_SINGLE},
{"portrait", CSS_VAL_PORTRAIT},
- {"absolute", CSS_VAL_ABSOLUTE},
- {"large", CSS_VAL_LARGE},
- {"run-in", CSS_VAL_RUN_IN},
- {"crop", CSS_VAL_CROP},
- {"status-bar", CSS_VAL_STATUS_BAR},
- {"double", CSS_VAL_DOUBLE},
- {"landscape", CSS_VAL_LANDSCAPE},
- {"overline", CSS_VAL_OVERLINE},
+ {"gray", CSS_VAL_GRAY},
+ {"red", CSS_VAL_RED},
+ {"buttontext", CSS_VAL_BUTTONTEXT},
+ {"inherit", CSS_VAL_INHERIT},
+ {"inline-axis", CSS_VAL_INLINE_AXIS},
+ {"xx-small", CSS_VAL_XX_SMALL},
+ {"open-quote", CSS_VAL_OPEN_QUOTE},
+ {"down", CSS_VAL_DOWN},
+ {"dashed", CSS_VAL_DASHED},
+ {"yellow", CSS_VAL_YELLOW},
+ {"invert", CSS_VAL_INVERT},
+ {"fixed", CSS_VAL_FIXED},
+ {"overlay", CSS_VAL_OVERLAY},
+ {"below", CSS_VAL_BELOW},
+ {"horizontal", CSS_VAL_HORIZONTAL},
+ {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
+ {"cursive", CSS_VAL_CURSIVE},
+ {"crosshair", CSS_VAL_CROSSHAIR},
+ {"min-intrinsic", CSS_VAL_MIN_INTRINSIC},
+ {"white", CSS_VAL_WHITE},
+ {"upper-latin", CSS_VAL_UPPER_LATIN},
{"repeat", CSS_VAL_REPEAT},
+ {"alternate", CSS_VAL_ALTERNATE},
+ {"center", CSS_VAL_CENTER},
{"separate", CSS_VAL_SEPARATE},
- {"inherit", CSS_VAL_INHERIT},
- {"monospace", CSS_VAL_MONOSPACE},
{"right", CSS_VAL_RIGHT},
- {"ridge", CSS_VAL_RIDGE},
- {"horizontal", CSS_VAL_HORIZONTAL},
- {"orange", CSS_VAL_ORANGE},
- {"vertical", CSS_VAL_VERTICAL},
- {"grey", CSS_VAL_GREY},
- {"compact", CSS_VAL_COMPACT},
- {"windowtext", CSS_VAL_WINDOWTEXT},
- {"groove", CSS_VAL_GROOVE},
- {"infinite", CSS_VAL_INFINITE},
- {"lower-roman", CSS_VAL_LOWER_ROMAN},
- {"text-top", CSS_VAL_TEXT_TOP},
- {"w-resize", CSS_VAL_W_RESIZE},
- {"hiragana", CSS_VAL_HIRAGANA},
- {"s-resize", CSS_VAL_S_RESIZE},
- {"inline-axis", CSS_VAL_INLINE_AXIS},
- {"table-cell", CSS_VAL_TABLE_CELL},
- {"sw-resize", CSS_VAL_SW_RESIZE},
- {"oblique", CSS_VAL_OBLIQUE},
- {"capitalize", CSS_VAL_CAPITALIZE},
- {"no-repeat", CSS_VAL_NO_REPEAT},
+ {"armenian", CSS_VAL_ARMENIAN},
+ {"hidden", CSS_VAL_HIDDEN},
+ {"bolder", CSS_VAL_BOLDER},
{"text-bottom", CSS_VAL_TEXT_BOTTOM},
- {"lower-alpha", CSS_VAL_LOWER_ALPHA},
+ {"middle", CSS_VAL_MIDDLE},
+ {"upper-alpha", CSS_VAL_UPPER_ALPHA},
{"repeat-y", CSS_VAL_REPEAT_Y},
- {"n-resize", CSS_VAL_N_RESIZE},
- {"nw-resize", CSS_VAL_NW_RESIZE},
- {"square", CSS_VAL_SQUARE},
- {"black", CSS_VAL_BLACK},
- {"buttonshadow", CSS_VAL_BUTTONSHADOW},
- {"xx-small", CSS_VAL_XX_SMALL},
- {"justify", CSS_VAL_JUSTIFY},
- {"super", CSS_VAL_SUPER},
- {"table-caption", CSS_VAL_TABLE_CAPTION},
- {"serif", CSS_VAL_SERIF},
+ {"hiragana", CSS_VAL_HIRAGANA},
+ {"medium", CSS_VAL_MEDIUM},
+ {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
+ {"nowrap", CSS_VAL_NOWRAP},
+ {"embed", CSS_VAL_EMBED},
+ {"-khtml-auto", CSS_VAL__KHTML_AUTO},
+ {"read-only", CSS_VAL_READ_ONLY},
+ {"element", CSS_VAL_ELEMENT},
+ {"large", CSS_VAL_LARGE},
+ {"no-repeat", CSS_VAL_NO_REPEAT},
+ {"uppercase", CSS_VAL_UPPERCASE},
+ {"relative", CSS_VAL_RELATIVE},
+ {"block-axis", CSS_VAL_BLOCK_AXIS},
+ {"grey", CSS_VAL_GREY},
{"transparent", CSS_VAL_TRANSPARENT},
+ {"marquee", CSS_VAL_MARQUEE},
+ {"lower", CSS_VAL_LOWER},
+ {"s-resize", CSS_VAL_S_RESIZE},
+ {"-khtml-left", CSS_VAL__KHTML_LEFT},
+ {"orange", CSS_VAL_ORANGE},
+ {"inline-block", CSS_VAL_INLINE_BLOCK},
+ {"menutext", CSS_VAL_MENUTEXT},
{"katakana", CSS_VAL_KATAKANA},
- {"block", CSS_VAL_BLOCK},
+ {"buttonshadow", CSS_VAL_BUTTONSHADOW},
+ {"overline", CSS_VAL_OVERLINE},
+ {"lighter", CSS_VAL_LIGHTER},
{"condensed", CSS_VAL_CONDENSED},
+ {"n-resize", CSS_VAL_N_RESIZE},
+ {"table-row", CSS_VAL_TABLE_ROW},
+ {"repeat-x", CSS_VAL_REPEAT_X},
+ {"lower-latin", CSS_VAL_LOWER_LATIN},
+ {"higher", CSS_VAL_HIGHER},
+ {"-khtml-body", CSS_VAL__KHTML_BODY},
+ {"highlight", CSS_VAL_HIGHLIGHT},
+ {"ridge", CSS_VAL_RIDGE},
+ {"-khtml-box", CSS_VAL__KHTML_BOX},
+ {"groove", CSS_VAL_GROOVE},
+ {"underline", CSS_VAL_UNDERLINE},
+ {"lower-alpha", CSS_VAL_LOWER_ALPHA},
{"green", CSS_VAL_GREEN},
{"larger", CSS_VAL_LARGER},
- {"read-write", CSS_VAL_READ_WRITE},
- {"lighter", CSS_VAL_LIGHTER},
- {"center", CSS_VAL_CENTER},
- {"lowercase", CSS_VAL_LOWERCASE},
- {"stretch", CSS_VAL_STRETCH},
- {"scrollbar", CSS_VAL_SCROLLBAR},
- {"sans-serif", CSS_VAL_SANS_SERIF},
- {"hebrew", CSS_VAL_HEBREW},
- {"default", CSS_VAL_DEFAULT},
- {"narrower", CSS_VAL_NARROWER},
+ {"wider", CSS_VAL_WIDER},
+ {"x-large", CSS_VAL_X_LARGE},
+ {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
{"e-resize", CSS_VAL_E_RESIZE},
- {"thick", CSS_VAL_THICK},
+ {"window", CSS_VAL_WINDOW},
+ {"graytext", CSS_VAL_GRAYTEXT},
{"se-resize", CSS_VAL_SE_RESIZE},
- {"-khtml-body", CSS_VAL__KHTML_BODY},
- {"forwards", CSS_VAL_FORWARDS},
- {"purple", CSS_VAL_PURPLE},
- {"windowframe", CSS_VAL_WINDOWFRAME},
- {"ne-resize", CSS_VAL_NE_RESIZE},
- {"marquee", CSS_VAL_MARQUEE},
- {"table-column", CSS_VAL_TABLE_COLUMN},
- {"-khtml-auto", CSS_VAL__KHTML_AUTO},
- {"circle", CSS_VAL_CIRCLE},
- {"reverse", CSS_VAL_REVERSE},
- {"georgian", CSS_VAL_GEORGIAN},
- {"open-quote", CSS_VAL_OPEN_QUOTE},
+ {"lowercase", CSS_VAL_LOWERCASE},
{"expanded", CSS_VAL_EXPANDED},
- {"crosshair", CSS_VAL_CROSSHAIR},
- {"activecaption", CSS_VAL_ACTIVECAPTION},
- {"underline", CSS_VAL_UNDERLINE},
- {"cursive", CSS_VAL_CURSIVE},
- {"upper-latin", CSS_VAL_UPPER_LATIN},
- {"fixed", CSS_VAL_FIXED},
- {"x-large", CSS_VAL_X_LARGE},
- {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
- {"buttontext", CSS_VAL_BUTTONTEXT},
- {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
- {"infotext", CSS_VAL_INFOTEXT},
- {"menutext", CSS_VAL_MENUTEXT},
- {"captiontext", CSS_VAL_CAPTIONTEXT},
- {"inactivecaption", CSS_VAL_INACTIVECAPTION},
- {"backwards", CSS_VAL_BACKWARDS},
- {"no-open-quote", CSS_VAL_NO_OPEN_QUOTE},
- {"higher", CSS_VAL_HIGHER},
- {"repeat-x", CSS_VAL_REPEAT_X},
- {"-khtml-link", CSS_VAL__KHTML_LINK},
- {"close-quote", CSS_VAL_CLOSE_QUOTE},
- {"graytext", CSS_VAL_GRAYTEXT},
- {"threedshadow", CSS_VAL_THREEDSHADOW},
- {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
- {"inline-block", CSS_VAL_INLINE_BLOCK},
- {"message-box", CSS_VAL_MESSAGE_BOX},
- {"highlight", CSS_VAL_HIGHLIGHT},
- {"-khtml-box", CSS_VAL__KHTML_BOX},
- {"no-close-quote", CSS_VAL_NO_CLOSE_QUOTE},
- {"-khtml-text", CSS_VAL__KHTML_TEXT},
- {"-khtml-left", CSS_VAL__KHTML_LEFT},
- {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
- {"fuchsia", CSS_VAL_FUCHSIA},
- {"unfurl", CSS_VAL_UNFURL},
{"upper-roman", CSS_VAL_UPPER_ROMAN},
+ {"-khtml-text", CSS_VAL__KHTML_TEXT},
+ {"ne-resize", CSS_VAL_NE_RESIZE},
+ {"threedface", CSS_VAL_THREEDFACE},
+ {"forwards", CSS_VAL_FORWARDS},
+ {"line-through", CSS_VAL_LINE_THROUGH},
+ {"hebrew", CSS_VAL_HEBREW},
+ {"-khtml-link", CSS_VAL__KHTML_LINK},
{"hiragana-iroha", CSS_VAL_HIRAGANA_IROHA},
- {"block-axis", CSS_VAL_BLOCK_AXIS},
- {"upper-alpha", CSS_VAL_UPPER_ALPHA},
- {"activeborder", CSS_VAL_ACTIVEBORDER},
- {"-khtml-right", CSS_VAL__KHTML_RIGHT},
- {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
- {"buttonface", CSS_VAL_BUTTONFACE},
+ {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
{"ultra-condensed", CSS_VAL_ULTRA_CONDENSED},
- {"inactiveborder", CSS_VAL_INACTIVEBORDER},
- {"uppercase", CSS_VAL_UPPERCASE},
+ {"reverse", CSS_VAL_REVERSE},
+ {"message-box", CSS_VAL_MESSAGE_BOX},
+ {"w-resize", CSS_VAL_W_RESIZE},
+ {"georgian", CSS_VAL_GEORGIAN},
+ {"sw-resize", CSS_VAL_SW_RESIZE},
{"xx-large", CSS_VAL_XX_LARGE},
- {"line-through", CSS_VAL_LINE_THROUGH},
- {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
- {"appworkspace", CSS_VAL_APPWORKSPACE},
- {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
+ {"nw-resize", CSS_VAL_NW_RESIZE},
+ {"backwards", CSS_VAL_BACKWARDS},
+ {"semi-condensed", CSS_VAL_SEMI_CONDENSED},
+ {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
+ {"katakana-iroha", CSS_VAL_KATAKANA_IROHA},
+ {"activeborder", CSS_VAL_ACTIVEBORDER},
{"-khtml-center", CSS_VAL__KHTML_CENTER},
+ {"lower-roman", CSS_VAL_LOWER_ROMAN},
{"-khtml-inline-box", CSS_VAL__KHTML_INLINE_BOX},
+ {"-khtml-right", CSS_VAL__KHTML_RIGHT},
+ {"background", CSS_VAL_BACKGROUND},
{"ultra-expanded", CSS_VAL_ULTRA_EXPANDED},
+ {"inactiveborder", CSS_VAL_INACTIVEBORDER},
+ {"narrower", CSS_VAL_NARROWER},
+ {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
+ {"appworkspace", CSS_VAL_APPWORKSPACE},
+ {"-khtml-nowrap", CSS_VAL__KHTML_NOWRAP},
+ {"semi-expanded", CSS_VAL_SEMI_EXPANDED},
+ {"windowtext", CSS_VAL_WINDOWTEXT},
+ {"read-write", CSS_VAL_READ_WRITE},
+ {"infobackground", CSS_VAL_INFOBACKGROUND},
{"-khtml-activelink", CSS_VAL__KHTML_ACTIVELINK},
- {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
+ {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP},
+ {"bidi-override", CSS_VAL_BIDI_OVERRIDE},
+ {"threedshadow", CSS_VAL_THREEDSHADOW},
{"extra-condensed", CSS_VAL_EXTRA_CONDENSED},
- {"lower-greek", CSS_VAL_LOWER_GREEK},
- {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
- {"inactivecaptiontext", CSS_VAL_INACTIVECAPTIONTEXT},
- {"threedface", CSS_VAL_THREEDFACE},
- {"buttonhighlight", CSS_VAL_BUTTONHIGHLIGHT},
- {"background", CSS_VAL_BACKGROUND},
- {"highlighttext", CSS_VAL_HIGHLIGHTTEXT},
- {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW},
+ {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
+ {"windowframe", CSS_VAL_WINDOWFRAME},
+ {"table-row-group", CSS_VAL_TABLE_ROW_GROUP},
{"extra-expanded", CSS_VAL_EXTRA_EXPANDED},
- {"table-column-group", CSS_VAL_TABLE_COLUMN_GROUP},
{"threedhighlight", CSS_VAL_THREEDHIGHLIGHT},
{"table-header-group", CSS_VAL_TABLE_HEADER_GROUP},
- {"cjk-ideographic", CSS_VAL_CJK_IDEOGRAPHIC},
- {"table-footer-group", CSS_VAL_TABLE_FOOTER_GROUP},
- {"infobackground", CSS_VAL_INFOBACKGROUND},
- {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE}
+ {"-khtml-baseline-middle", CSS_VAL__KHTML_BASELINE_MIDDLE},
+ {"decimal-leading-zero", CSS_VAL_DECIMAL_LEADING_ZERO},
+ {"threedlightshadow", CSS_VAL_THREEDLIGHTSHADOW},
+ {"-khtml-xxx-large", CSS_VAL__KHTML_XXX_LARGE},
+ {"lower-greek", CSS_VAL_LOWER_GREEK},
+ {"threeddarkshadow", CSS_VAL_THREEDDARKSHADOW}
};
static const short lookup[] =
{
0, -1, -1, -1, -1, 1, -1, -1,
- -1, -1, 2, -1, -1, 3, -1, 4,
- -1, -1, -1, -1, 5, -1, -1, -1,
+ -1, -1, 2, -1, -1, -1, -1, 3,
+ -1, -1, -1, -1, 4, -1, -1, 5,
-1, 6, -1, -1, -1, -1, 7, -1,
-1, -1, -1, 8, -1, -1, -1, -1,
- 9, 10, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 11, -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,
+ 10, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 11, -1, 12, -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, 13,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 12, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 13, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- 14, -1, -1, -1, -1, -1, 15, -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,
- -1, 17, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 14, -1, -1, 15, -1,
+ -1, -1, -1, 16, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 17, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 18,
- -1, -1, 19, -1, -1, -1, -1, 20,
- -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ 19, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 20, -1, 21,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 21, -1, -1,
- 22, -1, -1, -1, -1, -1, -1, -1,
+ -1, 22, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 23, -1, -1, -1,
+ -1, -1, -1, 24, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 25, -1, -1,
+ -1, 26, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 27, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 28, -1, -1,
+ 29, -1, -1, 30, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 31, -1, -1, -1, -1, -1,
+ -1, -1, -1, 32, -1, -1, -1, -1,
+ -1, -1, -552, -227, -2, -1, -1, -1,
+ -1, -1, -1, -1, 35, -1, -1, -1,
+ -1, -1, 36, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 37,
+ -1, -1, -1, 38, -1, 39, 40, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 41, -1, -1,
+ -1, -1, -1, -1, 42, -1, 43, -1,
+ -1, 44, -1, -1, -1, -1, -1, -1,
+ -1, 45, -1, 46, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 47, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 48, 49, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 50, -1, -1, -1,
+ -1, -1, -1, -1, -1, 51, -1, -1,
+ 52, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 53, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 54, -1, -1, -1, -1,
+ 55, 56, -1, -1, -1, 57, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 58,
+ -1, -1, -1, -1, 59, 60, 61, -1,
+ -1, -1, -1, -1, -1, -1, 62, -1,
+ -1, 63, -1, -1, -1, 64, 65, -1,
+ 66, -1, 67, 68, -1, -1, 69, 70,
+ -1, -1, -1, -1, -1, -1, -1, 71,
+ -1, -1, -1, -1, -1, -1, 72, -1,
+ -1, -1, 73, 74, 75, -1, 76, -1,
+ -1, -1, -1, -1, -1, -1, 77, -1,
+ -1, -1, -1, 78, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 79, -1, 80,
+ -1, -1, 81, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 82, 83, -1, -1,
+ 84, -1, -1, -1, -1, -1, 85, -1,
+ 86, -1, -1, 87, -1, 88, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 89, 90,
+ -1, 91, -1, -1, 92, -1, -1, -1,
+ 93, -1, -1, 94, -1, -1, -1, -1,
+ 95, 96, 97, 98, 99, 100, -1, -1,
+ -1, -1, -1, -1, -1, 101, -1, 102,
+ -1, -1, -1, -1, 103, -1, -1, -1,
+ -1, -1, -1, -1, 104, -1, -1, 105,
+ -1, -1, -1, 106, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 107, -1, -1,
+ 108, -1, -1, -1, -1, -1, -1, 109,
-1, -1, -1, -1, -1, -1, -1, -1,
- -540, -234, -2, -1, -1, -1, -1, -1,
- -1, -1, 26, 27, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 28, -1, 29, -1, -1, -1, -1,
- 30, -1, -1, 31, -1, -1, -1, -1,
- -1, -1, 32, 33, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 110, -1,
+ -1, -1, 111, -1, -1, -1, -1, -1,
+ -1, 112, -1, 113, -1, 114, 115, 116,
+ -1, -1, 117, -1, 118, -1, -1, -1,
+ -1, 119, -1, 120, -1, -1, 121, -1,
+ -1, -1, -1, -1, -1, 122, 123, -1,
+ -1, -1, -1, 124, -1, -1, -1, 125,
+ -1, -1, -1, -1, -1, -1, -1, 126,
+ -1, -1, 127, -1, 128, -1, -1, 129,
+ 130, -1, -1, 131, -1, -1, 132, -1,
+ -1, -1, 133, 134, -1, -1, -1, -1,
+ 135, -1, 136, -1, -1, 137, -1, -1,
+ -1, -1, -1, -1, -1, 138, -1, 139,
+ -1, -1, -1, -1, 140, -1, 141, 142,
+ -1, 143, -1, 144, -1, -1, 145, -1,
+ -1, -1, -1, 146, -1, -1, -1, -1,
+ -1, -1, 147, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 148, -1, -1, -1, -1, -1, -1,
+ 149, -1, 150, -1, -1, -1, -1, -1,
+ -1, 151, -1, -1, -1, -1, -1, 152,
+ -1, 153, -1, -1, -1, 154, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 34, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 35, -1, -1, 36, -1, -1,
- 37, -1, 38, -1, 39, -1, -1, 40,
- -1, 41, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 42, -1, -1, -1, -1,
- 43, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 44, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 45, -1, -1, -1,
- -1, 46, -1, -1, 47, 48, -1, -1,
+ -1, 155, 156, -1, 157, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 158, 159, 160, -1, -1,
+ -1, -1, -1, 161, -1, -1, -1, 162,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 49, -1, -1, -1, -1,
- -1, -1, 50, -1, 51, -1, -1, -1,
+ -1, 163, -1, -1, -1, -1, -1, -1,
+ -1, 164, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 165, -1, -1, -1,
+ 166, 167, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 52, -1,
- 53, -1, -1, -1, -1, -1, 54, -1,
- -1, -1, 55, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 168, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 56, -1, 57, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 58, -1, -1, -1, -1, -1, 59, -1,
- -1, -1, -1, -1, -1, 60, -1, -1,
- -1, -1, -1, -1, 61, -1, -1, 62,
- -1, 63, 64, -1, 65, -1, -1, 66,
- -1, -1, -1, 67, -1, -1, 68, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 69, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 70, -1, -1, -1,
+ -1, -1, 169, -1, 170, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 71, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 72, -1, 73,
+ 171, -1, -1, -1, -1, 172, -1, -1,
+ 173, -1, 174, 175, -1, 176, -1, 177,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 74, -1,
+ -1, -1, -1, -1, -1, 178, -1, -1,
+ -1, 179, -1, 180, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 181, -1, -1,
+ -1, -1, 182, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 75, -1, 76, -1, -1,
- 77, -1, 78, 79, -1, -1, -1, 80,
- 81, -1, -1, -1, 82, -1, -1, -1,
- -1, -1, -1, -1, 83, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 84, -1,
- -1, -1, -1, 85, -1, 86, -1, -1,
- -1, -1, 87, 88, -1, 89, -1, 90,
- -1, -1, -1, -1, 91, -1, -1, 92,
- -1, 93, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- 94, -1, -1, -1, 95, 96, -1, -1,
+ -1, 183, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 184, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 97, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 98, -1, -1, -1, -1, 99, -1,
- -1, -1, -1, 100, -1, 101, -1, -1,
- -1, -1, -1, -1, -1, 102, -1, -1,
- -1, -1, -1, -1, 103, -1, -1, -1,
- -1, -1, -1, -1, 104, -1, 105, -1,
- -1, 106, -1, 107, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 108, -1, -1,
- 109, -1, 110, -1, -1, -1, -1, 111,
- -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, 112, -1, -1,
- -1, -1, -1, -1, -1, 113, -1, -1,
- -1, -1, 114, -1, 115, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, 116, -1, 117, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 118, -1, -1,
- -1, -1, 119, -1, -1, 120, -1, -1,
- -1, -1, -1, -1, 121, -1, -1, -1,
- -1, 122, -1, -1, 123, -1, 124, -1,
- -1, 125, -1, -1, -1, -1, -1, -1,
- 126, -1, -1, 127, -1, -1, -1, 128,
- 129, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 130, -1, -1, -1,
- 131, 132, -1, -1, -1, -1, -1, -1,
- -1, -1, 133, 134, -1, -1, 135, -1,
- 136, -1, -1, 137, 138, -1, -1, -1,
- 139, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 140,
- -1, -1, -1, -1, -1, -1, 141, 142,
- -1, -1, -1, -1, 143, -1, -1, -1,
- 144, -1, -1, 145, -1, -1, -1, -1,
- -1, 146, -1, -1, -1, -1, -1, 147,
- -1, -1, -1, -1, -1, -1, -1, 148,
- -1, -1, -1, -1, -1, 149, -1, -1,
- -1, -1, -1, -1, -1, -1, 150, -1,
- 151, -1, -1, -1, -1, 152, -1, -1,
- 153, -1, 154, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 155, -1, -1, -1,
- -1, 156, -1, -1, 157, -1, 158, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- 159, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 160, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 161, -1, -1, -1, -1, -1,
- -1, -1, -1, 162, -1, -1, -1, -1,
- 163, -1, -1, -1, -1, -1, 164, -1,
- -1, -1, 165, -1, -1, 166, -1, -1,
- -1, -1, -1, -1, 167, -1, -1, -1,
- -1, -1, -1, -1, -1, 168, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- 169, 170, -1, 171, -1, 172, -1, -1,
- -1, -1, -1, -1, -1, 173, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 174, -1, -1, -1, -1, 175,
- -1, -1, -1, -1, -1, -1, -1, -1,
- 176, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 177,
- -1, -1, 178, -1, -1, -1, -1, 179,
- -1, -1, 180, -1, 181, -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, -1, -1,
- -1, -1, -1, -1, 184, -1, -1, -1,
-1, 185, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 186, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 187, -1, -1,
- 188, -1, 189, -1, -1, -1, -1, -1,
- -1, -1, 190, -1, -1, -1, -1, -1,
- -1, 191, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, 192, -1, -1,
- -1, -1, 193, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 194, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 195, 196,
- -1, -1, -1, -1, -1, 197, -1, -1,
- 198, -1, -1, -1, -1, -1, -1, 199,
- -1, -1, 200, 201, 202, -1, -1, -1,
- -1, 203, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 204, -1, -1, -1, -1,
- -1, -1, -1, 205, -1, -1, -1, -1,
- -1, -1, 206, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 207, -1, -1, -1, -1, -1, 208,
+ -1, -1, 186, -1, -1, -1, 187, 188,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 189,
+ -1, -1, -1, -1, 190, -1, 191, -1,
+ -1, 192, -1, 193, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, 194, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 195, 196, -1, 197, -1,
+ -1, -1, -1, -1, -1, 198, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 209, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 210, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- 211, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, 212, -1,
+ -1, -1, -1, -1, 199, 200, -1, -1,
+ -1, -1, -1, -1, 201, -1, 202, -1,
+ -1, -1, -1, -1, -1, -1, 203, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 213, -1, -1, -1, 214, -1, -1,
- 215, -1, -1, -1, -1, 216, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 204, -1, -1, 205, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 217, -1, 218, -1, -1, -1, -1,
+ -1, 206, -1, 207, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 208,
-1, -1, -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, 210, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ 211, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 212, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 213, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 219, -1, -1, 220, -1,
- 221, -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, 222, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 223, -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, 224, -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, 225, -1, 226, -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, -1, 228, -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, 229, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 230, -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, 217, -1, -1, -1, 218, -1,
+ -1, -1, -1, 219, -1, -1, -1, -1,
+ 220, -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, 231, -1, -1, -1, -1,
+ -1, -1, -1, -1, 221, -1, -1, -1,
+ -1, -1, -1, -1, -1, 222, -1, 223,
+ -1, -1, -1, -1, -1, -1, -1, 224,
+ -1, -1, -1, 225, 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, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, 232, -1, -1, -1, -1,
+ -1, -1, -1, -1, 227, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, 233, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 234,
- -1, -1, -1, -1, -1, -1, -1, 235,
-1, -1, -1, -1, -1, -1, -1, -1,
- 236, -1, -1, 237, -1, -1, -1, -1,
+ 228, -1, -1, -1, -1, -1, -1, 229,
+ 230, -1, -1, -1, 231, -1, -1, -1,
-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, 232, -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, 233, -1, 234, -1,
+ -1, -1, -1, 235, -1, -1, 236, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 237, 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,
@@ -637,37 +598,36 @@ findValue (register const char *str, register unsigned int len)
-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, 240, -1, -1, -1, -1,
+ -1, -1, -1, -1, 240, -1, 241, -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, 241, -1, -1,
- -1, -1, -1, 242, -1, -1, -1, -1,
- 243, -1, 244, -1, -1, -1, -1, -1,
+ -1, -1, -1, 242, 243, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -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, 244, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 246, -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, 245, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 246,
+ -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, 248, -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, 249, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ 250, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, 249, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 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,
@@ -681,9 +641,9 @@ 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, 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, 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,
@@ -695,13 +655,15 @@ 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, -1, -1, 252, -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, 252, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ 254, -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,
@@ -709,15 +671,14 @@ 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, -1, 253, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 254, -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, 255, -1, -1, -1, -1,
+ -1, 255, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 256,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
@@ -730,7 +691,6 @@ 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, -1, -1, -1, 256, -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,
@@ -738,6 +698,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, -1, 257, -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,
@@ -750,6 +711,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, 258, -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,
@@ -774,7 +736,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, -1, 257
+ -1, -1, -1, -1, 259
};
if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH)
@@ -1071,6 +1033,8 @@ static const char * const valueList[] = {
"read-only",
"read-write",
"element",
+"intrinsic",
+"min-intrinsic",
0
};
DOMString getValueName(unsigned short id)
diff --git a/WebCore/khtml/css/cssvalues.h b/WebCore/khtml/css/cssvalues.h
index 4dbd5c9..1dd849f 100644
--- a/WebCore/khtml/css/cssvalues.h
+++ b/WebCore/khtml/css/cssvalues.h
@@ -267,7 +267,9 @@ DOM::DOMString getValueName(unsigned short id);
#define CSS_VAL_READ_ONLY 256
#define CSS_VAL_READ_WRITE 257
#define CSS_VAL_ELEMENT 258
+#define CSS_VAL_INTRINSIC 259
+#define CSS_VAL_MIN_INTRINSIC 260
-#define CSS_VAL_TOTAL 259
+#define CSS_VAL_TOTAL 261
#endif
diff --git a/WebCore/khtml/css/cssvalues.in b/WebCore/khtml/css/cssvalues.in
index b3746f2..e53b96c 100644
--- a/WebCore/khtml/css/cssvalues.in
+++ b/WebCore/khtml/css/cssvalues.in
@@ -381,3 +381,9 @@ read-write
# CSS_PROP__KHTML_USER_DRAG
#
element
+
+#
+# CSS_PROP_WIDTH/MIN_WIDTH/MAX_WIDTH
+#
+intrinsic
+min-intrinsic
diff --git a/WebCore/khtml/misc/khtmllayout.h b/WebCore/khtml/misc/khtmllayout.h
index c0891b7..c3a81f1 100644
--- a/WebCore/khtml/misc/khtmllayout.h
+++ b/WebCore/khtml/misc/khtmllayout.h
@@ -41,7 +41,7 @@ namespace khtml
/*
* %multiLength and %Length
*/
- enum LengthType { Variable = 0, Relative, Percent, Fixed, Static };
+ enum LengthType { Variable = 0, Relative, Percent, Fixed, Static, Intrinsic, MinIntrinsic };
struct Length
{
Length() { *((Q_UINT32 *)this) = 0; }
diff --git a/WebCore/khtml/rendering/render_block.cpp b/WebCore/khtml/rendering/render_block.cpp
index 7416319..4e9b504 100644
--- a/WebCore/khtml/rendering/render_block.cpp
+++ b/WebCore/khtml/rendering/render_block.cpp
@@ -2661,42 +2661,32 @@ short RenderBlock::baselinePosition(bool b, bool isRootLineBox) const
// box, then the fact that we're an inline-block is irrelevant, and we behave
// just like a block.
if (isReplaced() && !isRootLineBox)
- return height()+marginTop()+marginBottom();
+ return height() + marginTop() + marginBottom();
return RenderFlow::baselinePosition(b, isRootLineBox);
}
-int RenderBlock::getBaselineOfFirstLineBox()
+int RenderBlock::getBaselineOfFirstLineBox() const
{
- if (m_firstLineBox)
- return m_firstLineBox->yPos() + m_firstLineBox->baseline();
-
- if (isInline())
- return -1; // We're inline and had no line box, so we have no baseline we can return.
+ if (!isBlockFlow())
+ return RenderFlow::getBaselineOfFirstLineBox();
- for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
- int result = curr->getBaselineOfFirstLineBox();
- if (result != -1)
- return curr->yPos() + result; // Translate to our coordinate space.
+ if (childrenInline()) {
+ if (m_firstLineBox)
+ return m_firstLineBox->yPos() + m_firstLineBox->baseline();
+ else
+ return -1;
}
-
- return -1;
-}
-
-InlineFlowBox* RenderBlock::getFirstLineBox()
-{
- if (m_firstLineBox)
- return m_firstLineBox;
-
- if (isInline())
- return 0; // We're inline and had no line box, so we have no baseline we can return.
-
- for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
- InlineFlowBox* result = curr->getFirstLineBox();
- if (result)
- return result;
+ else {
+ for (RenderObject* curr = firstChild(); curr; curr = curr->nextSibling()) {
+ if (!curr->isFloatingOrPositioned()) {
+ int result = curr->getBaselineOfFirstLineBox();
+ if (result != -1)
+ return curr->yPos() + result; // Translate to our coordinate space.
+ }
+ }
}
- return 0;
+ return -1;
}
RenderBlock* RenderBlock::firstLineBlock() const
diff --git a/WebCore/khtml/rendering/render_block.h b/WebCore/khtml/rendering/render_block.h
index 19bc9fb..92f274a 100644
--- a/WebCore/khtml/rendering/render_block.h
+++ b/WebCore/khtml/rendering/render_block.h
@@ -179,9 +179,8 @@ public:
void calcInlineMinMaxWidth();
void calcBlockMinMaxWidth();
- virtual int getBaselineOfFirstLineBox();
- virtual InlineFlowBox* getFirstLineBox();
-
+ virtual int getBaselineOfFirstLineBox() const;
+
RootInlineBox* firstRootBox() { return static_cast<RootInlineBox*>(m_firstLineBox); }
RootInlineBox* lastRootBox() { return static_cast<RootInlineBox*>(m_lastLineBox); }
diff --git a/WebCore/khtml/rendering/render_box.cpp b/WebCore/khtml/rendering/render_box.cpp
index f57718a..155596c 100644
--- a/WebCore/khtml/rendering/render_box.cpp
+++ b/WebCore/khtml/rendering/render_box.cpp
@@ -31,6 +31,7 @@
#include "rendering/render_replaced.h"
#include "rendering/render_canvas.h"
#include "rendering/render_table.h"
+#include "render_flexbox.h"
#include "render_arena.h"
#include "misc/htmlhashes.h"
@@ -53,6 +54,7 @@ RenderBox::RenderBox(DOM::NodeImpl* node)
{
m_minWidth = -1;
m_maxWidth = -1;
+ m_overrideSize = -1;
m_width = m_height = 0;
m_x = 0;
m_y = 0;
@@ -167,6 +169,16 @@ int RenderBox::contentHeight() const
return h;
}
+int RenderBox::overrideWidth() const
+{
+ return m_overrideSize == -1 ? m_width : m_overrideSize;
+}
+
+int RenderBox::overrideHeight() const
+{
+ return m_overrideSize == -1 ? m_height : m_overrideSize;
+}
+
void RenderBox::setPos( int xPos, int yPos )
{
if (xPos == m_x && yPos == m_y)
@@ -712,11 +724,13 @@ void RenderBox::calcWidth()
}
else
{
- // The parent box is flexing us, so it has increased or decreased our width. We just bail
- // and leave our width unchanged in this case.
- if (parent()->isFlexibleBox() && parent()->style()->boxOrient() == HORIZONTAL
- && parent()->isFlexingChildren())
+ // The parent box is flexing us, so it has increased or decreased our width. Use the width
+ // from the style context.
+ if (m_overrideSize != -1 && parent()->isFlexibleBox() && parent()->style()->boxOrient() == HORIZONTAL
+ && parent()->isFlexingChildren()) {
+ m_width = m_overrideSize;
return;
+ }
bool inVerticalBox = parent()->isFlexibleBox() && parent()->style()->boxOrient() == VERTICAL;
bool stretching = parent()->style()->boxAlign() == BSTRETCH;
@@ -905,10 +919,9 @@ void RenderBox::calcHeight()
// The parent box is flexing us, so it has increased or decreased our height. We have to
// grab our cached flexible height.
- if (parent()->isFlexibleBox() && parent()->style()->boxOrient() == VERTICAL
- && parent()->isFlexingChildren() && style()->boxFlexedHeight() != -1)
- h = Length(style()->boxFlexedHeight() - borderTop() - borderBottom() -
- paddingTop() - paddingBottom(), Fixed);
+ if (m_overrideSize != -1 && parent()->isFlexibleBox() && parent()->style()->boxOrient() == VERTICAL
+ && parent()->isFlexingChildren())
+ h = Length(m_overrideSize - borderTop() - borderBottom() - paddingTop() - paddingBottom(), Fixed);
else if (treatAsReplaced)
h = Length(calcReplacedHeight(), Fixed);
else {
diff --git a/WebCore/khtml/rendering/render_box.h b/WebCore/khtml/rendering/render_box.h
index ad12e56..79c7cb9 100644
--- a/WebCore/khtml/rendering/render_box.h
+++ b/WebCore/khtml/rendering/render_box.h
@@ -58,6 +58,11 @@ public:
virtual int contentWidth() const;
virtual int contentHeight() const;
+ virtual int overrideSize() const { return m_overrideSize; }
+ virtual int overrideWidth() const;
+ virtual int overrideHeight() const;
+ virtual void setOverrideSize(int s) { m_overrideSize = s; }
+
virtual bool absolutePosition(int &xPos, int &yPos, bool f = false);
virtual void setPos( int xPos, int yPos );
@@ -174,6 +179,9 @@ protected:
*/
int m_maxWidth;
+ // Used by flexible boxes when flexing this element.
+ int m_overrideSize;
+
// Cached normal flow values for absolute positioned elements with static left/top values.
int m_staticX;
int m_staticY;
diff --git a/WebCore/khtml/rendering/render_flexbox.cpp b/WebCore/khtml/rendering/render_flexbox.cpp
index efc4de3..57d9762 100644
--- a/WebCore/khtml/rendering/render_flexbox.cpp
+++ b/WebCore/khtml/rendering/render_flexbox.cpp
@@ -222,13 +222,13 @@ void RenderFlexibleBox::calcMinMaxWidth()
m_minWidth = m_maxWidth = style()->width().value;
if (style()->minWidth().isFixed() && style()->minWidth().value > 0) {
- m_maxWidth = KMAX(m_maxWidth, style()->minWidth().value);
- m_minWidth = KMAX(m_minWidth, style()->minWidth().value);
+ m_maxWidth = kMax(m_maxWidth, style()->minWidth().value);
+ m_minWidth = kMax(m_minWidth, style()->minWidth().value);
}
if (style()->maxWidth().isFixed() && style()->maxWidth().value != UNDEFINED) {
- m_maxWidth = KMIN(m_maxWidth, style()->maxWidth().value);
- m_minWidth = KMIN(m_minWidth, style()->maxWidth().value);
+ m_maxWidth = kMin(m_maxWidth, style()->maxWidth().value);
+ m_minWidth = kMin(m_minWidth, style()->maxWidth().value);
}
int toAdd = borderLeft() + borderRight() + paddingLeft() + paddingRight();
@@ -264,7 +264,9 @@ void RenderFlexibleBox::layoutBlock(bool relayoutChildren)
calcHeight();
m_overflowWidth = m_width;
- if (oldWidth != m_width || oldHeight != m_height || parent()->isFlexingChildren())
+ if (oldWidth != m_width || oldHeight != m_height ||
+ (parent()->isFlexibleBox() && parent()->style()->boxOrient() == HORIZONTAL &&
+ parent()->style()->boxAlign() == BSTRETCH))
relayoutChildren = true;
m_height = 0;
@@ -359,8 +361,9 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
if (!child->isPositioned() && child->style()->boxFlex() > 0.0f) {
// We always have to lay out flexible objects again, since the flex distribution
// may have changed, and we need to reallocate space.
+ child->setOverrideSize(-1);
if (!relayoutChildren)
- child->setChildNeedsLayout(true);
+ child->setChildNeedsLayout(true, false);
haveFlex = true;
unsigned int flexGroup = child->style()->boxFlexGroup();
if (lowestFlexGroup == 0)
@@ -371,7 +374,6 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
highestFlexGroup = flexGroup;
}
child = iterator.next();
- continue;
}
// We do 2 passes. The first pass is simply to lay everyone out at
@@ -385,11 +387,12 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
// Our first pass is done without flexing. We simply lay the children
// out within the box. We have to do a layout first in order to determine
// our box's intrinsic height.
+ int maxAscent = 0, maxDescent = 0;
child = iterator.first();
while (child) {
// make sure we relayout children if we need it.
- if ( relayoutChildren || (child->isReplaced() && (child->style()->width().isPercent() || child->style()->height().isPercent())))
- child->setChildNeedsLayout(true);
+ if (relayoutChildren || (child->isReplaced() && (child->style()->width().isPercent() || child->style()->height().isPercent())))
+ child->setChildNeedsLayout(true, false);
if (child->isPositioned()) {
child = iterator.next();
@@ -403,8 +406,23 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
child->layoutIfNeeded();
// Update our height and overflow height.
- m_height = QMAX(m_height, yPos+child->marginTop()+child->height()+child->marginBottom());
- m_overflowHeight = QMAX(m_overflowHeight, yPos+child->marginTop()+child->overflowHeight());
+ if (style()->boxAlign() == BBASELINE) {
+ int ascent = child->marginTop() + child->getBaselineOfFirstLineBox();
+ if (ascent == -1)
+ ascent = child->marginTop() + child->height() + child->marginBottom();
+ int descent = (child->marginTop() + child->height() + child->marginBottom()) - ascent;
+
+ // Update our maximum ascent.
+ maxAscent = kMax(maxAscent, ascent);
+
+ // Update our maximum descent.
+ maxDescent = kMax(maxDescent, descent);
+
+ // Now update our height.
+ m_height = kMax(yPos + maxAscent + maxDescent, m_height);
+ }
+ else
+ m_height = kMax(m_height, yPos + child->marginTop() + child->height() + child->marginBottom());
child = iterator.next();
}
@@ -431,10 +449,8 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
// Now that our height is actually known, we can place our boxes.
m_stretchingChildren = (style()->boxAlign() == BSTRETCH);
child = iterator.first();
- while (child)
- {
- if (child->isPositioned())
- {
+ while (child) {
+ if (child->isPositioned()) {
child->containingBlock()->insertPositionedObject(child);
if (child->hasStaticX()) {
if (style()->direction() == LTR)
@@ -453,7 +469,7 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
int oldChildHeight = child->height();
static_cast<RenderBox*>(child)->calcHeight();
if (oldChildHeight != child->height())
- child->setChildNeedsLayout(true);
+ child->setChildNeedsLayout(true, false);
child->layoutIfNeeded();
// We can place the child now, using our value of box-align.
@@ -461,9 +477,15 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
int childY = yPos;
switch (style()->boxAlign()) {
case BCENTER:
- case BBASELINE: // FIXME: Implement support for baseline
- childY += (contentHeight() - (child->height() + child->marginTop() + child->marginBottom()))/2;
+ childY += child->marginTop() + (contentHeight() - (child->height() + child->marginTop() + child->marginBottom()))/2;
break;
+ case BBASELINE: {
+ int ascent = child->marginTop() + child->getBaselineOfFirstLineBox();
+ if (ascent == -1)
+ ascent = child->marginTop() + child->height() + child->marginBottom();
+ childY += child->marginTop() + (maxAscent - ascent);
+ break;
+ }
case BEND:
childY += contentHeight() - child->marginBottom() - child->height();
break;
@@ -473,6 +495,7 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
}
placeChild(child, xPos, childY);
+ m_overflowHeight = kMax(m_overflowHeight, childY + child->overflowHeight(false));
xPos += child->width() + child->marginRight();
@@ -492,69 +515,62 @@ void RenderFlexibleBox::layoutHorizontalBox(bool relayoutChildren)
// Allocate the remaining space among the flexible objects. If we are trying to
// grow, then we go from the lowest flex group to the highest flex group. For shrinking,
// we go from the highest flex group to the lowest group.
- unsigned int start = remainingSpace > 0 ? lowestFlexGroup : highestFlexGroup;
- unsigned int end = remainingSpace > 0 ? highestFlexGroup : lowestFlexGroup;
- for (unsigned int i = start; i <= end; i++) {
- float totalFlex = 0.0f;
- child = iterator.first();
- while (child) {
- if (child->isPositioned() || child->style()->boxFlex() == 0.0f ||
- child->style()->boxFlexGroup() != i) {
+ bool expanding = remainingSpace > 0;
+ unsigned int start = expanding ? lowestFlexGroup : highestFlexGroup;
+ unsigned int end = expanding? highestFlexGroup : lowestFlexGroup;
+ for (unsigned int i = start; i <= end && remainingSpace; i++) {
+ // Always start off by assuming the group can get all the remaining space.
+ int groupRemainingSpace = remainingSpace;
+ do {
+ // Flexing consists of multiple passes, since we have to change ratios every time an object hits its max/min-width
+ // For a given pass, we always start off by computing the totalFlex of all objects that can grow/shrink at all, and
+ // computing the allowed growth before an object hits its min/max width (and thus
+ // forces a totalFlex recomputation).
+ float totalFlex = 0.0f;
+ child = iterator.first();
+ while (child) {
+ if (allowedChildFlex(child, expanding, i))
+ totalFlex += child->style()->boxFlex();
child = iterator.next();
- continue;
}
-
- // Add together the flexes so we can normalize.
- totalFlex += child->style()->boxFlex();
-
- child = iterator.next();
- continue;
- }
-
- // The flex group may not have any flexible objects.
- if (totalFlex == 0.0f)
- continue;
-
- // Now distribute the space to objects.
- child = iterator.first();
- while (child && remainingSpace && totalFlex) {
- if (child->isPositioned() || child->style()->boxFlex() == 0.0f ||
- child->style()->boxFlexGroup() != i) {
+ child = iterator.first();
+ int spaceAvailableThisPass = groupRemainingSpace;
+ while (child) {
+ int allowedFlex = allowedChildFlex(child, expanding, i);
+ if (allowedFlex) {
+ int projectedFlex = (allowedFlex == INT_MAX) ? allowedFlex : (int)(allowedFlex * (totalFlex / child->style()->boxFlex()));
+ spaceAvailableThisPass = expanding ? kMin(spaceAvailableThisPass, projectedFlex) : kMax(spaceAvailableThisPass, projectedFlex);
+ }
child = iterator.next();
- continue;
}
- int spaceAdd = (int)(remainingSpace * (child->style()->boxFlex()/totalFlex));
- if (remainingSpace > 0) {
- // FIXME: For now just handle fixed values.
- if (child->style()->maxWidth().value != UNDEFINED &&
- child->style()->maxWidth().isFixed()) {
- int maxW = child->style()->maxWidth().value;
- int w = child->contentWidth();
- int allowedGrowth = QMAX(0, maxW - w);
- spaceAdd = QMIN(spaceAdd, allowedGrowth);
- }
- } else {
- // FIXME: For now just handle fixed values.
- if (child->style()->minWidth().isFixed()) {
- int minW = child->style()->minWidth().value;
- int w = child->contentWidth();
- int allowedShrinkage = QMIN(0, minW - w);
- spaceAdd = QMAX(spaceAdd, allowedShrinkage);
- }
+ // The flex groups may not have any flexible objects this time around.
+ if (!spaceAvailableThisPass || totalFlex == 0.0f) {
+ // If we just couldn't grow/shrink any more, then it's time to transition to the next flex group.
+ groupRemainingSpace = 0;
+ continue;
}
- if (spaceAdd) {
- child->setWidth(child->width()+spaceAdd);
- m_flexingChildren = true;
- relayoutChildren = true;
+ // Now distribute the space to objects.
+ child = iterator.first();
+ while (child && spaceAvailableThisPass && totalFlex) {
+ if (allowedChildFlex(child, expanding, i)) {
+ int spaceAdd = (int)(spaceAvailableThisPass * (child->style()->boxFlex()/totalFlex));
+ if (spaceAdd) {
+ child->setOverrideSize(child->overrideWidth() + spaceAdd);
+ m_flexingChildren = true;
+ relayoutChildren = true;
+ }
+
+ spaceAvailableThisPass -= spaceAdd;
+ remainingSpace -= spaceAdd;
+ groupRemainingSpace -= spaceAdd;
+
+ totalFlex -= child->style()->boxFlex();
+ }
+ child = iterator.next();
}
-
- remainingSpace -= spaceAdd;
- totalFlex -= child->style()->boxFlex();
-
- child = iterator.next();
- }
+ } while (groupRemainingSpace);
}
// We didn't find any children that could grow.
@@ -658,6 +674,7 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
if (!child->isPositioned() && child->style()->boxFlex() > 0.0f) {
// We always have to lay out flexible objects again, since the flex distribution
// may have changed, and we need to reallocate space.
+ child->setOverrideSize(-1);
if (!relayoutChildren)
child->setChildNeedsLayout(true);
haveFlex = true;
@@ -670,7 +687,6 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
highestFlexGroup = flexGroup;
}
child = iterator.next();
- continue;
}
#if APPLE_CHANGES
@@ -708,11 +724,11 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
int newHeight = static_cast<RenderBlock*>(child)->heightForLineCount(numLines);
if (newHeight != child->height()) {
child->setChildNeedsLayout(true);
- child->style()->setBoxFlexedHeight(newHeight);
+ child->setOverrideSize(newHeight);
m_flexingChildren = true;
child->layoutIfNeeded();
m_flexingChildren = false;
- child->style()->setBoxFlexedHeight(-1);
+ child->setOverrideSize(-1);
}
}
child = iterator.next();
@@ -765,7 +781,7 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
switch (style()->boxAlign()) {
case BCENTER:
case BBASELINE: // Baseline just maps to center for vertical boxes
- childX += (contentWidth() - (child->width() + child->marginLeft() + child->marginRight()))/2;
+ childX += child->marginLeft() + (contentWidth() - (child->width() + child->marginLeft() + child->marginRight()))/2;
break;
case BEND:
if (style()->direction() == RTL)
@@ -787,7 +803,7 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
// See if this child has made our overflow need to grow.
// XXXdwh Work with left overflow as well as right overflow.
- int rightChildPos = child->xPos() + QMAX(child->overflowWidth(false), child->width());
+ int rightChildPos = child->xPos() + kMax(child->overflowWidth(false), child->width());
if (rightChildPos > m_overflowWidth)
m_overflowWidth = rightChildPos;
@@ -824,68 +840,62 @@ void RenderFlexibleBox::layoutVerticalBox(bool relayoutChildren)
// Allocate the remaining space among the flexible objects. If we are trying to
// grow, then we go from the lowest flex group to the highest flex group. For shrinking,
// we go from the highest flex group to the lowest group.
- unsigned int start = remainingSpace > 0 ? lowestFlexGroup : highestFlexGroup;
- unsigned int end = remainingSpace > 0 ? highestFlexGroup : lowestFlexGroup;
- for (unsigned int i = start; i <= end; i++) {
- float totalFlex = 0.0f;
- child = iterator.first();
- while (child) {
- if (child->isPositioned() || child->style()->boxFlex() == 0.0f ||
- child->style()->boxFlexGroup() != i) {
+ bool expanding = remainingSpace > 0;
+ unsigned int start = expanding ? lowestFlexGroup : highestFlexGroup;
+ unsigned int end = expanding? highestFlexGroup : lowestFlexGroup;
+ for (unsigned int i = start; i <= end && remainingSpace; i++) {
+ // Always start off by assuming the group can get all the remaining space.
+ int groupRemainingSpace = remainingSpace;
+ do {
+ // Flexing consists of multiple passes, since we have to change ratios every time an object hits its max/min-width
+ // For a given pass, we always start off by computing the totalFlex of all objects that can grow/shrink at all, and
+ // computing the allowed growth before an object hits its min/max width (and thus
+ // forces a totalFlex recomputation).
+ float totalFlex = 0.0f;
+ child = iterator.first();
+ while (child) {
+ if (allowedChildFlex(child, expanding, i))
+ totalFlex += child->style()->boxFlex();
child = iterator.next();
- continue;
}
-
- // Add together the flexes so we can normalize.
- totalFlex += child->style()->boxFlex();
-
- child = iterator.next();
- }
-
- // The flex group may not have any flexible objects.
- if (totalFlex == 0.0f)
- continue;
-
- // Now distribute the space to objects.
- child = iterator.first();
- while (child && remainingSpace && totalFlex) {
- if (child->isPositioned() || child->style()->boxFlex() == 0.0f ||
- child->style()->boxFlexGroup() != i) {
+ child = iterator.first();
+ int spaceAvailableThisPass = groupRemainingSpace;
+ while (child) {
+ int allowedFlex = allowedChildFlex(child, expanding, i);
+ if (allowedFlex) {
+ int projectedFlex = (allowedFlex == INT_MAX) ? allowedFlex : (int)(allowedFlex * (totalFlex / child->style()->boxFlex()));
+ spaceAvailableThisPass = expanding ? kMin(spaceAvailableThisPass, projectedFlex) : kMax(spaceAvailableThisPass, projectedFlex);
+ }
child = iterator.next();
- continue;
}
- int spaceAdd = (int)(remainingSpace * (child->style()->boxFlex()/totalFlex));
- if (remainingSpace > 0) {
- // FIXME: For now just handle fixed values.
- if (child->style()->maxHeight().value != UNDEFINED &&
- child->style()->maxHeight().isFixed()) {
- int maxH = child->style()->maxHeight().value;
- int h = child->contentHeight();
- int allowedGrowth = QMAX(0, maxH - h);
- spaceAdd = QMIN(spaceAdd, allowedGrowth);
- }
- } else {
- // FIXME: For now just handle fixed values.
- if (child->style()->minHeight().isFixed()) {
- int minH = child->style()->minHeight().value;
- int h = child->contentHeight();
- int allowedShrinkage = QMIN(0, minH - h);
- spaceAdd = QMAX(spaceAdd, allowedShrinkage);
- }
+ // The flex groups may not have any flexible objects this time around.
+ if (!spaceAvailableThisPass || totalFlex == 0.0f) {
+ // If we just couldn't grow/shrink any more, then it's time to transition to the next flex group.
+ groupRemainingSpace = 0;
+ continue;
}
-
- if (spaceAdd) {
- child->style()->setBoxFlexedHeight(child->height()+spaceAdd);
- m_flexingChildren = true;
- child->setNeedsLayout(true);
+
+ // Now distribute the space to objects.
+ child = iterator.first();
+ while (child && spaceAvailableThisPass && totalFlex) {
+ if (allowedChildFlex(child, expanding, i)) {
+ int spaceAdd = (int)(spaceAvailableThisPass * (child->style()->boxFlex()/totalFlex));
+ if (spaceAdd) {
+ child->setOverrideSize(child->overrideHeight() + spaceAdd);
+ m_flexingChildren = true;
+ relayoutChildren = true;
+ }
+
+ spaceAvailableThisPass -= spaceAdd;
+ remainingSpace -= spaceAdd;
+ groupRemainingSpace -= spaceAdd;
+
+ totalFlex -= child->style()->boxFlex();
+ }
+ child = iterator.next();
}
-
- remainingSpace -= spaceAdd;
- totalFlex -= child->style()->boxFlex();
-
- child = iterator.next();
- }
+ } while (groupRemainingSpace);
}
// We didn't find any children that could grow.
@@ -974,6 +984,64 @@ void RenderFlexibleBox::placeChild(RenderObject* child, int x, int y)
child->repaintDuringLayoutIfMoved(oldChildX, oldChildY);
}
+int RenderFlexibleBox::allowedChildFlex(RenderObject* child, bool expanding, unsigned int group)
+{
+ if (child->isPositioned() || child->style()->boxFlex() == 0.0f || child->style()->boxFlexGroup() != group)
+ return 0;
+
+ if (expanding) {
+ if (isHorizontal()) {
+ // FIXME: For now just handle fixed values.
+ int maxW = INT_MAX;
+ int w = child->overrideWidth() - (child->borderLeft() + child->borderRight() + child->paddingLeft() + child->paddingRight());
+ if (child->style()->maxWidth().value != UNDEFINED &&
+ child->style()->maxWidth().isFixed())
+ maxW = child->style()->maxWidth().value;
+ else if (child->style()->maxWidth().type == Intrinsic)
+ maxW = child->maxWidth();
+ else if (child->style()->maxWidth().type == MinIntrinsic)
+ maxW = child->minWidth();
+ int allowedGrowth = kMax(0, maxW - w);
+ return allowedGrowth;
+ }
+ else {
+ // FIXME: For now just handle fixed values.
+ int maxH = INT_MAX;
+ int h = child->overrideHeight() - (child->borderTop() + child->borderBottom() + child->paddingTop() + child->paddingBottom());
+ if (child->style()->maxHeight().value != UNDEFINED &&
+ child->style()->maxHeight().isFixed())
+ maxH = child->style()->maxHeight().value;
+ int allowedGrowth = kMax(0, maxH - h);
+ return allowedGrowth;
+ }
+ }
+
+ // FIXME: For now just handle fixed values.
+ if (isHorizontal()) {
+ int minW = child->minWidth();
+ int w = child->contentWidth();
+ if (child->style()->minWidth().isFixed())
+ minW = child->style()->minWidth().value;
+ else if (child->style()->minWidth().type == Intrinsic)
+ minW = child->maxWidth();
+ else if (child->style()->minWidth().type == MinIntrinsic)
+ minW = child->minWidth();
+
+ int allowedShrinkage = kMin(0, minW - w);
+ return allowedShrinkage;
+ }
+ else {
+ if (child->style()->minHeight().isFixed()) {
+ int minH = child->style()->minHeight().value;
+ int h = child->contentHeight();
+ int allowedShrinkage = kMin(0, minH - h);
+ return allowedShrinkage;
+ }
+ }
+
+ return 0;
+}
+
const char *RenderFlexibleBox::renderName() const
{
if (isFloating())
diff --git a/WebCore/khtml/rendering/render_flexbox.h b/WebCore/khtml/rendering/render_flexbox.h
index 4dd7d6c..6875279 100644
--- a/WebCore/khtml/rendering/render_flexbox.h
+++ b/WebCore/khtml/rendering/render_flexbox.h
@@ -49,8 +49,10 @@ public:
virtual const char *renderName() const;
void placeChild(RenderObject* child, int x, int y);
-
+
protected:
+ int allowedChildFlex(RenderObject* child, bool expanding, unsigned int group);
+
bool hasMultipleLines() { return style()->boxLines() == MULTIPLE; }
bool isVertical() { return style()->boxOrient() == VERTICAL; }
bool isHorizontal() { return style()->boxOrient() == HORIZONTAL; }
diff --git a/WebCore/khtml/rendering/render_image.cpp b/WebCore/khtml/rendering/render_image.cpp
index b3e5e1d..c89c128 100644
--- a/WebCore/khtml/rendering/render_image.cpp
+++ b/WebCore/khtml/rendering/render_image.cpp
@@ -581,9 +581,7 @@ bool RenderImage::isWidthSpecified() const
case Fixed:
case Percent:
return true;
- case Variable:
- case Relative:
- case Static:
+ default:
return false;
}
assert(false);
@@ -596,9 +594,7 @@ bool RenderImage::isHeightSpecified() const
case Fixed:
case Percent:
return true;
- case Variable:
- case Relative:
- case Static:
+ default:
return false;
}
assert(false);
diff --git a/WebCore/khtml/rendering/render_object.h b/WebCore/khtml/rendering/render_object.h
index 446fa1e..931cbf5 100644
--- a/WebCore/khtml/rendering/render_object.h
+++ b/WebCore/khtml/rendering/render_object.h
@@ -145,9 +145,8 @@ public:
virtual QRect getClipRect(int tx, int ty) { return QRect(0,0,0,0); }
bool hasClip() { return isPositioned() && style()->hasClip(); }
- virtual int getBaselineOfFirstLineBox() { return -1; } // Tables and blocks implement this.
- virtual InlineFlowBox* getFirstLineBox() { return 0; } // Tables and blocks implement this.
-
+ virtual int getBaselineOfFirstLineBox() const { return -1; }
+
// Obtains the nearest enclosing block (including this block) that contributes a first-line style to our inline
// children.
virtual RenderBlock* firstLineBlock() const;
@@ -507,6 +506,12 @@ public:
virtual int intrinsicWidth() const { return 0; }
virtual int intrinsicHeight() const { return 0; }
+ // used by flexible boxes to impose a flexed width/height override
+ virtual int overrideSize() const { return 0; }
+ virtual int overrideWidth() const { return 0; }
+ virtual int overrideHeight() const { return 0; }
+ virtual void setOverrideSize(int s) {}
+
// relative to parent node
virtual void setPos( int /*xPos*/, int /*yPos*/ ) { }
virtual void setWidth( int /*width*/ ) { }
diff --git a/WebCore/khtml/rendering/render_style.cpp b/WebCore/khtml/rendering/render_style.cpp
index deb2e6e..476bfc7 100644
--- a/WebCore/khtml/rendering/render_style.cpp
+++ b/WebCore/khtml/rendering/render_style.cpp
@@ -156,8 +156,6 @@ StyleFlexibleBoxData::StyleFlexibleBoxData()
pack = RenderStyle::initialBoxPack();
orient = RenderStyle::initialBoxOrient();
lines = RenderStyle::initialBoxLines();
- flexed_height = -1;
- transitions = 0;
}
StyleFlexibleBoxData::StyleFlexibleBoxData(const StyleFlexibleBoxData& o)
@@ -170,26 +168,13 @@ StyleFlexibleBoxData::StyleFlexibleBoxData(const StyleFlexibleBoxData& o)
pack = o.pack;
orient = o.orient;
lines = o.lines;
- flexed_height = o.flexed_height;
- transitions = o.transitions ? new FlexGroupTransitionData(*o.transitions) : 0;
}
bool StyleFlexibleBoxData::operator==(const StyleFlexibleBoxData& o) const
{
return flex == o.flex && flex_group == o.flex_group &&
ordinal_group == o.ordinal_group && align == o.align &&
- pack == o.pack && orient == o.orient && lines == o.lines &&
- flexed_height == o.flexed_height &&
- transitionDataEquivalent(o);
-}
-
-bool StyleFlexibleBoxData::transitionDataEquivalent(const StyleFlexibleBoxData& o) const
-{
- if (!transitions && o.transitions || transitions && !o.transitions)
- return false;
- if (transitions && o.transitions && (*transitions != *o.transitions))
- return false;
- return true;
+ pack == o.pack && orient == o.orient && lines == o.lines;
}
StyleCSS3NonInheritedData::StyleCSS3NonInheritedData()
@@ -897,32 +882,3 @@ bool ShadowData::operator==(const ShadowData& o) const
return x == o.x && y == o.y && blur == o.blur && color == o.color;
}
-
-void RenderStyle::setBoxFlexGroupTransition(FlexGroupTransitionData* val, bool add)
-{
- StyleFlexibleBoxData* boxData = css3NonInheritedData.access()->flexibleBox.access();
- if (!add) {
- delete boxData->transitions;
- boxData->transitions = val;
- return;
- }
-
- FlexGroupTransitionData* last = boxData->transitions;
- while (last->next) last = last->next;
- last->next = val;
-}
-
-FlexGroupTransitionData::FlexGroupTransitionData(const FlexGroupTransitionData& o)
-:group1(o.group1), group2(o.group2), length(o.length)
-{
- next = o.next ? new FlexGroupTransitionData(*o.next) : 0;
-}
-
-bool FlexGroupTransitionData::operator==(const FlexGroupTransitionData& o) const
-{
- if ((next && !o.next) || (!next && o.next) ||
- (next && o.next && *next != *o.next))
- return false;
-
- return autoValue == o.autoValue && group1 == o.group1 && group2 == o.group2 && length == o.length;
-}
diff --git a/WebCore/khtml/rendering/render_style.h b/WebCore/khtml/rendering/render_style.h
index 94a2dce..a870421 100644
--- a/WebCore/khtml/rendering/render_style.h
+++ b/WebCore/khtml/rendering/render_style.h
@@ -57,7 +57,6 @@ class RenderArena;
namespace DOM {
class DOMStringImpl;
class ShadowValueImpl;
- class FlexGroupTransitionValueImpl;
}
namespace khtml {
@@ -451,29 +450,6 @@ public:
//------------------------------------------------
// CSS3 Flexible Box Properties
-// This struct holds information about flex group transitions for the box-flex-group-transition property.
-struct FlexGroupTransitionData {
- FlexGroupTransitionData() :autoValue(true), group1(0), group2(0), next(0) {}
- FlexGroupTransitionData(unsigned int _group1, unsigned int _group2, Length _l)
- :autoValue(false), group1(_group1), group2(_group2), length(_l), next(0) {}
- FlexGroupTransitionData(const FlexGroupTransitionData& o);
-
- ~FlexGroupTransitionData() { delete next; }
-
- bool operator==(const FlexGroupTransitionData& o) const;
- bool operator!=(const FlexGroupTransitionData &o) const {
- return !(*this == o);
- }
-
- bool isAuto() const { return autoValue; }
-
- bool autoValue;
- unsigned int group1;
- unsigned int group2;
- Length length;
- FlexGroupTransitionData* next;
-};
-
enum EBoxAlignment { BSTRETCH, BSTART, BCENTER, BEND, BJUSTIFY, BBASELINE };
enum EBoxOrient { HORIZONTAL, VERTICAL };
enum EBoxLines { SINGLE, MULTIPLE };
@@ -483,7 +459,6 @@ class StyleFlexibleBoxData : public Shared<StyleFlexibleBoxData>
{
public:
StyleFlexibleBoxData();
- ~StyleFlexibleBoxData() { delete transitions; }
StyleFlexibleBoxData(const StyleFlexibleBoxData& o);
bool operator==(const StyleFlexibleBoxData& o) const;
@@ -491,13 +466,9 @@ public:
return !(*this == o);
}
- bool transitionDataEquivalent(const StyleFlexibleBoxData& o) const;
-
float flex;
unsigned int flex_group;
unsigned int ordinal_group;
- int flexed_height; // Not an actual CSS property. Vertical flexing has to use this as a cache.
- FlexGroupTransitionData* transitions;
EBoxAlignment align : 3;
EBoxAlignment pack: 3;
@@ -1113,8 +1084,6 @@ public:
unsigned int boxOrdinalGroup() { return css3NonInheritedData->flexibleBox->ordinal_group; }
EBoxOrient boxOrient() { return css3NonInheritedData->flexibleBox->orient; }
EBoxAlignment boxPack() { return css3NonInheritedData->flexibleBox->pack; }
- int boxFlexedHeight() { return css3NonInheritedData->flexibleBox->flexed_height; }
- FlexGroupTransitionData* boxFlexGroupTransition() { return css3NonInheritedData->flexibleBox->transitions; }
Length marqueeIncrement() { return css3NonInheritedData->marquee->increment; }
int marqueeSpeed() { return css3NonInheritedData->marquee->speed; }
int marqueeLoopCount() { return css3NonInheritedData->marquee->loops; }
@@ -1293,8 +1262,6 @@ public:
void setBoxOrdinalGroup(unsigned int og) { SET_VAR(css3NonInheritedData.access()->flexibleBox, ordinal_group, og); }
void setBoxOrient(EBoxOrient o) { SET_VAR(css3NonInheritedData.access()->flexibleBox, orient, o); }
void setBoxPack(EBoxAlignment p) { SET_VAR(css3NonInheritedData.access()->flexibleBox, pack, p); }
- void setBoxFlexedHeight(int h) { SET_VAR(css3NonInheritedData.access()->flexibleBox, flexed_height, h); }
- void setBoxFlexGroupTransition(FlexGroupTransitionData* transition, bool add = false);
void setMarqueeIncrement(const Length& f) { SET_VAR(css3NonInheritedData.access()->marquee, increment, f); }
void setMarqueeSpeed(int f) { SET_VAR(css3NonInheritedData.access()->marquee, speed, f); }
void setMarqueeDirection(EMarqueeDirection d) { SET_VAR(css3NonInheritedData.access()->marquee, direction, d); }
diff --git a/WebCore/khtml/rendering/table_layout.cpp b/WebCore/khtml/rendering/table_layout.cpp
index 75f8f01..de63e58 100644
--- a/WebCore/khtml/rendering/table_layout.cpp
+++ b/WebCore/khtml/rendering/table_layout.cpp
@@ -919,6 +919,8 @@ void AutoTableLayout::layout()
numVariable++;
totalVariable += layoutStruct[i].effMaxWidth;
allocVariable += w;
+ default:
+ break;
}
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list