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