WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
[patch]
Improve the logic for when to apply padding, border and margin before a text node
17152_r1.diff (text/plain), 10.76 KB, created by
mitz
on 2008-02-25 21:53:18 PST
(
hide
)
Description:
Improve the logic for when to apply padding, border and margin before a text node
Filename:
MIME Type:
Creator:
mitz
Created:
2008-02-25 21:53:18 PST
Size:
10.76 KB
patch
obsolete
>Index: WebCore/ChangeLog >=================================================================== >--- WebCore/ChangeLog (revision 30588) >+++ WebCore/ChangeLog (working copy) >@@ -1,3 +1,17 @@ >+2008-02-25 Dan Bernstein <mitz@apple.com> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ - fix http://bugs.webkit.org/show_bug.cgi?id=17152 >+ Paragraphs indented with :first-letter and text-align CSS render incorrectly >+ >+ Test: fast/text/apply-start-width-after-skipped-text.html >+ >+ * rendering/bidi.cpp: >+ (WebCore::RenderBlock::findNextLineBreak): Improved the logic for when >+ to figure in the padding, border and margin before a text node when the >+ line begins inside a text node. >+ > 2008-02-25 Mark Rowe <mrowe@apple.com> > > Windows build fix. >Index: WebCore/rendering/bidi.cpp >=================================================================== >--- WebCore/rendering/bidi.cpp (revision 30587) >+++ WebCore/rendering/bidi.cpp (working copy) >@@ -1353,6 +1353,8 @@ void RenderBlock::fitBelowFloats(int wid > > BidiIterator RenderBlock::findNextLineBreak(BidiIterator &start, BidiState &bidi) > { >+ bool appliedStartWidth = start.pos > 0; >+ > // eliminate spaces at beginning of line > int width = skipWhitespace(start, bidi); > int w = 0; >@@ -1542,6 +1544,9 @@ BidiIterator RenderBlock::findNextLineBr > } else > tmpW += o->width() + o->marginLeft() + o->marginRight() + inlineWidth(o); > } else if (o->isText()) { >+ if (!pos) >+ appliedStartWidth = false; >+ > RenderText* t = static_cast<RenderText*>(o); > > int strlen = t->textLength(); >@@ -1554,8 +1559,6 @@ BidiIterator RenderBlock::findNextLineBr > int wordSpacing = o->style()->wordSpacing(); > int lastSpaceWordSpacing = 0; > >- bool appliedStartWidth = pos > 0; // If the span originated on a previous line, >- // then assume the start width has been applied. > int wrapW = tmpW + inlineWidth(o, !appliedStartWidth, true); > int charWidth = 0; > int nextBreakable = -1; >Index: LayoutTests/ChangeLog >=================================================================== >--- LayoutTests/ChangeLog (revision 30588) >+++ LayoutTests/ChangeLog (working copy) >@@ -1,3 +1,15 @@ >+2008-02-25 Dan Bernstein <mitz@apple.com> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ - test for http://bugs.webkit.org/show_bug.cgi?id=17152 >+ Paragraphs indented with :first-letter and text-align CSS render incorrectly >+ >+ * fast/text/apply-start-width-after-skipped-text.html: Added. >+ * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.checksum: Added. >+ * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.png: Added. >+ * platform/mac/fast/text/apply-start-width-after-skipped-text-expected.txt: Added. >+ > 2008-02-25 Beth Dakin <bdakin@apple.com> > > Reviewed by Geoff. >Index: LayoutTests/fast/text/apply-start-width-after-skipped-text.html >=================================================================== >--- LayoutTests/fast/text/apply-start-width-after-skipped-text.html (revision 0) >+++ LayoutTests/fast/text/apply-start-width-after-skipped-text.html (revision 0) >@@ -0,0 +1,10 @@ >+<style> >+ div { width: 100px; background-color: lightgreen; color: lightblue; font: 20px 'Ahem'; } >+ span { border-left: 40px solid silver; } >+</style> >+<div> >+ xx<span> x</span> x x >+</div> >+<div> >+ <span> x</span> x x >+</div> >Index: LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.checksum >=================================================================== >--- LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.checksum (revision 0) >+++ LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.checksum (revision 0) >@@ -0,0 +1 @@ >+a88c34dffa8d9ff34599bd2649d37d37 >\ No newline at end of file >Index: LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.txt >=================================================================== >--- LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.txt (revision 0) >+++ LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.txt (revision 0) >@@ -0,0 +1,21 @@ >+layer at (0,0) size 800x600 >+ RenderView 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 (0,0) size 100x60 [color=#ADD8E6] [bgcolor=#90EE90] >+ RenderText {#text} at (0,0) size 40x20 >+ text run at (0,0) width 40: "xx" >+ RenderInline {SPAN} at (0,0) size 60x20 [border: (40px solid #C0C0C0)] >+ RenderText {#text} at (40,20) size 20x20 >+ text run at (40,20) width 20: "x" >+ RenderText {#text} at (60,20) size 100x40 >+ text run at (60,20) width 40: " x" >+ text run at (0,40) width 20: "x" >+ RenderBlock {DIV} at (0,60) size 100x40 [color=#ADD8E6] [bgcolor=#90EE90] >+ RenderInline {SPAN} at (0,0) size 60x20 [border: (40px solid #C0C0C0)] >+ RenderText {#text} at (40,0) size 20x20 >+ text run at (40,0) width 20: "x" >+ RenderText {#text} at (60,0) size 100x40 >+ text run at (60,0) width 40: " x" >+ text run at (0,20) width 20: "x" >Index: LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.png >=================================================================== >Cannot display: file marked as a binary type. >svn:mime-type = application/octet-stream > >Property changes on: LayoutTests/platform/mac/fast/text/apply-start-width-after-skipped-text-expected.png >___________________________________________________________________ >Name: svn:mime-type > + application/octet-stream > > >iVBORw0KGgoAAAANSUhEUgAAAyAAAAJYCAYAAACadoJwAAAOUklEQVR4nO3dsYqcVRiA4fOPIxqT >dVcMiwlp7Cy9AK/CG8kdeUEiIpZC2rDEJsgkMUx2fpuknUJO3uwwz9P+8J0PpjkvZ2GXdV3XAQAA >ENh86gUAAIDzIUAAAICMAAEAADICBAAAyAgQAAAgI0AAAIDM9ujXdT/+evFq/DuWKYfdrmNsxjqW >Zda8zfj++mJcySgAADgJxwPk9t348+Wbic8kt2Mdn03KmTHG2I/fP/9l7M4oQJ5+8/RTrwAAAP/b >8av7Zoy5/6VwnTzvMHkeAADwMZ3R2wEAAPCpCRAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAA >gIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADICBAAACAjQAAAgIwAAQAAMgIEAADIbNvj >DtMnfrX7aXyx3E6Ztaz7sbv4bbxdpowbY304rnY/jM2Yt9/LyzGuZCMAACfqeIBs7o3rm1+jVf6H >zdfj7+vHE59x9uPtg5kBcjnuv5m73+4gQAAAOF0nf5Vdp047zJ23zN/v5H8wAADOmvssAACQESAA >AEBGgAAAABkBAgAAZAQIAACQESAAAEBGgAAAABkBAgAAZAQIAACQESAAAEBGgAAAABkBAgAAZAQI >AACQESAAAEBGgAAAABkBAgAAZAQIAACQ2R79uu7H68tHYx3rlMPW5TC+/OfF2B6mjPsI7uxi7931 >/QAA4LjjAXL7bry6dzHxmWQ/bp78MXbn8u6yPBvPr59NHfnz9unUeQAAUDqeApsx6e3jg8PkeQAA >wCk5l7cIAADgDhAgAABARoAAAAAZAQIAAGQECAAAkBEgAABARoAAAAAZAQIAAGQECAAAkBEgAABA >RoAAAAAZAQIAAGQECAAAkBEgAABARoAAAAAZAQIAAGQECAAAkNm2xx3mjlsfjqvdD2MzbqeMW9b9 >2F38Nt4uU8Z9lP1eXo5xJRsBADhRxwNkc29c3/w69cBvb36cN2zz9fj7+ruJzzj78fbBzAC5HPff >PJ663+4gQAAAOF0nf5Vdp047zJ23zN/v5H8wAADOmvssAACQESAAAEBGgAAAABkBAgAAZAQIAACQ >ESAAAEBGgAAAABkBAgAAZAQIAACQESAAAEBGgAAAABkBAgAAZAQIAACQESAAAEBGgAAAABkBAgAA >ZAQIAACQ2R79uu7H68tHYx3rlMPW5TC+/OfF2B6mjPsI7uxi7931/QAA4LjjAXL7bry6dzHxmWQ/ >bp78MXbn8u6yPBvPr59NHfnz9unUeQAAUDqeApsx6e3jg8PkeQAAwCk5l7cIAADgDhAgAABARoAA >AAAZAQIAAGQECAAAkBEgAABARoAAAAAZAQIAAGQECAAAkBEgAABARoAAAAAZAQIAAGQECAAAkBEg >AABARoAAAAAZAQIAAGQECAAAkIkD5NAeBwAA3CnLuq7rp14CAAA4D/4ECwAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEA >ADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AA >AICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQ >AAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADIC >BAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICM >AAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAg >I0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAA >yAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAICMAAEAADICBAAAyAgQAAAgI0AAAIDMf1jI >m8SE84XwAAAAAElFTkSuQmCC >
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
Flags:
sam
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 17152
:
18888
|
19365
|
19368
| 19370