Percentage min/max width replaced element may incorrectly rendered
https://bugs.webkit.org/show_bug.cgi?id=105264
Patch by KyungTae Kim <ktf.kim@samsung.com> on 2012-12-20
Reviewed by Tony Chang.
Source/WebCore:
To make do not include percentage min width in preferred logical width calculation,
because we cannot resolve it for preferred width.
Test: fast/css/percent-min-width-img-src-change.html
* rendering/RenderBox.cpp:
(WebCore::RenderBox::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderBox::computeReplacedLogicalWidthRespectingMinMaxWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
If shouldComputePreferred is ComputePreferred,
don't use minLogicalWidth or maxLogicalWidth if they are percent type.
* rendering/RenderBox.h:
(RenderBox):
* rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
(WebCore::RenderReplaced::computeMaxPreferredLogicalWidth):
Modify from set includeMaxWidth=false to set shouldComputePreferred=ComputePreferred.
* rendering/RenderReplaced.h:
(RenderReplaced):
* rendering/RenderSVGRoot.cpp:
(WebCore::RenderSVGRoot::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
* rendering/RenderSVGRoot.h:
(RenderSVGRoot):
* rendering/RenderVideo.cpp:
(WebCore::RenderVideo::computeReplacedLogicalWidth):
Modify includeMaxWidth parameter to shouldComputePreferred.
* rendering/RenderVideo.h:
(RenderVideo):
LayoutTests:
Add test to check when the source of images with percentage min-width is changed.
* fast/css/percent-min-width-img-src-change-expected.txt: Added.
* fast/css/percent-min-width-img-src-change.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138332 268f45cc-cd09-0410-ab3c-d52691b4dbfc
12 files changed