Title: [96294] trunk
- Revision
- 96294
- Author
- [email protected]
- Date
- 2011-09-28 21:12:42 -0700 (Wed, 28 Sep 2011)
Log Message
<rdar://problem/10196497> first-letter after list marker not updated correctly
Reviewed by Simon Fraser.
Source/WebCore:
Test: fast/dynamic/first-letter-after-list-marker.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::updateFirstLetter): Improved the logic for continuing past list markers
when trying to locate a first letter to update.
LayoutTests:
* fast/dynamic/first-letter-after-list-marker-expected.png: Added.
* fast/dynamic/first-letter-after-list-marker-expected.txt: Added.
* fast/dynamic/first-letter-after-list-marker.html: Added.
Modified Paths
Added Paths
Diff
Modified: trunk/LayoutTests/ChangeLog (96293 => 96294)
--- trunk/LayoutTests/ChangeLog 2011-09-29 04:00:01 UTC (rev 96293)
+++ trunk/LayoutTests/ChangeLog 2011-09-29 04:12:42 UTC (rev 96294)
@@ -1,3 +1,13 @@
+2011-09-28 Dan Bernstein <[email protected]>
+
+ <rdar://problem/10196497> first-letter after list marker not updated correctly
+
+ Reviewed by Simon Fraser.
+
+ * fast/dynamic/first-letter-after-list-marker-expected.png: Added.
+ * fast/dynamic/first-letter-after-list-marker-expected.txt: Added.
+ * fast/dynamic/first-letter-after-list-marker.html: Added.
+
2011-09-28 Hayato Ito <[email protected]>
Add a test for accesskey in regard to iframes.
Added: trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker-expected.png
(Binary files differ)
Property changes on: trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker-expected.png
___________________________________________________________________
Added: svn:mime-type
Added: trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker-expected.txt (0 => 96294)
--- trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker-expected.txt (rev 0)
+++ trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker-expected.txt 2011-09-29 04:12:42 UTC (rev 96294)
@@ -0,0 +1,12 @@
+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 784x492
+ RenderBlock {UL} at (0,0) size 784x100
+ RenderListItem {LI} at (40,0) size 744x100
+ RenderListMarker at (-61,0) size 29x100: bullet
+ RenderInline (generated) at (0,0) size 100x100 [color=#008000]
+ RenderText {#text} at (0,0) size 100x100
+ text run at (0,0) width 100: "a"
+ RenderText {#text} at (0,0) size 0x0
Added: trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker.html (0 => 96294)
--- trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker.html (rev 0)
+++ trunk/LayoutTests/fast/dynamic/first-letter-after-list-marker.html 2011-09-29 04:12:42 UTC (rev 96294)
@@ -0,0 +1,11 @@
+<style>
+ li:first-letter { color: red; }
+ li.green:first-letter { color: green; }
+</style>
+<ul style="font-family: ahem; font-size: 100px; -webkit-font-smoothing: none;">
+ <li id="target">a</li>
+</ul>
+<script>
+ document.body.offsetTop;
+ document.getElementById("target").className = "green";
+</script>
Modified: trunk/Source/WebCore/ChangeLog (96293 => 96294)
--- trunk/Source/WebCore/ChangeLog 2011-09-29 04:00:01 UTC (rev 96293)
+++ trunk/Source/WebCore/ChangeLog 2011-09-29 04:12:42 UTC (rev 96294)
@@ -1,3 +1,15 @@
+2011-09-28 Dan Bernstein <[email protected]>
+
+ <rdar://problem/10196497> first-letter after list marker not updated correctly
+
+ Reviewed by Simon Fraser.
+
+ Test: fast/dynamic/first-letter-after-list-marker.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::updateFirstLetter): Improved the logic for continuing past list markers
+ when trying to locate a first letter to update.
+
2011-09-28 Kent Tamura <[email protected]>
REGRESSION(r93858): Can't type anything into input elements when maxlength is greater than 2^31
Modified: trunk/Source/WebCore/rendering/RenderBlock.cpp (96293 => 96294)
--- trunk/Source/WebCore/rendering/RenderBlock.cpp 2011-09-29 04:00:01 UTC (rev 96293)
+++ trunk/Source/WebCore/rendering/RenderBlock.cpp 2011-09-29 04:12:42 UTC (rev 96294)
@@ -5480,21 +5480,23 @@
// Drill into inlines looking for our first text child.
RenderObject* currChild = firstLetterBlock->firstChild();
- while (currChild && ((!currChild->isReplaced() && !currChild->isRenderButton() && !currChild->isMenuList()) || currChild->isFloatingOrPositioned()) && !currChild->isText()) {
- if (currChild->isFloatingOrPositioned()) {
+ while (currChild) {
+ if (currChild->isText())
+ break;
+ if (currChild->isListMarker())
+ currChild = currChild->nextSibling();
+ else if (currChild->isFloatingOrPositioned()) {
if (currChild->style()->styleType() == FIRST_LETTER) {
currChild = currChild->firstChild();
break;
- }
+ }
currChild = currChild->nextSibling();
- } else
+ } else if (currChild->isReplaced() || currChild->isRenderButton() || currChild->isMenuList())
+ break;
+ else
currChild = currChild->firstChild();
}
- // Get list markers out of the way.
- while (currChild && currChild->isListMarker())
- currChild = currChild->nextSibling();
-
if (!currChild)
return;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes