45830abfced7dd147192ae23d007c1f3c6f5b8e2
[WebKit-https.git] / WebCore / ChangeLog
1 2006-04-03  Alexey Proskuryakov  <ap@nypop.com>
2
3         Reviewed by Darin.
4
5         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8099
6           REGRESSION: XMLHttpRequest lowercase post requests broken
7
8         Test: http/tests/xmlhttprequest/methods-lower-case.html
9
10         * xml/xmlhttprequest.cpp:
11         (WebCore::XMLHttpRequest::open): Uppercase some HTTP method names, to match a Firefox quirk.
12         (WebCore::XMLHttpRequest::send): Account for the above change.
13
14 2006-04-02  Graham Dennis  <Graham.Dennis@gmail.com>
15
16         Reviewed by Darin.
17
18         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8032
19           REGRESSION: Focus ring not completely redrawn after a Delete changes its size
20
21         * rendering/RenderObject.cpp:
22         (WebCore::RenderObject::repaintAfterLayoutIfNeeded): When an element changes size, the
23         delta rectangles that need to be invalidated must be inflated by the outline size to ensure
24         that the previous outline is erased, and the space where the new outline is to be drawn is
25         also invalidated. This behaviour is identical to the behaviour of borders that was fixed in
26         bug 6301.
27         * manual-tests/outline-repaint-glitch.html: Added. Manual testcase.
28         This is just an outline version of border-repaint-glitch.html
29
30 2006-04-02  Trey Matteson  <trey@usa.net>
31
32         Reviewed by Maciej.
33
34         Support for fixing http://bugzilla.opendarwin.org/show_bug.cgi?id=8121
35         REGRESSION: 404s are not displayed
36
37         * bridge/mac/WebCoreFrameBridge.mm:
38         (-[WebCoreFrameBridge currentForm]): Nuke redundant nil check.
39         (-[WebCoreFrameBridge frameElement]): Tweak to not rely on our document, which
40         gives a correct result even at the start of our loading process.
41         * bindings/objc/DOM.mm:
42         (-[DOMDocument _ownerElement]): Nuke redundant nil check.
43
44 2006-04-02  David Kilzer  <ddkilzer@kilzer.net>
45
46         Reviewed by Maciej.
47
48         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8079
49         REGRESSION: Redraw from page cache does not show visited links
50
51         * page/Frame.cpp: (WebCore::Frame::reparseConfiguration): Added back
52         updateStyleSelector call that was removed as part of the patch for bug 7907.
53
54 2006-04-02  Maciej Stachowiak  <mjs@apple.com>
55
56         Reviewed by Hyatt.
57
58         - fixed <rdar://problem/4198619> REGRESSION: tabbing through links fails after hitting text field w/ sys's "tab to all controls" off
59         - fixed <rdar://problem/4463760> REGRESSION: Can't tab from old text field (like password fields) to new text field (6811)
60         (http://bugzilla.opendarwin.org/show_bug.cgi?id=6811)
61         - fixed tab and shift tab don't select the right things
62         http://bugzilla.opendarwin.org/show_bug.cgi?id=5685
63
64         * bridge/mac/FrameMac.mm:
65         (WebCore::FrameMac::nextKeyViewInFrame):
66         * bridge/mac/WebCoreFrameBridge.h:
67
68 2006-04-02  Darin Adler  <darin@apple.com>
69
70         - add a few stubs to get Windows closer to building
71
72         * platform/win/TemporaryLinkStubs.cpp:
73         (WebCore::focusRingColor):
74         (WebCore::setFocusRingColorChangeFunction):
75         (Frame::setNeedsReapplyStyles):
76
77 2006-04-02  Darin Adler  <darin@apple.com>
78
79         - fix the build
80
81         * WebCore.xcodeproj/project.pbxproj: Removed a bunch of files that should not have been
82         mentioned at all, and a bunch of others that should be in the project but not in the target.
83
84 2006-04-02  Darin Adler  <darin@apple.com>
85
86         Reviewed by Adele.
87
88         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8123
89           focus ring on new text field doesn't look like the old one
90
91         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7685
92           Focus ring color should change to match graphite when system theme is graphite
93
94         - some cleanup to how we parse user agent style sheets
95
96         * css/CSSValueKeywords.in: Added -webkit-focus-ring-color.
97
98         * css/cssstyleselector.cpp:
99         (WebCore::parseUASheet): Parse an array of chars instead of UTF-16.
100         Cuts the size of the style sheet in half.
101         (WebCore::CSSStyleSelector::applyProperty): Allow negative value for
102         outline-offset. Changed shadow parsing to use getColorFromPrimitiveValue
103         instead of repeating the same logic.
104         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue): Added a case
105         for the focus ring color.
106         * rendering/render_style.h: (WebCore::RenderStyle::setOutlineOffset):
107         Changed to allow negative values.
108
109         * css/html4.css: Removed a lot of excess spaces. Changed color of focus
110         to -webkit-focus-ring-color. Changed width of focus to 5px.
111         Added an outline-offset for <input type=text> of -2px.
112
113         * css/cssparser.cpp:
114         (WebCore::CSSParser::parseValue): Added focus ring color as an outline color all
115         the time, and as any other color when not in strict mode. I'm confused about what's
116         best for this whole strict mode policy, and I may need advice on Hyatt to perfect
117         this one later.
118         (WebCore::CSSParser::parseColorFromValue): Removed code to pin r, g, and b because
119         the functions in platform already take care of that. Kept the pinning of a, though
120         because that's done in floating point before converting to an integer.
121         (WebCore::CSSParser::parseShadow): Allow focus ring color when not in strict mode.
122
123         * bridge/mac/FrameMac.h: Eliminated the virtual detachFromView function.
124         * bridge/mac/FrameMac.mm:
125         (WebCore::FrameMac::FrameMac): Eliminated code to maintain the frame instances list.
126         (WebCore::FrameMac::~FrameMac): Ditto.
127         (WebCore::Frame::setNeedsReapplyStyles): Added.
128
129         * bridge/mac/WebCoreSettings.mm: (-[WebCoreSettings _updateAllViews]):
130         * platform/mac/WebCoreTextRendererFactory.mm:
131         (-[WebCoreTextRendererFactory clearCaches]):
132         Changed to call the new Page::setNeedsReapplyStylesForSettingsChange instead of using the
133         obsolete Frame::instances.
134
135         * page/Frame.h: Removed instances, mutableInstances, and detachFromView.
136         * page/Frame.cpp: Ditto.
137
138         * page/FrameTree.cpp:
139         (WebCore::FrameTree::~FrameTree): Call setView(0) instead of detachFromView().
140         (WebCore::FrameTree::removeChild): Ditto.
141
142         * page/Page.h:
143         * page/Page.cpp:
144         (WebCore::Page::init): Added a set of pages instead of a page count. Also
145         register a function for when the focus ring color changes the first time this
146         is called.
147         (WebCore::Page::~Page): Call setView(0) instead of detachFromView. Also update
148         to manager the set of pages.
149         (WebCore::Page::setNeedsReapplyStyles): Call setNeedsReapplyStyles on all frames.
150         (WebCore::Page::setNeedsReapplyStylesForSettingsChange): Call setNeedsReapplyStyles
151         on all frames with the passed-in settings.
152
153         * css/make-css-file-arrays.pl: Changed to run the C preprocessor on the
154         input files and to generate an array of char instead of unsigned short.
155
156         * platform/PlatformString.h: Added a constructor that takes a char* and
157         a length.
158         * platform/String.cpp: (WebCore::String::String): Ditto.
159
160         * WebCore.xcodeproj/project.pbxproj: Just some tweaks; adding in a few files like
161         the user agent style sheets.
162
163         * platform/Color.h: Removed all use of DeprecatedString. Cleaned up a bit.
164         Added focusRingColor and setFocusRingColorChangeFunction.
165         * platform/Color.cpp:
166         (WebCore::makeRGB): Rewrote using max and min.
167         (WebCore::makeRGBA): Ditto.
168         (WebCore::parseHexColor): Cleaned up a bit; changed partway to String instead of
169         DeprecatedString.
170         (WebCore::Color::Color): Changed to use String and to call setNamedColor to save code.
171         (WebCore::Color::setNamedColor): Changed to use String in the interface.
172
173         * platform/mac/ColorMac.mm:
174         (WebCore::observeTheme): Added. Function used to start up the observer.
175         (WebCore::setFocusRingColorChangeFunction): Added. Used to get a call back so we can
176         update all the views when the color changes (including recomputing style to get the
177         color change in).
178         (WebCore::setFocusRingColorChangeFunction): Added. Returns one of the two focus
179         ring colors. Both of these match what AppKit uses -- neither matches what we used
180         to have in the html4.css file.
181         (+[WebCoreControlTintObserver controlTintDidChange]): Added. Used to update when
182         the appearance is changed from blue to graphite and back. We keep a global so we
183         don't have to call over to AppKit every time; that's probably overkill but we need
184         the obsever for the color change function anyway.
185
186 2006-04-02  Mitz Pettel  <opendarwin.org@mitzpettel.com>
187
188         Test: fast/inline-block/overflow-clip.html
189
190         Reviewed by Darin.
191
192         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8118
193           REGRESSION (r13595): Inline block's clipped overflow increases table row height
194
195         * rendering/render_line.cpp:
196         (WebCore::InlineFlowBox::placeBoxesVertically): Don't look at interior overflow
197         when calculating the contribution to the inline's vertical overflows.
198
199 2006-04-02  Eric Seidel  <eseidel@apple.com>
200
201         Reviewed by andersca.
202
203         Make WebCore safe against KJS::Node in JavaScriptCore private headers.
204
205         * editing/ReplaceSelectionCommand.h:
206         * khtml/ecma/JSXMLSerializer.cpp:
207         (KJS::XMLSerializerProtoFunc::callAsFunction):
208         * khtml/ecma/JSXSLTProcessor.cpp:
209         (KJS::XSLTProcessorProtoFunc::callAsFunction):
210         * khtml/ecma/kjs_binding.cpp:
211         (KJS::ScriptInterpreter::forgetDOMNodeForDocument):
212         (KJS::ScriptInterpreter::putDOMNodeForDocument):
213         * khtml/ecma/kjs_dom.cpp:
214         (KJS::DOMNode::DOMNode):
215         (KJS::DOMNode::mark):
216         (KJS::DOMNode::getValueProperty):
217         (KJS::DOMNode::putValueProperty):
218         (KJS::DOMNodeProtoFunc::callAsFunction):
219         (KJS::toNode):
220         (KJS::DOMEventTargetNode::DOMEventTargetNode):
221         (KJS::DOMDocumentProtoFunc::callAsFunction):
222         (KJS::DOMElement::putValueProperty):
223         (KJS::DOMElementProtoFunc::callAsFunction):
224         (KJS::checkNodeSecurity):
225         (KJS::toJS):
226         (KJS::getRuntimeObject):
227         (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
228         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
229         * khtml/ecma/kjs_events.cpp:
230         (KJS::JSLazyEventListener::JSLazyEventListener):
231         (KJS::ClipboardProtoFunc::callAsFunction):
232         * khtml/ecma/kjs_html.cpp:
233         (KJS::JSHTMLDocument::namedItemGetter):
234         (KJS::JSHTMLElement::framesetNameGetter):
235         (KJS::JSHTMLElement::getOwnPropertySlot):
236         (KJS::JSHTMLElement::pushEventHandlerScope):
237         (KJS::JSHTMLCollection::callAsFunction):
238         (KJS::JSHTMLCollection::getNamedItems):
239         (KJS::JSHTMLSelectCollection::put):
240         * khtml/ecma/kjs_traversal.cpp:
241         (KJS::JSNodeFilterCondition::acceptNode):
242         * khtml/ecma/kjs_window.cpp:
243         (KJS::Window::put):
244         * kwq/KWQPageState.mm:
245         (-[KWQPageState WebCore::]):
246
247 2006-04-01  Darin Adler  <darin@apple.com>
248
249         Reviewed by Eric.
250
251         - removed a bunch of unneeded ForwardingHeaders and WebCore+SVG headers
252
253         * ForwardingHeaders/kcanvas: Removed.
254         * ForwardingHeaders/kcanvas/KCanvas.h: Removed.
255         * ForwardingHeaders/kdom: Removed.
256         * ForwardingHeaders/kdom/DOMString.h: Removed.
257         * ForwardingHeaders/kdom/Helper.h: Removed.
258         * ForwardingHeaders/kdom/KDOMSettings.h: Removed.
259         * ForwardingHeaders/kdom/Namespace.h: Removed.
260         * ForwardingHeaders/kdom/cache: Removed.
261         * ForwardingHeaders/kdom/cache/KDOMCachedImage.h: Removed.
262         * ForwardingHeaders/kdom/cache/KDOMCachedObject.h: Removed.
263         * ForwardingHeaders/kdom/cache/KDOMCachedObjectClient.h: Removed.
264         * ForwardingHeaders/kdom/cache/KDOMCachedScript.h: Removed.
265         * ForwardingHeaders/kdom/cache/KDOMLoader.h: Removed.
266         * ForwardingHeaders/kdom/core: Removed.
267         * ForwardingHeaders/kdom/core/DOMConfiguration.h: Removed.
268         * ForwardingHeaders/kdom/core/DOMException.h: Removed.
269         * ForwardingHeaders/kdom/core/DOMList.h: Removed.
270         * ForwardingHeaders/kdom/core/DOMString.h: Removed.
271         * ForwardingHeaders/kdom/core/NamedAttrMap.h: Removed.
272         * ForwardingHeaders/kdom/core/ProcessingInstruction.h: Removed.
273         * ForwardingHeaders/kdom/core/domattrs.h: Removed.
274         * ForwardingHeaders/kdom/ecma: Removed.
275         * ForwardingHeaders/kdom/ecma/GlobalObject.h: Removed.
276         * ForwardingHeaders/kdom/events: Removed.
277         * ForwardingHeaders/kdom/events/Event.h: Removed.
278         * ForwardingHeaders/kdom/events/EventListener.h: Removed.
279         * ForwardingHeaders/kdom/events/EventTarget.h: Removed.
280         * ForwardingHeaders/kdom/events/KeyboardEvent.h: Removed.
281         * ForwardingHeaders/kdom/events/MouseEvent.h: Removed.
282         * ForwardingHeaders/kdom/events/UIEvent.h: Removed.
283         * ForwardingHeaders/kdom/events/kdomevents.h: Removed.
284         * ForwardingHeaders/kdom/kdom.h: Removed.
285         * ForwardingHeaders/kdom/parser: Removed.
286         * ForwardingHeaders/kdom/parser/KDOMParser.h: Removed.
287         * ForwardingHeaders/ksvg2: Removed.
288         * ForwardingHeaders/ksvg2/KSVGPart.h: Removed.
289         * ForwardingHeaders/ksvg2/KSVGView.h: Removed.
290         * ForwardingHeaders/ksvg2/css: Removed.
291         * ForwardingHeaders/ksvg2/css/CSSPropertyNames.h: Removed.
292         * ForwardingHeaders/ksvg2/css/CSSValueKeywords.h: Removed.
293         * WebCore+SVG/KDOMHeaders.h: Removed.
294         * WebCore+SVG/Namespace.h: Removed.
295         * WebCore+SVG/kdom.h: Removed.
296
297         * WebCore.xcodeproj/project.pbxproj: Removed headers.
298
299         * kcanvas/KCanvasCreator.cpp:
300         * kcanvas/KCanvasResources.cpp:
301         * kcanvas/KCanvasTreeDebug.cpp:
302         * kcanvas/RenderPath.cpp:
303         * kcanvas/RenderSVGImage.cpp:
304         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
305         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
306         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
307         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
308         * ksvg2/css/SVGCSSStyleSelector.cpp:
309         * ksvg2/events/SVGZoomEvent.h:
310         * ksvg2/misc/KCanvasRenderingStyle.cpp:
311         * ksvg2/misc/KSVGTimeScheduler.cpp:
312         * ksvg2/misc/SVGImageLoader.cpp:
313         * ksvg2/svg/SVGAElement.cpp:
314         * ksvg2/svg/SVGAnimationElement.cpp:
315         * ksvg2/svg/SVGCircleElement.cpp:
316         * ksvg2/svg/SVGClipPathElement.cpp:
317         * ksvg2/svg/SVGCursorElement.cpp:
318         * ksvg2/svg/SVGCursorElement.h:
319         * ksvg2/svg/SVGDOMImplementation.cpp:
320         * ksvg2/svg/SVGDocument.cpp:
321         * ksvg2/svg/SVGDocument.h:
322         * ksvg2/svg/SVGElement.cpp:
323         * ksvg2/svg/SVGEllipseElement.cpp:
324         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
325         * ksvg2/svg/SVGExternalResourcesRequired.h:
326         * ksvg2/svg/SVGFEBlendElement.cpp:
327         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
328         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
329         * ksvg2/svg/SVGFECompositeElement.cpp:
330         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
331         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
332         * ksvg2/svg/SVGFEFloodElement.cpp:
333         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
334         * ksvg2/svg/SVGFEImageElement.cpp:
335         * ksvg2/svg/SVGFEImageElement.h:
336         * ksvg2/svg/SVGFELightElement.cpp:
337         * ksvg2/svg/SVGFEMergeElement.cpp:
338         * ksvg2/svg/SVGFEOffsetElement.cpp:
339         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
340         * ksvg2/svg/SVGFETileElement.cpp:
341         * ksvg2/svg/SVGFETurbulenceElement.cpp:
342         * ksvg2/svg/SVGFilterElement.cpp:
343         * ksvg2/svg/SVGGradientElement.cpp:
344         * ksvg2/svg/SVGHelper.cpp:
345         * ksvg2/svg/SVGImageElement.cpp:
346         * ksvg2/svg/SVGLangSpace.cpp:
347         * ksvg2/svg/SVGLength.cpp:
348         * ksvg2/svg/SVGLineElement.cpp:
349         * ksvg2/svg/SVGLinearGradientElement.cpp:
350         * ksvg2/svg/SVGList.h:
351         * ksvg2/svg/SVGLocatable.cpp:
352         * ksvg2/svg/SVGMarkerElement.cpp:
353         * ksvg2/svg/SVGMarkerElement.h:
354         * ksvg2/svg/SVGMaskElement.cpp:
355         * ksvg2/svg/SVGPathElement.cpp:
356         * ksvg2/svg/SVGPatternElement.cpp:
357         * ksvg2/svg/SVGPolyElement.cpp:
358         * ksvg2/svg/SVGPolygonElement.cpp:
359         * ksvg2/svg/SVGPolylineElement.cpp:
360         * ksvg2/svg/SVGRadialGradientElement.cpp:
361         * ksvg2/svg/SVGRectElement.cpp:
362         * ksvg2/svg/SVGSVGElement.cpp:
363         * ksvg2/svg/SVGStopElement.cpp:
364         * ksvg2/svg/SVGStyleElement.cpp:
365         * ksvg2/svg/SVGStyledElement.cpp:
366         * ksvg2/svg/SVGStyledLocatableElement.cpp:
367         * ksvg2/svg/SVGStyledTransformableElement.cpp:
368         * ksvg2/svg/SVGTextElement.cpp:
369         * ksvg2/svg/SVGTransformable.cpp:
370         * ksvg2/svg/SVGUseElement.cpp:
371         * ksvg2/svg/SVGViewElement.cpp:
372         Updated includes.
373
374 2006-04-01  Darin Adler  <darin@apple.com>
375
376         Reviewed by Maciej.
377
378         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8089
379           REGRESSION: Caret position is off in native text field with text-align:right
380
381         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8082
382           REGRESSION: Empty RTL text fields place the caret on the left side
383
384         Need a way to make a test for this. No obvious way at the moment.
385
386         * rendering/RenderFlow.cpp: (WebCore::RenderFlow::caretRect):
387         Consider border, padding, and the width of the caret properly in the
388         calculation of the caret's X position.
389
390         * rendering/RenderBox.cpp: (WebCore::RenderBox::caretRect):
391         Fixed some similar issues and rewrote this function for clarity.
392         However, I suspect this function was and remains broken and is almost
393         never called.
394
395 2006-04-01  Darin Adler  <darin@apple.com>
396
397         Reviewed by Justin.
398
399         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8106
400           REGRESSION (NativeTextField): New text fields don't scroll to the beginning when losing focus
401
402         Test: fast/forms/input-text-scroll-left-on-blur.html
403
404         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Pass blur events
405         through to the RenderTextField, as well as mouse, drag, and wheel events.
406         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::forwardEvent): Scroll all the way to
407         the left on a blur.
408
409         - unrelated small changes
410
411         * html/HTMLTextFieldInnerElement.cpp: Removed excess includes.
412         (WebCore::HTMLTextFieldInnerElement::defaultEventHandler): Tweaked comments a bit.
413
414         * dom/Element.cpp:
415         (WebCore::Element::scrollIntoView): Removed unneeded this-> before function call.
416         (WebCore::Element::scrollIntoViewIfNeeded): Ditto.
417
418         * page/FrameView.cpp: (WebCore::FrameView::dispatchMouseEvent): Removed obsolete comment.
419
420 2006-03-31  Maciej Stachowiak  <mjs@apple.com>
421
422         Reviewed by Adele.
423         
424         <rdar://problem/4497684> REGRESSION(NativeTextField): After undoing pasted text in a field, the field changes to only a few pixels in height (8096)
425
426         * editing/ReplaceSelectionCommand.cpp:
427         (WebCore::ReplaceSelectionCommand::doApply): merge into start block when pasting into
428         an empty editable subtree.
429
430 2006-04-01  Darin Adler  <darin@apple.com>
431
432         Reviewed by Maciej.
433
434         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8063
435           REGRESSION: double clicking in new text fields won't select whole words
436
437         Test: fast/forms/input-text-double-click.html
438
439         * editing/visible_units.cpp: (WebCore::nextBoundary): Set the end of the range by
440         calling selectNodeContents rather than by calling setEndAfter. The problem with
441         setEndAfter is that it doesn't do anything when the parent of the node is 0, and
442         also it's not really what we want, since the boundary node is one with editable
443         contents -- we want to stay inside the boundary node.
444
445         * editing/Selection.cpp: (WebCore::Selection::validate): Fix a tiny formatting glitch
446         I noticed at the same time.
447
448 2006-03-31  John Sullivan  <sullivan@apple.com>
449
450         Reviewed by Tim Hatcher.
451         
452         - fixed <rdar://problem/4372842> 10.4.4 Regression: control-clicking on a misspelled word 
453         doesn't select it or offer corrections (first click only)
454
455         * bridge/mac/FrameMac.mm:
456         (WebCore::FrameMac::sendContextMenuEvent):
457         Rolled in this one-line change that Hyatt wrote ages ago.
458
459 2006-03-31  Beth Dakin  <bdakin@apple.com>
460
461         Reviewed by John.
462
463         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8108
464         REGRESSION (r13590-r13593): Floating table's cells don't paint 
465         their background
466
467         This is a regression from my painting patch yesterday. Just a silly 
468         error I didn't catch.
469
470         * rendering/RenderTable.cpp:
471         (WebCore::RenderTable::paint): Change the phase of our new 
472         PaintInfo, not our old one.
473
474 2006-03-31  Tim Omernick  <timo@apple.com>
475
476         Reviewed by Adele.
477
478         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7858>
479         <rdar://problem/4483359> REGRESSION: New text field doesn't recognize the read only attribute
480         
481         * rendering/RenderTextField.cpp:
482         (WebCore::RenderTextField::createDivStyle):
483         Set user modify based on the form element's readOnly().
484         (WebCore::RenderTextField::updateFromElement):
485         ditto
486
487 2006-03-31  Adele Peterson  <adele@apple.com>
488
489         Reviewed by Tim Omernick.
490
491         Updating shadowAncestorNode so it doesn't check for rootEditableElement.  Now we just walk
492         up the tree to look for a shadowNode, and then we find the shadowParent.
493
494         * dom/Node.cpp: (WebCore::Node::shadowAncestorNode):
495         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::setSelectionRange):
496          Updated assertion to check for shadowAncestorNode instead of rootEditableElement.
497
498 2006-03-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
499
500         Reviewed by John Sullivan.
501         
502         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8101
503           REGSRESSION: Fix for bug 7031 causes 30 layout tests to fail
504
505         * rendering/render_line.cpp:
506         (WebCore::InlineFlowBox::placeBoxesVertically): Change top and bottom positions
507         only if childAffectsTopBottomPos is true.
508         * rendering/RenderFlow.cpp:
509         (WebCore::RenderFlow::paintLines): Redo a part of the patch for bug 7031 that
510         wasn't committed with the rest of the patch.
511
512 2006-03-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
513
514         Reviewed by Darin, landed by Beth.
515
516         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8081
517         REGRESSION: Drop-down menu has gap at top
518
519         * rendering/RenderBox.cpp:
520         (WebCore::RenderBox::calcAbsoluteVerticalValues): When calculating 
521         the hypothetical vertical position in normal flow, skip table rows 
522         in the ancestor chain, since a table cell's Y position is relative 
523         to the table section, not the row.
524
525 2006-03-31  Dave Hyatt <hyatt@apple.com>
526
527         Fix the border drawing for themes on Win32.
528
529         Reviewed by adele
530
531         * rendering/RenderBox.cpp:
532         (WebCore::RenderBox::paintBoxDecorations):
533         * rendering/RenderTheme.cpp:
534         (WebCore::RenderTheme::paintBorderOnly):
535         * rendering/RenderTheme.h:
536
537 2006-03-30  Darin Adler  <darin@apple.com>
538
539         Reviewed by John Sullivan.
540
541         * khtml/ecma/kjs_binding.cpp: Added names for VALIDATION_ERR and
542         TYPE_MISMATCH_ERR; new DOM Level 3 errors that need to be listed in
543         the mapping from error code to error name.
544
545         * dom/Element.idl: Removed comment from bad old days where we had to
546         touch these files to make them rebuild.
547
548 2006-03-30  Maciej Stachowiak  <mjs@apple.com>
549
550         - fixed Windows build breakage from previous change
551
552         * platform/ScrollView.h:
553         * platform/win/FontWin.cpp:
554         (WebCore::Font::drawLineForText):
555         * platform/win/ScrollViewWin.cpp:
556         (WebCore::ScrollView::scrollOffset):
557         (WebCore::ScrollView::scrollBy):
558
559 2006-03-30  Maciej Stachowiak  <mjs@apple.com>
560
561         Reviewed by Eric.
562         
563         - various Point / Size related cleanup
564         
565         First, I clarified the semantics of some operations to keep a
566         better distinction between IntPoint and IntSize:
567         
568         * platform/IntPoint.h:
569         (WebCore::IntPoint::move): new convenience to move a point by separate
570         x and y deltas.
571         (WebCore::operator+=): You can't add a point to a point, you can only add
572         a size to a point.
573         (WebCore::operator+): ditto
574         (WebCore::operator-): point - point = size; point - size = point
575         (WebCore::operator-=): only allow subtracting a size for the mutating version
576         * platform/IntRect.h:
577         (WebCore::IntRect::move): tweaked to use IntPoint::move, also, move by an IntSize,
578         not an IntPoint.
579         * platform/IntSize.h:
580         (WebCore::IntSize::shrunkTo): analog to expandedTo
581         (WebCore::IntSize::clampNegativeToZero): a handy helper
582         (WebCore::operator-): Added unary minus operator
583
584         Made the same changes for FloatPoint:
585         
586         * platform/FloatPoint.h:
587         (WebCore::FloatPoint::move):
588         (WebCore::operator+=):
589         (WebCore::operator-=):
590         (WebCore::operator+):
591         (WebCore::operator-):
592         * platform/FloatRect.h:
593         (WebCore::FloatRect::move):
594         * platform/FloatSize.h:
595         (WebCore::operator-):
596
597         Then I changed a bunch of stuff to pass around IntPoint instead of separate x and y
598         coordinates. The main one was:
599         
600         * platform/ScrollView.h:
601         * platform/mac/ScrollViewMac.mm:
602         (WebCore::ScrollView::scrollOffset): new method, return an IntSize
603         (WebCore::ScrollView::contentsToViewport): take and return an IntPoint
604         (WebCore::ScrollView::viewportToContents): take and return an IntPoint
605         * platform/win/ScrollViewWin.cpp:
606         (WebCore::ScrollView::updateContents): handle things in terms of scrollOffset,
607         not scrollPoint
608         (WebCore::ScrollView::visibleContentRect):
609         (WebCore::ScrollView::contentsX):
610         (WebCore::ScrollView::contentsY):
611         (WebCore::ScrollView::viewportToContents):
612         (WebCore::ScrollView::contentsToViewport):
613         (WebCore::scrollOffset):
614         (WebCore::ScrollView::maximumScroll):
615         (WebCore::ScrollView::scrollBy):
616         (WebCore::ScrollView::updateScrollBars):
617
618         The rest is mainly updates for these changes.
619
620         * bridge/mac/FrameMac.h:
621         * bridge/mac/FrameMac.mm:
622         (WebCore::FrameMac::eventMayStartDrag):
623         (WebCore::FrameMac::dragHysteresisExceeded):
624         (WebCore::FrameMac::handleMouseMoveEvent):
625         (WebCore::FrameMac::mouseDown):
626         (WebCore::FrameMac::shouldDragAutoNode):
627         (WebCore::FrameMac::sendContextMenuEvent):
628         * bridge/mac/WebCoreFrameBridge.mm:
629         (-[WebCoreFrameBridge isPointInsideSelection:]):
630         * dom/EventTargetNode.cpp:
631         (WebCore::EventTargetNode::dispatchMouseEvent):
632         (WebCore::EventTargetNode::dispatchWheelEvent):
633         * khtml/ecma/kjs_window.cpp:
634         (KJS::WindowFunc::callAsFunction):
635         * page/Frame.cpp:
636         (WebCore::Frame::shouldDragAutoNode):
637         (WebCore::Frame::isPointInsideSelection):
638         (WebCore::Frame::selectClosestWordFromMouseEvent):
639         (WebCore::Frame::handleMousePressEventDoubleClick):
640         (WebCore::Frame::handleMousePressEventTripleClick):
641         (WebCore::Frame::handleMousePressEventSingleClick):
642         (WebCore::Frame::handleMouseMoveEventPart2):
643         (WebCore::Frame::handleMouseReleaseEvent):
644         * page/Frame.h:
645         * page/FrameView.cpp:
646         (WebCore::FrameView::dispatchDragEvent):
647         (WebCore::FrameView::prepareMouseEvent):
648         (WebCore::FrameView::handleWheelEvent):
649         * rendering/RenderLayer.cpp:
650         (WebCore::RenderLayer::scrollRectToVisible):
651         * rendering/RenderObject.cpp:
652         (WebCore::RenderObject::draggableNode):
653         * rendering/RenderObject.h:
654         (WebCore::RenderObject::positionForPoint):
655         * rendering/render_list.cpp:
656         (WebCore::RenderListMarker::paint):
657
658 2006-03-30  Maciej Stachowiak  <mjs@apple.com>
659
660         - fixed windows build
661
662         * platform/win/TemporaryLinkStubs.cpp:
663         (Widget::unlockDrawingFocus):
664
665 2006-03-31  Eric Seidel  <eseidel@apple.com>
666
667         Reviewed by mjs.
668
669         A bit more code cleanup.
670
671         * bridge/mac/WebCoreScriptDebugger.mm:
672         (-[WebCoreScriptCallFrame evaluateWebScript:]):
673         * html/HTMLFormElement.cpp:
674         (WebCore::HTMLFormElement::submit):
675         * html/HTMLInputElement.cpp:
676         (WebCore::HTMLInputElement::setValue):
677         * kwq/WebCoreTextField.mm:
678         (-[KWQTextFieldController textView:shouldHandleEvent:]):
679         (-[KWQSecureTextField selectText:]):
680         * page/Frame.cpp:
681         (WebCore::Frame::submitForm):
682         * platform/Widget.h:
683         * platform/mac/WidgetMac.mm:
684         * rendering/render_frames.cpp:
685         (WebCore::RenderFrameSet::userResize):
686
687 2006-03-30  Maciej Stachowiak  <mjs@apple.com>
688
689         Reviewed by Eric.
690
691         * bridge/mac/FrameMac.mm:
692         (WebCore::FrameMac::wheelEvent):
693         (WebCore::FrameMac::eventMayStartDrag):
694         (WebCore::FrameMac::handleMouseMoveEvent):
695         (WebCore::FrameMac::sendContextMenuEvent):
696         * bridge/mac/WebCoreFrameBridge.mm:
697         (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]):
698         * dom/Document.cpp:
699         (WebCore::Document::elementFromPoint):
700         (WebCore::Document::prepareMouseEvent):
701         * dom/Document.h:
702         * kwq/WebCoreAXObject.mm:
703         (-[WebCoreAXObject doAXTextMarkerForPosition:]):
704         (-[WebCoreAXObject accessibilityHitTest:]):
705         * manual-tests/frame-hover.html: Added.
706         * manual-tests/resources/hover-subframe-1.html: Added.
707         * manual-tests/resources/hover-subframe-2.html: Added.
708         * page/Frame.cpp:
709         (WebCore::Frame::isPointInsideSelection):
710         * page/FrameView.cpp:
711         (WebCore::FrameView::prepareMouseEvent):
712         (WebCore::FrameView::handleWheelEvent):
713         * platform/IntRect.h:
714         (WebCore::IntRect::contains):
715         * rendering/RenderLayer.cpp:
716         (WebCore::isSubframeCanvas):
717         (WebCore::frameVisibleRect):
718         (WebCore::RenderLayer::hitTest):
719         (WebCore::shouldApplyImplicitCapture):
720         (WebCore::RenderLayer::hitTestLayer):
721         * rendering/RenderLayer.h:
722
723 2006-03-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
724
725         Tests: fast/repaint/flexible-box-overflow.html fast/repaint/flexible-box-overflow-horizontal.html
726
727         Reviewed by Darin.
728         
729         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8056
730           Flexible boxes do not repaint their top, left and children's overflows
731
732         * rendering/RenderBlock.cpp:
733         (WebCore::RenderBlock::layoutBlockChildren):
734         * rendering/RenderFlexibleBox.cpp:
735         (WebCore::FlexBoxIterator::next):
736         (WebCore::RenderFlexibleBox::layoutHorizontalBox): Update top overflow when
737         determining vertical positions. Update horizontal overflows after horizontal
738         positions are determined.
739         (WebCore::RenderFlexibleBox::layoutVerticalBox):  Update left overflow when
740         determining horizontal positions. Update vertical overflows after vertical
741         positions are determined.
742         (WebCore::RenderFlexibleBox::allowedChildFlex):
743
744 2006-03-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
745
746         Tests: fast/repaint/text-shadow.html fast/repaint/text-shadow-horizontal.html
747
748         Reviewed by Darin.
749
750         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7301
751           Text shadow does not repaint correctly
752
753         * rendering/InlineTextBox.cpp:
754         (WebCore::InlineTextBox::paint): Paint the text box if it is within the maximum
755         possible horizontal shadow overflow of the damage rect.
756         * rendering/InlineTextBox.h: Removed unused function checkVerticalPoint().
757         * rendering/RenderFlow.cpp:
758         (WebCore::RenderFlow::paintLines): Use the vertical overflows instead of the
759         selection vertical bounds.
760         (WebCore::RenderFlow::hitTestLines):
761         * rendering/render_line.cpp:
762         (WebCore::InlineFlowBox::placeBoxesHorizontally): Include overflow due to text shadow
763         in leftPosition and rightPosition and keep track of the maximum horizontal shadow
764         on the inline.
765         (WebCore::InlineFlowBox::verticallyAlignBoxes):
766         (WebCore::InlineFlowBox::placeBoxesVertically): Include overflow due to shadow and
767         inline-blocks' overflow in topPosition and bottomPosition but not in the selection
768         vertical bounds.
769         (WebCore::RootInlineBox::selectionTop):
770         * rendering/render_line.h:
771         (WebCore::InlineFlowBox:::InlineRunBox):
772         (WebCore::InlineFlowBox::setVerticalSelectionPositions):
773         (WebCore::InlineFlowBox::maxHorizontalShadow):
774         (WebCore::RootInlineBox::setVerticalSelectionPositions):
775         (WebCore::RootInlineBox::selectionBottom):
776         (WebCore::RootInlineBox::selectionHeight):
777
778 2006-03-30  Beth Dakin  <bdakin@apple.com>
779
780         Reviewed by Hyatt.
781
782         Fix for <rdar://problem/4472371> REGRESSION(417.9-TOT): Focus ring 
783         around link in overflow:auto div isn't clipped to div
784
785         Focus rings around the children off overflow:auto divs were not 
786         being appropriately clipped because they were being painted with 
787         the div's outlineRect, when they should be painted separately. This 
788         patch adds two new PaintPhases -- PaintPhaseSelfOutline and 
789         PaintPhaseChildOutlines -- to address this problem.
790
791         This patch also changes the name of PaintAction back to PaintPhase. 
792         Because Hyatt said so.
793
794         * kcanvas/KCanvasResources.cpp:
795         (WebCore::KCanvasMarker::draw):
796         * kcanvas/RenderPath.cpp:
797         (WebCore::RenderPath::paint):
798         * kcanvas/RenderSVGImage.cpp:
799         (WebCore::RenderSVGImage::paint):
800         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
801         (WebCore::KCanvasContainerQuartz::paint):
802         * ksvg2/svg/SVGMaskElement.cpp:
803         (WebCore::SVGMaskElement::drawMaskerContent):
804         * ksvg2/svg/SVGPatternElement.cpp:
805         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
806         * rendering/InlineTextBox.cpp:
807         (WebCore::InlineTextBox::paint):
808         * rendering/RenderBlock.cpp:
809         (WebCore::RenderBlock::paint):
810         (WebCore::RenderBlock::paintChildren):
811         (WebCore::RenderBlock::paintObject):
812         (WebCore::RenderBlock::paintFloats):
813         (WebCore::RenderBlock::paintEllipsisBoxes):
814         (WebCore::RenderBlock::paintSelection):
815         * rendering/RenderBox.cpp:
816         (WebCore::RenderBox::setStyle):
817         * rendering/RenderCanvas.cpp:
818         (WebCore::RenderCanvas::paint):
819         * rendering/RenderFlow.cpp:
820         (WebCore::RenderFlow::paintLines):
821         * rendering/RenderHTMLCanvas.cpp:
822         (WebCore::RenderHTMLCanvas::paint):
823         * rendering/RenderImage.cpp:
824         (WebCore::RenderImage::paint):
825         * rendering/RenderLayer.cpp:
826         (WebCore::RenderLayer::paintLayer):
827         * rendering/RenderObject.cpp:
828         (WebCore::RenderObject::maximalOutlineSize):
829         * rendering/RenderObject.h:
830         (WebCore::):
831         (WebCore::RenderObject::PaintInfo::PaintInfo):
832         * rendering/RenderTable.cpp:
833         (WebCore::RenderTable::paint):
834         * rendering/RenderTableCell.cpp:
835         (WebCore::RenderTableCell::paint):
836         * rendering/RenderTableRow.cpp:
837         (WebCore::RenderTableRow::paint):
838         * rendering/RenderTableSection.cpp:
839         (WebCore::RenderTableSection::paint):
840         * rendering/render_button.cpp:
841         (WebCore::RenderButton::paintObject):
842         * rendering/render_line.cpp:
843         (WebCore::InlineBox::paint):
844         (WebCore::InlineFlowBox::paint):
845         (WebCore::InlineFlowBox::paintBackgroundAndBorder):
846         (WebCore::RootInlineBox::paintEllipsisBox):
847         * rendering/render_list.cpp:
848         (WebCore::RenderListMarker::paint):
849         * rendering/render_replaced.cpp:
850         (WebCore::RenderReplaced::shouldPaint):
851         (WebCore::RenderWidget::paint):
852
853 2006-03-30  Tim Omernick  <timo@apple.com>
854
855         Manual test case for the Java aspect of <rdar://problem/4212626> REGRESSION: LIVECONNECT:
856         JavaScript type for Java Strings is function, not object
857
858         * manual-tests/java-string-object-type.html: Added.
859         * manual-tests/resources/StringTypeTest.class: Added.
860         * manual-tests/resources/StringTypeTest.java: Added.
861
862 2006-03-30  Eric Seidel  <eseidel@apple.com>
863
864         Reviewed by hyatt.
865
866         Fix text form controls, and add basic submit support!
867
868         * bridge/win/FrameWin.cpp:
869         (WebCore::FrameWin::submitForm):
870         * bridge/win/FrameWin.h:
871         * platform/win/KeyEventWin.cpp:
872         (WebCore::keyIdentifierForWindowsKeyCode):
873         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
874         * platform/win/TemporaryLinkStubs.cpp:
875         (FrameWin::incomingReferrer):
876         * platform/win/TransferJobWin.cpp:
877         (WebCore::TransferJob::start):
878
879 2006-03-30  Adele Peterson  <adele@apple.com>
880
881         Reviewed by Justin.
882
883         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8083
884         REGRESSION: Repro crash when dragging to select over a new text field
885
886         * editing/Selection.cpp: (WebCore::Selection::adjustForEditableContent):
887         When searching for non-editable content, if the end of the selection is in a 
888         shadow tree, then we need to jump out of that first.
889
890 2006-03-30  Justin Garcia  <justin.garcia@apple.com>
891
892         Reviewed by darin
893         
894         http://bugzilla.opendarwin.org/show_bug.cgi?id=6989
895         REGRESSION: Plain-text mode needed for contenteditable area used in new text field
896
897         * bridge/mac/WebCoreFrameBridge.h:
898         * bridge/mac/WebCoreFrameBridge.mm:
899         (-[WebCoreFrameBridge isSelectionEditable]):
900         (-[WebCoreFrameBridge isSelectionRichlyEditable]):
901         * css/CSSComputedStyleDeclaration.cpp:
902         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
903         * css/CSSValueKeywords.in:
904         * css/cssparser.cpp:
905         (WebCore::CSSParser::parseValue):
906         * dom/Node.cpp:
907         (WebCore::Node::isContentRichlyEditable):
908         * dom/Node.h:
909         * editing/EditCommand.cpp:
910         (WebCore::EditCommand::apply):
911         * editing/JSEditor.cpp:
912         * editing/ReplaceSelectionCommand.cpp:
913         (WebCore::ReplacementFragment::ReplacementFragment):
914         (WebCore::ReplaceSelectionCommand::doApply):
915         * editing/Selection.h:
916         (WebCore::Selection::rootEditableElement):
917         (WebCore::Selection::isContentEditable):
918         (WebCore::Selection::isContentRichlyEditable):
919         * editing/SelectionController.h:
920         (WebCore::SelectionController::rootEditableElement):
921         (WebCore::SelectionController::isContentEditable):
922         (WebCore::SelectionController::isContentRichlyEditable):
923         * html/HTMLElement.cpp:
924         (WebCore::HTMLElement::isContentEditable):
925         (WebCore::HTMLElement::contentEditable):
926         (WebCore::HTMLElement::setContentEditable):
927         * rendering/RenderTextField.cpp:
928         (WebCore::RenderTextField::createDivStyle):
929         * rendering/render_style.h:
930         (WebCore::):
931         
932 2006-03-30  David Harrison  <harrison@apple.com>
933
934         Reviewed by Justin.
935
936         <rdar://problem/4444693> REGRESSION: Deleting empty lines causes quoted text to mistakenly get "unquoted"
937
938         * editing/DeleteSelectionCommand.cpp:
939         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
940         Formatting.
941         (WebCore::DeleteSelectionCommand::moveNodesAfterNode):
942         Generalize check that preserves nesting when deleting to the beginning of an ancestor block.
943
944         * editing/deleting/delete-block-merge-contents-022.html: Added.
945         * editing/deleting/delete-block-merge-contents-023.html: Added.
946         * editing/deleting/delete-block-merge-contents-024.html: Added.
947
948 2006-03-30  Mitz Pettel  <opendarwin.org@mitzpettel.com>
949
950         Reviewed by Darin.
951
952         - Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8076
953           REGRESSION: native text fields are reversed on "visual Hebrew" pages
954
955         * fast/forms/visual-hebrew-text-field-expected.checksum: Added.
956         * fast/forms/visual-hebrew-text-field-expected.png: Added.
957         * fast/forms/visual-hebrew-text-field-expected.txt: Added.
958         * fast/forms/visual-hebrew-text-field.html: Added.
959
960 2006-03-30  Alexey Proskuryakov  <ap@nypop.com>
961
962         Reviewed by John Sullivan.
963
964         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8051
965           Empty forms are submitted incorrectly
966
967         Test: fast/forms/empty-get.html
968
969         * platform/KURL.cpp:
970         (KURL::setQuery): Add a question mark for empty query strings, too.
971
972 2006-03-30  Dave Hyatt <hyatt@apple.com>
973
974         Roll out the fix to 7102 and reopen it to get Spinneret working
975         again.
976
977         Reviewed by justin
978
979         * page/Frame.cpp:
980         (WebCore::Frame::didOpenURL):
981         (WebCore::Frame::receivedFirstData):
982         (WebCore::Frame::begin):
983
984 2006-03-30  Dave Hyatt <hyatt@apple.com>
985
986         Land support for JPEG image decoding on Win32.
987
988         * WebCore.vcproj/WebCore/WebCore.vcproj:
989         * platform/cairo/ImageSourceCairo.cpp:
990         (WebCore::createDecoder):
991         (WebCore::ImageSource::frameHasAlphaAtIndex):
992         * platform/image-decoders/ImageDecoder.h:
993         (WebCore::RGBA32Buffer::setRGBA):
994         (WebCore::ImageDecoder::supportsAlpha):
995         * platform/image-decoders/gif/GIFImageDecoder.cpp:
996         (WebCore::GIFImageDecoder::haveDecodedRow):
997         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
998         (WebCore::JPEGImageReader::JPEGImageReader):
999         (WebCore::JPEGImageReader::close):
1000         (WebCore::JPEGImageReader::skipBytes):
1001         (WebCore::JPEGImageReader::decode):
1002         (WebCore::JPEGImageReader::info):
1003         (WebCore::JPEGImageReader::samples):
1004         (WebCore::JPEGImageReader::decoder):
1005         (WebCore::error_exit):
1006         (WebCore::init_source):
1007         (WebCore::skip_input_data):
1008         (WebCore::fill_input_buffer):
1009         (WebCore::term_source):
1010         (WebCore::JPEGImageDecoder::decode):
1011         (WebCore::JPEGImageDecoder::outputScanlines):
1012         (WebCore::JPEGImageDecoder::jpegComplete):
1013         * platform/image-decoders/jpeg/JPEGImageDecoder.h:
1014         (WebCore::JPEGImageDecoder::supportsAlpha):
1015         (WebCore::JPEGImageDecoder::setSize):
1016         * platform/image-decoders/png/PNGImageDecoder.cpp:
1017         (WebCore::PNGImageDecoder::rowAvailable):
1018
1019 2006-03-29  Justin Garcia  <justin.garcia@apple.com>
1020
1021         Reviewed by darin
1022         
1023         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8067>
1024         REGRESSION: selectionRect includes next/previous replaced elements
1025         Also fixes: <rdar://problems/4402375&4474871&4492934>
1026         
1027         In the case where a selection starts at the end or ends at the start
1028         of o, o->selectionState() != SelectionNone, but o isn't really selected.  
1029         Constraining the selection with upstream and downstream eliminates these
1030         types of endpoints, but constraining endpoints that occur at the 
1031         start or end of a paragraph creates positions inside containers - some 
1032         of which the selection painting code isn't equipped to handle.
1033
1034         * dom/Document.cpp:
1035         (WebCore::Document::updateSelection):
1036         * rendering/render_replaced.cpp:
1037         (WebCore::RenderReplaced::shouldPaint):
1038         (WebCore::RenderReplaced::selectionRect):
1039         (WebCore::RenderReplaced::setSelectionState):
1040         (WebCore::RenderWidget::setSelectionState):
1041
1042 2006-03-29  Adele Peterson  <adele@apple.com>
1043
1044         Reviewed by Hyatt.
1045
1046         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6986
1047         Switch to use new text field implementation for <input type="text">
1048
1049         * css/html4.css: Added default style info for new text fields.
1050         * rendering/RenderTextField.cpp:
1051         (WebCore::RenderTextField::createDivStyle): Added an extra 1px of padding on the left & right to match Win IE & the latest Mozilla.
1052         (WebCore::RenderTextField::updateFromElement): Removed some outdated comments.  Cleaned up the way we add text nodes to the div.
1053         (WebCore::RenderTextField::setSelectionStart): Tweaked selection code to better match Mozilla behavior.
1054         (WebCore::RenderTextField::setSelectionEnd): ditto.
1055         (WebCore::RenderTextField::select): Cleaned this up by having it call setSelectionRange.
1056         (WebCore::RenderTextField::setSelectionRange): Calls updateLayout now in case this is called in an onload handler, and no other layout has occurred.
1057         (WebCore::RenderTextField::calcMinMaxWidth): Use floatWidth to calculate the width of the "0" character.
1058         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isControlStyled): If the text field's specified border is different from 
1059          the default border, then treat the control as styled, so the engine knows to turn off the aqua appearance.
1060         * rendering/RenderThemeMac.mm:
1061         (WebCore::RenderThemeMac::paintTextField): return false so the engine knows not to try to draw the border.
1062         (WebCore::RenderThemeMac::adjustTextFieldStyle): text field style info has been moved to html4.css. 
1063          We also add intrinsic margins here if the font size is large enough.
1064         * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler):
1065          No longer check for appearance. All text fields with m_type == TEXT will use the new implementation.
1066         * html/HTMLInputElement.cpp:
1067         (WebCore::HTMLInputElement::isKeyboardFocusable): ditto.
1068         (WebCore::HTMLInputElement::focus): ditto.
1069         (WebCore::HTMLInputElement::selectionStart): ditto.
1070         (WebCore::HTMLInputElement::selectionEnd): ditto.
1071         (WebCore::HTMLInputElement::setSelectionStart): ditto.
1072         (WebCore::HTMLInputElement::setSelectionEnd): ditto.
1073         (WebCore::HTMLInputElement::select): ditto.
1074         (WebCore::HTMLInputElement::setSelectionRange): ditto.
1075         (WebCore::HTMLInputElement::createRenderer): ditto.
1076         (WebCore::HTMLInputElement::defaultEventHandler): ditto.
1077         (WebCore::HTMLInputElement::isMouseFocusable): Added.  Old text fields relied on the widget to provide a focus policy.  
1078          A text field that is focusable should be mouse focusable, and shouldn't need to ask the base class.
1079         * html/HTMLInputElement.h: Added isMouseFocusable.
1080         * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::isMouseFocusable):
1081          Removed specific text field code since that is now done in HTMLInputElement::isMouseFocusable.
1082         * dom/Document.cpp: (WebCore::Document::clearSelectionIfNeeded): Check that the new selection is does not have a shadowAncestorNode that is focused.
1083
1084 2006-03-29  Darin Adler  <darin@apple.com>
1085
1086         Reviewed by Eric.
1087
1088         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8026
1089           A particular animated SVG crashes in filter code
1090           <rdar://problem/4494775> A particular animated SVG crashes in filter code
1091
1092         - fix some code that is not handling references correctly for GC
1093
1094         Test: svg/custom/empty-merge.svg
1095
1096         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1097         (WebCore::KCanvasFilterQuartz::KCanvasFilterQuartz): Use KWQRetainNSRelease to
1098         properly retain a reference to an Objective-C object in a C++ class.
1099         (WebCore::KCanvasFilterQuartz::~KCanvasFilterQuartz): Use KWQRelease instead of
1100         release.
1101         (WebCore::KCanvasFilterQuartz::prepareFilter): Use KWQRetain instead of retain.
1102         (WebCore::KCanvasFilterQuartz::applyFilter): Use KWQRelease instead of release.
1103         (WebCore::KCanvasFilterQuartz::imageForName): Use objectForKey: instead of
1104         valueForKey: on the dictionary to sidestep a bug in valueForKey: on empty strings
1105         and because what we're doing with a dictionary here has nothing to do with
1106         key value encoding.
1107
1108         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1109         (WebCore::KRenderingDeviceContextQuartz::~KRenderingDeviceContextQuartz):
1110         Use KWQRelease instead of release.
1111         (WebCore::KRenderingDeviceContextQuartz::nsGraphicsContext): Use KWQRetain
1112         instead of retain to properly retain a reference to an Objective-C object
1113         in a C++ class.
1114
1115         * platform/mac/ImageMac.mm:
1116         (WebCore::Image::invalidateNativeData): Use CFRelease instead of release.
1117         (WebCore::Image::getNSImage): Use KWQRetainNSRelease to properly retain
1118         a reference to an Objective-C object in a C++ class.
1119
1120 2006-03-29  Geoffrey Garen  <ggaren@apple.com>
1121
1122         Reviewed by Darin.
1123
1124         - WebCore side of fix for <rdar://problem/4308243> 8F36 Regression: 
1125         crash in malloc_consolidate if you use a .PAC file
1126
1127         (1) To ensure thread-safe deallocation, set the "unsafe to destroy on 
1128         non-main threads" bit in the DOMObject constructor.
1129
1130         (2) Made all binding objects inherit from DOMObject, because the
1131         WebCore data structures they wrap are not thread-safe. "DOMObject" is
1132         a slightly awkward name for things like the Window object, but the 
1133         DOM spec is considering adding a Window object, and creating a whole
1134         new base class for this purpose seemed like overkill.
1135
1136         * khtml/ecma/JSDOMParser.h:
1137         * khtml/ecma/JSXMLHttpRequest.h:
1138         * khtml/ecma/JSXMLSerializer.cpp:
1139         (KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp):
1140         * khtml/ecma/JSXMLSerializer.h:
1141         * khtml/ecma/JSXSLTProcessor.h:
1142         * khtml/ecma/kjs_binding.h:
1143         (KJS::DOMObject::DOMObject): Unset the "safe to collect on non-main
1144         threads bit" to ensure thread-safe deallocation.
1145         * khtml/ecma/kjs_html.h:
1146         * khtml/ecma/kjs_navigator.cpp:
1147         (KJS::Navigator::Navigator):
1148         (KJS::PluginBase::PluginBase):
1149         * khtml/ecma/kjs_navigator.h:
1150         * khtml/ecma/kjs_proxy.cpp:
1151         * khtml/ecma/kjs_window.cpp:
1152         (KJS::History::History):
1153         (KJS::FrameArray::FrameArray):
1154         (KJS::Screen::Screen):
1155         (KJS::Window::Window):
1156         (KJS::BarInfo::BarInfo):
1157         * khtml/ecma/kjs_window.h:
1158
1159 2006-03-29  Geoffrey Garen  <ggaren@apple.com>
1160
1161         Reviewed by Darin.
1162
1163         - Fixed <rdar://problem/4477126> TOT REGRESSION: with release
1164         build, maps.google.com zoom slider always zooms fully out
1165
1166         There were 2 problems: (1) A syntax error in the UIEvent IDL file
1167         prevented some things from showing up in the bindings; (2)
1168         MouseEvent had a duplicate isSimulated property that shadowed
1169         MouseRelatedEvent's isSimulated property, and MouseEvent failed to
1170         initialize MouseRelatedEvent's isSimulated property.
1171
1172         * dom/UIEvent.idl:
1173         * dom/dom2_eventsimpl.cpp:
1174         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1175         (WebCore::MouseEvent::MouseEvent):
1176         * dom/dom2_eventsimpl.h:
1177
1178 2006-03-29  Tim Omernick  <timo@apple.com>
1179
1180         Reviewed by Darin.
1181
1182         * html/HTMLInputElement.cpp:
1183         (WebCore::HTMLInputElement::setInputType):
1184         If the input type is dynamically changed, reevaluate whether the element maintains its state
1185         (this decision is based on the input's type).  Fixes an assertion error when leaving a page
1186         with a text field that had been dynamically changed to a password field.
1187
1188 2006-03-29  Alexey Proskuryakov  <ap@nypop.com>
1189
1190         Reviewed by Darin.
1191
1192         - http://bugzilla.opendarwin.org/show_bug.cgi?id=8055
1193           Fix most CSS grammar conflicts.
1194
1195         Gets the number of shift/reduce and reduce/reduce conflicts down from 37+4 to 7+0.
1196
1197         I have fixed the reduce/reduce conflicts, then noticed that two of the fixes
1198         were already made in KDE tree (the other two are different because declaration
1199         blocks are described in quite different ways). Shift/reduce fixes are just
1200         merged from KDE, r332845 by Michael Matz.
1201
1202         * css/CSSGrammar.y:
1203
1204 2006-03-29  Alexey Proskuryakov  <ap@nypop.com>
1205
1206         Reviewed by Darin.
1207
1208         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7157
1209           An asterisk in a CSS property name breaks CSS handling 
1210           (Many layout problems at letras.terra.com.br)
1211
1212         Test: fast/css/error-in-last-decl.html
1213
1214         * css/CSSGrammar.y: Added a rule for the case when the last CSS rule 
1215           has a syntax error, and doesn't end with a semicolon.
1216
1217 2006-03-29  Darin Adler  <darin@apple.com>
1218
1219         Reviewed by Anders.
1220
1221         - another cut at fixing the buildbot
1222
1223         * generate-derived-sources: Fix if statement that was always following
1224         the Windows case. I believe this is the main problem.
1225
1226         * WebCore.xcodeproj/project.pbxproj: Added CharsetData.h and added CharsetData.cpp
1227         to the target.
1228         * WebCore.vcproj/WebCore/WebCore.vcproj: Similar changes.
1229
1230         * platform/CharsetData.h: Added.
1231         * platform/CharsetNames.cpp: Moved the actual character set data out into a
1232         separate source file instead of include a .cpp file.
1233
1234         * platform/make-charset-table.pl: Changed to generate a file that can stand alone.
1235
1236 2006-03-29  Darin Adler  <darin@apple.com>
1237
1238         - an attempt to fix the buildbot
1239
1240         * platform/mac/mac-encodings.txt: Touched this file so the character encodings
1241         files will be regenerated.
1242
1243 2006-03-29  Darin Adler  <darin@apple.com>
1244
1245         - a quick cut at fixing the windows build
1246
1247         * WebCore.vcproj/WebCore/WebCore.vcproj: Added a few recently-added files.
1248
1249 2006-03-29  Maciej Stachowiak  <mjs@apple.com>
1250
1251         Reviewed by Anders.
1252         
1253         - fixed  <rdar://problem/4454976> repro crash in -[NSTextView(NSSharing) setSelectedRanges:affinity:stillSelecting:] when navigating
1254         
1255         Also fixed other issues with contains. The problem that caused the bug was:
1256         - contains should return true for the element itself, unlike isAncestor
1257         
1258         Other problems I fixed:
1259         - contains shouldn't be present on non-Element nodes
1260         - contains should return false when passed a non-Element node
1261         - contains should return false when passed a non-Node
1262
1263         * bindings/scripts/CodeGeneratorJS.pm: Handle Element as a parameter.
1264         * dom/Element.cpp:
1265         (WebCore::Element::contains): Added new implementation.
1266         * dom/Element.h: Added prototype for contains.
1267         * dom/Element.idl: Added IDL declaration for contains.
1268         * khtml/ecma/kjs_dom.cpp:
1269         (KJS::DOMNodeProtoFunc::callAsFunction): Added old wrong contains().
1270
1271 2006-03-28  Beth Dakin  <bdakin@apple.com>
1272
1273         Reviewed by Maciej
1274
1275         Fix for <rdar://problem/4493218> repro crash in 
1276         khtml::RenderBlock::repaintFloatingDescendants with giant 
1277         cellspacing value
1278
1279         Some callers of CSSPrimitiveValue::computeLength() expect an int, 
1280         and others a short. This patch splits computeLength() into 
1281         computeIntLength() and computeShortLength() so that the appropriate 
1282         bounds can be checked. 
1283
1284         * css/css_valueimpl.cpp:
1285         (WebCore::CSSPrimitiveValue::computeIntLength): Return 0 if not 
1286         within int bounds.
1287         (WebCore::CSSPrimitiveValue::computeShortLength): Return 0 if not 
1288         within short bounds.
1289         * css/css_valueimpl.h:
1290         * css/cssstyleselector.cpp:
1291         (WebCore::convertToLength): Switch to appropriate computeLength() 
1292         call.
1293         (WebCore::CSSStyleSelector::applyProperty): Same.
1294         (WebCore::CSSStyleSelector::mapBackgroundXPosition): Same.
1295         (WebCore::CSSStyleSelector::mapBackgroundYPosition): Same.
1296         * rendering/RenderBlock.cpp:
1297         (WebCore::RenderBlock::repaintFloatingDescendants): Nil check 
1298         m_floatingObjects and add an assertion. This is not necessary for 
1299         the fix, it is just because we are not sure that it is safe not to 
1300         nil-check, and we want to prevent potential problems in release 
1301         builds, and catch them with the assertion in debug builds.
1302         (WebCore::RenderBlock::addOverhangingFloats): Same as above.
1303
1304 2006-03-28  Alexey Proskuryakov  <ap@nypop.com>
1305
1306         Reviewed by Maciej.
1307
1308         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=4616
1309           Setting nodeValue on a textnode with collapsed whitespace only has no visual effect
1310
1311         Test: fast/dom/space-to-text.html
1312
1313         * dom/CharacterData.cpp:
1314         (WebCore::CharacterData::setData): Create a renderer if it's needed, but missing.
1315         (WebCore::CharacterData::appendData): Ditto.
1316         (WebCore::CharacterData::insertData): Ditto.
1317         (WebCore::CharacterData::replaceData): Ditto.
1318
1319 2006-03-28  Tim Omernick  <timo@apple.com>
1320
1321         Reviewed by Maciej.
1322
1323         <rdar://problem/4454976> repro crash in -[NSTextView(NSSharing) setSelectedRanges:affinity:stillSelecting:] when navigating
1324         to another page while selecting inside textarea inside iframe
1325
1326         * kwq/WebCoreTextArea.mm:
1327         (-[WebCoreTextArea mouseDown:]):
1328         Guard super's -mouseDown: with calls to Widget::beforeMouseDown() and Widget::afterMouseDown().
1329         Other widgets do this to protect against being removed from the page and deallocated while handling
1330         mouse down events.
1331         (-[WebCoreTextView mouseDown:]):
1332         ditto
1333
1334         * manual-tests/textarea-iframe-navigation.html: Added.
1335         * manual-tests/textarea-iframe-navigation2.html: Added.
1336         Manual test case for this fix.
1337
1338 2006-03-28  Eric Seidel  <eseidel@apple.com>
1339
1340         Reviewed by darin.
1341
1342         <rdar://problem/4402170> CrashTracer: 499 crashes in Safari at com.apple.WebCore: DOM::DocumentImpl::open + 16
1343
1344         * dom/Document.cpp:
1345         (WebCore::Document::write): Fix unreproducible infinite recursion.
1346
1347 2006-03-28  Eric Seidel  <eseidel@apple.com>
1348
1349         Reviewed by darin.
1350
1351         Remove global initializers.
1352
1353         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1354         * ksvg2/svg/SVGAngle.cpp:
1355         * ksvg2/svg/SVGColor.cpp:
1356         * ksvg2/svg/SVGLength.cpp:
1357
1358 2006-03-28  Eric Seidel  <eseidel@apple.com>
1359
1360         Reviewed by darin.
1361
1362         Switch UIEvent, MouseEvent and KeyboardEvent over to
1363         be new auto-generated bindings.
1364         http://bugzilla.opendarwin.org/show_bug.cgi?id=7928
1365
1366         Updated test: fast/dom/prototype-chain.html
1367
1368         * WebCore.xcodeproj/project.pbxproj:
1369         * bindings/objc/DOMEvents.mm:
1370         (-[DOMEvent ::]):
1371         (-[DOMMouseEvent initMouseEvent:::::::::::::::]):
1372         * bindings/scripts/CodeGeneratorJS.pm:
1373         * dom/EventTargetNode.cpp:
1374         (WebCore::EventTargetNode::dispatchMouseEvent):
1375         * dom/KeyboardEvent.idl: Added.
1376         * dom/MouseEvent.idl: Added.
1377         * dom/UIEvent.idl: Added.
1378         * dom/WheelEvent.idl:
1379         * dom/dom2_eventsimpl.cpp:
1380         (WebCore::MouseEvent::MouseEvent):
1381         (WebCore::MouseEvent::initMouseEvent):
1382         * dom/dom2_eventsimpl.h:
1383         (WebCore::MouseEvent::relatedTarget):
1384         (WebCore::MouseEvent::clipboard):
1385         * generate-derived-sources:
1386         * khtml/ecma/kjs_dom.cpp:
1387         (KJS::toEventTargetNode):
1388         * khtml/ecma/kjs_dom.h:
1389         * khtml/ecma/kjs_events.cpp:
1390         (KJS::toJS):
1391         * khtml/ecma/kjs_events.h:
1392
1393 2006-03-28  Darin Adler  <darin@apple.com>
1394
1395         Reviewed by Eric.
1396
1397         - replace getDocument with document in a few places that Geoff missed
1398
1399         * WebCore.xcodeproj/project.pbxproj:
1400         * dom/Attr.cpp:
1401         (WebCore::Attr::createTextChild):
1402         (WebCore::Attr::setValue):
1403         (WebCore::Attr::cloneNode):
1404         * dom/Attribute.cpp:
1405         (WebCore::Attribute::createAttrIfNeeded):
1406         * dom/Element.cpp:
1407         (WebCore::Element::cloneNode):
1408         (WebCore::inHTMLDocument):
1409         (WebCore::Element::setAttribute):
1410         (WebCore::Element::setAttributeMap):
1411         (WebCore::Element::createStyleForRenderer):
1412         (WebCore::Element::createRenderer):
1413         (WebCore::Element::recalcStyle):
1414         (WebCore::Element::dispatchAttrRemovalEvent):
1415         (WebCore::Element::dispatchAttrAdditionEvent):
1416         (WebCore::Element::updateId):
1417         (WebCore::Element::removeAttributeNode):
1418         (WebCore::Element::focus):
1419         (WebCore::Element::blur):
1420         * dom/NamedAttrMap.cpp:
1421         (WebCore::inHTMLDocument):
1422         (WebCore::NamedAttrMap::setNamedItem):
1423         * dom/NamedMappedAttrMap.cpp:
1424         (WebCore::NamedMappedAttrMap::parseClassAttribute):
1425         * dom/StyledElement.cpp:
1426         (WebCore::StyledElement::createInlineStyleDecl):
1427         (WebCore::StyledElement::parseMappedAttribute):
1428         (WebCore::StyledElement::createMappedDecl):
1429
1430         - added missing include that seems to be breaking the Windows build
1431
1432         * platform/String.cpp: Include <stdarg.h>.
1433
1434 2006-03-28  Geoffrey Garen  <ggaren@apple.com>
1435
1436         Reviewed by Beth.
1437
1438         - Global replace of getDocument() with document(). Darin suggested this
1439         in his review of my EventTargetNode patch. It matches the style of
1440         methods like ownerDocument().
1441
1442         - Changed getDocument() to document(); changed data member document to
1443         m_document; changed stack variable document to doc.
1444
1445         * bindings/objc/DOM.mm:
1446         (-[DOMNode ownerDocument]):
1447         (-[DOMNode KJS::Bindings::]):
1448         (-[DOMElement _getURLAttribute:]):
1449         * bindings/objc/DOMHTML.mm:
1450         (-[DOMHTMLElement titleDisplayString]):
1451         (-[DOMHTMLInputElement altDisplayString]):
1452         (-[DOMHTMLAnchorElement blur]):
1453         (-[DOMHTMLAnchorElement focus]):
1454         (-[DOMHTMLImageElement altDisplayString]):
1455         (-[DOMHTMLAppletElement altDisplayString]):
1456         (-[DOMHTMLAreaElement altDisplayString]):
1457         * bindings/objc/DOMInternal.mm:
1458         (-[WebScriptObject _initializeScriptDOMNodeImp]):
1459         * bridge/mac/FrameMac.mm:
1460         (WebCore::FrameMac::attributedString):
1461         * bridge/mac/FrameViewMac.mm:
1462         (WebCore::FrameView::updateDashboardRegions):
1463         * bridge/mac/WebCoreFrameBridge.mm:
1464         (-[WebCoreFrameBridge initSubframeWithRenderer:]):
1465         (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
1466         (-[WebCoreFrameBridge smartDeleteRangeForProposedRange:]):
1467         * css/CSSComputedStyleDeclaration.cpp:
1468         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1469         * css/css_base.cpp:
1470         (WebCore::StyleBase::baseURL):
1471         * css/css_stylesheetimpl.cpp:
1472         (WebCore::CSSStyleSheet::CSSStyleSheet):
1473         * css/cssstyleselector.cpp:
1474         (WebCore::CSSStyleSelector::initForStyleResolve):
1475         (WebCore::CSSStyleSelector::canShareStyleWithElement):
1476         (WebCore::CSSStyleSelector::locateSharedStyle):
1477         (WebCore::CSSStyleSelector::createStyleForElement):
1478         (WebCore::CSSStyleSelector::createPseudoStyleForElement):
1479         (WebCore::CSSStyleSelector::adjustRenderStyle):
1480         (WebCore::CSSStyleSelector::styleRulesForElement):
1481         (WebCore::CSSStyleSelector::checkOneSelector):
1482         (WebCore::CSSStyleSelector::applyProperty):
1483         (WebCore::CSSStyleSelector::mapBackgroundImage):
1484         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
1485         * dom/AbstractView.cpp:
1486         (WebCore::AbstractView::AbstractView):
1487         * dom/CDATASection.cpp:
1488         (WebCore::CDATASection::cloneNode):
1489         (WebCore::CDATASection::createNew):
1490         * dom/CharacterData.cpp:
1491         (WebCore::CharacterData::setData):
1492         (WebCore::CharacterData::insertData):
1493         (WebCore::CharacterData::deleteData):
1494         (WebCore::CharacterData::replaceData):
1495         (WebCore::CharacterData::dispatchModifiedEvent):
1496         * dom/Comment.cpp:
1497         (WebCore::Comment::cloneNode):
1498         * dom/ContainerNode.cpp:
1499         (WebCore::ContainerNode::insertBefore):
1500         (WebCore::ContainerNode::replaceChild):
1501         (WebCore::ContainerNode::removeChild):
1502         (WebCore::ContainerNode::appendChild):
1503         (WebCore::ContainerNode::addChild):
1504         (WebCore::ContainerNode::getUpperLeftCorner):
1505         (WebCore::dispatchChildInsertionEvents):
1506         (WebCore::dispatchChildRemovalEvents):
1507         * dom/DOMImplementation.cpp:
1508         (WebCore::DOMImplementation::createDocument):
1509         * dom/Document.cpp:
1510         (WebCore::Document::Document):
1511         (WebCore::Document::~Document):
1512         (WebCore::Document::createDocumentFragment):
1513         (WebCore::Document::adoptNode):
1514         (WebCore::Document::createElementNS):
1515         (WebCore::Document::nodeAbsIndex):
1516         (WebCore::Document::setFocusNode):
1517         (WebCore::Document::topDocument):
1518         * dom/DocumentFragment.cpp:
1519         (WebCore::DocumentFragment::cloneNode):
1520         * dom/EventTargetNode.cpp:
1521         (WebCore::EventTargetNode::~EventTargetNode):
1522         (WebCore::EventTargetNode::insertedIntoDocument):
1523         (WebCore::EventTargetNode::removedFromDocument):
1524         (WebCore::EventTargetNode::addEventListener):
1525         (WebCore::EventTargetNode::removeEventListener):
1526         (WebCore::EventTargetNode::dispatchGenericEvent):
1527         (WebCore::EventTargetNode::dispatchEvent):
1528         (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
1529         (WebCore::EventTargetNode::dispatchWindowEvent):
1530         (WebCore::EventTargetNode::dispatchUIEvent):
1531         (WebCore::EventTargetNode::dispatchKeyEvent):
1532         (WebCore::EventTargetNode::dispatchMouseEvent):
1533         (WebCore::EventTargetNode::dispatchWheelEvent):
1534         (WebCore::EventTargetNode::removeHTMLEventListener):
1535         * dom/Node.cpp:
1536         (WebCore::Node::Node):
1537         (WebCore::Node::setDocument):
1538         (WebCore::Node::setChanged):
1539         (WebCore::Node::checkSetPrefix):
1540         (WebCore::Node::checkAddChild):
1541         (WebCore::Node::attach):
1542         (WebCore::Node::detach):
1543         (WebCore::Node::createRendererIfNeeded):
1544         (WebCore::Node::rendererIsNeeded):
1545         (WebCore::Node::getElementsByTagNameNS):
1546         (WebCore::Node::ownerDocument):
1547         (WebCore::Node::setTextContent):
1548         * dom/Node.h:
1549         (WebCore::Node::document):
1550         (WebCore::Node::inDocument):
1551         * dom/NodeList.cpp:
1552         (WebCore::NodeList::itemById):
1553         * dom/Position.cpp:
1554         (WebCore::Position::documentElement):
1555         * dom/Range.cpp:
1556         (WebCore::Range::commonAncestorContainer):
1557         (WebCore::Range::setStart):
1558         (WebCore::Range::setEnd):
1559         (WebCore::Range::compareBoundaryPoints):
1560         (WebCore::Range::insertNode):
1561         (WebCore::Range::text):
1562         (WebCore::Range::setStartAfter):
1563         (WebCore::Range::setEndBefore):
1564         (WebCore::Range::setEndAfter):
1565         (WebCore::Range::surroundContents):
1566         (WebCore::Range::setStartBefore):
1567         (WebCore::rangeOfContents):
1568         * dom/Text.cpp:
1569         (WebCore::Text::cloneNode):
1570         (WebCore::Text::createNew):
1571         * dom/dom2_eventsimpl.cpp:
1572         (WebCore::MouseRelatedEvent::receivedTarget):
1573         * dom/dom2_traversalimpl.cpp:
1574         (WebCore::NodeIterator::NodeIterator):
1575         * dom/dom_elementimpl.cpp:
1576         (WebCore::Attribute::createAttrIfNeeded):
1577         (WebCore::Attr::createTextChild):
1578         (WebCore::Attr::setValue):
1579         (WebCore::Attr::cloneNode):
1580         (WebCore::Element::cloneNode):
1581         (WebCore::inHTMLDocument):
1582         (WebCore::Element::setAttribute):
1583         (WebCore::Element::setAttributeMap):
1584         (WebCore::Element::createStyleForRenderer):
1585         (WebCore::Element::createRenderer):
1586         (WebCore::Element::recalcStyle):
1587         (WebCore::Element::dispatchAttrRemovalEvent):
1588         (WebCore::Element::dispatchAttrAdditionEvent):
1589         (WebCore::Element::updateId):
1590         (WebCore::Element::removeAttributeNode):
1591         (WebCore::Element::focus):
1592         (WebCore::Element::blur):
1593         (WebCore::NamedAttrMap::setNamedItem):
1594         (WebCore::NamedMappedAttrMap::parseClassAttribute):
1595         (WebCore::StyledElement::createInlineStyleDecl):
1596         (WebCore::StyledElement::parseMappedAttribute):
1597         (WebCore::StyledElement::createMappedDecl):
1598         * dom/dom_xmlimpl.cpp:
1599         (WebCore::EntityReference::cloneNode):
1600         (WebCore::ProcessingInstruction::cloneNode):
1601         (WebCore::ProcessingInstruction::checkStyleSheet):
1602         (WebCore::ProcessingInstruction::sheetLoaded):
1603         (WebCore::ProcessingInstruction::setStyleSheet):
1604         * dom/xml_tokenizer.cpp:
1605         (WebCore::XMLTokenizer::XMLTokenizer):
1606         * editing/ReplaceSelectionCommand.cpp:
1607         (WebCore::ReplacementFragment::ReplacementFragment):
1608         (WebCore::ReplaceSelectionCommand::fixupNodeStyles):
1609         (WebCore::styleForNode):
1610         * editing/Selection.cpp:
1611         (WebCore::Selection::toRange):
1612         * editing/SelectionController.cpp:
1613         (WebCore::SelectionController::~SelectionController):
1614         (WebCore::SelectionController::setSelection):
1615         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
1616         (WebCore::SelectionController::frame):
1617         (WebCore::SelectionController::layout):
1618         (WebCore::SelectionController::needsCaretRepaint):
1619         * editing/TextIterator.cpp:
1620         (WebCore::TextIterator::range):
1621         (WebCore::SimplifiedBackwardsTextIterator::range):
1622         * editing/VisiblePosition.cpp:
1623         (WebCore::VisiblePosition::init):
1624         (WebCore::makeRange):
1625         * editing/markup.cpp:
1626         (WebCore::startMarkup):
1627         (WebCore::shouldSelfClose):
1628         (WebCore::markup):
1629         (WebCore::createMarkup):
1630         * editing/visible_units.cpp:
1631         (WebCore::previousBoundary):
1632         (WebCore::nextBoundary):
1633         (WebCore::previousLinePosition):
1634         (WebCore::nextLinePosition):
1635         (WebCore::inSameDocument):
1636         * html/HTMLCollection.cpp:
1637         (WebCore::HTMLCollection::HTMLCollection):
1638         (WebCore::HTMLCollection::resetCollectionInfo):
1639         * html/HTMLElement.cpp:
1640         (WebCore::HTMLElement::nodeName):
1641         (WebCore::HTMLElement::cloneNode):
1642         (WebCore::HTMLElement::innerText):
1643         (WebCore::HTMLElement::createContextualFragment):
1644         (WebCore::HTMLElement::setInnerText):
1645         (WebCore::HTMLElement::setOuterText):
1646         (WebCore::HTMLElement::isContentEditable):
1647         (WebCore::HTMLElement::contentEditable):
1648         (WebCore::HTMLElement::toString):
1649         (WebCore::HTMLElement::childAllowed):
1650         (WebCore::HTMLElement::setHTMLEventListener):
1651         * html/HTMLFormElement.cpp:
1652         (WebCore::HTMLFormElement::formWouldHaveSecureSubmission):
1653         (WebCore::HTMLFormElement::attach):
1654         (WebCore::HTMLFormElement::insertedIntoDocument):
1655         (WebCore::HTMLFormElement::removedFromDocument):
1656         (WebCore::HTMLFormElement::formData):
1657         (WebCore::HTMLFormElement::prepareSubmit):
1658         (WebCore::HTMLFormElement::submit):
1659         (WebCore::HTMLFormElement::reset):
1660         (WebCore::HTMLFormElement::parseMappedAttribute):
1661         (WebCore::HTMLFormElement::registerFormElement):
1662         (WebCore::HTMLFormElement::removeFormElement):
1663         * html/HTMLGenericFormElement.cpp:
1664         (WebCore::HTMLGenericFormElement::attach):
1665         (WebCore::HTMLGenericFormElement::insertedIntoTree):
1666         (WebCore::HTMLGenericFormElement::isKeyboardFocusable):
1667         * html/HTMLInputElement.cpp:
1668         (WebCore::HTMLInputElement::~HTMLInputElement):
1669         (WebCore::HTMLInputElement::isKeyboardFocusable):
1670         (WebCore::HTMLInputElement::focus):
1671         (WebCore::HTMLInputElement::setInputType):
1672         (WebCore::HTMLInputElement::parseMappedAttribute):
1673         (WebCore::HTMLInputElement::attach):
1674         (WebCore::HTMLInputElement::setChecked):
1675         (WebCore::HTMLInputElement::preDispatchEventHandler):
1676         (WebCore::HTMLInputElement::defaultEventHandler):
1677         (WebCore::HTMLInputElement::src):
1678         * html/HTMLKeygenElement.cpp:
1679         (WebCore::HTMLKeygenElement::appendFormData):
1680         * html/HTMLLabelElement.cpp:
1681         (WebCore::HTMLLabelElement::formElement):
1682         * html/HTMLOptionElement.cpp:
1683         (WebCore::HTMLOptionElement::text):
1684         (WebCore::HTMLOptionElement::setText):
1685         * html/HTMLParser.cpp:
1686         (WebCore::HTMLParser::HTMLParser):
1687         * html/HTMLSelectElement.cpp:
1688         (WebCore::HTMLSelectElement::~HTMLSelectElement):
1689         * html/HTMLTextAreaElement.cpp:
1690         (WebCore::HTMLTextAreaElement::~HTMLTextAreaElement):
1691         (WebCore::HTMLTextAreaElement::setDefaultValue):
1692         * html/HTMLTokenizer.cpp:
1693         (WebCore::HTMLTokenizer::HTMLTokenizer):
1694         * html/html_baseimpl.cpp:
1695         (WebCore::HTMLBodyElement::createLinkDecl):
1696         (WebCore::HTMLBodyElement::mapToEntry):
1697         (WebCore::HTMLBodyElement::parseMappedAttribute):
1698         (WebCore::HTMLBodyElement::insertedIntoDocument):
1699         (WebCore::HTMLFrameElement::isURLAllowed):
1700         (WebCore::HTMLFrameElement::openURL):
1701         (WebCore::HTMLFrameElement::attach):
1702         (WebCore::HTMLFrameElement::close):
1703         (WebCore::HTMLFrameElement::contentFrame):
1704         (WebCore::HTMLFrameElement::frameWidth):
1705         (WebCore::HTMLFrameElement::frameHeight):
1706         (WebCore::HTMLFrameSetElement::parseMappedAttribute):
1707         (WebCore::HTMLIFrameElement::parseMappedAttribute):
1708         (WebCore::HTMLIFrameElement::insertedIntoDocument):
1709         (WebCore::HTMLIFrameElement::removedFromDocument):
1710         (WebCore::HTMLIFrameElement::attach):
1711         (WebCore::HTMLIFrameElement::src):
1712         * html/html_blockimpl.cpp:
1713         (WebCore::HTMLParagraphElement::checkDTD):
1714         * html/html_headimpl.cpp:
1715         (WebCore::HTMLBaseElement::removedFromDocument):
1716         (WebCore::HTMLBaseElement::process):
1717         (WebCore::HTMLLinkElement::setDisabledState):
1718         (WebCore::HTMLLinkElement::parseMappedAttribute):
1719         (WebCore::HTMLLinkElement::process):
1720         (WebCore::HTMLLinkElement::setStyleSheet):
1721         (WebCore::HTMLLinkElement::sheetLoaded):
1722         (WebCore::HTMLLinkElement::href):
1723         (WebCore::HTMLMetaElement::process):
1724         (WebCore::HTMLScriptElement::childrenChanged):
1725         (WebCore::HTMLScriptElement::parseMappedAttribute):
1726         (WebCore::HTMLScriptElement::insertedIntoDocument):
1727         (WebCore::HTMLScriptElement::evaluateScript):
1728         (WebCore::HTMLScriptElement::setText):
1729         (WebCore::HTMLScriptElement::src):
1730         (WebCore::HTMLStyleElement::insertedIntoDocument):
1731         (WebCore::HTMLStyleElement::removedFromDocument):
1732         (WebCore::HTMLStyleElement::childrenChanged):
1733         (WebCore::HTMLStyleElement::sheetLoaded):
1734         (WebCore::HTMLTitleElement::insertedIntoDocument):
1735         (WebCore::HTMLTitleElement::removedFromDocument):
1736         (WebCore::HTMLTitleElement::childrenChanged):
1737         (WebCore::HTMLTitleElement::setText):
1738         * html/html_imageimpl.cpp:
1739         (WebCore::HTMLImageLoader::~HTMLImageLoader):
1740         (WebCore::HTMLImageLoader::updateFromElement):
1741         (WebCore::HTMLImageLoader::notifyFinished):
1742         (WebCore::HTMLImageElement::parseMappedAttribute):
1743         (WebCore::HTMLImageElement::insertedIntoDocument):
1744         (WebCore::HTMLImageElement::removedFromDocument):
1745         (WebCore::HTMLImageElement::width):
1746         (WebCore::HTMLImageElement::height):
1747         (WebCore::HTMLImageElement::src):
1748         (WebCore::HTMLMapElement::~HTMLMapElement):
1749         (WebCore::HTMLMapElement::parseMappedAttribute):
1750         (WebCore::HTMLAreaElement::href):
1751         * html/html_inlineimpl.cpp:
1752         (WebCore::HTMLAnchorElement::isKeyboardFocusable):
1753         (WebCore::HTMLAnchorElement::defaultEventHandler):
1754         (WebCore::HTMLAnchorElement::href):
1755         (WebCore::HTMLAnchorElement::blur):
1756         (WebCore::HTMLAnchorElement::focus):
1757         * html/html_objectimpl.cpp:
1758         (WebCore::HTMLAppletElement::parseMappedAttribute):
1759         (WebCore::HTMLAppletElement::insertedIntoDocument):
1760         (WebCore::HTMLAppletElement::removedFromDocument):
1761         (WebCore::HTMLAppletElement::createRenderer):
1762         (WebCore::HTMLAppletElement::getAppletInstance):
1763         (WebCore::HTMLEmbedElement::getEmbedInstance):
1764         (WebCore::HTMLEmbedElement::parseMappedAttribute):
1765         (WebCore::HTMLEmbedElement::rendererIsNeeded):
1766         (WebCore::HTMLEmbedElement::insertedIntoDocument):
1767         (WebCore::HTMLEmbedElement::removedFromDocument):
1768         (WebCore::HTMLObjectElement::getObjectInstance):
1769         (WebCore::HTMLObjectElement::parseMappedAttribute):
1770         (WebCore::HTMLObjectElement::rendererIsNeeded):
1771         (WebCore::HTMLObjectElement::insertedIntoDocument):
1772         (WebCore::HTMLObjectElement::removedFromDocument):
1773         (WebCore::HTMLObjectElement::updateDocNamedItem):
1774         (WebCore::HTMLParamElement::parseMappedAttribute):
1775         * html/html_tableimpl.cpp:
1776         (WebCore::HTMLTableElement::createTHead):
1777         (WebCore::HTMLTableElement::createTFoot):
1778         (WebCore::HTMLTableElement::createCaption):
1779         (WebCore::HTMLTableElement::insertRow):
1780         (WebCore::HTMLTableElement::addChild):
1781         (WebCore::HTMLTableElement::mapToEntry):
1782         (WebCore::HTMLTableElement::parseMappedAttribute):
1783         (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
1784         (WebCore::HTMLTableElement::getSharedCellDecl):
1785         (WebCore::HTMLTablePartElement::mapToEntry):
1786         (WebCore::HTMLTablePartElement::parseMappedAttribute):
1787         (WebCore::HTMLTableSectionElement::insertRow):
1788         (WebCore::HTMLTableRowElement::insertCell):
1789         * khtml/ecma/kjs_dom.cpp:
1790         (KJS::DOMNode::~DOMNode):
1791         (KJS::DOMNode::mark):
1792         (KJS::DOMElement::getValueProperty):
1793         (KJS::DOMElementProtoFunc::callAsFunction):
1794         (KJS::checkNodeSecurity):
1795         (KJS::toJS):
1796         * khtml/ecma/kjs_html.cpp:
1797         (KJS::JSHTMLElement::implementsCall):
1798         (KJS::JSHTMLElement::bodyGetter):
1799         (KJS::JSHTMLElement::anchorGetter):
1800         (KJS::JSHTMLElement::getValueProperty):
1801         (KJS::JSHTMLElement::bodySetter):
1802         * khtml/ecma/kjs_traversal.cpp:
1803         (KJS::JSNodeFilterCondition::acceptNode):
1804         * khtml/ecma/kjs_views.cpp:
1805         (KJS::DOMAbstractViewProtoFunc::callAsFunction):
1806         * khtml/xbl/xbl_binding.cpp:
1807         (XBL::XBLBindingChain::failed):
1808         (XBL::m_nextBinding):
1809         (XBL::XBLBinding::setXBLDocument):
1810         * khtml/xbl/xbl_protobinding.cpp:
1811         (XBL::XBLPrototypeBinding::document):
1812         * khtml/xsl/XSLStyleSheet.cpp:
1813         (WebCore::XSLStyleSheet::XSLStyleSheet):
1814         * khtml/xsl/XSLTProcessor.cpp:
1815         (WebCore::XSLTProcessor::createDocumentFromSource):
1816         (WebCore::xmlDocPtrFromNode):
1817         (WebCore::XSLTProcessor::transformToString):
1818         * ksvg2/svg/SVGAElement.cpp:
1819         (SVGAElement::defaultEventHandler):
1820         * ksvg2/svg/SVGAnimateColorElement.cpp:
1821         (SVGAnimateColorElement::handleTimerEvent):
1822         * ksvg2/svg/SVGAnimateElement.cpp:
1823         (SVGAnimateElement::handleTimerEvent):
1824         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1825         (SVGAnimateTransformElement::handleTimerEvent):
1826         * ksvg2/svg/SVGAnimationElement.cpp:
1827         (SVGAnimationElement::closeRenderer):
1828         * ksvg2/svg/SVGClipPathElement.cpp:
1829         (SVGClipPathElement::canvasResource):
1830         * ksvg2/svg/SVGElement.cpp:
1831         (WebCore::SVGElement::addSVGEventListener):
1832         * ksvg2/svg/SVGGradientElement.cpp:
1833         (SVGGradientElement::rebuildStops):
1834         * ksvg2/svg/SVGHelper.cpp:
1835         (SVGHelper::PercentageOfViewport):
1836         * ksvg2/svg/SVGLinearGradientElement.cpp:
1837         (SVGLinearGradientElement::buildGradient):
1838         * ksvg2/svg/SVGPatternElement.cpp:
1839         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1840         * ksvg2/svg/SVGRadialGradientElement.cpp:
1841         (WebCore::SVGRadialGradientElement::buildGradient):
1842         * ksvg2/svg/SVGSVGElement.cpp:
1843         (WebCore::SVGSVGElement::setCurrentScale):
1844         (WebCore::SVGSVGElement::addSVGWindowEventListner):
1845         * ksvg2/svg/SVGSetElement.cpp:
1846         (SVGSetElement::handleTimerEvent):
1847         * ksvg2/svg/SVGStyleElement.cpp:
1848         (SVGStyleElement::childrenChanged):
1849         * ksvg2/svg/SVGStyledElement.cpp:
1850         (WebCore::SVGStyledElement::canvas):
1851         * ksvg2/svg/SVGTitleElement.cpp:
1852         (WebCore::SVGTitleElement::closeRenderer):
1853         (WebCore::SVGTitleElement::insertedIntoDocument):
1854         (WebCore::SVGTitleElement::removedFromDocument):
1855         (WebCore::SVGTitleElement::childrenChanged):
1856         * ksvg2/svg/SVGUseElement.cpp:
1857         (SVGUseElement::closeRenderer):
1858         * kwq/WebCoreAXObject.mm:
1859         (-[WebCoreAXObject accessibilityPerformAction:]):
1860         (-[WebCoreAXObject accessibilityAttributeValue:]):
1861         * page/Frame.cpp:
1862         (WebCore::parentFromOwnerRenderer):
1863         (WebCore::Frame::frameForNode):
1864         (WebCore::Frame::clearDocumentFocus):
1865         * page/FrameView.cpp:
1866         (WebCore::FrameView::dispatchMouseEvent):
1867         * rendering/RenderBox.cpp:
1868         (WebCore::RenderBox::setStyle):
1869         * rendering/RenderCanvas.cpp:
1870         (WebCore::RenderCanvas::RenderCanvas):
1871         (WebCore::RenderCanvas::paintBoxDecorations):
1872         (WebCore::RenderCanvas::repaintViewRectangle):
1873         * rendering/RenderImage.cpp:
1874         (WebCore::RenderImage::imageMap):
1875         * rendering/RenderLayer.cpp:
1876         (WebCore::RenderLayer::setHasHorizontalScrollbar):
1877         (WebCore::RenderLayer::setHasVerticalScrollbar):
1878         * rendering/RenderObject.cpp:
1879         (WebCore::RenderObject::createObject):
1880         (WebCore::RenderObject::RenderObject):
1881         (WebCore::RenderObject::isRoot):
1882         (WebCore::RenderObject::backslashAsCurrencySymbol):
1883         * rendering/RenderObject.h:
1884         (WebCore::RenderObject::document):
1885         * rendering/RenderTheme.cpp:
1886         (WebCore::RenderTheme::isFocused):
1887         * rendering/render_applet.cpp:
1888         (WebCore::RenderApplet::createWidgetIfNecessary):
1889         * rendering/render_replaced.cpp:
1890         (WebCore::RenderWidget::RenderWidget):
1891         (WebCore::RenderWidget::focusIn):
1892         (WebCore::RenderWidget::focusOut):
1893
1894 2006-03-28  Darin Adler  <darin@apple.com>
1895
1896         Reviewed by Geoff.
1897
1898         - added a build step that checks for init routines
1899
1900         * WebCore.xcodeproj/project.pbxproj: Deleted now-unused custom build rule that
1901         was replaced by the generate-derived-sources script a while back. Added a custom
1902         build phase that invokes the check-for-global-initializers script.
1903
1904 2006-03-28  Timothy Hatcher  <timothy@apple.com>
1905
1906         Reviewed by Maciej.
1907
1908         Moved the derived sources script to an agregate target. Fixes internal builds.
1909
1910         * WebCore.xcodeproj/project.pbxproj:
1911         * generate-derived-sources: was missing a use of $CREATE_HASH_TABLE
1912
1913 2006-03-28  Eric Seidel  <eseidel@apple.com>
1914
1915         Reviewed by hyatt.
1916         
1917         Build fix.
1918
1919         * dom/xml_tokenizer.cpp:
1920         (WebCore::XMLTokenizer::error):
1921
1922 2006-03-28  Michael Emmel  <mike.emmel@gmail.com>
1923
1924         Reviewed, tweaked, landed by Darin.
1925
1926         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8023
1927           Attribute.h missing class predeclaration
1928
1929         * dom/Attribute.h: Add declarations for classes so that the friend
1930         declaration is not the only one. There's an issue with either an earlier
1931         or later version of gcc, which is why we see this only on certain platforms.
1932
1933         * dom/Attr.cpp:
1934         (WebCore::Attr::Attr):
1935         (WebCore::Attr::~Attr):
1936         * dom/NamedAttrMap.cpp:
1937         (WebCore::NamedAttrMap::clearAttributes):
1938         (WebCore::NamedAttrMap::addAttribute):
1939         (WebCore::NamedAttrMap::removeAttribute):
1940         Change places where practical to use attr() instead of m_impl in the vain
1941         hope of removing the need for the friend declarations.
1942
1943 2006-03-27  Eric Seidel  <eseidel@apple.com>
1944
1945         Reviewed by darin.
1946
1947         Replace more DeprecatedString with String.
1948         Add String::sprintf() and String::number()
1949         http://bugzilla.opendarwin.org/show_bug.cgi?id=8009
1950
1951         * bindings/objc/DOMHTML.mm:
1952         (-[DOMHTMLTextAreaElement setCols:]):
1953         (-[DOMHTMLTextAreaElement setRows:]):
1954         (-[DOMHTMLOListElement setStart:]):
1955         (-[DOMHTMLPreElement setWidth:]):
1956         (-[DOMHTMLImageElement setHeight:]):
1957         (-[DOMHTMLImageElement setHspace:]):
1958         (-[DOMHTMLImageElement setVspace:]):
1959         (-[DOMHTMLImageElement setWidth:]):
1960         (-[DOMHTMLObjectElement setHspace:]):
1961         (-[DOMHTMLObjectElement setTabIndex:]):
1962         (-[DOMHTMLObjectElement setVspace:]):
1963         (-[DOMHTMLAppletElement setHspace:]):
1964         (-[DOMHTMLAppletElement setVspace:]):
1965         (-[DOMHTMLAreaElement setTabIndex:]):
1966         (-[DOMHTMLTableColElement setSpan:]):
1967         (-[DOMHTMLTableCellElement setColSpan:]):
1968         (-[DOMHTMLTableCellElement setRowSpan:]):
1969         (-[DOMHTMLEmbedElement setHeight:]):
1970         (-[DOMHTMLEmbedElement setWidth:]):
1971         * bindings/objc/DOMInternal.mm:
1972         (String::String):
1973         * css/CSSComputedStyleDeclaration.cpp:
1974         (WebCore::numberAsString):
1975         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1976         * css/css_valueimpl.cpp:
1977         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
1978         (WebCore::CSSPrimitiveValue::cssText):
1979         * dom/Position.cpp:
1980         (WebCore::Position::formatForDebugger):
1981         * dom/Range.cpp:
1982         (WebCore::Range::formatForDebugger):
1983         * dom/StyledElement.cpp:
1984         (WebCore::StyledElement::addCSSColor):
1985         * dom/xml_tokenizer.cpp:
1986         (WebCore::XMLTokenizer::error):
1987         * editing/ApplyStyleCommand.cpp:
1988         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
1989         * html/HTMLGenericFormElement.cpp:
1990         (WebCore::HTMLGenericFormElement::findMatchingState):
1991         (WebCore::HTMLGenericFormElement::setTabIndex):
1992         * html/HTMLInputElement.cpp:
1993         (WebCore::HTMLInputElement::setMaxLength):
1994         (WebCore::HTMLInputElement::setSize):
1995         * html/HTMLSelectElement.cpp:
1996         (WebCore::HTMLSelectElement::setSize):
1997         * html/HTMLTextAreaElement.cpp:
1998         (WebCore::HTMLTextAreaElement::setCols):
1999         (WebCore::HTMLTextAreaElement::setRows):
2000         * html/html_baseimpl.cpp:
2001         (WebCore::HTMLBodyElement::insertedIntoDocument):
2002         * html/html_blockimpl.cpp:
2003         (WebCore::HTMLHRElement::parseMappedAttribute):
2004         (WebCore::HTMLPreElement::setWidth):
2005         * html/html_imageimpl.cpp:
2006         (WebCore::HTMLImageElement::width):
2007         (WebCore::HTMLImageElement::height):
2008         (WebCore::HTMLImageElement::setBorder):
2009         (WebCore::HTMLImageElement::setHeight):
2010         (WebCore::HTMLImageElement::setHspace):
2011         (WebCore::HTMLImageElement::setVspace):
2012         (WebCore::HTMLImageElement::setWidth):
2013         (WebCore::HTMLAreaElement::setTabIndex):
2014         * html/html_inlineimpl.cpp:
2015         (WebCore::HTMLAnchorElement::setTabIndex):
2016         * html/html_listimpl.cpp:
2017         (WebCore::HTMLOListElement::setStart):
2018         (WebCore::HTMLLIElement::setValue):
2019         * html/html_objectimpl.cpp:
2020         (WebCore::HTMLObjectElement::setTabIndex):
2021         * html/html_tableimpl.cpp:
2022         (WebCore::HTMLTableElement::parseMappedAttribute):
2023         (WebCore::HTMLTableCellElement::setColSpan):
2024         (WebCore::HTMLTableCellElement::setRowSpan):
2025         (WebCore::HTMLTableColElement::setSpan):
2026         * khtml/ecma/kjs_window.cpp:
2027         (KJS::Window::isSafeScript):
2028         (KJS::Location::getValueProperty):
2029         * ksvg2/css/SVGCSSParser.cpp:
2030         (WebCore::CSSParser::parseSVGPaint):
2031         (WebCore::CSSParser::parseSVGColor):
2032         * ksvg2/svg/SVGAngle.cpp:
2033         (SVGAngle::setValueAsString):
2034         (SVGAngle::valueAsString):
2035         * ksvg2/svg/SVGAngle.h:
2036         * ksvg2/svg/SVGLength.cpp:
2037         (SVGLength::setValueAsString):
2038         (SVGLength::valueAsString):
2039         * ksvg2/svg/SVGLength.h:
2040         * ksvg2/svg/SVGPathSeg.h:
2041         (WebCore::SVGPathSeg::pathSegTypeAsLetter):
2042         (WebCore::SVGPathSeg::toString):
2043         * ksvg2/svg/SVGPathSegArc.h:
2044         (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
2045         (WebCore::SVGPathSegArcAbs::toString):
2046         (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
2047         (WebCore::SVGPathSegArcRel::toString):
2048         * ksvg2/svg/SVGPathSegClosePath.h:
2049         (WebCore::SVGPathSegClosePath::pathSegTypeAsLetter):
2050         (WebCore::SVGPathSegClosePath::toString):
2051         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
2052         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
2053         (WebCore::SVGPathSegCurvetoCubicAbs::toString):
2054         (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
2055         (WebCore::SVGPathSegCurvetoCubicRel::toString):
2056         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
2057         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
2058         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::toString):
2059         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
2060         (WebCore::SVGPathSegCurvetoCubicSmoothRel::toString):
2061         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
2062         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
2063         (WebCore::SVGPathSegCurvetoQuadraticAbs::toString):
2064         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
2065         (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
2066         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
2067         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
2068         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::toString):
2069         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
2070         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::toString):
2071         * ksvg2/svg/SVGPathSegLineto.h:
2072         (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
2073         (WebCore::SVGPathSegLinetoAbs::toString):
2074         (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
2075         (WebCore::SVGPathSegLinetoRel::toString):
2076         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
2077         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
2078         (WebCore::SVGPathSegLinetoHorizontalAbs::toString):
2079         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
2080         (WebCore::SVGPathSegLinetoHorizontalRel::toString):
2081         * ksvg2/svg/SVGPathSegLinetoVertical.h:
2082         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
2083         (WebCore::SVGPathSegLinetoVerticalAbs::toString):
2084         (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
2085         (WebCore::SVGPathSegLinetoVerticalRel::toString):
2086         * ksvg2/svg/SVGPathSegMoveto.h:
2087         (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
2088         (WebCore::SVGPathSegMovetoAbs::toString):
2089         (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
2090         (WebCore::SVGPathSegMovetoRel::toString):
2091         * ksvg2/svg/SVGPolyElement.cpp:
2092         (SVGPolyElement::notifyAttributeChange):
2093         * ksvg2/svg/SVGStopElement.cpp:
2094         (SVGStopElement::parseMappedAttribute):
2095         * ksvg2/svg/SVGUseElement.cpp:
2096         (SVGUseElement::closeRenderer):
2097         * platform/AtomicString.h:
2098         (WebCore::AtomicString::toInt):
2099         * platform/Color.cpp:
2100         (WebCore::Color::name):
2101         * platform/Color.h:
2102         * platform/PlatformString.h:
2103         * platform/String.cpp:
2104         (WebCore::String::sprintf):
2105         (WebCore::String::number):
2106         * platform/StringImpl.cpp:
2107         (WebCore::StringImpl::StringImpl):
2108         (WebCore::StringImpl::initWithChar):
2109         (WebCore::StringImpl::initWithQChar):
2110         (WebCore::StringImpl::containsOnlyWhitespace):
2111         * platform/mac/KeyEventMac.mm:
2112         (WebCore::keyIdentifierForKeyEvent):
2113         * rendering/render_form.cpp:
2114         (WebCore::RenderSlider::updateFromElement):
2115         (WebCore::RenderSlider::valueChanged):
2116
2117 2006-03-28  Justin Garcia  <justin.garcia@apple.com>
2118
2119         Reviewed by mjs
2120         
2121         <http://bugzilla.opendarwin.org/attachment.cgi?id=7322>
2122         REGRESSION: Select All does not highlight table if it's last in the document
2123         
2124         * rendering/RenderCanvas.cpp:
2125         (WebCore::rendererAfterPosition): 
2126         Added, returns the render object that a pre-order traversal over a range 
2127         of render objects ending at the input position should stop at.
2128         (WebCore::RenderCanvas::selectionRect): 
2129         Stop at rendererAfterPosition(m_selectionEnd, m_selectionEndPos), moved code 
2130         for traversal to nextInPreOrder. Also, the travesal doesn't need to fetch the
2131         next object before doing work, since the work it does will never change what 
2132         the next object in the traversal will be.
2133         (WebCore::RenderCanvas::setSelection): Ditto.
2134         * rendering/RenderObject.cpp:
2135         (WebCore::RenderObject::nextInPreOrder): Renamed from nextRenderer, cleaned up the logic a little.
2136         (WebCore::RenderObject::nextInPreOrderAfterChildren): Added.
2137         (WebCore::RenderObject::previousInPreOrder): Renamed from previousRenderer.
2138         (WebCore::RenderObject::childAt): Added.
2139         * rendering/RenderObject.h:
2140         * rendering/RenderText.cpp:
2141         (WebCore::RenderText::setText):
2142
2143 2006-03-28  Maciej Stachowiak  <mjs@apple.com>
2144
2145         Reviewed by Justin.
2146         
2147         - fixed <rdar://problem/4483851> REGRESSION: parse mode gets set to strict after going back from non-HTML content (7102)
2148
2149         Reshuffled things to arrange for m_doc to be cleared somewhat earlier than before.
2150         
2151         * page/Frame.cpp:
2152         (WebCore::Frame::didOpenURL):
2153         (WebCore::Frame::receivedFirstData):
2154         (WebCore::Frame::begin):
2155         (WebCore::Frame::endIfNotLoading): 
2156         * manual-tests/accidental-strict-mode.html: Added. I don't think an
2157         automated test is possible.
2158
2159 2006-03-28  Eric Seidel  <eseidel@apple.com>
2160
2161         Reviewed by mjs.
2162
2163         Convert a couple DeprecatedPtrList<T> to Vector<T*> and HashSet<T*>
2164
2165         * bridge/mac/FrameMac.h:
2166         * bridge/mac/FrameMac.mm:
2167         (WebCore::regExpForLabels):
2168         (WebCore::FrameMac::addPluginRootObject):
2169         (WebCore::FrameMac::cleanupPluginRootObjects):
2170         * loader/Cache.cpp:
2171         (WebCore::Cache::init):
2172         (WebCore::Cache::clear):
2173         (WebCore::Cache::remove):
2174         * loader/Cache.h:
2175         * loader/DocLoader.cpp:
2176         (WebCore::DocLoader::DocLoader):
2177         (WebCore::DocLoader::~DocLoader):
2178
2179 2006-03-27  Eric Seidel  <eseidel@apple.com>
2180
2181         Reviewed by mjs.
2182
2183         Give StringImpl a little privacy.
2184         http://bugzilla.opendarwin.org/show_bug.cgi?id=8022
2185
2186         * dom/CharacterData.cpp:
2187         (WebCore::CharacterData::length):
2188         (WebCore::CharacterData::appendData):
2189         (WebCore::CharacterData::replaceData):
2190         (WebCore::CharacterData::checkCharDataOperation):
2191         (WebCore::CharacterData::rendererIsNeeded):
2192         * dom/Range.cpp:
2193         (WebCore::Range::compareBoundaryPoints):
2194         * dom/Text.cpp:
2195         (WebCore::Text::splitText):
2196         * html/HTMLTokenizer.cpp:
2197         (WebCore::HTMLTokenizer::processToken):
2198         * platform/AtomicString.cpp:
2199         (WebCore::operator==):
2200         * platform/String.cpp:
2201         (WebCore::String::operator[]):
2202         (WebCore::String::length):
2203         (WebCore::String::percentage):
2204         (WebCore::String::unicode):
2205         (WebCore::String::deprecatedString):
2206         (WebCore::String::isEmpty):
2207         * platform/StringImpl.cpp:
2208         (WebCore::equal):
2209         (WebCore::equalIgnoringCase):
2210         * platform/StringImpl.h:
2211         * rendering/InlineTextBox.cpp:
2212         (WebCore::InlineTextBox::selectionRect):
2213         (WebCore::InlineTextBox::paint):
2214         (WebCore::InlineTextBox::paintSelection):
2215         (WebCore::InlineTextBox::paintMarkedTextBackground):
2216         (WebCore::InlineTextBox::paintTextMatchMarker):
2217         (WebCore::InlineTextBox::offsetForPosition):
2218         (WebCore::InlineTextBox::positionForOffset):
2219         * rendering/RenderText.cpp:
2220         (WebCore::RenderText::widthFromCache):
2221         (WebCore::RenderText::calcMinMaxWidth):
2222         (WebCore::RenderText::width):
2223
2224 2006-03-27  Maciej Stachowiak  <mjs@apple.com>
2225
2226         Reviewed by Beth.
2227
2228         - fixed <rdar://problem/4279765> REGRESSION: "More..." links on flickr groups pages have hover issues (flickr.com)
2229
2230         * rendering/RenderBlock.cpp:
2231         (WebCore::RenderBlock::floatRect): Rewrote in terms of rects, and made it consider child floatRects
2232         as well as their overflowRects.
2233         * platform/IntRect.h:
2234         (WebCore::unionRect): useful helper
2235         * platform/FloatRect.h:
2236         (WebCore::unionRect): added same for FloatRect just because
2237
2238 2006-03-27  Darin Adler  <darin@apple.com>
2239
2240         Based on a patch by Michael Emmel <mike.emmel@gmail.com>.
2241
2242         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8012
2243           TransferJob.cpp includes non-existent "String.h" (capital S)
2244
2245         * platform/TransferJob.cpp: Remove unneeded include of "String.h".
2246
2247 2006-03-27  David Harrison  <harrison@apple.com>
2248
2249         Reviewed by Darin.
2250
2251         <rdar://problem/4427002> REGRESSION: VoiceOver doesn't read heading level text in Safari (Range selectNodeContents broken)
2252
2253         Better fix than previous checkin, since maxDeepOffset is really an editing hack.
2254
2255         * editing/selection/selectNodeContents-textNode.html: Added.
2256
2257         * dom/Range.cpp:
2258         (WebCore::Range::selectNodeContents):
2259         Use maxOffset if offsetInCharacters, otherwise use childNodeCount.
2260
2261 2006-03-27  Darin Adler  <darin@apple.com>
2262
2263         Based on a patch by Michael Emmel <mike.emmel@gmail.com>.
2264
2265         - fix compilation for Linux
2266           http://bugzilla.opendarwin.org/show_bug.cgi?id=8013
2267
2268         * rendering/render_style.h: Add declaration of CSSStyleSelector. Also tweaked
2269         formatting a bit and removed some extraneous WebCore:: prefixes.
2270
2271 2006-03-27  John Sullivan  <sullivan@apple.com>
2272
2273         Reviewed by Darin Adler and Tim Omernick
2274         
2275         - fixed <rdar://problem/4406505> REGRESSION: (japanese text) Clauses is unexpectedly 
2276         confirmed while typing on Safari.
2277
2278         * bindings/objc/DOMHTML.mm:
2279         (-[DOMHTMLInputElement _displayedValue]):
2280         Avoid calling stringValue on the focused NSTextField. This will soon be obsolete, but
2281         for now it fixes this regression.
2282
2283 2006-03-27  Alexander Kellett  <lypanov@kde.org>
2284
2285         Reviewed by darin
2286
2287         Implement the IE extension insertAdjacentElement
2288         http://bugzilla.opendarwin.org/show_bug.cgi?id=6520
2289
2290         * bindings/scripts/CodeGeneratorJS.pm:
2291         * dom/Element.cpp:
2292         (WebCore::ElementImpl::insertAdjacentElement):
2293         * dom/Element.h:
2294         * dom/Element.idl:
2295
2296 2006-03-27  David Harrison  <harrison@apple.com>
2297
2298         Reviewed by Tim Hatcher.
2299
2300         <rdar://problem/4427002> REGRESSION: VoiceOver doesn't read heading level text in Safari (Range selectNodeContents broken)
2301
2302         Range::selectNodeContents() was erroneously using childNodeCount, which is always 0 for text
2303         nodes.  Turns out that [WebCoreAXObject textUnderElement] is the only code that ends up calling
2304         selectNodeContents on a text node.
2305
2306         Test cases added: None.  Manual AX testing is way too awkward, and automated testing
2307         is not possible.  See following bug...
2308             <rdar://problem/4256882> Need automated testing support for accessibility APIs
2309
2310         * dom/Range.cpp:
2311         (WebCore::Range::selectNodeContents):
2312         Use maxDeepOffset instead of childNodeCount, so that text node content is selected.
2313
2314 2006-03-27  Graham Dennis  <Graham.Dennis@gmail.com>
2315
2316         Reviewed by darin
2317         
2318         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7868>
2319         REGRESSION: Extraneous focus ring drawn at the end of the page
2320         
2321         * platform/GraphicsContext.cpp:
2322         (WebCore::GraphicsContext::addFocusRingRect): Don't add a focus ring for an empty rect.
2323
2324 2006-03-27  Maciej Stachowiak  <mjs@apple.com>
2325
2326         Reviewed by Anders.
2327         
2328         - fixed <rdar://problem/4489745> REGRESSION: Safari crashes at to display http://www.lgphilips-lcd.com/
2329
2330         * manual-tests/empty-script-crash.html: Added.
2331
2332 2006-03-27  Maciej Stachowiak  <mjs@apple.com>
2333
2334         Build fix:
2335         
2336         - reverted fix for <rdar://problem/4362396> capturing listeners do not fire on the target node
2337         It turns out that the behavior we had was standards-compliant and
2338         Moz will be changing to match.
2339         
2340         Also added a note so this doesn't get reverted again.
2341
2342         * dom/EventTargetNode.cpp:
2343         (WebCore::EventTargetNode::dispatchGenericEvent):
2344
2345 2006-03-26  Justin Garcia  <justin.garcia@apple.com>
2346
2347         Reviewed by darn
2348         
2349         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7974>
2350         Add EditActions and WebUndoActions for CreateLink and Unlink
2351
2352         * bridge/mac/WebCoreFrameBridge.h:
2353         * editing/CreateLinkCommand.h:
2354         (WebCore::CreateLinkCommand::editingAction):
2355         * editing/EditAction.h:
2356         * editing/UnlinkCommand.h:
2357         (WebCore::UnlinkCommand::editingAction):
2358
2359 2006-03-26  Eric Seidel  <eseidel@apple.com>
2360
2361         Reviewed by mjs.
2362
2363         Fix win32 build.
2364
2365         * WebCore.vcproj/WebCore/WebCore.vcproj:
2366         * editing/CompositeEditCommand.cpp:
2367         * editing/InsertTextCommand.cpp:
2368         * generate-derived-sources:
2369
2370 2006-03-26  Eric Seidel  <eseidel@apple.com>
2371
2372         * dom/Element.cpp: fix include case, fixing build.
2373
2374 2006-03-25  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2375
2376         Reviewed by darin.  Landed by eseidel.
2377
2378         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7916
2379           Box repaint rect does not include the left overflow
2380
2381         * manual-tests/left-overflow-repaint.html: Added.
2382         * rendering/RenderBlock.cpp:
2383         (WebCore::RenderBlock::overflowRect): Changed m_overflowWidth and m_overflowHeight
2384         to overflowWidth() and overflowHeight() since RenderTable overrides the latter.
2385         * rendering/RenderBox.cpp:
2386         (WebCore::RenderBox::getAbsoluteRepaintRect): Include top and left overflows.
2387         * rendering/RenderFlow.cpp:
2388         (WebCore::RenderFlow::getAbsoluteRepaintRect): Removed redundant code.
2389         * rendering/RenderTableCell.cpp: Removed subclass implementation of
2390         getAbsoluteRepaintRect().
2391         * rendering/RenderTableCell.h:
2392         * rendering/bidi.cpp:
2393         (WebCore::RenderBlock::layoutInlineChildren): Include left overflow in repaint rect.
2394
2395 2006-03-25  Eric Seidel  <eseidel@apple.com>
2396
2397         Reviewed by andersca.
2398
2399         Build fix.
2400
2401         * bindings/scripts/CodeGeneratorJS.pm: include Element.h
2402
2403 2006-03-25  Eric Seidel  <eseidel@apple.com>
2404
2405         Reviewed by andersca.
2406
2407         Split dom_elementimpl.* into multiple files (one per class).
2408         http://bugzilla.opendarwin.org/show_bug.cgi?id=7978
2409
2410         * ForwardingHeaders/kdom/core/Attr.h: Removed.
2411         * ForwardingHeaders/kdom/core/Element.h: Removed.
2412         * ForwardingHeaders/kdom/core/XMLElement.h: Removed.
2413         * WebCore.xcodeproj/project.pbxproj:
2414         * bindings/objc/DOM.mm:
2415         * bindings/objc/DOMHTML.mm:
2416         * bindings/scripts/CodeGeneratorJS.pm:
2417         * dom/AbstractView.cpp:
2418         * dom/Attr.cpp: Added.
2419         * dom/Attr.h: Added.
2420         * dom/Attribute.cpp: Added.
2421         * dom/Attribute.h: Added.
2422         * dom/CSSMappedAttributeDeclaration.cpp: Added.
2423         * dom/CSSMappedAttributeDeclaration.h: Added.
2424         * dom/DOMImplementation.cpp:
2425         * dom/Document.h:
2426         * dom/DocumentType.cpp:
2427         * dom/Element.cpp: Added.
2428         (WebCore::Element::Element):
2429         (WebCore::Element::~Element):
2430         * dom/Element.h: Added.
2431         * dom/EventNames.cpp:
2432         * dom/EventTargetNode.cpp:
2433         * dom/MappedAttribute.cpp: Added.
2434         * dom/MappedAttribute.h: Added.
2435         * dom/MappedAttributeEntry.h: Added.
2436         (WebCore::):
2437         * dom/NameNodeList.cpp:
2438         (WebCore::NameNodeList::NameNodeList):
2439         (WebCore::NameNodeList::item):
2440         (WebCore::NameNodeList::nodeMatches):
2441         * dom/NamedAttrMap.cpp: Added.
2442         * dom/NamedAttrMap.h: Added.
2443         * dom/NamedMappedAttrMap.cpp: Added.
2444         (WebCore::NamedMappedAttrMap::NamedMappedAttrMap):
2445         * dom/NamedMappedAttrMap.h: Added.
2446         * dom/Node.cpp:
2447         * dom/NodeList.cpp:
2448         * dom/Position.cpp:
2449         * dom/StyledElement.cpp: Added.
2450         * dom/StyledElement.h: Added.
2451         * dom/dom_elementimpl.cpp: Removed.
2452         * dom/dom_elementimpl.h: Removed.
2453         * editing/BreakBlockquoteCommand.cpp:
2454         * editing/CompositeEditCommand.cpp:
2455         * editing/DeleteFromTextNodeCommand.cpp:
2456         * editing/DeleteSelectionCommand.cpp:
2457         * editing/InsertLineBreakCommand.cpp:
2458         * editing/InsertParagraphSeparatorCommand.cpp:
2459         * editing/InsertTextCommand.cpp:
2460         * editing/MergeIdenticalElementsCommand.cpp:
2461         * editing/ModifySelectionListLevelCommand.cpp:
2462         * editing/MoveSelectionCommand.cpp:
2463         * editing/RemoveCSSPropertyCommand.cpp:
2464         * editing/RemoveNodeAttributeCommand.cpp:
2465         * editing/Selection.cpp:
2466         * editing/SelectionController.cpp:
2467         * editing/SetNodeAttributeCommand.cpp:
2468         * editing/SplitElementCommand.cpp:
2469         * editing/SplitTextNodeContainingElementCommand.cpp:
2470         * editing/TextIterator.cpp:
2471         * editing/TypingCommand.cpp:
2472         * editing/VisiblePosition.cpp:
2473         * editing/visible_units.cpp:
2474         * html/HTMLElement.h:
2475         * html/HTMLTokenizer.h:
2476         * html/html_baseimpl.cpp:
2477         * kcanvas/RenderSVGImage.cpp:
2478         * khtml/ecma/kjs_views.cpp:
2479         * khtml/ecma/kjs_window.cpp:
2480         (KJS::Window::getValueProperty):
2481         * khtml/xbl/xbl_binding_manager.cpp:
2482         * khtml/xbl/xbl_tokenizer.cpp:
2483         * ksvg2/misc/SVGImageLoader.cpp:
2484         * ksvg2/svg/SVGAElement.cpp:
2485         * ksvg2/svg/SVGAnimateTransformElement.cpp:
2486         * ksvg2/svg/SVGAnimationElement.cpp:
2487         * ksvg2/svg/SVGCircleElement.cpp:
2488         * ksvg2/svg/SVGClipPathElement.cpp:
2489         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2490         * ksvg2/svg/SVGCursorElement.cpp:
2491         * ksvg2/svg/SVGElement.cpp:
2492         (WebCore::SVGElement::SVGElement):
2493         * ksvg2/svg/SVGElement.h:
2494         * ksvg2/svg/SVGEllipseElement.cpp:
2495         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
2496         * ksvg2/svg/SVGFEBlendElement.cpp:
2497         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2498         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2499         * ksvg2/svg/SVGFECompositeElement.cpp:
2500         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2501         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2502         * ksvg2/svg/SVGFEFloodElement.cpp:
2503         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2504         * ksvg2/svg/SVGFEImageElement.cpp:
2505         * ksvg2/svg/SVGFELightElement.cpp:
2506         * ksvg2/svg/SVGFEMergeElement.cpp:
2507         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
2508         * ksvg2/svg/SVGFEOffsetElement.cpp:
2509         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2510         * ksvg2/svg/SVGFETileElement.cpp:
2511         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2512         * ksvg2/svg/SVGFilterElement.cpp:
2513         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
2514         * ksvg2/svg/SVGFitToViewBox.cpp:
2515         * ksvg2/svg/SVGGradientElement.cpp:
2516         * ksvg2/svg/SVGImageElement.cpp:
2517         * ksvg2/svg/SVGLangSpace.cpp:
2518         * ksvg2/svg/SVGLineElement.cpp:
2519         * ksvg2/svg/SVGLinearGradientElement.cpp:
2520         * ksvg2/svg/SVGMarkerElement.cpp:
2521         * ksvg2/svg/SVGMaskElement.cpp:
2522         * ksvg2/svg/SVGPathElement.cpp:
2523         * ksvg2/svg/SVGPatternElement.cpp:
2524         * ksvg2/svg/SVGPolyElement.cpp:
2525         * ksvg2/svg/SVGRadialGradientElement.cpp:
2526         * ksvg2/svg/SVGRectElement.cpp:
2527         * ksvg2/svg/SVGSVGElement.cpp:
2528         * ksvg2/svg/SVGScriptElement.cpp:
2529         * ksvg2/svg/SVGStopElement.cpp:
2530         * ksvg2/svg/SVGStyledElement.cpp:
2531         * ksvg2/svg/SVGStyledTransformableElement.cpp:
2532         * ksvg2/svg/SVGSwitchElement.cpp:
2533         * ksvg2/svg/SVGTests.cpp:
2534         * ksvg2/svg/SVGTextContentElement.cpp:
2535         * ksvg2/svg/SVGTextPositioningElement.cpp:
2536         * ksvg2/svg/SVGTransformable.cpp:
2537         * ksvg2/svg/SVGURIReference.cpp:
2538         * ksvg2/svg/SVGUseElement.cpp:
2539         * ksvg2/svg/SVGViewElement.cpp:
2540         * ksvg2/svg/SVGZoomAndPan.cpp:
2541         * kwq/WebCoreTextArea.mm:
2542         * platform/Widget.h:
2543         * rendering/RenderBlock.cpp:
2544         * rendering/RenderCanvas.cpp:
2545         * rendering/RenderContainer.cpp:
2546         * rendering/RenderObject.cpp:
2547         * rendering/RenderTextField.cpp:
2548         * rendering/RenderThemeMac.mm:
2549         * rendering/bidi.cpp:
2550         * rendering/render_replaced.cpp:
2551
2552 2006-03-25  Eric Seidel  <eseidel@apple.com>
2553
2554         Reviewed by mjs.
2555
2556         Fix RenderStyle creation to avoid floating RenderStyle objects.
2557         This also fixes a bug, were SVG to ever start sharing RenderStyles
2558         between elements, code would have crashed as there were improperly
2559         paired style->deref() statements in SVG code.
2560         http://bugzilla.opendarwin.org/show_bug.cgi?id=7976
2561
2562         No test possible (no functionality change).
2563
2564         * css/cssstyleselector.cpp:
2565         (WebCore::CSSStyleSelector::createStyleForElement):
2566         (WebCore::CSSStyleSelector::createPseudoStyleForElement):
2567         * css/cssstyleselector.h:
2568         * dom/Node.cpp:
2569         (WebCore::Node::createRendererIfNeeded):
2570         (WebCore::Node::createStyleForRenderer):
2571         * dom/Node.h:
2572         * dom/dom_elementimpl.cpp:
2573         (WebCore::Element::createStyleForRenderer):
2574         (WebCore::Element::recalcStyle):
2575         * dom/dom_elementimpl.h:
2576         * ksvg2/svg/SVGClipPathElement.cpp:
2577         (SVGClipPathElement::canvasResource):
2578         * ksvg2/svg/SVGFEFloodElement.cpp:
2579         (SVGFEFloodElement::filterEffect):
2580         * ksvg2/svg/SVGGradientElement.cpp:
2581         (SVGGradientElement::rebuildStops):
2582         * rendering/RenderObject.cpp:
2583         (WebCore::RenderObject::createObject):
2584         (WebCore::RenderObject::RenderObject):
2585         (WebCore::selectStartNode):
2586         (WebCore::RenderObject::draggableNode):
2587         (WebCore::RenderObject::getPseudoStyle):
2588
2589 2006-03-23  Eric Seidel  <eseidel@apple.com>
2590
2591         Reviewed by mjs.
2592
2593         Shave .2% on PLT by removing bogus strcmp.
2594         http://bugzilla.opendarwin.org/show_bug.cgi?id=7938
2595
2596         Test: fast/parser/tag-with-exclamation-point.html
2597
2598         * html/HTMLTokenizer.cpp:
2599         (WebCore::HTMLTokenizer::parseTag): remove bogus strcmp
2600
2601 2006-03-25  Justin Garcia  <justin.garcia@apple.com>
2602
2603         Reviewed by harrison
2604         
2605         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7683>
2606         TinyMCE: execCommand("Unlink") unimplemented
2607         
2608         Added code to push partially selected anchor elements down before 
2609         creating or removing links to create fully selected chunks that can be removed.
2610         Changed __create_link_command_h__ to CreateLinkCommand_h
2611         Gave styled element application/removal its own ApplyStyleCommand constructor.
2612         Still need to add new EditActions (7974).
2613         
2614         * WebCore.xcodeproj/project.pbxproj:
2615         * editing/ApplyStyleCommand.cpp:
2616         (WebCore::ApplyStyleCommand::ApplyStyleCommand):
2617         (WebCore::ApplyStyleCommand::applyBlockStyle):
2618         (WebCore::ApplyStyleCommand::addInlineStyleIfNeeded):
2619         * editing/ApplyStyleCommand.h:
2620         * editing/CompositeEditCommand.cpp:
2621         (WebCore::CompositeEditCommand::applyStyle):
2622         (WebCore::CompositeEditCommand::applyStyledElement):
2623         (WebCore::CompositeEditCommand::removeStyledElement):
2624         (WebCore::enclosingAnchorElement):
2625         (WebCore::CompositeEditCommand::pushAnchorElementDown):
2626         (WebCore::CompositeEditCommand::pushPartiallySelectedAnchorElementsDown):
2627         * editing/CompositeEditCommand.h:
2628         * editing/CreateLinkCommand.cpp:
2629         (WebCore::CreateLinkCommand::doApply):
2630         * editing/CreateLinkCommand.h:
2631         * editing/JSEditor.cpp:
2632         * editing/Selection.cpp:
2633         (WebCore::Selection::selectionFromContentsOfNode):
2634         * editing/Selection.h:
2635         * editing/UnlinkCommand.cpp: Added.
2636         (WebCore::UnlinkCommand::UnlinkCommand):
2637         (WebCore::UnlinkCommand::doApply):
2638         * editing/UnlinkCommand.h: Added.
2639         * page/Frame.cpp:
2640         (WebCore::Frame::selectContentsOfNode):
2641         (WebCore::Frame::computeAndSetTypingStyle):
2642         (WebCore::Frame::applyStyle):
2643         (WebCore::Frame::applyParagraphStyle):
2644
2645 2006-03-24  Justin Garcia  <justin.garcia@apple.com>
2646
2647         Reviewed by harrison
2648         
2649         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7955>
2650         REGRESSION: Content with an interchange newline lost when pasted at the end of the document
2651         
2652         There's no safe place in the document to keep the fragment while pasting, so I avoid
2653         isProbablyBlock by saving whether or not something was blockFlow during the test 
2654         insertion.
2655
2656         * editing/ReplaceSelectionCommand.cpp:
2657         (WebCore::ReplacementFragment::ReplacementFragment):
2658         (WebCore::ReplacementFragment::~ReplacementFragment):
2659         (WebCore::ReplacementFragment::firstChild):
2660         (WebCore::ReplacementFragment::lastChild):
2661         (WebCore::ReplacementFragment::mergeStartNode):
2662         (WebCore::ReplacementFragment::enclosingBlock):
2663         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
2664         (WebCore::ReplacementFragment::restoreTestRenderingNodesToFragment):
2665         (WebCore::ReplacementFragment::isBlockFlow):
2666         (WebCore::ReplaceSelectionCommand::fixupNodeStyles):
2667         (WebCore::styleForNode):
2668         (WebCore::ReplacementFragment::saveRenderingInfo):
2669         (WebCore::ReplacementFragment::removeUnrenderedNodes):
2670         (WebCore::ReplacementFragment::renderedBlocks):
2671         (WebCore::ReplacementFragment::removeStyleNodes):
2672         (WebCore::RenderingInfo::RenderingInfo):
2673         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
2674         (WebCore::ReplaceSelectionCommand::doApply):
2675         * editing/ReplaceSelectionCommand.h:
2676         (WebCore::RenderingInfo::isBlockFlow):
2677         (WebCore::ReplacementFragment::renderingInfo):
2678         (WebCore::ReplacementFragment::nodes):
2679         
2680 2006-03-24  Eric Seidel  <eseidel@apple.com>
2681
2682         Reviewed by justing.
2683
2684         * generate-derived-sources: fix clean builds on mac.
2685         
2686 2006-03-24  Darin Adler  <darin@apple.com>
2687
2688         Reviewed by Dave Harrison.
2689
2690         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7942
2691           nightlies after r13387 break js createcontextualfragment
2692
2693         Test: fast/dom/Range/create-contextual-fragment.html
2694
2695         * dom/Range.idl: Add createContextualFragment.
2696
2697 2006-03-24  Eric Seidel  <eseidel@apple.com>
2698
2699         Reviewed by mjs.
2700
2701         Fix win32 build.
2702         Unify mac/win dependency handling.
2703         Fix class vs. struct linker problem for win32.
2704
2705         * WebCore.vcproj/WebCore/WebCore.vcproj: Add DerivedSources
2706         * WebCore.vcproj/WebCore/build-generated-files.sh:
2707         * bridge/win/BrowserExtensionWin.h:
2708         * bridge/win/FrameWin.h:
2709         * generate-derived-sources:
2710         * kwq/AccessibilityObjectCache.h:
2711         * platform/GraphicsContext.cpp:
2712         (WebCore::GraphicsContext::createGraphicsContextPrivate):
2713         (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
2714         * platform/GraphicsContext.h:
2715         * platform/cairo/GraphicsContextCairo.cpp:
2716         * platform/mac/GraphicsContextMac.mm:
2717         * platform/win/TemporaryLinkStubs.cpp:
2718         (QLineEdit::selectedText):
2719         (FrameWin::createPlugin):
2720         (BrowserExtensionWin::setTypedIconURL):
2721
2722 2006-03-23  Darin Adler  <darin@apple.com>
2723
2724         Reviewed by Adele.
2725
2726         - fix <rdar://problem/4484787> KWQAccObject dangles under GC
2727
2728         * kwq/AccessibilityObjectCache.h: Moved AccessibilityObjectCache into the WebCore
2729         namespace. Renamed accObject to get, removed setAccObject, renamed removeAccObject
2730         to remove, removed getAccObjectID, renamed removeAXObjectID to removeAXID, change
2731         from CF dictionaries to HashMap and HashSet.
2732         * kwq/AccessibilityObjectCache.mm:
2733         (WebCore::AccessibilityObjectCache::~AccessibilityObjectCache): Detach all objects
2734         and call CFRelease on all of them.
2735         (WebCore::AccessibilityObjectCache::get): Call CFRetain on objects before putting
2736         them in the HashMap, rather than assuming that retain == CFRetain. This is what
2737         fixes the GC issue.
2738         (WebCore::AccessibilityObjectCache::remove): Detach and call CFRelease when removing.
2739         (WebCore::AccessibilityObjectCache::getAXID): Change to use a single global variable
2740         for the AXIDs, which makes it so we won't reuse the same AXID as much as we did before.
2741         (WebCore::AccessibilityObjectCache::removeAXID): Updated to use HashSet.
2742         (WebCore::AccessibilityObjectCache::textMarkerForVisiblePosition): Updated for other changes.
2743         (WebCore::AccessibilityObjectCache::visiblePositionForTextMarker): Ditto.
2744         (WebCore::AccessibilityObjectCache::childrenChanged): Ditto.
2745         (WebCore::AccessibilityObjectCache::postNotificationToTopWebArea): Ditto.
2746         (WebCore::AccessibilityObjectCache::postNotification): Ditto.
2747
2748         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge accessibilityTree]):
2749         Change to use functions by new names.
2750
2751         * dom/Document.h: AccessibilityObjectCache is now in the WebCore namespace.
2752         getAccObjectCache and ownerElement are const member functions, and m_accCache
2753         is a mutable data member.
2754         * dom/Document.cpp:
2755         (WebCore::Document::getAccObjectCache): Make const.
2756         (WebCore::Document::ownerElement): Make const.
2757
2758         * kwq/WebCoreAXObject.h: Changed WebCoreAXID to WebCore::AXID.
2759         * kwq/WebCoreAXObject.mm:
2760         (-[WebCoreAXObject anchorElement]): Update for function name change.
2761         (-[WebCoreAXObject firstChild]): Ditto.
2762         (-[WebCoreAXObject lastChild]): Ditto.
2763         (-[WebCoreAXObject previousSibling]): Ditto.
2764         (-[WebCoreAXObject nextSibling]): Ditto.
2765         (-[WebCoreAXObject parentObject]): Ditto.
2766         (-[WebCoreAXObject accessibilityAttributeValue:]): Ditto.
2767         (-[WebCoreAXObject doAXUIElementForTextMarker:]): Ditto.
2768         (AXLinkElementForNode): Ditto.
2769         (AXAttributedStringAppendReplaced): Ditto.
2770         (-[WebCoreAXObject accessibilityHitTest:]): Ditto.
2771         (-[WebCoreAXObject _accessibilityParentForSubview:]): Ditto.
2772         (-[WebCoreAXObject accessibilityFocusedUIElement]): Ditto.
2773         (-[WebCoreAXObject axObjectID]): Change field name to m_id.
2774         (-[WebCoreAXObject setAXObjectID:]): Ditto.
2775         (-[WebCoreAXObject removeAXObjectID]): Ditto.
2776
2777         * rendering/RenderContainer.cpp:
2778         (WebCore::RenderContainer::removeChildNode): Remove ifdefs.
2779         (WebCore::RenderContainer::appendChildNode): Ditto.
2780         (WebCore::RenderContainer::insertChildNode): Ditto.
2781         * rendering/RenderObject.cpp: (WebCore::RenderObject::remove): Ditto.
2782
2783 2006-03-23  Darin Adler  <darin@apple.com>
2784
2785         Reviewed by Maciej.
2786
2787         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7726
2788           REGRESSION: orbitz calendar fails (JavaScript function serialization/parsing)
2789
2790         Test: fast/js/function-names.html
2791
2792         * dom/Document.h: Add function name parameter to createHTMLEventListener.
2793         * dom/Document.cpp:
2794         (WebCore::Document::createHTMLEventListener): Pass function name when calling
2795         createHTMLEventHandler.
2796         (WebCore::Document::setHTMLWindowEventListener): Pass attribute name as function name
2797         when calling createHTMLEventListener.
2798
2799         * html/HTMLElement.cpp: (WebCore::HTMLElement::setHTMLEventListener): Pass attribute
2800         name as function name when calling createHTMLEventListener.
2801
2802         * khtml/ecma/kjs_events.h: Add a function name parameter to JSLazyEventListener.
2803         * khtml/ecma/kjs_events.cpp:
2804         (KJS::JSLazyEventListener::JSLazyEventListener): Take and store a function name.
2805         (KJS::JSLazyEventListener::parseCode): Pass function name when constructing the function.
2806
2807         * khtml/ecma/kjs_proxy.h: Add a function name parameter to createHTMLEventHandler and
2808         createSVGEventHandler.
2809         * khtml/ecma/kjs_proxy.cpp:
2810         (WebCore::KJSProxy::createHTMLEventHandler): Pass function name when creating
2811         a JSLazyEventListener.
2812         (WebCore::KJSProxy::createSVGEventHandler): Ditto.
2813
2814         * ksvg2/events/JSSVGLazyEventListener.h: Add a function name parameter to
2815         JSSVGLazyEventListener.
2816         * ksvg2/events/JSSVGLazyEventListener.cpp:
2817         (WebCore::JSSVGLazyEventListener::JSSVGLazyEventListener): Pass the function name
2818         on to the base class constructor.
2819
2820         * ksvg2/misc/SVGDocumentExtensions.h: Add function name parameter to createSVGEventListener.
2821         * ksvg2/misc/SVGDocumentExtensions.cpp:
2822         (WebCore::SVGDocumentExtensions::createSVGEventListener): Pass function name when
2823         calling createSVGEventHandler.
2824
2825         * ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::addSVGEventListener):
2826         * ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::addSVGWindowEventListner):
2827         Pass attribute name as function name when calling createSVGEventListener.
2828
2829         * WebCore.xcodeproj/project.pbxproj: Moved generation script to the top.
2830
2831 2006-03-23  Tim Omernick  <timo@apple.com>
2832
2833         Reviewed by Darin.
2834
2835         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7691>
2836         REGRESSION: imdb.com search button looks wrong because "Submit" is drawn
2837
2838         * html/HTMLInputElement.cpp:
2839         (WebCore::HTMLInputElement::valueWithDefault):
2840         Only use the default button title if no title was specified; previously we'd use the default
2841         button title if the specified title was empty, which is not what Firefox does.
2842         
2843 2006-03-23  Darin Adler  <darin@apple.com>
2844
2845         Reviewed by Beth.
2846
2847         - fix <rdar://problem/4335038> REGRESSION: when max-height is none, height value is ignored
2848
2849         * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty):
2850         For max-height of none, set it to Length(undefinedLength, Fixed), which
2851         is the correct value (same as the default). Also did some formatting fixes
2852         to the height section.
2853
2854 2006-03-23  Beth Dakin  <bdakin@apple.com>
2855
2856         Reviewed by Darin
2857
2858         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6431 
2859         REGRESSION: style change where :hover changes only an :after style 
2860         doesn't work
2861
2862         * dom/Node.cpp:
2863         (WebCore::Node::diff): Need to call diff() on the before and after 
2864         styles if we have them.
2865
2866 2006-03-23  Adele Peterson  <adele@apple.com>
2867
2868         Reviewed by Hyatt.
2869
2870         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7935
2871         <rdar://problem/4489010>
2872         Infinite recursion in table code when button or new text fields get display:table-row
2873
2874         Test:
2875         fast/forms/button-table-styles.html
2876
2877         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustStyle):
2878         The theme should disallow table display styles form elements. 
2879
2880 2006-03-23  Darin Adler  <darin@apple.com>
2881
2882         * generate-derived-sources: Tweaked formatting a tiny bit and removed a stray
2883         touch that was left in here.
2884
2885 2006-03-23  Eric Seidel  <eseidel@apple.com>
2886
2887         Reviewed by mjs.
2888
2889         REGRESSION: Dashed borders paint with the wrong phase
2890         http://bugzilla.opendarwin.org/show_bug.cgi?id=7879
2891
2892         Test: Already covered by css1/box_properties/border_style.html
2893
2894         * platform/cairo/GraphicsContextCairo.cpp:
2895         (WebCore::GraphicsContext::drawLine):
2896         * platform/mac/GraphicsContextMac.mm:
2897         (WebCore::GraphicsContext::drawLine):
2898
2899 2006-03-22  Maciej Stachowiak  <mjs@apple.com>
2900
2901         Reviewed by Eric.
2902         
2903         * generate-derived-sources: Suppress warning.
2904
2905 2006-03-22  Maciej Stachowiak  <mjs@apple.com>
2906
2907         * generate-derived-sources: Added svn:executable property.
2908
2909 2006-03-22  Maciej Stachowiak  <mjs@apple.com>
2910
2911         Reviewed by Eric.
2912         
2913         Handle dependencies for derived sources properly.
2914
2915         - Made a new generate-derived-sources script that does all the dependency checking
2916         and source generation.
2917         - Put this script in a subtarget instead of a phase.
2918         - Made derived sources go in the build root, not a source root.
2919         - Added derived sources to the project.
2920         - Removed files whose sole purpose was to include and compile derived sources,
2921         just compile those directly now.
2922         - Tweaked the IDL code generator so it can handle one IDL at a time, to make
2923         it easier to get the dependencies right.
2924         
2925         * generate-derived-sources: Added.
2926         * WebCore.xcodeproj/project.pbxproj:
2927         * bindings/js/JSDOMCore.cpp: Removed.
2928         * bindings/js/JSDOMEvents.cpp: Removed.
2929         * bindings/js/JSDOMHTML.cpp: Removed.
2930         * bindings/scripts/CodeGenerator.pm:
2931         * bindings/scripts/CodeGeneratorJS.pm:
2932         * bindings/scripts/generate-bindings.pl:
2933         * css/UserAgentStyleSheets.cpp: Removed.
2934         * dom/Range.cpp:
2935         (WebCore::Range::~Range):
2936         * dom/Range.h:
2937         * khtml/ecma/kjs_css.cpp:
2938         (KJS::DOMStyleSheet::DOMStyleSheet):
2939         (KJS::DOMStyleSheetList::DOMStyleSheetList):
2940         (KJS::DOMCSSRuleList::DOMCSSRuleList):
2941         (KJS::DOMCSSRule::DOMCSSRule):
2942         * khtml/ecma/kjs_css.h:
2943
2944 2006-03-22  Justin Garcia  <justin.garcia@apple.com>
2945
2946         Reviewed by harrison
2947         
2948         <http://bugzilla.opendarwin.org/show_bug.cgi?id=7904>
2949         Avoid a layout after test insertion and remove isProbablyBlock
2950
2951         * editing/ReplaceSelectionCommand.cpp:
2952         (WebCore::ReplacementFragment::ReplacementFragment):
2953         (WebCore::ReplacementFragment::~ReplacementFragment):
2954         (WebCore::ReplacementFragment::firstChild):
2955         (WebCore::ReplacementFragment::lastChild):
2956         (WebCore::ReplacementFragment::mergeStartNode):
2957         (WebCore::ReplacementFragment::enclosingBlock):
2958         (WebCore::ReplacementFragment::insertFragmentForTestRendering):
2959         (WebCore::ReplacementFragment::computeAndStoreNodeStyles):
2960         (WebCore::ReplacementFragment::removeUnrenderedNodes):
2961         (WebCore::ReplacementFragment::renderedBlocks):
2962         (WebCore::ReplacementFragment::removeStyleNodes):
2963         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
2964         (WebCore::ReplaceSelectionCommand::doApply):
2965         * editing/ReplaceSelectionCommand.h:
2966         (WebCore::ReplacementFragment::root):
2967
2968 2006-03-22  Eric Seidel  <eseidel@apple.com>
2969
2970         Reviewed by hyatt.
2971
2972         Fix attribute mutation events to not fire for "style" attributes.
2973         We lazily update style attributes, so sending mutation events for them makes no sense anymore.
2974         <rdar://problem/4474910> repro assertion failure @ apple.com/store: !eventDispatchForbidden()
2975
2976         Test: fast/events/delayed-style-mutation-event-crash.html
2977
2978         * dom/dom_elementimpl.cpp:
2979         (WebCore::Element::dispatchAttrRemovalEvent): add assert
2980         (WebCore::Element::dispatchAttrAdditionEvent): add assert
2981         (WebCore::NamedAttrMap::addAttribute):
2982
2983 2006-03-22  Eric Seidel  <eseidel@apple.com>
2984
2985         Reviewed by darin.
2986
2987         Remove more DeprecatedString usage.
2988         http://bugzilla.opendarwin.org/show_bug.cgi?id=7882
2989
2990         * bridge/mac/FrameMac.mm:
2991         (WebCore::FrameMac::attributedString):
2992         (WebCore::FrameMac::fontForSelection):
2993         (WebCore::FrameMac::tokenizerProcessedData):
2994         (WebCore::FrameMac::registerCommandForUndoOrRedo):
2995         (WebCore::FrameMac::markMisspellings):
2996         (WebCore::FrameMac::respondToChangedSelection):
2997         (WebCore::FrameMac::dashboardRegionsDictionary):
2998         (WebCore::FrameMac::dragSourceMovedTo):
2999         * css/CSSGrammar.y:
3000         * css/css_valueimpl.h:
3001         * css/cssparser.cpp:
3002         (WebCore::CSSParser::CSSParser):
3003         (WebCore::CSSParser::parseValue):
3004         (WebCore::CSSParser::parseColor):
3005         (WebCore::CSSParser::parseDeclaration):
3006         (WebCore::CSSParser::validUnit):
3007         (WebCore::CSSParser::parseShorthand):
3008         (WebCore::CSSParser::parseContent):
3009         (WebCore::skipCommaInDashboardRegion):
3010         (WebCore::CSSParser::parseDashboardRegions):
3011         (WebCore::CSSParser::parseShape):
3012         (WebCore::CSSParser::parseFont):
3013         (WebCore::CSSParser::parseFontFamily):
3014         (WebCore::CSSParser::parseColorFromValue):
3015         (WebCore::yyerror):
3016         (WebCore::CSSParser::lex):
3017         (WebCore::CSSParser::text):
3018         * css/cssparser.h:
3019         (WebCore::deprecatedString):
3020         * css/cssstyleselector.cpp:
3021         (WebCore::CSSStyleSelector::applyProperty):
3022         * khtml/ecma/kjs_dom.cpp:
3023         (KJS::DOMDocument::getValueProperty):
3024         * ksvg2/css/SVGCSSParser.cpp:
3025         (WebCore::CSSParser::parseSVGPaint):
3026         (WebCore::CSSParser::parseSVGColor):
3027         * ksvg2/svg/SVGAnimationElement.cpp:
3028         (SVGAnimationElement::parseMappedAttribute):
3029         * rendering/RenderBlock.cpp:
3030         (WebCore::RenderBlock::layoutPositionedObjects):
3031         (WebCore::RenderBlock::positionNewFloats):
3032         (WebCore::RenderBlock::newLine):
3033         * rendering/RenderCanvas.cpp:
3034         (WebCore::RenderCanvas::absolutePosition):
3035         (WebCore::RenderCanvas::paint):
3036         * rendering/RenderFlexibleBox.cpp:
3037         (WebCore::RenderFlexibleBox::layoutBlock):
3038         * rendering/RenderObject.h:
3039         * rendering/bidi.cpp:
3040         (WebCore::RenderBlock::bidiReorderLine):
3041         (WebCore::RenderBlock::layoutInlineChildren):
3042         * rendering/render_form.cpp:
3043         (WebCore::RenderFieldset::paintBoxDecorations):
3044         * rendering/render_style.h:
3045         (WebCore::RenderStyle::setDashboardRegion):
3046         * rendering/table_layout.cpp:
3047         (WebCore::AutoTableLayout::calcEffectiveWidth):
3048         (WebCore::AutoTableLayout::insertSpanCell):
3049         (WebCore::AutoTableLayout::layout):
3050         (WebCore::AutoTableLayout::calcPercentages):
3051
3052 2006-03-22  Tim Omernick  <timo@apple.com>
3053
3054         Reviewed by Kevin Decker.
3055
3056         Part of <rdar://problem/4351664> REGRESSION (420+): extra URL in b/f list - navigating back to previous page fails at apple.com/retail/)
3057         This also fixes <rdar://problem/4477821> REGRESSION (10.4.5-TOT): meta tag specifying refresh is being added to history.
3058
3059         * bridge/mac/FrameMac.h:
3060         * bridge/mac/FrameMac.mm:
3061         Removed redirectionTimerFired().  This was added as attempt to fix <http://bugzilla.opendarwin.org/show_bug.cgi?id=7058>.  The
3062         aim was to cause Safari and WebKit to update their loading status after a redirect.  Unfortunately, the fix had a bad side
3063         effect.  Calling -reportClientRedirectCancelled: on a successful redirect causes WebKit to forget that the redirect was supposed
3064         to lock history (i.e. reuse the current back/forward entry for the new page).  The end result was that intermediate "quick" redirects
3065         were creating back/forward entries when they should not have been.  See 4351664.  That fix was almost correct, in that we do need to
3066         notify the frame load delegate when a redirect ends, either because it succeeded or because it was cancelled.  However, this is the
3067         wrong place to do it.  WebCore's redirect notification logic did not need to change to fix 7058.  The never-ending spinning indicators
3068         problem was actually caused by a bug at the WebKit level.
3069
3070         * manual-tests/redirectHistory: Added.
3071         * manual-tests/redirectHistory/redir-1.html: Added.
3072         * manual-tests/redirectHistory/redir-2.html: Added.
3073         * manual-tests/redirectHistory/redir-3.html: Added.
3074         Manual test case.  I couldn't figure out how to create a layout test for this, because it involves navigation through history and
3075         it was unclear how/when to tell DumpRenderTree to dump its output.
3076
3077 2006-03-22  Eric Seidel  <eseidel@apple.com>
3078
3079         Reviewed by darin.
3080
3081         Replace more DeprecatedString with String.
3082         http://bugzilla.opendarwin.org/show_bug.cgi?id=7907
3083
3084         * WebCore+SVG/kdom.h:
3085         * bindings/objc/DOMHTML.mm:
3086         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
3087         * bridge/BrowserExtension.h:
3088         * bridge/mac/BrowserExtensionMac.h:
3089         * bridge/mac/BrowserExtensionMac.mm:
3090         (WebCore::BrowserExtensionMac::setTypedIconURL):
3091         * bridge/mac/FrameMac.h:
3092         * bridge/mac/FrameMac.mm:
3093         (WebCore::FrameMac::searchForLabelsBeforeElement):
3094         (WebCore::nsArray):
3095         (WebCore::FrameMac::createPlugin):
3096         (WebCore::FrameMac::bindingRootObject):
3097         (WebCore::FrameMac::windowScriptObject):
3098         (WebCore::FrameMac::windowScriptNPObject):
3099         (WebCore::FrameMac::partClearedInBegin):
3100         (WebCore::FrameMac::openURLFromPageCache):
3101         * bridge/mac/WebCoreFrameBridge.mm:
3102         (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
3103         (-[WebCoreFrameBridge scrollToAnchor:]):
3104         (-[WebCoreFrameBridge URLWithAttributeString:]):
3105         (-[WebCoreFrameBridge highlightAllMatchesForString:caseSensitive:]):
3106         * bridge/mac/WebCoreScriptDebugger.mm:
3107         (-[WebCoreScriptCallFrame evaluateWebScript:]):
3108         * bridge/mac/WebCoreSettings.mm:
3109         (-[WebCoreSettings _updateAllViews]):
3110         (-[WebCoreSettings setStandardFontFamily:]):
3111         (-[WebCoreSettings setMinimumFontSize:]):
3112         (-[WebCoreSettings setMinimumLogicalFontSize:]):
3113         (-[WebCoreSettings setDefaultFontSize:]):
3114         (-[WebCoreSettings setDefaultFixedFontSize:]):
3115         (-[WebCoreSettings setUserStyleSheetLocation:]):
3116         * css/CSSComputedStyleDeclaration.cpp:
3117         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3118         * css/CSSGrammar.y:
3119         * css/css_stylesheetimpl.cpp:
3120         (WebCore::MediaList::setMediaText):
3121         * css/css_valueimpl.cpp:
3122         (WebCore::quoteStringIfNeeded):
3123         * css/cssparser.cpp:
3124         (WebCore::CSSParser::parseColor):
3125         * css/cssstyleselector.cpp:
3126         (WebCore::CSSStyleSelector::CSSStyleSelector):
3127         * css/cssstyleselector.h:
3128         * dom/Document.cpp:
3129         (WebCore::Document::resetActiveLinkColor):
3130         (WebCore::Document::nextState):
3131         (WebCore::Document::setUserStyleSheet):
3132         (WebCore::Document::processHttpEquiv):
3133         (WebCore::Document::recalcStyleSelector):
3134         * dom/Document.h:
3135         (WebCore::Document::userStyleSheet):
3136         (WebCore::Document::setPrintStyleSheet):
3137         (WebCore::Document::printStyleSheet):
3138         * editing/markup.cpp:
3139         (WebCore::createMarkup):
3140         (WebCore::createFragmentFromMarkup):
3141         (WebCore::createFragmentFromText):
3142         * editing/markup.h:
3143         * html/CanvasRenderingContext2D.cpp:
3144         (WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation):
3145         * html/HTMLTokenizer.cpp:
3146         (WebCore::HTMLTokenizer::scriptHandler):
3147         * html/html_baseimpl.cpp:
3148         (WebCore::HTMLFrameElement::openURL):
3149         (WebCore::HTMLFrameElement::attach):
3150         * html/html_headimpl.cpp:
3151         (WebCore::HTMLLinkElement::process):
3152         (WebCore::HTMLLinkElement::setStyleSheet):
3153         * html/html_headimpl.h:
3154         * html/html_imageimpl.cpp:
3155         (WebCore::HTMLImageElement::parseMappedAttribute):
3156         * html/html_imageimpl.h:
3157         (WebCore::HTMLImageElement::compositeOperator):
3158         * html/html_objectimpl.cpp:
3159         (WebCore::HTMLAppletElement::createRenderer):
3160         * ksvg2/svg/SVGStringList.cpp:
3161         (SVGStringList::reset):
3162         * kwq/AccessibilityObjectCache.h:
3163         * kwq/AccessibilityObjectCache.mm:
3164         (AccessibilityObjectCache::textMarkerForVisiblePosition):
3165         (AccessibilityObjectCache::postNotificationToTopWebArea):
3166         (AccessibilityObjectCache::postNotification):
3167         * kwq/ClipboardMac.mm:
3168         (WebCore::cocoaTypeFromMIMEType):
3169         * kwq/KWQKHTMLSettings.h:
3170         (KHTMLSettings::userStyleSheetLocation):
3171         (KHTMLSettings::setUserStyleSheetLocation):
3172         * kwq/KWQLineEdit.h:
3173         * kwq/KWQLineEdit.mm:
3174         (QLineEdit::selectedText):
3175         * loader/CachedCSSStyleSheet.cpp:
3176         (WebCore::CachedCSSStyleSheet::ref):
3177         * page/Frame.cpp:
3178         (WebCore::UserStyleSheetLoader::setStyleSheet):
3179         (WebCore::Frame::jScriptEnabled):
3180         (WebCore::Frame::javaEnabled):
3181         (WebCore::Frame::pluginsEnabled):
3182         (WebCore::Frame::receivedFirstData):
3183         (WebCore::Frame::begin):
3184         (WebCore::Frame::setUserStyleSheet):
3185         (WebCore::Frame::requestObject):
3186         (WebCore::Frame::loadPlugin):
3187         (WebCore::Frame::referrer):
3188         (WebCore::Frame::lastModified):
3189         (WebCore::Frame::reparseConfiguration):
3190         (WebCore::Frame::handleMousePressEventSingleClick):
3191         (WebCore::Frame::appliedEditing):
3192         (WebCore::Frame::unappliedEditing):
3193         (WebCore::Frame::reappliedEditing):
3194         * page/Frame.h:
3195         * page/FramePrivate.h:
3196         (WebCore::FramePrivate::FramePrivate):
3197         * platform/AtomicString.h:
3198         (WebCore::AtomicString::AtomicString):
3199         * platform/DeprecatedString.cpp:
3200         (DeprecatedString::replace):
3201         * platform/GraphicsContext.h:
3202         * platform/Image.h:
3203         * platform/KURL.cpp:
3204         * platform/KURL.h:
3205         * platform/PlatformString.h:
3206         (WebCore::String::String):
3207         (WebCore::String::replace):
3208         * platform/String.cpp:
3209         (WebCore::operator+):
3210         * platform/StringImpl.cpp:
3211         (WebCore::StringImpl::remove):
3212         (WebCore::parseLength):
3213         (WebCore::StringImpl::replace):
3214         * platform/StringImpl.h:
3215         * platform/mac/GraphicsContextMac.mm:
3216         (WebCore::GraphicsContext::setCompositeOperation):
3217         * rendering/RenderHTMLCanvas.cpp:
3218         (WebCore::RenderHTMLCanvas::paint):
3219         * rendering/render_form.cpp:
3220         (WebCore::RenderSelect::updateFromElement):
3221         * rendering/render_frames.cpp:
3222         (WebCore::isURLAllowed):
3223         (WebCore::mapClassIdToServiceType):
3224         (WebCore::RenderPartObject::updateWidget):
3225         * rendering/render_style.h:
3226         (WebCore::RenderStyle::setDashboardRegion):
3227         * xml/xmlhttprequest.cpp:
3228         (WebCore::getCharset):
3229         (WebCore::XMLHttpRequest::send):
3230         (WebCore::XMLHttpRequest::overrideMIMEType):
3231
3232 2006-03-22  Beth Dakin  <bdakin@apple.com>
3233
3234         Reviewed by Hyatt
3235
3236         Fix for <rdar://problem/4471984> repro crash CSS position for html/
3237         table=relative causes crash when hiding table
3238
3239         * css/cssstyleselector.cpp:
3240         (WebCore::CSSStyleSelector::adjustRenderStyle): If an object is 
3241         positioned, relatively positioned, or transparent, it should always 
3242         have auto indexing. Auto z-index for the root should always be 0.
3243         * rendering/RenderLayer.cpp:
3244         (WebCore::RenderLayer::removeChild): This is not part of the bug 
3245         fix; just using a local variable that was created for the stacking 
3246         context instead of recalculating it.
3247
3248 2006-03-22  David Hyatt  <hyatt@apple.com>
3249
3250         Fix for residual style problem where form elements lose their connection
3251         to a degenerate table form because of a residual style fixup.  This is
3252         Radar bug #4330765.
3253
3254         Reviewed by eric
3255
3256         * khtml/html/HTMLFormElement.cpp:
3257         (WebCore::HTMLFormElement::HTMLFormElement):
3258         * khtml/html/HTMLFormElement.h:
3259         (WebCore::HTMLFormElement::setPreserveFormConnectionAcrossRemove):
3260         (WebCore::HTMLFormElement::preserveFormConnectionAcrossRemove):
3261         * khtml/html/HTMLGenericFormElement.cpp:
3262         (WebCore::HTMLGenericFormElement::removedFromTree):
3263         * khtml/html/htmlparser.cpp:
3264         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
3265
3266 2006-03-22  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3267
3268         Reviewed by Adele.
3269
3270         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7747
3271           REGRESSION: Background tab/window auto-refresh in GMail will take focus.
3272
3273         * manual-tests/named-window-blank-target.html: Added.
3274         * manual-tests/resources/named-window-blank-target-step2.html: Added.
3275         * manual-tests/resources/named-window-blank-target-step3.html: Added.
3276         * manual-tests/resources/named-window-blank-target-step4.html: Added.
3277         * page/FrameTree.cpp:
3278         (WebCore::FrameTree::find): If the given name is empty, just return our frame,
3279         even if it has a name.
3280
3281 2006-03-22  Darin Adler  <darin@apple.com>
3282
3283         Reviewed by Adele.
3284
3285         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7143
3286           <rdar://problem/4483856> REGRESSION (417.8-TOT): onclick handler cannot call a function named OnClick (7143)
3287
3288         Test: fast/dom/Element/onclick-case.html
3289
3290         We discussed this with Maciej. In the long run we may need to remove the "all attributes
3291         show up as properties in JavaScript" feature entirely. Gecko does not do it, and it's
3292         not really the same thing IE does either.
3293
3294         * khtml/ecma/kjs_dom.cpp:
3295         (KJS::DOMElement::attributeGetter): Use getAttributeNS so we're case sensitive.
3296         (KJS::DOMElement::getOwnPropertySlot): Ditto.
3297
3298 2006-03-22  Eric Seidel  <eseidel@apple.com>
3299
3300         Reviewed by beth.
3301
3302         <rdar://problem/4486417> REGRESSION: Mail linked against TOT WebKit crashes when composing a message
3303
3304         No test possible.
3305
3306         * bridge/mac/WebCoreSettings.mm:
3307         (-[WebCoreSettings init]): call AtomicString::init()
3308
3309 2006-03-21  Darin Adler  <darin@apple.com>
3310
3311         - fix buildbot (and everyone else)
3312
3313         * bindings/js/JSDOMCore.cpp: Touch, because Adele's change adds a virtual function,
3314         and Xcode doesn't know this needs recompiling.
3315         * bindings/js/JSDOMEvents.cpp: Ditto.
3316         * bindings/js/JSDOMHTML.cpp: Ditto.
3317
3318 2006-03-21  Justin Haygood and Bjoern Graf  <jhaygood@spsu.edu> <bjoern.graf@gmail.com>
3319
3320         Reviewed by Eric and Darin.
3321
3322         - get Windows building again
3323
3324         * WebCore.vcproj/WebCore/WebCore.vcproj:
3325         * bridge/win/FrameWin.cpp:
3326         (WebCore::FrameWin::userAgent):
3327         * bridge/win/FrameWin.h:
3328         * platform/GraphicsContext.h:
3329         * platform/cairo/ImageCairo.cpp:
3330         (WebCore::Image::supportsType):
3331         * platform/win/TemporaryLinkStubs.cpp:
3332         (FrameWin::mimeTypeForFileName):
3333         (FrameWin::objectContentType):
3334         (FrameWin::createPlugin):
3335         (FrameWin::overrideMediaType):
3336         (FrameWin::passSubframeEventToSubframe):
3337         (FrameWin::createFrame):
3338         (FrameWin::incomingReferrer):
3339
3340 2006-03-21  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3341
3342         Reviewed by Darin.
3343
3344         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7884
3345           REGRESSION: Selecting a custom style sheet crashes 20/3 nightly
3346
3347         * page/Frame.cpp:
3348         (WebCore::UserStyleSheetLoader::setStyleSheet): This was calling the function
3349         that sets the stylesheet URL, passing it the actual stylesheet.
3350         (WebCore::Frame::begin):
3351         (WebCore::Frame::setUserStyleSheetLocation): Renamed the version of
3352         setUserStyleSheet() that takes a URL to this.
3353         (WebCore::Frame::reparseConfiguration):
3354         * page/Frame.h:
3355
3356 2006-03-21  Adele Peterson  <adele@apple.com>
3357
3358         Reviewed by Darin.
3359
3360         - Fix for
3361         http://bugzilla.opendarwin.org/show_bug.cgi?id=6813
3362         elementAtPoint needs to return input element when clicking on new text field
3363         http://bugzilla.opendarwin.org/show_bug.cgi?id=7799
3364         New text fields don't respect the disabled attribute
3365
3366         - Tests:
3367         fast/forms/input-appearance-disabled.html
3368         fast/forms/input-appearance-elementFromPoint.html
3369         fast/forms/input-appearance-preventDefault.html
3370
3371         * bridge/mac/WebCoreFrameBridge.h: Added allowShadowContent parameter to getInnerNonSharedNode so new elementAtPoint method in WebKit can call this.
3372         * bridge/mac/WebCoreFrameBridge.mm:
3373         (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]): Passes allowShadowContent parameter to nodeInfoAtPoint.
3374         (-[WebCoreFrameBridge _visiblePositionForPoint:]): Updated to call nodeInfoAtPoint allowing shadow content.
3375         (-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]): Added allowShadowContent parameter.
3376
3377         * dom/Node.h:
3378         (WebCore::Node::isShadowNode): Added.
3379         (WebCore::Node::shadowParentNode): Added.
3380         * dom/Node.cpp: (WebCore::Node::shadowAncestorNode): Added.  If an ancestor is a shadow node, return its shadow parent node.
3381         * html/HTMLTextFieldInnerElement.h: (WebCore::HTMLTextFieldInnerElement::isShadowNode): Added.
3382
3383         * dom/Document.cpp: (WebCore::Document::elementFromPoint): Gets the shadowAncestorNode (so we get the input element, and not the inner div).
3384         * html/HTMLInputElement.cpp:
3385         (WebCore::HTMLInputElement::isKeyboardFocusable): If text fields are focusable, then they should be keyboard focusable.  This works for the
3386         old text fields because HTMLGenericFormElement::isKeyboardFocusable does the right thing for RenderWidgets.  That's not needed for the new form
3387         elements.
3388         (WebCore::HTMLInputElement::defaultEventHandler): let the renderer forward drag, mouse, and wheel events.
3389
3390         * page/FrameView.cpp:
3391         (WebCore::FrameView::updateDragAndDrop): Send drag events to the shadowAncestorNode.
3392         (WebCore::FrameView::dispatchMouseEvent): Send mouse events to the shadowAncestorNode.
3393         (WebCore::FrameView::handleWheelEvent): Send wheel events to the shadowAncestorNode.
3394
3395         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::forwardEvent): forwards events to the inner div element.
3396         * rendering/RenderTextField.h: Added forwardEvent method.
3397
3398         * kwq/WebCoreAXObject.mm:
3399         (-[WebCoreAXObject accessibilityHitTest:]): Gets the  shadowAncestorNode (so we get the input element, and not the inner div).
3400         (-[WebCoreAXObject role]): Gets the right role for text fields, since we no longer get that from AppKit.
3401         (-[WebCoreAXObject roleDescription]): Gets the right description for text fields.
3402
3403 2006-03-21  Darin Adler  <darin@apple.com>
3404
3405         Reviewed by Tim O.
3406
3407         - fixed <rdar://problem/4251515> REGRESSION: listing tag broken in TOT
3408
3409         Test: fast/html/listing.html
3410
3411         * html/HTMLNames.h: Add listing tag.
3412
3413         * bindings/objc/DOM.mm: (+[DOMNode _nodeWith:]):
3414         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::attributedString):
3415         * css/html4.css:
3416         * editing/ReplaceSelectionCommand.cpp: (WebCore::isProbablyBlock):
3417         * editing/TextIterator.cpp:
3418         (WebCore::TextIterator::handleNonTextNode):
3419         (WebCore::TextIterator::exitNode):
3420         (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
3421         * editing/markup.cpp:
3422         (WebCore::startMarkup):
3423         (WebCore::createMarkup):
3424         * html/HTMLElement.cpp: (WebCore::blockTagList):
3425         * html/HTMLElementFactory.cpp:
3426         (WebCore::addTag):
3427         (WebCore::createFunctionMap):
3428         (WebCore::HTMLElementFactory::createHTMLElement):
3429         * html/HTMLParser.cpp: (WebCore::HTMLParser::isAffectedByResidualStyle):
3430         * html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::parseTag):
3431         * khtml/ecma/kjs_html.cpp:
3432         (KJS::JSHTMLElement::classInfo):
3433         (KJS::JSHTMLElement::accessors):
3434         Add listing tags everywhere pre tags are listed.
3435
3436 2006-03-21  Maciej Stachowiak  <mjs@apple.com>
3437
3438         Reviewed by Darin.
3439         
3440         - fix horrible build fallout from my attr fix
3441
3442         * bindings/js/JSCanvasRenderingContext2DBase.cpp:
3443         * bindings/js/JSDOMCore.cpp:
3444         * bindings/js/JSDOMEvents.cpp:
3445         * bindings/js/JSDOMHTML.cpp:
3446         * bindings/scripts/CodeGeneratorJS.pm:
3447
3448 2006-03-21  Beth Dakin  <bdakin@apple.com>
3449
3450         Reviewed by Maciej
3451
3452         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7223 
3453         Reproducible crash when tabbing to a frame that has not been loaded
3454
3455         * bridge/mac/FrameMac.mm:
3456         (WebCore::FrameMac::nextKeyViewInFrame): When a renderer doesn't 
3457         have a widget, skip it in the focus loop.
3458
3459 2006-03-20  Eric Seidel  <eseidel@apple.com>
3460
3461         Reviewed by mjs.
3462
3463         Fix a unsafe static cast causing intermittent crashes.
3464         <rdar://problem/4411663> crash at KXMLCore::RefPtr<WebCore::DOMStringImpl>::get() const + 20 (RefPtr.h:45)
3465
3466         Test: fast/dom/NodeList/item-by-id-with-no-document.html
3467
3468         * dom/NodeList.cpp:
3469         (WebCore::NodeList::itemById): fix unsafe static cast.
3470
3471 2006-03-20  Maciej Stachowiak  <mjs@apple.com>
3472
3473         - touch this file in hopes of fixing build
3474
3475         * bindings/js/JSDOMCore.cpp:
3476
3477 2006-03-20  Maciej Stachowiak  <mjs@apple.com>
3478
3479         Reviewed by Anders.
3480         
3481         - fixed <rdar://problem/4446749> 10.4.4: safari crash in DOM::NamedAttrMapImpl::setNamedItem
3482
3483         * bindings/scripts/CodeGeneratorJS.pm: Add a framework for typechecking method
3484         arguments. For now only use it for parameters of type Attr.
3485         * dom/Element.idl: Arbitrary change to make it regenerate.
3486         * dom/dom_elementimpl.cpp:
3487         (WebCore::Element::setAttributeNode): ASSERT that attr is not null
3488         * khtml/ecma/kjs_dom.cpp:
3489         (KJS::toAttr): add bool ok parameter
3490         * khtml/ecma/kjs_dom.h:
3491
3492 2006-03-20  Eric Seidel  <eseidel@apple.com>
3493
3494         * ksvg2/css/SVGCSSParser.h: Removed unused file.
3495
3496 2006-03-20  Eric Seidel  <eseidel@apple.com>
3497
3498         Reviewed by mjs.
3499
3500         Fix tokenizer crash when document.open() is called from an external script:
3501         <rdar://problem/4483882> REGRESSION (417.8-TOT): crash at yourmovies.com.au in WebCore::HTMLTokenizer::reset() + 92 (7818)
3502
3503         * dom/Document.cpp:
3504         (WebCore::Document::open): Check to make sure the current tokenizer isn't executing a script
3505         * dom/xml_tokenizer.h:
3506         (WebCore::Tokenizer::executingScript): Add a way for others to know if scripts are executing.
3507         * html/HTMLTokenizer.cpp:
3508         (WebCore::HTMLTokenizer::scriptExecution): Wire into existing m_executingScript member var.
3509         * html/HTMLTokenizer.h:
3510         (WebCore::HTMLTokenizer::executingScript):
3511         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
3512         (WebCore::KCanvasFilterQuartz::prepareFilter): Unrelated code cleanup.
3513
3514 2006-03-20  Justin Garcia  <justin.garcia@apple.com>
3515
3516         Reviewed by darin
3517         
3518         <rdar://problem/3997958> 
3519         REGRESSION (Mail): Mail takes half of forever to paste >1500 lines - replaceSelectionWithNode
3520
3521         * dom/Position.cpp:
3522         (WebCore::Position::upstream): Avoid calling previous() when we know that 
3523         it will 1) end the search and 2) be expensive to compute.
3524         (WebCore::Position::downstream): Removed some dead code.
3525         (WebCore::Position::inRenderedText): Return false for offsets inside composed characters.
3526         * dom/Position.h:
3527         * editing/VisiblePosition.cpp:
3528         (WebCore::VisiblePosition::init): If there are two visually equivalent candidates, we choose
3529         the one that occurs first in document order.  Using upstream() to find the one that occurs first is
3530         much faster than the old code.
3531
3532 2006-03-20  Eric Seidel  <eseidel@apple.com>
3533
3534         Reviewed by adele & ggaren.
3535
3536         Added new cachePluginDataIfNecessary function to update
3537         plugins and mimes arrays.  Made sure to call this in
3538         constructor as well as refresh.  The crash was caused by
3539         a refresh rendering a "plugins" object invalid.
3540         Changed existing test case to depend on this new correct behavior.
3541         
3542         <rdar://problem/4480571> Safari crashed at exit at KXMLCore::deleteAllValues + 24
3543
3544         * khtml/ecma/kjs_navigator.cpp:
3545         (KJS::PluginBase::cachePluginDataIfNecessary):
3546         (KJS::PluginBase::PluginBase):
3547         (KJS::PluginBase::~PluginBase):
3548         (KJS::PluginBase::refresh):
3549
3550 2006-03-20  Adele Peterson  <adele@apple.com>
3551
3552         Reviewed by Justin.
3553
3554         * rendering/RenderTextField.cpp: (WebCore::RenderTextField::visiblePositionForIndex):
3555         When calculating the VisiblePosition for the first position in the text field, it
3556         makes more sense for the position to have a downstream affinity.
3557
3558 2006-03-20  Maciej Stachowiak  <mjs@apple.com>
3559
3560         Reviewed by Adele.
3561         
3562         <rdar://problem/4362396> REGRESSION: (417-420) stopPropagation is not working for click event listener (onclick works fine)
3563
3564         * dom/EventTargetNode.cpp:
3565         (WebCore::EventTargetNode::dispatchGenericEvent): make sure to fire capturing listeners
3566         as well as bubbling ones on the target.
3567
3568 2006-03-20  Maciej Stachowiak  <mjs@apple.com>
3569
3570         Reviewed by Darin.
3571         
3572         <rdar://problem/4458568> WebCore should not disclose https referrers
3573
3574         * bridge/mac/WebCoreFrameBridge.mm:
3575         (-[WebCoreFrameBridge canLoadURL:fromReferrer:hideReferrer:]):
3576         Don't send https URLs as referrers to non-secure http sites.
3577
3578 2006-03-20  Darin Adler  <darin@apple.com>
3579
3580         Reviewed by Geoff.
3581
3582         - http://bugzilla.opendarwin.org/show_bug.cgi?id=7867
3583           get rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString
3584
3585         * config.h: Remove the defines for DOM, KDOM, KSVG, khtml, DOMString, QString,
3586         and qstring().
3587
3588         * WebCore.xcodeproj/project.pbxproj: Pass in WebCore instead of KSVG as the
3589         namespace for SVG names.
3590         * ksvg2/scripts/make_names.pl: Made a couple changes to trick the SVG names into
3591         recompiling, since they are in a different namespace now.
3592
3593         * ForwardingHeaders/kjs/identifier.h: Added.
3594
3595         * dom/PlatformWheelEvent.idl: Removed.
3596         * dom/WheelEvent.idl: Added. This file was renamed by accident.
3597
3598         * bindings/js/JSDOMCore.cpp:
3599         * bindings/js/JSDOMEvents.cpp:
3600         * bindings/js/JSDOMHTML.cpp:
3601         * dom/Attr.idl:
3602         * dom/CharacterData.idl:
3603         * dom/DOMImplementation.idl:
3604         * dom/DocumentType.idl:
3605         * dom/Element.idl:
3606         * dom/Entity.idl:
3607         * dom/MutationEvent.idl:
3608         * dom/Notation.idl:
3609         * dom/ProcessingInstruction.idl:
3610         * dom/Text.idl:
3611         * html/CanvasGradient.idl:
3612         * html/CanvasPattern.idl:
3613         * html/CanvasRenderingContext2D.idl:
3614         Touched, to get CodeGeneratorJS.pm changes to take effect.
3615  
3616         * css/CSSGrammar.y:
3617         * css/css_valueimpl.cpp: (WebCore::propertyID):
3618         Changed calls to get CSS property values to use an explicit SVG:: namespace,
3619         to match what the script writes out.
3620
3621         * khtml/ecma/kjs_binding.h: Added forward declaration of WebCore::String.
3622
3623         * ksvg2/scripts/cssmakeget rid of macro hacks for DOM, KDOM, KSVG, khtml, DOMString, QString
3624           props: Made this compile with warnings and strict turned on.
3625         Really just a trick to get properties to recompile, which turned out to be unneeded.
3626         * ksvg2/scripts/cssmakevalues: Ditto.
3627
3628         * ksvg2/svg/SVGAElement.cpp:
3629         (SVGAElement::parseMappedAttribute):
3630         (SVGAElement::defaultEventHandler):
3631         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3632         (SVGAnimateTransformElement::parseMappedAttribute):
3633         * ksvg2/svg/SVGAnimationElement.cpp:
3634         (SVGAnimationElement::parseMappedAttribute):
3635         * ksvg2/svg/SVGClipPathElement.cpp:
3636         (SVGClipPathElement::parseMappedAttribute):
3637         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3638         (SVGComponentTransferFunctionElement::parseMappedAttribute):
3639         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
3640         (SVGExternalResourcesRequired::parseMappedAttribute):
3641         * ksvg2/svg/SVGFEBlendElement.cpp:
3642         (SVGFEBlendElement::parseMappedAttribute):
3643         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3644         (SVGFEColorMatrixElement::parseMappedAttribute):
3645         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3646         (SVGFEComponentTransferElement::parseMappedAttribute):
3647         * ksvg2/svg/SVGFECompositeElement.cpp:
3648         (SVGFECompositeElement::parseMappedAttribute):
3649         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
3650         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
3651         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3652         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
3653         (SVGFEDisplacementMapElement::stringToChannel):
3654         (SVGFEDisplacementMapElement::parseMappedAttribute):
3655         (SVGFEDisplacementMapElement::filterEffect):
3656         * ksvg2/svg/SVGFEDisplacementMapElement.h:
3657         * ksvg2/svg/SVGFEFloodElement.cpp:
3658         (SVGFEFloodElement::parseMappedAttribute):
3659         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3660         (SVGFEGaussianBlurElement::parseMappedAttribute):
3661         * ksvg2/svg/SVGFEImageElement.cpp:
3662         (SVGFEImageElement::parseMappedAttribute):
3663         * ksvg2/svg/SVGFELightElement.cpp:
3664         (SVGFELightElement::parseMappedAttribute):
3665         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
3666         (SVGFEMergeNodeElement::parseMappedAttribute):
3667         * ksvg2/svg/SVGFEOffsetElement.cpp:
3668         (SVGFEOffsetElement::parseMappedAttribute):
3669         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
3670         (SVGFESpecularLightingElement::parseMappedAttribute):
3671         * ksvg2/svg/SVGFETileElement.cpp:
3672         (SVGFETileElement::parseMappedAttribute):
3673         * ksvg2/svg/SVGFETurbulenceElement.cpp:
3674         (SVGFETurbulenceElement::parseMappedAttribute):
3675         * ksvg2/svg/SVGFilterElement.cpp:
3676         (SVGFilterElement::parseMappedAttribute):
3677         * ksvg2/svg/SVGGradientElement.cpp:
3678         (SVGGradientElement::parseMappedAttribute):
3679         * ksvg2/svg/SVGMaskElement.cpp:
3680         (WebCore::SVGMaskElement::parseMappedAttribute):
3681         * ksvg2/svg/SVGPolyElement.cpp:
3682         (SVGPolyElement::parseMappedAttribute):
3683         * ksvg2/svg/SVGStopElement.cpp:
3684         (SVGStopElement::parseMappedAttribute):
3685         * ksvg2/svg/SVGStyledElement.cpp:
3686         (WebCore::SVGStyledElement::parseMappedAttribute):
3687         * ksvg2/svg/SVGTests.cpp:
3688         (WebCore::SVGTests::parseMappedAttribute):
3689         * ksvg2/svg/SVGTextContentElement.cpp:
3690         (SVGTextContentElement::parseMappedAttribute):
3691         * ksvg2/svg/SVGTextPositioningElement.cpp:
3692         (SVGTextPositioningElement::parseMappedAttribute):
3693         * ksvg2/svg/SVGViewElement.cpp:
3694         (SVGViewElement::parseMappedAttribute):
3695         * ksvg2/svg/SVGZoomAndPan.cpp:
3696         (SVGZoomAndPan::parseMappedAttribute):
3697         Changed code that converts an AtomicString to a String to do it in a
3698         more-efficient fashion that works even with all the new conversions.
3699
3700         * page/Frame.cpp:
3701         (WebCore::getString): Removed unneeded .deprecatedString().
3702         (WebCore::Frame::begin): Removed the only use of QSTRING_NULL.
3703
3704         * platform/AtomicString.h: Added conversion to and from KJS::Identifier
3705         and KJS::UString.
3706         * platform/AtomicString.cpp:
3707         (WebCore::AtomicString::add): Added overloads for Identifier and UString.
3708         (WebCore::AtomicString::operator Identifier): Added.
3709         (WebCore::AtomicString::operator UString): Added.
3710
3711         * platform/DeprecatedString.h: Added conversion to and from KJS::Identifier
3712         and KJS::UString.
3713         * platform/DeprecatedString.cpp:
3714         (DeprecatedString::DeprecatedString): Added overloads for Identifier and UString.
3715         (DeprecatedString::operator Identifier): Added.
3716         (DeprecatedString::operator UString): Added.
3717
3718         * platform/PlatformString.h: Added conversion to and from KJS::Identifier
3719         and KJS::UString.
3720         * platform/String.cpp:
3721         (WebCore::String::String): Added overloads for Identifier and UString.
3722         (WebCore::String::operator Identifier): Added.
3723         (WebCore::String::operator UString): Added.
3724
3725         * platform/StringImpl.h: Added constructors that take KJS::Identifier
3726         and KJS::UString
3727         * platform/StringImpl.cpp:
3728         (WebCore::getWordBreakIterator): Changed a use of UChar to say ::UChar
3729         instead because of ambiguity with KJS::UChar.
3730         (WebCore::StringImpl::StringImpl): Added overloads for Identifier and String.
3731
3732         * bindings/js/JSCanvasRenderingContext2DBase.cpp:
3733         (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
3734         (WebCore::toHTMLCanvasStyle):
3735         * bindings/scripts/CodeGeneratorJS.pm:
3736         * bridge/mac/WebCoreFrameBridge.mm:
3737         (aeDescFromJSValue):
3738         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
3739         * dom/QualifiedName.cpp:
3740         (WebCore::QualifiedName::toString):
3741         * khtml/ecma/JSDOMParser.cpp:
3742         (KJS::DOMParserProtoFunc::callAsFunction):
3743         * khtml/ecma/JSXMLHttpRequest.cpp:
3744         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
3745         * khtml/ecma/JSXSLTProcessor.cpp:
3746         (KJS::XSLTProcessorProtoFunc::callAsFunction):
3747         * khtml/ecma/kjs_binding.cpp:
3748         (KJS::valueToStringWithNullCheck):
3749         * khtml/ecma/kjs_css.cpp:
3750         (KJS::cssPropertyName):
3751         (KJS::DOMCSSStyleDeclaration::put):
3752         (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
3753         (KJS::DOMStyleSheetList::nameGetter):
3754         (KJS::DOMStyleSheetList::getOwnPropertySlot):
3755         (KJS::DOMMediaList::put):
3756         (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
3757         (KJS::DOMCSSStyleSheetProtoFunc::callAsFunction):
3758         (KJS::DOMCSSRule::putValueProperty):
3759         (KJS::DOMCSSRuleFunc::callAsFunction):
3760         (KJS::DOMCSSValue::put):
3761         (KJS::DOMCSSPrimitiveValueProtoFunc::callAsFunction):
3762         * khtml/ecma/kjs_dom.cpp:
3763         (KJS::DOMNode::putValueProperty):
3764         (KJS::DOMNode::toString):
3765         (KJS::DOMNodeProtoFunc::callAsFunction):
3766         (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
3767         (KJS::DOMNodeList::nameGetter):
3768         (KJS::DOMNodeList::getOwnPropertySlot):
3769         (KJS::DOMDocument::putValueProperty):
3770         (KJS::DOMDocumentProtoFunc::callAsFunction):
3771         (KJS::DOMElement::attributeGetter):
3772         (KJS::DOMElement::getOwnPropertySlot):
3773         (KJS::DOMNamedNodeMap::nameGetter):
3774         (KJS::DOMNamedNodeMap::getOwnPropertySlot):
3775         (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
3776         (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
3777         * khtml/ecma/kjs_events.cpp:
3778         (KJS::JSAbstractEventListener::handleEvent):
3779         (KJS::DOMEvent::getValueProperty):
3780         (KJS::DOMEventProtoFunc::callAsFunction):
3781         (KJS::DOMUIEventProtoFunc::callAsFunction):
3782         (KJS::DOMMouseEventProtoFunc::callAsFunction):
3783         (KJS::DOMKeyboardEventProtoFunc::callAsFunction):
3784         (KJS::Clipboard::putValueProperty):
3785         (KJS::ClipboardProtoFunc::callAsFunction):
3786         * khtml/ecma/kjs_html.cpp:
3787         (KJS::HTMLDocFunction::callAsFunction):
3788         (KJS::JSHTMLDocument::namedItemGetter):
3789         (KJS::JSHTMLDocument::getOwnPropertySlot):
3790         (KJS::JSHTMLDocument::putValueProperty):
3791         (KJS::JSHTMLElement::framesetNameGetter):
3792         (KJS::JSHTMLElement::getOwnPropertySlot):
3793         (KJS::HTMLElementFunction::callAsFunction):
3794         (KJS::JSHTMLElement::putValueProperty):
3795         (KJS::JSHTMLCollection::callAsFunction):
3796         (KJS::JSHTMLCollection::getNamedItems):
3797         (KJS::HTMLCollectionProtoFunc::callAsFunction):
3798         (KJS::OptionConstructorImp::construct):
3799         * khtml/ecma/kjs_navigator.cpp:
3800         (KJS::Plugins::nameGetter):
3801         (KJS::Plugins::getOwnPropertySlot):
3802         (KJS::MimeTypes::nameGetter):
3803         (KJS::MimeTypes::getOwnPropertySlot):
3804         (KJS::Plugin::nameGetter):
3805         (KJS::Plugin::getOwnPropertySlot):
3806         * khtml/ecma/kjs_proxy.cpp:
3807         (WebCore::KJSProxy::evaluate):
3808         * khtml/ecma/kjs_range.cpp:
3809         (KJS::DOMRangeProtoFunc::callAsFunction):
3810         * khtml/ecma/kjs_views.cpp:
3811         (KJS::DOMAbstractViewProtoFunc::callAsFunction):
3812         * khtml/ecma/kjs_window.cpp:
3813         (KJS::parseModalDialogFeatures):
3814         (KJS::showModalDialog):
3815         (KJS::Window::childFrameGetter):
3816         (KJS::Window::namedFrameGetter):
3817         (KJS::Window::namedItemGetter):
3818         (KJS::Window::getOwnPropertySlot):
3819         (KJS::Window::put):
3820         (KJS::WindowFunc::callAsFunction):
3821         (KJS::ScheduledAction::execute):
3822         (KJS::Window::installTimeout):
3823         (KJS::FrameArray::nameGetter):
3824         (KJS::FrameArray::getOwnPropertySlot):
3825         (KJS::Location::put):
3826         (KJS::LocationFunc::callAsFunction):
3827         (KJS::SelectionFunc::callAsFunction):
3828         Removed explicit calls to domString(), sometimes replacing with explicit calls to the
3829         String() constructor. Other similar changes for AtomicString and DeprecatedString use.
3830
3831 2006-03-20  Eric Seidel  <eseidel@apple.com>
3832
3833         Reviewed by darin.
3834
3835         Remove many, many uses of DeprecatedString.
3836         Fix various style issues throughout the touched code.
3837
3838         * bindings/objc/DOM.mm:
3839         (-[DOMRange _text]):
3840         * bridge/mac/BrowserExtensionMac.mm:
3841         (WebCore::BrowserExtensionMac::createNewWindow):
3842         * bridge/mac/FrameMac.h:
3843         (WebCore::FrameMac::bridge):
3844         (WebCore::FrameMac::markedTextRange):
3845         (WebCore::Mac):
3846         * bridge/mac/FrameMac.mm:
3847         (WebCore::FrameMac::openURLRequest):
3848         (WebCore::FrameMac::searchForLabelsAboveCell):
3849         (WebCore::FrameMac::searchForLabelsBeforeElement):
3850         (WebCore::FrameMac::matchLabelsAgainstElement):
3851         (WebCore::FrameMac::findString):
3852         (WebCore::FrameMac::submitForm):
3853         (WebCore::FrameMac::urlSelected):
3854         (WebCore::FrameMac::objectContentType):
3855         (WebCore::FrameMac::createPlugin):
3856         (WebCore::FrameMac::createFrame):
3857         (WebCore::FrameMac::setTitle):
3858         (WebCore::FrameMac::setStatusBarText):
3859         (WebCore::FrameMac::advanceToNextMisspelling):
3860         (WebCore::FrameMac::userAgent):
3861         (WebCore::FrameMac::mimeTypeForFileName):
3862         (WebCore::FrameMac::openURLFromPageCache):
3863         (WebCore::FrameMac::incomingReferrer):
3864         (WebCore::FrameMac::attributedString):
3865         (WebCore::FrameMac::overrideMediaType):
3866         (WebCore::FrameMac::shouldClose):
3867         * bridge/mac/WebCoreFrameBridge.mm:
3868         (-[WebCoreFrameBridge _documentTypeString]):
3869         (-[WebCoreFrameBridge selectedString]):
3870         (-[WebCoreFrameBridge stringForRange:]):
3871         (-[WebCoreFrameBridge advanceToNextMisspelling]):
3872         (-[WebCoreFrameBridge advanceToNextMisspellingStartingJustBeforeSelection]):
3873         (-[WebCoreFrameBridge domain]):
3874         * bridge/mac/WebCoreSettings.mm:
3875         (-[WebCoreSettings setStandardFontFamily:]):
3876         (-[WebCoreSettings setFixedFontFamily:]):
3877         (-[WebCoreSettings setSerifFontFamily:]):
3878         (-[WebCoreSettings setSansSerifFontFamily:]):
3879         (-[WebCoreSettings setCursiveFontFamily:]):
3880         (-[WebCoreSettings setFantasyFontFamily:]):
3881         (-[WebCoreSettings setUserStyleSheetLocation:]):
3882         (-[WebCoreSettings setDefaultTextEncoding:]):
3883         * css/css_valueimpl.cpp:
3884         (WebCore::quoteStringIfNeeded):
3885         * css/cssstyleselector.cpp:
3886         (WebCore::CSSStyleSelector::CSSStyleSelector):
3887         (WebCore::CSSStyleSelector::setEncodedURL):
3888         (WebCore::cleanpath):
3889         (WebCore::checkPseudoState):
3890         (WebCore::CSSStyleSelector::styleForElement):
3891         (WebCore::CSSStyleSelector::styleRulesForElement):
3892         (WebCore::convertToLength):
3893         (WebCore::colorForCSSValue):
3894         (WebCore::CSSStyleSelector::applyProperty):
3895         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
3896         * css/cssstyleselector.h:
3897         * dom/CDATASection.cpp:
3898         (WebCore::CDATASection::toString):
3899         * dom/Document.cpp:
3900         (WebCore::Document::recalcStyle):
3901         * dom/Document.h:
3902         (WebCore::Document::baseTarget):
3903         (WebCore::Document::setBaseTarget):
3904         * dom/dom_elementimpl.cpp:
3905         (WebCore::Element::openTagStartToString):
3906         * dom/xml_tokenizer.cpp:
3907         (WebCore::handleElementAttributes):
3908         (WebCore::XMLTokenizer::startElementNs):
3909         * editing/SelectionController.cpp:
3910         (WebCore::SelectionController::type):
3911         * editing/TextIterator.cpp:
3912         (WebCore::TextIterator::advance):
3913         (WebCore::TextIterator::handleTextBox):
3914         (WebCore::TextIterator::handleNonTextNode):
3915         (WebCore::TextIterator::exitNode):
3916         (WebCore::SimplifiedBackwardsTextIterator::advance):
3917         (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
3918         (WebCore::CharacterIterator::advance):
3919         (WebCore::WordAwareIterator::advance):
3920         (WebCore::WordAwareIterator::length):
3921         (WebCore::WordAwareIterator::characters):
3922         (WebCore::CircularSearchBuffer::CircularSearchBuffer):
3923         (WebCore::CircularSearchBuffer::append):
3924         (WebCore::TextIterator::rangeFromLocationAndLength):
3925         (WebCore::findPlainText):
3926         * editing/TextIterator.h:
3927         * html/HTMLFormElement.cpp:
3928         (WebCore::HTMLFormElement::formData):
3929         * khtml/ecma/kjs_navigator.cpp:
3930         (KJS::Navigator::getValueProperty):
3931         * khtml/ecma/kjs_proxy.cpp:
3932         (WebCore::KJSProxy::initScriptIfNeeded):
3933         * khtml/ecma/kjs_window.cpp:
3934         (KJS::Location::getValueProperty):
3935         * ksvg2/misc/KCanvasRenderingStyle.cpp:
3936         (WebCore::KSVGPainterFactory::fillPaintServer):
3937         (WebCore::KSVGPainterFactory::strokePaintServer):
3938         * ksvg2/svg/SVGAngle.cpp:
3939         (SVGAngle::calculate):
3940         (SVGAngle::setValueAsString):
3941         (SVGAngle::valueAsString):
3942         (SVGAngle::convertToSpecifiedUnits):
3943         (SVGAngle::shortestArcBisector):
3944         * ksvg2/svg/SVGAngle.h:
3945         * ksvg2/svg/SVGAnimationElement.cpp:
3946         (SVGAnimationElement::targetElement):
3947         (SVGAnimationElement::parseMappedAttribute):
3948         (SVGAnimationElement::parseClockValue):
3949         (SVGAnimationElement::targetAttribute):
3950         (SVGAnimationElement::setTargetAttribute):
3951         (SVGAnimationElement::detectAnimationMode):
3952         (SVGAnimationElement::calculateCurrentValueItem):
3953         (SVGAnimationElement::calculateRelativeTimePercentage):
3954         * ksvg2/svg/SVGColor.cpp:
3955         (SVGColor::setRGBColor):
3956         * ksvg2/svg/SVGDOMImplementation.cpp:
3957         (svgFeatureSet):
3958         (SVGDOMImplementation::self):
3959         (SVGDOMImplementation::hasFeature):
3960         (SVGDOMImplementation::createDocumentType):
3961         (SVGDOMImplementation::createDocument):
3962         * ksvg2/svg/SVGDOMImplementation.h:
3963         * ksvg2/svg/SVGPaint.cpp:
3964         (SVGPaint::cssText):
3965         * ksvg2/svg/SVGPathSegClosePath.h:
3966         (WebCore::SVGPathSegClosePath::toString):
3967         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
3968         (SVGPreserveAspectRatio::parsePreserveAspectRatio):
3969         (SVGPreserveAspectRatio::getCTM):
3970         * ksvg2/svg/SVGStopElement.cpp:
3971         (SVGStopElement::parseMappedAttribute):
3972         * ksvg2/svg/SVGStyleElement.cpp:
3973         (SVGStyleElement::childrenChanged):
3974         * ksvg2/svg/SVGURIReference.cpp:
3975         (SVGURIReference::getTarget):
3976         * kwq/ClipboardMac.mm:
3977         (WebCore::ClipboardMac::setData):
3978         (WebCore::ClipboardMac::types):
3979         (WebCore::ClipboardMac::setEffectAllowed):
3980         (WebCore::cocoaOpFromIEOp):
3981         (WebCore::IEOpFromCocoaOp):
3982         (WebCore::ClipboardMac::sourceOperation):
3983         (WebCore::ClipboardMac::destinationOperation):
3984         * kwq/KWQCString.cpp:
3985         (DeprecatedCString::append):
3986         * kwq/KWQKHTMLSettings.h:
3987         (KHTMLSettings::stdFontName):
3988         (KHTMLSettings::fixedFontName):
3989         (KHTMLSettings::serifFontName):
3990         (KHTMLSettings::sansSerifFontName):
3991         (KHTMLSettings::cursiveFontName):
3992         (KHTMLSettings::fantasyFontName):
3993         (KHTMLSettings::minFontSize):
3994         (KHTMLSettings::minLogicalFontSize):
3995         (KHTMLSettings::mediumFontSize):
3996         (KHTMLSettings::mediumFixedFontSize):
3997         (KHTMLSettings::autoLoadImages):
3998         (KHTMLSettings::isJavaScriptEnabled):
3999         (KHTMLSettings::JavaScriptCanOpenWindowsAutomatically):
4000         (KHTMLSettings::isJavaEnabled):
4001         (KHTMLSettings::isPluginsEnabled):
4002         (KHTMLSettings::encoding):
4003         (KHTMLSettings::userStyleSheet):
4004         (KHTMLSettings::shouldPrintBackgrounds):
4005         (KHTMLSettings::textAreasAreResizable):
4006         (KHTMLSettings::setStdFontName):
4007         (KHTMLSettings::setFixedFontName):
4008         (KHTMLSettings::setSerifFontName):
4009         (KHTMLSettings::setSansSerifFontName):
4010         (KHTMLSettings::setCursiveFontName):
4011         (KHTMLSettings::setFantasyFontName):
4012         (KHTMLSettings::setMinFontSize):
4013         (KHTMLSettings::setMinLogicalFontSize):
4014         (KHTMLSettings::setMediumFontSize):
4015         (KHTMLSettings::setMediumFixedFontSize):
4016         (KHTMLSettings::setAutoLoadImages):
4017         (KHTMLSettings::setIsJavaScriptEnabled):
4018         (KHTMLSettings::setIsJavaEnabled):
4019         (KHTMLSettings::setArePluginsEnabled):
4020         (KHTMLSettings::setJavaScriptCanOpenWindowsAutomatically):
4021         (KHTMLSettings::setEncoding):
4022         (KHTMLSettings::setUserStyleSheet):
4023         (KHTMLSettings::setShouldPrintBackgrounds):
4024         (KHTMLSettings::setTextAreasAreResizable):
4025         * kwq/KWQLoader.mm:
4026         (KWQServeSynchronousRequest):
4027         * kwq/KWQTextStream.cpp:
4028         (QTextStream::QTextStream):
4029         (QTextStream::operator<<):
4030         (QTextStream::precision):
4031         * kwq/KWQTextStream.h:
4032         * kwq/RenderTreeAsText.cpp:
4033         (operator<<):
4034         (quoteAndEscapeNonPrintables):
4035         (writeTextRun):
4036         (write):
4037         (writeSelection):
4038         * loader/Cache.cpp:
4039         (WebCore::Cache::init):
4040         (WebCore::Cache::requestImage):
4041         (WebCore::Cache::requestStyleSheet):
4042         (WebCore::Cache::preloadStyleSheet):
4043         (WebCore::Cache::requestScript):
4044         (WebCore::Cache::preloadScript):
4045         (WebCore::Cache::requestXSLStyleSheet):
4046         (WebCore::Cache::requestXBLDocument):
4047         (WebCore::Cache::remove):
4048         * loader/Cache.h:
4049         * loader/CachedCSSStyleSheet.cpp:
4050         (WebCore::CachedCSSStyleSheet::error):
4051         * loader/CachedCSSStyleSheet.h:
4052         * loader/CachedImage.cpp:
4053         (WebCore::CachedImage::error):
4054         * loader/CachedImage.h:
4055         * loader/CachedObject.h:
4056         * loader/CachedScript.cpp:
4057         (WebCore::CachedScript::checkNotify):
4058         (WebCore::CachedScript::error):
4059         * loader/CachedScript.h:
4060         * loader/CachedXBLDocument.cpp:
4061         (WebCore::CachedXBLDocument::error):
4062         * loader/CachedXBLDocument.h:
4063         * loader/CachedXSLStyleSheet.cpp:
4064         (WebCore::CachedXSLStyleSheet::error):
4065         * loader/CachedXSLStyleSheet.h:
4066         * loader/DocLoader.cpp:
4067         (WebCore::DocLoader::DocLoader):
4068         (WebCore::DocLoader::~DocLoader):
4069         (WebCore::DocLoader::needReload):
4070         (WebCore::DocLoader::requestImage):
4071         (WebCore::DocLoader::requestStyleSheet):
4072         (WebCore::DocLoader::requestScript):
4073         (WebCore::DocLoader::requestXSLStyleSheet):
4074         (WebCore::DocLoader::requestXBLDocument):
4075         (WebCore::DocLoader::setAutoloadImages):
4076         (WebCore::DocLoader::setShowAnimations):
4077         (WebCore::DocLoader::removeCachedObject):
4078         * loader/loader.cpp:
4079         (WebCore::Loader::receivedAllData):
4080         (WebCore::Loader::receivedResponse):
4081         * page/Frame.cpp:
4082         (WebCore::UserStyleSheetLoader::setStyleSheet):
4083         (WebCore::Frame::didOpenURL):
4084         (WebCore::Frame::setMetaRefreshEnabled):
4085         (WebCore::Frame::setAutoloadImages):
4086         (WebCore::Frame::autoloadImages):
4087         (WebCore::Frame::clear):
4088         (WebCore::Frame::receivedFirstData):
4089         (WebCore::Frame::begin):
4090         (WebCore::Frame::write):
4091         (WebCore::Frame::baseTarget):
4092         (WebCore::Frame::completeURL):
4093         (WebCore::Frame::scheduleRedirection):
4094         (WebCore::Frame::scheduleLocationChange):
4095         (WebCore::Frame::scheduleHistoryNavigation):
4096         (WebCore::Frame::changeLocation):
4097         (WebCore::Frame::redirectionTimerFired):
4098         (WebCore::Frame::encoding):
4099         (WebCore::Frame::gotoAnchor):
4100         (WebCore::Frame::setStandardFont):
4101         (WebCore::Frame::setFixedFont):
4102         (WebCore::Frame::selectedText):
4103         (WebCore::Frame::selection):
4104         (WebCore::Frame::dragCaret):
4105         (WebCore::Frame::setSelection):
4106         (WebCore::Frame::setDragCaret):
4107         (WebCore::Frame::paintCaret):
4108         (WebCore::Frame::paintDragCaret):
4109         (WebCore::Frame::urlSelected):
4110         (WebCore::Frame::requestFrame):
4111         (WebCore::Frame::requestObject):
4112         (WebCore::Frame::shouldUsePlugin):
4113         (WebCore::Frame::loadPlugin):
4114         (WebCore::Frame::loadSubframe):
4115         (WebCore::Frame::submitForm):
4116         (WebCore::Frame::lastModified):
4117         (WebCore::Frame::reparseConfiguration):
4118         (WebCore::Frame::shouldChangeSelection):
4119         (WebCore::Frame::appliedEditing):
4120         (WebCore::Frame::unappliedEditing):
4121         (WebCore::Frame::reappliedEditing):
4122         (WebCore::Frame::executeScript):
4123         (WebCore::updateState):
4124         (WebCore::Frame::isCharacterSmartReplaceExempt):
4125         (WebCore::Frame::openURL):
4126         (WebCore::Frame::didNotOpenURL):
4127         (WebCore::Frame::setEncoding):
4128         (WebCore::Frame::saveInterpreterBuiltins):
4129         (WebCore::Frame::restoreInterpreterBuiltins):
4130         (WebCore::Frame::mutableInstances):
4131         (WebCore::Frame::setPolicyBaseURL):
4132         (WebCore::Frame::addMetaData):
4133         (WebCore::Frame::scrollToAnchor):
4134         (WebCore::Frame::setMediaType):
4135         (WebCore::Frame::highlightAllMatchesForString):
4136         (WebCore::Frame::tree):
4137         * page/Frame.h:
4138         (WebCore::Frame::instances):
4139         * page/FramePrivate.h:
4140         * page/FrameView.cpp:
4141         (WebCore::FrameViewPrivate::FrameViewPrivate):
4142         (WebCore::FrameView::FrameView):
4143         (WebCore::FrameView::~FrameView):
4144         (WebCore::FrameView::init):
4145         (WebCore::FrameView::setMarginWidth):
4146         (WebCore::FrameView::setMarginHeight):
4147         (WebCore::FrameView::adjustViewSize):
4148         (WebCore::FrameView::layout):
4149         (WebCore::FrameView::dispatchDragEvent):
4150         (WebCore::FrameView::scrollTo):
4151         (WebCore::FrameView::setMediaType):
4152         (WebCore::FrameView::mediaType):
4153         (WebCore::FrameView::setResizingFrameSet):
4154         (WebCore::FrameView::setIgnoreWheelEvents):
4155         * page/FrameView.h:
4156         (WebCore::FrameView::frameWidth):
4157         (WebCore::FrameView::marginWidth):
4158         (WebCore::FrameView::marginHeight):
4159         (WebCore::FrameView::ref):
4160         (WebCore::FrameView::deref):
4161         * page/ResourceRequest.h:
4162         (WebCore::ResourceRequest::contentType):
4163         (WebCore::ResourceRequest::setContentType):
4164         * platform/FontFamily.h:
4165         * platform/Image.h:
4166         * platform/KURL.cpp:
4167         (KURL::KURL):
4168         (KURL::parse):
4169         (urlcmp):
4170        &