[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
hyatt at apple.com
hyatt at apple.com
Wed Dec 22 14:19:34 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit e0461b5f60d2cd68f2984ec9124d2fe258abf436
Author: hyatt at apple.com <hyatt at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Oct 6 19:02:34 2010 +0000
https://bugs.webkit.org/show_bug.cgi?id=47285
Reviewed by Dan Bernstein.
Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
as appropriate.
WebCore:
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
* css/CSSParser.cpp:
(WebCore::CSSParser::parseValue):
* css/CSSPrimitiveValueMappings.h:
(WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
(WebCore::CSSPrimitiveValue::operator WritingMode):
(WebCore::CSSPrimitiveValue::operator SVGWritingMode):
* css/CSSProperty.cpp:
(WebCore::resolveToPhysicalProperty):
(WebCore::CSSProperty::resolveDirectionAwareProperty):
* css/CSSProperty.h:
* css/CSSPropertyNames.in:
* css/CSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::styleForDocument):
(WebCore::CSSStyleSelector::adjustRenderStyle):
(WebCore::CSSStyleSelector::applyDeclarations):
(WebCore::CSSStyleSelector::applyProperty):
* css/CSSValueKeywords.in:
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::MarginInfo::MarginInfo):
(WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
(WebCore::RenderBlock::setLogicalLeftForChild):
(WebCore::RenderBlock::setLogicalTopForChild):
(WebCore::RenderBlock::layoutBlockChild):
(WebCore::RenderBlock::insertFloatingObject):
(WebCore::RenderBlock::addOverhangingFloats):
(WebCore::RenderBlock::addIntrudingFloats):
(WebCore::RenderBlock::collapsedMarginBeforeForChild):
(WebCore::RenderBlock::collapsedMarginAfterForChild):
(WebCore::RenderBlock::marginBeforeForChild):
(WebCore::RenderBlock::marginAfterForChild):
(WebCore::RenderBlock::marginStartForChild):
(WebCore::RenderBlock::marginEndForChild):
(WebCore::RenderBlock::setMarginStartForChild):
(WebCore::RenderBlock::setMarginEndForChild):
(WebCore::RenderBlock::setMarginBeforeForChild):
(WebCore::RenderBlock::setMarginAfterForChild):
(WebCore::RenderBlock::marginValuesForChild):
* rendering/RenderBlock.h:
(WebCore::RenderBlock::logicalWidthForChild):
(WebCore::RenderBlock::logicalHeightForChild):
(WebCore::RenderBlock::logicalTopForChild):
(WebCore::RenderBlock::logicalRightOffsetForContent):
(WebCore::RenderBlock::logicalLeftOffsetForContent):
(WebCore::RenderBlock::logicalTopForFloat):
(WebCore::RenderBlock::logicalBottomForFloat):
(WebCore::RenderBlock::logicalLeftForFloat):
(WebCore::RenderBlock::logicalRightForFloat):
(WebCore::RenderBlock::logicalWidthForFloat):
(WebCore::RenderBlock::setLogicalTopForFloat):
(WebCore::RenderBlock::setLogicalLeftForFloat):
(WebCore::RenderBlock::setLogicalHeightForFloat):
(WebCore::RenderBlock::setLogicalWidthForFloat):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::marginBefore):
(WebCore::RenderBox::marginAfter):
(WebCore::RenderBox::marginStart):
(WebCore::RenderBox::marginEnd):
(WebCore::RenderBox::setMarginStart):
(WebCore::RenderBox::setMarginEnd):
(WebCore::RenderBox::setMarginBefore):
(WebCore::RenderBox::setMarginAfter):
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
(WebCore::RenderBox::computeLogicalWidth):
(WebCore::RenderBox::computeLogicalHeight):
(WebCore::RenderBox::availableLogicalHeightUsing):
(WebCore::RenderBox::avoidsFloats):
* rendering/RenderBox.h:
(WebCore::RenderBox::logicalLeft):
(WebCore::RenderBox::logicalTop):
(WebCore::RenderBox::logicalWidth):
(WebCore::RenderBox::logicalHeight):
(WebCore::RenderBox::setLogicalLeft):
(WebCore::RenderBox::setLogicalTop):
(WebCore::RenderBox::setLogicalWidth):
(WebCore::RenderBox::setLogicalHeight):
(WebCore::RenderBox::setLogicalLocation):
(WebCore::RenderBox::contentLogicalWidth):
(WebCore::RenderBox::contentLogicalHeight):
(WebCore::RenderBox::stretchesToViewport):
(WebCore::RenderBox::intrinsicLogicalWidth):
(WebCore::RenderBox::intrinsicLogicalHeight):
(WebCore::RenderBox::availableWidth):
(WebCore::RenderBox::availableHeight):
(WebCore::RenderBox::scrollbarLogicalHeight):
(WebCore::RenderBox::isWritingModeRoot):
* rendering/RenderFieldset.cpp:
(WebCore::RenderFieldset::paintBoxDecorations):
(WebCore::RenderFieldset::paintMask):
* rendering/RenderImage.cpp:
(WebCore::RenderImage::computeReplacedLogicalWidth):
(WebCore::RenderImage::computeReplacedLogicalHeight):
* rendering/RenderInline.cpp:
(WebCore::RenderInline::marginLeft):
(WebCore::RenderInline::marginRight):
(WebCore::RenderInline::marginTop):
(WebCore::RenderInline::marginBottom):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::paddingTop):
(WebCore::RenderTableCell::paddingBottom):
(WebCore::RenderTableCell::paddingLeft):
(WebCore::RenderTableCell::paddingRight):
* rendering/RenderView.h:
(WebCore::RenderView::viewLogicalWidth):
(WebCore::RenderView::viewLogicalHeight):
* rendering/RootInlineBox.cpp:
(WebCore::RootInlineBox::RootInlineBox):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
(WebCore::RenderStyle::logicalWidth):
(WebCore::RenderStyle::logicalHeight):
(WebCore::RenderStyle::logicalMinWidth):
(WebCore::RenderStyle::logicalMaxWidth):
(WebCore::RenderStyle::logicalMinHeight):
(WebCore::RenderStyle::logicalMaxHeight):
(WebCore::RenderStyle::borderBeforeWidth):
(WebCore::RenderStyle::borderAfterWidth):
(WebCore::RenderStyle::borderStartWidth):
(WebCore::RenderStyle::borderEndWidth):
(WebCore::RenderStyle::marginBefore):
(WebCore::RenderStyle::marginAfter):
(WebCore::RenderStyle::marginBeforeUsing):
(WebCore::RenderStyle::marginAfterUsing):
(WebCore::RenderStyle::marginStart):
(WebCore::RenderStyle::marginEnd):
(WebCore::RenderStyle::marginStartUsing):
(WebCore::RenderStyle::marginEndUsing):
(WebCore::RenderStyle::paddingBefore):
(WebCore::RenderStyle::paddingAfter):
(WebCore::RenderStyle::paddingStart):
(WebCore::RenderStyle::paddingEnd):
* rendering/style/RenderStyle.h:
(WebCore::InheritedFlags::setBitDefaults):
(WebCore::InheritedFlags::writingMode):
(WebCore::InheritedFlags::isHorizontalWritingMode):
(WebCore::InheritedFlags::setWritingMode):
(WebCore::InheritedFlags::initialWritingMode):
* rendering/style/RenderStyleConstants.h:
* rendering/style/SVGRenderStyle.h:
(WebCore::SVGRenderStyle::initialWritingMode):
(WebCore::SVGRenderStyle::setWritingMode):
(WebCore::SVGRenderStyle::writingMode):
* rendering/style/SVGRenderStyleDefs.h:
LayoutTests:
Also hacked all of the getComputedStyle tests to just omit dashboard regions so that the results can be
cross-platform.
* fast/blockflow/auto-margins-across-boundaries.html:
* fast/blockflow/block-formatting-context.html:
* fast/blockflow/block-level-images.html:
* fast/blockflow/display-mutation.html:
* fast/blockflow/fieldsets.html:
* fast/blockflow/floats-in-block-layout.html:
* fast/blockflow/inline-direction-positioning.html:
* fast/blockflow/margin-collapse.html:
* fast/blockflow/percentage-padding.html:
* fast/blockflow/relative-positioning-percentages.html:
* fast/blockflow/root-lr-basic.html:
* fast/blockflow/self-collapsing-block.html:
* fast/css/getComputedStyle/computed-style-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
* fast/css/getComputedStyle/computed-style-without-renderer.html:
* fast/css/getComputedStyle/computed-style.html:
* fast/css/logical-property-resolution.html:
* platform/mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
* platform/mac/svg/css/getComputedStyle-basic-expected.checksum: Removed.
* platform/mac/svg/css/getComputedStyle-basic-expected.png: Removed.
* platform/win/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
* platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
* svg/css/getComputedStyle-basic-expected.txt:
* svg/css/getComputedStyle-basic.xhtml:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69220 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 0a6ec9f..db6f353 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,41 @@
+2010-10-06 David Hyatt <hyatt at apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47285
+
+ Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
+ Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
+ as appropriate.
+
+ Also hacked all of the getComputedStyle tests to just omit dashboard regions so that the results can be
+ cross-platform.
+
+ * fast/blockflow/auto-margins-across-boundaries.html:
+ * fast/blockflow/block-formatting-context.html:
+ * fast/blockflow/block-level-images.html:
+ * fast/blockflow/display-mutation.html:
+ * fast/blockflow/fieldsets.html:
+ * fast/blockflow/floats-in-block-layout.html:
+ * fast/blockflow/inline-direction-positioning.html:
+ * fast/blockflow/margin-collapse.html:
+ * fast/blockflow/percentage-padding.html:
+ * fast/blockflow/relative-positioning-percentages.html:
+ * fast/blockflow/root-lr-basic.html:
+ * fast/blockflow/self-collapsing-block.html:
+ * fast/css/getComputedStyle/computed-style-expected.txt:
+ * fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
+ * fast/css/getComputedStyle/computed-style-without-renderer.html:
+ * fast/css/getComputedStyle/computed-style.html:
+ * fast/css/logical-property-resolution.html:
+ * platform/mac/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
+ * platform/mac/svg/css/getComputedStyle-basic-expected.checksum: Removed.
+ * platform/mac/svg/css/getComputedStyle-basic-expected.png: Removed.
+ * platform/win/fast/css/getComputedStyle/computed-style-expected.txt: Removed.
+ * platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt: Removed.
+ * svg/css/getComputedStyle-basic-expected.txt:
+ * svg/css/getComputedStyle-basic.xhtml:
+
2010-10-06 Albert J. Wong <ajwong at chromium.org>
[chromium] Unreviewed. Build fix.
diff --git a/LayoutTests/fast/blockflow/auto-margins-across-boundaries.html b/LayoutTests/fast/blockflow/auto-margins-across-boundaries.html
index ac58fd6..49314f6 100644
--- a/LayoutTests/fast/blockflow/auto-margins-across-boundaries.html
+++ b/LayoutTests/fast/blockflow/auto-margins-across-boundaries.html
@@ -1,7 +1,7 @@
<html>
<head>
<style>
-.lr { -webkit-block-flow: lr; block-flow: lr; background-color:green; margin-left:auto; margin-right:auto; width:100px; height:100px; }
+.lr { -webkit-writing-mode: vertical-lr; background-color:green; margin-left:auto; margin-right:auto; width:100px; height:100px; }
</style>
</head>
<body>
diff --git a/LayoutTests/fast/blockflow/block-formatting-context.html b/LayoutTests/fast/blockflow/block-formatting-context.html
index 4367180..fb1650f 100644
--- a/LayoutTests/fast/blockflow/block-formatting-context.html
+++ b/LayoutTests/fast/blockflow/block-formatting-context.html
@@ -1,7 +1,7 @@
<html>
<head>
<style>
-.lr { -webkit-block-flow: lr; block-flow: lr; background-color:green; margin:10px; width:100px; height:100px; }
+.lr { -webkit-writing-mode: vertical-lr; background-color:green; margin:10px; width:100px; height:100px; }
.float { width:100px; height:100px; background-color:blue; float:left}
body { margin: 0 }
</style>
diff --git a/LayoutTests/fast/blockflow/block-level-images.html b/LayoutTests/fast/blockflow/block-level-images.html
index ff8efb0..0722944 100644
--- a/LayoutTests/fast/blockflow/block-level-images.html
+++ b/LayoutTests/fast/blockflow/block-level-images.html
@@ -1,12 +1,12 @@
<!doctype html>
-<div style="margin:2px; float:left; height:300px;border:2px solid black;-webkit-writing-mode:tb-lr; writing-mode:tb-lr">
+<div style="margin:2px; float:left; height:300px;border:2px solid black;-webkit-writing-mode:vertical-lr">
<div style="width:25px;background-color:green"></div>
<img style="display:block;height:50%; -webkit-border-before:2px solid maroon; -webkit-border-after:2px solid maroon; -webkit-border-start: 1px solid purple; -webkit-border-end:5px dashed grey" src="resources/circle.svg">
<img style="-webkit-margin-start: 40px; display:block;height:50px" src="resources/oval.png">
<div style="width:25px;background-color:green"></div>
</div>
-<div style="margin:2px; float:left; height:300px;border:2px solid black;-webkit-writing-mode:bt-lr; writing-mode:bt-lr">
+<div style="margin:2px; float:left; height:300px;border:2px solid black;-webkit-writing-mode:vertical-lr; direction:rtl">
<div style="width:25px;background-color:green"></div>
<img style="display:block;height:50%; -webkit-border-before:2px solid maroon; -webkit-border-after:2px solid maroon; -webkit-border-start: 1px solid purple; -webkit-border-end:5px dashed grey" src="resources/circle.svg">
<img style="-webkit-margin-start: 40px; display:block;height:50px" src="resources/oval.png">
diff --git a/LayoutTests/fast/blockflow/display-mutation.html b/LayoutTests/fast/blockflow/display-mutation.html
index 69778e0..542eafa 100644
--- a/LayoutTests/fast/blockflow/display-mutation.html
+++ b/LayoutTests/fast/blockflow/display-mutation.html
@@ -15,5 +15,5 @@ function runTest()
</script>
</head>
<body onload="runTest()">
-<span id="test" style="-webkit-block-flow:lr"></span>
+<span id="test" style="-webkit-writing-mode:vertical-lr"></span>
<div id="console"></div>
diff --git a/LayoutTests/fast/blockflow/fieldsets.html b/LayoutTests/fast/blockflow/fieldsets.html
index 678644a..83762bb 100644
--- a/LayoutTests/fast/blockflow/fieldsets.html
+++ b/LayoutTests/fast/blockflow/fieldsets.html
@@ -53,15 +53,15 @@ RTL fieldset with left/center/right text-align: <br>
Vertical LTR fieldset with left/center/right text-align: <br>
-<fieldset style="-webkit-block-flow:lr;">
+<fieldset style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:left; margin-top:20px"><div></div></legend>
</fieldset>
-<fieldset style="-webkit-block-flow:lr;">
+<fieldset style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:right; margin-bottom:20px"><div></div></legend>
</fieldset>
-<fieldset style="-webkit-block-flow:lr;">
+<fieldset style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:center"><div></div></legend>
</fieldset>
@@ -70,14 +70,14 @@ Vertical LTR fieldset with left/center/right text-align: <br>
Vertical RTL fieldset with left/center/right text-align: <br>
-<fieldset dir=rtl style="-webkit-block-flow:lr;">
+<fieldset dir=rtl style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:left; margin-top:20px"><div></div></legend>
</fieldset>
-<fieldset dir=rtl style="-webkit-block-flow:lr;">
+<fieldset dir=rtl style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:right; margin-bottom:20px"><div></div></legend>
</fieldset>
-<fieldset dir=rtl style="-webkit-block-flow:lr;">
+<fieldset dir=rtl style="-webkit-writing-mode:vertical-lr">
<legend style="text-align:center"><div></div></legend>
</fieldset>
diff --git a/LayoutTests/fast/blockflow/floats-in-block-layout.html b/LayoutTests/fast/blockflow/floats-in-block-layout.html
index 8e2188f..2a45038 100644
--- a/LayoutTests/fast/blockflow/floats-in-block-layout.html
+++ b/LayoutTests/fast/blockflow/floats-in-block-layout.html
@@ -1,6 +1,6 @@
<!doctype html>
<html>
-<body style="-webkit-writing-mode:tb-lr; writing-mode:tb-lr;">
+<body style="-webkit-writing-mode:vertical-lr">
<div style="width:100px; background-color:yellow"></div>
<div style="float:left;width:100px;height:100px;background-color:green; margin-top:10px;"></div>
<div style="float:right;width:100px;height:100px;background-color:green; margin-bottom:10px"></div>
diff --git a/LayoutTests/fast/blockflow/inline-direction-positioning.html b/LayoutTests/fast/blockflow/inline-direction-positioning.html
index 65f8fdf..da726ec 100644
--- a/LayoutTests/fast/blockflow/inline-direction-positioning.html
+++ b/LayoutTests/fast/blockflow/inline-direction-positioning.html
@@ -1,9 +1,9 @@
<html>
<body>
<div style="border:2px solid black;width:600px;">
-<div style="-webkit-writing-mode: tb-lr; writing-mode:tb-lr; width:100px; height:100px; margin-left:50px; background-color:green"></div>
+<div style="-webkit-writing-mode:vertical-lr; width:100px; height:100px; margin-left:50px; background-color:green"></div>
</div>
<div style="border:2px solid black;width:600px;direction:rtl">
-<div style="-webkit-writing-mode: tb-lr; writing-mode:tb-lr; width:100px; height:100px; margin-right:50px; background-color:green"></div>
+<div style="-webkit-writing-mode:vertical-lr; width:100px; height:100px; margin-right:50px; background-color:green"></div>
</div>
diff --git a/LayoutTests/fast/blockflow/margin-collapse.html b/LayoutTests/fast/blockflow/margin-collapse.html
index 5d5e546..e9ac5a2 100644
--- a/LayoutTests/fast/blockflow/margin-collapse.html
+++ b/LayoutTests/fast/blockflow/margin-collapse.html
@@ -5,9 +5,9 @@
</style>
<body>
<div style="border:2px solid black">
-<div style="-webkit-block-flow:lr" class="block"></div>
-<div style="-webkit-block-flow:rl" class="block"></div>
-<div style="-webkit-block-flow:bt" class="block"></div>
+<div style="-webkit-writing-mode:vertical-lr" class="block"></div>
+<div style="-webkit-writing-mode:vertical-rl" class="block"></div>
+<div style="-webkit-writing-mode:horizontal-bt" class="block"></div>
<div class="block"></div>
</div>
</body>
diff --git a/LayoutTests/fast/blockflow/percentage-padding.html b/LayoutTests/fast/blockflow/percentage-padding.html
index da8ae89..8024aab 100644
--- a/LayoutTests/fast/blockflow/percentage-padding.html
+++ b/LayoutTests/fast/blockflow/percentage-padding.html
@@ -11,7 +11,7 @@
</style>
</head>
<body>
-<div style="width:100px;height:200px; -webkit-block-flow:lr;">
+<div style="width:100px;height:200px; -webkit-writing-mode:vertical-lr">
<div id="test" class="block"></div>
</div>
<div id="console"></div>
diff --git a/LayoutTests/fast/blockflow/relative-positioning-percentages.html b/LayoutTests/fast/blockflow/relative-positioning-percentages.html
index 7d433d0..7e74317 100644
--- a/LayoutTests/fast/blockflow/relative-positioning-percentages.html
+++ b/LayoutTests/fast/blockflow/relative-positioning-percentages.html
@@ -1,7 +1,7 @@
<html>
<head>
<style>
-.lr { -webkit-block-flow: lr; block-flow: lr; background-color:green; width:100px; height:100px; position:relative; top:50%; }
+.lr { -webkit-writing-mode:vertical-lr; background-color:green; width:100px; height:100px; position:relative; top:50%; }
</style>
</head>
<body>
diff --git a/LayoutTests/fast/blockflow/root-lr-basic.html b/LayoutTests/fast/blockflow/root-lr-basic.html
index 940c949..85d14ec 100644
--- a/LayoutTests/fast/blockflow/root-lr-basic.html
+++ b/LayoutTests/fast/blockflow/root-lr-basic.html
@@ -1,2 +1,2 @@
<!doctype html>
-<html style="overflow:hidden; -webkit-block-flow:lr; -webkit-logical-height:100px; border:2px solid black"></html>
+<html style="overflow:hidden; -webkit-writing-mode:vertical-lr; -webkit-logical-height:100px; border:2px solid black"></html>
diff --git a/LayoutTests/fast/blockflow/self-collapsing-block.html b/LayoutTests/fast/blockflow/self-collapsing-block.html
index aefaea5..096e233 100644
--- a/LayoutTests/fast/blockflow/self-collapsing-block.html
+++ b/LayoutTests/fast/blockflow/self-collapsing-block.html
@@ -1,6 +1,6 @@
<!doctype html>
<html>
-<body style="-webkit-writing-mode:tb-lr; writing-mode:tb-lr">
+<body style="-webkit-writing-mode:vertical-lr">
<div style="width:100px;background-color:green"></div>
<div style="height:100px;margin-left:100px;margin-right:100px"></div>
<div style="width:100px;background-color:green"></div>
diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt b/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt
index 9d8a85e..25303a9 100644
--- a/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt
+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-expected.txt
@@ -1,11 +1,16 @@
Attributes that are exposed in the CSS computed style object:
background-attachment: scroll;
+background-clip: border-box;
background-color: rgba(0, 0, 0, 0);
background-image: none;
+background-origin: padding-box;
background-position: 0% 0%;
background-repeat: repeat;
+background-size: auto auto;
border-bottom-color: rgb(0, 0, 0);
+border-bottom-left-radius: 0px;
+border-bottom-right-radius: 0px;
border-bottom-style: none;
border-bottom-width: 0px;
border-collapse: separate;
@@ -16,11 +21,14 @@ border-right-color: rgb(0, 0, 0);
border-right-style: none;
border-right-width: 0px;
border-top-color: rgb(0, 0, 0);
+border-top-left-radius: 0px;
+border-top-right-radius: 0px;
border-top-style: none;
border-top-width: 0px;
bottom: auto;
caption-side: top;
clear: none;
+clip: auto;
color: rgb(0, 0, 0);
cursor: auto;
direction: ltr;
@@ -65,10 +73,12 @@ pointer-events: auto;
position: static;
resize: none;
right: auto;
+speak: normal;
table-layout: auto;
text-align: -webkit-auto;
text-decoration: none;
text-indent: 0px;
+text-rendering: auto;
text-shadow: none;
text-overflow: clip;
text-transform: none;
@@ -79,6 +89,7 @@ visibility: visible;
white-space: normal;
widows: 2;
width: 784px;
+word-break: normal;
word-spacing: 0px;
word-wrap: normal;
z-index: auto;
@@ -89,6 +100,7 @@ zoom: 1;
-webkit-animation-fill-mode: none;
-webkit-animation-iteration-count: 1;
-webkit-animation-name: none;
+-webkit-animation-play-state: running;
-webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
-webkit-appearance: none;
-webkit-backface-visibility: visible;
@@ -96,10 +108,9 @@ zoom: 1;
-webkit-background-composite: source-over;
-webkit-background-origin: padding-box;
-webkit-background-size: auto auto;
--webkit-block-flow: tb;
-webkit-border-fit: border;
--webkit-border-image: none;
-webkit-border-horizontal-spacing: 0px;
+-webkit-border-image: none;
-webkit-border-vertical-spacing: 0px;
-webkit-box-align: stretch;
-webkit-box-direction: normal;
@@ -112,6 +123,7 @@ zoom: 1;
-webkit-box-reflect: none;
-webkit-box-shadow: none;
-webkit-box-sizing: content-box;
+-webkit-color-correction: default;
-webkit-column-break-after: auto;
-webkit-column-break-before: auto;
-webkit-column-break-inside: auto;
@@ -122,23 +134,24 @@ zoom: 1;
-webkit-column-rule-width: 0px;
-webkit-column-span: 1;
-webkit-column-width: auto;
+-webkit-font-smoothing: auto;
-webkit-highlight: none;
-webkit-line-break: normal;
-webkit-line-clamp: none;
--webkit-margin-bottom-collapse: collapse;
--webkit-margin-top-collapse: collapse;
+-webkit-margin-before-collapse: collapse;
+-webkit-margin-after-collapse: collapse;
-webkit-marquee-direction: auto;
-webkit-marquee-increment: 6px;
-webkit-marquee-repetition: infinite;
-webkit-marquee-style: scroll;
-webkit-mask-attachment: scroll;
-webkit-mask-box-image: none;
--webkit-mask-image: none;
--webkit-mask-position: 0% 0%;
--webkit-mask-repeat: repeat;
-webkit-mask-clip: border-box;
-webkit-mask-composite: source-over;
+-webkit-mask-image: none;
-webkit-mask-origin: border-box;
+-webkit-mask-position: 0% 0%;
+-webkit-mask-repeat: repeat;
-webkit-mask-size: auto auto;
-webkit-nbsp-mode: normal;
-webkit-perspective: none;
@@ -159,10 +172,7 @@ zoom: 1;
-webkit-user-drag: auto;
-webkit-user-modify: read-only;
-webkit-user-select: text;
--webkit-border-bottom-left-radius: 0px;
--webkit-border-bottom-right-radius: 0px;
--webkit-border-top-left-radius: 0px;
--webkit-border-top-right-radius: 0px;
+-webkit-writing-mode: horizontal-tb;
clip-path: none;
clip-rule: nonzero;
mask: none;
@@ -184,28 +194,32 @@ marker-mid: none;
marker-start: none;
shape-rendering: auto;
stroke: none;
-stroke-dasharray: ;
-stroke-dashoffset: ;
+stroke-dasharray: none;
+stroke-dashoffset: 0;
stroke-linecap: butt;
stroke-linejoin: miter;
stroke-miterlimit: 4;
stroke-opacity: 1;
-stroke-width: ;
-text-rendering: auto;
+stroke-width: 1;
alignment-baseline: auto;
baseline-shift: baseline;
dominant-baseline: auto;
-kerning: ;
+kerning: 0;
text-anchor: start;
writing-mode: lr-tb;
glyph-orientation-horizontal: 0deg;
glyph-orientation-vertical: auto;
+-webkit-svg-shadow: none;
+vector-effect: none;
Other attributes that the computed style class supports:
-background-position: 0% 0%;
+background-position-x: 0%;
+background-position-y: 0%;
border-spacing: 0px 0px;
overflow: visible;
+-webkit-mask-position-x: 0%;
+-webkit-mask-position-y: 0%;
-webkit-match-nearest-mail-blockquote-color: normal;
-webkit-text-size-adjust: auto;
diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt b/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
index 311409b..e6e29a1 100644
--- a/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
@@ -1,10 +1,15 @@
Computed style of an element whose parent's 'display' value is 'none':
background-attachment: scroll
+ background-clip: border-box
background-color: rgb(0, 128, 0)
background-image: none
+ background-origin: padding-box
background-position: 0% 0%
background-repeat: repeat
+ background-size: auto auto
border-bottom-color: rgb(0, 0, 0)
+ border-bottom-left-radius: 0px
+ border-bottom-right-radius: 0px
border-bottom-style: none
border-bottom-width: 0px
border-collapse: separate
@@ -15,11 +20,14 @@ Computed style of an element whose parent's 'display' value is 'none':
border-right-style: none
border-right-width: 0px
border-top-color: rgb(0, 0, 0)
+ border-top-left-radius: 0px
+ border-top-right-radius: 0px
border-top-style: solid
border-top-width: 16px
bottom: auto
caption-side: top
clear: none
+ clip: auto
color: rgb(0, 0, 0)
cursor: auto
direction: ltr
@@ -64,10 +72,12 @@ Computed style of an element whose parent's 'display' value is 'none':
position: static
resize: none
right: auto
+ speak: normal
table-layout: auto
text-align: -webkit-auto
text-decoration: none
text-indent: 0px
+ text-rendering: auto
text-shadow: none
text-overflow: clip
text-transform: none
@@ -78,6 +88,7 @@ Computed style of an element whose parent's 'display' value is 'none':
white-space: normal
widows: 2
width: 50%
+ word-break: normal
word-spacing: 0px
word-wrap: normal
z-index: auto
@@ -88,6 +99,7 @@ Computed style of an element whose parent's 'display' value is 'none':
-webkit-animation-fill-mode: none
-webkit-animation-iteration-count: 1
-webkit-animation-name: none
+ -webkit-animation-play-state: running
-webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1)
-webkit-appearance: none
-webkit-backface-visibility: visible
@@ -95,10 +107,9 @@ Computed style of an element whose parent's 'display' value is 'none':
-webkit-background-composite: source-over
-webkit-background-origin: padding-box
-webkit-background-size: auto auto
- -webkit-block-flow: tb
-webkit-border-fit: border
- -webkit-border-image: none
-webkit-border-horizontal-spacing: 0px
+ -webkit-border-image: none
-webkit-border-vertical-spacing: 0px
-webkit-box-align: stretch
-webkit-box-direction: normal
@@ -111,6 +122,7 @@ Computed style of an element whose parent's 'display' value is 'none':
-webkit-box-reflect: none
-webkit-box-shadow: none
-webkit-box-sizing: content-box
+ -webkit-color-correction: default
-webkit-column-break-after: auto
-webkit-column-break-before: auto
-webkit-column-break-inside: auto
@@ -121,23 +133,24 @@ Computed style of an element whose parent's 'display' value is 'none':
-webkit-column-rule-width: 0px
-webkit-column-span: 1
-webkit-column-width: auto
+ -webkit-font-smoothing: auto
-webkit-highlight: none
-webkit-line-break: normal
-webkit-line-clamp: none
- -webkit-margin-bottom-collapse: collapse
- -webkit-margin-top-collapse: collapse
+ -webkit-margin-before-collapse: collapse
+ -webkit-margin-after-collapse: collapse
-webkit-marquee-direction: auto
-webkit-marquee-increment: 6px
-webkit-marquee-repetition: infinite
-webkit-marquee-style: scroll
-webkit-mask-attachment: scroll
-webkit-mask-box-image: none
- -webkit-mask-image: none
- -webkit-mask-position: 0% 0%
- -webkit-mask-repeat: repeat
-webkit-mask-clip: border-box
-webkit-mask-composite: source-over
+ -webkit-mask-image: none
-webkit-mask-origin: border-box
+ -webkit-mask-position: 0% 0%
+ -webkit-mask-repeat: repeat
-webkit-mask-size: auto auto
-webkit-nbsp-mode: normal
-webkit-perspective: none
@@ -158,10 +171,7 @@ Computed style of an element whose parent's 'display' value is 'none':
-webkit-user-drag: auto
-webkit-user-modify: read-only
-webkit-user-select: text
- -webkit-border-bottom-left-radius: 0px
- -webkit-border-bottom-right-radius: 0px
- -webkit-border-top-left-radius: 0px
- -webkit-border-top-right-radius: 0px
+ -webkit-writing-mode: horizontal-tb
clip-path: none
clip-rule: nonzero
mask: none
@@ -183,25 +193,29 @@ Computed style of an element whose parent's 'display' value is 'none':
marker-start: none
shape-rendering: auto
stroke: none
- stroke-dasharray:
- stroke-dashoffset:
+ stroke-dasharray: none
+ stroke-dashoffset: 0
stroke-linecap: butt
stroke-linejoin: miter
stroke-miterlimit: 4
stroke-opacity: 1
- stroke-width:
- text-rendering: auto
+ stroke-width: 1
alignment-baseline: auto
baseline-shift: baseline
dominant-baseline: auto
- kerning:
+ kerning: 0
text-anchor: start
writing-mode: lr-tb
glyph-orientation-horizontal: 0deg
glyph-orientation-vertical: auto
- background-position: 0% 0%
+ -webkit-svg-shadow: none
+ vector-effect: none
+ background-position-x: 0%
+ background-position-y: 0%
border-spacing: 0px 0px
overflow: visible
+ -webkit-mask-position-x: 0%
+ -webkit-mask-position-y: 0%
-webkit-match-nearest-mail-blockquote-color: normal
-webkit-text-size-adjust: auto
diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer.html b/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer.html
index c54b926..44bd60d 100644
--- a/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer.html
+++ b/LayoutTests/fast/css/getComputedStyle/computed-style-without-renderer.html
@@ -28,7 +28,8 @@
if (!properties) {
for (var i = 0; i != style.length; ++i) {
var name = style.item(i);
- log(" " + name + ": " + style.getPropertyValue(name));
+ if (name != "-webkit-dashboard-region")
+ log(" " + name + ": " + style.getPropertyValue(name));
}
properties = others;
}
diff --git a/LayoutTests/fast/css/getComputedStyle/computed-style.html b/LayoutTests/fast/css/getComputedStyle/computed-style.html
index 1e377ee..867dab1 100644
--- a/LayoutTests/fast/css/getComputedStyle/computed-style.html
+++ b/LayoutTests/fast/css/getComputedStyle/computed-style.html
@@ -7,7 +7,8 @@ function test() {
for (var i = 0; i != style.length; ++i) {
var name = style.item(i);
var value = style.getPropertyValue(name);
- text += name + ": " + value + ";\n";
+ if (name != "-webkit-dashboard-region")
+ text += name + ": " + value + ";\n";
}
document.getElementById("exposed").textContent = text;
var others = [
diff --git a/LayoutTests/fast/css/logical-property-resolution.html b/LayoutTests/fast/css/logical-property-resolution.html
index 7dd47d0..e63dfea 100644
--- a/LayoutTests/fast/css/logical-property-resolution.html
+++ b/LayoutTests/fast/css/logical-property-resolution.html
@@ -10,19 +10,19 @@
}
.tb-block {
- -webkit-block-flow: tb
+ -webkit-writing-mode: horizontal-tb;
}
.bt-block {
- -webkit-block-flow: bt
+ -webkit-writing-mode: horizontal-bt
}
.lr-block {
- -webkit-block-flow: lr
+ -webkit-writing-mode: vertical-lr
}
.rl-block {
- -webkit-block-flow: rl
+ -webkit-writing-mode: vertical-rl
}
.test {
diff --git a/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt b/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt
deleted file mode 100644
index 95ec4c9..0000000
--- a/LayoutTests/platform/mac/fast/css/getComputedStyle/computed-style-expected.txt
+++ /dev/null
@@ -1,226 +0,0 @@
-Attributes that are exposed in the CSS computed style object:
-
-background-attachment: scroll;
-background-clip: border-box;
-background-color: rgba(0, 0, 0, 0);
-background-image: none;
-background-origin: padding-box;
-background-position: 0% 0%;
-background-repeat: repeat;
-background-size: auto auto;
-border-bottom-color: rgb(0, 0, 0);
-border-bottom-left-radius: 0px;
-border-bottom-right-radius: 0px;
-border-bottom-style: none;
-border-bottom-width: 0px;
-border-collapse: separate;
-border-left-color: rgb(0, 0, 0);
-border-left-style: none;
-border-left-width: 0px;
-border-right-color: rgb(0, 0, 0);
-border-right-style: none;
-border-right-width: 0px;
-border-top-color: rgb(0, 0, 0);
-border-top-left-radius: 0px;
-border-top-right-radius: 0px;
-border-top-style: none;
-border-top-width: 0px;
-bottom: auto;
-caption-side: top;
-clear: none;
-clip: auto;
-color: rgb(0, 0, 0);
-cursor: auto;
-direction: ltr;
-display: block;
-empty-cells: show;
-float: none;
-font-family: Times;
-font-size: 16px;
-font-style: normal;
-font-variant: normal;
-font-weight: normal;
-height: 576px;
-left: auto;
-letter-spacing: normal;
-line-height: normal;
-list-style-image: none;
-list-style-position: outside;
-list-style-type: disc;
-margin-bottom: 8px;
-margin-left: 8px;
-margin-right: 8px;
-margin-top: 8px;
-max-height: none;
-max-width: none;
-min-height: 0px;
-min-width: 0px;
-opacity: 1;
-orphans: 2;
-outline-color: rgb(0, 0, 0);
-outline-style: none;
-outline-width: 0px;
-overflow-x: visible;
-overflow-y: visible;
-padding-bottom: 0px;
-padding-left: 0px;
-padding-right: 0px;
-padding-top: 0px;
-page-break-after: auto;
-page-break-before: auto;
-page-break-inside: auto;
-pointer-events: auto;
-position: static;
-resize: none;
-right: auto;
-speak: normal;
-table-layout: auto;
-text-align: -webkit-auto;
-text-decoration: none;
-text-indent: 0px;
-text-rendering: auto;
-text-shadow: none;
-text-overflow: clip;
-text-transform: none;
-top: auto;
-unicode-bidi: normal;
-vertical-align: baseline;
-visibility: visible;
-white-space: normal;
-widows: 2;
-width: 784px;
-word-break: normal;
-word-spacing: 0px;
-word-wrap: normal;
-z-index: auto;
-zoom: 1;
--webkit-animation-delay: 0s;
--webkit-animation-direction: normal;
--webkit-animation-duration: 0s;
--webkit-animation-fill-mode: none;
--webkit-animation-iteration-count: 1;
--webkit-animation-name: none;
--webkit-animation-play-state: running;
--webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
--webkit-appearance: none;
--webkit-backface-visibility: visible;
--webkit-background-clip: border-box;
--webkit-background-composite: source-over;
--webkit-background-origin: padding-box;
--webkit-background-size: auto auto;
--webkit-block-flow: tb;
--webkit-border-fit: border;
--webkit-border-horizontal-spacing: 0px;
--webkit-border-image: none;
--webkit-border-vertical-spacing: 0px;
--webkit-box-align: stretch;
--webkit-box-direction: normal;
--webkit-box-flex: 0;
--webkit-box-flex-group: 1;
--webkit-box-lines: single;
--webkit-box-ordinal-group: 1;
--webkit-box-orient: horizontal;
--webkit-box-pack: start;
--webkit-box-reflect: none;
--webkit-box-shadow: none;
--webkit-box-sizing: content-box;
--webkit-color-correction: default;
--webkit-column-break-after: auto;
--webkit-column-break-before: auto;
--webkit-column-break-inside: auto;
--webkit-column-count: auto;
--webkit-column-gap: normal;
--webkit-column-rule-color: rgb(0, 0, 0);
--webkit-column-rule-style: none;
--webkit-column-rule-width: 0px;
--webkit-column-span: 1;
--webkit-column-width: auto;
--webkit-dashboard-region: null;
--webkit-font-smoothing: auto;
--webkit-highlight: none;
--webkit-line-break: normal;
--webkit-line-clamp: none;
--webkit-margin-before-collapse: collapse;
--webkit-margin-after-collapse: collapse;
--webkit-marquee-direction: auto;
--webkit-marquee-increment: 6px;
--webkit-marquee-repetition: infinite;
--webkit-marquee-style: scroll;
--webkit-mask-attachment: scroll;
--webkit-mask-box-image: none;
--webkit-mask-clip: border-box;
--webkit-mask-composite: source-over;
--webkit-mask-image: none;
--webkit-mask-origin: border-box;
--webkit-mask-position: 0% 0%;
--webkit-mask-repeat: repeat;
--webkit-mask-size: auto auto;
--webkit-nbsp-mode: normal;
--webkit-perspective: none;
--webkit-perspective-origin: 392px 288px;
--webkit-rtl-ordering: logical;
--webkit-text-decorations-in-effect: none;
--webkit-text-fill-color: rgb(0, 0, 0);
--webkit-text-security: none;
--webkit-text-stroke-color: rgb(0, 0, 0);
--webkit-text-stroke-width: 0px;
--webkit-transform: none;
--webkit-transform-origin: 392px 288px;
--webkit-transform-style: flat;
--webkit-transition-delay: 0s;
--webkit-transition-duration: 0s;
--webkit-transition-property: all;
--webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
--webkit-user-drag: auto;
--webkit-user-modify: read-only;
--webkit-user-select: text;
-clip-path: none;
-clip-rule: nonzero;
-mask: none;
-filter: none;
-flood-color: rgb(0, 0, 0);
-flood-opacity: 1;
-lighting-color: rgb(255, 255, 255);
-stop-color: rgb(0, 0, 0);
-stop-opacity: 1;
-color-interpolation: srgb;
-color-interpolation-filters: linearrgb;
-color-rendering: auto;
-fill: #000000;
-fill-opacity: 1;
-fill-rule: nonzero;
-image-rendering: auto;
-marker-end: none;
-marker-mid: none;
-marker-start: none;
-shape-rendering: auto;
-stroke: none;
-stroke-dasharray: none;
-stroke-dashoffset: 0;
-stroke-linecap: butt;
-stroke-linejoin: miter;
-stroke-miterlimit: 4;
-stroke-opacity: 1;
-stroke-width: 1;
-alignment-baseline: auto;
-baseline-shift: baseline;
-dominant-baseline: auto;
-kerning: 0;
-text-anchor: start;
-writing-mode: lr-tb;
-glyph-orientation-horizontal: 0deg;
-glyph-orientation-vertical: auto;
--webkit-svg-shadow: none;
-vector-effect: none;
-
-Other attributes that the computed style class supports:
-
-background-position-x: 0%;
-background-position-y: 0%;
-border-spacing: 0px 0px;
-overflow: visible;
--webkit-mask-position-x: 0%;
--webkit-mask-position-y: 0%;
--webkit-match-nearest-mail-blockquote-color: normal;
--webkit-text-size-adjust: auto;
-
diff --git a/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.checksum b/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.checksum
deleted file mode 100644
index 5d60d8e..0000000
--- a/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.checksum
+++ /dev/null
@@ -1 +0,0 @@
-5f0c4aea9e09e80487d4ecd186f071fd
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.png b/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.png
deleted file mode 100644
index 36da3c9..0000000
Binary files a/LayoutTests/platform/mac/svg/css/getComputedStyle-basic-expected.png and /dev/null differ
diff --git a/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-expected.txt b/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-expected.txt
deleted file mode 100644
index 1e78b9a..0000000
--- a/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-expected.txt
+++ /dev/null
@@ -1,225 +0,0 @@
-Attributes that are exposed in the CSS computed style object:
-
-background-attachment: scroll;
-background-clip: border-box;
-background-color: rgba(0, 0, 0, 0);
-background-image: none;
-background-origin: padding-box;
-background-position: 0% 0%;
-background-repeat: repeat;
-background-size: auto auto;
-border-bottom-color: rgb(0, 0, 0);
-border-bottom-left-radius: 0px;
-border-bottom-right-radius: 0px;
-border-bottom-style: none;
-border-bottom-width: 0px;
-border-collapse: separate;
-border-left-color: rgb(0, 0, 0);
-border-left-style: none;
-border-left-width: 0px;
-border-right-color: rgb(0, 0, 0);
-border-right-style: none;
-border-right-width: 0px;
-border-top-color: rgb(0, 0, 0);
-border-top-left-radius: 0px;
-border-top-right-radius: 0px;
-border-top-style: none;
-border-top-width: 0px;
-bottom: auto;
-caption-side: top;
-clear: none;
-clip: auto;
-color: rgb(0, 0, 0);
-cursor: auto;
-direction: ltr;
-display: block;
-empty-cells: show;
-float: none;
-font-family: Times;
-font-size: 16px;
-font-style: normal;
-font-variant: normal;
-font-weight: normal;
-height: 576px;
-left: auto;
-letter-spacing: normal;
-line-height: normal;
-list-style-image: none;
-list-style-position: outside;
-list-style-type: disc;
-margin-bottom: 8px;
-margin-left: 8px;
-margin-right: 8px;
-margin-top: 8px;
-max-height: none;
-max-width: none;
-min-height: 0px;
-min-width: 0px;
-opacity: 1;
-orphans: 2;
-outline-color: rgb(0, 0, 0);
-outline-style: none;
-outline-width: 0px;
-overflow-x: visible;
-overflow-y: visible;
-padding-bottom: 0px;
-padding-left: 0px;
-padding-right: 0px;
-padding-top: 0px;
-page-break-after: auto;
-page-break-before: auto;
-page-break-inside: auto;
-pointer-events: auto;
-position: static;
-resize: none;
-right: auto;
-speak: normal;
-table-layout: auto;
-text-align: -webkit-auto;
-text-decoration: none;
-text-indent: 0px;
-text-rendering: auto;
-text-shadow: none;
-text-overflow: clip;
-text-transform: none;
-top: auto;
-unicode-bidi: normal;
-vertical-align: baseline;
-visibility: visible;
-white-space: normal;
-widows: 2;
-width: 784px;
-word-break: normal;
-word-spacing: 0px;
-word-wrap: normal;
-z-index: auto;
-zoom: 1;
--webkit-animation-delay: 0s;
--webkit-animation-direction: normal;
--webkit-animation-duration: 0s;
--webkit-animation-fill-mode: none;
--webkit-animation-iteration-count: 1;
--webkit-animation-name: none;
--webkit-animation-play-state: running;
--webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
--webkit-appearance: none;
--webkit-backface-visibility: visible;
--webkit-background-clip: border-box;
--webkit-background-composite: source-over;
--webkit-background-origin: padding-box;
--webkit-background-size: auto auto;
--webkit-block-flow: tb;
--webkit-border-fit: border;
--webkit-border-horizontal-spacing: 0px;
--webkit-border-image: none;
--webkit-border-vertical-spacing: 0px;
--webkit-box-align: stretch;
--webkit-box-direction: normal;
--webkit-box-flex: 0;
--webkit-box-flex-group: 1;
--webkit-box-lines: single;
--webkit-box-ordinal-group: 1;
--webkit-box-orient: horizontal;
--webkit-box-pack: start;
--webkit-box-reflect: none;
--webkit-box-shadow: none;
--webkit-box-sizing: content-box;
--webkit-color-correction: default;
--webkit-column-break-after: auto;
--webkit-column-break-before: auto;
--webkit-column-break-inside: auto;
--webkit-column-count: auto;
--webkit-column-gap: normal;
--webkit-column-rule-color: rgb(0, 0, 0);
--webkit-column-rule-style: none;
--webkit-column-rule-width: 0px;
--webkit-column-span: 1;
--webkit-column-width: auto;
--webkit-font-smoothing: auto;
--webkit-highlight: none;
--webkit-line-break: normal;
--webkit-line-clamp: none;
--webkit-margin-before-collapse: collapse;
--webkit-margin-after-collapse: collapse;
--webkit-marquee-direction: auto;
--webkit-marquee-increment: 6px;
--webkit-marquee-repetition: infinite;
--webkit-marquee-style: scroll;
--webkit-mask-attachment: scroll;
--webkit-mask-box-image: none;
--webkit-mask-clip: border-box;
--webkit-mask-composite: source-over;
--webkit-mask-image: none;
--webkit-mask-origin: border-box;
--webkit-mask-position: 0% 0%;
--webkit-mask-repeat: repeat;
--webkit-mask-size: auto auto;
--webkit-nbsp-mode: normal;
--webkit-perspective: none;
--webkit-perspective-origin: 392px 288px;
--webkit-rtl-ordering: logical;
--webkit-text-decorations-in-effect: none;
--webkit-text-fill-color: rgb(0, 0, 0);
--webkit-text-security: none;
--webkit-text-stroke-color: rgb(0, 0, 0);
--webkit-text-stroke-width: 0px;
--webkit-transform: none;
--webkit-transform-origin: 392px 288px;
--webkit-transform-style: flat;
--webkit-transition-delay: 0s;
--webkit-transition-duration: 0s;
--webkit-transition-property: all;
--webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
--webkit-user-drag: auto;
--webkit-user-modify: read-only;
--webkit-user-select: text;
-clip-path: none;
-clip-rule: nonzero;
-mask: none;
-filter: none;
-flood-color: rgb(0, 0, 0);
-flood-opacity: 1;
-lighting-color: rgb(255, 255, 255);
-stop-color: rgb(0, 0, 0);
-stop-opacity: 1;
-color-interpolation: srgb;
-color-interpolation-filters: linearrgb;
-color-rendering: auto;
-fill: #000000;
-fill-opacity: 1;
-fill-rule: nonzero;
-image-rendering: auto;
-marker-end: none;
-marker-mid: none;
-marker-start: none;
-shape-rendering: auto;
-stroke: none;
-stroke-dasharray: none;
-stroke-dashoffset: 0;
-stroke-linecap: butt;
-stroke-linejoin: miter;
-stroke-miterlimit: 4;
-stroke-opacity: 1;
-stroke-width: 1;
-alignment-baseline: auto;
-baseline-shift: baseline;
-dominant-baseline: auto;
-kerning: 0;
-text-anchor: start;
-writing-mode: lr-tb;
-glyph-orientation-horizontal: 0deg;
-glyph-orientation-vertical: auto;
--webkit-svg-shadow: none;
-vector-effect: none;
-
-Other attributes that the computed style class supports:
-
-background-position-x: 0%;
-background-position-y: 0%;
-border-spacing: 0px 0px;
-overflow: visible;
--webkit-mask-position-x: 0%;
--webkit-mask-position-y: 0%;
--webkit-match-nearest-mail-blockquote-color: normal;
--webkit-text-size-adjust: auto;
-
diff --git a/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt b/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
deleted file mode 100644
index 656f78a..0000000
--- a/LayoutTests/platform/win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt
+++ /dev/null
@@ -1,236 +0,0 @@
-Computed style of an element whose parent's 'display' value is 'none':
- background-attachment: scroll
- background-clip: border-box
- background-color: rgb(0, 128, 0)
- background-image: none
- background-origin: padding-box
- background-position: 0% 0%
- background-repeat: repeat
- background-size: auto auto
- border-bottom-color: rgb(0, 0, 0)
- border-bottom-left-radius: 0px
- border-bottom-right-radius: 0px
- border-bottom-style: none
- border-bottom-width: 0px
- border-collapse: separate
- border-left-color: rgb(0, 0, 0)
- border-left-style: none
- border-left-width: 0px
- border-right-color: rgb(0, 0, 0)
- border-right-style: none
- border-right-width: 0px
- border-top-color: rgb(0, 0, 0)
- border-top-left-radius: 0px
- border-top-right-radius: 0px
- border-top-style: solid
- border-top-width: 16px
- bottom: auto
- caption-side: top
- clear: none
- clip: auto
- color: rgb(0, 0, 0)
- cursor: auto
- direction: ltr
- display: block
- empty-cells: show
- float: none
- font-family: Times
- font-size: 16px
- font-style: normal
- font-variant: normal
- font-weight: normal
- height: 100px
- left: auto
- letter-spacing: normal
- line-height: normal
- list-style-image: none
- list-style-position: outside
- list-style-type: disc
- margin-bottom: 0px
- margin-left: auto
- margin-right: 0px
- margin-top: 0px
- max-height: none
- max-width: none
- min-height: 0px
- min-width: 0px
- opacity: 1
- orphans: 2
- outline-color: rgb(0, 0, 0)
- outline-style: none
- outline-width: 0px
- overflow-x: visible
- overflow-y: visible
- padding-bottom: 0px
- padding-left: 0px
- padding-right: 0px
- padding-top: 0px
- page-break-after: auto
- page-break-before: auto
- page-break-inside: auto
- pointer-events: auto
- position: static
- resize: none
- right: auto
- speak: normal
- table-layout: auto
- text-align: -webkit-auto
- text-decoration: none
- text-indent: 0px
- text-rendering: auto
- text-shadow: none
- text-overflow: clip
- text-transform: none
- top: auto
- unicode-bidi: normal
- vertical-align: baseline
- visibility: visible
- white-space: normal
- widows: 2
- width: 50%
- word-break: normal
- word-spacing: 0px
- word-wrap: normal
- z-index: auto
- zoom: 1
- -webkit-animation-delay: 0s
- -webkit-animation-direction: normal
- -webkit-animation-duration: 0s
- -webkit-animation-fill-mode: none
- -webkit-animation-iteration-count: 1
- -webkit-animation-name: none
- -webkit-animation-play-state: running
- -webkit-animation-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1)
- -webkit-appearance: none
- -webkit-backface-visibility: visible
- -webkit-background-clip: border-box
- -webkit-background-composite: source-over
- -webkit-background-origin: padding-box
- -webkit-background-size: auto auto
- -webkit-block-flow: tb
- -webkit-border-fit: border
- -webkit-border-horizontal-spacing: 0px
- -webkit-border-image: none
- -webkit-border-vertical-spacing: 0px
- -webkit-box-align: stretch
- -webkit-box-direction: normal
- -webkit-box-flex: 0
- -webkit-box-flex-group: 1
- -webkit-box-lines: single
- -webkit-box-ordinal-group: 1
- -webkit-box-orient: horizontal
- -webkit-box-pack: start
- -webkit-box-reflect: none
- -webkit-box-shadow: none
- -webkit-box-sizing: content-box
- -webkit-color-correction: default
- -webkit-column-break-after: auto
- -webkit-column-break-before: auto
- -webkit-column-break-inside: auto
- -webkit-column-count: auto
- -webkit-column-gap: normal
- -webkit-column-rule-color: rgb(0, 0, 0)
- -webkit-column-rule-style: none
- -webkit-column-rule-width: 0px
- -webkit-column-span: 1
- -webkit-column-width: auto
- -webkit-font-smoothing: auto
- -webkit-highlight: none
- -webkit-line-break: normal
- -webkit-line-clamp: none
- -webkit-margin-before-collapse: collapse
- -webkit-margin-after-collapse: collapse
- -webkit-marquee-direction: auto
- -webkit-marquee-increment: 6px
- -webkit-marquee-repetition: infinite
- -webkit-marquee-style: scroll
- -webkit-mask-attachment: scroll
- -webkit-mask-box-image: none
- -webkit-mask-clip: border-box
- -webkit-mask-composite: source-over
- -webkit-mask-image: none
- -webkit-mask-origin: border-box
- -webkit-mask-position: 0% 0%
- -webkit-mask-repeat: repeat
- -webkit-mask-size: auto auto
- -webkit-nbsp-mode: normal
- -webkit-perspective: none
- -webkit-perspective-origin: 50% 50%
- -webkit-rtl-ordering: logical
- -webkit-text-decorations-in-effect: none
- -webkit-text-fill-color: rgb(0, 0, 0)
- -webkit-text-security: none
- -webkit-text-stroke-color: rgb(0, 0, 0)
- -webkit-text-stroke-width: 0px
- -webkit-transform: none
- -webkit-transform-origin: 50% 50%
- -webkit-transform-style: flat
- -webkit-transition-delay: 0s
- -webkit-transition-duration: 0s
- -webkit-transition-property: all
- -webkit-transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1)
- -webkit-user-drag: auto
- -webkit-user-modify: read-only
- -webkit-user-select: text
- clip-path: none
- clip-rule: nonzero
- mask: none
- filter: none
- flood-color: rgb(0, 0, 0)
- flood-opacity: 1
- lighting-color: rgb(255, 255, 255)
- stop-color: rgb(0, 0, 0)
- stop-opacity: 1
- color-interpolation: srgb
- color-interpolation-filters: linearrgb
- color-rendering: auto
- fill: #000000
- fill-opacity: 1
- fill-rule: nonzero
- image-rendering: auto
- marker-end: none
- marker-mid: none
- marker-start: none
- shape-rendering: auto
- stroke: none
- stroke-dasharray: none
- stroke-dashoffset: 0
- stroke-linecap: butt
- stroke-linejoin: miter
- stroke-miterlimit: 4
- stroke-opacity: 1
- stroke-width: 1
- alignment-baseline: auto
- baseline-shift: baseline
- dominant-baseline: auto
- kerning: 0
- text-anchor: start
- writing-mode: lr-tb
- glyph-orientation-horizontal: 0deg
- glyph-orientation-vertical: auto
- -webkit-svg-shadow: none
- vector-effect: none
- background-position-x: 0%
- background-position-y: 0%
- border-spacing: 0px 0px
- overflow: visible
- -webkit-mask-position-x: 0%
- -webkit-mask-position-y: 0%
- -webkit-match-nearest-mail-blockquote-color: normal
- -webkit-text-size-adjust: auto
-
-After changing grandparent's 'color' and the parent's 'font-size' inherited properties:
- border-top-width: 18px
- color: rgb(0, 0, 255)
-
-After changing the parent's 'display' property to 'block', so that the child gets a renderer:
- height: 100px
- margin-left: 385px
- width: 384px
-
-After changing the parent's 'display' property back to 'none':
- height: 100px
- margin-left: auto
- width: 50%
-
-
diff --git a/LayoutTests/svg/css/getComputedStyle-basic-expected.txt b/LayoutTests/svg/css/getComputedStyle-basic-expected.txt
index cfda95c..d8c7504 100644
--- a/LayoutTests/svg/css/getComputedStyle-basic-expected.txt
+++ b/LayoutTests/svg/css/getComputedStyle-basic-expected.txt
@@ -214,8 +214,6 @@ rect: style.getPropertyValue(-webkit-background-origin) : padding-box
rect: style.getPropertyCSSValue(-webkit-background-origin) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-background-size) : auto auto
rect: style.getPropertyCSSValue(-webkit-background-size) : [object CSSValueList]
-rect: style.getPropertyValue(-webkit-block-flow) : tb
-rect: style.getPropertyCSSValue(-webkit-block-flow) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-border-fit) : border
rect: style.getPropertyCSSValue(-webkit-border-fit) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-border-horizontal-spacing) : 0px
@@ -268,8 +266,6 @@ rect: style.getPropertyValue(-webkit-column-span) : 1
rect: style.getPropertyCSSValue(-webkit-column-span) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-column-width) : auto
rect: style.getPropertyCSSValue(-webkit-column-width) : [object CSSPrimitiveValue]
-rect: style.getPropertyValue(-webkit-dashboard-region) : null
-rect: style.getPropertyCSSValue(-webkit-dashboard-region) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-font-smoothing) : auto
rect: style.getPropertyCSSValue(-webkit-font-smoothing) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-highlight) : none
@@ -346,6 +342,8 @@ rect: style.getPropertyValue(-webkit-user-modify) : read-only
rect: style.getPropertyCSSValue(-webkit-user-modify) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(-webkit-user-select) : text
rect: style.getPropertyCSSValue(-webkit-user-select) : [object CSSPrimitiveValue]
+rect: style.getPropertyValue(-webkit-writing-mode) : horizontal-tb
+rect: style.getPropertyCSSValue(-webkit-writing-mode) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(clip-path) : none
rect: style.getPropertyCSSValue(clip-path) : [object CSSPrimitiveValue]
rect: style.getPropertyValue(clip-rule) : nonzero
@@ -638,8 +636,6 @@ g: style.getPropertyValue(-webkit-background-origin) : padding-box
g: style.getPropertyCSSValue(-webkit-background-origin) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-background-size) : auto auto
g: style.getPropertyCSSValue(-webkit-background-size) : [object CSSValueList]
-g: style.getPropertyValue(-webkit-block-flow) : tb
-g: style.getPropertyCSSValue(-webkit-block-flow) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-border-fit) : border
g: style.getPropertyCSSValue(-webkit-border-fit) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-border-horizontal-spacing) : 0px
@@ -692,8 +688,6 @@ g: style.getPropertyValue(-webkit-column-span) : 1
g: style.getPropertyCSSValue(-webkit-column-span) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-column-width) : auto
g: style.getPropertyCSSValue(-webkit-column-width) : [object CSSPrimitiveValue]
-g: style.getPropertyValue(-webkit-dashboard-region) : null
-g: style.getPropertyCSSValue(-webkit-dashboard-region) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-font-smoothing) : auto
g: style.getPropertyCSSValue(-webkit-font-smoothing) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-highlight) : none
@@ -770,6 +764,8 @@ g: style.getPropertyValue(-webkit-user-modify) : read-only
g: style.getPropertyCSSValue(-webkit-user-modify) : [object CSSPrimitiveValue]
g: style.getPropertyValue(-webkit-user-select) : text
g: style.getPropertyCSSValue(-webkit-user-select) : [object CSSPrimitiveValue]
+g: style.getPropertyValue(-webkit-writing-mode) : horizontal-tb
+g: style.getPropertyCSSValue(-webkit-writing-mode) : [object CSSPrimitiveValue]
g: style.getPropertyValue(clip-path) : none
g: style.getPropertyCSSValue(clip-path) : [object CSSPrimitiveValue]
g: style.getPropertyValue(clip-rule) : nonzero
diff --git a/LayoutTests/svg/css/getComputedStyle-basic.xhtml b/LayoutTests/svg/css/getComputedStyle-basic.xhtml
index 6a709d6..28966ea 100644
--- a/LayoutTests/svg/css/getComputedStyle-basic.xhtml
+++ b/LayoutTests/svg/css/getComputedStyle-basic.xhtml
@@ -25,8 +25,10 @@
var value = style.getPropertyValue(name);
var cssValue = style.getPropertyCSSValue(name);
- debugLog(elementId + ": style.getPropertyValue(" + name + ") : " + value);
- debugLog(elementId + ": style.getPropertyCSSValue(" + name + ") : " + cssValue);
+ if (name != "-webkit-dashboard-region") {
+ debugLog(elementId + ": style.getPropertyValue(" + name + ") : " + value);
+ debugLog(elementId + ": style.getPropertyCSSValue(" + name + ") : " + cssValue);
+ }
}
}
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index eb4ea10..5115ed2 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,159 @@
+2010-10-06 David Hyatt <hyatt at apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=47285
+
+ Update to the latest writing-mode draft. The block-flow property is gone and has been replaced with writing-mode.
+ Change all the code to use writingMode() instead of blockFlow() and rename all functions that referred to block flow
+ as appropriate.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator WritingMode):
+ (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
+ * css/CSSProperty.cpp:
+ (WebCore::resolveToPhysicalProperty):
+ (WebCore::CSSProperty::resolveDirectionAwareProperty):
+ * css/CSSProperty.h:
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForDocument):
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ (WebCore::CSSStyleSelector::applyDeclarations):
+ (WebCore::CSSStyleSelector::applyProperty):
+ * css/CSSValueKeywords.in:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::MarginInfo::MarginInfo):
+ (WebCore::RenderBlock::expandsToEncloseOverhangingFloats):
+ (WebCore::RenderBlock::setLogicalLeftForChild):
+ (WebCore::RenderBlock::setLogicalTopForChild):
+ (WebCore::RenderBlock::layoutBlockChild):
+ (WebCore::RenderBlock::insertFloatingObject):
+ (WebCore::RenderBlock::addOverhangingFloats):
+ (WebCore::RenderBlock::addIntrudingFloats):
+ (WebCore::RenderBlock::collapsedMarginBeforeForChild):
+ (WebCore::RenderBlock::collapsedMarginAfterForChild):
+ (WebCore::RenderBlock::marginBeforeForChild):
+ (WebCore::RenderBlock::marginAfterForChild):
+ (WebCore::RenderBlock::marginStartForChild):
+ (WebCore::RenderBlock::marginEndForChild):
+ (WebCore::RenderBlock::setMarginStartForChild):
+ (WebCore::RenderBlock::setMarginEndForChild):
+ (WebCore::RenderBlock::setMarginBeforeForChild):
+ (WebCore::RenderBlock::setMarginAfterForChild):
+ (WebCore::RenderBlock::marginValuesForChild):
+ * rendering/RenderBlock.h:
+ (WebCore::RenderBlock::logicalWidthForChild):
+ (WebCore::RenderBlock::logicalHeightForChild):
+ (WebCore::RenderBlock::logicalTopForChild):
+ (WebCore::RenderBlock::logicalRightOffsetForContent):
+ (WebCore::RenderBlock::logicalLeftOffsetForContent):
+ (WebCore::RenderBlock::logicalTopForFloat):
+ (WebCore::RenderBlock::logicalBottomForFloat):
+ (WebCore::RenderBlock::logicalLeftForFloat):
+ (WebCore::RenderBlock::logicalRightForFloat):
+ (WebCore::RenderBlock::logicalWidthForFloat):
+ (WebCore::RenderBlock::setLogicalTopForFloat):
+ (WebCore::RenderBlock::setLogicalLeftForFloat):
+ (WebCore::RenderBlock::setLogicalHeightForFloat):
+ (WebCore::RenderBlock::setLogicalWidthForFloat):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::marginBefore):
+ (WebCore::RenderBox::marginAfter):
+ (WebCore::RenderBox::marginStart):
+ (WebCore::RenderBox::marginEnd):
+ (WebCore::RenderBox::setMarginStart):
+ (WebCore::RenderBox::setMarginEnd):
+ (WebCore::RenderBox::setMarginBefore):
+ (WebCore::RenderBox::setMarginAfter):
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::perpendicularContainingBlockLogicalHeight):
+ (WebCore::RenderBox::computeLogicalWidth):
+ (WebCore::RenderBox::computeLogicalHeight):
+ (WebCore::RenderBox::availableLogicalHeightUsing):
+ (WebCore::RenderBox::avoidsFloats):
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::logicalLeft):
+ (WebCore::RenderBox::logicalTop):
+ (WebCore::RenderBox::logicalWidth):
+ (WebCore::RenderBox::logicalHeight):
+ (WebCore::RenderBox::setLogicalLeft):
+ (WebCore::RenderBox::setLogicalTop):
+ (WebCore::RenderBox::setLogicalWidth):
+ (WebCore::RenderBox::setLogicalHeight):
+ (WebCore::RenderBox::setLogicalLocation):
+ (WebCore::RenderBox::contentLogicalWidth):
+ (WebCore::RenderBox::contentLogicalHeight):
+ (WebCore::RenderBox::stretchesToViewport):
+ (WebCore::RenderBox::intrinsicLogicalWidth):
+ (WebCore::RenderBox::intrinsicLogicalHeight):
+ (WebCore::RenderBox::availableWidth):
+ (WebCore::RenderBox::availableHeight):
+ (WebCore::RenderBox::scrollbarLogicalHeight):
+ (WebCore::RenderBox::isWritingModeRoot):
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::paintBoxDecorations):
+ (WebCore::RenderFieldset::paintMask):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::computeReplacedLogicalWidth):
+ (WebCore::RenderImage::computeReplacedLogicalHeight):
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::marginLeft):
+ (WebCore::RenderInline::marginRight):
+ (WebCore::RenderInline::marginTop):
+ (WebCore::RenderInline::marginBottom):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::paddingTop):
+ (WebCore::RenderTableCell::paddingBottom):
+ (WebCore::RenderTableCell::paddingLeft):
+ (WebCore::RenderTableCell::paddingRight):
+ * rendering/RenderView.h:
+ (WebCore::RenderView::viewLogicalWidth):
+ (WebCore::RenderView::viewLogicalHeight):
+ * rendering/RootInlineBox.cpp:
+ (WebCore::RootInlineBox::RootInlineBox):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::diff):
+ (WebCore::RenderStyle::logicalWidth):
+ (WebCore::RenderStyle::logicalHeight):
+ (WebCore::RenderStyle::logicalMinWidth):
+ (WebCore::RenderStyle::logicalMaxWidth):
+ (WebCore::RenderStyle::logicalMinHeight):
+ (WebCore::RenderStyle::logicalMaxHeight):
+ (WebCore::RenderStyle::borderBeforeWidth):
+ (WebCore::RenderStyle::borderAfterWidth):
+ (WebCore::RenderStyle::borderStartWidth):
+ (WebCore::RenderStyle::borderEndWidth):
+ (WebCore::RenderStyle::marginBefore):
+ (WebCore::RenderStyle::marginAfter):
+ (WebCore::RenderStyle::marginBeforeUsing):
+ (WebCore::RenderStyle::marginAfterUsing):
+ (WebCore::RenderStyle::marginStart):
+ (WebCore::RenderStyle::marginEnd):
+ (WebCore::RenderStyle::marginStartUsing):
+ (WebCore::RenderStyle::marginEndUsing):
+ (WebCore::RenderStyle::paddingBefore):
+ (WebCore::RenderStyle::paddingAfter):
+ (WebCore::RenderStyle::paddingStart):
+ (WebCore::RenderStyle::paddingEnd):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::setBitDefaults):
+ (WebCore::InheritedFlags::writingMode):
+ (WebCore::InheritedFlags::isHorizontalWritingMode):
+ (WebCore::InheritedFlags::setWritingMode):
+ (WebCore::InheritedFlags::initialWritingMode):
+ * rendering/style/RenderStyleConstants.h:
+ * rendering/style/SVGRenderStyle.h:
+ (WebCore::SVGRenderStyle::initialWritingMode):
+ (WebCore::SVGRenderStyle::setWritingMode):
+ (WebCore::SVGRenderStyle::writingMode):
+ * rendering/style/SVGRenderStyleDefs.h:
+
2010-10-06 Sheriff Bot <webkit.review.bot at gmail.com>
Unreviewed, rolling out r69201.
diff --git a/WebCore/css/CSSComputedStyleDeclaration.cpp b/WebCore/css/CSSComputedStyleDeclaration.cpp
index d6490ac..14c3bb3 100644
--- a/WebCore/css/CSSComputedStyleDeclaration.cpp
+++ b/WebCore/css/CSSComputedStyleDeclaration.cpp
@@ -159,7 +159,6 @@ static const int computedProperties[] = {
CSSPropertyWebkitBackgroundComposite,
CSSPropertyWebkitBackgroundOrigin,
CSSPropertyWebkitBackgroundSize,
- CSSPropertyWebkitBlockFlow,
CSSPropertyWebkitBorderFit,
CSSPropertyWebkitBorderHorizontalSpacing,
CSSPropertyWebkitBorderImage,
@@ -226,7 +225,8 @@ static const int computedProperties[] = {
CSSPropertyWebkitTransitionTimingFunction,
CSSPropertyWebkitUserDrag,
CSSPropertyWebkitUserModify,
- CSSPropertyWebkitUserSelect
+ CSSPropertyWebkitUserSelect,
+ CSSPropertyWebkitWritingMode
#if ENABLE(SVG)
,
@@ -734,7 +734,7 @@ PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValue(int proper
if (!style)
return 0;
- propertyID = CSSProperty::resolveDirectionAwareProperty(propertyID, style->direction(), style->blockFlow());
+ propertyID = CSSProperty::resolveDirectionAwareProperty(propertyID, style->direction(), style->writingMode());
switch (static_cast<CSSPropertyID>(propertyID)) {
case CSSPropertyInvalid:
@@ -1354,8 +1354,6 @@ PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValue(int proper
return CSSPrimitiveValue::create(style->appearance());
case CSSPropertyWebkitBackfaceVisibility:
return CSSPrimitiveValue::createIdentifier((style->backfaceVisibility() == BackfaceVisibilityHidden) ? CSSValueHidden : CSSValueVisible);
- case CSSPropertyWebkitBlockFlow:
- return CSSPrimitiveValue::create(style->blockFlow());
case CSSPropertyWebkitBorderImage:
return valueForNinePieceImage(style->borderImage());
case CSSPropertyWebkitMaskBoxImage:
@@ -1463,7 +1461,9 @@ PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValue(int proper
return CSSPrimitiveValue::create(style->pointerEvents());
case CSSPropertyWebkitColorCorrection:
return CSSPrimitiveValue::create(style->colorSpace());
-
+ case CSSPropertyWebkitWritingMode:
+ return CSSPrimitiveValue::create(style->writingMode());
+
/* Shorthand properties, currently not supported see bug 13658*/
case CSSPropertyBackground:
case CSSPropertyBorder:
@@ -1479,7 +1479,6 @@ PassRefPtr<CSSValue> CSSComputedStyleDeclaration::getPropertyCSSValue(int proper
case CSSPropertyListStyle:
case CSSPropertyMargin:
case CSSPropertyPadding:
- case CSSPropertyWebkitWritingMode:
break;
/* Unimplemented CSS 3 properties (including CSS3 shorthand properties) */
diff --git a/WebCore/css/CSSParser.cpp b/WebCore/css/CSSParser.cpp
index eb4109e..26c3876 100644
--- a/WebCore/css/CSSParser.cpp
+++ b/WebCore/css/CSSParser.cpp
@@ -1781,15 +1781,8 @@ bool CSSParser::parseValue(int propId, bool important)
#endif
// CSS Text Layout Module Level 3: Vertical writing support
- case CSSPropertyWebkitBlockFlow:
- // [ "tb" | "rl" | "lr" | "bt" ]
- if (id == CSSValueTb || id == CSSValueRl || id == CSSValueLr || id == CSSValueBt)
- validPrimitive = true;
- break;
-
case CSSPropertyWebkitWritingMode:
- // [ "lr-tb" | "rl-tb" | "tb-rl" | "bt-rl" | "tb-lr" | "bt-lr" ]
- if (id == CSSValueLrTb || id == CSSValueRlTb || id == CSSValueTbRl || id == CSSValueBtRl || id == CSSValueTbLr || id == CSSValueBtLr)
+ if (id >= CSSValueHorizontalTb && id <= CSSValueHorizontalBt)
validPrimitive = true;
break;
diff --git a/WebCore/css/CSSPrimitiveValueMappings.h b/WebCore/css/CSSPrimitiveValueMappings.h
index 070a5f6..61ba45b 100644
--- a/WebCore/css/CSSPrimitiveValueMappings.h
+++ b/WebCore/css/CSSPrimitiveValueMappings.h
@@ -2003,40 +2003,40 @@ template<> inline CSSPrimitiveValue::operator TextDirection() const
}
}
-template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EBlockFlowDirection e)
+template<> inline CSSPrimitiveValue::CSSPrimitiveValue(WritingMode e)
: m_type(CSS_IDENT)
, m_hasCachedCSSText(false)
{
switch (e) {
- case TopToBottomBlockFlow:
- m_value.ident = CSSValueTb;
+ case TopToBottomWritingMode:
+ m_value.ident = CSSValueHorizontalTb;
break;
- case RightToLeftBlockFlow:
- m_value.ident = CSSValueRl;
+ case RightToLeftWritingMode:
+ m_value.ident = CSSValueVerticalRl;
break;
- case LeftToRightBlockFlow:
- m_value.ident = CSSValueLr;
+ case LeftToRightWritingMode:
+ m_value.ident = CSSValueVerticalLr;
break;
- case BottomToTopBlockFlow:
- m_value.ident = CSSValueBt;
+ case BottomToTopWritingMode:
+ m_value.ident = CSSValueHorizontalBt;
break;
}
}
-template<> inline CSSPrimitiveValue::operator EBlockFlowDirection() const
+template<> inline CSSPrimitiveValue::operator WritingMode() const
{
switch (m_value.ident) {
- case CSSValueTb:
- return TopToBottomBlockFlow;
- case CSSValueRl:
- return RightToLeftBlockFlow;
- case CSSValueLr:
- return LeftToRightBlockFlow;
- case CSSValueBt:
- return BottomToTopBlockFlow;
+ case CSSValueHorizontalTb:
+ return TopToBottomWritingMode;
+ case CSSValueVerticalRl:
+ return RightToLeftWritingMode;
+ case CSSValueVerticalLr:
+ return LeftToRightWritingMode;
+ case CSSValueHorizontalBt:
+ return BottomToTopWritingMode;
default:
ASSERT_NOT_REACHED();
- return TopToBottomBlockFlow;
+ return TopToBottomWritingMode;
}
}
@@ -2703,7 +2703,7 @@ template<> inline CSSPrimitiveValue::operator ETextAnchor() const
}
}
-template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWritingMode e)
+template<> inline CSSPrimitiveValue::CSSPrimitiveValue(SVGWritingMode e)
: m_type(CSS_IDENT)
, m_hasCachedCSSText(false)
{
@@ -2729,7 +2729,7 @@ template<> inline CSSPrimitiveValue::CSSPrimitiveValue(EWritingMode e)
}
}
-template<> inline CSSPrimitiveValue::operator EWritingMode() const
+template<> inline CSSPrimitiveValue::operator SVGWritingMode() const
{
switch (m_value.ident) {
case CSSValueLrTb:
diff --git a/WebCore/css/CSSProperty.cpp b/WebCore/css/CSSProperty.cpp
index 7779aad..61300a2 100644
--- a/WebCore/css/CSSProperty.cpp
+++ b/WebCore/css/CSSProperty.cpp
@@ -42,16 +42,16 @@ bool operator==(const CSSProperty& a, const CSSProperty& b)
enum LogicalBoxSide { BeforeSide, EndSide, AfterSide, StartSide };
enum PhysicalBoxSide { TopSide, RightSide, BottomSide, LeftSide };
-static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirection blockDirection, LogicalBoxSide logicalSide, const int* properties)
+static int resolveToPhysicalProperty(TextDirection direction, WritingMode writingMode, LogicalBoxSide logicalSide, const int* properties)
{
if (direction == LTR) {
- if (blockDirection == TopToBottomBlockFlow) {
+ if (writingMode == TopToBottomWritingMode) {
// The common case. The logical and physical box sides match.
// Left = Start, Right = End, Before = Top, After = Bottom
return properties[logicalSide];
}
- if (blockDirection == BottomToTopBlockFlow) {
+ if (writingMode == BottomToTopWritingMode) {
// Start = Left, End = Right, Before = Bottom, After = Top.
switch (logicalSide) {
case StartSide:
@@ -65,7 +65,7 @@ static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirectio
}
}
- if (blockDirection == LeftToRightBlockFlow) {
+ if (writingMode == LeftToRightWritingMode) {
// Start = Top, End = Bottom, Before = Left, After = Right.
switch (logicalSide) {
case StartSide:
@@ -92,7 +92,7 @@ static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirectio
}
}
- if (blockDirection == TopToBottomBlockFlow) {
+ if (writingMode == TopToBottomWritingMode) {
// Start = Right, End = Left, Before = Top, After = Bottom
switch (logicalSide) {
case StartSide:
@@ -106,7 +106,7 @@ static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirectio
}
}
- if (blockDirection == BottomToTopBlockFlow) {
+ if (writingMode == BottomToTopWritingMode) {
// Start = Right, End = Left, Before = Bottom, After = Top
switch (logicalSide) {
case StartSide:
@@ -120,7 +120,7 @@ static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirectio
}
}
- if (blockDirection == LeftToRightBlockFlow) {
+ if (writingMode == LeftToRightWritingMode) {
// Start = Bottom, End = Top, Before = Left, After = Right
switch (logicalSide) {
case StartSide:
@@ -149,135 +149,135 @@ static int resolveToPhysicalProperty(TextDirection direction, EBlockFlowDirectio
enum LogicalExtent { LogicalWidth, LogicalHeight };
-static int resolveToPhysicalProperty(EBlockFlowDirection blockDirection, LogicalExtent logicalSide, const int* properties)
+static int resolveToPhysicalProperty(WritingMode writingMode, LogicalExtent logicalSide, const int* properties)
{
- if (blockDirection == TopToBottomBlockFlow || blockDirection == BottomToTopBlockFlow)
+ if (writingMode == TopToBottomWritingMode || writingMode == BottomToTopWritingMode)
return properties[logicalSide];
return logicalSide == LogicalWidth ? properties[1] : properties[0];
}
-int CSSProperty::resolveDirectionAwareProperty(int propertyID, TextDirection direction, EBlockFlowDirection blockDirection)
+int CSSProperty::resolveDirectionAwareProperty(int propertyID, TextDirection direction, WritingMode writingMode)
{
switch (static_cast<CSSPropertyID>(propertyID)) {
case CSSPropertyWebkitMarginEnd: {
const int properties[4] = { CSSPropertyMarginTop, CSSPropertyMarginRight, CSSPropertyMarginBottom, CSSPropertyMarginLeft };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitMarginStart: {
const int properties[4] = { CSSPropertyMarginTop, CSSPropertyMarginRight, CSSPropertyMarginBottom, CSSPropertyMarginLeft };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitMarginBefore: {
const int properties[4] = { CSSPropertyMarginTop, CSSPropertyMarginRight, CSSPropertyMarginBottom, CSSPropertyMarginLeft };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitMarginAfter: {
const int properties[4] = { CSSPropertyMarginTop, CSSPropertyMarginRight, CSSPropertyMarginBottom, CSSPropertyMarginLeft };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitPaddingEnd: {
const int properties[4] = { CSSPropertyPaddingTop, CSSPropertyPaddingRight, CSSPropertyPaddingBottom, CSSPropertyPaddingLeft };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitPaddingStart: {
const int properties[4] = { CSSPropertyPaddingTop, CSSPropertyPaddingRight, CSSPropertyPaddingBottom, CSSPropertyPaddingLeft };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitPaddingBefore: {
const int properties[4] = { CSSPropertyPaddingTop, CSSPropertyPaddingRight, CSSPropertyPaddingBottom, CSSPropertyPaddingLeft };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitPaddingAfter: {
const int properties[4] = { CSSPropertyPaddingTop, CSSPropertyPaddingRight, CSSPropertyPaddingBottom, CSSPropertyPaddingLeft };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitBorderEnd: {
const int properties[4] = { CSSPropertyBorderTop, CSSPropertyBorderRight, CSSPropertyBorderBottom, CSSPropertyBorderLeft };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitBorderStart: {
const int properties[4] = { CSSPropertyBorderTop, CSSPropertyBorderRight, CSSPropertyBorderBottom, CSSPropertyBorderLeft };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitBorderBefore: {
const int properties[4] = { CSSPropertyBorderTop, CSSPropertyBorderRight, CSSPropertyBorderBottom, CSSPropertyBorderLeft };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitBorderAfter: {
const int properties[4] = { CSSPropertyBorderTop, CSSPropertyBorderRight, CSSPropertyBorderBottom, CSSPropertyBorderLeft };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitBorderEndColor: {
const int properties[4] = { CSSPropertyBorderTopColor, CSSPropertyBorderRightColor, CSSPropertyBorderBottomColor, CSSPropertyBorderLeftColor };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitBorderStartColor: {
const int properties[4] = { CSSPropertyBorderTopColor, CSSPropertyBorderRightColor, CSSPropertyBorderBottomColor, CSSPropertyBorderLeftColor };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitBorderBeforeColor: {
const int properties[4] = { CSSPropertyBorderTopColor, CSSPropertyBorderRightColor, CSSPropertyBorderBottomColor, CSSPropertyBorderLeftColor };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitBorderAfterColor: {
const int properties[4] = { CSSPropertyBorderTopColor, CSSPropertyBorderRightColor, CSSPropertyBorderBottomColor, CSSPropertyBorderLeftColor };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitBorderEndStyle: {
const int properties[4] = { CSSPropertyBorderTopStyle, CSSPropertyBorderRightStyle, CSSPropertyBorderBottomStyle, CSSPropertyBorderLeftStyle };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitBorderStartStyle: {
const int properties[4] = { CSSPropertyBorderTopStyle, CSSPropertyBorderRightStyle, CSSPropertyBorderBottomStyle, CSSPropertyBorderLeftStyle };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitBorderBeforeStyle: {
const int properties[4] = { CSSPropertyBorderTopStyle, CSSPropertyBorderRightStyle, CSSPropertyBorderBottomStyle, CSSPropertyBorderLeftStyle };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitBorderAfterStyle: {
const int properties[4] = { CSSPropertyBorderTopStyle, CSSPropertyBorderRightStyle, CSSPropertyBorderBottomStyle, CSSPropertyBorderLeftStyle };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitBorderEndWidth: {
const int properties[4] = { CSSPropertyBorderTopWidth, CSSPropertyBorderRightWidth, CSSPropertyBorderBottomWidth, CSSPropertyBorderLeftWidth };
- return resolveToPhysicalProperty(direction, blockDirection, EndSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, EndSide, properties);
}
case CSSPropertyWebkitBorderStartWidth: {
const int properties[4] = { CSSPropertyBorderTopWidth, CSSPropertyBorderRightWidth, CSSPropertyBorderBottomWidth, CSSPropertyBorderLeftWidth };
- return resolveToPhysicalProperty(direction, blockDirection, StartSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, StartSide, properties);
}
case CSSPropertyWebkitBorderBeforeWidth: {
const int properties[4] = { CSSPropertyBorderTopWidth, CSSPropertyBorderRightWidth, CSSPropertyBorderBottomWidth, CSSPropertyBorderLeftWidth };
- return resolveToPhysicalProperty(direction, blockDirection, BeforeSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, BeforeSide, properties);
}
case CSSPropertyWebkitBorderAfterWidth: {
const int properties[4] = { CSSPropertyBorderTopWidth, CSSPropertyBorderRightWidth, CSSPropertyBorderBottomWidth, CSSPropertyBorderLeftWidth };
- return resolveToPhysicalProperty(direction, blockDirection, AfterSide, properties);
+ return resolveToPhysicalProperty(direction, writingMode, AfterSide, properties);
}
case CSSPropertyWebkitLogicalWidth: {
const int properties[2] = { CSSPropertyWidth, CSSPropertyHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalWidth, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalWidth, properties);
}
case CSSPropertyWebkitLogicalHeight: {
const int properties[2] = { CSSPropertyWidth, CSSPropertyHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalHeight, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalHeight, properties);
}
case CSSPropertyWebkitMinLogicalWidth: {
const int properties[2] = { CSSPropertyMinWidth, CSSPropertyMinHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalWidth, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalWidth, properties);
}
case CSSPropertyWebkitMinLogicalHeight: {
const int properties[2] = { CSSPropertyMinWidth, CSSPropertyMinHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalHeight, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalHeight, properties);
}
case CSSPropertyWebkitMaxLogicalWidth: {
const int properties[2] = { CSSPropertyMaxWidth, CSSPropertyMaxHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalWidth, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalWidth, properties);
}
case CSSPropertyWebkitMaxLogicalHeight: {
const int properties[2] = { CSSPropertyMaxWidth, CSSPropertyMaxHeight };
- return resolveToPhysicalProperty(blockDirection, LogicalHeight, properties);
+ return resolveToPhysicalProperty(writingMode, LogicalHeight, properties);
}
default:
return propertyID;
diff --git a/WebCore/css/CSSProperty.h b/WebCore/css/CSSProperty.h
index 0da6050..106171d 100644
--- a/WebCore/css/CSSProperty.h
+++ b/WebCore/css/CSSProperty.h
@@ -60,7 +60,7 @@ public:
String cssText() const;
- static int resolveDirectionAwareProperty(int propertyID, TextDirection, EBlockFlowDirection);
+ static int resolveDirectionAwareProperty(int propertyID, TextDirection, WritingMode);
friend bool operator==(const CSSProperty&, const CSSProperty&);
diff --git a/WebCore/css/CSSPropertyNames.in b/WebCore/css/CSSPropertyNames.in
index dba0069..9fd2d2c 100644
--- a/WebCore/css/CSSPropertyNames.in
+++ b/WebCore/css/CSSPropertyNames.in
@@ -20,7 +20,6 @@ font-style
font-variant
font-weight
text-rendering
--webkit-block-flow
-webkit-font-smoothing
-webkit-text-size-adjust
-webkit-writing-mode
diff --git a/WebCore/css/CSSStyleSelector.cpp b/WebCore/css/CSSStyleSelector.cpp
index fc470c9..5d22bfe 100644
--- a/WebCore/css/CSSStyleSelector.cpp
+++ b/WebCore/css/CSSStyleSelector.cpp
@@ -1110,7 +1110,7 @@ PassRefPtr<RenderStyle> CSSStyleSelector::styleForDocument(Document* document)
if (docElement && docElement->renderer()) {
// Use the direction and block-flow of the document element to set the
// viewport's direction and block-flow.
- documentStyle->setBlockFlow(docElement->renderer()->style()->blockFlow());
+ documentStyle->setWritingMode(docElement->renderer()->style()->writingMode());
documentStyle->setDirection(docElement->renderer()->style()->direction());
}
@@ -1726,7 +1726,7 @@ void CSSStyleSelector::adjustRenderStyle(RenderStyle* style, RenderStyle* parent
// FIXME: Don't support this mutation for pseudo styles like first-letter or first-line, since it's not completely
// clear how that should work.
- if (style->display() == INLINE && style->styleType() == NOPSEUDO && parentStyle && style->blockFlow() != parentStyle->blockFlow())
+ if (style->display() == INLINE && style->styleType() == NOPSEUDO && parentStyle && style->writingMode() != parentStyle->writingMode())
style->setDisplay(INLINE_BLOCK);
// After performing the display mutation, check table rows. We do not honor position:relative on
@@ -1738,14 +1738,14 @@ void CSSStyleSelector::adjustRenderStyle(RenderStyle* style, RenderStyle* parent
style->setPosition(StaticPosition);
// FIXME: Since we don't support block-flow on either tables or flexible boxes yet, disallow setting
- // of block-flow to anything other than TopToBottomBlockFlow.
+ // of block-flow to anything other than TopToBottomWritingMode.
// https://bugs.webkit.org/show_bug.cgi?id=46417 - Tables support
// https://bugs.webkit.org/show_bug.cgi?id=46418 - Flexible box support.
- if (style->blockFlow() != TopToBottomBlockFlow && (style->display() == TABLE || style->display() == INLINE_TABLE
+ if (style->writingMode() != TopToBottomWritingMode && (style->display() == TABLE || style->display() == INLINE_TABLE
|| style->display() == TABLE_HEADER_GROUP || style->display() == TABLE_ROW_GROUP
|| style->display() == TABLE_FOOTER_GROUP || style->display() == TABLE_ROW || style->display() == TABLE_CELL
|| style->display() == BOX || style->display() == INLINE_BOX))
- style->setBlockFlow(TopToBottomBlockFlow);
+ style->setWritingMode(TopToBottomWritingMode);
}
// Make sure our z-index value is only applied if the object is positioned.
@@ -2946,7 +2946,7 @@ void CSSStyleSelector::applyDeclarations(bool isImportant, int startIndex, int e
if (applyFirst) {
COMPILE_ASSERT(firstCSSProperty == CSSPropertyColor, CSS_color_is_first_property);
- COMPILE_ASSERT(CSSPropertyZoom == CSSPropertyColor + 14, CSS_zoom_is_end_of_first_prop_range);
+ COMPILE_ASSERT(CSSPropertyZoom == CSSPropertyColor + 13, CSS_zoom_is_end_of_first_prop_range);
COMPILE_ASSERT(CSSPropertyLineHeight == CSSPropertyZoom + 1, CSS_line_height_is_after_zoom);
// give special priority to font-xxx, color properties, etc
@@ -3134,7 +3134,7 @@ void CSSStyleSelector::applyProperty(int id, CSSValue *value)
bool isInherit = m_parentNode && valueType == CSSValue::CSS_INHERIT;
bool isInitial = valueType == CSSValue::CSS_INITIAL || (!m_parentNode && valueType == CSSValue::CSS_INHERIT);
- id = CSSProperty::resolveDirectionAwareProperty(id, m_style->direction(), m_style->blockFlow());
+ id = CSSProperty::resolveDirectionAwareProperty(id, m_style->direction(), m_style->writingMode());
if (m_checker.m_matchVisitedPseudoClass && !isValidVisitedLinkProperty(id)) {
// Limit the properties that can be applied to only the ones honored by :visited.
@@ -5571,50 +5571,8 @@ void CSSStyleSelector::applyProperty(int id, CSSValue *value)
#endif
// CSS Text Layout Module Level 3: Vertical writing support
- case CSSPropertyWebkitBlockFlow:
- HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE(blockFlow, BlockFlow)
- return;
-
case CSSPropertyWebkitWritingMode:
- // The 'writing-mode' property is a shorthand property for the 'direction' property and the 'block-flow' property.
- if (isInherit) {
- m_style->setDirection(m_parentStyle->direction());
- m_style->setBlockFlow(m_parentStyle->blockFlow());
- } else if (isInitial) {
- m_style->setDirection(m_style->initialDirection());
- m_style->setBlockFlow(m_style->initialBlockFlow());
- } else {
- if (!primitiveValue)
- return;
- switch (primitiveValue->getIdent()) {
- case CSSValueLrTb:
- m_style->setDirection(LTR);
- m_style->setBlockFlow(TopToBottomBlockFlow);
- break;
- case CSSValueRlTb:
- m_style->setDirection(RTL);
- m_style->setBlockFlow(TopToBottomBlockFlow);
- break;
- case CSSValueTbRl:
- m_style->setDirection(LTR);
- m_style->setBlockFlow(RightToLeftBlockFlow);
- break;
- case CSSValueBtRl:
- m_style->setDirection(RTL);
- m_style->setBlockFlow(RightToLeftBlockFlow);
- break;
- case CSSValueTbLr:
- m_style->setDirection(LTR);
- m_style->setBlockFlow(LeftToRightBlockFlow);
- break;
- case CSSValueBtLr:
- m_style->setDirection(RTL);
- m_style->setBlockFlow(LeftToRightBlockFlow);
- break;
- default:
- break;
- }
- }
+ HANDLE_INHERIT_AND_INITIAL_AND_PRIMITIVE(writingMode, WritingMode)
return;
#if ENABLE(SVG)
diff --git a/WebCore/css/CSSValueKeywords.in b/WebCore/css/CSSValueKeywords.in
index b8d01b8..fa0a214 100644
--- a/WebCore/css/CSSValueKeywords.in
+++ b/WebCore/css/CSSValueKeywords.in
@@ -751,16 +751,16 @@ windowed
manual
# auto
-# -webkit-block-flow
-tb
-rl
-lr
-bt
-
# -webkit-writing-mode
+# SVG compatibility
+lr
+rl
+tb
lr-tb
rl-tb
tb-rl
-bt-rl
-tb-lr
-bt-lr
+# Standard values from CSS3
+horizontal-tb
+vertical-rl
+vertical-lr
+horizontal-bt
diff --git a/WebCore/rendering/RenderBlock.cpp b/WebCore/rendering/RenderBlock.cpp
index bc8d4c1..63288a7 100644
--- a/WebCore/rendering/RenderBlock.cpp
+++ b/WebCore/rendering/RenderBlock.cpp
@@ -90,7 +90,7 @@ RenderBlock::MarginInfo::MarginInfo(RenderBlock* block, int beforeBorderPadding,
// we're positioned, floating, a table cell.
m_canCollapseWithChildren = !block->isRenderView() && !block->isRoot() && !block->isPositioned()
&& !block->isFloating() && !block->isTableCell() && !block->hasOverflowClip() && !block->isInlineBlockOrInlineTable()
- && !block->isBlockFlowRoot();
+ && !block->isWritingModeRoot();
m_canCollapseMarginBeforeWithChildren = m_canCollapseWithChildren && (beforeBorderPadding == 0) && block->style()->marginBeforeCollapse() != MSEPARATE;
@@ -1319,7 +1319,7 @@ void RenderBlock::addOverflowFromFloats()
bool RenderBlock::expandsToEncloseOverhangingFloats() const
{
return isInlineBlockOrInlineTable() || isFloatingOrPositioned() || hasOverflowClip() || (parent() && parent()->isFlexibleBox())
- || hasColumns() || isTableCell() || isFieldset() || isBlockFlowRoot();
+ || hasColumns() || isTableCell() || isFieldset() || isWritingModeRoot();
}
void RenderBlock::adjustPositionedBlock(RenderBox* child, const MarginInfo& marginInfo)
@@ -1720,7 +1720,7 @@ void RenderBlock::handleAfterSideOfBlock(int beforeSide, int afterSide, MarginIn
void RenderBlock::setLogicalLeftForChild(RenderBox* child, int logicalLeft, ApplyLayoutDeltaMode applyDelta)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (applyDelta == ApplyLayoutDelta)
view()->addLayoutDelta(IntSize(child->x() - logicalLeft, 0));
child->setX(logicalLeft);
@@ -1733,7 +1733,7 @@ void RenderBlock::setLogicalLeftForChild(RenderBox* child, int logicalLeft, Appl
void RenderBlock::setLogicalTopForChild(RenderBox* child, int logicalTop, ApplyLayoutDeltaMode applyDelta)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (applyDelta == ApplyLayoutDelta)
view()->addLayoutDelta(IntSize(0, child->y() - logicalTop));
child->setY(logicalTop);
@@ -1858,7 +1858,7 @@ void RenderBlock::layoutBlockChild(RenderBox* child, MarginInfo& marginInfo, int
if (childRenderBlock) {
if (markDescendantsWithFloats)
childRenderBlock->markAllDescendantsWithFloatsForLayout();
- if (!child->isBlockFlowRoot())
+ if (!child->isWritingModeRoot())
previousFloatLogicalBottom = max(previousFloatLogicalBottom, oldLogicalTop + childRenderBlock->lowestFloatLogicalBottom());
}
@@ -2936,7 +2936,7 @@ RenderBlock::FloatingObject* RenderBlock::insertFloatingObject(RenderBox* o)
// Our location is irrelevant if we're unsplittable or no pagination is in effect.
// Just go ahead and lay out the float.
bool affectedByPagination = o->isRenderBlock() && view()->layoutState()->m_pageHeight;
- if (!affectedByPagination || isBlockFlowRoot()) // We are unsplittable if we're a block flow root.
+ if (!affectedByPagination || isWritingModeRoot()) // We are unsplittable if we're a block flow root.
o->layoutIfNeeded();
else {
o->computeLogicalWidth();
@@ -3720,7 +3720,7 @@ void RenderBlock::clearFloats()
int RenderBlock::addOverhangingFloats(RenderBlock* child, int logicalLeftOffset, int logicalTopOffset, bool makeChildPaintOtherFloats)
{
// Prevent floats from being added to the canvas by the root element, e.g., <html>.
- if (child->hasOverflowClip() || !child->containsFloats() || child->isRoot() || child->hasColumns() || child->isBlockFlowRoot())
+ if (child->hasOverflowClip() || !child->containsFloats() || child->isRoot() || child->hasColumns() || child->isWritingModeRoot())
return 0;
int lowestFloatLogicalBottom = 0;
@@ -3735,8 +3735,8 @@ int RenderBlock::addOverhangingFloats(RenderBlock* child, int logicalLeftOffset,
if (logicalBottom > logicalHeight()) {
// If the object is not in the list, we add it now.
if (!containsFloat(r->m_renderer)) {
- int leftOffset = style()->isVerticalBlockFlow() ? logicalLeftOffset : logicalTopOffset;
- int topOffset = style()->isVerticalBlockFlow() ? logicalTopOffset : logicalLeftOffset;
+ int leftOffset = style()->isHorizontalWritingMode() ? logicalLeftOffset : logicalTopOffset;
+ int topOffset = style()->isHorizontalWritingMode() ? logicalTopOffset : logicalLeftOffset;
FloatingObject* floatingObj = new FloatingObject(r->type(), IntRect(r->left() - leftOffset, r->top() - topOffset, r->width(), r->height()));
floatingObj->m_renderer = r->m_renderer;
@@ -3777,7 +3777,7 @@ void RenderBlock::addIntrudingFloats(RenderBlock* prev, int logicalLeftOffset, i
if (!prev->m_floatingObjects)
return;
- logicalLeftOffset += (style()->isVerticalBlockFlow() ? marginLeft() : marginTop());
+ logicalLeftOffset += (style()->isHorizontalWritingMode() ? marginLeft() : marginTop());
DeprecatedPtrListIterator<FloatingObject> it(*prev->m_floatingObjects);
for (FloatingObject *r; (r = it.current()); ++it) {
@@ -3794,8 +3794,8 @@ void RenderBlock::addIntrudingFloats(RenderBlock* prev, int logicalLeftOffset, i
}
}
if (!f) {
- int leftOffset = style()->isVerticalBlockFlow() ? logicalLeftOffset : logicalTopOffset;
- int topOffset = style()->isVerticalBlockFlow() ? logicalTopOffset : logicalLeftOffset;
+ int leftOffset = style()->isHorizontalWritingMode() ? logicalLeftOffset : logicalTopOffset;
+ int topOffset = style()->isHorizontalWritingMode() ? logicalTopOffset : logicalLeftOffset;
FloatingObject* floatingObj = new FloatingObject(r->type(), IntRect(r->left() - leftOffset, r->top() - topOffset, r->width(), r->height()));
@@ -3805,7 +3805,7 @@ void RenderBlock::addIntrudingFloats(RenderBlock* prev, int logicalLeftOffset, i
// into account. Only apply this code if prev is the parent, since otherwise the left margin
// will get applied twice.
if (prev != parent())
- floatingObj->setLeft(floatingObj->left() + (style()->isVerticalBlockFlow() ? prev->marginLeft() : prev->marginTop()));
+ floatingObj->setLeft(floatingObj->left() + (style()->isHorizontalWritingMode() ? prev->marginLeft() : prev->marginTop()));
floatingObj->m_shouldPaint = false; // We are not in the direct inheritance chain for this float. We will never paint it.
floatingObj->m_renderer = r->m_renderer;
@@ -5997,12 +5997,12 @@ int RenderBlock::collapsedMarginBeforeForChild(RenderBox* child) const
{
// If the child has the same directionality as we do, then we can just return its
// collapsed margin.
- if (!child->isBlockFlowRoot())
+ if (!child->isWritingModeRoot())
return child->collapsedMarginBefore();
// The child has a different directionality. If the child is parallel, then it's just
// flipped relative to us. We can use the collapsed margin for the opposite edge.
- if (child->style()->isVerticalBlockFlow() == style()->isVerticalBlockFlow())
+ if (child->style()->isHorizontalWritingMode() == style()->isHorizontalWritingMode())
return child->collapsedMarginAfter();
// The child is perpendicular to us, which means its margins don't collapse but are on the
@@ -6014,12 +6014,12 @@ int RenderBlock::collapsedMarginAfterForChild(RenderBox* child) const
{
// If the child has the same directionality as we do, then we can just return its
// collapsed margin.
- if (!child->isBlockFlowRoot())
+ if (!child->isWritingModeRoot())
return child->collapsedMarginAfter();
// The child has a different directionality. If the child is parallel, then it's just
// flipped relative to us. We can use the collapsed margin for the opposite edge.
- if (child->style()->isVerticalBlockFlow() == style()->isVerticalBlockFlow())
+ if (child->style()->isHorizontalWritingMode() == style()->isHorizontalWritingMode())
return child->collapsedMarginBefore();
// The child is perpendicular to us, which means its margins don't collapse but are on the
@@ -6029,14 +6029,14 @@ int RenderBlock::collapsedMarginAfterForChild(RenderBox* child) const
int RenderBlock::marginBeforeForChild(RenderBoxModelObject* child) const
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
return child->marginTop();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return child->marginBottom();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return child->marginLeft();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return child->marginRight();
}
ASSERT_NOT_REACHED();
@@ -6045,14 +6045,14 @@ int RenderBlock::marginBeforeForChild(RenderBoxModelObject* child) const
int RenderBlock::marginAfterForChild(RenderBoxModelObject* child) const
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
return child->marginBottom();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return child->marginTop();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return child->marginRight();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return child->marginLeft();
}
ASSERT_NOT_REACHED();
@@ -6061,21 +6061,21 @@ int RenderBlock::marginAfterForChild(RenderBoxModelObject* child) const
int RenderBlock::marginStartForChild(RenderBoxModelObject* child) const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return style()->isLeftToRightDirection() ? child->marginLeft() : child->marginRight();
return style()->isLeftToRightDirection() ? child->marginTop() : child->marginBottom();
}
int RenderBlock::marginEndForChild(RenderBoxModelObject* child) const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return style()->isLeftToRightDirection() ? child->marginRight() : child->marginLeft();
return style()->isLeftToRightDirection() ? child->marginBottom() : child->marginTop();
}
void RenderBlock::setMarginStartForChild(RenderBox* child, int margin)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (style()->isLeftToRightDirection())
child->setMarginLeft(margin);
else
@@ -6090,7 +6090,7 @@ void RenderBlock::setMarginStartForChild(RenderBox* child, int margin)
void RenderBlock::setMarginEndForChild(RenderBox* child, int margin)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (style()->isLeftToRightDirection())
child->setMarginRight(margin);
else
@@ -6105,17 +6105,17 @@ void RenderBlock::setMarginEndForChild(RenderBox* child, int margin)
void RenderBlock::setMarginBeforeForChild(RenderBox* child, int margin)
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
child->setMarginTop(margin);
break;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
child->setMarginBottom(margin);
break;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
child->setMarginLeft(margin);
break;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
child->setMarginRight(margin);
break;
}
@@ -6123,17 +6123,17 @@ void RenderBlock::setMarginBeforeForChild(RenderBox* child, int margin)
void RenderBlock::setMarginAfterForChild(RenderBox* child, int margin)
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
child->setMarginBottom(margin);
break;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
child->setMarginTop(margin);
break;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
child->setMarginRight(margin);
break;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
child->setMarginLeft(margin);
break;
}
@@ -6153,7 +6153,7 @@ RenderBlock::MarginValues RenderBlock::marginValuesForChild(RenderBox* child)
// If the child has the same directionality as we do, then we can just return its
// margins in the same direction.
- if (!child->isBlockFlowRoot()) {
+ if (!child->isWritingModeRoot()) {
if (childRenderBlock) {
childBeforePositive = childRenderBlock->maxPositiveMarginBefore();
childBeforeNegative = childRenderBlock->maxNegativeMarginBefore();
@@ -6163,7 +6163,7 @@ RenderBlock::MarginValues RenderBlock::marginValuesForChild(RenderBox* child)
beforeMargin = child->marginBefore();
afterMargin = child->marginAfter();
}
- } else if (child->style()->isVerticalBlockFlow() == style()->isVerticalBlockFlow()) {
+ } else if (child->style()->isHorizontalWritingMode() == style()->isHorizontalWritingMode()) {
// The child has a different directionality. If the child is parallel, then it's just
// flipped relative to us. We can use the margins for the opposite edges.
if (childRenderBlock) {
diff --git a/WebCore/rendering/RenderBlock.h b/WebCore/rendering/RenderBlock.h
index aad5ff8..2533852 100644
--- a/WebCore/rendering/RenderBlock.h
+++ b/WebCore/rendering/RenderBlock.h
@@ -171,9 +171,9 @@ public:
// Accessors for logical width/height and margins in the containing block's block-flow direction.
enum ApplyLayoutDeltaMode { ApplyLayoutDelta, DoNotApplyLayoutDelta };
- int logicalWidthForChild(RenderBox* child) { return style()->isVerticalBlockFlow() ? child->width() : child->height(); }
- int logicalHeightForChild(RenderBox* child) { return style()->isVerticalBlockFlow() ? child->height() : child->width(); }
- int logicalTopForChild(RenderBox* child) { return style()->isVerticalBlockFlow() ? child->y() : child->x(); }
+ int logicalWidthForChild(RenderBox* child) { return style()->isHorizontalWritingMode() ? child->width() : child->height(); }
+ int logicalHeightForChild(RenderBox* child) { return style()->isHorizontalWritingMode() ? child->height() : child->width(); }
+ int logicalTopForChild(RenderBox* child) { return style()->isHorizontalWritingMode() ? child->y() : child->x(); }
void setLogicalLeftForChild(RenderBox* child, int logicalLeft, ApplyLayoutDeltaMode = DoNotApplyLayoutDelta);
void setLogicalTopForChild(RenderBox* child, int logicalTop, ApplyLayoutDeltaMode = DoNotApplyLayoutDelta);
int marginBeforeForChild(RenderBoxModelObject* child) const;
@@ -263,8 +263,8 @@ protected:
virtual void paint(PaintInfo&, int tx, int ty);
virtual void paintObject(PaintInfo&, int tx, int ty);
- int logicalRightOffsetForContent() const { return style()->isVerticalBlockFlow() ? borderLeft() + paddingLeft() + availableLogicalWidth() : borderTop() + paddingTop() + availableLogicalWidth(); }
- int logicalLeftOffsetForContent() const { return style()->isVerticalBlockFlow() ? borderLeft() + paddingLeft() : borderTop() + paddingTop(); }
+ int logicalRightOffsetForContent() const { return style()->isHorizontalWritingMode() ? borderLeft() + paddingLeft() + availableLogicalWidth() : borderTop() + paddingTop() + availableLogicalWidth(); }
+ int logicalLeftOffsetForContent() const { return style()->isHorizontalWritingMode() ? borderLeft() + paddingLeft() : borderTop() + paddingTop(); }
int logicalRightOffsetForLine(int position, int fixedOffset, bool applyTextIndent = true, int* logicalHeightRemaining = 0) const;
int logicalLeftOffsetForLine(int position, int fixedOffset, bool applyTextIndent = true, int* logicalHeightRemaining = 0) const;
@@ -414,35 +414,35 @@ private:
bool m_isPlaced : 1;
};
- int logicalTopForFloat(FloatingObject* child) const { return style()->isVerticalBlockFlow() ? child->top() : child->left(); }
- int logicalBottomForFloat(FloatingObject* child) const { return style()->isVerticalBlockFlow() ? child->bottom() : child->right(); }
- int logicalLeftForFloat(FloatingObject* child) const { return style()->isVerticalBlockFlow() ? child->left() : child->top(); }
- int logicalRightForFloat(FloatingObject* child) const { return style()->isVerticalBlockFlow() ? child->right() : child->bottom(); }
- int logicalWidthForFloat(FloatingObject* child) const { return style()->isVerticalBlockFlow() ? child->width() : child->height(); }
+ int logicalTopForFloat(FloatingObject* child) const { return style()->isHorizontalWritingMode() ? child->top() : child->left(); }
+ int logicalBottomForFloat(FloatingObject* child) const { return style()->isHorizontalWritingMode() ? child->bottom() : child->right(); }
+ int logicalLeftForFloat(FloatingObject* child) const { return style()->isHorizontalWritingMode() ? child->left() : child->top(); }
+ int logicalRightForFloat(FloatingObject* child) const { return style()->isHorizontalWritingMode() ? child->right() : child->bottom(); }
+ int logicalWidthForFloat(FloatingObject* child) const { return style()->isHorizontalWritingMode() ? child->width() : child->height(); }
void setLogicalTopForFloat(FloatingObject* child, int logicalTop)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
child->setTop(logicalTop);
else
child->setLeft(logicalTop);
}
void setLogicalLeftForFloat(FloatingObject* child, int logicalLeft)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
child->setLeft(logicalLeft);
else
child->setTop(logicalLeft);
}
void setLogicalHeightForFloat(FloatingObject* child, int logicalHeight)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
child->setHeight(logicalHeight);
else
child->setWidth(logicalHeight);
}
void setLogicalWidthForFloat(FloatingObject* child, int logicalWidth)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
child->setWidth(logicalWidth);
else
child->setHeight(logicalWidth);
diff --git a/WebCore/rendering/RenderBox.cpp b/WebCore/rendering/RenderBox.cpp
index 9862a7b..d54af1f 100644
--- a/WebCore/rendering/RenderBox.cpp
+++ b/WebCore/rendering/RenderBox.cpp
@@ -85,14 +85,14 @@ RenderBox::~RenderBox()
int RenderBox::marginBefore() const
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
return m_marginTop;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return m_marginBottom;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return m_marginLeft;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return m_marginRight;
}
ASSERT_NOT_REACHED();
@@ -101,14 +101,14 @@ int RenderBox::marginBefore() const
int RenderBox::marginAfter() const
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
return m_marginBottom;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return m_marginTop;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return m_marginRight;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return m_marginLeft;
}
ASSERT_NOT_REACHED();
@@ -117,21 +117,21 @@ int RenderBox::marginAfter() const
int RenderBox::marginStart() const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return style()->isLeftToRightDirection() ? m_marginLeft : m_marginRight;
return style()->isLeftToRightDirection() ? m_marginTop : m_marginBottom;
}
int RenderBox::marginEnd() const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return style()->isLeftToRightDirection() ? m_marginRight : m_marginLeft;
return style()->isLeftToRightDirection() ? m_marginBottom : m_marginTop;
}
void RenderBox::setMarginStart(int margin)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (style()->isLeftToRightDirection())
m_marginLeft = margin;
else
@@ -146,7 +146,7 @@ void RenderBox::setMarginStart(int margin)
void RenderBox::setMarginEnd(int margin)
{
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
if (style()->isLeftToRightDirection())
m_marginRight = margin;
else
@@ -161,17 +161,17 @@ void RenderBox::setMarginEnd(int margin)
void RenderBox::setMarginBefore(int margin)
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
m_marginTop = margin;
break;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
m_marginBottom = margin;
break;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
m_marginLeft = margin;
break;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
m_marginRight = margin;
break;
}
@@ -179,17 +179,17 @@ void RenderBox::setMarginBefore(int margin)
void RenderBox::setMarginAfter(int margin)
{
- switch (style()->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (style()->writingMode()) {
+ case TopToBottomWritingMode:
m_marginBottom = margin;
break;
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
m_marginTop = margin;
break;
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
m_marginRight = margin;
break;
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
m_marginLeft = margin;
break;
}
@@ -300,13 +300,13 @@ void RenderBox::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle
// Set the text color if we're the body.
if (isBody())
document()->setTextColor(style()->visitedDependentColor(CSSPropertyColor));
- else if (isRoot() && (!oldStyle || oldStyle->blockFlow() != style()->blockFlow() || oldStyle->direction() != style()->direction())) {
+ else if (isRoot() && (!oldStyle || oldStyle->writingMode() != style()->writingMode() || oldStyle->direction() != style()->direction())) {
// Propagate the new block flow and direction up to the RenderView.
// FIXME: WinIE seems to propagate from the <body> as well. We may want to consider doing that at some point.
RenderView* viewRenderer = view();
RenderStyle* viewStyle = viewRenderer->style();
- if (viewStyle->blockFlow() != style()->blockFlow() || viewStyle->direction() != style()->direction()) {
- viewStyle->setBlockFlow(style()->blockFlow());
+ if (viewStyle->writingMode() != style()->writingMode() || viewStyle->direction() != style()->direction()) {
+ viewStyle->setWritingMode(style()->writingMode());
viewStyle->setDirection(style()->direction());
viewRenderer->setNeedsLayoutAndPrefWidthsRecalc();
}
@@ -1099,7 +1099,7 @@ int RenderBox::perpendicularContainingBlockLogicalHeight() const
// Rather than making the child be completely unconstrained, WinIE uses the viewport width and height
// as a constraint. We do that for now as well even though it's likely being unconstrained is what the spec
// will decide.
- return containingBlockStyle->isVerticalBlockFlow() ? view()->frameView()->visibleHeight() : view()->frameView()->visibleWidth();
+ return containingBlockStyle->isHorizontalWritingMode() ? view()->frameView()->visibleHeight() : view()->frameView()->visibleWidth();
}
// Use the content box logical height as specified by the style.
@@ -1443,7 +1443,7 @@ void RenderBox::computeLogicalWidth()
RenderBlock* cb = containingBlock();
int containerLogicalWidth = max(0, containingBlockLogicalWidthForContent());
- bool hasPerpendicularContainingBlock = cb->style()->isVerticalBlockFlow() != style()->isVerticalBlockFlow();
+ bool hasPerpendicularContainingBlock = cb->style()->isHorizontalWritingMode() != style()->isHorizontalWritingMode();
int containerWidthInInlineDirection = containerLogicalWidth;
if (hasPerpendicularContainingBlock)
containerWidthInInlineDirection = perpendicularContainingBlockLogicalHeight();
@@ -1618,7 +1618,7 @@ void RenderBox::computeLogicalHeight()
computePositionedLogicalHeight();
} else {
RenderBlock* cb = containingBlock();
- bool hasPerpendicularContainingBlock = cb->style()->isVerticalBlockFlow() != style()->isVerticalBlockFlow();
+ bool hasPerpendicularContainingBlock = cb->style()->isHorizontalWritingMode() != style()->isHorizontalWritingMode();
if (!hasPerpendicularContainingBlock)
computeBlockDirectionMargins(cb);
@@ -1699,7 +1699,7 @@ void RenderBox::computeLogicalHeight()
if (document()->printing())
visHeight = static_cast<int>(view()->pageHeight());
else {
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
visHeight = view()->viewHeight();
else
visHeight = view()->viewWidth();
@@ -1907,7 +1907,7 @@ int RenderBox::availableLogicalHeightUsing(const Length& h) const
return computeContentBoxLogicalHeight(h.value());
if (isRenderView())
- return style()->isVerticalBlockFlow() ? toRenderView(this)->frameView()->visibleHeight() : toRenderView(this)->frameView()->visibleWidth();
+ return style()->isHorizontalWritingMode() ? toRenderView(this)->frameView()->visibleHeight() : toRenderView(this)->frameView()->visibleWidth();
// We need to stop here, since we don't want to increase the height of the table
// artificially. We're going to rely on this cell getting expanded to some new
@@ -3038,7 +3038,7 @@ bool RenderBox::shrinkToAvoidFloats() const
bool RenderBox::avoidsFloats() const
{
- return isReplaced() || hasOverflowClip() || isHR() || isBlockFlowRoot();
+ return isReplaced() || hasOverflowClip() || isHR() || isWritingModeRoot();
}
void RenderBox::addShadowOverflow()
diff --git a/WebCore/rendering/RenderBox.h b/WebCore/rendering/RenderBox.h
index 29ffdb6..dc7a4b3 100644
--- a/WebCore/rendering/RenderBox.h
+++ b/WebCore/rendering/RenderBox.h
@@ -50,41 +50,41 @@ public:
void setWidth(int width) { m_frameRect.setWidth(width); }
void setHeight(int height) { m_frameRect.setHeight(height); }
- int logicalLeft() const { return style()->isVerticalBlockFlow() ? x() : y(); }
- int logicalTop() const { return style()->isVerticalBlockFlow() ? y() : x(); }
- int logicalWidth() const { return style()->isVerticalBlockFlow() ? width() : height(); }
- int logicalHeight() const { return style()->isVerticalBlockFlow() ? height() : width(); }
+ int logicalLeft() const { return style()->isHorizontalWritingMode() ? x() : y(); }
+ int logicalTop() const { return style()->isHorizontalWritingMode() ? y() : x(); }
+ int logicalWidth() const { return style()->isHorizontalWritingMode() ? width() : height(); }
+ int logicalHeight() const { return style()->isHorizontalWritingMode() ? height() : width(); }
void setLogicalLeft(int left)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
setX(left);
else
setY(left);
}
void setLogicalTop(int top)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
setY(top);
else
setX(top);
}
void setLogicalWidth(int size)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
setWidth(size);
else
setHeight(size);
}
void setLogicalHeight(int size)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
setHeight(size);
else
setWidth(size);
}
void setLogicalLocation(int left, int top)
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
setLocation(left, top);
else
setLocation(top, left);
@@ -150,8 +150,8 @@ public:
int contentWidth() const { return clientWidth() - paddingLeft() - paddingRight(); }
int contentHeight() const { return clientHeight() - paddingTop() - paddingBottom(); }
- int contentLogicalWidth() const { return style()->isVerticalBlockFlow() ? contentWidth() : contentHeight(); }
- int contentLogicalHeight() const { return style()->isVerticalBlockFlow() ? contentHeight() : contentWidth(); }
+ int contentLogicalWidth() const { return style()->isHorizontalWritingMode() ? contentWidth() : contentHeight(); }
+ int contentLogicalHeight() const { return style()->isHorizontalWritingMode() ? contentHeight() : contentWidth(); }
// IE extensions. Used to calculate offsetWidth/Height. Overridden by inlines (RenderFlow)
// to return the remaining width on a given line (and the height of a single line).
@@ -272,12 +272,12 @@ public:
bool stretchesToViewport() const
{
- return document()->inQuirksMode() && style()->logicalHeight().isAuto() && !isFloatingOrPositioned() && (isRoot() || isBody()) && !isBlockFlowRoot();
+ return document()->inQuirksMode() && style()->logicalHeight().isAuto() && !isFloatingOrPositioned() && (isRoot() || isBody()) && !isWritingModeRoot();
}
virtual IntSize intrinsicSize() const { return IntSize(); }
- int intrinsicLogicalWidth() const { return style()->isVerticalBlockFlow() ? intrinsicSize().width() : intrinsicSize().height(); }
- int intrinsicLogicalHeight() const { return style()->isVerticalBlockFlow() ? intrinsicSize().height() : intrinsicSize().width(); }
+ int intrinsicLogicalWidth() const { return style()->isHorizontalWritingMode() ? intrinsicSize().width() : intrinsicSize().height(); }
+ int intrinsicLogicalHeight() const { return style()->isHorizontalWritingMode() ? intrinsicSize().height() : intrinsicSize().width(); }
// Whether or not the element shrinks to its intrinsic width (rather than filling the width
// of a containing block). HTML4 buttons, <select>s, <input>s, legends, and floating/compact elements do this.
@@ -301,12 +301,12 @@ public:
// There are a few cases where we need to refer specifically to the available physical width and available physical height.
// Relative positioning is one of those cases, since left/top offsets are physical.
- int availableWidth() const { return style()->isVerticalBlockFlow() ? availableLogicalWidth() : availableLogicalHeight(); }
- int availableHeight() const { return style()->isVerticalBlockFlow() ? availableLogicalHeight() : availableLogicalWidth(); }
+ int availableWidth() const { return style()->isHorizontalWritingMode() ? availableLogicalWidth() : availableLogicalHeight(); }
+ int availableHeight() const { return style()->isHorizontalWritingMode() ? availableLogicalHeight() : availableLogicalWidth(); }
virtual int verticalScrollbarWidth() const;
int horizontalScrollbarHeight() const;
- int scrollbarLogicalHeight() const { return style()->isVerticalBlockFlow() ? horizontalScrollbarHeight() : verticalScrollbarWidth(); }
+ int scrollbarLogicalHeight() const { return style()->isHorizontalWritingMode() ? horizontalScrollbarHeight() : verticalScrollbarWidth(); }
virtual bool scroll(ScrollDirection, ScrollGranularity, float multiplier = 1, Node** stopNode = 0);
bool canBeScrolledAndHasScrollableArea() const;
virtual bool canBeProgramaticallyScrolled(bool) const;
@@ -360,7 +360,7 @@ public:
virtual void markDescendantBlocksAndLinesForLayout(bool inLayout = true);
- bool isBlockFlowRoot() const { return !parent() || parent()->style()->blockFlow() != style()->blockFlow(); }
+ bool isWritingModeRoot() const { return !parent() || parent()->style()->writingMode() != style()->writingMode(); }
protected:
virtual void styleWillChange(StyleDifference, const RenderStyle* newStyle);
diff --git a/WebCore/rendering/RenderFieldset.cpp b/WebCore/rendering/RenderFieldset.cpp
index 4a40049..12386e9 100644
--- a/WebCore/rendering/RenderFieldset.cpp
+++ b/WebCore/rendering/RenderFieldset.cpp
@@ -141,7 +141,7 @@ void RenderFieldset::paintBoxDecorations(PaintInfo& paintInfo, int tx, int ty)
// FIXME: We need to work with "rl" and "bt" block flow directions. In those
// cases the legend is embedded in the right and bottom borders respectively.
// https://bugs.webkit.org/show_bug.cgi?id=47236
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
int yOff = (legend->y() > 0) ? 0 : (legend->height() - borderTop()) / 2;
h -= yOff;
ty += yOff;
@@ -166,7 +166,7 @@ void RenderFieldset::paintBoxDecorations(PaintInfo& paintInfo, int tx, int ty)
// FIXME: We need to work with "rl" and "bt" block flow directions. In those
// cases the legend is embedded in the right and bottom borders respectively.
// https://bugs.webkit.org/show_bug.cgi?id=47236
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
int clipTop = ty;
int clipHeight = max(static_cast<int>(style()->borderTopWidth()), legend->height());
graphicsContext->clipOut(IntRect(tx + legend->x(), clipTop, legend->width(), clipHeight));
@@ -195,7 +195,7 @@ void RenderFieldset::paintMask(PaintInfo& paintInfo, int tx, int ty)
// FIXME: We need to work with "rl" and "bt" block flow directions. In those
// cases the legend is embedded in the right and bottom borders respectively.
// https://bugs.webkit.org/show_bug.cgi?id=47236
- if (style()->isVerticalBlockFlow()) {
+ if (style()->isHorizontalWritingMode()) {
int yOff = (legend->y() > 0) ? 0 : (legend->height() - borderTop()) / 2;
h -= yOff;
ty += yOff;
diff --git a/WebCore/rendering/RenderImage.cpp b/WebCore/rendering/RenderImage.cpp
index e7624de..2ed20c4 100644
--- a/WebCore/rendering/RenderImage.cpp
+++ b/WebCore/rendering/RenderImage.cpp
@@ -442,7 +442,7 @@ int RenderImage::computeReplacedLogicalWidth(bool includeMaxWidth) const
logicalWidth = computeReplacedLogicalWidthUsing(style()->logicalWidth());
else if (m_imageResource->usesImageContainerSize()) {
IntSize size = m_imageResource->imageSize(style()->effectiveZoom());
- logicalWidth = style()->isVerticalBlockFlow() ? size.width() : size.height();
+ logicalWidth = style()->isHorizontalWritingMode() ? size.width() : size.height();
} else if (m_imageResource->imageHasRelativeWidth())
logicalWidth = 0; // If the image is relatively-sized, set the width to 0 until there is a set container size.
else
@@ -461,7 +461,7 @@ int RenderImage::computeReplacedLogicalHeight() const
logicalHeight = computeReplacedLogicalHeightUsing(style()->logicalHeight());
else if (m_imageResource->usesImageContainerSize()) {
IntSize size = m_imageResource->imageSize(style()->effectiveZoom());
- logicalHeight = style()->isVerticalBlockFlow() ? size.height() : size.width();
+ logicalHeight = style()->isHorizontalWritingMode() ? size.height() : size.width();
} else if (m_imageResource->imageHasRelativeHeight())
logicalHeight = 0; // If the image is relatively-sized, set the height to 0 until there is a set container size.
else
diff --git a/WebCore/rendering/RenderInline.cpp b/WebCore/rendering/RenderInline.cpp
index b4bfe2f..2eb275c 100644
--- a/WebCore/rendering/RenderInline.cpp
+++ b/WebCore/rendering/RenderInline.cpp
@@ -471,28 +471,28 @@ static int computeMargin(const RenderInline* renderer, const Length& margin)
int RenderInline::marginLeft() const
{
- if (!style()->isVerticalBlockFlow())
+ if (!style()->isHorizontalWritingMode())
return 0;
return computeMargin(this, style()->marginLeft());
}
int RenderInline::marginRight() const
{
- if (!style()->isVerticalBlockFlow())
+ if (!style()->isHorizontalWritingMode())
return 0;
return computeMargin(this, style()->marginRight());
}
int RenderInline::marginTop() const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return 0;
return computeMargin(this, style()->marginTop());
}
int RenderInline::marginBottom() const
{
- if (style()->isVerticalBlockFlow())
+ if (style()->isHorizontalWritingMode())
return 0;
return computeMargin(this, style()->marginBottom());
}
diff --git a/WebCore/rendering/RenderTableCell.cpp b/WebCore/rendering/RenderTableCell.cpp
index 735b82f..005d8df 100644
--- a/WebCore/rendering/RenderTableCell.cpp
+++ b/WebCore/rendering/RenderTableCell.cpp
@@ -165,34 +165,34 @@ void RenderTableCell::layout()
int RenderTableCell::paddingTop(bool includeIntrinsicPadding) const
{
int result = RenderBlock::paddingTop();
- if (!includeIntrinsicPadding || !style()->isVerticalBlockFlow())
+ if (!includeIntrinsicPadding || !style()->isHorizontalWritingMode())
return result;
- return result + (style()->blockFlow() == TopToBottomBlockFlow ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
+ return result + (style()->writingMode() == TopToBottomWritingMode ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
}
int RenderTableCell::paddingBottom(bool includeIntrinsicPadding) const
{
int result = RenderBlock::paddingBottom();
- if (!includeIntrinsicPadding || !style()->isVerticalBlockFlow())
+ if (!includeIntrinsicPadding || !style()->isHorizontalWritingMode())
return result;
- return result + (style()->blockFlow() == TopToBottomBlockFlow ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
+ return result + (style()->writingMode() == TopToBottomWritingMode ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
}
int RenderTableCell::paddingLeft(bool includeIntrinsicPadding) const
{
int result = RenderBlock::paddingLeft();
- if (!includeIntrinsicPadding || style()->isVerticalBlockFlow())
+ if (!includeIntrinsicPadding || style()->isHorizontalWritingMode())
return result;
- return result + (style()->blockFlow() == LeftToRightBlockFlow ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
+ return result + (style()->writingMode() == LeftToRightWritingMode ? intrinsicPaddingBefore() : intrinsicPaddingAfter());
}
int RenderTableCell::paddingRight(bool includeIntrinsicPadding) const
{
int result = RenderBlock::paddingRight();
- if (!includeIntrinsicPadding || style()->isVerticalBlockFlow())
+ if (!includeIntrinsicPadding || style()->isHorizontalWritingMode())
return result;
- return result + (style()->blockFlow() == LeftToRightBlockFlow ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
+ return result + (style()->writingMode() == LeftToRightWritingMode ? intrinsicPaddingAfter() : intrinsicPaddingBefore());
}
int RenderTableCell::paddingBefore(bool includeIntrinsicPadding) const
diff --git a/WebCore/rendering/RenderView.h b/WebCore/rendering/RenderView.h
index ff70e86..81d91f6 100644
--- a/WebCore/rendering/RenderView.h
+++ b/WebCore/rendering/RenderView.h
@@ -54,8 +54,8 @@ public:
// The same as the FrameView's layoutHeight/layoutWidth but with null check guards.
int viewHeight() const;
int viewWidth() const;
- int viewLogicalWidth() const { return style()->isVerticalBlockFlow() ? viewWidth() : viewHeight(); }
- int viewLogicalHeight() const { return style()->isVerticalBlockFlow() ? viewHeight() : viewWidth(); }
+ int viewLogicalWidth() const { return style()->isHorizontalWritingMode() ? viewWidth() : viewHeight(); }
+ int viewLogicalHeight() const { return style()->isHorizontalWritingMode() ? viewHeight() : viewWidth(); }
float zoomFactor() const;
diff --git a/WebCore/rendering/RootInlineBox.cpp b/WebCore/rendering/RootInlineBox.cpp
index 52586c5..3be9994 100644
--- a/WebCore/rendering/RootInlineBox.cpp
+++ b/WebCore/rendering/RootInlineBox.cpp
@@ -47,7 +47,7 @@ RootInlineBox::RootInlineBox(RenderBlock* block)
, m_lineBottom(0)
, m_paginationStrut(0)
{
- setIsVertical(!block->style()->isVerticalBlockFlow());
+ setIsVertical(!block->style()->isHorizontalWritingMode());
}
diff --git a/WebCore/rendering/style/RenderStyle.cpp b/WebCore/rendering/style/RenderStyle.cpp
index d243a7f..43aba57 100644
--- a/WebCore/rendering/style/RenderStyle.cpp
+++ b/WebCore/rendering/style/RenderStyle.cpp
@@ -446,7 +446,7 @@ StyleDifference RenderStyle::diff(const RenderStyle* other, unsigned& changedCon
return StyleDifferenceLayout;
// Check block flow direction.
- if (inherited_flags._blockFlow != other->inherited_flags._blockFlow)
+ if (inherited_flags.m_writingMode != other->inherited_flags.m_writingMode)
return StyleDifferenceLayout;
// Overflow returns a layout hint.
@@ -1079,56 +1079,56 @@ const Color RenderStyle::visitedDependentColor(int colorProperty) const
Length RenderStyle::logicalWidth() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return width();
return height();
}
Length RenderStyle::logicalHeight() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return height();
return width();
}
Length RenderStyle::logicalMinWidth() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return minWidth();
return minHeight();
}
Length RenderStyle::logicalMaxWidth() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return maxWidth();
return maxHeight();
}
Length RenderStyle::logicalMinHeight() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return minHeight();
return minWidth();
}
Length RenderStyle::logicalMaxHeight() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return maxHeight();
return maxWidth();
}
unsigned short RenderStyle::borderBeforeWidth() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return borderTopWidth();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return borderBottomWidth();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return borderLeftWidth();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return borderRightWidth();
}
ASSERT_NOT_REACHED();
@@ -1137,14 +1137,14 @@ unsigned short RenderStyle::borderBeforeWidth() const
unsigned short RenderStyle::borderAfterWidth() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return borderBottomWidth();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return borderTopWidth();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return borderRightWidth();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return borderLeftWidth();
}
ASSERT_NOT_REACHED();
@@ -1153,28 +1153,28 @@ unsigned short RenderStyle::borderAfterWidth() const
unsigned short RenderStyle::borderStartWidth() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? borderLeftWidth() : borderRightWidth();
return isLeftToRightDirection() ? borderTopWidth() : borderBottomWidth();
}
unsigned short RenderStyle::borderEndWidth() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? borderRightWidth() : borderLeftWidth();
return isLeftToRightDirection() ? borderBottomWidth() : borderTopWidth();
}
Length RenderStyle::marginBefore() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return marginTop();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return marginBottom();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return marginLeft();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return marginRight();
}
ASSERT_NOT_REACHED();
@@ -1183,14 +1183,14 @@ Length RenderStyle::marginBefore() const
Length RenderStyle::marginAfter() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return marginBottom();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return marginTop();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return marginRight();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return marginLeft();
}
ASSERT_NOT_REACHED();
@@ -1199,14 +1199,14 @@ Length RenderStyle::marginAfter() const
Length RenderStyle::marginBeforeUsing(const RenderStyle* otherStyle) const
{
- switch (otherStyle->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (otherStyle->writingMode()) {
+ case TopToBottomWritingMode:
return marginTop();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return marginBottom();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return marginLeft();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return marginRight();
}
ASSERT_NOT_REACHED();
@@ -1215,14 +1215,14 @@ Length RenderStyle::marginBeforeUsing(const RenderStyle* otherStyle) const
Length RenderStyle::marginAfterUsing(const RenderStyle* otherStyle) const
{
- switch (otherStyle->blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (otherStyle->writingMode()) {
+ case TopToBottomWritingMode:
return marginBottom();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return marginTop();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return marginRight();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return marginLeft();
}
ASSERT_NOT_REACHED();
@@ -1231,42 +1231,42 @@ Length RenderStyle::marginAfterUsing(const RenderStyle* otherStyle) const
Length RenderStyle::marginStart() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? marginLeft() : marginRight();
return isLeftToRightDirection() ? marginTop() : marginBottom();
}
Length RenderStyle::marginEnd() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? marginRight() : marginLeft();
return isLeftToRightDirection() ? marginBottom() : marginTop();
}
Length RenderStyle::marginStartUsing(const RenderStyle* otherStyle) const
{
- if (otherStyle->isVerticalBlockFlow())
+ if (otherStyle->isHorizontalWritingMode())
return otherStyle->isLeftToRightDirection() ? marginLeft() : marginRight();
return otherStyle->isLeftToRightDirection() ? marginTop() : marginBottom();
}
Length RenderStyle::marginEndUsing(const RenderStyle* otherStyle) const
{
- if (otherStyle->isVerticalBlockFlow())
+ if (otherStyle->isHorizontalWritingMode())
return otherStyle->isLeftToRightDirection() ? marginRight() : marginLeft();
return otherStyle->isLeftToRightDirection() ? marginBottom() : marginTop();
}
Length RenderStyle::paddingBefore() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return paddingTop();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return paddingBottom();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return paddingLeft();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return paddingRight();
}
ASSERT_NOT_REACHED();
@@ -1275,14 +1275,14 @@ Length RenderStyle::paddingBefore() const
Length RenderStyle::paddingAfter() const
{
- switch (blockFlow()) {
- case TopToBottomBlockFlow:
+ switch (writingMode()) {
+ case TopToBottomWritingMode:
return paddingBottom();
- case BottomToTopBlockFlow:
+ case BottomToTopWritingMode:
return paddingTop();
- case LeftToRightBlockFlow:
+ case LeftToRightWritingMode:
return paddingRight();
- case RightToLeftBlockFlow:
+ case RightToLeftWritingMode:
return paddingLeft();
}
ASSERT_NOT_REACHED();
@@ -1291,14 +1291,14 @@ Length RenderStyle::paddingAfter() const
Length RenderStyle::paddingStart() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? paddingLeft() : paddingRight();
return isLeftToRightDirection() ? paddingTop() : paddingBottom();
}
Length RenderStyle::paddingEnd() const
{
- if (isVerticalBlockFlow())
+ if (isHorizontalWritingMode())
return isLeftToRightDirection() ? paddingRight() : paddingLeft();
return isLeftToRightDirection() ? paddingBottom() : paddingTop();
}
diff --git a/WebCore/rendering/style/RenderStyle.h b/WebCore/rendering/style/RenderStyle.h
index 95e3b08..b9f77d2 100644
--- a/WebCore/rendering/style/RenderStyle.h
+++ b/WebCore/rendering/style/RenderStyle.h
@@ -178,7 +178,7 @@ protected:
(_force_backgrounds_to_white == other._force_backgrounds_to_white) &&
(_pointerEvents == other._pointerEvents) &&
(_insideLink == other._insideLink) &&
- (_blockFlow == other._blockFlow);
+ (m_writingMode == other.m_writingMode);
}
bool operator!=(const InheritedFlags& other) const { return !(*this == other); }
@@ -206,7 +206,7 @@ protected:
// 43 bits
// CSS Text Layout Module Level 3: Vertical writing support
- unsigned _blockFlow : 2; // EBlockFlowDirection
+ unsigned m_writingMode : 2; // WritingMode
// 45 bits
} inherited_flags;
@@ -283,7 +283,7 @@ protected:
inherited_flags._force_backgrounds_to_white = false;
inherited_flags._pointerEvents = initialPointerEvents();
inherited_flags._insideLink = NotInsideLink;
- inherited_flags._blockFlow = initialBlockFlow();
+ inherited_flags.m_writingMode = initialWritingMode();
noninherited_flags._effectiveDisplay = noninherited_flags._originalDisplay = initialDisplay();
noninherited_flags._overflowX = initialOverflowX();
@@ -743,8 +743,8 @@ public:
bool textSizeAdjust() const { return rareInheritedData->textSizeAdjust; }
ETextSecurity textSecurity() const { return static_cast<ETextSecurity>(rareInheritedData->textSecurity); }
- EBlockFlowDirection blockFlow() const { return static_cast<EBlockFlowDirection>(inherited_flags._blockFlow); }
- bool isVerticalBlockFlow() const { return blockFlow() == TopToBottomBlockFlow || blockFlow() == BottomToTopBlockFlow; }
+ WritingMode writingMode() const { return static_cast<WritingMode>(inherited_flags.m_writingMode); }
+ bool isHorizontalWritingMode() const { return writingMode() == TopToBottomWritingMode || writingMode() == BottomToTopWritingMode; }
ESpeak speak() { return static_cast<ESpeak>(rareInheritedData->speak); }
@@ -1124,7 +1124,7 @@ public:
originalDisplay() == INLINE_BOX || originalDisplay() == INLINE_TABLE;
}
- void setBlockFlow(EBlockFlowDirection v) { inherited_flags._blockFlow = v; }
+ void setWritingMode(WritingMode v) { inherited_flags.m_writingMode = v; }
// To tell if this style matched attribute selectors. This makes it impossible to share.
bool affectedByAttributeSelectors() const { return m_affectedByAttributeSelectors; }
@@ -1165,7 +1165,7 @@ public:
static ECaptionSide initialCaptionSide() { return CAPTOP; }
static EClear initialClear() { return CNONE; }
static TextDirection initialDirection() { return LTR; }
- static EBlockFlowDirection initialBlockFlow() { return TopToBottomBlockFlow; }
+ static WritingMode initialWritingMode() { return TopToBottomWritingMode; }
static EDisplay initialDisplay() { return INLINE; }
static EEmptyCell initialEmptyCells() { return SHOW; }
static EFloat initialFloating() { return FNONE; }
diff --git a/WebCore/rendering/style/RenderStyleConstants.h b/WebCore/rendering/style/RenderStyleConstants.h
index d751aa8..0112c03 100644
--- a/WebCore/rendering/style/RenderStyleConstants.h
+++ b/WebCore/rendering/style/RenderStyleConstants.h
@@ -129,8 +129,8 @@ enum EUnicodeBidi {
};
// CSS Text Layout Module Level 3: Vertical writing support
-enum EBlockFlowDirection {
- TopToBottomBlockFlow, RightToLeftBlockFlow, LeftToRightBlockFlow, BottomToTopBlockFlow
+enum WritingMode {
+ TopToBottomWritingMode, RightToLeftWritingMode, LeftToRightWritingMode, BottomToTopWritingMode
};
enum EFillAttachment {
diff --git a/WebCore/rendering/style/SVGRenderStyle.h b/WebCore/rendering/style/SVGRenderStyle.h
index d959ed1..8f0be39 100644
--- a/WebCore/rendering/style/SVGRenderStyle.h
+++ b/WebCore/rendering/style/SVGRenderStyle.h
@@ -67,7 +67,7 @@ public:
static LineJoin initialJoinStyle() { return MiterJoin; }
static EShapeRendering initialShapeRendering() { return SR_AUTO; }
static ETextAnchor initialTextAnchor() { return TA_START; }
- static EWritingMode initialWritingMode() { return WM_LRTB; }
+ static SVGWritingMode initialWritingMode() { return WM_LRTB; }
static EGlyphOrientation initialGlyphOrientationHorizontal() { return GO_0DEG; }
static EGlyphOrientation initialGlyphOrientationVertical() { return GO_AUTO; }
static float initialFillOpacity() { return 1.0f; }
@@ -132,7 +132,7 @@ public:
void setJoinStyle(LineJoin val) { svg_inherited_flags._joinStyle = val; }
void setShapeRendering(EShapeRendering val) { svg_inherited_flags._shapeRendering = val; }
void setTextAnchor(ETextAnchor val) { svg_inherited_flags._textAnchor = val; }
- void setWritingMode(EWritingMode val) { svg_inherited_flags._writingMode = val; }
+ void setWritingMode(SVGWritingMode val) { svg_inherited_flags._writingMode = val; }
void setGlyphOrientationHorizontal(EGlyphOrientation val) { svg_inherited_flags._glyphOrientationHorizontal = val; }
void setGlyphOrientationVertical(EGlyphOrientation val) { svg_inherited_flags._glyphOrientationVertical = val; }
@@ -281,7 +281,7 @@ public:
LineJoin joinStyle() const { return (LineJoin) svg_inherited_flags._joinStyle; }
EShapeRendering shapeRendering() const { return (EShapeRendering) svg_inherited_flags._shapeRendering; }
ETextAnchor textAnchor() const { return (ETextAnchor) svg_inherited_flags._textAnchor; }
- EWritingMode writingMode() const { return (EWritingMode) svg_inherited_flags._writingMode; }
+ SVGWritingMode writingMode() const { return (SVGWritingMode) svg_inherited_flags._writingMode; }
EGlyphOrientation glyphOrientationHorizontal() const { return (EGlyphOrientation) svg_inherited_flags._glyphOrientationHorizontal; }
EGlyphOrientation glyphOrientationVertical() const { return (EGlyphOrientation) svg_inherited_flags._glyphOrientationVertical; }
float fillOpacity() const { return fill->opacity; }
@@ -351,7 +351,7 @@ protected:
unsigned _textAnchor : 2; // ETextAnchor
unsigned _colorInterpolation : 2; // EColorInterpolation
unsigned _colorInterpolationFilters : 2; // EColorInterpolation
- unsigned _writingMode : 3; // EWritingMode
+ unsigned _writingMode : 3; // SVGWritingMode
unsigned _glyphOrientationHorizontal : 3; // EGlyphOrientation
unsigned _glyphOrientationVertical : 3; // EGlyphOrientation
} svg_inherited_flags;
diff --git a/WebCore/rendering/style/SVGRenderStyleDefs.h b/WebCore/rendering/style/SVGRenderStyleDefs.h
index 339bb77..de058a2 100644
--- a/WebCore/rendering/style/SVGRenderStyleDefs.h
+++ b/WebCore/rendering/style/SVGRenderStyleDefs.h
@@ -64,7 +64,7 @@ namespace WebCore {
SR_AUTO, SR_OPTIMIZESPEED, SR_CRISPEDGES, SR_GEOMETRICPRECISION
};
- enum EWritingMode {
+ enum SVGWritingMode {
WM_LRTB, WM_LR, WM_RLTB, WM_RL, WM_TBRL, WM_TB
};
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list