|
Convert first letter into a pseudo element.
This is a reland of first letter as a psuedo element after the revert
in r184113.
Currently, first letter renderers are created and destroyed through the
updateFirstLetters() call in RenderBlock. This has, historically, been
problematic as we may miss places where the call was required, leading to
accessing invalid memory.
This CL converts the first letter code to use a PseudoElement for the
first-letter instead of creating classes during layout.
With the PseudoElement implementation the two tests which are currently in
LayoutTests/fast/css/first-letter-removed-added.html work as expected.
BUG= 391288
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=185405
Total comments: 20
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+833 lines, -558 lines) |
Patch |
|
M |
LayoutTests/TestExpectations
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+61 lines, -1 line |
0 comments
|
Download
|
|
M |
LayoutTests/fast/css/dynamic-class-pseudo-elements.html
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
LayoutTests/fast/css/dynamic-class-pseudo-elements-expected.txt
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
A |
LayoutTests/fast/css/first-letter.html
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+13 lines, -0 lines |
0 comments
|
Download
|
|
A |
LayoutTests/fast/css/first-letter-expected.html
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+12 lines, -0 lines |
0 comments
|
Download
|
|
M |
LayoutTests/fast/css/first-letter-removed-added.html
|
View
|
|
2 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
LayoutTests/fast/css/first-letter-removed-added-expected.txt
|
View
|
|
3 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
|
M |
Source/core/core.gypi
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/css/resolver/StyleResolver.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/css/resolver/StyleResolver.cpp
|
View
|
1
2
3
4
5
6
7
|
4 chunks |
+16 lines, -3 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Element.h
|
View
|
1
2
3
4
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Element.cpp
|
View
|
1
2
3
4
|
7 chunks |
+45 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/dom/ElementRareData.h
|
View
|
|
5 chunks |
+11 lines, -1 line |
0 comments
|
Download
|
|
M |
Source/core/dom/ElementRareData.cpp
|
View
|
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
|
A |
Source/core/dom/FirstLetterPseudoElement.h
|
View
|
1
2
3
4
5
6
7
8
|
1 chunk |
+77 lines, -0 lines |
0 comments
|
Download
|
|
A |
Source/core/dom/FirstLetterPseudoElement.cpp
|
View
|
1
2
3
4
5
6
7
8
9
10
|
1 chunk |
+309 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Node.h
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Node.cpp
|
View
|
1
2
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/Position.cpp
|
View
|
|
3 chunks |
+3 lines, -3 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/PseudoElement.h
|
View
|
|
3 chunks |
+12 lines, -8 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/PseudoElement.cpp
|
View
|
|
5 chunks |
+11 lines, -4 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/RenderTreeBuilder.h
|
View
|
|
2 chunks |
+4 lines, -19 lines |
0 comments
|
Download
|
|
M |
Source/core/dom/RenderTreeBuilder.cpp
|
View
|
|
5 chunks |
+35 lines, -5 lines |
0 comments
|
Download
|
|
M |
Source/core/editing/TextIterator.cpp
|
View
|
1
2
3
4
|
5 chunks |
+103 lines, -94 lines |
0 comments
|
Download
|
|
M |
Source/core/inspector/InspectorCSSAgent.cpp
|
View
|
1
2
|
1 chunk |
+16 lines, -10 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/HitTestResult.h
|
View
|
|
2 chunks |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/HitTestResult.cpp
|
View
|
|
7 chunks |
+1 line, -12 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderBlock.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
2 chunks |
+0 lines, -5 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderBlock.cpp
|
View
|
1
2
3
4
5
6
7
8
9
10
11
|
3 chunks |
+0 lines, -257 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderBoxModelObject.h
|
View
|
1
2
|
1 chunk |
+0 lines, -5 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderBoxModelObject.cpp
|
View
|
|
3 chunks |
+0 lines, -28 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderObject.h
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderObject.cpp
|
View
|
1
2
3
4
5
6
7
|
2 chunks |
+3 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderObjectChildList.cpp
|
View
|
1
2
|
1 chunk |
+9 lines, -7 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderTableCell.cpp
|
View
|
1
2
3
4
5
6
7
|
1 chunk |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderTextFragment.h
|
View
|
1
2
|
4 chunks |
+20 lines, -11 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderTextFragment.cpp
|
View
|
1
2
|
6 chunks |
+51 lines, -67 lines |
0 comments
|
Download
|
|
M |
Source/core/rendering/RenderTreeAsText.cpp
|
View
|
1
2
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
Total messages: 35 (12 generated)
|