2009-02-05 Scott Violet <sky@google.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2009-02-05  Scott Violet  <sky@google.com>
2
3         Reviewed by Eric Seidel.
4
5         https://bugs.webkit.org/show_bug.cgi?id=23766
6         CanvasRenderingContext2D::setShadow needs else for other platforms.
7
8         Implements the CMYK variant of CanvasRenderingContext2D::setShadow for
9         other platforms using the CMYK color constructor.
10
11         * html/CanvasRenderingContext2D.cpp:
12         (WebCore::CanvasRenderingContext2D::setShadow):
13
14 2009-02-05  Scott Violet  <sky@google.com>
15
16         Reviewed by Eric Seidel.
17
18         https://bugs.webkit.org/show_bug.cgi?id=23687
19         Wires up Skia'a ImageBuffer::toDataURL to support pngs.
20         This helps Chromium pass a couple of layout tests.
21
22         * platform/graphics/skia/ImageBufferSkia.cpp:
23         (WebCore::ImageBuffer::toDataURL):
24         * platform/image-encoders: Added.
25         * platform/image-encoders/skia: Added.
26         * platform/image-encoders/skia/PNGImageEncoder.cpp: Added.
27         (WebCore::):
28         (WebCore::PngEncoderState::EncoderWriteCallback):
29         (WebCore::PngEncoderState::ConvertBGRAtoRGB):
30         (WebCore::PngEncoderState::PngWriteStructDestroyer::PngWriteStructDestroyer):
31         (WebCore::PngEncoderState::PngWriteStructDestroyer::~PngWriteStructDestroyer):
32         (WebCore::PNGImageEncoder::encode):
33         * platform/image-encoders/skia/PNGImageEncoder.h: Added.
34
35 2009-02-05  Sam Weinig  <sam@webkit.org>
36
37         Reviewed by Darin Adler.
38
39         Fix missing checked cast.
40
41         * rendering/RenderObject.cpp:
42         (WebCore::RenderObject::containingBlock):
43
44 2009-02-05  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
45
46         Not reviewed. Fix WML enabled builds.
47
48         FrameLoader::load() got an additional 'lockHistory' parameter, pass 'false'.
49
50         * wml/WMLGoElement.cpp:
51         (WebCore::WMLGoElement::executeTask):
52
53 2009-02-05  Scott Violet  <sky@google.com>
54
55         Reviewed by Eric Seidel.
56
57         https://bugs.webkit.org/show_bug.cgi?id=23625
58         Additional fix: Skia platform doesn't render text to a canvas or support clipping to an image buffer
59
60         Fixes three bugs in PlatformContextSkia:
61
62         * When a new layer was started clipped to an image we used the
63           assignment operator to copy the SkBitmap. If the SkBitmap owns it's
64           pixels, this is not the right thing to do. Instead we need to create
65           a copy of the image.
66         * State holds an SkBitmap by value. State's copy constructor does a
67           memcpy. This is confusing and subtle, I've converted to use a member
68           initializer list which I think is clearer and less error prone.
69         * When creating a new layer there is no need to copy the clip image.
70
71         * platform/graphics/skia/PlatformContextSkia.cpp:
72         (PlatformContextSkia::State::State):
73         (PlatformContextSkia::save):
74         (PlatformContextSkia::beginLayerClippedToImage):
75
76 2009-02-05  Scott Violet  <sky@google.com>
77
78         Reviewed by George Staikos.
79
80         https://bugs.webkit.org/show_bug.cgi?id=23462
81         Changes call from setFillColor to setStrokeColor.
82
83         * html/CanvasStyle.cpp:
84         (WebCore::CanvasStyle::applyStrokeColor):
85
86 2009-02-05  David Hyatt  <hyatt@apple.com>
87
88         Fix crash on svg custom stop test.  A virtual function didn't get patched properly.
89
90         Reviewed by Sam Weinig
91
92         * rendering/RenderObject.cpp:
93         (WebCore::RenderObject::clippedOverflowRectForRepaint):
94         * rendering/RenderSVGGradientStop.h:
95         (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
96
97 2009-02-05  Simon Fraser  <simon.fraser@apple.com>
98
99         Reviewed by Dave Hyatt
100
101         https://bugs.webkit.org/show_bug.cgi?id=23765
102
103         Add toRenderBoxModelObject() so that we can cast objects that
104         can have layers.
105         
106         Fix getComputedStyle to return the current value of style
107         properties that are undergoing accelerated animations, by
108         asking the AnimationController if the property has accelerated
109         animations, and, if so, asking it to generate an appropriate
110         style.
111         
112         Tightened up some type safety (CSSPropertyID), and code clarity
113         (replace bool with enum).
114
115         * WebCore.xcodeproj/project.pbxproj:
116         * css/CSSComputedStyleDeclaration.cpp:
117         (WebCore::hasCompositedLayer):
118         (WebCore::computedTransform):
119         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
120         * page/animation/AnimationController.cpp:
121         (WebCore::AnimationControllerPrivate::isAnimatingPropertyOnRenderer):
122         (WebCore::AnimationController::isAnimatingPropertyOnRenderer):
123         (WebCore::AnimationController::supportsAcceleratedAnimationOfProperty):
124         * page/animation/AnimationController.h:
125         * page/animation/AnimationControllerPrivate.h:
126         * page/animation/ImplicitAnimation.cpp:
127         (WebCore::ImplicitAnimation::startAnimation):
128         (WebCore::ImplicitAnimation::endAnimation):
129         * page/animation/KeyframeAnimation.cpp:
130         (WebCore::KeyframeAnimation::startAnimation):
131         (WebCore::KeyframeAnimation::endAnimation):
132         * rendering/RenderBoxModelObject.h:
133         (WebCore::RenderBoxModelObject::isBoxModelObject):
134         (WebCore::toRenderBoxModelObject):
135         * rendering/RenderLayerBacking.cpp:
136         (WebCore::RenderLayerBacking::updateLayerTransform):
137         * rendering/RenderObject.h:
138         (WebCore::RenderObject::isBoxModelObject):
139         * rendering/style/RenderStyle.cpp:
140         (WebCore::RenderStyle::applyTransform):
141         * rendering/style/RenderStyle.h:
142         (WebCore::InheritedFlags::):
143
144 2009-02-05  Dimitri Glazkov  <dglazkov@chromium.org>
145
146         Reviewed by Eric Seidel.
147
148         https://bugs.webkit.org/show_bug.cgi?id=23767
149         Add custom V8 bindings for HTML5 database.
150
151         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp: Added.
152         (WebCore::V8CustomSQLStatementCallback::V8CustomSQLStatementCallback):
153         (WebCore::V8CustomSQLStatementCallback::~V8CustomSQLStatementCallback):
154         (WebCore::V8CustomSQLStatementCallback::handleEvent):
155         * bindings/v8/custom/V8CustomSQLStatementCallback.h: Added.
156         (WebCore::V8CustomSQLStatementCallback::create):
157         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp: Added.
158         (WebCore::V8CustomSQLStatementErrorCallback::V8CustomSQLStatementErrorCallback):
159         (WebCore::V8CustomSQLStatementErrorCallback::~V8CustomSQLStatementErrorCallback):
160         (WebCore::V8CustomSQLStatementErrorCallback::handleEvent):
161         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.h: Added.
162         (WebCore::V8CustomSQLStatementErrorCallback::create):
163         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp: Added.
164         (WebCore::V8CustomSQLTransactionCallback::V8CustomSQLTransactionCallback):
165         (WebCore::V8CustomSQLTransactionCallback::~V8CustomSQLTransactionCallback):
166         (WebCore::V8CustomSQLTransactionCallback::handleEvent):
167         * bindings/v8/custom/V8CustomSQLTransactionCallback.h: Added.
168         (WebCore::V8CustomSQLTransactionCallback::create):
169         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp: Added.
170         (WebCore::V8CustomSQLTransactionErrorCallback::V8CustomSQLTransactionErrorCallback):
171         (WebCore::V8CustomSQLTransactionErrorCallback::~V8CustomSQLTransactionErrorCallback):
172         (WebCore::V8CustomSQLTransactionErrorCallback::handleEvent):
173         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h: Added.
174         (WebCore::V8CustomSQLTransactionErrorCallback::create):
175         * bindings/v8/custom/V8CustomVoidCallback.cpp: Added.
176         (WebCore::V8CustomVoidCallback::V8CustomVoidCallback):
177         (WebCore::V8CustomVoidCallback::~V8CustomVoidCallback):
178         (WebCore::V8CustomVoidCallback::handleEvent):
179         (WebCore::invokeCallback):
180         * bindings/v8/custom/V8CustomVoidCallback.h: Added.
181         (WebCore::V8CustomVoidCallback::create):
182         * bindings/v8/custom/V8DatabaseCustom.cpp: Added.
183         (WebCore::CALLBACK_FUNC_DECL):
184         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp: Added.
185         (WebCore::CALLBACK_FUNC_DECL):
186         * bindings/v8/custom/V8SQLTransactionCustom.cpp: Added.
187         (WebCore::CALLBACK_FUNC_DECL):
188
189 2009-02-05  Dimitri Glazkov  <dglazkov@chromium.org>
190
191         Reviewed by Eric Seidel.
192
193         https://bugs.webkit.org/show_bug.cgi?id=23747
194         Add Chromium threading-related files.
195
196         * platform/chromium/TemporaryLinkStubs.cpp: Removed theading-related stubs.
197
198 2009-02-05  Sam Weinig  <sam@webkit.org>
199
200         Reviewed by Adam Roben.
201
202         Add toRenderButton methods for casting RenderObjects to RenderButtons. The methods will assert if the object
203         is not a RenderButton. Also add a toRenderButton method that takes a RenderButton but returns void and that
204         is unimplemented. This method will catch anyone trying to do a cast when the object is already a RenderButton.
205
206         * rendering/RenderButton.h:
207         (WebCore::RenderButton::isRenderButton):
208         (WebCore::toRenderButton):
209         * rendering/RenderFileUploadControl.cpp:
210         (WebCore::RenderFileUploadControl::paintObject):
211         * rendering/RenderObject.h:
212         (WebCore::RenderObject::isRenderButton):
213
214 2009-02-05  David Hyatt  <hyatt@apple.com>
215
216         Move the m_layer member variable of RenderBox up into RenderBoxModelObject.  Refactor styleDidChange'
217         of RenderObject, RenderBoxModelObject and RenderBox to get more of the code in the correct subclass.  
218         In order to set the various RenderObject bits properly prior to the test for whether a layer is 
219         required, I added an additional method, updateBoxModelInfoAfterStyleChange, that is responsible
220         for setting all of the bits.
221         
222         Eliminate hasStaticX/Y, staticX/Y, and setStaticX/Y from the render tree.  Move hasStaticX/Y to
223         RenderStyle, and just use the corresponding layer() methods for the
224         staticX/Y getters/setters.
225
226         Reviewed by Sam Weinig
227
228         * rendering/RenderBlock.cpp:
229         (WebCore::RenderBlock::layoutBlock):
230         (WebCore::RenderBlock::adjustPositionedBlock):
231         (WebCore::RenderBlock::layoutOnlyPositionedObjects):
232         (WebCore::RenderBlock::layoutPositionedObjects):
233         (WebCore::RenderBlock::paintObject):
234         (WebCore::RenderBlock::nodeAtPoint):
235         (WebCore::RenderBlock::offsetForContents):
236         (WebCore::RenderBlock::calcPrefWidths):
237         (WebCore::RenderBlock::baselinePosition):
238         * rendering/RenderBox.cpp:
239         (WebCore::RenderBox::RenderBox):
240         (WebCore::RenderBox::destroy):
241         (WebCore::RenderBox::styleWillChange):
242         (WebCore::RenderBox::styleDidChange):
243         (WebCore::RenderBox::updateBoxModelInfoFromStyle):
244         (WebCore::RenderBox::scrollWidth):
245         (WebCore::RenderBox::scrollHeight):
246         (WebCore::RenderBox::scrollLeft):
247         (WebCore::RenderBox::scrollTop):
248         (WebCore::RenderBox::setScrollLeft):
249         (WebCore::RenderBox::setScrollTop):
250         (WebCore::RenderBox::getOverflowClipRect):
251         (WebCore::RenderBox::localToAbsolute):
252         (WebCore::RenderBox::absoluteToLocal):
253         (WebCore::RenderBox::localToContainerQuad):
254         (WebCore::RenderBox::position):
255         (WebCore::RenderBox::computeRectForRepaint):
256         (WebCore::RenderBox::calcAbsoluteHorizontal):
257         (WebCore::RenderBox::calcAbsoluteVertical):
258         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
259         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
260         * rendering/RenderBox.h:
261         * rendering/RenderBoxModelObject.cpp:
262         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
263         (WebCore::RenderBoxModelObject::destroy):
264         (WebCore::RenderBoxModelObject::styleWillChange):
265         (WebCore::RenderBoxModelObject::styleDidChange):
266         (WebCore::RenderBoxModelObject::updateBoxModelInfoFromStyle):
267         * rendering/RenderBoxModelObject.h:
268         (WebCore::RenderBoxModelObject::layer):
269         (WebCore::RenderBoxModelObject::requiresLayer):
270         * rendering/RenderFlexibleBox.cpp:
271         (WebCore::RenderFlexibleBox::layoutBlock):
272         (WebCore::RenderFlexibleBox::layoutHorizontalBox):
273         (WebCore::RenderFlexibleBox::layoutVerticalBox):
274         * rendering/RenderInline.cpp:
275         (WebCore::RenderInline::updateBoxModelInfoFromStyle):
276         (WebCore::RenderInline::styleDidChange):
277         (WebCore::RenderInline::relativePositionedInlineOffset):
278         * rendering/RenderInline.h:
279         * rendering/RenderLayer.cpp:
280         (WebCore::RenderLayer::setStaticY):
281         (WebCore::RenderLayer::updateLayerPosition):
282         * rendering/RenderLayer.h:
283         * rendering/RenderObject.cpp:
284         (WebCore::RenderObject::setStyle):
285         (WebCore::RenderObject::styleDidChange):
286         * rendering/RenderObject.h:
287         (WebCore::RenderObject::markContainingBlocksForLayout):
288         * rendering/RenderTableRow.cpp:
289         (WebCore::RenderTableRow::paint):
290         * rendering/RenderWidget.cpp:
291         (WebCore::RenderWidget::destroy):
292         * rendering/bidi.cpp:
293         (WebCore::appendRunsForObject):
294         (WebCore::RenderBlock::layoutInlineChildren):
295         (WebCore::RenderBlock::skipTrailingWhitespace):
296         (WebCore::RenderBlock::skipLeadingWhitespace):
297         (WebCore::RenderBlock::findNextLineBreak):
298         * rendering/style/RenderStyle.h:
299         (WebCore::InheritedFlags::hasStaticX):
300         (WebCore::InheritedFlags::hasStaticY):
301
302 2009-02-05  Sam Weinig  <sam@webkit.org>
303
304         Fix the windows build.
305
306         * bindings/scripts/CodeGeneratorCOM.pm:
307         * dom/Node.idl:
308
309 2009-02-05  Anders Carlsson  <andersca@apple.com>
310
311         Reviewed by Kevin Decker.
312         
313         Update to match Gecko.
314         
315         * bridge/npapi.h:
316         * plugins/npfunctions.h:
317
318 2009-02-05  Sam Weinig  <sam@webkit.org>
319
320         Reviewed by Darin Adler.
321
322         Finish merging EventTargetNode up into Node.
323
324         This also fixes a small recently introduced issue where EventListeners
325         would not be removed from the document if they were attached to comment
326         nodes outside of the documentElement.
327
328         * GNUmakefile.am:
329         * WebCore.pro:
330         * WebCore.scons:
331         * WebCore.vcproj/WebCore.vcproj:
332         * WebCore.xcodeproj/project.pbxproj:
333         * WebCoreSources.bkl:
334         * bindings/js/JSEventTargetNodeCustom.cpp: Removed.
335         * bindings/js/JSNodeCustom.cpp:
336         (WebCore::JSNode::addEventListener):
337         (WebCore::JSNode::removeEventListener):
338         (WebCore::JSNode::pushEventHandlerScope):
339         * bindings/scripts/CodeGenerator.pm:
340         * dom/CharacterData.cpp:
341         (WebCore::CharacterData::CharacterData):
342         (WebCore::CharacterData::rendererIsNeeded):
343         * dom/CharacterData.h:
344         * dom/ContainerNode.cpp:
345         (WebCore::ContainerNode::willRemove):
346         (WebCore::ContainerNode::attach):
347         (WebCore::ContainerNode::detach):
348         (WebCore::ContainerNode::insertedIntoDocument):
349         (WebCore::ContainerNode::removedFromDocument):
350         (WebCore::ContainerNode::setFocus):
351         (WebCore::ContainerNode::setActive):
352         (WebCore::ContainerNode::setHovered):
353         (WebCore::dispatchChildInsertionEvents):
354         (WebCore::dispatchChildRemovalEvents):
355         * dom/ContainerNode.h:
356         (WebCore::ContainerNode::ContainerNode):
357         * dom/Document.cpp:
358         (WebCore::Document::removeAllEventListenersFromAllNodes):
359         (WebCore::Document::removeAllDisconnectedNodeEventListeners):
360         (WebCore::Document::setFocusedNode):
361         * dom/EventTargetNode.cpp: Removed.
362         * dom/EventTargetNode.h: Removed.
363         * dom/Node.cpp:
364         (WebCore::Node::scriptExecutionContext):
365         (WebCore::Node::eventListeners):
366         (WebCore::Node::insertedIntoDocument):
367         (WebCore::Node::removedFromDocument):
368         (WebCore::Node::willMoveToNewOwnerDocument):
369         (WebCore::Node::didMoveToNewOwnerDocument):
370         (WebCore::updateSVGElementInstancesAfterEventListenerChange):
371         (WebCore::Node::addEventListener):
372         (WebCore::Node::removeEventListener):
373         (WebCore::Node::removeAllEventListenersSlowCase):
374         (WebCore::Node::handleLocalEvents):
375         (WebCore::eventTargetAsSVGElementInstance):
376         (WebCore::eventTargetRespectingSVGTargetRules):
377         (WebCore::Node::dispatchEvent):
378         (WebCore::Node::dispatchGenericEvent):
379         (WebCore::Node::dispatchSubtreeModifiedEvent):
380         (WebCore::Node::dispatchWindowEvent):
381         (WebCore::Node::dispatchUIEvent):
382         (WebCore::Node::dispatchKeyEvent):
383         (WebCore::Node::dispatchMouseEvent):
384         (WebCore::Node::dispatchSimulatedMouseEvent):
385         (WebCore::Node::dispatchSimulatedClick):
386         (WebCore::Node::dispatchWheelEvent):
387         (WebCore::Node::dispatchWebKitAnimationEvent):
388         (WebCore::Node::dispatchWebKitTransitionEvent):
389         (WebCore::Node::dispatchFocusEvent):
390         (WebCore::Node::dispatchBlurEvent):
391         (WebCore::Node::dispatchEventForType):
392         (WebCore::Node::dispatchProgressEvent):
393         (WebCore::Node::dispatchStorageEvent):
394         (WebCore::Node::removeInlineEventListenerForType):
395         (WebCore::Node::setInlineEventListenerForType):
396         (WebCore::Node::setInlineEventListenerForTypeAndAttribute):
397         (WebCore::Node::inlineEventListenerForType):
398         (WebCore::Node::disabled):
399         (WebCore::Node::defaultEventHandler):
400         (WebCore::Node::onabort):
401         (WebCore::Node::setOnabort):
402         (WebCore::Node::onblur):
403         (WebCore::Node::setOnblur):
404         (WebCore::Node::onchange):
405         (WebCore::Node::setOnchange):
406         (WebCore::Node::onclick):
407         (WebCore::Node::setOnclick):
408         (WebCore::Node::oncontextmenu):
409         (WebCore::Node::setOncontextmenu):
410         (WebCore::Node::ondblclick):
411         (WebCore::Node::setOndblclick):
412         (WebCore::Node::onerror):
413         (WebCore::Node::setOnerror):
414         (WebCore::Node::onfocus):
415         (WebCore::Node::setOnfocus):
416         (WebCore::Node::oninput):
417         (WebCore::Node::setOninput):
418         (WebCore::Node::onkeydown):
419         (WebCore::Node::setOnkeydown):
420         (WebCore::Node::onkeypress):
421         (WebCore::Node::setOnkeypress):
422         (WebCore::Node::onkeyup):
423         (WebCore::Node::setOnkeyup):
424         (WebCore::Node::onload):
425         (WebCore::Node::setOnload):
426         (WebCore::Node::onmousedown):
427         (WebCore::Node::setOnmousedown):
428         (WebCore::Node::onmousemove):
429         (WebCore::Node::setOnmousemove):
430         (WebCore::Node::onmouseout):
431         (WebCore::Node::setOnmouseout):
432         (WebCore::Node::onmouseover):
433         (WebCore::Node::setOnmouseover):
434         (WebCore::Node::onmouseup):
435         (WebCore::Node::setOnmouseup):
436         (WebCore::Node::onmousewheel):
437         (WebCore::Node::setOnmousewheel):
438         (WebCore::Node::onbeforecut):
439         (WebCore::Node::setOnbeforecut):
440         (WebCore::Node::oncut):
441         (WebCore::Node::setOncut):
442         (WebCore::Node::onbeforecopy):
443         (WebCore::Node::setOnbeforecopy):
444         (WebCore::Node::oncopy):
445         (WebCore::Node::setOncopy):
446         (WebCore::Node::onbeforepaste):
447         (WebCore::Node::setOnbeforepaste):
448         (WebCore::Node::onpaste):
449         (WebCore::Node::setOnpaste):
450         (WebCore::Node::ondragenter):
451         (WebCore::Node::setOndragenter):
452         (WebCore::Node::ondragover):
453         (WebCore::Node::setOndragover):
454         (WebCore::Node::ondragleave):
455         (WebCore::Node::setOndragleave):
456         (WebCore::Node::ondrop):
457         (WebCore::Node::setOndrop):
458         (WebCore::Node::ondragstart):
459         (WebCore::Node::setOndragstart):
460         (WebCore::Node::ondrag):
461         (WebCore::Node::setOndrag):
462         (WebCore::Node::ondragend):
463         (WebCore::Node::setOndragend):
464         (WebCore::Node::onreset):
465         (WebCore::Node::setOnreset):
466         (WebCore::Node::onresize):
467         (WebCore::Node::setOnresize):
468         (WebCore::Node::onscroll):
469         (WebCore::Node::setOnscroll):
470         (WebCore::Node::onsearch):
471         (WebCore::Node::setOnsearch):
472         (WebCore::Node::onselect):
473         (WebCore::Node::setOnselect):
474         (WebCore::Node::onselectstart):
475         (WebCore::Node::setOnselectstart):
476         (WebCore::Node::onsubmit):
477         (WebCore::Node::setOnsubmit):
478         (WebCore::Node::onunload):
479         (WebCore::Node::setOnunload):
480         * dom/Node.h:
481         * editing/Editor.cpp:
482         (WebCore::Editor::dispatchCPPEvent):
483         * html/HTMLFormElement.cpp:
484         (WebCore::HTMLFormElement::handleLocalEvents):
485         * html/HTMLInputElement.cpp:
486         (WebCore::HTMLInputElement::defaultEventHandler):
487         * html/HTMLTokenizer.cpp:
488         (WebCore::HTMLTokenizer::notifyFinished):
489         * loader/MediaDocument.cpp:
490         (WebCore::MediaDocument::defaultEventHandler):
491         * page/AccessibilityRenderObject.cpp:
492         (WebCore::AccessibilityRenderObject::mouseButtonListener):
493         * page/EventHandler.cpp:
494         (WebCore::EventHandler::dispatchDragEvent):
495         (WebCore::EventHandler::updateMouseEventTargetNode):
496         (WebCore::EventHandler::dispatchMouseEvent):
497         (WebCore::EventHandler::handleWheelEvent):
498         (WebCore::EventHandler::canMouseDownStartSelect):
499         (WebCore::EventHandler::canMouseDragExtendSelect):
500         (WebCore::eventTargetNodeForDocument):
501         (WebCore::EventHandler::keyEvent):
502         * page/FrameView.cpp:
503         (WebCore::FrameView::scheduleEvent):
504         (WebCore::FrameView::updateOverflowStatus):
505         * page/FrameView.h:
506         * page/Page.cpp:
507         (WebCore::networkStateChanged):
508         * rendering/RenderLayer.cpp:
509         (WebCore::RenderLayer::scrollToOffset):
510         (WebCore::RenderLayer::updateOverflowStatus):
511         * rendering/RenderListBox.cpp:
512         (WebCore::RenderListBox::valueChanged):
513         * rendering/RenderMedia.h:
514         * rendering/RenderTextControl.cpp:
515         (WebCore::RenderTextControl::selectionChanged):
516         * svg/SVGElementInstance.h:
517         (WebCore::SVGElementInstance::toNode):
518         * xml/XPathExpression.cpp:
519         (WebCore::XPathExpression::evaluate):
520         * xml/XPathResult.cpp:
521         (WebCore::XPathResult::XPathResult):
522
523 2009-02-05  Adam Treat  <adam.treat@torchmobile.com>
524
525         Fix the Qt build now that EventTargetNode.idl was removed in r40672.
526
527         * WebCore.pro:
528
529 2009-02-05  Scott Violet  <sky@google.com>
530
531         Reviewed by Sam Weinig.
532
533         Bug 23462: Add RGB -> CMYK conversion algorithm
534         <https://bugs.webkit.org/show_bug.cgi?id=23462>
535
536         Adds an RGB -> CMYK converter. This isn't perfect, but better than
537         nothing.
538
539         * html/CanvasStyle.cpp:
540         (WebCore::CanvasStyle::applyStrokeColor):
541         (WebCore::CanvasStyle::applyFillColor):
542         (WebCore::CanvasStyle::cmykToRGB):
543         * html/CanvasStyle.h:
544
545 2009-02-04  Sam Weinig  <sam@webkit.org>
546
547         Reviewed by Darin Adler.
548
549         First stage of merging EventTargetNode up into Node. The intent of this change
550         is to both simplify the inheritance hierarchy (at the same time making it more
551         closely match the spec which states that all Nodes are EventTargets) and save
552         4 bytes per Node that the polymorphic multiple-inheritance was costing us.
553
554         This does the bare minimum to get things compiling, the next patch will clean 
555
556         * DerivedSources.make:
557         * WebCore.base.exp:
558         * WebCore.xcodeproj/project.pbxproj:
559         * bindings/js/JSDocumentCustom.cpp:
560         (WebCore::JSDocument::mark):
561         * bindings/js/JSEventListener.cpp:
562         (WebCore::JSLazyEventListener::parseCode):
563         * bindings/js/JSEventTarget.cpp:
564         (WebCore::toEventTarget):
565         * bindings/js/JSEventTarget.h:
566         * bindings/js/JSEventTargetNodeCustom.cpp:
567         (WebCore::JSNode::addEventListener):
568         (WebCore::JSNode::removeEventListener):
569         (WebCore::JSNode::pushEventHandlerScope):
570         * bindings/js/JSStyleSheetCustom.cpp:
571         * bindings/scripts/CodeGeneratorJS.pm:
572         * bindings/scripts/CodeGeneratorObjC.pm:
573         * dom/Attr.idl:
574         * dom/CharacterData.h:
575         * dom/CharacterData.idl:
576         * dom/Document.idl:
577         * dom/DocumentFragment.idl:
578         * dom/Element.idl:
579         * dom/EventTarget.cpp:
580         (WebCore::EventTarget::toNode):
581         * dom/EventTarget.h:
582         * dom/EventTarget.idl:
583         * dom/EventTargetNode.cpp:
584         (WebCore::Node::scriptExecutionContext):
585         (WebCore::Node::eventListeners):
586         (WebCore::Node::insertedIntoDocument):
587         (WebCore::Node::removedFromDocument):
588         (WebCore::Node::willMoveToNewOwnerDocument):
589         (WebCore::Node::didMoveToNewOwnerDocument):
590         (WebCore::Node::addEventListener):
591         (WebCore::Node::removeEventListener):
592         (WebCore::Node::removeAllEventListenersSlowCase):
593         (WebCore::Node::handleLocalEvents):
594         (WebCore::Node::dispatchEvent):
595         (WebCore::Node::dispatchGenericEvent):
596         (WebCore::Node::dispatchSubtreeModifiedEvent):
597         (WebCore::Node::dispatchWindowEvent):
598         (WebCore::Node::dispatchUIEvent):
599         (WebCore::Node::dispatchKeyEvent):
600         (WebCore::Node::dispatchMouseEvent):
601         (WebCore::Node::dispatchSimulatedMouseEvent):
602         (WebCore::Node::dispatchSimulatedClick):
603         (WebCore::Node::dispatchWheelEvent):
604         (WebCore::Node::dispatchWebKitAnimationEvent):
605         (WebCore::Node::dispatchWebKitTransitionEvent):
606         (WebCore::Node::dispatchFocusEvent):
607         (WebCore::Node::dispatchBlurEvent):
608         (WebCore::Node::dispatchEventForType):
609         (WebCore::Node::dispatchProgressEvent):
610         (WebCore::Node::dispatchStorageEvent):
611         (WebCore::Node::removeInlineEventListenerForType):
612         (WebCore::Node::setInlineEventListenerForType):
613         (WebCore::Node::setInlineEventListenerForTypeAndAttribute):
614         (WebCore::Node::inlineEventListenerForType):
615         (WebCore::Node::disabled):
616         (WebCore::Node::defaultEventHandler):
617         (WebCore::Node::onabort):
618         (WebCore::Node::setOnabort):
619         (WebCore::Node::onblur):
620         (WebCore::Node::setOnblur):
621         (WebCore::Node::onchange):
622         (WebCore::Node::setOnchange):
623         (WebCore::Node::onclick):
624         (WebCore::Node::setOnclick):
625         (WebCore::Node::oncontextmenu):
626         (WebCore::Node::setOncontextmenu):
627         (WebCore::Node::ondblclick):
628         (WebCore::Node::setOndblclick):
629         (WebCore::Node::onerror):
630         (WebCore::Node::setOnerror):
631         (WebCore::Node::onfocus):
632         (WebCore::Node::setOnfocus):
633         (WebCore::Node::oninput):
634         (WebCore::Node::setOninput):
635         (WebCore::Node::onkeydown):
636         (WebCore::Node::setOnkeydown):
637         (WebCore::Node::onkeypress):
638         (WebCore::Node::setOnkeypress):
639         (WebCore::Node::onkeyup):
640         (WebCore::Node::setOnkeyup):
641         (WebCore::Node::onload):
642         (WebCore::Node::setOnload):
643         (WebCore::Node::onmousedown):
644         (WebCore::Node::setOnmousedown):
645         (WebCore::Node::onmousemove):
646         (WebCore::Node::setOnmousemove):
647         (WebCore::Node::onmouseout):
648         (WebCore::Node::setOnmouseout):
649         (WebCore::Node::onmouseover):
650         (WebCore::Node::setOnmouseover):
651         (WebCore::Node::onmouseup):
652         (WebCore::Node::setOnmouseup):
653         (WebCore::Node::onmousewheel):
654         (WebCore::Node::setOnmousewheel):
655         (WebCore::Node::onbeforecut):
656         (WebCore::Node::setOnbeforecut):
657         (WebCore::Node::oncut):
658         (WebCore::Node::setOncut):
659         (WebCore::Node::onbeforecopy):
660         (WebCore::Node::setOnbeforecopy):
661         (WebCore::Node::oncopy):
662         (WebCore::Node::setOncopy):
663         (WebCore::Node::onbeforepaste):
664         (WebCore::Node::setOnbeforepaste):
665         (WebCore::Node::onpaste):
666         (WebCore::Node::setOnpaste):
667         (WebCore::Node::ondragenter):
668         (WebCore::Node::setOndragenter):
669         (WebCore::Node::ondragover):
670         (WebCore::Node::setOndragover):
671         (WebCore::Node::ondragleave):
672         (WebCore::Node::setOndragleave):
673         (WebCore::Node::ondrop):
674         (WebCore::Node::setOndrop):
675         (WebCore::Node::ondragstart):
676         (WebCore::Node::setOndragstart):
677         (WebCore::Node::ondrag):
678         (WebCore::Node::setOndrag):
679         (WebCore::Node::ondragend):
680         (WebCore::Node::setOndragend):
681         (WebCore::Node::onreset):
682         (WebCore::Node::setOnreset):
683         (WebCore::Node::onresize):
684         (WebCore::Node::setOnresize):
685         (WebCore::Node::onscroll):
686         (WebCore::Node::setOnscroll):
687         (WebCore::Node::onsearch):
688         (WebCore::Node::setOnsearch):
689         (WebCore::Node::onselect):
690         (WebCore::Node::setOnselect):
691         (WebCore::Node::onselectstart):
692         (WebCore::Node::setOnselectstart):
693         (WebCore::Node::onsubmit):
694         (WebCore::Node::setOnsubmit):
695         (WebCore::Node::onunload):
696         (WebCore::Node::setOnunload):
697         * dom/EventTargetNode.h:
698         (WebCore::toEventTargetNode):
699         (WebCore::EventTargetNodeCast):
700         * dom/EventTargetNode.idl: Removed.
701         * dom/MouseEvent.cpp:
702         (WebCore::MouseEvent::MouseEvent):
703         (WebCore::MouseEvent::initMouseEvent):
704         (WebCore::MouseEvent::toElement):
705         (WebCore::MouseEvent::fromElement):
706         * dom/MouseEvent.h:
707         (WebCore::MouseEvent::create):
708         (WebCore::MouseEvent::relatedTarget):
709         * dom/Node.cpp:
710         (WebCore::Node::~Node):
711         * dom/Node.h:
712         (WebCore::Node::isEventTargetNode):
713         (WebCore::Node::toNode):
714         (WebCore::Node::removeAllEventListeners):
715         (WebCore::Node::refEventTarget):
716         (WebCore::Node::derefEventTarget):
717         * dom/Node.idl:
718         * page/EventHandler.h:
719         * page/FrameView.h:
720         * xml/XPathResult.h:
721         (WebCore::XPathResult::create):
722
723 2009-02-04  David Hyatt  <hyatt@apple.com>
724
725         Convert RenderLayer from having a RenderBox* m_renderer to having a RenderBoxModelObject*.  The
726         container-relative repaint methods all had to be changed as a result to use RenderBoxModelObject* also.
727
728         All of RenderLayer.cpp now uses what will be the new style for dealing with an object that can be a block
729         or an inline flow.  x()/y()/width()/height() can't be queried on an inline flow, nor can many other
730         properties (like scrollWidth() / scrollHeight()), so the code has to be tightened up to convert to RenderBox
731         under the right conditions.
732
733         There was a bogus subtraction of renderer()->y() in localBounding box for RenderInlines.  Since y was always
734         0, this subtraction wasn't necessary.  It has been removed.
735
736         Reviewed by Adam Roben
737
738         * page/animation/AnimationBase.cpp:
739         * rendering/RenderBR.h:
740         (WebCore::RenderBR::selectionRectForRepaint):
741         * rendering/RenderBlock.cpp:
742         (WebCore::RenderBlock::selectionGapRectsForRepaint):
743         (WebCore::RenderBlock::rectWithOutlineForRepaint):
744         * rendering/RenderBlock.h:
745         (WebCore::RenderBlock::selectionRectForRepaint):
746         * rendering/RenderBox.cpp:
747         (WebCore::RenderBox::outlineBoundsForRepaint):
748         (WebCore::RenderBox::localToContainerQuad):
749         (WebCore::RenderBox::clippedOverflowRectForRepaint):
750         (WebCore::RenderBox::computeRectForRepaint):
751         * rendering/RenderBox.h:
752         * rendering/RenderBoxModelObject.cpp:
753         (WebCore::RenderBoxModelObject::relativePositionOffsetX):
754         (WebCore::RenderBoxModelObject::relativePositionOffsetY):
755         * rendering/RenderBoxModelObject.h:
756         (WebCore::RenderBoxModelObject::relativePositionOffset):
757         * rendering/RenderForeignObject.cpp:
758         (WebCore::RenderForeignObject::computeRectForRepaint):
759         * rendering/RenderForeignObject.h:
760         * rendering/RenderInline.cpp:
761         (WebCore::RenderInline::clippedOverflowRectForRepaint):
762         (WebCore::RenderInline::rectWithOutlineForRepaint):
763         * rendering/RenderInline.h:
764         * rendering/RenderLayer.cpp:
765         (WebCore::RenderLayer::RenderLayer):
766         (WebCore::RenderLayer::updateLayerPositions):
767         (WebCore::RenderLayer::updateTransform):
768         (WebCore::RenderLayer::setHasVisibleContent):
769         (WebCore::RenderLayer::updateLayerPosition):
770         (WebCore::RenderLayer::scrollToOffset):
771         (WebCore::RenderLayer::scrollRectToVisible):
772         (WebCore::resizerCornerRect):
773         (WebCore::RenderLayer::scrollbarCornerPresent):
774         (WebCore::RenderLayer::invalidateScrollbarRect):
775         (WebCore::RenderLayer::positionOverflowControls):
776         (WebCore::RenderLayer::computeScrollDimensions):
777         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
778         (WebCore::RenderLayer::paintScrollCorner):
779         (WebCore::RenderLayer::paintResizer):
780         (WebCore::RenderLayer::isPointInResizeControl):
781         (WebCore::RenderLayer::hitTestOverflowControls):
782         (WebCore::RenderLayer::paintLayer):
783         (WebCore::RenderLayer::hitTestLayer):
784         (WebCore::RenderLayer::localBoundingBox):
785         * rendering/RenderLayer.h:
786         (WebCore::RenderLayer::renderer):
787         (WebCore::RenderLayer::renderBox):
788         (WebCore::RenderLayer::renderBoxX):
789         (WebCore::RenderLayer::renderBoxY):
790         * rendering/RenderListMarker.cpp:
791         (WebCore::RenderListMarker::selectionRectForRepaint):
792         * rendering/RenderListMarker.h:
793         * rendering/RenderMarquee.cpp:
794         (WebCore::RenderMarquee::computePosition):
795         (WebCore::RenderMarquee::timerFired):
796         * rendering/RenderObject.cpp:
797         (WebCore::RenderObject::containerForRepaint):
798         (WebCore::RenderObject::repaintUsingContainer):
799         (WebCore::RenderObject::repaint):
800         (WebCore::RenderObject::repaintRectangle):
801         (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
802         (WebCore::RenderObject::rectWithOutlineForRepaint):
803         (WebCore::RenderObject::clippedOverflowRectForRepaint):
804         (WebCore::RenderObject::computeRectForRepaint):
805         (WebCore::RenderObject::localToContainerQuad):
806         * rendering/RenderObject.h:
807         (WebCore::RenderObject::selectionRectForRepaint):
808         (WebCore::RenderObject::outlineBoundsForRepaint):
809         * rendering/RenderPath.cpp:
810         (WebCore::RenderPath::clippedOverflowRectForRepaint):
811         (WebCore::RenderPath::outlineBoundsForRepaint):
812         * rendering/RenderPath.h:
813         * rendering/RenderReplaced.cpp:
814         (WebCore::RenderReplaced::selectionRectForRepaint):
815         (WebCore::RenderReplaced::clippedOverflowRectForRepaint):
816         * rendering/RenderReplaced.h:
817         * rendering/RenderSVGContainer.cpp:
818         (WebCore::RenderSVGContainer::clippedOverflowRectForRepaint):
819         (WebCore::RenderSVGContainer::outlineBoundsForRepaint):
820         * rendering/RenderSVGContainer.h:
821         * rendering/RenderSVGHiddenContainer.cpp:
822         (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
823         * rendering/RenderSVGHiddenContainer.h:
824         * rendering/RenderSVGImage.cpp:
825         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
826         * rendering/RenderSVGImage.h:
827         * rendering/RenderSVGInlineText.cpp:
828         (WebCore::RenderSVGInlineText::selectionRectForRepaint):
829         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
830         * rendering/RenderSVGInlineText.h:
831         * rendering/RenderSVGRoot.cpp:
832         (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
833         * rendering/RenderSVGRoot.h:
834         * rendering/RenderSVGText.cpp:
835         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
836         * rendering/RenderSVGText.h:
837         * rendering/RenderSelectionInfo.h:
838         (WebCore::RenderSelectionInfoBase::repaintContainer):
839         * rendering/RenderTableCell.cpp:
840         (WebCore::RenderTableCell::clippedOverflowRectForRepaint):
841         (WebCore::RenderTableCell::computeRectForRepaint):
842         (WebCore::RenderTableCell::localToContainerQuad):
843         * rendering/RenderTableCell.h:
844         * rendering/RenderTableCol.cpp:
845         (WebCore::RenderTableCol::clippedOverflowRectForRepaint):
846         * rendering/RenderTableCol.h:
847         * rendering/RenderTableRow.cpp:
848         (WebCore::RenderTableRow::clippedOverflowRectForRepaint):
849         * rendering/RenderTableRow.h:
850         * rendering/RenderText.cpp:
851         (WebCore::RenderText::clippedOverflowRectForRepaint):
852         (WebCore::RenderText::selectionRectForRepaint):
853         * rendering/RenderText.h:
854         * rendering/RenderTreeAsText.cpp:
855         (WebCore::write):
856         * rendering/RenderView.cpp:
857         (WebCore::RenderView::localToContainerQuad):
858         (WebCore::RenderView::computeRectForRepaint):
859         * rendering/RenderView.h:
860
861 2009-02-05  Alexey Proskuryakov  <ap@webkit.org>
862
863         Build fix.
864
865         * page/animation/KeyframeAnimation.h: A function prototype had two "fromStyle" arguments.
866
867 2009-02-05  Yael Aharon  <yael.aharon@nokia.com>
868
869         Reviewed by Alexey Proskuryakov.
870         Landed by Simon Hausmann.
871
872         https://bugs.webkit.org/show_bug.cgi?id=23733
873
874         Use a 2 arguments constructor for KURL to avoid ASSERT failure.
875
876         * page/SecurityOrigin.cpp:
877         (WebCore::SecurityOrigin::createFromDatabaseIdentifier):
878
879 2009-02-04  Feng Qian  <feng@chromium.org>
880
881         Reviewed by Darin Adler.
882
883         Add Android-specific files to WebCore/editing directory.
884         https://bugs.webkit.org/show_bug.cgi?id=23294
885
886         * editing/android: Added.
887         * editing/android/EditorAndroid.cpp: Added.
888         (WebCore::Editor::newGeneralClipboard):
889
890 2009-02-04  Dean Jackson  <dino@apple.com>
891
892         Reviewed by Darin Adler.
893
894         Remove -webkit-animation-play-state
895         The AnimationController still has the code to execute the property, but
896         it is no longer parsed or recorded.
897         https://bugs.webkit.org/show_bug.cgi?id=22907
898
899         * css/CSSComputedStyleDeclaration.cpp:
900         (WebCore::):
901         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
902         * css/CSSParser.cpp:
903         (WebCore::CSSParser::parseValue):
904         (WebCore::CSSParser::parseAnimationProperty):
905         * css/CSSParser.h:
906         * css/CSSPropertyNames.in:
907         * css/CSSStyleSelector.cpp:
908         (WebCore::CSSStyleSelector::applyProperty):
909         * css/CSSStyleSelector.h:
910         * platform/animation/Animation.h:
911         * rendering/style/RenderStyleConstants.h:
912
913 2009-02-04  Tor Arne Vestbø  <tavestbo@trolltech.com>
914
915         Reviewed by Darin Adler.
916
917         Make sure we don't load on removing the media element from the document
918         https://bugs.webkit.org/show_bug.cgi?id=22105
919
920         Test: media/remove-from-document-no-load.html
921
922         * html/HTMLMediaElement.cpp:
923         (WebCore::HTMLMediaElement::removedFromDocument):
924
925 2009-02-04  David Hyatt  <hyatt@apple.com>
926
927         Add a new RenderBoxModelObject class that will eventually act as the direct base class for RenderInlines.  For
928         now just adding the class and putting it in between RenderObject and RenderBox in the hierarchy.  RenderInline remains
929         derived from RenderBox for now.
930
931         Reviewed by Sam Weinig
932
933         * WebCore.xcodeproj/project.pbxproj:
934         * rendering/RenderBox.cpp:
935         (WebCore::RenderBox::RenderBox):
936         (WebCore::RenderBox::destroy):
937         (WebCore::RenderBox::styleWillChange):
938         (WebCore::RenderBox::styleDidChange):
939         (WebCore::RenderBox::computeRectForRepaint):
940         * rendering/RenderBox.h:
941         * rendering/RenderBoxModelObject.cpp: Added.
942         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
943         (WebCore::RenderBoxModelObject::~RenderBoxModelObject):
944         * rendering/RenderBoxModelObject.h: Added.
945         * rendering/RenderObject.h:
946
947 2009-02-04  Chris Marrin  <cmarrin@apple.com>
948
949         Reviewed by Dave Hyatt
950
951         Added accelerated animation support to AnimationController and friends. The primary
952         changes are:
953         * accelerated animations get their start time from the compositing engine, so we
954           wait for a callback (notifyAnimationStarted()) in order to get the start time.
955         * if software and accelerated animations start in the same cycle, they all need
956           to use the same start time, which is that of the accelerated animations.
957           
958         Added AnimationControllerPrivate to preserve the encapsulation under
959         AnimationController.
960
961         * GNUmakefile.am:
962         * WebCore.vcproj/WebCore.vcproj:
963         * WebCore.xcodeproj/project.pbxproj:
964         * page/animation/AnimationBase.cpp:
965         (WebCore::PropertyWrapperBase::animationIsAccelerated):
966         (WebCore::PropertyWrapperAcceleratedOpacity::PropertyWrapperAcceleratedOpacity):
967         (WebCore::PropertyWrapperAcceleratedOpacity::animationIsAccelerated):
968         (WebCore::PropertyWrapperAcceleratedOpacity::blend):
969         (WebCore::PropertyWrapperAcceleratedTransform::PropertyWrapperAcceleratedTransform):
970         (WebCore::PropertyWrapperAcceleratedTransform::animationIsAccelerated):
971         (WebCore::PropertyWrapperAcceleratedTransform::blend):
972         (WebCore::ensurePropertyMap):
973         (WebCore::AnimationBase::AnimationBase):
974         (WebCore::AnimationBase::~AnimationBase):
975         (WebCore::AnimationBase::blendProperties):
976         (WebCore::AnimationBase::animationOfPropertyIsAccelerated):
977         (WebCore::AnimationBase::updateStateMachine):
978         (WebCore::AnimationBase::fireAnimationEventsIfNeeded):
979         (WebCore::AnimationBase::willNeedService):
980         (WebCore::AnimationBase::getTimeToNextEvent):
981         (WebCore::AnimationBase::goIntoEndingOrLoopingState):
982         (WebCore::AnimationBase::beginAnimationUpdateTime):
983         * page/animation/AnimationBase.h:
984         (WebCore::AnimationBase::onAnimationStartResponse):
985         (WebCore::AnimationBase::getAnimatedStyle):
986         (WebCore::AnimationBase::isAnimatingProperty):
987         (WebCore::AnimationBase::endAnimation):
988         (WebCore::AnimationBase::isFallbackAnimating):
989         * page/animation/AnimationController.cpp:
990         (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
991         (WebCore::AnimationControllerPrivate::accessCompositeAnimation):
992         (WebCore::AnimationControllerPrivate::addNodeChangeToDispatch):
993         (WebCore::AnimationControllerPrivate::animationTimerFired):
994         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
995         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
996         (WebCore::AnimationControllerPrivate::beginAnimationUpdateTime):
997         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
998         (WebCore::AnimationControllerPrivate::styleAvailable):
999         (WebCore::AnimationControllerPrivate::addToStartTimeResponseWaitList):
1000         (WebCore::AnimationControllerPrivate::removeFromStartTimeResponseWaitList):
1001         (WebCore::AnimationControllerPrivate::startTimeResponse):
1002         (WebCore::AnimationController::getAnimatedStyleForRenderer):
1003         (WebCore::AnimationController::notifyAnimationStarted):
1004         (WebCore::AnimationController::endAnimationUpdate):
1005         * page/animation/AnimationController.h:
1006         * page/animation/AnimationControllerPrivate.h: Added.
1007         (WebCore::AnimationControllerPrivate::hasAnimations):
1008         (WebCore::AnimationControllerPrivate::setBeginAnimationUpdateTime):
1009         (WebCore::AnimationControllerPrivate::endAnimationUpdate):
1010         (WebCore::AnimationControllerPrivate::receivedStartTimeResponse):
1011         * page/animation/CompositeAnimation.cpp:
1012         (WebCore::CompositeAnimationPrivate::CompositeAnimationPrivate):
1013         (WebCore::CompositeAnimationPrivate::animationControllerPriv):
1014         (WebCore::CompositeAnimationPrivate::updateTransitions):
1015         (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
1016         (WebCore::CompositeAnimationPrivate::animate):
1017         (WebCore::CompositeAnimationPrivate::getAnimatedStyle):
1018         (WebCore::CompositeAnimationPrivate::addToStartTimeResponseWaitList):
1019         (WebCore::CompositeAnimationPrivate::removeFromStartTimeResponseWaitList):
1020         (WebCore::CompositeAnimation::CompositeAnimation):
1021         (WebCore::CompositeAnimation::animationControllerPriv):
1022         (WebCore::CompositeAnimation::getAnimatedStyle):
1023         (WebCore::CompositeAnimation::addToStartTimeResponseWaitList):
1024         (WebCore::CompositeAnimation::removeFromStartTimeResponseWaitList):
1025         * page/animation/CompositeAnimation.h:
1026         (WebCore::CompositeAnimation::create):
1027         * page/animation/ImplicitAnimation.cpp:
1028         (WebCore::ImplicitAnimation::shouldSendEventForListener):
1029         (WebCore::ImplicitAnimation::animate):
1030         (WebCore::ImplicitAnimation::getAnimatedStyle):
1031         (WebCore::ImplicitAnimation::startAnimation):
1032         (WebCore::ImplicitAnimation::endAnimation):
1033         (WebCore::ImplicitAnimation::sendTransitionEvent):
1034         (WebCore::ImplicitAnimation::willNeedService):
1035         * page/animation/ImplicitAnimation.h:
1036         * page/animation/KeyframeAnimation.cpp:
1037         (WebCore::KeyframeAnimation::getKeyframeAnimationInterval):
1038         (WebCore::KeyframeAnimation::animate):
1039         (WebCore::KeyframeAnimation::getAnimatedStyle):
1040         (WebCore::KeyframeAnimation::startAnimation):
1041         (WebCore::KeyframeAnimation::endAnimation):
1042         (WebCore::KeyframeAnimation::shouldSendEventForListener):
1043         (WebCore::KeyframeAnimation::sendAnimationEvent):
1044         (WebCore::KeyframeAnimation::willNeedService):
1045         * page/animation/KeyframeAnimation.h:
1046         * platform/graphics/GraphicsLayerClient.h:
1047         * platform/graphics/mac/GraphicsLayerCA.mm:
1048         (-[WebAnimationDelegate animationDidStart:]):
1049         * rendering/RenderLayerBacking.h:
1050
1051 2009-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
1052
1053         Not reviewed, build fix.
1054
1055         Remove duplicate definition of msSans in FontCache::alternateFamilyName.
1056
1057         * platform/graphics/FontCache.cpp:
1058         (WebCore::alternateFamilyName):
1059
1060 2009-02-04  Eric Seidel  <eric@webkit.org>
1061
1062         Reviewed by George Staikos.
1063
1064         Reverse the meaning of the if check so that Android
1065         (dpad devices) do not scroll on focus and normal platforms do
1066         http://trac.webkit.org/changeset/40647
1067         
1068         This was caught by George Staikos, and I wrote the patch.
1069
1070         * dom/Element.cpp:
1071         (WebCore::Element::updateFocusAppearance):
1072
1073 2009-02-04  David Hyatt  <hyatt@apple.com>
1074
1075         Eliminate RenderContainer.
1076
1077         Reviewed by Sam and Anders
1078
1079         * GNUmakefile.am:
1080         * WebCore.pro:
1081         * WebCore.vcproj/WebCore.vcproj:
1082         * WebCore.xcodeproj/project.pbxproj:
1083         * WebCoreSources.bkl:
1084         * rendering/RenderBlock.cpp:
1085         (WebCore::RenderBlock::RenderBlock):
1086         (WebCore::RenderBlock::destroy):
1087         (WebCore::RenderBlock::styleWillChange):
1088         (WebCore::RenderBlock::styleDidChange):
1089         (WebCore::RenderBlock::addChild):
1090         (WebCore::RenderBlock::dirtyLineBoxes):
1091         (WebCore::RenderBlock::createInlineBox):
1092         (WebCore::RenderBlock::removeChild):
1093         (WebCore::RenderBlock::setSelectionState):
1094         (WebCore::RenderBlock::avoidsFloats):
1095         (WebCore::RenderBlock::positionForCoordinates):
1096         (WebCore::RenderBlock::calcInlinePrefWidths):
1097         (WebCore::RenderBlock::baselinePosition):
1098         (WebCore::RenderBlock::getBaselineOfFirstLineBox):
1099         (WebCore::RenderBlock::getBaselineOfLastLineBox):
1100         (WebCore::RenderBlock::rectWithOutlineForRepaint):
1101         (WebCore::RenderBlock::hoverAncestor):
1102         (WebCore::RenderBlock::updateDragState):
1103         (WebCore::RenderBlock::localCaretRect):
1104         * rendering/RenderBlock.h:
1105         (WebCore::RenderBlock::virtualChildren):
1106         (WebCore::RenderBlock::children):
1107         * rendering/RenderContainer.cpp: Removed.
1108         * rendering/RenderContainer.h: Removed.
1109         * rendering/RenderFrameSet.cpp:
1110         (WebCore::RenderFrameSet::RenderFrameSet):
1111         (WebCore::RenderFrameSet::nodeAtPoint):
1112         (WebCore::RenderFrameSet::layout):
1113         * rendering/RenderFrameSet.h:
1114         (WebCore::RenderFrameSet::virtualChildren):
1115         (WebCore::RenderFrameSet::children):
1116         * rendering/RenderInline.cpp:
1117         (WebCore::RenderInline::RenderInline):
1118         (WebCore::RenderInline::destroy):
1119         (WebCore::RenderInline::styleDidChange):
1120         (WebCore::nextContinuation):
1121         (WebCore::RenderInline::continuationBefore):
1122         (WebCore::RenderInline::addChildIgnoringContinuation):
1123         (WebCore::RenderInline::splitInlines):
1124         (WebCore::RenderInline::splitFlow):
1125         (WebCore::RenderInline::addChildToContinuation):
1126         (WebCore::RenderInline::offsetLeft):
1127         (WebCore::RenderInline::offsetTop):
1128         (WebCore::RenderInline::positionForCoordinates):
1129         (WebCore::RenderInline::clippedOverflowRectForRepaint):
1130         (WebCore::RenderInline::rectWithOutlineForRepaint):
1131         (WebCore::RenderInline::updateDragState):
1132         (WebCore::RenderInline::childBecameNonInline):
1133         * rendering/RenderInline.h:
1134         (WebCore::RenderInline::virtualChildren):
1135         (WebCore::RenderInline::children):
1136         (WebCore::RenderInline::continuation):
1137         (WebCore::RenderInline::setContinuation):
1138         * rendering/RenderLineBoxList.h:
1139         * rendering/RenderObject.h:
1140         * rendering/RenderObjectChildList.h:
1141         * rendering/RenderSVGInlineText.cpp:
1142         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
1143         * rendering/RenderSVGRoot.cpp:
1144         (WebCore::RenderSVGRoot::RenderSVGRoot):
1145         (WebCore::RenderSVGRoot::applyContentTransforms):
1146         (WebCore::RenderSVGRoot::paint):
1147         (WebCore::RenderSVGRoot::absoluteTransform):
1148         (WebCore::RenderSVGRoot::nodeAtPoint):
1149         (WebCore::RenderSVGRoot::position):
1150         * rendering/RenderSVGRoot.h:
1151         (WebCore::RenderSVGRoot::virtualChildren):
1152         (WebCore::RenderSVGRoot::children):
1153         * rendering/RenderSVGText.cpp:
1154         (WebCore::RenderSVGText::absoluteRects):
1155         (WebCore::RenderSVGText::absoluteQuads):
1156         * rendering/RenderTable.cpp:
1157         (WebCore::RenderTable::addChild):
1158         (WebCore::RenderTable::removeChild):
1159         * rendering/RenderTableCol.cpp:
1160         (WebCore::RenderTableCol::RenderTableCol):
1161         * rendering/RenderTableCol.h:
1162         (WebCore::RenderTableCol::virtualChildren):
1163         (WebCore::RenderTableCol::children):
1164         * rendering/RenderTableRow.cpp:
1165         (WebCore::RenderTableRow::RenderTableRow):
1166         (WebCore::RenderTableRow::destroy):
1167         (WebCore::RenderTableRow::styleWillChange):
1168         (WebCore::RenderTableRow::addChild):
1169         * rendering/RenderTableRow.h:
1170         (WebCore::RenderTableRow::virtualChildren):
1171         (WebCore::RenderTableRow::children):
1172         * rendering/RenderTableSection.cpp:
1173         (WebCore::RenderTableSection::RenderTableSection):
1174         (WebCore::RenderTableSection::destroy):
1175         (WebCore::RenderTableSection::addChild):
1176         (WebCore::RenderTableSection::removeChild):
1177         (WebCore::RenderTableSection::lowestPosition):
1178         (WebCore::RenderTableSection::rightmostPosition):
1179         (WebCore::RenderTableSection::leftmostPosition):
1180         * rendering/RenderTableSection.h:
1181         (WebCore::RenderTableSection::virtualChildren):
1182         (WebCore::RenderTableSection::children):
1183
1184 2009-02-04  Mads Adger  <mad@chromium.org>
1185
1186         Reviewed by Antti Koivisto.
1187
1188         Bug 23180 Reading freed memory at DocumentLoader::checkForPendingPreloads
1189         https://bugs.webkit.org/show_bug.cgi?id=23180
1190
1191         Added a protector for the document potentially holding on the last reference to the loader we are interating with.
1192
1193         * loader/loader.cpp:
1194         (WebCore::Loader::Host::didFinishLoading):
1195         (WebCore::Loader::Host::didFail):
1196
1197 2009-02-04  Cary Clark  <caryclark@google.com>
1198
1199         Reviewed by Darin Adler.
1200
1201         https://bugs.webkit.org/show_bug.cgi?id=23163
1202         Don't scroll to show current focus on devices that use
1203         directional pads for navigation.
1204
1205         * dom/Element.cpp:
1206         (WebCore::Element::updateFocusAppearance):
1207
1208 2009-02-04  Cary Clark  <caryclark@google.com>
1209
1210         Reviewed by Darin Adler.
1211
1212         Change RenderBlock::columnGap() access permissions from protected to
1213         public. ANDROID creates an array of focus rectangles for navigation 
1214         with a trackball or directional pad, and needs access to the column gap 
1215         to implement this logic.
1216
1217         Android has no testing harness @ webkit.org, thus no tests.
1218
1219         * rendering/RenderBlock.h:
1220
1221 2009-02-04  Cary Clark  <caryclark@google.com>
1222
1223         Reviewed by Darin Adler and Eric Seidel.
1224
1225         Fixes: https://bugs.webkit.org/show_bug.cgi?id=22917
1226
1227         Add ENABLE_ON_FIRST_TEXTAREA_FOCUS_SELECT_ALL to permit the ANDROID
1228         platform to select all when focusing on a textarea. This matches
1229         the user interface guidelines other applications on the platform.
1230
1231         * html/HTMLTextAreaElement.cpp:
1232         (WebCore::HTMLTextAreaElement::updateFocusAppearance):
1233
1234 2009-02-04  Beth Dakin  <bdakin@apple.com>
1235
1236         Reviewed by Dave Hyatt.
1237
1238         Fix for <rdar://problem/6386112> Some inline-elements are not 
1239         becoming proper dashboard-regions
1240
1241         RenderInline needs its own implementation of addDashboardRegions 
1242         because otherwise all of the coordinate calculations are 
1243         inaccurate. 
1244
1245         * rendering/RenderInline.cpp:
1246         (WebCore::RenderInline::addDashboardRegions):
1247         * rendering/RenderInline.h:
1248         * rendering/RenderObject.h:
1249
1250 2009-02-04  David Hyatt  <hyatt@apple.com>
1251
1252         Move addChild/removeChild from RenderContainer to RenderObject.
1253
1254         Reviewed by Sam Weinig
1255
1256         * rendering/RenderContainer.cpp:
1257         * rendering/RenderContainer.h:
1258         * rendering/RenderObject.cpp:
1259         (WebCore::updateListMarkerNumbers):
1260         (WebCore::RenderObject::addChild):
1261         (WebCore::RenderObject::removeChild):
1262         * rendering/RenderObject.h:
1263         (WebCore::RenderObject::addChildIgnoringContinuation):
1264         * rendering/RenderSVGContainer.cpp:
1265         * rendering/RenderSVGContainer.h:
1266
1267 2009-02-04  Brady Eidson  <beidson@apple.com>
1268
1269         Reviewed by Sam Weinig
1270
1271         <rdar://problem/3541409> - Further HistoryItem / BF cache cleanup
1272
1273         * history/CachedFrame.cpp:
1274         (WebCore::CachedFrame::CachedFrame):
1275         (WebCore::CachedFrame::restore):
1276         * history/CachedFrame.h:
1277
1278         * history/CachedPage.cpp:
1279         (WebCore::CachedPage::restore):
1280         * history/CachedPage.h:
1281         (WebCore::CachedPage::mainFrameView):
1282
1283         * history/HistoryItem.cpp:
1284         (WebCore::HistoryItem::HistoryItem):
1285         (WebCore::HistoryItem::~HistoryItem):
1286         * history/HistoryItem.h:
1287         (WebCore::HistoryItem::isInPageCache):
1288
1289         * loader/FrameLoader.cpp:
1290         (WebCore::FrameLoader::open):
1291
1292 2009-02-04  Peter Kasting  <pkasting@google.com>
1293
1294         Reviewed by David Hyatt.
1295
1296         https://bugs.webkit.org/show_bug.cgi?id=23743
1297         Fix memory corruption with open-source GIF decoders.
1298
1299         * platform/image-decoders/ImageDecoder.h:
1300         (WebCore::RGBA32Buffer::clear):
1301         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1302         (WebCore::GIFImageDecoder::clearFrameBufferCache):
1303         * platform/image-decoders/skia/GIFImageDecoder.cpp:
1304         (WebCore::GIFImageDecoder::clearFrameBufferCache):
1305         (WebCore::GIFImageDecoder::initFrameBuffer):
1306         * platform/image-decoders/skia/ImageDecoder.h:
1307         (WebCore::RGBA32Buffer::clear):
1308
1309 2009-02-04  Simon Fraser  <simon.fraser@apple.com>
1310
1311         Reviewed by Dave Hyatt
1312
1313         https://bugs.webkit.org/show_bug.cgi?id=23360
1314         
1315         When using accelerated compositing, make repaints use the correct
1316         repaint container. Hook up the RenderLayerCompositor in RenderView,
1317         and add to RenderView a method that repaints both the view
1318         contents, and any intersecting composited layers.
1319         
1320         Make enclosingCompositingLayer() a method on RenderObject, and update
1321         the compositor to use that. Add a helper method on the compositor to
1322         get the non-self compositing ancestor: ancestorCompositingLayer().
1323         
1324         Call repaintRectangleInViewAndCompositedLayers() in places that don't do
1325         container-relative repainting: selection redraw on focus change, caret,
1326         and widget updates.
1327         
1328         Fix a bug in RenderLayerCompositor where the m_compositingLayersNeedUpdate flag
1329         would get cleared for partial updates, thus preventing subsequent full updates.
1330         
1331         Fix a bug in RenderLayer::ensureBacking() that made new backing every time.
1332
1333         * WebCore.xcodeproj/project.pbxproj:
1334         * editing/SelectionController.cpp:
1335         (WebCore::SelectionController::recomputeCaretRect):
1336         (WebCore::SelectionController::invalidateCaretRect):
1337         (WebCore::SelectionController::focusedOrActiveStateChanged):
1338         * rendering/RenderInline.cpp:
1339         (WebCore::RenderInline::clippedOverflowRectForRepaint):
1340         * rendering/RenderLayer.cpp:
1341         (WebCore::RenderLayer::RenderLayer):
1342         (WebCore::RenderLayer::compositor):
1343         (WebCore::RenderLayer::updateLayerPositions):
1344         (WebCore::RenderLayer::removeChild):
1345         (WebCore::RenderLayer::ensureBacking):
1346         * rendering/RenderLayer.h:
1347         (WebCore::RenderLayer::backing):
1348         * rendering/RenderLayerBacking.cpp:
1349         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1350         (WebCore::RenderLayerBacking::paintIntoLayer):
1351         (WebCore::RenderLayerBacking::notifyTransitionStarted):
1352         (WebCore::RenderLayerBacking::notifyAnimationStarted):
1353         * rendering/RenderLayerCompositor.cpp:
1354         (WebCore::RenderLayerCompositor::updateCompositingLayers):
1355         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
1356         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
1357         (WebCore::RenderLayerCompositor::ancestorCompositingLayer):
1358         (WebCore::RenderLayerCompositor::clippedByAncestor):
1359         * rendering/RenderLayerCompositor.h:
1360         * rendering/RenderObject.cpp:
1361         (WebCore::RenderObject::enclosingCompositingLayer):
1362         (WebCore::RenderObject::containingBlockWidth):
1363         (WebCore::RenderObject::containingBlockHeight):
1364         (WebCore::RenderObject::containerForRepaint):
1365         (WebCore::RenderObject::repaintUsingContainer):
1366         * rendering/RenderObject.h:
1367         * rendering/RenderView.cpp:
1368         (WebCore::RenderView::shouldRepaint):
1369         (WebCore::RenderView::repaintViewRectangle):
1370         (WebCore::RenderView::repaintRectangleInViewAndCompositedLayers):
1371         (WebCore::RenderView::setMaximalOutlineSize):
1372         (WebCore::RenderView::usesCompositing):
1373         (WebCore::RenderView::compositor):
1374         (WebCore::RenderView::didMoveOnscreen):
1375         (WebCore::RenderView::willMoveOffscreen):
1376         * rendering/RenderView.h:
1377         * rendering/RenderWidget.cpp:
1378         (WebCore::RenderWidget::updateWidgetPosition):
1379
1380 2009-02-04  Sam Weinig  <sam@webkit.org>
1381
1382         Reviewed by David Hyatt.
1383
1384         Add toRenderImage methods for casting RenderObjects to RenderImages.  The methods will assert if the object
1385         is not a RenderImage.  Also add a toRenderImage method that takes a RenderImage but returns void and that
1386         is unimplemented.  This method will catch anyone trying to do a cast when the object is already a RenderImage.
1387
1388         * html/HTMLAnchorElement.cpp:
1389         (WebCore::HTMLAnchorElement::defaultEventHandler):
1390         * html/HTMLEmbedElement.cpp:
1391         (WebCore::HTMLEmbedElement::attach):
1392         * html/HTMLImageElement.cpp:
1393         (WebCore::HTMLImageElement::parseMappedAttribute):
1394         (WebCore::HTMLImageElement::attach):
1395         * html/HTMLInputElement.cpp:
1396         (WebCore::HTMLInputElement::parseMappedAttribute):
1397         (WebCore::HTMLInputElement::attach):
1398         * html/HTMLObjectElement.cpp:
1399         (WebCore::HTMLObjectElement::attach):
1400         * html/HTMLVideoElement.cpp:
1401         (WebCore::HTMLVideoElement::attach):
1402         * loader/ImageLoader.cpp:
1403         (WebCore::ImageLoader::setImage):
1404         (WebCore::ImageLoader::updateFromElement):
1405         (WebCore::ImageLoader::notifyFinished):
1406         * page/AccessibilityRenderObject.cpp:
1407         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1408         (WebCore::AccessibilityRenderObject::addChildren):
1409         * page/DragController.cpp:
1410         (WebCore::getCachedImage):
1411         (WebCore::getImage):
1412         * platform/mac/PasteboardMac.mm:
1413         (WebCore::Pasteboard::writeImage):
1414         * rendering/RenderImage.h:
1415         (WebCore::toRenderImage):
1416         * wml/WMLImageElement.cpp:
1417         (WebCore::WMLImageElement::parseMappedAttribute):
1418         (WebCore::WMLImageElement::attach):
1419
1420 2009-02-04  Jungshik Shin  <jshin@chromium.org>
1421
1422         Reviewed by Eric Seidel and Dave Hyatt.
1423
1424         https://bugs.webkit.org/show_bug.cgi?id=20531
1425
1426         Make alternateFamilyName customized for Windows and Chromium.
1427
1428         * platform/graphics/FontCache.cpp:
1429         (WebCore::alternateFamilyName):
1430
1431 2009-02-04  Jungshik Shin <jshin@chromium.org>
1432
1433         Reviewed by Eric Seidel.
1434
1435         This comes from Chromium patch (http://codereview.chromium.org/17624).
1436
1437         Add m_disableFontFallback to UniscriberHelper class and set it
1438         to true when filling up glyph pages for non-BMP code points.
1439         When it's set true, UniscriberHelper does not do its own font
1440         fallback. Neither does it do glyph placement. Font fallback
1441         will be taken care of in the simple script font path and glyph
1442         placement is not necessary for simple scripts.
1443
1444         Layout test is missing at the moment due to the lack of freely
1445         distributable font covering a non-BMP code page. A test page
1446         is available at http://i18nl10n.com/webkit/nonbmp2.html
1447
1448         See also https://bugs.webkit.org/show_bug.cgi?id=23602
1449
1450         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
1451         (WebCore::fillNonBMPGlyphs):
1452         * platform/graphics/chromium/UniscribeHelper.cpp:
1453         (WebCore::UniscribeHelper::UniscribeHelper):
1454         (WebCore::UniscribeHelper::shape):
1455         (WebCore::UniscribeHelper::fillShapes):
1456         * platform/graphics/chromium/UniscribeHelper.h:
1457         (WebCore::UniscribeHelper::setDisableFontFallback):
1458
1459 2009-02-04  Sam Weinig  <sam@webkit.org>
1460
1461         Reviewed by David Hyatt.
1462
1463         Remove some unnecessary #includes of RenderStyle.h
1464
1465         * css/CSSPrimitiveValueMappings.h:
1466         * css/SVGCSSComputedStyleDeclaration.cpp:
1467         * dom/Node.h:
1468         * rendering/PointerEventsHitRules.h:
1469         * rendering/RenderImageGeneratedContent.h:
1470         * rendering/RenderMarquee.h:
1471         * rendering/RenderScrollbar.h:
1472
1473 2009-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
1474
1475         Reviewed by Sam Weinig.
1476
1477         https://bugs.webkit.org/show_bug.cgi?id=23657
1478         Clean up WebCore/storage IDLs.
1479
1480         * storage/SQLError.idl: Changed to match spec.
1481         * storage/SQLResultSet.idl: Changed to match spec.
1482         * storage/SQLStatementCallback.idl: Removed.
1483         * storage/SQLStatementErrorCallback.idl: Removed.
1484         * storage/SQLTransactionCallback.idl: Removed.
1485         * storage/SQLTransactionErrorCallback.idl: Removed.
1486
1487 2009-02-04  David Hyatt  <hyatt@apple.com>
1488
1489         Fix for https://bugs.webkit.org/show_bug.cgi?id=23734, blank content on blogs.msdn.com.
1490         
1491         Add debugging code that will catch the incorrect dirtying of a table section immediately if it happens
1492         during calcRowHeight or layoutRows.  This should make it possible to discover future bugs where table sections don't
1493         paint.
1494
1495         The bug in blogs.msdn.com, which was caused by a bad setNeedsLayout in RenderLayer::updateScrollInfoAtferLayout.  Make
1496         sure to do only a local setNeedsLayout inside that function.
1497
1498         Reviewed by Beth Dakin
1499
1500         * rendering/RenderLayer.cpp:
1501         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1502         * rendering/RenderObject.cpp:
1503         (WebCore::RenderObject::RenderObject):
1504         * rendering/RenderObject.h:
1505         (WebCore::RenderObject::isSetNeedsLayoutForbidden):
1506         (WebCore::RenderObject::setNeedsLayoutIsForbidden):
1507         (WebCore::RenderObject::setNeedsLayout):
1508         (WebCore::RenderObject::setChildNeedsLayout):
1509         (WebCore::RenderObject::markContainingBlocksForLayout):
1510         * rendering/RenderTable.cpp:
1511         (WebCore::RenderTable::layout):
1512         * rendering/RenderTableSection.cpp:
1513         (WebCore::RenderTableSection::calcRowHeight):
1514         (WebCore::RenderTableSection::layoutRows):
1515
1516 2009-02-04  Sam Weinig  <sam@webkit.org>
1517
1518         Reviewed by David Hyatt.
1519
1520         Rename RenderStyle::Diff to StyleDifference and move it to
1521         RenderStyleConstants.h.
1522
1523         * rendering/RenderBR.cpp:
1524         (WebCore::RenderBR::styleDidChange):
1525         * rendering/RenderBR.h:
1526         * rendering/RenderBlock.cpp:
1527         (WebCore::RenderBlock::styleWillChange):
1528         (WebCore::RenderBlock::styleDidChange):
1529         * rendering/RenderBlock.h:
1530         * rendering/RenderBox.cpp:
1531         (WebCore::RenderBox::styleWillChange):
1532         (WebCore::RenderBox::styleDidChange):
1533         * rendering/RenderBox.h:
1534         * rendering/RenderButton.cpp:
1535         (WebCore::RenderButton::styleWillChange):
1536         (WebCore::RenderButton::styleDidChange):
1537         * rendering/RenderButton.h:
1538         * rendering/RenderFieldset.cpp:
1539         (WebCore::RenderFieldset::styleDidChange):
1540         * rendering/RenderFieldset.h:
1541         * rendering/RenderFileUploadControl.cpp:
1542         (WebCore::RenderFileUploadControl::styleDidChange):
1543         * rendering/RenderFileUploadControl.h:
1544         * rendering/RenderInline.cpp:
1545         (WebCore::RenderInline::styleDidChange):
1546         * rendering/RenderInline.h:
1547         * rendering/RenderLayer.cpp:
1548         (WebCore::RenderLayer::styleChanged):
1549         * rendering/RenderLayer.h:
1550         * rendering/RenderLayerCompositor.cpp:
1551         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
1552         (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
1553         * rendering/RenderLayerCompositor.h:
1554         * rendering/RenderListBox.cpp:
1555         (WebCore::RenderListBox::styleDidChange):
1556         * rendering/RenderListBox.h:
1557         * rendering/RenderListItem.cpp:
1558         (WebCore::RenderListItem::styleDidChange):
1559         * rendering/RenderListItem.h:
1560         * rendering/RenderListMarker.cpp:
1561         (WebCore::RenderListMarker::styleWillChange):
1562         (WebCore::RenderListMarker::styleDidChange):
1563         * rendering/RenderListMarker.h:
1564         * rendering/RenderMenuList.cpp:
1565         (WebCore::RenderMenuList::styleDidChange):
1566         * rendering/RenderMenuList.h:
1567         * rendering/RenderObject.cpp:
1568         (WebCore::RenderObject::setStyle):
1569         (WebCore::RenderObject::styleWillChange):
1570         (WebCore::RenderObject::styleDidChange):
1571         * rendering/RenderObject.h:
1572         * rendering/RenderReplaced.cpp:
1573         (WebCore::RenderReplaced::styleDidChange):
1574         * rendering/RenderReplaced.h:
1575         * rendering/RenderSVGGradientStop.cpp:
1576         (WebCore::RenderSVGGradientStop::styleDidChange):
1577         * rendering/RenderSVGGradientStop.h:
1578         * rendering/RenderSVGInlineText.cpp:
1579         (WebCore::RenderSVGInlineText::styleDidChange):
1580         * rendering/RenderSVGInlineText.h:
1581         * rendering/RenderScrollbarPart.cpp:
1582         (WebCore::RenderScrollbarPart::styleWillChange):
1583         (WebCore::RenderScrollbarPart::styleDidChange):
1584         * rendering/RenderScrollbarPart.h:
1585         * rendering/RenderSlider.cpp:
1586         (WebCore::RenderSlider::styleDidChange):
1587         * rendering/RenderSlider.h:
1588         * rendering/RenderTable.cpp:
1589         (WebCore::RenderTable::styleDidChange):
1590         * rendering/RenderTable.h:
1591         * rendering/RenderTableCell.cpp:
1592         (WebCore::RenderTableCell::styleWillChange):
1593         (WebCore::RenderTableCell::styleDidChange):
1594         * rendering/RenderTableCell.h:
1595         * rendering/RenderTableRow.cpp:
1596         (WebCore::RenderTableRow::styleWillChange):
1597         * rendering/RenderTableRow.h:
1598         * rendering/RenderText.cpp:
1599         (WebCore::RenderText::styleDidChange):
1600         * rendering/RenderText.h:
1601         (WebCore::RenderText::styleWillChange):
1602         * rendering/RenderTextControl.cpp:
1603         (WebCore::RenderTextControl::styleDidChange):
1604         * rendering/RenderTextControl.h:
1605         * rendering/RenderTextControlSingleLine.cpp:
1606         (WebCore::RenderTextControlSingleLine::styleDidChange):
1607         * rendering/RenderTextControlSingleLine.h:
1608         * rendering/RenderWidget.cpp:
1609         (WebCore::RenderWidget::styleDidChange):
1610         * rendering/RenderWidget.h:
1611         * rendering/style/RenderStyle.cpp:
1612         (WebCore::RenderStyle::diff):
1613         (WebCore::RenderStyle::setClip):
1614         * rendering/style/RenderStyle.h:
1615         * rendering/style/RenderStyleConstants.h:
1616         (WebCore::):
1617
1618 2009-02-03  Sam Weinig  <sam@webkit.org>
1619
1620         Reviewed by David Hyatt.
1621
1622         Move PseudoId enum out of RenderStyle and into RenderStyleConstants.h
1623
1624         * css/CSSStyleSelector.cpp:
1625         (WebCore::CSSStyleSelector::matchRulesForList):
1626         (WebCore::CSSStyleSelector::initForStyleResolve):
1627         (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
1628         (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
1629         (WebCore::CSSStyleSelector::styleForElement):
1630         (WebCore::CSSStyleSelector::pseudoStyleForElement):
1631         (WebCore::CSSStyleSelector::checkSelector):
1632         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
1633         (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
1634         (WebCore::CSSStyleSelector::applyProperty):
1635         * css/CSSStyleSelector.h:
1636         * dom/Node.cpp:
1637         (WebCore::Node::diff):
1638         * page/FrameView.cpp:
1639         (WebCore::FrameView::createScrollbar):
1640         * rendering/InlineTextBox.cpp:
1641         (WebCore::InlineTextBox::paint):
1642         * rendering/MediaControlElements.cpp:
1643         (WebCore::MediaTextDisplayElement::MediaTextDisplayElement):
1644         (WebCore::MediaTimeDisplayElement::MediaTimeDisplayElement):
1645         (WebCore::MediaControlInputElement::MediaControlInputElement):
1646         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
1647         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
1648         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
1649         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
1650         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
1651         * rendering/MediaControlElements.h:
1652         * rendering/RenderBlock.cpp:
1653         (WebCore::RenderBlock::styleDidChange):
1654         (WebCore::RenderBlock::updateBeforeAfterContent):
1655         (WebCore::RenderBlock::firstLineBlock):
1656         (WebCore::RenderBlock::updateFirstLetter):
1657         * rendering/RenderBlock.h:
1658         * rendering/RenderBox.cpp:
1659         (WebCore::RenderBox::isAfterContent):
1660         * rendering/RenderButton.cpp:
1661         (WebCore::RenderButton::updateBeforeAfterContent):
1662         * rendering/RenderButton.h:
1663         * rendering/RenderFileUploadControl.cpp:
1664         (WebCore::RenderFileUploadControl::createButtonStyle):
1665         * rendering/RenderInline.cpp:
1666         (WebCore::RenderInline::styleDidChange):
1667         (WebCore::isAfterContent):
1668         (WebCore::RenderInline::addChildIgnoringContinuation):
1669         (WebCore::RenderInline::splitInlines):
1670         * rendering/RenderLayer.cpp:
1671         (WebCore::RenderLayer::createScrollbar):
1672         (WebCore::RenderLayer::updateScrollCornerStyle):
1673         (WebCore::RenderLayer::updateResizerStyle):
1674         * rendering/RenderListBox.cpp:
1675         (WebCore::RenderListBox::createScrollbar):
1676         * rendering/RenderMedia.cpp:
1677         (WebCore::RenderMedia::createPanel):
1678         (WebCore::RenderMedia::createTimelineContainer):
1679         * rendering/RenderMenuList.cpp:
1680         (WebCore::RenderMenuList::createScrollbar):
1681         * rendering/RenderObject.cpp:
1682         (WebCore::RenderObject::selectionBackgroundColor):
1683         (WebCore::RenderObject::selectionForegroundColor):
1684         (WebCore::RenderObject::firstLineStyleSlowCase):
1685         (WebCore::RenderObject::getCachedPseudoStyle):
1686         (WebCore::RenderObject::getUncachedPseudoStyle):
1687         * rendering/RenderObject.h:
1688         (WebCore::RenderObject::isAnonymousBlock):
1689         * rendering/RenderObjectChildList.cpp:
1690         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
1691         (WebCore::beforeAfterContainer):
1692         (WebCore::RenderObjectChildList::invalidateCounters):
1693         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
1694         * rendering/RenderObjectChildList.h:
1695         * rendering/RenderScrollbar.cpp:
1696         (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
1697         (WebCore::pseudoForScrollbarPart):
1698         * rendering/RenderScrollbar.h:
1699         * rendering/RenderSlider.cpp:
1700         (WebCore::RenderSlider::createThumbStyle):
1701         * rendering/RenderTextControlSingleLine.cpp:
1702         (WebCore::RenderTextControlSingleLine::createInnerTextStyle):
1703         (WebCore::RenderTextControlSingleLine::createResultsButtonStyle):
1704         (WebCore::RenderTextControlSingleLine::createCancelButtonStyle):
1705         (WebCore::RenderTextControlSingleLine::createScrollbar):
1706         * rendering/style/RenderStyle.cpp:
1707         (WebCore::pseudoBit):
1708         * rendering/style/RenderStyle.h:
1709         (WebCore::):
1710         * rendering/style/RenderStyleConstants.h:
1711         (WebCore::):
1712
1713 2009-02-04  David Kilzer  <ddkilzer@apple.com>
1714
1715         CrashTracer: [REGRESSION] 53 crashes in Safari at com.apple.WebCore: WebCore::LegacyWebArchive::create + 2706
1716
1717         <rdar://problem/6509514>
1718
1719         Reviewed by Mark Rowe.
1720
1721         * loader/archive/cf/LegacyWebArchive.cpp:
1722         (WebCore::LegacyWebArchive::create): Fix it correctly this time.
1723         Check for the value returned from WebCore::IconDatabase::iconForPageURL(),
1724         not WebCore::Image::data().
1725
1726 2009-02-04  David Hyatt  <hyatt@apple.com>
1727
1728         Rename removeFromObjectLists and move it into RenderBox, since it only applies to boxes.
1729
1730         Reviewed by Adam Roben
1731
1732         * rendering/RenderBox.cpp:
1733         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists):
1734         (WebCore::RenderBox::styleWillChange):
1735         * rendering/RenderBox.h:
1736         * rendering/RenderContainer.cpp:
1737         (WebCore::RenderContainer::removeChild):
1738         * rendering/RenderObject.cpp:
1739         (WebCore::RenderObject::styleWillChange):
1740         * rendering/RenderObject.h:
1741         * rendering/RenderSVGContainer.cpp:
1742         (WebCore::RenderSVGContainer::removeChild):
1743
1744 2009-02-04  Jeremy Moskovich  <jeremy@chromium.org>
1745
1746         Reviewed by Dave Hyatt.
1747
1748         https://bugs.webkit.org/show_bug.cgi?id=23471
1749         Fix text-overflow:ellipsis; for RTL case.
1750
1751         Test: fast/css/text-overflow-ellipses.html
1752
1753         * rendering/InlineTextBox.cpp:
1754         (WebCore::InlineTextBox::placeEllipsisBox): Add support for rtl placement.
1755         (WebCore::InlineTextBox::paintDecoration): Correctly draw decorations
1756         for rtl truncation.
1757
1758 2009-02-04  Dimitri Glazkov  <dglazkov@chromium.org>
1759
1760         Reviewed by Darin Adler.
1761
1762         https://bugs.webkit.org/show_bug.cgi?id=23700
1763         Upstream local changes to due to unforking of SimpleFontData
1764         (corresponds to Chromium check-in http://src.chromium.org/viewvc/chrome?view=rev&revision=8646).
1765
1766         * platform/graphics/chromium/GlyphPageTreeNodeChromiumWin.cpp:
1767         (WebCore::fillBMPGlyphs): Removed extra checks for ZWS chars.
1768
1769 2009-02-04  David Hyatt  <hyatt@apple.com>
1770
1771         <rdar://problem/6554115> REGRESSION (r40475): World leak (JS global object) after viewing a photo on Facebook
1772
1773         Fix a ginormous leak. (GINORMOUS!) Make sure to disconnect the event listeners attached to the Document,
1774         because, like, they point to a lot of stuff... like ... everything...
1775
1776         Reviewed by Darin Adler
1777
1778         * dom/Document.cpp:
1779         (WebCore::Document::removeAllEventListenersFromAllNodes):
1780
1781 2009-02-04  Darin Fisher  <darin@chromium.org>
1782
1783         Reviewed by Darin Adler.
1784
1785         https://bugs.webkit.org/show_bug.cgi?id=23731
1786         Add JSCCustom and V8Custom as extended IDL attributes
1787
1788         This helps avoid having to add #ifdefs to the IDL files to support V8 bindings.
1789
1790         * bindings/scripts/CodeGeneratorJS.pm:
1791         * dom/Document.idl:
1792         * dom/Node.idl:
1793         * svg/SVGPathSegList.idl:
1794         * svg/SVGPointList.idl:
1795         * svg/SVGTransformList.idl:
1796
1797 2009-02-04  Dan Bernstein  <mitz@apple.com>
1798
1799         - build fix
1800
1801         * rendering/RenderImageGeneratedContent.h:
1802
1803 2009-02-04  miggilin  <mr.diggilin@gmail.com>
1804
1805         Reviewed by Kevin Ollivier.
1806         
1807         Switch to using a ref-counted wxFont pointer for FontPlatformData to fix a crash
1808         with assigning to uninitialized HashTable buckets.
1809         
1810         https://bugs.webkit.org/show_bug.cgi?id=23669
1811
1812         * platform/graphics/SimpleFontData.h:
1813         (WebCore::SimpleFontData::getWxFont):
1814         * platform/graphics/wx/FontPlatformData.h:
1815         (WebCore::):
1816         (WebCore::FontPlatformData::FontPlatformData):
1817         (WebCore::FontPlatformData::font):
1818         (WebCore::FontPlatformData::operator==):
1819         * platform/graphics/wx/FontPlatformDataWx.cpp:
1820         (WebCore::FontPlatformData::FontPlatformData):
1821         (WebCore::FontPlatformData::computeHash):
1822         (WebCore::FontPlatformData::~FontPlatformData):
1823         * platform/graphics/wx/SimpleFontDataWx.cpp:
1824         (WebCore::SimpleFontData::platformInit):
1825         (WebCore::SimpleFontData::determinePitch):
1826         (WebCore::SimpleFontData::platformWidthForGlyph):
1827         * platform/wx/wxcode/gtk/non-kerned-drawing.cpp:
1828         (WebCore::drawTextWithSpacing):
1829
1830 2009-02-04  David Hyatt  <hyatt@apple.com>
1831
1832         Fix a crash in generated content when a generated image with an already-cached background image gets
1833         created.  It's not completely clear how to reproduce this crash.
1834
1835         Reviewed by Adam Roben
1836
1837         * rendering/RenderImageGeneratedContent.h:
1838         (WebCore::RenderImageGeneratedContent::imagePtr):
1839
1840 2009-02-04  Simon Hausmann  <simon.hausmann@nokia.com>
1841
1842         Unreviewed Qt build fix.
1843
1844         Changed ASSERT(image) to ASSERT(!image.isNull()).
1845
1846         * platform/graphics/qt/ImageBufferQt.cpp:
1847         (WebCore::ImageBuffer::getImageData):
1848
1849 2009-02-04  Trenton Schulz <trenton.schulz@nokia.com>
1850
1851         Reviewed by Simon Hausmann.
1852
1853         Fix implementation of PluginViewMac::invalidateRect to update only the
1854         specified rect, not the entire browser window.
1855
1856         * plugins/mac/PluginViewMac.cpp:
1857         (WebCore::PluginView::invalidateRect):
1858
1859 2009-02-04  Holger Hans Peter Freyther  <zecke@selfish.org>
1860
1861         Rubber stamped by Mark Rowe.
1862
1863         FramePrivate was removed in r40024 remove the forward
1864         declaration as well.
1865
1866         * page/Frame.h:
1867
1868 2009-02-04  Holger Hans Peter Freyther  <zecke@selfish.org>
1869
1870         Reviewed by Sam Weinig.
1871
1872         https://bugs.webkit.org/show_bug.cgi?id=23426
1873
1874         Make isFrameSet virtual and by default return false. Reimplement
1875         it in HTMLDocument.
1876
1877         * dom/Document.cpp:
1878         * dom/Document.h:
1879         (WebCore::Document::isFrameSet):
1880         * html/HTMLDocument.cpp:
1881         (WebCore::HTMLDocument::isFrameSet):
1882         * html/HTMLDocument.h:
1883
1884 2009-02-03  Oliver Hunt  <oliver@apple.com>
1885
1886         Reviewed by John Sullivan.
1887
1888         <rdar://problem/6554092> Slow script dialog starts coming up over and over again
1889
1890         Work around <rdar://problem/6554067> by consuming any exceptions that are
1891         thrown by _web_localizedDescription        
1892
1893         * platform/network/mac/ResourceErrorMac.mm:
1894         (WebCore::ResourceError::platformLazyInit):
1895
1896 2009-02-03  David Hyatt  <hyatt@apple.com>
1897
1898         Move the isRenderInline checks for clientWidth/Height and scrollWidth/Height to the DOM element
1899         versions of the functions.  Since internal render tree usage doesn't ever (incorrectly) call these
1900         functions on RenderInlines, this manages to get virtual function calls out of contentWidth/Height and
1901         availableWidth/Height.
1902
1903         Reviewed by Mark Rowe
1904
1905         * dom/Element.cpp:
1906         (WebCore::Element::clientWidth):
1907         (WebCore::Element::clientHeight):
1908         (WebCore::Element::scrollWidth):
1909         (WebCore::Element::scrollHeight):
1910         * rendering/RenderBox.cpp:
1911         (WebCore::RenderBox::clientWidth):
1912         (WebCore::RenderBox::clientHeight):
1913         (WebCore::RenderBox::scrollWidth):
1914         (WebCore::RenderBox::scrollHeight):
1915
1916 2009-02-03  Brad Garcia  <bgarcia@google.com>
1917
1918         Reviewed by Eric Seidel.
1919
1920         https://bugs.webkit.org/show_bug.cgi?id=20443
1921         Remove call to canResize when trying to determine if pointer
1922         is within a frame.
1923         Also removed the implementation of canResize as it is no longer used.
1924
1925         Test: fast/frames/frame-dead-region.html
1926
1927         * rendering/RenderFrameSet.cpp:
1928         (WebCore::RenderFrameSet::nodeAtPoint):
1929         * rendering/RenderFrameSet.h:
1930
1931 2009-02-03  David Hyatt  <hyatt@apple.com>
1932
1933         Reduce the number of calls to virtualChildren (indirectly made via RenderObject::firstChild()).
1934         This is a small gain on the PLT.
1935
1936         Reviewed by Mark Rowe
1937
1938         * rendering/bidi.cpp:
1939         (WebCore::inlineWidth):
1940         (WebCore::bidiNext):
1941
1942 2009-02-03  Simon Fraser  <simon.fraser@apple.com>
1943
1944         Reviewed by Dave Hyatt
1945
1946         https://bugs.webkit.org/show_bug.cgi?id=23628
1947
1948         Fix selection repainting to do container-relative repaints. RenderView now
1949         repaints the selection using the containerForRepaint() for each RenderSelectionInfo.
1950         selectionRect() is now a wrapper for selectionRectForRepaint() with no container.
1951         
1952         Pull SelectionInfo out of RenderObject.h, and BlockSelectionInfo out
1953         of RenderBlock.h and move them into RenderSelectionInfo.h, with some
1954         sharing and refactoring.
1955         
1956         RenderBlock::selectionGapRectsForRepaint() is not yet container-aware.
1957
1958         * GNUmakefile.am:
1959         * WebCore.vcproj/WebCore.vcproj:
1960         * WebCore.xcodeproj/project.pbxproj:
1961         * rendering/RenderBR.h:
1962         (WebCore::RenderBR::selectionRectForRepaint):
1963         * rendering/RenderBlock.cpp:
1964         (WebCore::RenderBlock::selectionGapRectsForRepaint):
1965         * rendering/RenderBlock.h:
1966         (WebCore::RenderBlock::selectionRectForRepaint):
1967         * rendering/RenderListMarker.cpp:
1968         (WebCore::RenderListMarker::paint):
1969         (WebCore::RenderListMarker::selectionRectForRepaint):
1970         * rendering/RenderListMarker.h:
1971         * rendering/RenderObject.h:
1972         (WebCore::RenderObject::selectionRect):
1973         (WebCore::RenderObject::selectionRectForRepaint):
1974         * rendering/RenderReplaced.cpp:
1975         (WebCore::RenderReplaced::selectionRectForRepaint):
1976         * rendering/RenderReplaced.h:
1977         * rendering/RenderSVGInlineText.cpp:
1978         (WebCore::RenderSVGInlineText::absoluteRects):
1979         (WebCore::RenderSVGInlineText::absoluteQuads):
1980         (WebCore::RenderSVGInlineText::selectionRectForRepaint):
1981         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
1982         * rendering/RenderSVGInlineText.h:
1983         * rendering/RenderSelectionInfo.h: Added.
1984         (WebCore::RenderSelectionInfoBase::RenderSelectionInfoBase):
1985         (WebCore::RenderSelectionInfoBase::object):
1986         (WebCore::RenderSelectionInfoBase::repaintContainer):
1987         (WebCore::RenderSelectionInfoBase::state):
1988         (WebCore::RenderSelectionInfo::RenderSelectionInfo):
1989         (WebCore::RenderSelectionInfo::repaint):
1990         (WebCore::RenderSelectionInfo::rect):
1991         (WebCore::RenderBlockSelectionInfo::RenderBlockSelectionInfo):
1992         (WebCore::RenderBlockSelectionInfo::repaint):
1993         (WebCore::RenderBlockSelectionInfo::block):
1994         (WebCore::RenderBlockSelectionInfo::rects):
1995         * rendering/RenderText.cpp:
1996         (WebCore::RenderText::selectionRectForRepaint):
1997         * rendering/RenderText.h:
1998         * rendering/RenderView.cpp:
1999         (WebCore::RenderView::selectionBounds):
2000         (WebCore::RenderView::setSelection):
2001         * rendering/RenderView.h:
2002         * rendering/RenderWidget.cpp:
2003         (WebCore::RenderWidget::paint):
2004
2005 2009-02-03  David Hyatt  <hyatt@apple.com>
2006
2007         Add inline capacity back to CSSMutableStyleDeclaration now that the bug in Vector has been fixed.
2008
2009         Reviewed by Darin Adler & Sam Weinig
2010
2011         * css/CSSMutableStyleDeclaration.cpp:
2012         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
2013         * css/CSSMutableStyleDeclaration.h:
2014
2015 2009-02-03  Justin Garcia  <justin.garcia@apple.com>
2016
2017         Reviewed by Darin Adler.
2018
2019         https://bugs.webkit.org/show_bug.cgi?id=13490
2020         Implement execCommand("styleWithCSS", ...)
2021         
2022         Determine whether or not to use HTML formatting tags for styling on the new
2023         boolean on Editor instead of whether or not the document is quirks mode.
2024
2025         * editing/ApplyStyleCommand.cpp:
2026         (WebCore::StyleChange::StyleChange):
2027         (WebCore::StyleChange::init):
2028         (WebCore::ApplyStyleCommand::applyBlockStyle):
2029         (WebCore::ApplyStyleCommand::applyTextDecorationStyle):
2030         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
2031         * editing/Editor.cpp:
2032         (WebCore::Editor::Editor):
2033         (WebCore::Editor::clear):
2034         * editing/Editor.h:
2035         (WebCore::Editor::setShouldStyleWithCSS):
2036         (WebCore::Editor::shouldStyleWithCSS):
2037         * editing/EditorCommand.cpp:
2038         (WebCore::executeStyleWithCSS):
2039         (WebCore::stateStyleWithCSS):
2040         (WebCore::CommandEntry::):
2041
2042 2009-02-03  Dirk Schulze  <krit@webkit.org>
2043
2044         Reviewed by Sam Weinig.
2045
2046         This is a follow up of r40546. Call toImage() once speeds up ImageBuffer::getImageData()
2047
2048         * platform/graphics/qt/ImageBufferQt.cpp:
2049         (WebCore::ImageBuffer::getImageData):
2050
2051 2009-02-03  Anders Carlsson  <andersca@apple.com>
2052
2053         Reviewed by Kevin Decker.
2054
2055         - Fix for <rdar://problem/6549743>
2056
2057         On Tiger, create an autorelease pool before creating the NSGraphicsContext and drain it immediately
2058         after the call to -[NSView displayRectIgnoringOpacity:inContext:].
2059         
2060         * platform/mac/WidgetMac.mm:
2061         (WebCore::Widget::paint):
2062
2063 2009-02-03  David Hyatt  <hyatt@apple.com>
2064
2065         Back this change out since it is causing layout tests to crash.  There is something subtle going on
2066         here.
2067
2068         Reviewed by Darin Adler
2069
2070         * css/CSSMutableStyleDeclaration.cpp:
2071         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
2072         * css/CSSMutableStyleDeclaration.h:
2073
2074 2009-02-03  David Hyatt  <hyatt@apple.com>
2075
2076         Give the properties vector of mutable style declarations an initial inline capacity to reduce malloc churn.
2077
2078         Reviewed by Sam Weinig
2079
2080         * css/CSSMutableStyleDeclaration.cpp:
2081         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
2082         * css/CSSMutableStyleDeclaration.h:
2083
2084 2009-02-03  David Hyatt  <hyatt@apple.com>
2085
2086         Avoid creating extra copies of NSURLRequests for non-HTTP URLs.  Only mark platform requests
2087         as needing updating when HTTP fields change if the scheme of the URL is actually HTTP or HTTPS.
2088         Thus cuts down significantly on the number of copied NSURLRequests and is about a 1% gain on the PLT.
2089
2090         Reviewed by Darin Adler
2091
2092         * loader/FrameLoader.cpp:
2093         (WebCore::FrameLoader::addExtraFieldsToRequest):
2094         * platform/KURL.cpp:
2095         (WebCore::KURL::invalidate):
2096         (WebCore::KURL::KURL):
2097         * platform/KURL.h:
2098         (WebCore::KURL::isHTTPOrHTTPS):
2099         * platform/network/ResourceRequestBase.cpp:
2100         (WebCore::ResourceRequestBase::setCachePolicy):
2101         (WebCore::ResourceRequestBase::setTimeoutInterval):
2102         (WebCore::ResourceRequestBase::setMainDocumentURL):
2103         (WebCore::ResourceRequestBase::setHTTPMethod):
2104         (WebCore::ResourceRequestBase::setHTTPHeaderField):
2105         (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
2106         (WebCore::ResourceRequestBase::setHTTPBody):
2107         (WebCore::ResourceRequestBase::setAllowHTTPCookies):
2108
2109 2009-02-03  Xan Lopez  <xan@gnome.org>
2110
2111         Reviewed by Holger Freyther.
2112
2113         https://bugs.webkit.org/show_bug.cgi?id=23711
2114
2115         Add manual test for floating divs with scrollbars.
2116
2117         * manual-tests/gtk/floatingdiv.html: Added.
2118
2119 2009-02-03  Xan Lopez  <xan@gnome.org>
2120
2121         Reviewed by Holger Freyther.
2122
2123         https://bugs.webkit.org/show_bug.cgi?id=23711
2124
2125         There's no need to hold an extra ref to the scrollbar, calling
2126         setPlatformWidget takes ownership of it.
2127
2128         Also do not disconnect the signals when destroying the widget,
2129         it's superfluous.
2130
2131         * platform/gtk/ScrollbarGtk.cpp:
2132         (ScrollbarGtk::ScrollbarGtk):
2133         * platform/gtk/ScrollbarGtk.h:
2134
2135 2009-02-03  Xan Lopez  <xan@gnome.org>
2136
2137         Reviewed by Holger Freyther.
2138
2139         https://bugs.webkit.org/show_bug.cgi?id=23711
2140
2141         Declare scrollBar as GtkWidget* to avoid needless
2142         casting.
2143
2144         * platform/gtk/ScrollbarGtk.cpp:
2145         (ScrollbarGtk::ScrollbarGtk):
2146         (ScrollbarGtk::~ScrollbarGtk):
2147
2148 2009-02-03  Xan Lopez  <xan@gnome.org>
2149
2150         Reviewed by Holger Freyther.
2151
2152         https://bugs.webkit.org/show_bug.cgi?id=23711
2153
2154         Properly calculate the scrollbar location for their
2155         usage in RenderLayout.
2156
2157         * platform/gtk/ScrollbarGtk.cpp:
2158         (ScrollbarGtk::frameRectsChanged):
2159
2160 2009-02-03  David Hyatt  <hyatt@apple.com>
2161
2162         Rename addLineBoxRects to absoluteRectsForRange, and do the same thing for the corresponding quads methods.  Move the RenderContainer implementations
2163         of these methods up to RenderObject.
2164         
2165         Reviewed by Beth Dakin
2166
2167         * bindings/objc/DOM.mm:
2168         (-[DOMNode lineBoxRects]):
2169         * dom/Range.cpp:
2170         (WebCore::Range::addLineBoxRects):
2171         * inspector/InspectorController.cpp:
2172         (WebCore::InspectorController::drawNodeHighlight):
2173         * rendering/RenderContainer.cpp:
2174         * rendering/RenderContainer.h:
2175         * rendering/RenderObject.cpp:
2176         (WebCore::RenderObject::absoluteRectsForRange):
2177         (WebCore::RenderObject::absoluteQuadsForRange):
2178         * rendering/RenderObject.h:
2179         * rendering/RenderText.cpp:
2180         (WebCore::RenderText::absoluteRectsForRange):
2181         (WebCore::RenderText::absoluteQuadsForRange):
2182         * rendering/RenderText.h:
2183
2184 2009-02-03  Dirk Schulze  <krit@webkit.org>
2185
2186         Reviewed by Sam Weinig and Oliver Hunt.
2187
2188         Added getImageData() support for QtWebKit.
2189
2190         [QT] lacks getImageData / putImageData support in Canvas
2191         https://bugs.webkit.org/show_bug.cgi?id=22186
2192
2193         * platform/graphics/qt/ImageBufferQt.cpp:
2194         (WebCore::ImageBuffer::getImageData):
2195
2196 2009-02-03  Eric Roman  <eroman@chromium.org>
2197
2198         Reviewed by Holger Freyther.
2199
2200         Fix FrameChromium.cpp following r40473 which moved Frame::adjustPageHeight to FrameView::adjustPageHeight.
2201
2202         * page/chromium/FrameChromium.cpp:
2203         (WebCore::computePageRectsForFrame):
2204
2205 2009-02-02  Simon Fraser  <simon.fraser@apple.com>
2206
2207         Reviewed by Dave Hyatt
2208
2209         https://bugs.webkit.org/show_bug.cgi?id=23358
2210
2211         Hook accelerated compositing into RenderLayer.
2212
2213         * rendering/RenderLayer.cpp:
2214         (WebCore::RenderLayer::RenderLayer):
2215         (WebCore::RenderLayer::~RenderLayer):
2216         Init and clean up backing and the hasCompositingDescendant bit.
2217         
2218         (WebCore::RenderLayer::compositor):
2219         Shortcut to get to the RenderLayerCompositor.
2220
2221         (WebCore::RenderLayer::updateLayerPositions):
2222         We need to let full repaints propagate to all compositing layers, and 
2223         update the backing after layout here.
2224         
2225         (WebCore::RenderLayer::transparentAncestor):
2226         (WebCore::transparencyClipBox):
2227         (WebCore::RenderLayer::beginTransparencyLayers):
2228         Account for the fact that opacity may be rendered via the compositing
2229         layer sometimes.
2230         
2231         (WebCore::RenderLayer::addChild):
2232         (WebCore::RenderLayer::removeChild):
2233         (WebCore::RenderLayer::removeOnlyThisLayer):
2234         Tell the compositor when the RenderLayer hierarchy changes.
2235         
2236         (WebCore::RenderLayer::scrollToOffset):
2237         Update layer geometry after scrolling.
2238         
2239         (WebCore::RenderLayer::paintLayer):
2240         We short-circuit painting on composited layers, because these layers
2241         are painted on a callback from the compositing system.
2242         
2243         (WebCore::RenderLayer::hitTestLayer):
2244         Only apply transforms if we are rendering them in software.
2245         
2246         (WebCore::RenderLayer::localBoundingBox):
2247         (WebCore::RenderLayer::boundingBox):
2248         (WebCore::RenderLayer::absoluteBoundingBox):
2249         Refactor bounding box code that we can compute local, and ancestor-relative
2250         bounding box, as well as absolute.
2251         
2252         (WebCore::RenderLayer::ensureBacking):
2253         (WebCore::RenderLayer::clearBacking):
2254         RenderLayerBacking creation and destruction.
2255         
2256         (WebCore::RenderLayer::setParent):
2257         Tell the compositor when the RenderLayer hierarchy changes.
2258
2259         (WebCore::RenderLayer::dirtyZOrderLists):
2260         (WebCore::RenderLayer::dirtyStackingContextZOrderLists):
2261         (WebCore::RenderLayer::dirtyOverflowList):
2262         When the z-order and overflow lists change, we need to tell the
2263         compositor that the composited layers need to be rejiggered soon.
2264         
2265         (WebCore::RenderLayer::updateZOrderLists):
2266         Whitespace cleanup.
2267         
2268         (WebCore::RenderLayer::setBackingNeedsRepaint):
2269         (WebCore::RenderLayer::setBackingNeedsRepaintInRect):
2270         Dirty composited layer contents for painting.
2271         
2272         (WebCore::RenderLayer::styleChanged):
2273         Update the layer backing after style changes.
2274
2275         * rendering/RenderLayer.h:
2276         (WebCore::RenderLayer::isComposited):
2277         (WebCore::RenderLayer::backing):
2278         Accessors for testing and getting the backing for this RenderLayer.
2279         
2280         (WebCore::RenderLayer::paintsWithTransparency):
2281         (WebCore::RenderLayer::paintsWithTransform):
2282         Transform and opacity can be applied via the compositing layer, or rendered
2283         in software. These methods tell us if we need to account for them in the
2284         non-compositing path.
2285         
2286         (WebCore::RenderLayer::hasCompositingDescendant):
2287         (WebCore::RenderLayer::setHasCompositingDescendant):
2288         Maintain a bit to tell if this layer has composited descendants.
2289
2290 2009-02-03  Simon Fraser  <simon.fraser@apple.com>
2291
2292         Reviewed by Dave Hyatt
2293
2294         https://bugs.webkit.org/show_bug.cgi?id=23365
2295         
2296         Hook up accelerated compositing layers the native
2297         view system on Mac.
2298
2299         * WebCore.base.exp:
2300         Export new Page methods.
2301
2302         * page/ChromeClient.h:
2303         (WebCore::ChromeClient::attachRootGraphicsLayer):
2304         (WebCore::ChromeClient::setNeedsOneShotDrawingSynchronization):
2305         New methods for attaching/detaching the root GraphicsLayer, and
2306         synchronizing layer changes with window drawing.
2307
2308         * page/FrameView.h:
2309         * page/FrameView.cpp:
2310         (WebCore::FrameView::updateCompositingLayers):
2311         (WebCore::FrameView::setNeedsOneShotDrawingSynchronization):
2312         (WebCore::FrameView::didMoveOnscreen):
2313         (WebCore::FrameView::willMoveOffscreen):
2314         New methods to update the compositing layer hierarchy,
2315         and pass-throughs to the RenderLayerCompositor.
2316
2317         (WebCore::FrameView::layout):
2318         Update compositing layers after layout() and updateLayerPositions().
2319
2320         * page/Page.cpp:
2321         (WebCore::Page::didMoveOnscreen):
2322         (WebCore::Page::willMoveOffscreen):
2323         * page/Page.h:
2324         New methods to allow the native view system to tell the Page when it 
2325         starts to be presented on-screen, and when it will be hidden.
2326
2327         * rendering/RenderLayerCompositor.h:
2328         * rendering/RenderLayerCompositor.cpp:
2329         (WebCore::RenderLayerCompositor::updateLayerCompositingState):
2330         (WebCore::RenderLayerCompositor::didMoveOnscreen):
2331         (WebCore::RenderLayerCompositor::willMoveOffscreen):
2332         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
2333         Rename 'attached' methods to 'moveOnscreen/moveOffscreen' to match
2334         the calls through from Page, FrameView.
2335
2336         (WebCore::RenderLayerCompositor::layerWillBeRemoved):
2337         Dont' try to repaint or update layers if the document is being torn
2338         down.
2339
2340         * rendering/RenderView.cpp:
2341         (WebCore::RenderView::didMoveOnscreen):
2342         (WebCore::RenderView::willMoveOffscreen):
2343         * rendering/RenderView.h:
2344         New methods.
2345
2346 2009-02-03  Dirk Schulze  <krit@webkit.org>
2347
2348         Reviewed by Holger Hans Peter Freyther.
2349
2350         Fixed getImageData and putImageData and respect pre-
2351         multiplied colors.
2352
2353         Cairo's ImageBuffer::getImageData() does not handle alpha=0 case correctly
2354         https://bugs.webkit.org/show_bug.cgi?id=21575
2355
2356         * platform/graphics/cairo/ImageBufferCairo.cpp:
2357         (WebCore::ImageBuffer::getImageData):
2358         (WebCore::ImageBuffer::putImageData):
2359
2360 2009-02-03  Dan Bernstein  <mitz@apple.com>
2361
2362         Reviewed by Brady Eidson.
2363
2364         - fix <rdar://problem/6550530> REGRESSION (r40508): Window opened with window.open has no initial history item (global and back/forward)
2365
2366         Test: fast/history/window-open.html
2367
2368         * bindings/js/JSDOMWindowBase.cpp:
2369         (WebCore::createWindow): Pass the missing lockBackForwardList parameter
2370         to FrameLoader::changeLocation().
2371
2372 2009-02-03  Adam Treat  <adam.treat@torchmobile.com>
2373
2374         Fix the Qt build after r40536.
2375
2376         * bridge/qt/qt_runtime.cpp:
2377         (JSC::Bindings::convertQVariantToValue):
2378
2379 2009-02-03  Dan Bernstein  <mitz@apple.com>
2380
2381         - fix -Wmissing-prototypes builds
2382
2383         * loader/WorkerThreadableLoader.cpp:
2384         (WebCore::workerContextDidSendData): Marked this function static.
2385         (WebCore::workerContextDidReceiveResponse): Ditto.
2386         (WebCore::workerContextDidReceiveData): Ditto.
2387         (WebCore::workerContextDidFinishLoading): Ditto.
2388         (WebCore::workerContextDidFail): Ditto.
2389         (WebCore::workerContextDidGetCancelled): Ditto.
2390         (WebCore::workerContextDidReceiveAuthenticationCancellation): Ditto.
2391
2392 2009-02-03  David Kilzer  <ddkilzer@apple.com>
2393
2394         CrashTracer: [REGRESSION] 53 crashes in Safari at com.apple.WebCore: WebCore::LegacyWebArchive::create + 2706
2395
2396         <rdar://problem/6509514>
2397
2398         Reviewed by Adam Roben.
2399
2400         * loader/archive/cf/LegacyWebArchive.cpp:
2401         (WebCore::LegacyWebArchive::create): Null check the value returned
2402         from WebCore::IconDatabase::iconForPageURL().
2403
2404 2009-02-03  Simon Hausmann  <simon.hausmann@nokia.com>
2405
2406         Reviewed by Tor Arne Vestbø.
2407
2408         Fix conversion of QByteArray to JavaScript and back. Instead of
2409         converting it to a String (data loss!) we now map it to JSByteArray.
2410
2411         * bridge/qt/qt_runtime.cpp:
2412         (JSC::Bindings::):
2413         (JSC::Bindings::valueRealType): Added JSByteArray as converstion type.
2414         (JSC::Bindings::convertValueToQVariant): Convert from JSByteArray to
2415         QVariant(QByteArray).
2416         (JSC::Bindings::convertQVariantToValue): Convert from
2417         QVariant::ByteArray to jsByteArray.
2418
2419 2009-02-03  Alexey Proskuryakov  <ap@webkit.org>
2420
2421         Build fix.
2422
2423         * GNUmakefile.am: Removed WorkerTask.{h,cpp}.
2424
2425 2009-02-03  Dmitry Titov  <dimich@chromium.org>
2426
2427         Reviewed by Alexey Proskuryakov.
2428
2429         https://bugs.webkit.org/show_bug.cgi?id=22718
2430         Implement WindowTimers interface in Workers.
2431
2432         This patch moves timeoutID from Document to ScriptExecutionContext
2433         and exposes JS methods setTimeout/setInterval/clearTimeout/clearInterval inside of a Worker.
2434         Also added a test for those methods.
2435
2436         Test: fast/workers/worker-timeout.html
2437
2438         * bindings/js/JSWorkerContextCustom.cpp:
2439         (WebCore::setTimeoutOrInterval):
2440         Creates ScheduledAction and calls WorkerContext::installTimeout to actually add a timer.
2441
2442         (WebCore::JSWorkerContext::setTimeout):
2443         (WebCore::JSWorkerContext::clearTimeout):
2444         (WebCore::JSWorkerContext::setInterval):
2445         (WebCore::JSWorkerContext::clearInterval):
2446         Added methods exposed to JS.
2447
2448         * dom/Document.cpp:
2449         * dom/Document.h:
2450         * dom/ScriptExecutionContext.cpp:
2451         (WebCore::ScriptExecutionContext::addTimeout):
2452         (WebCore::ScriptExecutionContext::removeTimeout):
2453         (WebCore::ScriptExecutionContext::findTimeout):
2454         * dom/ScriptExecutionContext.h:
2455         The timerID map moves from Document to ScriptExecutionContext,
2456         to be available to Document and to WorkerContext.
2457
2458         * dom/WorkerContext.cpp:
2459         (WebCore::WorkerContext::installTimeout): Adds a DOMTimeout.
2460         (WebCore::WorkerContext::removeTimeout): Removes a DOMTimeout.
2461         * dom/WorkerContext.h:
2462
2463         * page/DOMTimer.cpp:
2464         (WebCore::DOMTimer::DOMTimer):
2465         (WebCore::DOMTimer::~DOMTimer):
2466         (WebCore::DOMTimer::removeById):
2467         Code change here reflects move of timeoutID map to the ScriptExecutionContext.
2468         Some checks and casts are no longer needed.
2469
2470 2009-02-03  Dmitry Titov  <dimich@chromium.org>
2471
2472         Reviewed by Alexey Proskuryakov.
2473
2474         https://bugs.webkit.org/show_bug.cgi?id=23560
2475         Implement SharedTimer for Workers.
2476
2477         * dom/WorkerRunLoop.cpp:
2478         Added private class WorkerSharedTimer that implements SharedTimer interface for worker threads.
2479         (WebCore::WorkerSharedTimer::WorkerSharedTimer):
2480         (WebCore::WorkerSharedTimer::setFiredFunction):
2481         (WebCore::WorkerSharedTimer::setFireTime):
2482         (WebCore::WorkerSharedTimer::stop):
2483         (WebCore::WorkerSharedTimer::isActive):
2484         (WebCore::WorkerSharedTimer::fireTime):
2485         (WebCore::WorkerSharedTimer::fire):
2486         (WebCore::WorkerRunLoop::WorkerRunLoop):
2487         Initializes a WorkerSharedTimer instance.
2488         (WebCore::WorkerRunLoop::~WorkerRunLoop):
2489         The destructor is here so compiler is ok with having OwnPtr<WorkerSharedTimer> in .h file w/o defining WorkerSharedTimer.
2490         (WebCore::WorkerRunLoop::run):
2491         Set/reset shared timer interface on ThreadTimers, use MessageQueue::waitForMessageTimed() if timer is active.
2492         * dom/WorkerRunLoop.h:
2493         Add member of type OwnPtr<WorkerSharedTimer>
2494
2495 2009-02-03  Steve Falkenburg  <sfalken@apple.com>
2496
2497         Build fix.
2498
2499         * WebCore.vcproj/WebCore.vcproj:
2500
2501 2009-02-03  Alexey Proskuryakov  <ap@webkit.org>
2502
2503         Windows build fix.
2504
2505         * dom/CrossThreadCopier.h: Changed forward declarations to use struct instead of class where
2506         appropriate.
2507
2508 2009-02-02  David Levin  <levin@chromium.org>
2509
2510         Reviewed by Alexey Proskuryakov.
2511
2512         Bug 23636: Make the async api of ThreadableLoader functional for the worker context.
2513         <https://bugs.webkit.org/show_bug.cgi?id=23636>
2514
2515         Enable the async portion of ThreadableLoader for workers.
2516
2517         No observable change in behavior, so no test.
2518
2519         * GNUmakefile.am:
2520         * WebCore.pro:
2521         * WebCore.scons:
2522         * WebCore.vcproj/WebCore.vcproj:
2523         * WebCore.xcodeproj/project.pbxproj:
2524         * WebCoreSources.bkl:
2525         * dom/CrossThreadCopier.h:
2526         * dom/GenericWorkerTask.h:
2527         * dom/WorkerThread.cpp:
2528         * loader/ThreadableLoader.cpp:
2529         (WebCore::ThreadableLoader::create):
2530         * loader/ThreadableLoaderClient.h:
2531         (WebCore::ThreadableLoaderClient::didFinishLoading):
2532         * loader/ThreadableLoaderClientWrapper.h: Added.
2533         (WebCore::ThreadableLoaderClientWrapper::create):
2534         (WebCore::ThreadableLoaderClientWrapper::clearClient):
2535         (WebCore::ThreadableLoaderClientWrapper::didSendData):
2536         (WebCore::ThreadableLoaderClientWrapper::didReceiveResponse):
2537         (WebCore::ThreadableLoaderClientWrapper::didReceiveData):
2538         (WebCore::ThreadableLoaderClientWrapper::didFinishLoading):
2539         (WebCore::ThreadableLoaderClientWrapper::didFail):
2540         (WebCore::ThreadableLoaderClientWrapper::didGetCancelled):
2541         (WebCore::ThreadableLoaderClientWrapper::didReceiveAuthenticationCancellation):
2542         (WebCore::ThreadableLoaderClientWrapper::ThreadableLoaderClientWrapper):
2543         * loader/WorkerThreadableLoader.cpp: Added.
2544         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2545         (WebCore::WorkerThreadableLoader::~WorkerThreadableLoader):
2546         (WebCore::WorkerThreadableLoader::cancel):
2547         (WebCore::WorkerThreadableLoader::MainThreadBridge::MainThreadBridge):
2548         (WebCore::WorkerThreadableLoader::MainThreadBridge::~MainThreadBridge):
2549         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
2550         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadDestroy):
2551         (WebCore::WorkerThreadableLoader::MainThreadBridge::destroy):
2552         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCancel):
2553         (WebCore::WorkerThreadableLoader::MainThreadBridge::cancel):
2554         (WebCore::WorkerThreadableLoader::MainThreadBridge::clearClientWrapper):
2555         (WebCore::workerContextDidSendData):
2556         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
2557         (WebCore::workerContextDidReceiveResponse):
2558         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
2559         (WebCore::workerContextDidReceiveData):
2560         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
2561         (WebCore::workerContextDidFinishLoading):
2562         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
2563         (WebCore::workerContextDidFail):
2564         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2565         (WebCore::workerContextDidGetCancelled):
2566         (WebCore::WorkerThreadableLoader::MainThreadBridge::didGetCancelled):
2567         (WebCore::workerContextDidReceiveAuthenticationCancellation):
2568         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveAuthenticationCancellation):
2569         * loader/WorkerThreadableLoader.h: Added.
2570         (WebCore::WorkerThreadableLoader::create):
2571         (WebCore::WorkerThreadableLoader::refThreadableLoader):
2572         (WebCore::WorkerThreadableLoader::derefThreadableLoader):
2573
2574 2009-02-02  David Levin  <levin@chromium.org>
2575
2576         Reviewed by Alexey Proskuryakov.
2577
2578         Bug 23636: Make the async api of ThreadableLoader functional for the worker context.
2579         <https://bugs.webkit.org/show_bug.cgi?id=23636>
2580
2581         No observable change in behavior, so no test.
2582
2583         * WebCore.xcodeproj/project.pbxproj:
2584         * dom/Worker.cpp:
2585         * dom/Worker.h:
2586         * dom/WorkerContext.cpp:
2587         (WebCore::WorkerContext::addMessage):
2588         (WebCore::WorkerContext::postTask):
2589         (WebCore::WorkerContext::postTaskToWorkerObject):
2590         * dom/WorkerContext.h:
2591         * dom/WorkerMessagingProxy.cpp:
2592         (WebCore::MessageWorkerContextTask::performTask):
2593         (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
2594         (WebCore::WorkerMessagingProxy::postTaskToWorkerContext):
2595         Expose postTaskToWorkerContext for use by the worker object thread.
2596
2597         (WebCore::WorkerMessagingProxy::postTaskToWorkerObject):
2598         Change the name of postTaskToParentContext to postTaskToWorkerObject for consistency
2599         with postMessageToWorkerObject.
2600
2601         * dom/WorkerMessagingProxy.h:
2602         * dom/WorkerRunLoop.cpp:
2603         (WebCore::WorkerRunLoop::run):
2604         (WebCore::WorkerRunLoop::postTask):
2605         * dom/WorkerRunLoop.h:
2606         * dom/WorkerTask.cpp: Removed.
2607         * dom/WorkerTask.h: Removed.
2608         Removed WorkerTask and replaced with the existing ScriptExecutionContext::Task.
2609
2610         The resulted in the class going away along with an adapter that made
2611         a ScriptExecutionContext::Task look like a WorkerTask.
2612
2613         * dom/WorkerThread.cpp:
2614         * dom/WorkerThread.h:
2615
2616 2009-02-02  David Levin  <levin@chromium.org>
2617
2618         Reviewed by Alexey Proskuryakov.
2619
2620         Bug 23618: Templated worker tasks should be more error proof to use.
2621         <https://bugs.webkit.org/show_bug.cgi?id=23618>
2622
2623         Add the generic worker tasks templates needed for the WorkerThreadableLoader.
2624
2625         No observable change in behavior, so no test.
2626
2627         * GNUmakefile.am:
2628         * WebCore.pro:
2629         * WebCore.scons:
2630         * WebCore.vcproj/WebCore.vcproj:
2631         * WebCore.xcodeproj/project.pbxproj:
2632         * WebCoreSources.bkl:
2633         * dom/CrossThreadCopier.cpp: Added.
2634         * dom/CrossThreadCopier.h: Added.
2635         (WebCore::CrossThreadCopierPassThrough::copy):
2636         * dom/GenericWorkerTask.h:
2637         Stop doing the WorkerMessagingProxy::askedToTerminate call automatically
2638         in performTask because was not obvious that it would be done and not always needed.
2639
2640         (WebCore::GenericWorkerTask1::create):
2641         (WebCore::GenericWorkerTask1::GenericWorkerTask1):
2642         (WebCore::GenericWorkerTask1::performTask):
2643         (WebCore::GenericWorkerTask2::create):
2644         (WebCore::GenericWorkerTask2::GenericWorkerTask2):
2645         (WebCore::GenericWorkerTask2::performTask):
2646         (WebCore::GenericWorkerTask3::create):
2647         (WebCore::GenericWorkerTask3::GenericWorkerTask3):
2648         (WebCore::GenericWorkerTask3::performTask):
2649         (WebCore::GenericWorkerTask4::create):
2650         (WebCore::GenericWorkerTask4::GenericWorkerTask4):
2651         (WebCore::GenericWorkerTask4::performTask):
2652         (WebCore::GenericWorkerTask5::create):
2653         (WebCore::GenericWorkerTask5::GenericWorkerTask5):
2654         (WebCore::GenericWorkerTask5::performTask):
2655         (WebCore::GenericWorkerTask6::create):
2656         (WebCore::GenericWorkerTask6::GenericWorkerTask6):
2657         (WebCore::GenericWorkerTask6::performTask):
2658         (WebCore::GenericWorkerTask7::create):
2659         (WebCore::GenericWorkerTask7::GenericWorkerTask7):
2660         (WebCore::GenericWorkerTask7::performTask):
2661         (WebCore::createCallbackTask):
2662         * dom/WorkerContext.cpp:
2663         (WebCore::addMessageTask):
2664         (WebCore::WorkerContext::addMessage):
2665         * dom/WorkerMessagingProxy.h:
2666         (WebCore::WorkerMessagingProxy::askedToTerminate):
2667
2668 2009-02-02  Sam Weinig  <sam@webkit.org>
2669
2670         Reviewed by David "The Barnabas Jones" Hyatt.
2671
2672         Move removeChildNode, appendChildNode and insertChildNode from 
2673         RenderContainer into RenderObjectChildList.  Make moveChildNode
2674         static in RenderBlock, as that was the only user.
2675
2676         * rendering/RenderBlock.cpp:
2677         (WebCore::moveChild):
2678         (WebCore::RenderBlock::makeChildrenNonInline):
2679         (WebCore::RenderBlock::removeChild):
2680         (WebCore::RenderBlock::handleRunInChild):
2681         * rendering/RenderContainer.cpp:
2682         (WebCore::RenderContainer::addChild):
2683         (WebCore::RenderContainer::removeChild):
2684         * rendering/RenderContainer.h:
2685         * rendering/RenderInline.cpp:
2686         (WebCore::RenderInline::splitInlines):
2687         (WebCore::RenderInline::splitFlow):
2688         (WebCore::RenderInline::childBecameNonInline):
2689         * rendering/RenderObject.cpp:
2690         (WebCore::RenderObject::handleDynamicFloatPositionChange):
2691         * rendering/RenderObject.h:
2692         (WebCore::RenderObject::createsAnonymousWrapper):
2693         * rendering/RenderObjectChildList.cpp:
2694         (WebCore::updateListMarkerNumbers):
2695         (WebCore::RenderObjectChildList::removeChildNode):
2696         (WebCore::RenderObjectChildList::appendChildNode):
2697         (WebCore::RenderObjectChildList::insertChildNode):
2698         * rendering/RenderObjectChildList.h:
2699         * rendering/RenderSVGContainer.cpp:
2700         (WebCore::RenderSVGContainer::addChild):
2701         (WebCore::RenderSVGContainer::removeChild):
2702         * rendering/RenderSVGContainer.h:
2703         * rendering/RenderTable.cpp:
2704         (WebCore::RenderTable::removeChild):
2705         * rendering/RenderTable.h:
2706         * rendering/RenderTableSection.cpp:
2707         (WebCore::RenderTableSection::removeChild):
2708         * rendering/RenderTableSection.h:
2709
2710 2009-02-02  Alexey Proskuryakov  <ap@webkit.org>
2711
2712         Reviewed by Darin Alder.
2713
2714         https://bugs.webkit.org/show_bug.cgi?id=23697
2715         Leaks seen on Worker tests
2716
2717         * dom/WorkerMessagingProxy.cpp: (WebCore::WorkerMessagingProxy::workerContextDestroyedInternal):
2718         Zero out m_workerThread, so that the proxy could be deleted once workerObjectDestroyed()
2719         is called.
2720
2721 2009-02-02  David Hyatt  <hyatt@apple.com>
2722
2723         Move positionForCoordinates up from RenderContainer into RenderBox.
2724
2725         Reviewed by Sam Weinig
2726
2727         * rendering/RenderBox.cpp:
2728         (WebCore::RenderBox::positionForCoordinates):
2729         * rendering/RenderBox.h:
2730         * rendering/RenderContainer.cpp:
2731         * rendering/RenderContainer.h:
2732
2733 2009-02-02  Hiroaki Nakamura <hnakamur@gmail.com>
2734
2735         Reviewed by Adam Roben.
2736
2737         Fixes https://bugs.webkit.org/show_bug.cgi?id=15813
2738         Modify pre-build step to properly handle the errorlevel
2739         shell command.
2740
2741         * WebCore.vcproj/WebCore.vcproj: Change errorlevel handling
2742         for all targets so prefast is only enabled in builds
2743         where /analyze is available.
2744
2745 2009-02-02  David Hyatt  <hyatt@apple.com>
2746
2747         Refactor the handling of before/after content and generated content.  Move most of the functions from
2748         RenderContainer into RenderObjectChildList.
2749
2750         Reviewed by Sam Weinig
2751
2752         * rendering/RenderBlock.cpp:
2753         (WebCore::RenderBlock::updateBeforeAfterContent):
2754         * rendering/RenderBlock.h:
2755         * rendering/RenderBox.cpp:
2756         (WebCore::RenderBox::isAfterContent):
2757         * rendering/RenderBox.h:
2758         * rendering/RenderButton.cpp:
2759         (WebCore::RenderButton::updateBeforeAfterContent):
2760         * rendering/RenderContainer.cpp:
2761         * rendering/RenderContainer.h:
2762         * rendering/RenderCounter.cpp:
2763         (WebCore::destroyCounterNodeChildren):
2764         * rendering/RenderInline.cpp:
2765         (WebCore::RenderInline::styleDidChange):
2766         (WebCore::RenderInline::addChildIgnoringContinuation):
2767         (WebCore::RenderInline::splitInlines):
2768         * rendering/RenderObject.h:
2769         * rendering/RenderObjectChildList.cpp:
2770         (WebCore::beforeAfterContainer):
2771         (WebCore::findBeforeAfterParent):
2772         (WebCore::invalidateCountersInContainer):
2773         (WebCore::RenderObjectChildList::invalidateCounters):
2774         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
2775         * rendering/RenderObjectChildList.h:
2776
2777 2009-02-02  Dmitry Titov  <dimich@chromium.org>
2778
2779         Reviewed by Darin Adler.
2780
2781         https://bugs.webkit.org/show_bug.cgi?id=23661
2782         Fix Chromium build.
2783
2784         * history/HistoryItem.h: need to include <wtf/OwnPtr.h>
2785
2786         * rendering/RenderThemeChromiumMac.mm:
2787         (WebCore::RenderThemeChromiumMac::adjustMenuListStyle): isEnabled() is now on FormControlElement.
2788
2789 2009-02-02  Geoffrey Garen  <ggaren@apple.com>
2790
2791         Build fix.
2792
2793         * plugins/PluginView.cpp:
2794         (WebCore::PluginView::performRequest):
2795
2796 2009-02-02  Geoffrey Garen  <ggaren@apple.com>
2797
2798         Build fix.
2799
2800         * WebCore.base.exp:
2801
2802 2009-02-02  Geoffrey Garen  <ggaren@apple.com>
2803
2804         Reviewed by Sam Weinig.
2805
2806         Track redirects in global history.
2807
2808         * WebCore.base.exp: Renamed some exports.
2809         
2810         * bindings/js/JSDOMWindowBase.cpp:
2811         (WebCore::createWindow):
2812         (windowProtoFuncOpen):
2813         * bindings/js/JSDOMWindowCustom.cpp:
2814         (WebCore::JSDOMWindow::setLocation):
2815         * bindings/js/JSDocumentCustom.cpp:
2816         (WebCore::JSDocument::setLocation):
2817         * bindings/js/JSHTMLFormElementCustom.cpp:
2818         (WebCore::JSHTMLFormElement::submit):
2819         * bindings/js/JSLocationCustom.cpp:
2820         (WebCore::JSLocation::setHref):
2821         (WebCore::JSLocation::setProtocol):
2822         (WebCore::JSLocation::setHost):
2823         (WebCore::JSLocation::setHostname):
2824         (WebCore::JSLocation::setPort):
2825         (WebCore::JSLocation::setPathname):
2826         (WebCore::JSLocation::setSearch):
2827         (WebCore::JSLocation::setHash):
2828         (WebCore::JSLocation::assign): Treat any navigation that is not initiated
2829         by the user as a redirect from the perspective of global history.
2830
2831         * history/HistoryItem.cpp:
2832         (WebCore::HistoryItem::addRedirectURL): Store the last URL in the redirect
2833         chain.
2834
2835         * loader/DocumentLoader.cpp:
2836         (WebCore::DocumentLoader::DocumentLoader):
2837         * loader/DocumentLoader.h:
2838         (WebCore::DocumentLoader::urlForHistoryReflectsServerRedirect):
2839         (WebCore::DocumentLoader::urlForHistoryReflectsClientRedirect):
2840         (WebCore::DocumentLoader::setURLForHistoryReflectsClientRedirect): Sadly,
2841         added yet another way to track redirect state during loading, since none
2842         of the others did what I wanted, and I didn't want to cause behavior
2843         changes in existing code.
2844
2845         * loader/EmptyClients.h:
2846         (WebCore::EmptyFrameLoaderClient::updateGlobalHistoryForRedirectWithoutHistoryItem):
2847         Stubbed out a client function to keep things building.
2848         
2849         * loader/FrameLoader.cpp:
2850         (WebCore::isBackForwardLoadType):
2851         (WebCore::FrameLoader::restoreDocumentState): Renamed FrameLoadTypeRedirect =>
2852         FrameLoadTypeRedirectWithLockedBackForwardList, to distinguish from all
2853         the other meanings of "redirect" in the loading code.
2854
2855         (WebCore::FrameLoader::scheduleHTTPRedirection): Treat any HTTP refresh
2856         redirect as a redirect from the perspective of global history.
2857
2858         (WebCore::FrameLoader::loadURLIntoChildFrame): Updated for rename and extra
2859         parameter.
2860
2861         (WebCore::FrameLoader::startRedirectionTimer): Removed unused parameter.
2862
2863         (WebCore::FrameLoader::loadFrameRequestWithFormAndValues):
2864         (WebCore::FrameLoader::loadURL):
2865         (WebCore::FrameLoader::load): Updated for rename and extra parameter.
2866
2867         (WebCore::FrameLoader::loadWithNavigationAction): Track redirect status
2868         in the DocumentLoader, so it's accessible to WebKit's global history code.
2869
2870         (WebCore::FrameLoader::clientRedirected): Ignore lockHistory, since it
2871         only has meaning to global history, and m_quickRedirectComing pertains
2872         to other kinds of history.
2873
2874         (WebCore::FrameLoader::loadPostRequest):
2875         (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
2876         (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
2877         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
2878         (WebCore::FrameLoader::loadItem): Updated for extra parameter and rename.
2879         
2880         (WebCore::FrameLoader::updateHistory*): Notify WebKit about redirect
2881         navigations even if they don't create new history items, so we can track
2882         the redirect in the existing history item.
2883
2884         * loader/FrameLoader.h: See above.
2885         
2886         * loader/FrameLoaderClient.h: New client interface used by
2887         FrameLoader::updateHistory* to record a redirect even if it doesn't create
2888         a new history item of its own.
2889
2890         * loader/FrameLoaderTypes.h: See above.
2891         (WebCore::):
2892
2893         * page/DragController.cpp:
2894         (WebCore::DragController::performDrag):
2895         * svg/graphics/SVGImage.cpp:
2896         (WebCore::SVGImage::dataChanged): Updated for extra parameter.
2897
2898 2009-02-02  David Hyatt  <hyatt@apple.com>
2899
2900         Make calcPrefWidths non-abstract on RenderBox and just give it RenderContainer's implementation.
2901         Remove RenderSVGContainer's implementation, since it was never called.
2902
2903         Reviewed by Beth Dakin
2904
2905         * rendering/RenderBox.cpp:
2906         (WebCore::RenderBox::minPrefWidth):
2907         * rendering/RenderBox.h:
2908         (WebCore::RenderBox::calcPrefWidths):
2909         * rendering/RenderContainer.h:
2910         (WebCore::RenderContainer::moveChildNode):
2911         * rendering/RenderSVGContainer.h:
2912
2913 2009-02-02  Anders Carlsson  <andersca@apple.com>
2914
2915         Reviewed by Sam Weinig.
2916
2917         Add jsObjectForPluginElement to ScriptController, and have createScriptObjectForPluginElement call it.
2918         
2919         * WebCore.LP64.exp:
2920         * bindings/js/ScriptController.cpp:
2921         (WebCore::ScriptController::createScriptObjectForPluginElement):
2922         (WebCore::ScriptController::jsObjectForPluginElement):
2923         * bindings/js/ScriptController.h:
2924
2925 2009-02-02  Darin Fisher  <darin@chromium.org>
2926
2927         Reviewed by Eric Seidel (and Ojan Vafai).
2928
2929         https://bugs.webkit.org/show_bug.cgi?id=23696
2930         Select element doesn't show new value when focus is switched in
2931         onchange event.
2932
2933         Fix PopupMenuChromium to hide itself before calling valueChanged.  This
2934         better matches the behavior of the other ports.
2935
2936         * platform/chromium/PopupMenuChromium.cpp:
2937         (WebCore::PopupListBox::create):
2938         (WebCore::PopupContainer::PopupContainer):
2939         (WebCore::PopupContainer::showPopup):
2940         (WebCore::PopupContainer::hidePopup):
2941         (WebCore::PopupListBox::abandon):
2942         (WebCore::PopupListBox::acceptIndex):
2943         (WebCore::PopupMenu::show):
2944         (WebCore::PopupMenu::hide):
2945
2946 2009-02-02  David Hyatt  <hyatt@apple.com>
2947
2948         Make sure scrollWidth/Height just return 0 for inline flows.
2949
2950         Reviewed by Beth Dakin
2951
2952         * rendering/RenderBox.cpp:
2953         (WebCore::RenderBox::scrollWidth):
2954         (WebCore::RenderBox::scrollHeight):
2955
2956 2009-02-02  Darin Adler  <darin@apple.com>
2957
2958         Reviewed by Dave Hyatt.
2959
2960         Bug 23676: Speed up uses of reserveCapacity on new vectors by adding a new reserveInitialCapacity
2961         https://bugs.webkit.org/show_bug.cgi?id=23676
2962
2963         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2964         (WebCore::cssPropertyName):
2965         * css/CSSMutableStyleDeclaration.cpp:
2966         (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
2967         (WebCore::CSSMutableStyleDeclaration::removePropertiesInSet):
2968         * css/CSSPrimitiveValue.cpp:
2969         (WebCore::CSSPrimitiveValue::cssText):
2970         * css/CSSStyleDeclaration.cpp:
2971         (WebCore::CSSStyleDeclaration::copyPropertiesInSet):
2972         * css/CSSStyleSelector.cpp:
2973         (WebCore::CSSStyleSelector::sortMatchedRules):
2974         * dom/Document.cpp:
2975         (WebCore::Document::formElementsState):
2976         * dom/NamedAttrMap.h:
2977         (WebCore::NamedAttrMap::reserveInitialCapacity):
2978         * editing/TextIterator.cpp:
2979         (WebCore::CharacterIterator::string):
2980         (WebCore::SearchBuffer::SearchBuffer):
2981         (WebCore::plainTextToMallocAllocatedBuffer):
2982         * editing/markup.cpp:
2983         (WebCore::joinMarkups):
2984         * history/HistoryItem.cpp:
2985         (WebCore::HistoryItem::HistoryItem):
2986         * html/HTMLTokenizer.cpp:
2987         (WebCore::Token::addAttribute):
2988         * loader/appcache/DOMApplicationCache.cpp:
2989         (WebCore::DOMApplicationCache::items):
2990         * page/SecurityOrigin.cpp:
2991         (WebCore::SecurityOrigin::toString):
2992         * page/mac/AccessibilityObjectWrapper.mm:
2993         (convertToVector):
2994         * platform/graphics/FontCache.cpp:
2995         (WebCore::FontCache::purgeInactiveFontData):
2996         (WebCore::FontCache::invalidate):
2997         * platform/network/FormData.cpp:
2998         (WebCore::FormData::deepCopy):
2999         * platform/network/HTTPHeaderMap.cpp:
3000         (WebCore::HTTPHeaderMap::copyData):
3001         * platform/network/ResourceRequestBase.cpp:
3002         (WebCore::ResourceRequestBase::copyData):
3003         * platform/network/mac/FormDataStreamMac.mm:
3004         (WebCore::formCreate):
3005         * xml/XPathNodeSet.cpp:
3006         (WebCore::XPath::NodeSet::sort):
3007         Use reserveInitialCapacity instead of of reserveCapacity in all these call sites,
3008         which are working on new vectors that are guaranteed not to be empty.
3009
3010 2009-02-26  Jon Honeycutt  <jhoneycutt@apple.com>
3011
3012         Build fix after r40486.
3013
3014         Rubber-stamped by Ada Chan.
3015
3016         * dom/Document.h: Chnaged HitTestRequest to a class from a struct.
3017         * page/EventHandler.h: Ditto.
3018         * rendering/EllipsisBox.h: Ditto.
3019         * rendering/InlineBox.h: Ditto.
3020         * rendering/InlineFlowBox.h: Ditto.
3021         * rendering/RenderLayer.h: Ditto.
3022
3023 2009-02-02  Darin Adler  <darin@apple.com>
3024
3025         Reviewed by Anders Carlsson.
3026
3027         Bug 23694: REGRESSION: Running svg/custom tests crashes, randomly, depending on the order of tests
3028         https://bugs.webkit.org/show_bug.cgi?id=23694
3029
3030         * dom/ContainerNode.cpp:
3031         (WebCore::ContainerNode::insertedIntoDocument): Added back the call through to EventTargetNode.
3032         (WebCore::ContainerNode::removedFromDocument): Ditto.
3033         * dom/EventTargetNode.cpp:
3034         (WebCore::EventTargetNode::insertedIntoDocument): Changed this to not call through to Node.
3035         (WebCore::EventTargetNode::removedFromDocument): Ditto.
3036         * dom/Node.cpp:
3037         (WebCore::Node::insertedIntoDocument): Updated comment.
3038         (WebCore::Node::removedFromDocument): Ditto.
3039
3040 2009-02-02  Anders Carlsson  <andersca@apple.com>
3041
3042         Reviewed by Dan Bernstein.
3043
3044         More plug-in cleanup.
3045         
3046         * WebCore.NPAPI.exp:
3047         Add new symbols.
3048         
3049         * bindings/objc/DOM.mm:
3050         * bindings/objc/DOMPrivate.h:
3051         Remove methods that WebKit doesn't use anymore.
3052
3053 2009-02-02  Jay Campan  <jcampan@chromium.org>
3054
3055         Reviewed by Eric Seidel.
3056
3057         Clean up PopupMenuChromium a little.
3058         https://bugs.webkit.org/show_bug.cgi?id=23653
3059
3060         No functional changes, only code cleanup, thus no tests.
3061
3062         * platform/chromium/PopupMenuChromium.cpp:
3063         (WebCore::):
3064         (WebCore::PopupListBox::PopupListBox):
3065         (WebCore::PopupContainer::create):
3066         (WebCore::PopupContainer::PopupContainer):
3067         (WebCore::PopupContainer::showPopup):
3068         (WebCore::PopupListBox::handleKeyEvent):
3069         (WebCore::PopupListBox::isSelectableItem):
3070         (WebCore::PopupListBox::selectNextRow):
3071         (WebCore::PopupListBox::selectPreviousRow):
3072         (WebCore::PopupMenu::show):
3073         * platform/chromium/PopupMenuChromium.h:
3074
3075 2009-02-02  Anders Carlsson  <andersca@apple.com>
3076
3077         Reviewed by Dan Bernstein.
3078
3079         Change createPlugin to take a HTMLPlugInElement, and createJavaAppletWidget to take a HTMLAppletElement.
3080         
3081         * WebCore.xcodeproj/project.pbxproj:
3082         * loader/EmptyClients.h:
3083         (WebCore::EmptyFrameLoaderClient::createPlugin):
3084         (WebCore::EmptyFrameLoaderClient::createJavaAppletWidget):
3085         * loader/FrameLoader.cpp:
3086         (WebCore::toPlugInElement):
3087         (WebCore::FrameLoader::loadPlugin):
3088         (WebCore::FrameLoader::loadItem):
3089         * loader/FrameLoader.h:
3090         * loader/FrameLoaderClient.h:
3091
3092 2009-02-02  Genevieve Mak  <gen@staikos.net>
3093
3094         Reviewed by George Staikos.
3095
3096         https://bugs.webkit.org/show_bug.cgi?id=23508
3097         Returns Blank Page for all "about" protocols
3098
3099         * loader/MainResourceLoader.cpp:
3100         Fix shouldLoadAsEmptyDocument() to return a blank page for an empty
3101         url or about:blank only (for now, exclusively for Torch Mobile platform).
3102
3103 2009-02-02  Brent Fulgham  <bfulgham@webkit.org>
3104
3105         Reviewed by George Staikos.
3106
3107         Fixes https://bugs.webkit.org/show_bug.cgi?id=23691.
3108         Correct build break caused by @r40366 by moving the
3109         common code implmentations from GraphicsContextCGWin.cpp
3110         into the base Windows class (GraphicsContextWin.cpp).  Also
3111         move inTransparencyLayer since it is identical in both
3112         children.
3113
3114         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
3115           Added member m_shouldIncludeChildWindows to Windows version,
3116           similar to GraphicsContextPlatformPrivateCG.h.
3117         * platform/graphics/win/GraphicsContextCGWin.cpp: Remove the
3118           implementations of shouldIncludeChildWindows,
3119           setShouldIncludeChildWindows, and inTransparencyLayer.
3120         * platform/graphics/win/GraphicsContextCairoWin.cpp: Remove
3121           the implementation of inTransparencyLayer.
3122         * platform/graphics/win/GraphicsContextWin.cpp: Move common code
3123           from GraphicsContextCGWin.cpp and GraphicsContextCairoWin.cpp. 
3124         (WebCore::GraphicsContext::inTransparencyLayer):
3125         (WebCore::GraphicsContext::setShouldIncludeChildWindows):
3126         (WebCore::GraphicsContext::shouldIncludeChildWindows):
3127
3128 2009-02-02  Darin Adler  <darin@apple.com>
3129
3130         Try to fix Wx build, and maybe Chromium build too.
3131
3132         * WebCore.scons: Added IdentifierRep.cpp.
3133         * WebCoreSources.bkl: Ditto.
3134
3135 2009-02-02  Darin Adler  <darin@apple.com>
3136
3137         Try to fix Wx build.
3138
3139         * html/HTMLAreaElement.cpp: Added missing include of "Path.h".
3140
3141 2009-02-02  Adam Treat  <adam.treat@torchmobile.com>
3142
3143         Reviewed by Nikolas Zimmermann.
3144
3145         https://bugs.webkit.org/show_bug.cgi?id=23587
3146         Refactor HitTestRequest to eliminate all the ugly boolean arguments and
3147         use an enum bitflag instead.  Cleanup all the code that constructs the
3148         various HitTestRequests to make the code more readable.
3149
3150         * dom/Document.cpp:
3151         (WebCore::Document::elementFromPoint):
3152         (WebCore::Document::prepareMouseEvent):
3153         * editing/SelectionController.cpp:
3154         (WebCore::SelectionController::contains):
3155         * page/AccessibilityRenderObject.cpp:
3156         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
3157         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
3158         * page/EventHandler.cpp:
3159         (WebCore::EventHandler::eventMayStartDrag):
3160         (WebCore::EventHandler::updateSelectionForMouseDrag):
3161         (WebCore::EventHandler::hitTestResultAtPoint):
3162         (WebCore::EventHandler::handleMousePressEvent):
3163         (WebCore::EventHandler::handleMouseDoubleClickEvent):
3164         (WebCore::EventHandler::handleMouseMoveEvent):
3165         (WebCore::EventHandler::handleMouseReleaseEvent):
3166         (WebCore::EventHandler::updateDragAndDrop):
3167         (WebCore::EventHandler::handleWheelEvent):
3168         (WebCore::EventHandler::sendContextMenuEvent):
3169         (WebCore::EventHandler::hoverTimerFired):
3170         (WebCore::EventHandler::handleDrag):
3171         * page/EventHandler.h:
3172         * rendering/HitTestRequest.h:
3173         (WebCore::HitTestRequest::):
3174         (WebCore::HitTestRequest::HitTestRequest):
3175         (WebCore::HitTestRequest::readOnly):
3176         (WebCore::HitTestRequest::active):
3177         (WebCore::HitTestRequest::mouseMove):
3178         (WebCore::HitTestRequest::mouseUp):
3179         (WebCore::HitTestRequest::ignoreClipping):
3180         * rendering/RenderFrameSet.cpp:
3181         (WebCore::RenderFrameSet::nodeAtPoint):
3182         * rendering/RenderLayer.cpp:
3183         (WebCore::RenderLayer::hitTest):
3184         (WebCore::RenderLayer::hitTestLayer):
3185         (WebCore::RenderLayer::updateHoverActiveState):
3186
3187 2009-02-02  George Staikos  <george.staikos@torchmobile.com>
3188
3189         Reviewed by Niko Zimmermann.
3190
3191         Fix WML build by including the inlined renderStyle().
3192
3193         * wml/WMLOptGroupElement.cpp:
3194         * wml/WMLOptionElement.cpp:
3195
3196 2009-02-02  Darin Adler  <darin@apple.com>
3197
3198         Reviewed by Niko Zimmermann.
3199
3200         Bug 23686: REGRESSION (r40475): Failure in fast/xpath/4XPath/Core/test_core_functions.html
3201         https://bugs.webkit.org/show_bug.cgi?id=23686
3202         rdar://problem/6547971
3203
3204         Also fix other XPath tests that are crashing.
3205
3206         * xml/XPathFunctions.cpp:
3207         (WebCore::XPath::FunLang::evaluate): Fix order of arguments when creating QualifiedName.
3208         * xml/XPathStep.cpp:
3209         (WebCore::XPath::Step::nodesInAxis): Use createAttrIfNeeded() rather than attr() since we
3210         need to make Attr nodes here. Yuck!
3211
3212 2009-02-02  Yichao Yin  <yichao.yin@torchmobile.com.cn>
3213
3214         Reviewed by Niko Zimmermann.
3215
3216         Test: wml/input-format.html
3217
3218         * wml/WMLInputElement.cpp:
3219         (WebCore::WMLInputElement::WMLInputElement):
3220         (WebCore::formatCodes):
3221         (WebCore::WMLInputElement::dispatchBlurEvent):
3222         (WebCore::WMLInputElement::parseMappedAttribute):
3223         (WebCore::WMLInputElement::attach):
3224         (WebCore::WMLInputElement::defaultEventHandler):
3225         (WebCore::WMLInputElement::init):
3226         (WebCore::WMLInputElement::validateInputMask):
3227         (WebCore::WMLInputElement::isConformedToInputMask):
3228         (WebCore::WMLInputElement::cursorPositionToMaskIndex):
3229         * wml/WMLInputElement.h:
3230
3231 2009-02-02  Brent Fulgham  <bfulgham@webkit.org>
3232
3233         Build fix only, no review.
3234
3235         Fixes https://bugs.webkit.org/show_bug.cgi?id=23685.
3236         Correct build break caused by @r40473.
3237
3238         * page/win/FrameWin.cpp: Correct access for adjustPageHeight.
3239         (WebCore::computePageRectsForFrame):
3240
3241 2009-02-02  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
3242
3243         Not reviewed. Fix WML enabled builds.
3244         FrameLoader::urlSelected() got a new parameter: lockBackForwardList. Pass 'false', as HTMLAnchorElement does.
3245
3246         * wml/WMLAElement.cpp:
3247         (WebCore::WMLAElement::defaultEventHandler):
3248
3249 2009-02-02  Alexey Proskuryakov  <ap@webkit.org>
3250
3251         Reviewed by Darin Adler.
3252
3253         <rdar://problem/6451610> Reloading a AppCache page doesn't ever hit the server
3254
3255         Not easily testable.
3256
3257         * loader/appcache/ApplicationCacheGroup.cpp:
3258         (WebCore::ApplicationCacheGroup::createResourceHandle): A new method that creates a resource
3259         handle in a manner that is closer to what CachedResource does. We now make conditional
3260         requests for better performance, and set max-age to ensure that stale responses are not used.
3261         (WebCore::ApplicationCacheGroup::update): Use the new createResourceHandle() method.
3262         (WebCore::ApplicationCacheGroup::didReceiveResponse): If the response code for the resource
3263         is 304, take it from the newest cache.
3264         (WebCore::ApplicationCacheGroup::didFail): Pre-compute request URL.
3265         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse): Don't create a resource for
3266         the manifest if the response code was 304 - it won't be needed.
3267         (WebCore::ApplicationCacheGroup::didReceiveManifestData): Replaced an assertion that
3268         m_manifestResource is not null with a check.
3269         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): Treat null m_manifestResource as
3270         an indication that the response was 304.
3271         (WebCore::ApplicationCacheGroup::startLoadingEntry): Use createResourceHandle().
3272
3273         * loader/appcache/ApplicationCacheGroup.h: Added createResourceHandle().
3274
3275 2009-02-01  Darin Adler  <darin@apple.com>
3276
3277         Reviewed by Dave Hyatt.
3278
3279         Bug 23674: Speed up some things based on profiling the page load test
3280         https://bugs.webkit.org/show_bug.cgi?id=23674
3281
3282         * css/CSSStyleSelector.cpp:
3283         (WebCore::CSSStyleSelector::canShareStyleWithElement): Use the newly named cssTarget instead
3284         of the old name, getCSSTarget.
3285         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Ditto.
3286
3287         * dom/ContainerNode.cpp:
3288         (WebCore::ContainerNode::insertedIntoDocument): Moved code from Node in here rather than
3289         calling through to EventTargetNode::insertedIntoDocument.
3290         (WebCore::ContainerNode::removedFromDocument): Ditto.
3291         (WebCore::ContainerNode::insertedIntoTree): Tweaked a bit.
3292         (WebCore::ContainerNode::removedFromTree): Ditto.
3293
3294         * dom/ContainerNode.h: Moved the constructor definition here and made it inline.
3295
3296         * dom/Document.cpp:
3297         (WebCore::Document::removeAllEventListenersFromAllNodes): Iterate the document element and
3298         its contents only to avoid the document type node. This allows us to remove the virtual
3299         function call to isEventTargetNode from the loop.
3300         (WebCore::Document::setCSSTarget): Changed argument to be an Element rather than Node.
3301
3302         * dom/Document.h: Changed CSS target to be an Element rather than a Node. Renamed
3303         getCSSTarget to cssTarget.
3304
3305         * dom/EventTargetNode.cpp:
3306         (WebCore::EventTargetNode::removeAllEventListenersSlowCase): Renamed and turned the
3307         rare data check into an assertion.
3308
3309         * dom/EventTargetNode.h: Made the fast case of removeAllEventListeners be inline.
3310         Also moved the constructor definition here and made it inline. And added toEventTargetNode,
3311         matching the design of the render tree checked casts. Later we can migrate all callers
3312         from EventTargetNodeCast to toEventTargetNode.
3313
3314         * dom/NamedAttrMap.cpp:
3315         (WebCore::NamedAttrMap::detachAttributesFromElement): Added. Factored out from
3316         clearAttributes, so we could use this loop in cases where we're not clearing the attributes.
3317         (WebCore::NamedAttrMap::~NamedAttrMap): Call detachAttributesFromElement instead of
3318         clearAttributes here.
3319         (WebCore::NamedAttrMap::clearAttributes): Call detachAttributesFromElement here.
3320         (WebCore::NamedAttrMap::detachFromElement): Call detachAttributesFromElement instead of
3321         clearAttributes. We don't need to clear the attributes array just because the element is
3322         going away, so don't.
3323         (WebCore::NamedAttrMap::virtualLength): Added.
3324
3325         * dom/NamedAttrMap.h: Made all the virtual functions inherited from NamedNodeMap be private.
3326         These are all unnecessarily inefficient for use outside the DOM. Changed length to be a
3327         non-virtual function. This was a fairly hot function.
3328
3329         * dom/NamedMappedAttrMap.cpp:
3330         (WebCore::NamedMappedAttrMap::setClass): Changed to use element() function now that the
3331         m_element data member is private.
3332
3333         * dom/NamedMappedAttrMap.h: Made a few functions private. Made the
3334         hasMappedAttributes function non-virtual.
3335
3336         * dom/NamedNodeMap.h: Made length a non-virtual inline function that calls a virtual
3337         function, name virtualLength. This lets NamedAttrMap::length be a non-virtual function.
3338
3339         * dom/Node.cpp:
3340         (WebCore::Node::insertedIntoDocument): Removed call to insertedIntoTree, since it's
3341         only non-empty in subclasses of ContainerNode.
3342         (WebCore::Node::removedFromDocument): Ditto. Also removed setCSSTarget. Since a CSS
3343         target has to be an Element, this can be moved down to ContainerNode (or it could be
3344         moved down to Element for that matter).
3345
3346         * dom/QualifiedName.cpp:
3347         (WebCore::QualifiedName::QualifiedName): Removed double initialization of m_impl.
3348
3349         * dom/QualifiedName.h: Moved the destructor, copy constructor, assignment operator, and
3350         setPrefix function definitions into the header and made them inline.
3351
3352         * html/HTMLAreaElement.cpp:
3353         (WebCore::HTMLAreaElement::mapMouseEvent): Updated since the stored region is now
3354         an OwnPtr.
3355         (WebCore::HTMLAreaElement::accessKey): Use AtomicString.
3356         (WebCore::HTMLAreaElement::setAccessKey): Ditto.
3357         (WebCore::HTMLAreaElement::alt): Ditto.
3358         (WebCore::HTMLAreaElement::setAlt): Ditto.
3359         (WebCore::HTMLAreaElement::coords): Ditto.
3360         (WebCore::HTMLAreaElement::setCoords): Ditto.
3361         (WebCore::HTMLAreaElement::setHref): Ditto.
3362         (WebCore::HTMLAreaElement::shape): Ditto.
3363         (WebCore::HTMLAreaElement::setShape): Ditto.
3364         (WebCore::HTMLAreaElement::setTarget): Ditto.
3365
3366         * html/HTMLAreaElement.h: Use AtomicString in the getter and setter DOM operations.
3367         Change the region data member to be an OwnPtr<Path> instead of a Path to optimize
3368         the common case where an area element is parsed but never hit-tested. This could
3369         also have been done by changing the Path class's null case to be more efficient,
3370         but this seems fine.
3371
3372         * html/HTMLViewSourceDocument.cpp:
3373         (WebCore::HTMLViewSourceDocument::createContainingTable): Use addAttribute instead
3374         of insertAttribute.
3375         (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Ditto.
3376         (WebCore::HTMLViewSourceDocument::addLine): Ditto.
3377         (WebCore::HTMLViewSourceDocument::addLink): Ditto.
3378
3379         * loader/FrameLoader.cpp:
3380         (WebCore::FrameLoader::gotoAnchor): Use cssTarget under its new name instead
3381         of its old name getCSSTarget.
3382
3383         * platform/graphics/GlyphWidthMap.cpp:
3384         (WebCore::GlyphWidthMap::locatePageSlowCase): Refactored from locatePage.
3385
3386         * platform/graphics/GlyphWidthMap.h: Made most of this class inline.
3387         Changed m_pages to use OwnPtr.
3388
3389         * platform/text/PlatformString.h: Remove include no longer needed since
3390         StringImpl.h includes it.
3391
3392         * platform/text/StringImpl.cpp:
3393         (WebCore::StringImpl::createStrippingNullCharactersSlowCase): Refactored
3394         from createStrippingNullCharacters.
3395         * platform/text/StringImpl.h: Moved the definition of
3396         createStrippingNullCharacters here and made it inline.
3397
3398         * rendering/RenderObject.cpp:
3399         (WebCore::RenderObject::firstLineStyleSlowCase): Refactored from
3400         firstLineStyle.
3401
3402         * rendering/RenderObject.h: Moved the definition of the firstLineStyle
3403         function here and made it inline. Moved the definition of the
3404         documentBeingDestroyed function here and made it inline.
3405
3406         * svg/SVGSVGElement.cpp:
3407         (WebCore::SVGSVGElement::getCTM): Use getAttributeItem instead of
3408         getNamedItem here since it accomplishes the same thing but is more efficient.
3409         (WebCore::SVGSVGElement::getScreenCTM): Ditto.
3410         * svg/SVGStyledElement.cpp:
3411         (WebCore::SVGStyledElement::getPresentationAttribute): Ditto.
3412
3413         * xml/XPathFunctions.cpp:
3414         (WebCore::XPath::FunLang::evaluate): Use getAttributeItem instead of
3415         getNamedItemNS.
3416
3417         * xml/XPathStep.cpp:
3418         (WebCore::XPath::Step::nodesInAxis): Use attributeItem instead of item here.
3419
3420 2009-02-02  Holger Hans Peter Freyther  <zecke@selfish.org>
3421
3422         Reviewed by Darin Adler.
3423
3424         Move Frame::forceLayout, Frame::adjustPageHeight and Frame::forceLayoutWithPageWidthRange to FrameView
3425
3426         https://bugs.webkit.org/show_bug.cgi?id=23428
3427
3428         FrameView::forceLayout could be killed but the comment might
3429         contain a value over the the plain FrameView::layout...
3430
3431         Adjust the WebCore/WebKit consumers of these methods.
3432
3433         * WebCore.base.exp:
3434         * page/Frame.cpp:
3435         (WebCore::Frame::setPrinting):
3436         * page/Frame.h:
3437         * page/FrameView.cpp:
3438         (WebCore::FrameView::forceLayout):
3439         (WebCore::FrameView::forceLayoutWithPageWidthRange):
3440         (WebCore::FrameView::adjustPageHeight):
3441         * page/FrameView.h:
3442         * page/PrintContext.cpp:
3443         (WebCore::PrintContext::computePageRects):
3444
3445 2009-02-01  Dan Bernstein  <mitz@apple.com>
3446
3447         Reviewed by John Sullivan.
3448
3449         - fix <rdar://problem/6546625> REGRESSION (r40432): iframes added to global history at haaretz.co.il
3450
3451         Fixes http/tests/navigation/multiple-back-forward-entries.html
3452
3453         r40432 added a parameter to FrameLoader::scheduleLocationChange() and
3454         failed to update all call sites.
3455
3456         * bindings/js/JSDOMWindowBase.cpp:
3457         (WebCore::createWindow): Pass the lockBackForwardHistory parameter,
3458         giving it the same value as the lockHistory parameter.
3459         (windowProtoFuncOpen): Ditto.
3460         * bindings/js/JSDOMWindowCustom.cpp:
3461         (WebCore::JSDOMWindow::setLocation): Ditto.
3462         * bindings/js/JSDocumentCustom.cpp:
3463         (WebCore::JSDocument::setLocation): Ditto.
3464         * loader/FrameLoader.cpp:
3465         (WebCore::FrameLoader::requestFrame): Ditto.
3466
3467 2009-01-31  Dan Bernstein  <mitz@apple.com>
3468
3469         Reviewed by Oliver Hunt.
3470
3471         - fix <rdar://problem/6546549> Eliminate some RenderText::width() overhead from findNextLineBreak()
3472
3473         On the PLT, this results in 0.36x the number of virtual function calls
3474         to RenderText::width() and 0.69x the number of calls to
3475         Font::isFixedPitch(), but makes 1.0004x the number of calls to
3476         Font::width().
3477
3478         * rendering/RenderText.cpp:
3479         (WebCore::RenderText::width): Replaced bounds checks on 'from' and 'len'
3480         with an assertion.
3481         * rendering/bidi.cpp:
3482         (WebCore::textWidth): Added this inlined helper function which calls
3483         Font::width() directly in the non-fixed-pitch, non-full-range case, and
3484         otherwise calls RenderText::width().
3485         (WebCore::RenderBlock::findNextLineBreak): Cache whether the font has
3486         fixed pitch (in which case RenderText::width() will be called in order
3487         to take advantage of the widthFromCache() optimization for fixed-pitch
3488         fonts). Replaced all calls to RenderText::width() with calls to the
3489         textWidth() helper function.
3490
3491 2009-01-31  David Hyatt  <hyatt@apple.com>
3492
3493         Inline all of the setNeedsLayout method and its associated functions.  Also inline setChildNeedsLayout
3494         and setNeedsPositionedMovementLayout.
3495
3496         Reviewed by Dan Bernstein
3497
3498         * rendering/RenderObject.cpp:
3499         (WebCore::RenderObject::setLayerNeedsFullRepaint):
3500         * rendering/RenderObject.h:
3501         (WebCore::RenderObject::setNeedsLayout):
3502         (WebCore::RenderObject::setChildNeedsLayout):
3503         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
3504         (WebCore::objectIsRelayoutBoundary):
3505         (WebCore::RenderObject::markContainingBlocksForLayout):
3506
3507 2009-01-31  Darin Adler  <darin@apple.com>
3508
3509         Fix Mac build.
3510
3511         * loader/FrameLoader.cpp: Moved FrameLoaderClient::hasHTMLView in here.
3512         We need it to not be an inline. Sadly, FrameLoaderClient.cpp was prematurely
3513         deleted and I don't want to bring it back just to fix the build.
3514
3515         * loader/FrameLoaderClient.h: Rearrange virtual functions and corrected
3516         a possibly-confusing comment.
3517
3518 2009-01-31  Adam Treat  <adam.treat@torchmobile.com>
3519
3520         Reviewed by David Hyatt.
3521
3522         https://bugs.webkit.org/show_bug.cgi?id=23664
3523         Remove unused dead code from RenderTable class.  The dead code includes
3524         two enums and the associated member variables as well as one getter function.
3525
3526         * rendering/RenderTable.cpp:
3527         (WebCore::RenderTable::RenderTable):
3528         * rendering/RenderTable.h:
3529
3530 2009-01-31  David Hyatt  <hyatt@apple.com>
3531
3532         More removal of code from RenderContainer.  Move removeLeftoverAnonymousBlock down into RenderBlock.
3533         Move destroyLeftoverChildren into the RenderObjectChildList.  Convert all containers to use the
3534         RenderObjectChildList.
3535
3536         Reviewed by Sam Weinig
3537
3538         * WebCore.xcodeproj/project.pbxproj:
3539         * rendering/RenderBlock.cpp:
3540         (WebCore::RenderBlock::destroy):
3541         (WebCore::RenderBlock::addChild):
3542         (WebCore::RenderBlock::removeLeftoverAnonymousBlock):
3543         (WebCore::RenderBlock::layoutPositionedObjects):
3544         (WebCore::RenderBlock::childBecameNonInline):
3545         * rendering/RenderBlock.h:
3546         * rendering/RenderBox.cpp:
3547         (WebCore::RenderBox::layout):
3548         * rendering/RenderBox.h:
3549         (WebCore::RenderBox::firstChildBox):
3550         (WebCore::RenderBox::lastChildBox):
3551         * rendering/RenderContainer.cpp:
3552         (WebCore::RenderContainer::addChild):
3553         (WebCore::RenderContainer::removeChildNode):
3554         (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
3555         (WebCore::RenderContainer::appendChildNode):
3556         (WebCore::RenderContainer::insertChildNode):
3557         (WebCore::RenderContainer::positionForCoordinates):
3558         (WebCore::RenderContainer::addLineBoxRects):
3559         (WebCore::RenderContainer::collectAbsoluteLineBoxQuads):
3560         * rendering/RenderContainer.h:
3561         (WebCore::RenderContainer::virtualChildren):
3562         (WebCore::RenderContainer::children):
3563         * rendering/RenderInline.cpp:
3564         (WebCore::RenderInline::destroy):
3565         * rendering/RenderInline.h:
3566         (WebCore::RenderInline::layout):
3567         * rendering/RenderMedia.cpp:
3568         (WebCore::RenderMedia::destroy):
3569         (WebCore::RenderMedia::children):
3570         * rendering/RenderMedia.h:
3571         (WebCore::RenderMedia::virtualChildren):
3572         * rendering/RenderObject.cpp:
3573         (WebCore::RenderObject::destroy):
3574         (WebCore::RenderObject::layout):
3575         * rendering/RenderObject.h:
3576         (WebCore::RenderObject::firstChild):
3577         (WebCore::RenderObject::lastChild):
3578         (WebCore::RenderObject::virtualChildren):
3579         (WebCore::RenderObject::canHaveChildren):
3580         * rendering/RenderObjectChildList.cpp: Added.
3581         (WebCore::RenderObjectChildList::destroyLeftoverChildren):
3582         * rendering/RenderObjectChildList.h:
3583         * rendering/RenderReplaced.h:
3584         (WebCore::RenderReplaced::canHaveChildren):
3585         * rendering/RenderSVGContainer.cpp:
3586         (WebCore::RenderSVGContainer::RenderSVGContainer):
3587         (WebCore::RenderSVGContainer::destroy):
3588         (WebCore::RenderSVGContainer::removeChildNode):
3589         (WebCore::RenderSVGContainer::appendChildNode):
3590         (WebCore::RenderSVGContainer::insertChildNode):
3591         * rendering/RenderSVGContainer.h:
3592         (WebCore::RenderSVGContainer::virtualChildren):
3593         (WebCore::RenderSVGContainer::children):
3594
3595 2009-01-31  David Hyatt  <hyatt@apple.com>
3596
3597         Fix for https://bugs.webkit.org/show_bug.cgi?id=11363
3598