[css border] border-image doesn't honor border-style
authorcavalcantii@gmail.com <cavalcantii@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Dec 2015 20:25:55 +0000 (20:25 +0000)
committercavalcantii@gmail.com <cavalcantii@gmail.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 2 Dec 2015 20:25:55 +0000 (20:25 +0000)
https://bugs.webkit.org/show_bug.cgi?id=99922

Reviewed by Simon Fraser.

Source/WebCore:

Ensure that WebKit will be compliant to css-backgrounds spec where a
border with an image will only be rendered if there is a style defined.

Quote: "None: No border. Color and width are ignored (i.e., the border has width 0)".
Reference: http://www.w3.org/TR/css3-background/#border-style

From W3C discussion: "The fact that these properties set the style of the border is
normative". Reference: https://lists.w3.org/Archives/Public/www-style/2015Nov/0260.html

Test: fast/borders/border-image-should-not-display.html

* rendering/style/BorderData.h:
(WebCore::BorderData::hasBorder):
(WebCore::BorderData::borderLeftWidth):
(WebCore::BorderData::borderRightWidth):
(WebCore::BorderData::borderTopWidth):
(WebCore::BorderData::borderBottomWidth):
* rendering/style/BorderValue.h:
(WebCore::BorderValue::nonZero):
(WebCore::BorderValue::isVisible):

LayoutTests:

Ensure that WebKit will be compliant to css-backgrounds spec where
a border with an image will only be rendered if there is a style defined.

Previous border image tests had to be edited (i.e. define border-style)
to ensure that a decorated border would be rendered.

* fast/borders/border-image-01.html:
* fast/borders/border-image-border-radius.html:
* fast/borders/border-image-fill-no-intrinsic-size.html:
* fast/borders/border-image-longhand.html:
* fast/borders/border-image-massive-scale.html:
* fast/borders/border-image-omit-right-slice.html:
* fast/borders/border-image-outset-in-shorthand.html:
* fast/borders/border-image-outset-split-inline-expected.txt:
* fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt:
* fast/borders/border-image-outset-split-inline-vertical-lr.html:
* fast/borders/border-image-outset-split-inline.html:
* fast/borders/border-image-outset.html:
* fast/borders/border-image-repeat.html:
* fast/borders/border-image-rotate-transform.html:
* fast/borders/border-image-scale-transform.html:
* fast/borders/border-image-scaled.html:
* fast/borders/border-image-scrambled.html:
* fast/borders/border-image-should-not-display-expected.html: Added.
* fast/borders/border-image-should-not-display.html: Added.
* fast/borders/border-image-side-reduction.html:
* fast/borders/border-image-slice-constrained.html:
* fast/borders/border-image-slice-missing-right.html:
* fast/borders/border-image-slices.html:
* fast/borders/border-image-source.html:
* fast/borders/border-image-trumps-radius-expected.txt:
* fast/borders/border-image-trumps-radius.html:
* fast/borders/hidpi-border-image-gradient-on-subpixels.html:
* fast/borders/resources/red.png: Added.
* fast/borders/scaled-border-image.html:
* fast/gradients/border-image-gradient-expected.txt:
* fast/gradients/border-image-gradient.html:
* fast/hidpi/image-set-border-image-comparison.html:
* fast/hidpi/image-set-border-image-dynamic.html:
* fast/hidpi/image-set-border-image-simple.html:
* fast/writing-mode/border-image-horizontal-bt.html:
* fast/writing-mode/border-image-vertical-lr.html:
* fast/writing-mode/border-image-vertical-rl.html:
* platform/mac/fast/borders/border-image-01-expected.txt:
* platform/mac/fast/borders/border-image-border-radius-expected.txt:
* platform/mac/fast/borders/border-image-longhand-expected.txt:
* platform/mac/fast/borders/border-image-massive-scale-expected.txt:
* platform/mac/fast/borders/border-image-omit-right-slice-expected.txt:
* platform/mac/fast/borders/border-image-outset-expected.txt:
* platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt:
* platform/mac/fast/borders/border-image-repeat-expected.txt:
* platform/mac/fast/borders/border-image-rotate-transform-expected.txt:
* platform/mac/fast/borders/border-image-scale-transform-expected.txt:
* platform/mac/fast/borders/border-image-scaled-expected.txt:
* platform/mac/fast/borders/border-image-scrambled-expected.txt:
* platform/mac/fast/borders/border-image-side-reduction-expected.txt:
* platform/mac/fast/borders/border-image-slice-constrained-expected.txt:
* platform/mac/fast/borders/border-image-slices-expected.txt:
* platform/mac/fast/borders/border-image-source-expected.txt:
* platform/mac/fast/borders/scaled-border-image-expected.txt:
* platform/mac/fast/hidpi/image-set-border-image-comparison-expected.txt:
* platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.txt:
* platform/mac/fast/hidpi/image-set-border-image-simple-expected.txt:
* platform/mac/fast/writing-mode/border-image-horizontal-bt-expected.txt:
* platform/mac/fast/writing-mode/border-image-vertical-lr-expected.txt:
* platform/mac/fast/writing-mode/border-image-vertical-rl-expected.txt:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@192955 268f45cc-cd09-0410-ab3c-d52691b4dbfc

71 files changed:
LayoutTests/ChangeLog
LayoutTests/animations/cross-fade-border-image-source.html
LayoutTests/fast/borders/border-image-01.html
LayoutTests/fast/borders/border-image-border-radius.html
LayoutTests/fast/borders/border-image-fill-no-intrinsic-size.html
LayoutTests/fast/borders/border-image-longhand.html
LayoutTests/fast/borders/border-image-massive-scale.html
LayoutTests/fast/borders/border-image-omit-right-slice.html
LayoutTests/fast/borders/border-image-outset-in-shorthand.html
LayoutTests/fast/borders/border-image-outset-split-inline-expected.txt
LayoutTests/fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt
LayoutTests/fast/borders/border-image-outset-split-inline-vertical-lr.html
LayoutTests/fast/borders/border-image-outset-split-inline.html
LayoutTests/fast/borders/border-image-outset.html
LayoutTests/fast/borders/border-image-repeat.html
LayoutTests/fast/borders/border-image-rotate-transform.html
LayoutTests/fast/borders/border-image-scale-transform.html
LayoutTests/fast/borders/border-image-scaled.html
LayoutTests/fast/borders/border-image-scrambled.html
LayoutTests/fast/borders/border-image-should-not-display-expected.html [new file with mode: 0644]
LayoutTests/fast/borders/border-image-should-not-display.html [new file with mode: 0644]
LayoutTests/fast/borders/border-image-side-reduction.html
LayoutTests/fast/borders/border-image-slice-constrained.html
LayoutTests/fast/borders/border-image-slice-missing-right.html
LayoutTests/fast/borders/border-image-slices.html
LayoutTests/fast/borders/border-image-source.html
LayoutTests/fast/borders/border-image-trumps-radius-expected.txt
LayoutTests/fast/borders/border-image-trumps-radius.html
LayoutTests/fast/borders/hidpi-border-image-gradient-on-subpixels.html
LayoutTests/fast/borders/resources/red.png [new file with mode: 0644]
LayoutTests/fast/borders/scaled-border-image.html
LayoutTests/fast/css/image-set-value-not-removed-crash.html
LayoutTests/fast/gradients/border-image-gradient-expected.txt
LayoutTests/fast/gradients/border-image-gradient.html
LayoutTests/fast/hidpi/image-set-border-image-comparison.html
LayoutTests/fast/hidpi/image-set-border-image-dynamic.html
LayoutTests/fast/hidpi/image-set-border-image-simple.html
LayoutTests/fast/writing-mode/border-image-horizontal-bt.html
LayoutTests/fast/writing-mode/border-image-vertical-lr.html
LayoutTests/fast/writing-mode/border-image-vertical-rl.html
LayoutTests/platform/mac/animations/cross-fade-border-image-source-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-01-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-border-radius-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-longhand-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-massive-scale-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-omit-right-slice-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-outset-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-repeat-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-rotate-transform-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-scale-transform-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-scaled-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-scrambled-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-side-reduction-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-slice-constrained-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-slices-expected.txt
LayoutTests/platform/mac/fast/borders/border-image-source-expected.txt
LayoutTests/platform/mac/fast/borders/scaled-border-image-expected.txt
LayoutTests/platform/mac/fast/hidpi/image-set-border-image-comparison-expected.txt
LayoutTests/platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.txt
LayoutTests/platform/mac/fast/hidpi/image-set-border-image-simple-expected.txt
LayoutTests/platform/mac/fast/writing-mode/border-image-horizontal-bt-expected.txt
LayoutTests/platform/mac/fast/writing-mode/border-image-vertical-lr-expected.txt
LayoutTests/platform/mac/fast/writing-mode/border-image-vertical-rl-expected.txt
LayoutTests/platform/mac/svg/as-border-image/svg-as-border-image-2-expected.txt
LayoutTests/platform/mac/svg/as-border-image/svg-as-border-image-expected.txt
LayoutTests/svg/as-border-image/svg-as-border-image-2.html
LayoutTests/svg/as-border-image/svg-as-border-image.html
Source/WebCore/ChangeLog
Source/WebCore/rendering/style/BorderData.h
Source/WebCore/rendering/style/BorderValue.h

index 9066814..0477132 100644 (file)
@@ -1,3 +1,77 @@
+2015-12-02  Adenilson Cavalcanti  <cavalcantii@gmail.com>
+
+        [css border] border-image doesn't honor border-style
+        https://bugs.webkit.org/show_bug.cgi?id=99922
+
+        Reviewed by Simon Fraser.
+
+        Ensure that WebKit will be compliant to css-backgrounds spec where
+        a border with an image will only be rendered if there is a style defined.
+
+        Previous border image tests had to be edited (i.e. define border-style)
+        to ensure that a decorated border would be rendered.
+
+        * fast/borders/border-image-01.html:
+        * fast/borders/border-image-border-radius.html:
+        * fast/borders/border-image-fill-no-intrinsic-size.html:
+        * fast/borders/border-image-longhand.html:
+        * fast/borders/border-image-massive-scale.html:
+        * fast/borders/border-image-omit-right-slice.html:
+        * fast/borders/border-image-outset-in-shorthand.html:
+        * fast/borders/border-image-outset-split-inline-expected.txt:
+        * fast/borders/border-image-outset-split-inline-vertical-lr-expected.txt:
+        * fast/borders/border-image-outset-split-inline-vertical-lr.html:
+        * fast/borders/border-image-outset-split-inline.html:
+        * fast/borders/border-image-outset.html:
+        * fast/borders/border-image-repeat.html:
+        * fast/borders/border-image-rotate-transform.html:
+        * fast/borders/border-image-scale-transform.html:
+        * fast/borders/border-image-scaled.html:
+        * fast/borders/border-image-scrambled.html:
+        * fast/borders/border-image-should-not-display-expected.html: Added.
+        * fast/borders/border-image-should-not-display.html: Added.
+        * fast/borders/border-image-side-reduction.html:
+        * fast/borders/border-image-slice-constrained.html:
+        * fast/borders/border-image-slice-missing-right.html:
+        * fast/borders/border-image-slices.html:
+        * fast/borders/border-image-source.html:
+        * fast/borders/border-image-trumps-radius-expected.txt:
+        * fast/borders/border-image-trumps-radius.html:
+        * fast/borders/hidpi-border-image-gradient-on-subpixels.html:
+        * fast/borders/resources/red.png: Added.
+        * fast/borders/scaled-border-image.html:
+        * fast/gradients/border-image-gradient-expected.txt:
+        * fast/gradients/border-image-gradient.html:
+        * fast/hidpi/image-set-border-image-comparison.html:
+        * fast/hidpi/image-set-border-image-dynamic.html:
+        * fast/hidpi/image-set-border-image-simple.html:
+        * fast/writing-mode/border-image-horizontal-bt.html:
+        * fast/writing-mode/border-image-vertical-lr.html:
+        * fast/writing-mode/border-image-vertical-rl.html:
+        * platform/mac/fast/borders/border-image-01-expected.txt:
+        * platform/mac/fast/borders/border-image-border-radius-expected.txt:
+        * platform/mac/fast/borders/border-image-longhand-expected.txt:
+        * platform/mac/fast/borders/border-image-massive-scale-expected.txt:
+        * platform/mac/fast/borders/border-image-omit-right-slice-expected.txt:
+        * platform/mac/fast/borders/border-image-outset-expected.txt:
+        * platform/mac/fast/borders/border-image-outset-in-shorthand-expected.txt:
+        * platform/mac/fast/borders/border-image-repeat-expected.txt:
+        * platform/mac/fast/borders/border-image-rotate-transform-expected.txt:
+        * platform/mac/fast/borders/border-image-scale-transform-expected.txt:
+        * platform/mac/fast/borders/border-image-scaled-expected.txt:
+        * platform/mac/fast/borders/border-image-scrambled-expected.txt:
+        * platform/mac/fast/borders/border-image-side-reduction-expected.txt:
+        * platform/mac/fast/borders/border-image-slice-constrained-expected.txt:
+        * platform/mac/fast/borders/border-image-slices-expected.txt:
+        * platform/mac/fast/borders/border-image-source-expected.txt:
+        * platform/mac/fast/borders/scaled-border-image-expected.txt:
+        * platform/mac/fast/hidpi/image-set-border-image-comparison-expected.txt:
+        * platform/mac/fast/hidpi/image-set-border-image-dynamic-expected.txt:
+        * platform/mac/fast/hidpi/image-set-border-image-simple-expected.txt:
+        * platform/mac/fast/writing-mode/border-image-horizontal-bt-expected.txt:
+        * platform/mac/fast/writing-mode/border-image-vertical-lr-expected.txt:
+        * platform/mac/fast/writing-mode/border-image-vertical-rl-expected.txt:
+
 2015-12-02  Eric Carlson  <eric.carlson@apple.com>
 
         [MediaStream] Implement MediaStreamTrack.getSettings()
index 49ef54e..ec2b81d 100644 (file)
@@ -8,6 +8,7 @@
         height: 100px;
         width: 100px;
         background-color: green;
+        border-style: solid;
         -webkit-animation: anim 1s linear infinite;
         border-image: url() 5 5 5 5 /20px stretch stretch;
     }
@@ -18,6 +19,7 @@
         height: 100px;
         width: 100px;
         background-color: green;
+        border-style: solid;
         -webkit-animation: animShorthand 1s linear infinite;
     }
     #boxStatic {
@@ -27,6 +29,7 @@
         height: 100px;
         width: 100px;
         background-color: green;
+        border-style: solid;
         border-image: -webkit-cross-fade(url(resources/stripes-100.png), url(resources/green-100.png), 50%) 5 5 5 5 /20px stretch stretch;
     }
     @-webkit-keyframes anim {
index ffd8c1f..d712dc2 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index 643eaae..1504fc1 100644 (file)
@@ -8,6 +8,7 @@
             margin: 10px;
             display: inline-block;
             -webkit-border-radius: 10px;
+            border-style: solid;
         }
 
         div.rr {
index f4991eb..6dc7e77 100644 (file)
@@ -58,5 +58,5 @@
   <div class="box no-border border-image-no-intrinsic"></div>
   <div class="box border-20"></div>
   <div class="box no-border border-image-no-intrinsic-slice"></div>
-  <div class="box border-20 border-image-no-intrinsic-slice"></div>
+  <div class="box no-border border-image-no-intrinsic"></div>
 </body>
index dab6530..1be8c63 100644 (file)
@@ -10,6 +10,7 @@
             border-image-source: url("resources/border-image.png");
             border-image-slice: 21 30 30 21 fill;
             border-image-width: 1;
+            border-style: solid;
         }
 
         div.rr {
index 1ac13e2..c32e361 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index 71b3429..5086d4a 100644 (file)
@@ -17,6 +17,7 @@
         -webkit-border-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAAXNSR0IArs4c6QAAAUFJREFUGNMBNgHJ/gPcUkznH/n8lGR5YkMIIMDXFhgoVNnfqeM5dbre55MDGkF/U6tMmi12K6QBpfkB4H3NyPZAiyjm6kp//uPtAA4pZhHPJ8xbkSop4chy5ecPsVSqkC03ozAmk77SOwOHR+fDXmoF5UUJU9YsnVfehg/iLC7p3etC3w3LEA8D0eGf/DZozPPzoSSX6gTVlQ/L4Ylt4SrFiOgqNDQPAPvl/JQuLv33xK66eAgGCn+OAIUu1Fugs2hsZNIB6gPhrZ80q7sXNUEuIE7EGNC5Dc2ExcIe9tseb4r7usAAralzLgdas9URX21wGUqSgDnf/jMydhxMIEx4w9TtAfCQPsbi30EEVABXFJYnOZgfbQK3CLkwg6PDGG27KwOYF7jD+sIHhdwoUyILAF5sv/6bI6S56fbULB5OToUjFpS7UHGrVgAAAABJRU5ErkJggg==) 1 2 3;
         border-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAIAAAACUFjqAAAAAXNSR0IArs4c6QAAAUFJREFUGNMBNgHJ/gPcUkznH/n8lGR5YkMIIMDXFhgoVNnfqeM5dbre55MDGkF/U6tMmi12K6QBpfkB4H3NyPZAiyjm6kp//uPtAA4pZhHPJ8xbkSop4chy5ecPsVSqkC03ozAmk77SOwOHR+fDXmoF5UUJU9YsnVfehg/iLC7p3etC3w3LEA8D0eGf/DZozPPzoSSX6gTVlQ/L4Ylt4SrFiOgqNDQPAPvl/JQuLv33xK66eAgGCn+OAIUu1Fugs2hsZNIB6gPhrZ80q7sXNUEuIE7EGNC5Dc2ExcIe9tseb4r7usAAralzLgdas9URX21wGUqSgDnf/jMydhxMIEx4w9TtAfCQPsbi30EEVABXFJYnOZgfbQK3CLkwg6PDGG27KwOYF7jD+sIHhdwoUyILAF5sv/6bI6S56fbULB5OToUjFpS7UHGrVgAAAABJRU5ErkJggg==) 1 2 3;
         border-width: 100px;
+        border-style: solid;
     }
 
     body > div > div {
index 4b37ce2..e2da5d6 100644 (file)
@@ -8,6 +8,7 @@
             display: inline-block;
             -webkit-border-image: url("resources/border-image.png") 21 30 30 21 / 1 / 21px 30px 30px 21px stretch;
             margin:30px;
+            border-style: solid;
         }
 
         div.rr {
index 2719c44..e22bd42 100644 (file)
@@ -4,7 +4,7 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderBlock {DIV} at (0,0) size 784x350
-        RenderInline {SPAN} at (0,0) size 37x230 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+        RenderInline {SPAN} at (0,0) size 37x230 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
           RenderText {#text} at (46,85) size 7x29
             text run at (46,85) width 7: " "
           RenderBR {BR} at (52,108) size 1x0
index ac1d296..3472d57 100644 (file)
@@ -4,7 +4,7 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderBlock {DIV} at (0,0) size 350x584
-        RenderInline {SPAN} at (0,0) size 230x37 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+        RenderInline {SPAN} at (0,0) size 230x37 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
           RenderText {#text} at (85,46) size 29x7
             text run at (85,46) width 7: " "
           RenderBR {BR} at (108,52) size 0x1
index f39a432..b7e18c5 100644 (file)
@@ -4,6 +4,7 @@
         span {
             border-width: 21px 30px 30px 21px;
             -webkit-border-image: url("resources/border-image.png") 21 30 30 21 / 1 / 21px 30px 30px 21px repeat;
+            border-style: solid;
         }
     </style>
 </head>
index e1afd9f..15c98a2 100644 (file)
@@ -4,6 +4,7 @@
         span {
             border-width: 21px 30px 30px 21px;
             -webkit-border-image: url("resources/border-image.png") 21 30 30 21 / 1 / 21px 30px 30px 21px repeat;
+            border-style: solid;
         }
     </style>
 </head>
index a42cdce..14beaeb 100644 (file)
@@ -11,6 +11,7 @@
             border-image-width: 1;
             border-image-outset: 1;
             margin:30px;
+            border-style: solid;
         }
 
         div.rr {
index ab30926..0853577 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index 0863009..c16194f 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index b0b2487..da8ef68 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index 24b3721..ca2d0db 100644 (file)
@@ -6,6 +6,7 @@
             height: 150px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
index 9dca501..2d158c8 100644 (file)
@@ -7,6 +7,7 @@
             height: 75px;
             margin: 10px;
             display: inline-block;
+            border-style: solid;
         }
 
         div.rr {
diff --git a/LayoutTests/fast/borders/border-image-should-not-display-expected.html b/LayoutTests/fast/borders/border-image-should-not-display-expected.html
new file mode 100644 (file)
index 0000000..ed7f325
--- /dev/null
@@ -0,0 +1,15 @@
+<!doctype html>
+<html>
+<head>
+<style>
+div {
+   background-color: green;
+   width: 100px;
+   height: 100px;
+}
+</style>
+</head>
+<body>
+<div></div>
+</body>
+</html>
diff --git a/LayoutTests/fast/borders/border-image-should-not-display.html b/LayoutTests/fast/borders/border-image-should-not-display.html
new file mode 100644 (file)
index 0000000..8894328
--- /dev/null
@@ -0,0 +1,21 @@
+<!doctype html>
+<html>
+<head>
+<style>
+div {
+   background-color: green;
+   width: 100px;
+   height: 100px;
+   /* If border style is not set (default is None), border-image
+      should be ignored.
+      border-style: solid;
+   */
+    border-image: url(resources/red.png) 30 round;
+    border-width: 100px;
+}
+</style>
+</head>
+<body>
+<div></div>
+</body>
+</html>
index 1d45654..b98d6f9 100644 (file)
@@ -10,6 +10,7 @@
             border-image-source: url("resources/border-image.png");
             border-image-slice: 21 30 30 21 fill;
             border-image-width: 30;
+            border-style: solid;
         }
 
         div.rr {
index f7e92fa..48f9bb2 100644 (file)
@@ -9,6 +9,7 @@
             border-image-source: url("resources/border-image.png");
             border-image-repeat: repeat;
             display: inline-block;
+            border-style: solid;
         }
 
         div.tl {
index 8b4d782..4ace421 100644 (file)
@@ -8,6 +8,7 @@
       border-width: 0px 66px 0px 0px;
       width: 0px; 
       height: 26px;
+      border-style: solid;
     }
   </style>
 </head>
index d0e1cf6..a4af2b9 100644 (file)
@@ -9,6 +9,7 @@
             display: inline-block;
             border-image-source: url("resources/border-image.png") !important;
             border-image-slice: 21 30 30 21 fill !important;
+            border-style: solid;
         }
 
         div.rr {
index c044698..20fc6b6 100644 (file)
@@ -8,6 +8,7 @@
             margin: 10px;
             display: inline-block;
             border-image-source: url("resources/border-image.png") !important
+            border-style: solid;
         }
 
         div.rr {
index 0495510..8911ec9 100644 (file)
@@ -4,4 +4,4 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#FF0000]
-      RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#FF0000] [border: (10px none #0000FF7F)]
+      RenderBlock {DIV} at (0,0) size 100x100 [bgcolor=#FF0000] [border: (10px solid #0000FF7F)]
index d0b2cfd..356b488 100644 (file)
@@ -7,5 +7,6 @@
     height: 80px;
     border-width: 10px;
     border-color: rgba(0, 0, 255, 0.5);
+    border-style: solid;
     -webkit-border-image: -webkit-linear-gradient(green, green) 10 10 10 10;
 "></div>
index 45bfa72..feefde5 100644 (file)
@@ -7,6 +7,7 @@
     border-width:0px 0px 0px 0.5px;
     position: fixed;
     -webkit-border-image: -webkit-linear-gradient(black, black) 1 100%;
+    border-style: solid;
   }
 </style>
 </head>
diff --git a/LayoutTests/fast/borders/resources/red.png b/LayoutTests/fast/borders/resources/red.png
new file mode 100644 (file)
index 0000000..490fa6a
Binary files /dev/null and b/LayoutTests/fast/borders/resources/red.png differ
index 9a42758..2cfbf96 100644 (file)
@@ -8,6 +8,7 @@
         border-image-slice: 21 30 30 21 fill;
         border-image-width: 1;
         border-image-repeat: repeat;
+        border-style: solid;
     }
 </style>
 <div></div>
index 0c774cc..50f0bc8 100644 (file)
@@ -15,6 +15,7 @@ A
     -webkit-animation-duration: 1s;
 }
 .class1 { 
+    border-style: solid;
     border-image: -webkit-image-set(url(#does-not-exist) 25x, url("does-not-exist.gif") 206x) 2 126 158 166 fill;
 }
 </style>
@@ -38,4 +39,4 @@ function crash() {
 }
 document.addEventListener("DOMContentLoaded", crash, false);
 </script>
-</html>
\ No newline at end of file
+</html>
index f920d42..f56eaf4 100644 (file)
@@ -3,4 +3,4 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,10) size 784x580
-      RenderBlock {DIV} at (10,0) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,0) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
index f6123f4..544fc8f 100644 (file)
@@ -6,6 +6,7 @@
             width: 75px;
             height: 75px;
             margin: 10px;
+            border-style: solid;
             -webkit-border-image: -webkit-gradient(linear, left top, left bottom, from(#00abeb), to(#fff), color-stop(0.5, #fff), color-stop(0.5, #66cc00)) 21 30 30 21 repeat repeat;
         }
     </style>
@@ -13,4 +14,4 @@
 <body>
     <div></div>
 </body>
-</html>
\ No newline at end of file
+</html>
index 64eeb3b..f666fe2 100644 (file)
 
 <style>
 div {
-       box-sizing: border-box;
+    box-sizing: border-box;
     width: 40px;
     height: 13px;
+    border-style: solid;
 }
 
 .test1 {
index a3835d0..20bd2ac 100644 (file)
@@ -20,6 +20,7 @@
     #foo {
         width:100px;
         height:100px;
+        border-style: solid;
         -webkit-border-image: -webkit-image-set(url('resources/blue-100-px-square.png') 1x, url('resources/green-200-px-square.png') 2x) 10 10 10 10 stretch stretch;
     }
 </style>
index d805982..d60c940 100644 (file)
@@ -34,6 +34,7 @@
         width:100px;
         height:100px;
         border-width: 10px;
+        border-style: solid;
         -webkit-border-image: -webkit-image-set(url('resources/blue-100-px-square.png') 1x, url('resources/green-200-px-square.png') 2x) 10 10 10 10 stretch stretch;
     }
 </style>
index ac26122..238dccf 100644 (file)
@@ -5,6 +5,7 @@ span {
     border-width: 21px 30px 30px 21px;
     font-size:86px;
     margin: 30px;
+    border-style: solid;
     -webkit-border-image: url("../borders/resources/border-image.png") 21 30 30 21 repeat repeat;
 }
 </style>
index 2b8a3db..b282495 100644 (file)
@@ -5,6 +5,7 @@ span {
     border-width: 21px 30px 30px 21px;
     font-size:86px;
     margin: 30px;
+    border-style: solid;
     -webkit-border-image: url("../borders/resources/border-image.png") 21 30 30 21 repeat repeat;
 }
 </style>
index 994acd3..7a0e90a 100644 (file)
@@ -5,6 +5,7 @@ span {
     border-width: 21px 30px 30px 21px;
     font-size:86px;
     margin: 30px;
+    border-style: solid;
     -webkit-border-image: url("../borders/resources/border-image.png") 21 30 30 21 repeat repeat;
 }
 </style>
index 8012179..a4593e5 100644 (file)
@@ -16,8 +16,8 @@ layer at (0,0) size 800x600
           text run at (0,72) width 33: "other"
         RenderBR {BR} at (32,86) size 1x0
 layer at (100,100) size 106x106
-  RenderBlock (positioned) {DIV} at (100,100) size 106x106 [bgcolor=#008000] [border: (3px none #000000)]
+  RenderBlock (positioned) {DIV} at (100,100) size 106x106 [bgcolor=#008000] [border: (3px solid #000000)]
 layer at (100,250) size 106x106
-  RenderBlock (positioned) {DIV} at (100,250) size 106x106 [bgcolor=#008000] [border: (3px none #000000)]
+  RenderBlock (positioned) {DIV} at (100,250) size 106x106 [bgcolor=#008000] [border: (3px solid #000000)]
 layer at (100,400) size 106x106
-  RenderBlock (positioned) {DIV} at (100,400) size 106x106 [bgcolor=#008000] [border: (3px none #000000)]
+  RenderBlock (positioned) {DIV} at (100,400) size 106x106 [bgcolor=#008000] [border: (3px solid #000000)]
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index ef7b55f..434871d 100644 (file)
@@ -5,14 +5,14 @@ layer at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderText {#text} at (0,132) size 532x18
         text run at (0,132) width 532: "This test checks to make sure the border-image is not clipped by the border radius. "
-      RenderBlock {DIV} at (541,10) size 127x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (541,10) size 127x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,310) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,310) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,432) size 4x18
         text run at (146,432) width 4: " "
-      RenderBlock {DIV} at (160,310) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,310) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index cb99b88..960d5a1 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 785x724
 layer at (0,0) size 785x724
   RenderBlock {HTML} at (0,0) size 785x724
     RenderBody {BODY} at (8,8) size 769x708
-      RenderBlock {DIV} at (10,10) size 330x330 [border: (105px none #000000) (150px none #000000) (105px none #000000)]
+      RenderBlock {DIV} at (10,10) size 330x330 [border: (105px solid #000000) (150px solid #000000) (105px solid #000000)]
       RenderText {#text} at (350,336) size 4x18
         text run at (350,336) width 4: " "
-      RenderBlock {DIV} at (364,10) size 330x330 [border: (105px none #000000) (150px none #000000) (105px none #000000)]
+      RenderBlock {DIV} at (364,10) size 330x330 [border: (105px solid #000000) (150px solid #000000) (105px solid #000000)]
       RenderText {#text} at (704,336) size 4x18
         text run at (704,336) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,364) size 330x330 [border: (105px none #000000) (150px none #000000) (105px none #000000)]
+      RenderBlock {DIV} at (10,364) size 330x330 [border: (105px solid #000000) (150px solid #000000) (105px solid #000000)]
       RenderText {#text} at (350,690) size 4x18
         text run at (350,690) width 4: " "
-      RenderBlock {DIV} at (364,364) size 330x330 [border: (105px none #000000) (150px none #000000) (105px none #000000)]
+      RenderBlock {DIV} at (364,364) size 330x330 [border: (105px solid #000000) (150px solid #000000) (105px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index ffaa413..f7d5cbc 100644 (file)
@@ -3,5 +3,5 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x416
   RenderBlock {HTML} at (0,0) size 800x416
     RenderBody {BODY} at (8,8) size 784x400
-      RenderBlock {DIV} at (0,0) size 400x400 [border: (100px none #000000)]
+      RenderBlock {DIV} at (0,0) size 400x400 [border: (100px solid #000000)]
         RenderBlock {DIV} at (100,100) size 200x200 [bgcolor=#FFFFFF]
index 47dc7a4..d552abc 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (30,30) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (30,30) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (186,172) size 4x18
         text run at (186,172) width 4: " "
-      RenderBlock {DIV} at (220,30) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (220,30) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (376,172) size 4x18
         text run at (376,172) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (30,220) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (30,220) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (186,362) size 4x18
         text run at (186,362) width 4: " "
-      RenderBlock {DIV} at (220,220) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (220,220) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 47dc7a4..d552abc 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (30,30) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (30,30) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (186,172) size 4x18
         text run at (186,172) width 4: " "
-      RenderBlock {DIV} at (220,30) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (220,30) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (376,172) size 4x18
         text run at (376,172) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (30,220) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (30,220) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (186,362) size 4x18
         text run at (186,362) width 4: " "
-      RenderBlock {DIV} at (220,220) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (220,220) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 2fb73e5..681099d 100644 (file)
@@ -4,15 +4,15 @@ layer at (0,0) size 785x585
   RenderBlock {HTML} at (0,0) size 785x585
 layer at (8,8) size 769x569
   RenderBody {BODY} at (8,8) size 769x569
-    RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (146,132) size 4x18
       text run at (146,132) width 4: " "
-    RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (296,132) size 4x18
       text run at (296,132) width 4: " "
     RenderBR {BR} at (0,0) size 0x0
-    RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (146,282) size 4x18
       text run at (146,282) width 4: " "
-    RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (0,0) size 0x0
index 8ece465..ee1d1ff 100644 (file)
@@ -4,15 +4,15 @@ layer at (0,0) size 785x585
   RenderBlock {HTML} at (0,0) size 785x585
 layer at (8,8) size 769x569
   RenderBody {BODY} at (8,8) size 769x569
-    RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (146,132) size 4x18
       text run at (146,132) width 4: " "
-    RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (296,132) size 4x18
       text run at (296,132) width 4: " "
     RenderBR {BR} at (0,0) size 0x0
-    RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (146,282) size 4x18
       text run at (146,282) width 4: " "
-    RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+    RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
     RenderText {#text} at (0,0) size 0x0
index a60b1fc..ae3db83 100644 (file)
@@ -8,15 +8,15 @@ layer at (0,0) size 785x620
           text run at (0,0) width 750: "The purpose of this test case is to illustrate the legacy behavior of -webkit-border-image. The specified border widths"
           text run at (0,18) width 715: "actually end up becoming the real border widths. The border-image property in the specification doesn't do this."
       RenderBlock (anonymous) at (0,52) size 769x552
-        RenderBlock {DIV} at (10,10) size 252x252 [border: (42px none #000000) (60px none #000000) (42px none #000000)]
+        RenderBlock {DIV} at (10,10) size 252x252 [border: (42px solid #000000) (60px solid #000000) (42px solid #000000)]
         RenderText {#text} at (272,258) size 4x18
           text run at (272,258) width 4: " "
-        RenderBlock {DIV} at (286,10) size 252x252 [border: (42px none #000000) (60px none #000000) (42px none #000000)]
+        RenderBlock {DIV} at (286,10) size 252x252 [border: (42px solid #000000) (60px solid #000000) (42px solid #000000)]
         RenderText {#text} at (548,258) size 4x18
           text run at (548,258) width 4: " "
         RenderBR {BR} at (0,0) size 0x0
-        RenderBlock {DIV} at (10,286) size 252x252 [border: (42px none #000000) (60px none #000000) (42px none #000000)]
+        RenderBlock {DIV} at (10,286) size 252x252 [border: (42px solid #000000) (60px solid #000000) (42px solid #000000)]
         RenderText {#text} at (272,534) size 4x18
           text run at (272,534) width 4: " "
-        RenderBlock {DIV} at (286,286) size 252x252 [border: (42px none #000000) (60px none #000000) (42px none #000000)]
+        RenderBlock {DIV} at (286,286) size 252x252 [border: (42px solid #000000) (60px solid #000000) (42px solid #000000)]
         RenderText {#text} at (0,0) size 0x0
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index b9ca231..360736b 100644 (file)
@@ -3,8 +3,8 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 171x171 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 171x171 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (191,177) size 4x18
         text run at (191,177) width 4: " "
-      RenderBlock {DIV} at (205,10) size 171x171 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (205,10) size 171x171 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 37927aa..eff4940 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,132) size 4x18
         text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (296,132) size 4x18
         text run at (296,132) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (146,282) size 4x18
         text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderText {#text} at (0,0) size 0x0
index 37927aa..4a77926 100644 (file)
@@ -3,15 +3,15 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
-      RenderBlock {DIV} at (10,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
-      RenderText {#text} at (146,132) size 4x18
-        text run at (146,132) width 4: " "
-      RenderBlock {DIV} at (160,10) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
-      RenderText {#text} at (296,132) size 4x18
-        text run at (296,132) width 4: " "
+      RenderBlock {DIV} at (10,10) size 75x75
+      RenderText {#text} at (95,81) size 4x18
+        text run at (95,81) width 4: " "
+      RenderBlock {DIV} at (109,10) size 75x75
+      RenderText {#text} at (194,81) size 4x18
+        text run at (194,81) width 4: " "
       RenderBR {BR} at (0,0) size 0x0
-      RenderBlock {DIV} at (10,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
-      RenderText {#text} at (146,282) size 4x18
-        text run at (146,282) width 4: " "
-      RenderBlock {DIV} at (160,160) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,109) size 75x75
+      RenderText {#text} at (95,180) size 4x18
+        text run at (95,180) width 4: " "
+      RenderBlock {DIV} at (109,109) size 75x75
       RenderText {#text} at (0,0) size 0x0
index 4972c54..0c07068 100644 (file)
@@ -3,8 +3,8 @@ layer at (0,0) size 800x600
 layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,10) size 784x570
-      RenderBlock {DIV} at (10,0) size 126x126 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderBlock {DIV} at (10,0) size 126x126 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
       RenderBlock (anonymous) at (0,136) size 784x18
         RenderText {#text} at (0,0) size 408x18
           text run at (0,0) width 408: "This should look like the above, only scaled up by a factor of 2:"
-      RenderBlock {DIV} at (20,174) size 252x252 [border: (42px none #000000) (60px none #000000) (42px none #000000)]
+      RenderBlock {DIV} at (20,174) size 252x252 [border: (42px solid #000000) (60px solid #000000) (42px solid #000000)]
index 5407a71..b10cfc9 100644 (file)
@@ -8,15 +8,15 @@ layer at (0,0) size 800x600
           text run at (0,0) width 286: "The first two tests should match the last two."
         RenderBR {BR} at (285,14) size 1x0
         RenderBR {BR} at (0,18) size 0x18
-      RenderBlock {DIV} at (0,36) size 40x13 [border: (3px none #000000)]
+      RenderBlock {DIV} at (0,36) size 40x13 [border: (3px solid #000000)]
       RenderBlock (anonymous) at (0,49) size 784x18
         RenderBR {BR} at (0,0) size 0x18
-      RenderBlock {DIV} at (0,67) size 40x13 [border: (3px none #000000) (7px none #000000) (3px none #000000)]
+      RenderBlock {DIV} at (0,67) size 40x13 [border: (3px solid #000000) (7px solid #000000) (3px solid #000000)]
       RenderBlock (anonymous) at (0,80) size 784x18
         RenderBR {BR} at (0,0) size 0x18
-      RenderBlock {DIV} at (0,98) size 40x13 [border: (3px none #000000)]
+      RenderBlock {DIV} at (0,98) size 40x13 [border: (3px solid #000000)]
       RenderBlock (anonymous) at (0,111) size 784x18
         RenderBR {BR} at (0,0) size 0x18
-      RenderBlock {DIV} at (0,129) size 40x13 [border: (3px none #000000) (7px none #000000) (3px none #000000)]
+      RenderBlock {DIV} at (0,129) size 40x13 [border: (3px solid #000000) (7px solid #000000) (3px solid #000000)]
       RenderBlock (anonymous) at (0,142) size 784x18
         RenderBR {BR} at (0,0) size 0x18
index 4852472..be16dab 100644 (file)
@@ -8,6 +8,6 @@ layer at (0,0) size 800x600
           text run at (0,0) width 775: "This test passes if the div below is a blue 100px square when the deviceScaleFactor is 1, and if it is a 100px green square"
           text run at (0,18) width 779: "when the deviceScaleFactor is 2. When run in the test harness, this test is distinct from image-set-as-background, because"
           text run at (0,36) width 515: "it ensures that the green image loads dynamically when the scale factor changes."
-      RenderBlock {DIV} at (0,54) size 106x106 [border: (3px none #000000)]
+      RenderBlock {DIV} at (0,54) size 106x106 [border: (3px solid #000000)]
         RenderText {#text} at (3,3) size 8x18
           text run at (3,3) width 8: "2"
index 5328aa8..1b995ab 100644 (file)
@@ -7,4 +7,4 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 775x36
           text run at (0,0) width 775: "This test passes if the div below is a blue 100px square when the deviceScaleFactor is 1, and if it is a 100px green square"
           text run at (0,18) width 211: "when the deviceScaleFactor is 2."
-      RenderBlock {DIV} at (0,36) size 120x120 [border: (10px none #000000)]
+      RenderBlock {DIV} at (0,36) size 120x120 [border: (10px solid #000000)]
index 6585479..27e318f 100644 (file)
@@ -3,7 +3,7 @@ layer at (0,0) size 800x600
 layer at (0,140) size 800x460
   RenderBlock {HTML} at (0,0) size 800x460
     RenderBody {BODY} at (8,8) size 784x444
-      RenderInline {SPAN} at (0,0) size 80x323 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderInline {SPAN} at (0,0) size 80x323 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
         RenderBlock {DIV} at (101,117) size 25x0
         RenderBR {BR} at (126,95) size 0x100
         RenderBlock {DIV} at (50,289) size 50x0
index 787068b..9886e26 100644 (file)
@@ -3,7 +3,7 @@ layer at (0,0) size 800x600
 layer at (0,0) size 460x600
   RenderBlock {HTML} at (0,0) size 460x600
     RenderBody {BODY} at (8,8) size 444x584
-      RenderInline {SPAN} at (0,0) size 323x80 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderInline {SPAN} at (0,0) size 323x80 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
         RenderBlock {DIV} at (99,101) size 0x25
         RenderBR {BR} at (77,126) size 100x0
         RenderBlock {DIV} at (271,50) size 0x50
index 28519c2..8fcb8c4 100644 (file)
@@ -3,7 +3,7 @@ layer at (0,0) size 800x600
 layer at (340,0) size 460x600
   RenderBlock {HTML} at (0,0) size 460x600
     RenderBody {BODY} at (8,8) size 444x584
-      RenderInline {SPAN} at (0,0) size 323x80 [border: (21px none #000000) (30px none #000000) (21px none #000000)]
+      RenderInline {SPAN} at (0,0) size 323x80 [border: (21px solid #000000) (30px solid #000000) (21px solid #000000)]
         RenderBlock {DIV} at (164,101) size 0x25
         RenderBR {BR} at (86,126) size 100x0
         RenderBlock {DIV} at (336,50) size 0x50
index 6521dc3..d51c62f 100644 (file)
@@ -8,17 +8,17 @@ layer at (0,0) size 800x600
           RenderText {#text} at (0,0) size 195x28
             text run at (0,0) width 195: "SVG border-image"
         RenderBlock (anonymous) at (1,68) size 368x369
-          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,166) size 4x18
             text run at (180,166) width 4: " "
-          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (364,166) size 4x18
             text run at (364,166) width 4: " "
           RenderBR {BR} at (0,0) size 0x0
-          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,350) size 4x18
             text run at (180,350) width 4: " "
-          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (0,0) size 0x0
       RenderText {#text} at (370,418) size 4x18
         text run at (370,418) width 4: " "
@@ -27,16 +27,16 @@ layer at (0,0) size 800x600
           RenderText {#text} at (0,0) size 196x28
             text run at (0,0) width 196: "PNG border-image"
         RenderBlock (anonymous) at (1,68) size 368x369
-          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,166) size 4x18
             text run at (180,166) width 4: " "
-          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (364,166) size 4x18
             text run at (364,166) width 4: " "
           RenderBR {BR} at (0,0) size 0x0
-          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,350) size 4x18
             text run at (180,350) width 4: " "
-          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (0,0) size 0x0
       RenderText {#text} at (0,0) size 0x0
index 6521dc3..d51c62f 100644 (file)
@@ -8,17 +8,17 @@ layer at (0,0) size 800x600
           RenderText {#text} at (0,0) size 195x28
             text run at (0,0) width 195: "SVG border-image"
         RenderBlock (anonymous) at (1,68) size 368x369
-          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,166) size 4x18
             text run at (180,166) width 4: " "
-          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (364,166) size 4x18
             text run at (364,166) width 4: " "
           RenderBR {BR} at (0,0) size 0x0
-          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,350) size 4x18
             text run at (180,350) width 4: " "
-          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (0,0) size 0x0
       RenderText {#text} at (370,418) size 4x18
         text run at (370,418) width 4: " "
@@ -27,16 +27,16 @@ layer at (0,0) size 800x600
           RenderText {#text} at (0,0) size 196x28
             text run at (0,0) width 196: "PNG border-image"
         RenderBlock (anonymous) at (1,68) size 368x369
-          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,166) size 4x18
             text run at (180,166) width 4: " "
-          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,10) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (364,166) size 4x18
             text run at (364,166) width 4: " "
           RenderBR {BR} at (0,0) size 0x0
-          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (10,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (180,350) size 4x18
             text run at (180,350) width 4: " "
-          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px none #000000)]
+          RenderBlock {DIV} at (194,194) size 160x160 [border: (30px solid #000000)]
           RenderText {#text} at (0,0) size 0x0
       RenderText {#text} at (0,0) size 0x0
index cd9d1b4..61046b4 100644 (file)
     }
     
     .svg > .rr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-relative-size.svg") 30 30 30 30 repeat repeat;
     }
     
     .svg > .rs {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-relative-size.svg") 30 30 30 30 repeat stretch;
     }
     
     .svg > .sr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-relative-size.svg") 30 30 30 30 stretch repeat;
     }
     
     .svg > .ss {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-relative-size.svg") 30 30 30 30 stretch stretch;
     }
 
     .image > .rr {
+        border-style: solid;
         -webkit-border-image: url("resources/large-tiles.png") 30 30 30 30 repeat repeat;
     }
     
     .image > .rs {
+        border-style: solid;
         -webkit-border-image: url("resources/large-tiles.png") 30 30 30 30 repeat stretch;
     }
     
     .image > .sr {
+        border-style: solid;
         -webkit-border-image: url("resources/large-tiles.png") 30 30 30 30 stretch repeat;
     }
     
     .image > .ss {
+        border-style: solid;
         -webkit-border-image: url("resources/large-tiles.png") 30 30 30 30 stretch stretch;
     }
 </style>
index a3ba496..2f00ee2 100644 (file)
     }
     
     .svg > .rr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-fixed-size.svg") 30 30 30 30 repeat repeat;
     }
     
     .svg > .rs {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-fixed-size.svg") 30 30 30 30 repeat stretch;
     }
     
     .svg > .sr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-fixed-size.svg") 30 30 30 30 stretch repeat;
     }
     
     .svg > .ss {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles-fixed-size.svg") 30 30 30 30 stretch stretch;
     }
 
 
     .image > .rr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles.png") 30 30 30 30 repeat repeat;
     }
     
     .image > .rs {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles.png") 30 30 30 30 repeat stretch;
     }
     
     .image > .sr {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles.png") 30 30 30 30 stretch repeat;
     }
     
     .image > .ss {
+        border-style: solid;
         -webkit-border-image: url("resources/tiles.png") 30 30 30 30 stretch stretch;
     }
 </style>
index 33ee4c5..4dcf3c7 100644 (file)
@@ -1,3 +1,31 @@
+2015-12-02  Adenilson Cavalcanti  <cavalcantii@gmail.com>
+
+        [css border] border-image doesn't honor border-style
+        https://bugs.webkit.org/show_bug.cgi?id=99922
+
+        Reviewed by Simon Fraser.
+
+        Ensure that WebKit will be compliant to css-backgrounds spec where a
+        border with an image will only be rendered if there is a style defined.
+
+        Quote: "None: No border. Color and width are ignored (i.e., the border has width 0)".
+        Reference: http://www.w3.org/TR/css3-background/#border-style
+
+        From W3C discussion: "The fact that these properties set the style of the border is
+        normative". Reference: https://lists.w3.org/Archives/Public/www-style/2015Nov/0260.html
+
+        Test: fast/borders/border-image-should-not-display.html
+
+        * rendering/style/BorderData.h:
+        (WebCore::BorderData::hasBorder):
+        (WebCore::BorderData::borderLeftWidth):
+        (WebCore::BorderData::borderRightWidth):
+        (WebCore::BorderData::borderTopWidth):
+        (WebCore::BorderData::borderBottomWidth):
+        * rendering/style/BorderValue.h:
+        (WebCore::BorderValue::nonZero):
+        (WebCore::BorderValue::isVisible):
+
 2015-12-02  Eric Carlson  <eric.carlson@apple.com>
 
         [MediaStream] Implement MediaStreamTrack.getSettings()
index cd1a583..b1d3dac 100644 (file)
@@ -43,8 +43,7 @@ public:
     }
     bool hasBorder() const
     {
-        bool haveImage = m_image.hasImage();
-        return m_left.nonZero(!haveImage) || m_right.nonZero(!haveImage) || m_top.nonZero(!haveImage) || m_bottom.nonZero(!haveImage);
+        return m_left.nonZero() || m_right.nonZero() || m_top.nonZero() || m_bottom.nonZero();
     }
 
     bool hasFill() const
@@ -64,31 +63,31 @@ public:
             return true;
         return false;
     }
-    
+
     float borderLeftWidth() const
     {
-        if (!m_image.hasImage() && (m_left.style() == BNONE || m_left.style() == BHIDDEN))
-            return 0; 
+        if (m_left.style() == BNONE || m_left.style() == BHIDDEN)
+            return 0;
         return m_left.width();
     }
-    
+
     float borderRightWidth() const
     {
-        if (!m_image.hasImage() && (m_right.style() == BNONE || m_right.style() == BHIDDEN))
+        if (m_right.style() == BNONE || m_right.style() == BHIDDEN)
             return 0;
         return m_right.width();
     }
-    
+
     float borderTopWidth() const
     {
-        if (!m_image.hasImage() && (m_top.style() == BNONE || m_top.style() == BHIDDEN))
+        if (m_top.style() == BNONE || m_top.style() == BHIDDEN)
             return 0;
         return m_top.width();
     }
-    
+
     float borderBottomWidth() const
     {
-        if (!m_image.hasImage() && (m_bottom.style() == BNONE || m_bottom.style() == BHIDDEN))
+        if (m_bottom.style() == BNONE || m_bottom.style() == BHIDDEN)
             return 0;
         return m_bottom.width();
     }
@@ -97,25 +96,25 @@ public:
     {
         return FloatBoxExtent(borderTopWidth(), borderRightWidth(), borderBottomWidth(), borderLeftWidth());
     }
-    
+
     bool operator==(const BorderData& o) const
     {
         return m_left == o.m_left && m_right == o.m_right && m_top == o.m_top && m_bottom == o.m_bottom && m_image == o.m_image
                && m_topLeft == o.m_topLeft && m_topRight == o.m_topRight && m_bottomLeft == o.m_bottomLeft && m_bottomRight == o.m_bottomRight;
     }
-    
+
     bool operator!=(const BorderData& o) const
     {
         return !(*this == o);
     }
-    
+
     const BorderValue& left() const { return m_left; }
     const BorderValue& right() const { return m_right; }
     const BorderValue& top() const { return m_top; }
     const BorderValue& bottom() const { return m_bottom; }
-    
+
     const NinePieceImage& image() const { return m_image; }
-    
+
     const LengthSize& topLeft() const { return m_topLeft; }
     const LengthSize& topRight() const { return m_topRight; }
     const LengthSize& bottomLeft() const { return m_bottomLeft; }
index cf340d0..7352ffb 100644 (file)
@@ -42,9 +42,9 @@ public:
     {
     }
 
-    bool nonZero(bool checkStyle = true) const
+    bool nonZero() const
     {
-        return width() && (!checkStyle || m_style != BNONE);
+        return width() && (m_style != BNONE);
     }
 
     bool isTransparent() const
@@ -52,9 +52,9 @@ public:
         return m_colorIsValid && !alphaChannel(m_color);
     }
 
-    bool isVisible(bool checkStyle = true) const
+    bool isVisible() const
     {
-        return nonZero(checkStyle) && !isTransparent() && (!checkStyle || m_style != BHIDDEN);
+        return nonZero() && !isTransparent() && (m_style != BHIDDEN);
     }
 
     bool operator==(const BorderValue& o) const