border-image with 'fill' keyword does not fill the middle area unless the border...
authorcommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 31 Mar 2015 19:32:12 +0000 (19:32 +0000)
committercommit-queue@webkit.org <commit-queue@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 31 Mar 2015 19:32:12 +0000 (19:32 +0000)
commit5948b92bdf7e19d7c30fcf854136694332fd525a
tree5ff451654ce84750218a38d4d2ad6964e6ac4fcf
parent5331a6e2a358ede879787583ce520a9d4f5d2177
border-image with 'fill' keyword does not fill the middle area unless the border width is greater than zero.
https://bugs.webkit.org/show_bug.cgi?id=142650.

Patch by Said Abou-Hallawa <sabouhallawa@apple.com> on 2015-03-31
Reviewed by Simon Fraser.

Source/WebCore:

The decoration of a RenderBox, a RenderTable or an InlineFlowBox should be
drawn if its RenderStyle has a non-zero width border or the border-image
has the keyword fill.

Tests: fast/borders/border-image-fill-inline-no-border.html
       fast/borders/border-image-fill-no-border.html

* rendering/InlineFlowBox.cpp:
(WebCore::InlineFlowBox::paintBoxDecorations):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBoxDecorations):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::hasBoxDecorationStyle):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::paintBoxDecorations):
* rendering/style/BorderData.h:
(WebCore::BorderData::hasFill):
* rendering/style/RenderStyle.h:

LayoutTests:

Add tests to ensure the middle area of a RenderBox is going to be drawn
even if the border width is not greater than zero.

* fast/borders/border-image-fill-inline-no-border-expected.html: Added.
* fast/borders/border-image-fill-inline-no-border.html: Added.
* fast/borders/border-image-fill-no-border-expected.html: Added.
* fast/borders/border-image-fill-no-border.html: Added.
* fast/borders/resources/button-border-cropped.svg: Added.
* fast/borders/resources/button-border.svg: Added.
* fast/borders/resources/svg-100x100-intrinsic.svg: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@182197 268f45cc-cd09-0410-ab3c-d52691b4dbfc
15 files changed:
LayoutTests/ChangeLog
LayoutTests/fast/borders/border-image-fill-inline-no-border-expected.html [new file with mode: 0644]
LayoutTests/fast/borders/border-image-fill-inline-no-border.html [new file with mode: 0644]
LayoutTests/fast/borders/border-image-fill-no-border-expected.html [new file with mode: 0644]
LayoutTests/fast/borders/border-image-fill-no-border.html [new file with mode: 0644]
LayoutTests/fast/borders/resources/button-border-cropped.svg [new file with mode: 0644]
LayoutTests/fast/borders/resources/button-border.svg [new file with mode: 0644]
LayoutTests/fast/borders/resources/svg-100x100-intrinsic.svg [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/rendering/InlineFlowBox.cpp
Source/WebCore/rendering/RenderBox.cpp
Source/WebCore/rendering/RenderBoxModelObject.cpp
Source/WebCore/rendering/RenderTable.cpp
Source/WebCore/rendering/style/BorderData.h
Source/WebCore/rendering/style/RenderStyle.h