OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "core/animation/ColorPropertyFunctions.h" | 5 #include "core/animation/ColorPropertyFunctions.h" |
6 | 6 |
7 #include "core/style/ComputedStyle.h" | 7 #include "core/style/ComputedStyle.h" |
8 | 8 |
9 namespace blink { | 9 namespace blink { |
10 | 10 |
11 StyleColor ColorPropertyFunctions::getInitialColor(CSSPropertyID property) { | 11 bool ColorPropertyFunctions::getInitialColor(CSSPropertyID property, |
12 return getUnvisitedColor(property, ComputedStyle::initialStyle()); | 12 StyleColor& initialColor) { |
13 if (property == CSSPropertyCaretColor) | |
14 return false; | |
15 initialColor = getUnvisitedColor(property, ComputedStyle::initialStyle()); | |
16 return true; | |
13 } | 17 } |
14 | 18 |
15 StyleColor ColorPropertyFunctions::getUnvisitedColor( | 19 StyleColor ColorPropertyFunctions::getUnvisitedColor( |
16 CSSPropertyID property, | 20 CSSPropertyID property, |
17 const ComputedStyle& style) { | 21 const ComputedStyle& style) { |
18 switch (property) { | 22 switch (property) { |
19 case CSSPropertyBackgroundColor: | 23 case CSSPropertyBackgroundColor: |
20 return style.backgroundColor(); | 24 return style.backgroundColor(); |
21 case CSSPropertyBorderLeftColor: | 25 case CSSPropertyBorderLeftColor: |
22 return style.borderLeftColor(); | 26 return style.borderLeftColor(); |
23 case CSSPropertyBorderRightColor: | 27 case CSSPropertyBorderRightColor: |
24 return style.borderRightColor(); | 28 return style.borderRightColor(); |
25 case CSSPropertyBorderTopColor: | 29 case CSSPropertyBorderTopColor: |
26 return style.borderTopColor(); | 30 return style.borderTopColor(); |
27 case CSSPropertyBorderBottomColor: | 31 case CSSPropertyBorderBottomColor: |
28 return style.borderBottomColor(); | 32 return style.borderBottomColor(); |
33 case CSSPropertyCaretColor: | |
34 return style.caretColor().toStyleColor(); | |
alancutter (OOO until 2018)
2016/12/20 05:45:53
This seems wrong. You shouldn't be able to read a
Manuel Rego
2016/12/20 17:18:16
Good point, I've changed all this.
| |
29 case CSSPropertyColor: | 35 case CSSPropertyColor: |
30 return style.color(); | 36 return style.color(); |
31 case CSSPropertyOutlineColor: | 37 case CSSPropertyOutlineColor: |
32 return style.outlineColor(); | 38 return style.outlineColor(); |
33 case CSSPropertyColumnRuleColor: | 39 case CSSPropertyColumnRuleColor: |
34 return style.columnRuleColor(); | 40 return style.columnRuleColor(); |
35 case CSSPropertyWebkitTextEmphasisColor: | 41 case CSSPropertyWebkitTextEmphasisColor: |
36 return style.textEmphasisColor(); | 42 return style.textEmphasisColor(); |
37 case CSSPropertyWebkitTextFillColor: | 43 case CSSPropertyWebkitTextFillColor: |
38 return style.textFillColor(); | 44 return style.textFillColor(); |
(...skipping 21 matching lines...) Expand all Loading... | |
60 case CSSPropertyBackgroundColor: | 66 case CSSPropertyBackgroundColor: |
61 return style.visitedLinkBackgroundColor(); | 67 return style.visitedLinkBackgroundColor(); |
62 case CSSPropertyBorderLeftColor: | 68 case CSSPropertyBorderLeftColor: |
63 return style.visitedLinkBorderLeftColor(); | 69 return style.visitedLinkBorderLeftColor(); |
64 case CSSPropertyBorderRightColor: | 70 case CSSPropertyBorderRightColor: |
65 return style.visitedLinkBorderRightColor(); | 71 return style.visitedLinkBorderRightColor(); |
66 case CSSPropertyBorderTopColor: | 72 case CSSPropertyBorderTopColor: |
67 return style.visitedLinkBorderTopColor(); | 73 return style.visitedLinkBorderTopColor(); |
68 case CSSPropertyBorderBottomColor: | 74 case CSSPropertyBorderBottomColor: |
69 return style.visitedLinkBorderBottomColor(); | 75 return style.visitedLinkBorderBottomColor(); |
76 case CSSPropertyCaretColor: | |
77 return style.visitedLinkCaretColor().toStyleColor(); | |
70 case CSSPropertyColor: | 78 case CSSPropertyColor: |
71 return style.visitedLinkColor(); | 79 return style.visitedLinkColor(); |
72 case CSSPropertyOutlineColor: | 80 case CSSPropertyOutlineColor: |
73 return style.visitedLinkOutlineColor(); | 81 return style.visitedLinkOutlineColor(); |
74 case CSSPropertyColumnRuleColor: | 82 case CSSPropertyColumnRuleColor: |
75 return style.visitedLinkColumnRuleColor(); | 83 return style.visitedLinkColumnRuleColor(); |
76 case CSSPropertyWebkitTextEmphasisColor: | 84 case CSSPropertyWebkitTextEmphasisColor: |
77 return style.visitedLinkTextEmphasisColor(); | 85 return style.visitedLinkTextEmphasisColor(); |
78 case CSSPropertyWebkitTextFillColor: | 86 case CSSPropertyWebkitTextFillColor: |
79 return style.visitedLinkTextFillColor(); | 87 return style.visitedLinkTextFillColor(); |
(...skipping 27 matching lines...) Expand all Loading... | |
107 return; | 115 return; |
108 case CSSPropertyBorderLeftColor: | 116 case CSSPropertyBorderLeftColor: |
109 style.setBorderLeftColor(color); | 117 style.setBorderLeftColor(color); |
110 return; | 118 return; |
111 case CSSPropertyBorderRightColor: | 119 case CSSPropertyBorderRightColor: |
112 style.setBorderRightColor(color); | 120 style.setBorderRightColor(color); |
113 return; | 121 return; |
114 case CSSPropertyBorderTopColor: | 122 case CSSPropertyBorderTopColor: |
115 style.setBorderTopColor(color); | 123 style.setBorderTopColor(color); |
116 return; | 124 return; |
125 case CSSPropertyCaretColor: | |
126 return style.setCaretColor(color); | |
117 case CSSPropertyColor: | 127 case CSSPropertyColor: |
118 style.setColor(color); | 128 style.setColor(color); |
119 return; | 129 return; |
120 case CSSPropertyFloodColor: | 130 case CSSPropertyFloodColor: |
121 style.setFloodColor(color); | 131 style.setFloodColor(color); |
122 return; | 132 return; |
123 case CSSPropertyLightingColor: | 133 case CSSPropertyLightingColor: |
124 style.setLightingColor(color); | 134 style.setLightingColor(color); |
125 return; | 135 return; |
126 case CSSPropertyOutlineColor: | 136 case CSSPropertyOutlineColor: |
(...skipping 29 matching lines...) Expand all Loading... | |
156 return; | 166 return; |
157 case CSSPropertyBorderLeftColor: | 167 case CSSPropertyBorderLeftColor: |
158 style.setVisitedLinkBorderLeftColor(color); | 168 style.setVisitedLinkBorderLeftColor(color); |
159 return; | 169 return; |
160 case CSSPropertyBorderRightColor: | 170 case CSSPropertyBorderRightColor: |
161 style.setVisitedLinkBorderRightColor(color); | 171 style.setVisitedLinkBorderRightColor(color); |
162 return; | 172 return; |
163 case CSSPropertyBorderTopColor: | 173 case CSSPropertyBorderTopColor: |
164 style.setVisitedLinkBorderTopColor(color); | 174 style.setVisitedLinkBorderTopColor(color); |
165 return; | 175 return; |
176 case CSSPropertyCaretColor: | |
177 return style.setVisitedLinkCaretColor(color); | |
166 case CSSPropertyColor: | 178 case CSSPropertyColor: |
167 style.setVisitedLinkColor(color); | 179 style.setVisitedLinkColor(color); |
168 return; | 180 return; |
169 case CSSPropertyFloodColor: | 181 case CSSPropertyFloodColor: |
170 style.setFloodColor(color); | 182 style.setFloodColor(color); |
171 return; | 183 return; |
172 case CSSPropertyLightingColor: | 184 case CSSPropertyLightingColor: |
173 style.setLightingColor(color); | 185 style.setLightingColor(color); |
174 return; | 186 return; |
175 case CSSPropertyOutlineColor: | 187 case CSSPropertyOutlineColor: |
(...skipping 11 matching lines...) Expand all Loading... | |
187 case CSSPropertyWebkitTextStrokeColor: | 199 case CSSPropertyWebkitTextStrokeColor: |
188 style.setVisitedLinkTextStrokeColor(color); | 200 style.setVisitedLinkTextStrokeColor(color); |
189 return; | 201 return; |
190 default: | 202 default: |
191 NOTREACHED(); | 203 NOTREACHED(); |
192 return; | 204 return; |
193 } | 205 } |
194 } | 206 } |
195 | 207 |
196 } // namespace blink | 208 } // namespace blink |
OLD | NEW |