6a6bdd9600c809638f594d46a50ce63ada439077
[WebKit-https.git] / WebCore / ChangeLog
1 2007-01-01  Mitz Pettel  <mitz@webkit.org>
2
3         Reviewed by Darin.
4
5         - WebCore changes for http://bugs.webkit.org/show_bug.cgi?id=11849
6           REGRESSION (r18182): Google Calendar is broken (a regular expression containing a null character is not parsed correctly)
7
8         * platform/RegularExpression.cpp:
9         (WebCore::RegularExpression::Private::compile): Changed to not null-terminate
10         the pattern string and instead pass its length to pcre_compile.
11
12 2007-01-01  Mitz Pettel  <mitz@webkit.org>
13
14         Reviewed by Darin.
15
16         - fix http://bugs.webkit.org/show_bug.cgi?id=11359
17           Incomplete repaint of table cell's collapsed border when changing only the cell
18
19         Test: fast/repaint/table-cell-collapsed-border.html
20
21         * rendering/RenderTable.h:
22         Added needsSectionRecalc() accessor.
23         * rendering/RenderTableCell.cpp:
24         (WebCore::RenderTableCell::getAbsoluteRepaintRect): Overloaded to add the
25         outer half of any collapsed borders. This function checks the cell's borders'
26         widths but also the widths of the adjoining cells' borders, since they can
27         contribute to the length of this cell's borders perpendicular to them, making
28         such a border overflow the cell in both dimensions.
29         (WebCore::RenderTableCell::borderLeft): Split the collapsing borders case off to
30         borderHalfLeft().
31         (WebCore::RenderTableCell::borderRight): Ditto.
32         (WebCore::RenderTableCell::borderTop): Ditto.
33         (WebCore::RenderTableCell::borderBottom): Ditto.
34         (WebCore::RenderTableCell::borderHalfLeft): Added. Takes an 'outer' boolean
35         parameter. When true, this function returns the width of the part of the border
36         that is outside the cell (different from the inner width when the total width is odd).
37         (WebCore::RenderTableCell::borderHalfRight): Ditto.
38         (WebCore::RenderTableCell::borderHalfTop): Ditto.
39         (WebCore::RenderTableCell::borderHalfBottom): Ditto.
40         * rendering/RenderTableCell.h:
41
42 2007-01-01  David Kilzer  <ddkilzer@webkit.org>
43
44         WebCore.vcproj change reviewed by Darin.  Additional build files updated by ddkilzer.
45
46         * CMakeLists.txt: Removed RenderLineEdit.cpp.
47         * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderLineEdit.cpp and RenderLineEdit.h.
48         * WebCoreSources.bkl: Removed RenderLineEdit.cpp.
49
50 2007-01-01  Mitz Pettel  <mitz@webkit.org>
51
52         Reviewed by Mark Rowe.
53
54         - fix http://bugs.webkit.org/show_bug.cgi?id=12042
55           Assertion failure in WebCore::RenderObject::drawBorder
56
57         Test: fast/borders/outline-offset-min-assert.html
58
59         * rendering/RenderObject.cpp:
60         (WebCore::RenderObject::paintOutline): Bail out if the width or height is
61         smaller than twice the outline inset.
62         
63 2007-01-01  Mark Rowe  <bdash@webkit.org>
64
65         Reviewed by Eric.
66
67         http://bugs.webkit.org/show_bug.cgi?id=12061
68         Bug 12061: Crash in WebCore::Shared<WebCore::StringImpl>::deref
69
70         * rendering/RenderStyle.cpp:
71         (WebCore::ContentData::clearContent): Reset _contentType to CONTENT_NONE to ensure repeated calls to clearContent
72         do not result in derefing deallocated members.
73
74 2007-01-01  Eric Seidel  <eric@webkit.org>
75
76         Reviewed by andersca.
77
78         Begin pushing code down into SVGAnimateElement
79
80         * ksvg2/svg/SVGAnimateColorElement.cpp:
81         (WebCore::SVGAnimateColorElement::handleStartCondition):
82         * ksvg2/svg/SVGAnimateColorElement.h:
83         * ksvg2/svg/SVGAnimateElement.h:
84         (WebCore::SVGAnimateElement::updateCurrentValue):
85         (WebCore::SVGAnimateElement::handleStartCondition):
86         (WebCore::SVGAnimateElement::handleEndCondition):
87         * ksvg2/svg/SVGAnimateTransformElement.cpp:
88         (WebCore::SVGAnimateTransformElement::handleStartCondition):
89         * ksvg2/svg/SVGAnimateTransformElement.h:
90         * ksvg2/svg/SVGAnimationElement.cpp:
91         (WebCore::SVGAnimationElement::handleTimerEvent):
92         * ksvg2/svg/SVGAnimationElement.h:
93         * ksvg2/svg/SVGSetElement.cpp:
94         (WebCore::SVGSetElement::updateCurrentValue):
95         (WebCore::SVGSetElement::handleStartCondition):
96         (WebCore::SVGSetElement::handleEndCondition):
97         * ksvg2/svg/SVGSetElement.h:
98
99 2007-01-01  Eric Seidel  <eric@webkit.org>
100
101         Reviewed by andersca.
102
103         Add static function SVGColor::colorFromRGBColorString to allow parsing Colors from SVG color strings w/o creating an SVGColor object.
104
105         * ksvg2/svg/SVGAnimateColorElement.cpp:
106         (WebCore::SVGAnimateColorElement::storeInitialValue): use colorFromRGBColorString
107         (WebCore::SVGAnimateColorElement::startIfNecessary): use colorFromRGBColorString
108         * ksvg2/svg/SVGColor.cpp:
109         (WebCore::SVGColor::setRGBColor): use colorFromRGBColorString
110         (WebCore::parseNumberOrPercent): new color parsing helper
111         (WebCore::SVGColor::colorFromRGBColorString): cleaned up version of setRGBColor parsing logic
112         * ksvg2/svg/SVGColor.h:
113
114 2007-01-01  Eric Seidel  <eric@webkit.org>
115
116         Reviewed by andersca.
117
118         Split handleTimerEvent logic into separate functions in preparation for moving down into SVGAnimationElement
119
120         * ksvg2/svg/SVGAnimateColorElement.cpp:
121         (WebCore::SVGAnimateColorElement::storeInitialValue):
122         (WebCore::SVGAnimateColorElement::resetValues):
123         (WebCore::SVGAnimateColorElement::updateCurrentValue):
124         (WebCore::SVGAnimateColorElement::startIfNecessary):
125         (WebCore::SVGAnimateColorElement::handleEndCondition):
126         (WebCore::SVGAnimateColorElement::handleTimerEvent):
127         * ksvg2/svg/SVGAnimateColorElement.h:
128         * ksvg2/svg/SVGAnimateTransformElement.cpp:
129         (WebCore::SVGAnimateTransformElement::storeInitialValue):
130         (WebCore::SVGAnimateTransformElement::resetValues):
131         (WebCore::SVGAnimateTransformElement::updateCurrentValue):
132         (WebCore::SVGAnimateTransformElement::startIfNecessary):
133         (WebCore::SVGAnimateTransformElement::handleEndCondition):
134         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
135         * ksvg2/svg/SVGAnimateTransformElement.h:
136
137 2007-01-01  Rob Buis  <buis@kde.org>
138
139         Reviewed by Eric.
140
141         Simple cleanups, removing unused color table, copyright and include guard fixes.
142
143         * ksvg2/svg/SVGColor.cpp:
144         * ksvg2/svg/SVGColor.h:
145
146 2007-01-01  Eric Seidel  <eric@webkit.org>
147
148         Reviewed by andersca.
149
150         More animation code cleanup.
151
152         * ksvg2/svg/SVGAnimateColorElement.cpp:
153         (WebCore::SVGAnimateColorElement::handleTimerEvent):
154         * ksvg2/svg/SVGAnimateTransformElement.cpp:
155         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
156         * ksvg2/svg/SVGAnimationElement.cpp:
157         (WebCore::SVGAnimationElement::SVGAnimationElement):
158         (WebCore::SVGAnimationElement::connectedToTimer):
159         (WebCore::SVGAnimationElement::connectTimer):
160         (WebCore::SVGAnimationElement::disconnectTimer):
161         (WebCore::SVGAnimationElement::updateForElapsedSeconds):
162         * ksvg2/svg/SVGAnimationElement.h:
163         * ksvg2/svg/SVGSetElement.cpp:
164         (WebCore::SVGSetElement::handleTimerEvent):
165         * ksvg2/svg/SVGSetElement.h:
166
167 2007-01-01  Eric Seidel  <eric@webkit.org>
168
169         Reviewed by mitz.
170
171         More clean-up to animation code.
172
173         * ksvg2/svg/SVGAnimateColorElement.cpp:
174         (WebCore::SVGAnimateColorElement::handleTimerEvent):
175         * ksvg2/svg/SVGAnimateTransformElement.cpp:
176         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
177         (WebCore::SVGAnimateTransformElement::parseTransformValue):
178         (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
179
180 2007-01-01  Eric Seidel  <eric@webkit.org>
181
182         Reviewed by olliej.
183
184         Begin pushing more animation logic out of SVGTimer and into the SVGAnimate* classes.
185         
186         * ksvg2/misc/SVGTimer.cpp:
187         (WebCore::SVGTimer::animationsByElement): add comment
188         (WebCore::SVGTimer::notifyAll): push logic into SVGAnimte* classes
189         * ksvg2/svg/SVGAnimateColorElement.cpp:
190         (WebCore::SVGAnimateColorElement::applyAnimationToValue): added.
191         * ksvg2/svg/SVGAnimateColorElement.h:
192         * ksvg2/svg/SVGAnimateElement.cpp:
193         * ksvg2/svg/SVGAnimateTransformElement.cpp:
194         (WebCore::SVGAnimateTransformElement::applyAnimationToValue): added.
195         * ksvg2/svg/SVGAnimateTransformElement.h:
196         * ksvg2/svg/SVGAnimationElement.cpp:
197         (WebCore::calculateTimePercentage): logic moved from SVGTimer
198         (WebCore::SVGAnimationElement::updateForElapsedSeconds): logic moved from SVGTimer
199         * ksvg2/svg/SVGAnimationElement.h:
200         * ksvg2/svg/SVGTransformList.cpp:
201         (SVGTransformList::concatenate): fixed spacing
202
203 2007-01-01  Eric Seidel  <eric@webkit.org>
204
205         Reviewed by olliej.
206
207         Split out animationsByElement() logic in preparation for adding AnimationCompositor class
208         Add addColorsAndClamp helper (since adding and clamping is the common case)
209
210         * ksvg2/misc/SVGTimer.cpp:
211         (WebCore::SVGTimer::animationsByElement): split out from notifyAll
212         (WebCore::SVGTimer::notifyAll):
213         * ksvg2/misc/SVGTimer.h:
214         * ksvg2/svg/SVGAnimateColorElement.cpp:
215         (WebCore::SVGAnimateColorElement::addColorsAndClamp): added.
216         * ksvg2/svg/SVGAnimateColorElement.h:
217
218 2006-12-31  Eric Seidel  <eric@webkit.org>
219
220         Reviewed by olliej.
221
222         Split KSVGTimeScheduler into SVGTimer and TimeScheduler.
223         (Basic clean-up before re-working animation system)
224
225         * WebCore.xcodeproj/project.pbxproj:
226         * ksvg2/misc/KSVGTimeScheduler.cpp: Removed.
227         * ksvg2/misc/KSVGTimeScheduler.h: Removed.
228         * ksvg2/misc/SVGTimer.cpp: Added.
229         (WebCore::SVGTimer::SVGTimer):
230         (WebCore::SVGTimer::calculateTimePercentage):
231         (WebCore::SVGTimer::notifyAll):
232         * ksvg2/misc/SVGTimer.h: Added.
233         * ksvg2/misc/TimeScheduler.cpp: Added.
234         (WebCore::TimeScheduler::TimeScheduler):
235
236 2006-12-31  Eric Seidel  <eric@webkit.org>
237
238         Reviewed by olliej.
239
240         Re-enable animateTransform (now that SVGList is fixed)
241         (Things are only "less broken" not totally fixed yet.)
242
243         * ksvg2/misc/KSVGTimeScheduler.cpp:
244         (WebCore::SVGTimer::notifyAll):
245
246 2006-12-31  Mitz Pettel  <mitz@webkit.org>
247
248         Reviewed by Hyatt.
249
250         - http://bugs.webkit.org/show_bug.cgi?id=12049
251           RenderBlock::calcMinMaxWidth() should not examine children of fixed-width blocks
252
253         No test possible (no change to functionality).
254
255         * rendering/RenderBlock.cpp:
256         (WebCore::RenderBlock::calcMinMaxWidth): Call calc{Inline,Block}MinMaxWidth()
257         only if their result is needed.
258
259 == Rolled over to ChangeLog-2006-12-31 ==