WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Patch
bug-114663-20130417145806.patch (text/plain), 9.71 KB, created by
Jaehun Lim
on 2013-04-16 22:58:35 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Jaehun Lim
Created:
2013-04-16 22:58:35 PDT
Size:
9.71 KB
patch
obsolete
>Subversion Revision: 148591 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index 6758511e5c1e12aa09657ba015d546cd8a56bfd8..aa89d60a761186c1d6ce8f25701888cd5b784268 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,21 @@ >+2013-04-16 Jaehun Lim <ljaehun.lim@samsung.com> >+ >+ [css3-text] Rendering -webkit-hanging value for text-indent from css3-text >+ https://bugs.webkit.org/show_bug.cgi?id=114663 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This patch is the rendering part to support hanging value for text-indent. >+ "hanging" means "Inverts which lines are affected." >+ It's prefixed and guarded by CSS3_TEXT flag. >+ >+ Spec: http://dev.w3.org/csswg/css-text/#text-indent >+ >+ Test: fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html >+ >+ * rendering/RenderBlockLineLayout.cpp: >+ (WebCore::requiresIndent): Inverted the return value when "-webkit-hanging" is applied. >+ > 2013-04-16 Beth Dakin <bdakin@apple.com> > > Re-name Page::layoutMilestones() to Page::requestedLayoutMilestones() >diff --git a/Source/WebCore/rendering/RenderBlockLineLayout.cpp b/Source/WebCore/rendering/RenderBlockLineLayout.cpp >index 481ba64db067e165bad96b54313acbea8fed3b7d..41e9bc33e0626144da797639779529b1e8b56f48 100644 >--- a/Source/WebCore/rendering/RenderBlockLineLayout.cpp >+++ b/Source/WebCore/rendering/RenderBlockLineLayout.cpp >@@ -989,16 +989,20 @@ void RenderBlock::updateLogicalWidthForAlignment(const ETextAlign& textAlign, Bi > > static IndentTextOrNot requiresIndent(bool isFirstLine, bool isAfterHardLineBreak, RenderStyle* style) > { >+ IndentTextOrNot shouldIndentText = DoNotIndentText; > if (isFirstLine) >- return IndentText; >+ shouldIndentText = IndentText; > #if ENABLE(CSS3_TEXT) >- if (isAfterHardLineBreak && style->textIndentLine() == TextIndentEachLine) >- return IndentText; >+ else if (isAfterHardLineBreak && style->textIndentLine() == TextIndentEachLine) >+ shouldIndentText = IndentText; >+ >+ if (style->textIndentType() == TextIndentHanging) >+ shouldIndentText = shouldIndentText == IndentText ? DoNotIndentText : IndentText; > #else > UNUSED_PARAM(isAfterHardLineBreak); > UNUSED_PARAM(style); > #endif >- return DoNotIndentText; >+ return shouldIndentText; > } > > static void updateLogicalInlinePositions(RenderBlock* block, float& lineLogicalLeft, float& lineLogicalRight, float& availableLogicalWidth, bool firstLine, IndentTextOrNot shouldIndentText, LayoutUnit boxLogicalHeight) >diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog >index e3851b4a8a03a05af548aa6669b18426e04d97ab..9e530dbe0bda2e583dfcccf8af32f849bd89c2ac 100644 >--- a/LayoutTests/ChangeLog >+++ b/LayoutTests/ChangeLog >@@ -1,3 +1,21 @@ >+2013-04-16 Jaehun Lim <ljaehun.lim@samsung.com> >+ >+ [css3-text] Rendering -webkit-hanging value for text-indent from css3-text >+ https://bugs.webkit.org/show_bug.cgi?id=114663 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This patch is the rendering part to support hanging value for text-indent. >+ "hanging" means "Inverts which lines are affected." >+ It's prefixed and guarded by CSS3_TEXT flag. >+ >+ Spec: http://dev.w3.org/csswg/css-text/#text-indent >+ >+ Renamed and updated the existing testcases. >+ >+ * fast/css3-text/css3-text-indent/text-indent-each-line-hanging-expected.html: Renamed from LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-expected.html >+ * fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html: Renamed from LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line.html. >+ > 2013-04-16 Hans Muller <hmuller@adobe.com> > > [CSS Exclusions] polygon shape-inside layout fails >diff --git a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-expected.html b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-expected.html >deleted file mode 100644 >index f868a57b241c52874d864e8de1a93899f94e7e44..0000000000000000000000000000000000000000 >--- a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-expected.html >+++ /dev/null >@@ -1,28 +0,0 @@ >-<html> >-<head> >- <title>[css3-text] text-indent</title> >- <style> >- div { width:80px; font: 10px Ahem; background-color:lightgray; } >- .normal { text-indent: 4em; } >- .indent { color: blue; } >- .eachline { padding-left:4em; } >- </style> >-</head >-<body> >-<div class="normal"> >-<span class="indent">xxxx</span><br>xxxx<br>xxxx >-</div> >-<br> >-<div class="normal"> >-<span class="indent">xxxx</span> xxxx xxxx >-</div> >-<br> >-<div class="normal"> >-<span class="indent">xxxx</span><br><span class="indent eachline">xxxx</span><br><span class="indent eachline">xxxx</span> >-</div> >-<br> >-<div class="normal"> >-<span class="indent">xxxx</span> xxxx<br><span class="indent eachline">xxxx</span> >-</div> >-</body> >-</html> >diff --git a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging-expected.html b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging-expected.html >new file mode 100644 >index 0000000000000000000000000000000000000000..758a0af129fc61a27aae311b8e9fb4a9d63d6952 >--- /dev/null >+++ b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging-expected.html >@@ -0,0 +1,42 @@ >+<html> >+<head> >+ <title>[css3-text] text-indent</title> >+ <style> >+ div { width:80px; font: 10px Ahem; background-color:lightgray; } >+ .indent { color: blue; padding-left:4em; } >+ </style> >+</head> >+<body> >+<div> >+<span class="indent">xxxx</span><br>xxxx<br>xxxx >+</div> >+<br> >+<div> >+<span class="indent">xxxx</span> xxxx xxxx >+</div> >+<br> >+<div> >+<span class="indent">xxxx</span><br><span class="indent">xxxx</span><br><span class="indent">xxxx</span> >+</div> >+<br> >+<div> >+<span class="indent">xxxx</span> xxxx<br><span class="indent">xxxx</span> >+</div> >+<br> >+<div> >+xxxx<br><span class="indent">xxxx</span><br><span class="indent">xxxx</span> >+</div> >+<br> >+<div> >+xxxx <span class="indent">xxxx</span> <span class="indent">xxxx</span> >+</div> >+<br> >+<div> >+xxxx<br>xxxx<br>xxxx >+</div> >+<br> >+<div> >+xxxx <span class="indent">xxxx</span><br>xxxx >+</div> >+</body> >+</html> >diff --git a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html >new file mode 100644 >index 0000000000000000000000000000000000000000..9f52390dd2e90a05badd0bae9ec2b8f7d1b3f1a1 >--- /dev/null >+++ b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html >@@ -0,0 +1,59 @@ >+<html> >+<head> >+ <title>[css3-text] text-indent</title> >+ <style> >+ div { width:80px; font: 10px Ahem; background-color:lightgray; } >+ .normal { text-indent: 4em; } >+ .eachline { text-indent: 4em -webkit-each-line; } >+ .hanging { text-indent: 4em -webkit-hanging; } >+ .eachlinehanging { text-indent: 4em -webkit-each-line -webkit-hanging; } >+ .indent { color: blue; } >+ </style> >+</head >+<body> >+<!-- >+all black boxes should be left-aligned. >+all blue boxes should be right-aligned. >+--> >+ >+<!-- normal text-indent --> >+<div class="normal"> >+<span class="indent">xxxx</span> xxxx<br>xxxx >+</div> >+<br> >+<!-- -webkit-each-line with a soft wrap break --> >+<div class="eachline"> >+<span class="indent">xxxx</span> xxxx xxxx >+</div> >+<br> >+<!-- -webkit-each-line with a forced line break --> >+<div class="eachline"> >+<span class="indent">xxxx</span><br><span class="indent">xxxx</span><br><span class="indent">xxxx</span> >+</div> >+<br> >+<!-- -webkit-each-line with a soft wrap break and a forced line break --> >+<div class="eachline"> >+<span class="indent">xxxx</span> xxxx<br><span class="indent">xxxx</span> >+</div> >+<br> >+<!-- normal text-indent with -webkit-hanging --> >+<div class="hanging"> >+xxxx <span class="indent">xxxx</span><br><span class="indent">xxxx</span> >+</div> >+<br> >+<!-- -webkit-each-line and -webkit-hanging with a soft wrap break --> >+<div class="eachlinehanging"> >+xxxx <span class="indent">xxxx</span> <span class="indent">xxxx</span> >+</div> >+<br> >+<!-- -webkit-each-line and -webkit-hanging with a forced line break --> >+<div class="eachlinehanging"> >+xxxx<br>xxxx<br>xxxx >+</div> >+<br> >+<!-- -webkit-each-line and -webkit-hanging with a soft wrap break and a forced line break --> >+<div class="eachlinehanging"> >+xxxx <span class="indent">xxxx</span><br>xxxx >+</div> >+</body> >+</html> >diff --git a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line.html b/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line.html >deleted file mode 100644 >index bd4b014afcb02e027b494ef55d400c4fa703ab70..0000000000000000000000000000000000000000 >--- a/LayoutTests/fast/css3-text/css3-text-indent/text-indent-each-line.html >+++ /dev/null >@@ -1,37 +0,0 @@ >-<html> >-<head> >- <title>[css3-text] text-indent</title> >- <style> >- div { width:80px; font: 10px Ahem; background-color:lightgray; } >- .normal { text-indent: 4em; } >- .eachline { width:80px; text-indent: 4em -webkit-each-line; } >- .indent { color: blue; } >- </style> >-</head >-<body> >-<!-- >-all black boxes should be left-aligned. >-all blue boxes should be right-aligned. >---> >- >-<!-- normal text-indent --> >-<div class="normal"> >-<span class="indent">xxxx</span><br>xxxx<br>xxxx >-</div> >-<br> >-<!-- -webkit-each-line with a soft wrap break --> >-<div class="eachline"> >-<span class="indent">xxxx</span> xxxx xxxx >-</div> >-<br> >-<!-- -webkit-each-line with a forced line break --> >-<div class="eachline"> >-<span class="indent">xxxx</span><br><span class="indent">xxxx</span><br><span class="indent">xxxx</span> >-</div> >-<br> >-<!-- -webkit-each-line with a soft wrap break and a forced line break --> >-<div class="eachline"> >-<span class="indent">xxxx</span> xxxx<br><span class="indent">xxxx</span> >-</div> >-</body> >-</html>
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 114663
:
198235
|
198469
|
198613
|
198633