2006-09-15 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2006-09-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
2
3         Reviewed by Adam.
4
5         http://bugzilla.opendarwin.org/show_bug.cgi?id=10864
6         Bug 10864: Linux\GDK build fixes
7
8         * Projects/gdk/webcore-gdk.bkl:
9         * WebCoreSources.bkl:
10         * platform/gdk/FontCacheGdk.cpp:
11         * platform/gdk/FontDataGdk.cpp:
12         (WebCore::FontData::platformInit):
13         * platform/gdk/FontGdk.cpp:
14         (WebCore::Font::drawGlyphs):
15         * platform/gdk/FrameGdk.cpp:
16         (WebCore::FrameGdk::handleGdkEvent):
17         * platform/gdk/FrameGdk.h:
18         * platform/gdk/ImageGdk.cpp: Added.
19         (WebCore::Image::initPlatformData):
20         (WebCore::Image::invalidatePlatformData):
21         (WebCore::Image::loadPlatformResource):
22         (WebCore::Image::supportsType):
23         * platform/gdk/RenderPopupMenuGdk.cpp:
24         (WebCore::RenderPopupMenuGdk::hidePopup):
25         * platform/gdk/RenderPopupMenuGdk.h:
26         * platform/gdk/ScreenGdk.cpp:
27         (WebCore::drawableForPage):
28         (WebCore::screenRect):
29         (WebCore::screenDepth):
30         (WebCore::usableScreenRect):
31         (WebCore::scaleFactor):
32         * platform/gdk/SystemTimeLinux.cpp:
33         (WebCore::currentTime):
34         * platform/gdk/TemporaryLinkStubs.cpp:
35         (FrameGdk::bindingRootObject):
36         (FrameGdk::markMisspellings):
37         (WebCore::screenDepthPerComponent):
38         (WebCore::screenIsMonochrome):
39         (WebCore::fileButtonChooseFileLabel):
40         (WebCore::fileButtonNoFileSelectedLabel):
41         (FrameGdk::shouldChangeSelection):
42         (FrameGdk::respondToChangedSelection):
43         (FrameGdk::respondToChangedContents):
44         (Path::contains):
45         (PlatformScrollBar::PlatformScrollBar):
46         (PlatformScrollBar::~PlatformScrollBar):
47         (PlatformScrollBar::width):
48         (PlatformScrollBar::height):
49         (PlatformScrollBar::setEnabled):
50         (PlatformScrollBar::paint):
51         (PlatformScrollBar::setScrollBarValue):
52         (PlatformScrollBar::setKnobProportion):
53         (PlatformScrollBar::setRect):
54         (ScrollBar::ScrollBar):
55         (FileChooser::FileChooser):
56         (FileChooser::~FileChooser):
57         (FileChooser::openFileChooser):
58         (FileChooser::basenameForWidth):
59         (FileChooser::uploadControlDetaching):
60         (FileChooser::chooseFile):
61         (Icon::Icon):
62         (Icon::~Icon):
63         (Icon::newIconForFile):
64         (Icon::paint):
65         (IconLoader::stopLoading):
66         (IconLoader::startLoading):
67         (IconLoader::createForFrame):
68         (IconDatabase::isIconExpiredForIconURL):
69         (IconDatabase::hasEntryForIconURL):
70         (IconDatabase::sharedIconDatabase):
71         * platform/gdk/WidgetGdk.cpp:
72         * webcore-base.bkl:
73
74 2006-09-15  Nikolas Zimmermann  <zimmermann@kde.org>
75
76         Reviewed by Eric.
77
78         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10835
79         Fix svg memory leaks.
80
81         Reworked SVGList to deal with RefPtr's for ptr types
82         which makes manual refcounting unnecessary, and is much safer.
83
84         Removing all virtual functions (nullItem) from SVGList, and
85         also remove SVGListBase. Switch to a similar concept like
86         Vector/VectorTraits (see new file SVGListTraits.h).
87
88         Credits go to Eric/Maciej for the inspiration.
89
90         * CMakeLists.txt: Add SVGListTraits.cpp to build
91         * WebCore.xcodeproj/project.pbxproj: Ditto.
92         * bindings/scripts/CodeGeneratorJS.pm: Generator changes for SVGTransform/PathSeg/LengthList (now RefPtr based)
93         * kcanvas/RenderSVGText.cpp: Add some get() methods, as SVGLengthList is RefPtr based now.
94         (WebCore::RenderSVGText::translationForAttributes):
95         * ksvg2/svg/SVGAnimateTransformElement.cpp: Add some get() methods, as SVGTransformList is RefPtr based now.
96         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
97         * ksvg2/svg/SVGElementInstanceList.cpp: Be RefPtr based.
98         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
99         * ksvg2/svg/SVGElementInstanceList.h:
100         * ksvg2/svg/SVGLengthList.cpp: Ditto.
101         (WebCore::SVGLengthList::SVGLengthList):
102         * ksvg2/svg/SVGLengthList.h: Ditto.
103         * ksvg2/svg/SVGList.h: Rewrote, as described above.
104         (WebCore::SVGListTypeOperations::nullItem):
105         (WebCore::SVGList::SVGList):
106         (WebCore::SVGList::~SVGList):
107         (WebCore::SVGList::clear):
108         (WebCore::SVGList::getFirst):
109         (WebCore::SVGList::getLast):
110         (WebCore::SVGList::getItem):
111         (WebCore::SVGList::replaceItem):
112         (WebCore::SVGList::removeItem):
113         * ksvg2/svg/SVGListTraits.cpp: Added.
114         * ksvg2/svg/SVGListTraits.h: Added.
115         (WebCore::):
116         * ksvg2/svg/SVGPathElement.cpp: Add some get() methods, as SVGPathSegList is RefPtr based now.
117         (WebCore::SVGPathElement::toPathData):
118         * ksvg2/svg/SVGPathSegList.cpp: Be RefPtr based.
119         (WebCore::SVGPathSegList::SVGPathSegList):
120         * ksvg2/svg/SVGPathSegList.h: Ditto.
121         * ksvg2/svg/SVGTransform.cpp: Style cleanup.
122         (SVGTransform::SVGTransform):
123         * ksvg2/svg/SVGTransformList.cpp: Be RefPtr based.
124         (SVGTransformList::SVGTransformList):
125         (SVGTransformList::createSVGTransformFromMatrix):
126         (SVGTransformList::consolidate):
127         * ksvg2/svg/SVGTransformList.h: Ditto.
128         * ksvg2/svg/SVGTransformable.cpp: Fix RefPtr usage of SVGTransform.
129         (SVGTransformable::parseTransformAttribute):
130
131 2006-09-15  Nikolas Zimmermann  <zimmermann@kde.org>
132
133         Reviewed by eseidel.  Landed by eseidel.
134
135         Fix build on Qt/Linux and implement Frame::addMessageToConsole to
136         be able to see javascript errors for instance.
137
138         * CMakeLists.txt:
139         * platform/qt/FrameQt.h:
140         * platform/qt/FrameQt.cpp: Implement addMessageToConsole.
141         (WebCore::FrameQt::bindingRootObject):
142         * platform/qt/TemporaryLinkStubs.cp
143         (WebCore::IconDatabase::hasEntryForIconURL):
144         (WebCore::IconDatabase::sharedIconDatabase):
145
146 2006-09-15  Sam Weinig  <sam.weinig@gmail.com>
147
148         Reviewed by Tim H.
149
150         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10869
151         Auto-generate the internal methods for the Objective-C bindings
152
153         - Auto-generates the internal method (ie. the _fooBar and _fooBarWith methods)
154           implementations where standard.  For cases where a custom implementation was
155           needed, added a [ObjCNoInternal] extended attribute to the corresponding IDL.
156
157         - Some general cleanup of some of the non-generated bindings, to bring them in-
158           line with what the generated bindings look like.
159
160         * bindings/objc/DOM.mm:
161         (-[DOMNode description]):
162         * bindings/objc/DOMCSS.mm:
163         (-[DOMCSSPrimitiveValue WebCore::]):
164         (-[DOMDocument getComputedStyle::]):
165         (-[DOMDocument getMatchedCSSRules::]):
166         * bindings/objc/DOMEvents.mm:
167         (-[DOMEvent WebCore::]):
168         * bindings/objc/DOMHTML.mm:
169         * bindings/objc/DOMHTMLDocument.mm:
170         (-[DOMHTMLDocument title]):
171         (-[DOMHTMLDocument setTitle:]):
172         (-[DOMHTMLDocument referrer]):
173         (-[DOMHTMLDocument domain]):
174         (-[DOMHTMLDocument URL]):
175         (-[DOMHTMLDocument body]):
176         (-[DOMHTMLDocument setBody:]):
177         (-[DOMHTMLDocument images]):
178         (-[DOMHTMLDocument applets]):
179         (-[DOMHTMLDocument links]):
180         (-[DOMHTMLDocument forms]):
181         (-[DOMHTMLDocument anchors]):
182         (-[DOMHTMLDocument cookie]):
183         (-[DOMHTMLDocument setCookie:]):
184         (-[DOMHTMLDocument open]):
185         (-[DOMHTMLDocument close]):
186         (-[DOMHTMLDocument write:]):
187         (-[DOMHTMLDocument writeln:]):
188         (-[DOMHTMLDocument getElementById:]):
189         (-[DOMHTMLDocument getElementsByName:]):
190         (-[DOMHTMLDocument WebCore::]):
191         (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
192         * bindings/objc/DOMHTMLOptionElement.mm:
193         (-[DOMHTMLOptionElement form]):
194         (-[DOMHTMLOptionElement defaultSelected]):
195         (-[DOMHTMLOptionElement setDefaultSelected:]):
196         (-[DOMHTMLOptionElement text]):
197         (-[DOMHTMLOptionElement index]):
198         (-[DOMHTMLOptionElement disabled]):
199         (-[DOMHTMLOptionElement setDisabled:]):
200         (-[DOMHTMLOptionElement label]):
201         (-[DOMHTMLOptionElement setLabel:]):
202         (-[DOMHTMLOptionElement selected]):
203         (-[DOMHTMLOptionElement setSelected:]):
204         (-[DOMHTMLOptionElement value]):
205         (-[DOMHTMLOptionElement setValue:]):
206         (-[DOMHTMLOptionElement WebCore::]):
207         (+[DOMHTMLOptionElement _HTMLOptionElementWith:WebCore::]):
208         * bindings/objc/DOMInternal.h:
209         * bindings/objc/DOMNode.mm:
210         (-[DOMNode dealloc]):
211         (-[DOMNode finalize]):
212         (-[DOMNode nodeName]):
213         (-[DOMNode nodeValue]):
214         (-[DOMNode setNodeValue:]):
215         (-[DOMNode nodeType]):
216         (-[DOMNode parentNode]):
217         (-[DOMNode childNodes]):
218         (-[DOMNode firstChild]):
219         (-[DOMNode lastChild]):
220         (-[DOMNode previousSibling]):
221         (-[DOMNode nextSibling]):
222         (-[DOMNode attributes]):
223         (-[DOMNode ownerDocument]):
224         (-[DOMNode insertBefore::]):
225         (-[DOMNode replaceChild::]):
226         (-[DOMNode removeChild:]):
227         (-[DOMNode appendChild:]):
228         (-[DOMNode hasChildNodes]):
229         (-[DOMNode cloneNode:]):
230         (-[DOMNode normalize]):
231         (-[DOMNode isSupported::]):
232         (-[DOMNode namespaceURI]):
233         (-[DOMNode prefix]):
234         (-[DOMNode setPrefix:]):
235         (-[DOMNode localName]):
236         (-[DOMNode hasAttributes]):
237         (-[DOMNode isSameNode:]):
238         (-[DOMNode isEqualNode:]):
239         (-[DOMNode isDefaultNamespace:]):
240         (-[DOMNode lookupPrefix:]):
241         (-[DOMNode lookupNamespaceURI:]):
242         (-[DOMNode textContent]):
243         (-[DOMNode setTextContent:]):
244         (-[DOMNode boundingBox]):
245         (-[DOMNode lineBoxRects]):
246         * bindings/objc/DOMObject.mm:
247         (-[DOMObject _init]):
248         * bindings/objc/DOMXPath.mm:
249         (-[DOMNativeXPathNSResolver dealloc]):
250         (-[DOMNativeXPathNSResolver finalize]):
251         (-[DOMNativeXPathNSResolver WebCore::]):
252         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
253         (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
254         (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
255         * bindings/scripts/CodeGeneratorObjC.pm:
256         * bridge/mac/WebCoreFrameBridge.mm:
257         (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
258         (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
259         * css/CSSCharsetRule.idl:
260         * css/CSSFontFaceRule.idl:
261         * css/CSSImportRule.idl:
262         * css/CSSMediaRule.idl:
263         * css/CSSPageRule.idl:
264         * css/CSSPrimitiveValue.idl:
265         * css/CSSRule.idl:
266         * css/CSSStyleRule.idl:
267         * css/CSSStyleSheet.idl:
268         * css/CSSUnknownRule.idl:
269         * css/CSSValue.idl:
270         * css/CSSValueList.idl:
271         * css/StyleSheet.idl:
272         * dom/Event.idl:
273         * dom/KeyboardEvent.idl:
274         * dom/MouseEvent.idl:
275         * dom/MutationEvent.idl:
276         * dom/NodeIterator.idl:
277         * dom/OverflowEvent.idl:
278         * dom/TreeWalker.idl:
279         * dom/UIEvent.idl:
280         * dom/WheelEvent.idl:
281
282 2006-09-15  Adam Roben  <aroben@apple.com>
283
284         Reviewed by timothy.
285
286         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10865
287         New file upload control should match the width of the old one
288
289         Make width of new file upload control match the old one as closely as
290         possible.
291
292         * rendering/RenderFileUploadControl.cpp:
293
294 2006-09-15  Timothy Hatcher  <timothy@apple.com>
295
296         Reviewed by Eric.
297
298         Remove the SVG IDL files from the Copy Resources phase.
299
300         * WebCore.xcodeproj/project.pbxproj:
301
302 2006-09-15  Brady Eidson  <beidson@apple.com>
303
304         Reviewed by Eric Siedel
305
306         Dumped the use of CGColorRef and directly use the floating point data from
307         WebCore::Color
308
309         This fixes the performance regression found between 16285 and 16286
310
311         * platform/mac/FontMac.mm:
312         (WebCore::Font::drawComplexText):
313         (WebCore::Font::drawGlyphs):
314
315 2006-09-14  Mark Rowe  <opendarwin.org@bdash.net.nz>
316
317         Reviewed by Adam.
318
319         http://bugzilla.opendarwin.org/show_bug.cgi?id=10838
320         Bug 10838: REGRESSION: Leaking of WebScriptObjectPrivate
321
322         FrameMac relies on its cleanupPluginObjects being called to perform cleanup.  The virtual
323         Frame::cleanupPluginObjects method is called from Frame's destructor, which results
324         in Frame::cleanupPluginObjects being called rather than FrameMac::cleanupPluginObjects.
325
326         * bridge/mac/FrameMac.mm:
327         (WebCore::FrameMac::~FrameMac): Call cancelAndClear to ensure that FrameMac::cleanupPluginObjects
328         will be called from Frame::clear
329         * page/Frame.cpp:
330         (WebCore::Frame::~Frame): Use cancelAndClear.
331         (WebCore::Frame::cancelAndClear): Move cancellation and clearing into a separate method that
332         FrameMac can use.
333         * page/Frame.h:
334
335 2006-09-14  Brady Eidson  <beidson@apple.com>
336
337         Reviewed by Maciej's rubber stamp
338
339         Exact same fix I just made, but in the other method I horked up
340         Also added a reference to the bugzilla in comments
341
342         * page/Frame.cpp:
343         (WebCore::Frame::endIfNotLoading):
344         (WebCore::Frame::stop):
345
346 2006-09-14  Brady Eidson  <beidson@apple.com>
347
348         Reviewed by Maciej
349
350         Fixed a bad iFrame crash, resolving some of the layout test badness
351
352         * page/Frame.cpp:
353         (WebCore::Frame::endIfNotLoading):
354         - Added a RefPtr to protect the frame itself to prevent its destruction during this method
355
356 2006-09-14  Justin Garcia  <justin.garcia@apple.com>
357
358         Reviewed by harrison
359         
360         <rdar://problem/4655880> Up/Down arrows skip over To Do
361
362         * bridge/mac/WebCoreFrameBridge.mm:
363         (-[WebCoreFrameBridge canDeleteRange:]): Added a FIXME.
364         * dom/Node.cpp: Removed the unused inSameRootEditableElement.
365         * dom/Node.h:
366         * editing/SelectionController.cpp:
367         (WebCore::SelectionController::modify): Added documentboundary to granularities in order test a fix.
368         * editing/visible_units.cpp:
369         (WebCore::previousLinePosition): Use highestEditableRoot so that this function can move from
370         editable content into editable content that's embedded in non-editable content.
371         (WebCore::nextLinePosition): Ditto.
372         (WebCore::startOfEditableContent): Renamed from startOfEditableRoot and use highestEditableRoot.
373         This is the behavior that callers desire.  This fixes Command + Up/Down.
374         (WebCore::endOfEditableContent): Ditto.
375         * editing/visible_units.h:
376
377 2006-09-14  Karthik Kumar  <karthikkumar@gmail.com>
378
379         Reviewed by timothy. Landed by aroben.
380
381         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10856
382         Windows build fixes after r16360
383
384         * WebCore.vcproj/WebCore/WebCore.vcproj: Add loader\icon to
385         AdditionalIncludeDirectories
386         * platform/win/TemporaryLinkStubs.cpp: Add link stubs for IconLoader,
387         IconDatabase
388         (IconLoader::stopLoading):
389         (IconLoader::startLoading):
390         (IconLoader::createForFrame):
391         (IconDatabase::isIconExpiredForIconURL):
392         (IconDatabase::hasEntryForIconURL):
393         (IconDatabase::sharedIconDatabase):
394
395 2006-09-14  Brady Eidson  <beidson@apple.com>
396
397         Part of a build fix for Windows - rest will be working out a mess of temporary link stubs
398
399         * loader/icon/IconLoader.cpp:
400         (IconLoader::receivedAllData):
401         * page/Frame.cpp:
402         * page/FramePrivate.h:
403
404 2006-09-14  Graham Dennis  <graham.dennis@gmail.com>
405
406         Reviewed by Justin Garcia.
407
408         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10726
409           Crash in ApplyStyleCommand::applyRelativeFontStyleChange
410
411         * editing/ApplyStyleCommand.cpp:
412         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Prevent a crash by
413         makeing sure that the 'beyondEnd' node is after the start node.
414
415 2006-09-14  MorganL  <morlmor@yahoo.com>
416
417         Reviewed by Brady.
418
419         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10845
420         Various bugs/crashes in ResourceLoaderWin with local files.
421
422         * platform/ResourceLoaderInternal.h:
423         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
424         * platform/win/ResourceLoaderWin.cpp:
425         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
426         (WebCore::ResourceLoader::fileLoadTimer):
427
428 2006-09-13  Brady Eidson <beidson@apple.com>
429
430         Reviewed by Maciej
431
432         Icon loads now take place in WebCore
433
434         * WebCore.xcodeproj/project.pbxproj:
435         * bridge/BrowserExtension.h:
436         * bridge/mac/BrowserExtensionMac.h:
437         * bridge/mac/BrowserExtensionMac.mm:
438         - Moved enforcement of a Mozilla Favicon extension elsewhere
439         
440         * bridge/mac/FrameMac.h: 
441         * bridge/mac/FrameMac.mm: 
442         (WebCore::FrameMac::originalRequestURL):
443         - Added accessor to "original request URL"
444         
445         * bridge/mac/WebCoreFrameBridge.h: 
446         - Removed methods to set the iconURL as all loading is now done in WebCore
447         - Added call throughs to notify WebKit an Icon is done loading, and a to get the original request URL
448         
449         * html/HTMLLinkElement.cpp: 
450         (WebCore::HTMLLinkElement::process):
451         - Moved enforcement of a Mozilla Favicon extension elsewhere
452         
453         * loader/icon/IconDatabase.cpp:
454         (WebCore::IconDatabase::setIconURLForPageURL):
455         - Changed an ASSERT to correctly handle a sketchy (invalid) situation
456
457         * loader/icon/IconLoader.h: Added.
458         * loader/icon/IconLoader.cpp: Added.
459         (IconLoader::IconLoader):
460         (IconLoader::createForFrame):
461         - Static factory method with a private constructor to enforce 
462           "you MUST have a Frame to create an IconLoader" semantics
463         (IconLoader::~IconLoader):
464         (IconLoader::startLoading):
465         (IconLoader::stopLoading):
466         (IconLoader::receivedData):
467         - ResourceLoaderClient delegate
468         (IconLoader::receivedAllData):
469         - Ditto
470
471         * loader/mac/IconLoaderMac.mm: Added.
472         (IconLoader::receivedResponse):
473         (IconLoader::notifyIconChanged):
474         - For now, these are platform specific methods
475         - One to get the HTTP response code of an icon load
476         - The other to call through to the app when the icon has changed (loaded)
477
478         * page/Frame.h:
479         * page/Frame.cpp:
480         (WebCore::Frame::iconURL):
481         (WebCore::Frame::setIconURL):
482         - Frame objects now have an inherent icon URL and a way to calculate/access it
483         (WebCore::Frame::endIfNotLoading):
484         - This is where we actually kick off the IconLoader
485         (WebCore::Frame::stop):
486         - Added call to stop loading the icon
487
488         * page/FramePrivate.h:
489         (WebCore::FramePrivate::FramePrivate):
490         (WebCore::FramePrivate::~FramePrivate):
491         - Added the icon URL as a private member
492         - Added the IconLoader as a private member, and clean it up on deletion
493
494         * platform/mac/ResourceLoaderMac.mm:
495         (WebCore::ResourceLoader::start):  Added a valuable ASSERT
496
497 2006-09-13  David Hyatt  <hyatt@apple.com>
498
499         Fix for 10841, unable to check checkboxes inside labels.
500
501         Reviewed by xenon, bradee-oh
502
503         * css/html4.css:
504         * dom/Element.cpp:
505         (WebCore::Element::contains):
506         * dom/Element.h:
507         * html/HTMLLabelElement.cpp:
508         (WebCore::HTMLLabelElement::defaultEventHandler):
509
510 2006-09-13  Mark Rowe  <opendarwin.org@bdash.net.nz>
511
512         Reviewed by Adam.
513
514         http://bugzilla.opendarwin.org/show_bug.cgi?id=10834
515         Bug 10834: FileChooser constructor in FileChooserMac appears to overretain m_controller
516
517         * platform/mac/FileChooserMac.mm:
518         (WebCore::FileChooser::FileChooser): Don't over-retain the OpenPanelController.
519
520 2006-09-13  Mark Rowe  <opendarwin.org@bdash.net.nz>
521
522         Reviewed by Eric.
523
524         http://bugzilla.opendarwin.org/show_bug.cgi?id=10836
525         Bug 10836: REGRESSION: Mac implementation of Font::drawGlyphs leaks a CGColorRef
526
527         * platform/mac/FontMac.mm:
528         (WebCore::Font::drawComplexText): Release CGColorRef after use.
529         (WebCore::Font::drawGlyphs): Ditto.
530
531 2006-09-14  Anders Carlsson  <acarlsson@apple.com>
532
533         Try fixing the Win32 build.
534         
535         * bridge/win/FrameWin.h:
536         * platform/win/TemporaryLinkStubs.cpp:
537         (FrameWin::bindingRootObject):
538
539 2006-09-14  Anders Carlsson  <acarlsson@apple.com>
540
541         Reviewed by Tim O.
542
543         Add USE defines for the generic JavaScriptCore bindings as well as NPAPI bindings.
544         
545         * bindings/js/kjs_binding.cpp:
546         (KJS::ScriptInterpreter::createLanguageInstanceForValue):
547         * bindings/js/kjs_dom.cpp:
548         (KJS::getRuntimeObject):
549         * bridge/mac/FrameMac.h:
550         * config.h:
551         * html/HTMLAppletElement.cpp:
552         (WebCore::HTMLAppletElement::~HTMLAppletElement):
553         (WebCore::HTMLAppletElement::detach):
554         * html/HTMLAppletElement.h:
555         * html/HTMLEmbedElement.cpp:
556         (WebCore::HTMLEmbedElement::~HTMLEmbedElement):
557         (WebCore::HTMLEmbedElement::detach):
558         * html/HTMLEmbedElement.h:
559         * html/HTMLObjectElement.cpp:
560         (WebCore::HTMLObjectElement::~HTMLObjectElement):
561         (WebCore::HTMLObjectElement::detach):
562         * html/HTMLObjectElement.h:
563         * html/HTMLPlugInElement.cpp:
564         (WebCore::HTMLPlugInElement::HTMLPlugInElement):
565         (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
566         (WebCore::HTMLPlugInElement::createNPObject):
567         * html/HTMLPlugInElement.h:
568         * page/Frame.h:
569
570 2006-09-13  David Hyatt  <hyatt@apple.com>
571
572         Clean up the XBL and XSLT ifdefs to be consistent with the SVG
573         and XPath ifdefs.  KHTML_NO_XBL is flipped and is now XBL_SUPPORT.
574         KHTML_XSLT is now XSLT_SUPPORT.
575
576         * WebCore.xcodeproj/project.pbxproj:
577         * bindings/js/JSXSLTProcessor.cpp:
578         * bindings/js/JSXSLTProcessor.h:
579         * bindings/js/kjs_window.cpp:
580         (KJS::Window::getValueProperty):
581         * config.h:
582         * css/CSSComputedStyleDeclaration.cpp:
583         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
584         * css/cssparser.cpp:
585         (WebCore::CSSParser::parseValue):
586         * css/cssstyleselector.cpp:
587         (WebCore::CSSStyleSelector::applyProperty):
588         * dom/Document.cpp:
589         (WebCore::Document::Document):
590         (WebCore::Document::~Document):
591         (WebCore::Document::recalcStyleSelector):
592         * dom/Document.h:
593         (WebCore::Document::bindingManager):
594         * dom/Node.cpp:
595         (WebCore::Node::createRendererIfNeeded):
596         * dom/ProcessingInstruction.cpp:
597         (WebCore::ProcessingInstruction::ProcessingInstruction):
598         (WebCore::ProcessingInstruction::checkStyleSheet):
599         (WebCore::ProcessingInstruction::setStyleSheet):
600         * dom/ProcessingInstruction.h:
601         * dom/XMLTokenizer.cpp:
602         (WebCore::XMLTokenizer::processingInstruction):
603         (WebCore::XMLTokenizer::insertErrorMessageBlock):
604         * dom/XMLTokenizer.h:
605         * loader/Cache.cpp:
606         (WebCore::Cache::getStatistics):
607         * loader/Cache.h:
608         * loader/CachedResource.h:
609         (WebCore::CachedResource::):
610         * loader/CachedResourceClient.h:
611         * loader/CachedXBLDocument.cpp:
612         * loader/CachedXBLDocument.h:
613         * loader/CachedXSLStyleSheet.cpp:
614         * loader/CachedXSLStyleSheet.h:
615         * loader/DocLoader.cpp:
616         * loader/DocLoader.h:
617         * rendering/RenderStyle.cpp:
618         (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
619         (WebCore::StyleCSS3NonInheritedData::~StyleCSS3NonInheritedData):
620         (WebCore::StyleCSS3NonInheritedData::operator==):
621         * rendering/RenderStyle.h:
622         * xml/XSLImportRule.cpp:
623         * xml/XSLImportRule.h:
624         * xml/XSLStyleSheet.cpp:
625         * xml/XSLStyleSheet.h:
626         * xml/XSLTProcessor.cpp:
627         * xml/XSLTProcessor.h:
628
629 2006-09-13  Nikolas Zimmermann  <zimmermann@kde.org>
630
631         Reviewed by eseidel.  Landed by eseidel.
632
633         Fix newly introduced memory leaks in SVG.
634         http://bugzilla.opendarwin.org/show_bug.cgi?id=10835
635
636         * ksvg2/svg/SVGList.h:
637         (WebCore::SVGListBase::~SVGListBase):
638         (WebCore::SVGListBase::clearVector):
639         (WebCore::SVGListBase::clear):
640         (WebCore::SVGList::clearVector):
641         (WebCore::):
642         * ksvg2/svg/SVGNumberList.cpp: s/float/double/ - forgot that!
643         (SVGNumberList::SVGNumberList):
644         * ksvg2/svg/SVGNumberList.h: Ditto.
645
646 2006-09-13  MorganL  <morlmor@yahoo.com>
647
648         Reviewed/landed by aroben.
649
650         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10833
651         Windows build needs fixed after move to engine-rendered file upload widget
652
653         * WebCore.vcproj/WebCore/WebCore.vcproj: Add RenderFileUpload files,
654         remove RenderFileButton files
655         * platform/win/TemporaryLinkStubs.cpp: Add stubs for FileChooser, Icon
656         (FileChooser::FileChooser):
657         (FileChooser::~FileChooser):
658         (FileChooser::openFileChooser):
659         (FileChooser::basenameForWidth):
660         (FileChooser::uploadControlDetaching):
661         (FileChooser::chooseFile):
662         (WebCore::fileButtonChooseFileLabel):
663         (WebCore::fileButtonNoFileSelectedLabel):
664         (Icon::Icon):
665         (Icon::~Icon):
666         (Icon::newIconForFile):
667         (Icon::paint):
668
669 2006-09-13  MorganL  <morlmor@yahoo.com>
670
671         Reviewed/landed by aroben.
672
673         Fixes http://bugzilla.opendarwin.org/attachment.cgi?id=10537
674         Webkit WebCore build fails on Windows
675
676         * WebCore.vcproj/WebCore/build-generated-files.sh: export SOURCE_ROOT
677         variable
678
679 2006-09-13  Nikolas Zimmermann  <zimmermann@kde.org>
680
681         Reviewed by Tim H.
682
683         Fix Qt/Linux build.
684
685         * CMakeLists.txt: Change SVGZoomEvent.idl location & add RenderFileUploadControl
686         * platform/Icon.h: Add wtf/Platform.h include
687         * platform/qt/FileChooserQt.cpp: Added as stub. Easy to implement though.
688         (WebCore::FileChooser::FileChooser):
689         (WebCore::FileChooser::~FileChooser):
690         (WebCore::FileChooser::openFileChooser):
691         (WebCore::FileChooser::basenameForWidth):
692         (WebCore::FileChooser::uploadControlDetaching):
693         (WebCore::FileChooser::chooseFile):
694         * platform/qt/IconQt.cpp: Added as stub.
695         (WebCore::Icon::Icon):
696         (WebCore::Icon::~Icon):
697         (WebCore::Icon::newIconForFile):
698         (WebCore::Icon::paint):
699         * platform/qt/TemporaryLinkStubs.cpp: Remove old RenderFileButton code & some new *Labels needed
700         (searchableIndexIntroduction):
701         (fileButtonChooseFileLabel):
702         (fileButtonNoFileSelectedLabel):
703
704 2006-09-12  Adam Roben  <aroben@apple.com>
705
706         Reviewed by eseidel.
707
708         Switch back to passing relative paths to generate-bindings.pl when
709         generating JS bindings.
710
711         * DerivedSources.make: Pass in relative paths to generate-bindings.pl
712         * bindings/scripts/CodeGenerator.pm: Make ScanDirectory never call
713         chdir and always construct absolute paths instead.
714
715 2006-09-12  David Hyatt  <hyatt@apple.com>
716
717         Fix for bug 3244, implement html4 label support.
718
719         Reviewed by mjs, aroben
720
721         Added fast/events/label-focus.html
722
723         * css/html4.css:
724         * html/HTMLLabelElement.cpp:
725         (WebCore::HTMLLabelElement::formElement):
726         (WebCore::HTMLLabelElement::setActive):
727         (WebCore::HTMLLabelElement::setHovered):
728         (WebCore::HTMLLabelElement::defaultEventHandler):
729         * html/HTMLLabelElement.h:
730
731 2006-09-12  Julien Palmas  <julien.palmas@gmail.com>
732
733         Reviewed by darin.  Landed by eseidel.
734
735         * ksvg2/svg/svgpathparser.cpp:
736         (WebCore::SVGPolyParser::parsePoints):
737
738 2006-09-11  Kevin McCullough  <KMcCullough@apple.com>
739
740         Reviewed by Andersca, Maciej, Brady.
741
742         - Implemented intersectsNode in the Range Class
743           to be compliant with Mozilla standard
744
745         * dom/Range.cpp:
746         (WebCore::Range::intersectsNode):
747         * dom/Range.h:
748         * dom/Range.idl:
749
750 2006-09-12  Nikolas Zimmermann  <zimmermann@kde.org>
751
752         Reviewed by eseidel.  Landed by eseidel.
753
754         Test: svg/W3C-SVG-1.1/struct-dom-01-b.svg (fixed)
755         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10826
756         
757         Also finally fixes some long outstanding bugs:
758         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=9190
759         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=9229
760         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10413
761
762         Enable all JavaScript SVG bindings. Builds on Qt/Linux & OSX.
763
764         * CMakeLists.txt:
765         * DerivedSources.make:
766         * WebCore.xcodeproj/project.pbxproj:
767         * bindings/scripts/CodeGenerator.pm:
768         * bindings/scripts/CodeGeneratorJS.pm:
769         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
770         * ksvg2/svg/SVGAElement.idl: Added.
771         * ksvg2/svg/SVGAngle.idl:
772         * ksvg2/svg/SVGAnimateColorElement.idl: Added.
773         * ksvg2/svg/SVGAnimateElement.idl: Added.
774         * ksvg2/svg/SVGAnimateTransformElement.idl: Added.
775         * ksvg2/svg/SVGAnimatedLengthList.idl: Added.
776         * ksvg2/svg/SVGAnimatedNumberList.idl: Added.
777         * ksvg2/svg/SVGAnimatedTransformList.idl: Added.
778         * ksvg2/svg/SVGAnimationElement.idl: Added.
779         * ksvg2/svg/SVGCircleElement.idl: Added.
780         * ksvg2/svg/SVGClipPathElement.idl: Added.
781         * ksvg2/svg/SVGColor.idl:
782         * ksvg2/svg/SVGComponentTransferFunctionElement.idl: Added.
783         * ksvg2/svg/SVGCursorElement.idl: Added.
784         * ksvg2/svg/SVGDefsElement.idl: Added.
785         * ksvg2/svg/SVGDescElement.idl: Added.
786         * ksvg2/svg/SVGEllipseElement.idl: Added.
787         * ksvg2/svg/SVGEvent.idl:
788         * ksvg2/svg/SVGExternalResourcesRequired.idl: Added.
789         * ksvg2/svg/SVGFEBlendElement.idl: Added.
790         * ksvg2/svg/SVGFEColorMatrixElement.idl: Added.
791         * ksvg2/svg/SVGFEComponentTransferElement.idl: Added.
792         * ksvg2/svg/SVGFECompositeElement.idl: Added.
793         * ksvg2/svg/SVGFEDiffuseLightingElement.idl: Added.
794         * ksvg2/svg/SVGFEDisplacementMapElement.idl: Added.
795         * ksvg2/svg/SVGFEDistantLightElement.idl: Added.
796         * ksvg2/svg/SVGFEFloodElement.idl: Added.
797         * ksvg2/svg/SVGFEFuncAElement.idl: Added.
798         * ksvg2/svg/SVGFEFuncBElement.idl: Added.
799         * ksvg2/svg/SVGFEFuncGElement.idl: Added.
800         * ksvg2/svg/SVGFEFuncRElement.idl: Added.
801         * ksvg2/svg/SVGFEGaussianBlurElement.idl: Added.
802         * ksvg2/svg/SVGFEImageElement.idl: Added.
803         * ksvg2/svg/SVGFEMergeElement.idl: Added.
804         * ksvg2/svg/SVGFEMergeNodeElement.idl: Added.
805         * ksvg2/svg/SVGFEOffsetElement.idl: Added.
806         * ksvg2/svg/SVGFEPointLightElement.idl: Added.
807         * ksvg2/svg/SVGFESpecularLightingElement.idl: Added.
808         * ksvg2/svg/SVGFESpotLightElement.idl: Added.
809         * ksvg2/svg/SVGFETileElement.idl: Added.
810         * ksvg2/svg/SVGFETurbulenceElement.idl: Added.
811         * ksvg2/svg/SVGFilterElement.idl: Added.
812         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl: Added.
813         * ksvg2/svg/SVGFitToViewBox.idl: Added.
814         * ksvg2/svg/SVGForeignObjectElement.idl: Added.
815         * ksvg2/svg/SVGGElement.idl: Added.
816         * ksvg2/svg/SVGGradientElement.idl: Added.
817         * ksvg2/svg/SVGImageElement.idl: Added.
818         * ksvg2/svg/SVGLangSpace.idl: Added.
819         * ksvg2/svg/SVGLength.idl:
820         * ksvg2/svg/SVGLengthList.idl: Added.
821         * ksvg2/svg/SVGLineElement.idl: Added.
822         * ksvg2/svg/SVGLinearGradientElement.idl: Added.
823         * ksvg2/svg/SVGLocatable.idl: Added.
824         * ksvg2/svg/SVGMarkerElement.idl: Added.
825         * ksvg2/svg/SVGMaskElement.idl: Added.
826         * ksvg2/svg/SVGNumberList.idl: Added.
827         * ksvg2/svg/SVGPaint.idl: Added.
828         * ksvg2/svg/SVGPathElement.idl:
829         * ksvg2/svg/SVGPathSeg.idl:
830         * ksvg2/svg/SVGPatternElement.idl: Added.
831         * ksvg2/svg/SVGPointList.idl: Added.
832         * ksvg2/svg/SVGPolygonElement.idl: Added.
833         * ksvg2/svg/SVGPolylineElement.idl: Added.
834         * ksvg2/svg/SVGPreserveAspectRatio.idl:
835         * ksvg2/svg/SVGRadialGradientElement.idl: Added.
836         * ksvg2/svg/SVGRectElement.idl: Added.
837         * ksvg2/svg/SVGRenderingIntent.idl: Added.
838         * ksvg2/svg/SVGSVGElement.idl:
839         * ksvg2/svg/SVGScriptElement.idl: Added.
840         * ksvg2/svg/SVGSetElement.idl: Added.
841         * ksvg2/svg/SVGStopElement.idl: Added.
842         * ksvg2/svg/SVGStringList.idl: Added.
843         * ksvg2/svg/SVGStylable.idl: Added.
844         * ksvg2/svg/SVGStyleElement.idl: Added.
845         * ksvg2/svg/SVGSwitchElement.idl: Added.
846         * ksvg2/svg/SVGSymbolElement.idl: Added.
847         * ksvg2/svg/SVGTRefElement.idl: Added.
848         * ksvg2/svg/SVGTSpanElement.idl: Added.
849         * ksvg2/svg/SVGTests.idl: Added.
850         * ksvg2/svg/SVGTextContentElement.idl: Added.
851         * ksvg2/svg/SVGTextElement.idl: Added.
852         * ksvg2/svg/SVGTextPositioningElement.idl: Added.
853         * ksvg2/svg/SVGTitleElement.idl: Added.
854         * ksvg2/svg/SVGTransform.idl:
855         * ksvg2/svg/SVGTransformList.idl: Added.
856         * ksvg2/svg/SVGTransformable.idl: Added.
857         * ksvg2/svg/SVGURIReference.idl: Added.
858         * ksvg2/svg/SVGUnitTypes.idl: Added.
859         * ksvg2/svg/SVGUseElement.idl: Added.
860         * ksvg2/svg/SVGViewElement.idl: Added.
861         * ksvg2/svg/SVGZoomAndPan.idl: Added.
862         * ksvg2/svg/SVGZoomEvent.idl: Added.
863
864 2006-09-12  Adam Roben  <aroben@apple.com>
865
866         Reviewed by timo, ggaren.
867
868         Make Icon ref-counted.
869
870         * platform/FileChooser.h: Store m_icon as a RefPtr instead of
871         auto_ptr.
872         * platform/Icon.h: Inherit from Shared<Icon>
873         * platform/mac/FileChooserMac.mm:
874         (WebCore::FileChooser::chooseFile): Update m_icon usage
875         * platform/mac/IconMac.mm:
876         (WebCore::Icon::newIconForFile): Return a RefPtr instead of an
877         auto_ptr
878
879 === Safari-521.26 ===
880
881 2006-09-12  Nikolas Zimmermann  <zimmermann@kde.org>
882
883         Reviewed by Anders.
884
885         Add exception codes to SVGList functions, adjust all code using it.
886
887         Move SVGPaintType enums from ksvg.h into SVGPaint (needed for js generation)
888         Move SVGUnitTypes enums from ksvg.h into it's own file SVGUnitType.h (ditto)
889         Move SVGRenderingIntent enums from ksvg.h into it's own file SVGRenderingIntent.h (ditto)
890         Move SVGZoomAndPan enums from ksvg.h into SVGSVGElement (ditto)
891         Move SVGFE* related enums into their respecitive classes.
892
893         Fix JSSVGNumber to operator on doubles, instead of floats.
894
895         * ksvg2/bindings/js/JSSVGNumber.cpp:
896         (WebCore::getJSSVGNumber):
897         * ksvg2/bindings/js/JSSVGNumber.h:
898         (WebCore::JSSVGNumber::JSSVGNumber):
899         * ksvg2/css/SVGCSSParser.cpp:
900         (WebCore::CSSParser::parseSVGValue):
901         (WebCore::CSSParser::parseSVGPaint):
902         * ksvg2/css/SVGRenderStyleDefs.cpp:
903         (StyleFillData::operator==):
904         * ksvg2/ksvg.h:
905         * ksvg2/misc/KCanvasRenderingStyle.cpp:
906         (WebCore::KSVGPainterFactory::isFilled):
907         (WebCore::KSVGPainterFactory::fillPaintServer):
908         (WebCore::KSVGPainterFactory::isStroked):
909         (WebCore::KSVGPainterFactory::strokePaintServer):
910         * ksvg2/misc/KSVGTimeScheduler.cpp:
911         (WebCore::SVGTimer::notifyAll):
912         * ksvg2/svg/SVGAnimateColorElement.cpp:
913         (WebCore::SVGAnimateColorElement::handleTimerEvent):
914         * ksvg2/svg/SVGAnimateTransformElement.cpp:
915         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
916         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
917         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
918         (WebCore::SVGAnimateTransformElement::parseTransformValue):
919         * ksvg2/svg/SVGAnimateTransformElement.h:
920         * ksvg2/svg/SVGAnimatedTemplate.h:
921         * ksvg2/svg/SVGAnimationElement.cpp:
922         (SVGAnimationElement::getSimpleDuration):
923         (SVGAnimationElement::parseMappedAttribute):
924         (SVGAnimationElement::setTargetAttribute):
925         * ksvg2/svg/SVGAnimationElement.h:
926         * ksvg2/svg/SVGClipPathElement.cpp:
927         (SVGClipPathElement::SVGClipPathElement):
928         (SVGClipPathElement::parseMappedAttribute):
929         (SVGClipPathElement::canvasResource):
930         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
931         (SVGComponentTransferFunctionElement::transferFunction):
932         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
933         (WebCore::SVGComponentTransferFunctionElement::):
934         * ksvg2/svg/SVGDocument.cpp:
935         (WebCore::SVGDocument::dispatchZoomEvent):
936         (WebCore::SVGDocument::dispatchScrollEvent):
937         * ksvg2/svg/SVGFEBlendElement.cpp:
938         (WebCore::SVGFEBlendElement::parseMappedAttribute):
939         (WebCore::SVGFEBlendElement::filterEffect):
940         * ksvg2/svg/SVGFEBlendElement.h:
941         (WebCore::SVGFEBlendElement::):
942         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
943         (SVGFEColorMatrixElement::parseMappedAttribute):
944         (SVGFEColorMatrixElement::filterEffect):
945         * ksvg2/svg/SVGFEColorMatrixElement.h:
946         (WebCore::SVGFEColorMatrixElement::):
947         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
948         (WebCore::SVGFEComponentTransferElement::parseMappedAttribute):
949         (WebCore::SVGFEComponentTransferElement::filterEffect):
950         * ksvg2/svg/SVGFEComponentTransferElement.h:
951         * ksvg2/svg/SVGFECompositeElement.cpp:
952         (SVGFECompositeElement::parseMappedAttribute):
953         (SVGFECompositeElement::filterEffect):
954         * ksvg2/svg/SVGFECompositeElement.h:
955         (WebCore::SVGFECompositeElement::):
956         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
957         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
958         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
959         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
960         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
961         (SVGFEDisplacementMapElement::parseMappedAttribute):
962         (SVGFEDisplacementMapElement::filterEffect):
963         * ksvg2/svg/SVGFEDisplacementMapElement.h:
964         (WebCore::SVGFEDisplacementMapElement::):
965         * ksvg2/svg/SVGFEFloodElement.cpp:
966         (WebCore::SVGFEFloodElement::parseMappedAttribute):
967         (WebCore::SVGFEFloodElement::filterEffect):
968         * ksvg2/svg/SVGFEFloodElement.h:
969         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
970         (SVGFEGaussianBlurElement::parseMappedAttribute):
971         (SVGFEGaussianBlurElement::filterEffect):
972         * ksvg2/svg/SVGFEGaussianBlurElement.h:
973         * ksvg2/svg/SVGFEMergeElement.cpp:
974         (SVGFEMergeElement::filterEffect):
975         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
976         (SVGFEMergeNodeElement::parseMappedAttribute):
977         * ksvg2/svg/SVGFEMergeNodeElement.h:
978         * ksvg2/svg/SVGFEOffsetElement.cpp:
979         (SVGFEOffsetElement::parseMappedAttribute):
980         (SVGFEOffsetElement::filterEffect):
981         * ksvg2/svg/SVGFEOffsetElement.h:
982         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
983         (SVGFESpecularLightingElement::parseMappedAttribute):
984         (SVGFESpecularLightingElement::filterEffect):
985         * ksvg2/svg/SVGFESpecularLightingElement.h:
986         * ksvg2/svg/SVGFETileElement.cpp:
987         (WebCore::SVGFETileElement::parseMappedAttribute):
988         (WebCore::SVGFETileElement::filterEffect):
989         * ksvg2/svg/SVGFETileElement.h:
990         * ksvg2/svg/SVGFETurbulenceElement.h:
991         (WebCore::SVGFETurbulenceElement::):
992         * ksvg2/svg/SVGFilterElement.cpp:
993         (SVGFilterElement::SVGFilterElement):
994         (SVGFilterElement::parseMappedAttribute):
995         (SVGFilterElement::canvasResource):
996         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
997         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
998         * ksvg2/svg/SVGGradientElement.cpp:
999         (SVGGradientElement::SVGGradientElement):
1000         (SVGGradientElement::parseMappedAttribute):
1001         * ksvg2/svg/SVGGradientElement.h:
1002         (WebCore::SVGGradientElement::):
1003         * ksvg2/svg/SVGHelper.cpp:
1004         (WebCore::SVGHelper::ParseSeperatedList):
1005         * ksvg2/svg/SVGLengthList.cpp:
1006         (WebCore::SVGLengthList::parse):
1007         * ksvg2/svg/SVGLinearGradientElement.cpp:
1008         (SVGLinearGradientElement::buildGradient):
1009         * ksvg2/svg/SVGList.h:
1010         (WebCore::SVGListBase::clear):
1011         (WebCore::SVGListBase::initialize):
1012         (WebCore::SVGListBase::getItem):
1013         (WebCore::SVGListBase::insertItemBefore):
1014         (WebCore::SVGListBase::replaceItem):
1015         (WebCore::SVGListBase::removeItem):
1016         (WebCore::SVGListBase::appendItem):
1017         * ksvg2/svg/SVGLocatable.cpp:
1018         * ksvg2/svg/SVGLocatable.h:
1019         * ksvg2/svg/SVGMarkerElement.h:
1020         (WebCore::SVGMarkerElement::):
1021         * ksvg2/svg/SVGNumberList.cpp:
1022         (SVGNumberList::parse):
1023         * ksvg2/svg/SVGPaint.cpp:
1024         (WebCore::SVGPaint::SVGPaint):
1025         (WebCore::SVGPaint::uri):
1026         (WebCore::SVGPaint::setUri):
1027         (WebCore::SVGPaint::setPaint):
1028         * ksvg2/svg/SVGPaint.h:
1029         (WebCore::SVGPaint::):
1030         * ksvg2/svg/SVGPathElement.cpp:
1031         (WebCore::SVGPathElement::svgMoveTo):
1032         (WebCore::SVGPathElement::svgLineTo):
1033         (WebCore::SVGPathElement::svgLineToHorizontal):
1034         (WebCore::SVGPathElement::svgLineToVertical):
1035         (WebCore::SVGPathElement::svgCurveToCubic):
1036         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
1037         (WebCore::SVGPathElement::svgCurveToQuadratic):
1038         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
1039         (WebCore::SVGPathElement::svgArcTo):
1040         (WebCore::SVGPathElement::svgClosePath):
1041         (WebCore::SVGPathElement::parseMappedAttribute):
1042         (WebCore::SVGPathElement::toPathData):
1043         * ksvg2/svg/SVGPatternElement.cpp:
1044         (WebCore::SVGPatternElement::SVGPatternElement):
1045         (WebCore::SVGPatternElement::parseMappedAttribute):
1046         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1047         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1048         * ksvg2/svg/SVGPolyElement.cpp:
1049         (SVGPolyElement::parseMappedAttribute):
1050         (SVGPolyElement::svgPolyTo):
1051         (SVGPolyElement::notifyAttributeChange):
1052         * ksvg2/svg/SVGPolygonElement.cpp:
1053         (SVGPolygonElement::toPathData):
1054         * ksvg2/svg/SVGPolylineElement.cpp:
1055         (SVGPolylineElement::toPathData):
1056         * ksvg2/svg/SVGRadialGradientElement.cpp:
1057         (WebCore::SVGRadialGradientElement::buildGradient):
1058         * ksvg2/svg/SVGRenderingIntent.h: Added.
1059         (WebCore::SVGRenderingIntent::):
1060         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
1061         (WebCore::SVGRenderingIntent::~SVGRenderingIntent):
1062         * ksvg2/svg/SVGSVGElement.h:
1063         (WebCore::SVGSVGElement::):
1064         * ksvg2/svg/SVGScriptElement.cpp:
1065         (WebCore::SVGScriptElement::type):
1066         (WebCore::SVGScriptElement::setType):
1067         (WebCore::SVGScriptElement::parseMappedAttribute):
1068         * ksvg2/svg/SVGScriptElement.h:
1069         * ksvg2/svg/SVGStringList.cpp:
1070         (WebCore::SVGStringList::reset):
1071         * ksvg2/svg/SVGStyledLocatableElement.cpp:
1072         (SVGStyledLocatableElement::getTransformToElement):
1073         * ksvg2/svg/SVGStyledLocatableElement.h:
1074         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1075         (SVGStyledTransformableElement::parseMappedAttribute):
1076         (SVGStyledTransformableElement::getTransformToElement):
1077         * ksvg2/svg/SVGStyledTransformableElement.h:
1078         * ksvg2/svg/SVGTests.cpp:
1079         (WebCore::SVGTests::hasExtension):
1080         (WebCore::SVGTests::isValid):
1081         * ksvg2/svg/SVGTests.h:
1082         * ksvg2/svg/SVGTextContentElement.cpp:
1083         (SVGTextContentElement::getSubStringLength):
1084         (SVGTextContentElement::getStartPositionOfChar):
1085         (SVGTextContentElement::getEndPositionOfChar):
1086         (SVGTextContentElement::getExtentOfChar):
1087         (SVGTextContentElement::getRotationOfChar):
1088         (SVGTextContentElement::selectSubString):
1089         * ksvg2/svg/SVGTextContentElement.h:
1090         (WebCore::SVGTextContentElement::):
1091         * ksvg2/svg/SVGTextElement.cpp:
1092         (WebCore::SVGTextElement::parseMappedAttribute):
1093         * ksvg2/svg/SVGTextElement.h:
1094         (WebCore::SVGTextElement::getTransformToElement):
1095         * ksvg2/svg/SVGTransform.h:
1096         * ksvg2/svg/SVGTransformList.cpp:
1097         (SVGTransformList::consolidate):
1098         (SVGTransformList::concatenate):
1099         * ksvg2/svg/SVGTransformable.cpp:
1100         (SVGTransformable::parseTransformAttribute):
1101         * ksvg2/svg/SVGUnitTypes.h: Added.
1102         (WebCore::SVGUnitTypes::):
1103         (WebCore::SVGUnitTypes::SVGUnitTypes):
1104         (WebCore::SVGUnitTypes::~SVGUnitTypes):
1105         * ksvg2/svg/SVGUseElement.cpp:
1106         (SVGUseElement::closeRenderer):
1107         * ksvg2/svg/SVGViewElement.h:
1108         (WebCore::SVGViewElement::):
1109         * ksvg2/svg/SVGZoomAndPan.cpp:
1110         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
1111         (WebCore::SVGZoomAndPan::parseMappedAttribute):
1112
1113 2006-09-12  John Sullivan  <sullivan@apple.com>
1114
1115         Reviewed by Adele Peterson.
1116
1117         * bridge/mac/FrameMac.mm:
1118         (WebCore::FrameMac::doTextFieldCommandFromEvent):
1119         Don't call textField:doCommandBySelector: with a nil selector. This was indirectly causing a
1120         (valid) assertion failure in some Safari code.
1121
1122 2006-09-12  David Harrison  <harrison@apple.com>
1123
1124         Reviewed by John Sullivan.
1125
1126         <rdar://problem/4717841> Setting AXFocused to true does not activate the insertion point in text field
1127
1128         * bridge/mac/WebCoreAXObject.mm:
1129         (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
1130         For AXFocus, use focus() if the node is an element, so that selection is set.
1131         Matches tabbing behavior in text fields and text areas.
1132
1133 2006-09-12  Adam Roben  <aroben@apple.com>
1134
1135         Reviewed by adele.
1136
1137         Make uploading work with the new file upload control.
1138
1139         * css/html4.css: Remove unnecessary style (this is already done in
1140         RenderFileUpload.cpp)
1141         * html/HTMLInputElement.cpp: Don't get the button text from the value
1142         attribute for file controls.
1143         (WebCore::HTMLInputElement::valueWithDefault):
1144         * platform/mac/FileChooserMac.mm: Call
1145         RenderFileUploadControl::valueChanged when the user selects a file.
1146         (WebCore::FileChooser::chooseFile):
1147         * rendering/RenderFileUploadControl.cpp: Add valueChanged() method to
1148         update the form and fire the onChange event.
1149         (WebCore::RenderFileUploadControl::valueChanged):
1150         (WebCore::RenderFileUploadControl::updateFromElement):
1151         * rendering/RenderFileUploadControl.h: Add valueChanged() declaration.
1152
1153 2006-09-12  Adam Roben  <aroben@apple.com>
1154
1155         Adding rules to html4.css to style the button in file upload controls.
1156
1157         * css/html4.css:
1158
1159 2006-09-12  Adam Roben  <aroben@apple.com>
1160
1161         Reviewed many times by darin, hyatt.
1162
1163         Switch to new engine-based implementation of <input type="file">
1164
1165         * WebCore.exp: Remove obsolete symbol WebCoreFileButton
1166         * WebCore.xcodeproj/project.pbxproj: Remove files for old widget-based
1167         control, add files for new engine-based control
1168         * css/CSSSelector.cpp: Add support for new
1169         '-webkit-file-upload-button' pseudo element
1170         (WebCore::CSSSelector::extractPseudoType):
1171         * css/CSSSelector.h: Ditto.
1172         (WebCore::CSSSelector::):
1173         * css/cssstyleselector.cpp: Ditto.
1174         (WebCore::CSSStyleSelector::checkOneSelector):
1175         * html/HTMLInputElement.cpp: Send click events to new control
1176         (WebCore::HTMLInputElement::select):
1177         (WebCore::HTMLInputElement::click):
1178         (WebCore::HTMLInputElement::createRenderer):
1179         (WebCore::HTMLInputElement::valueWithDefault):
1180         (WebCore::HTMLInputElement::defaultEventHandler):
1181         * html/HTMLTextFieldInnerElement.h: Add 'virtual' keyword
1182         (WebCore::HTMLTextFieldInnerElement::shadowParentNode):
1183         * platform/FileButton.h: Removed.
1184         * platform/FileChooser.h: Added. This is the replacement for
1185         FileButton.h
1186         (WebCore::FileChooser::filename):
1187         (WebCore::FileChooser::icon):
1188         (WebCore::FileChooser::uploadControl):
1189         (WebCore::FileChooser::document):
1190         * platform/Icon.h: Added new platform-specific class representing a
1191         file icon.
1192         * platform/LocalizedStrings.h:
1193         * platform/mac/FileButtonMac.mm: Removed.
1194         * platform/mac/FileChooserMac.mm: Added. This is the replacement for
1195         FileButtonMac.mm
1196         (-[OpenPanelController initWithFileChooser:]):
1197         (-[OpenPanelController fileChooserDetachingSoon]):
1198         (-[OpenPanelController beginSheet]):
1199         (-[OpenPanelController chooseFilename:]):
1200         (-[OpenPanelController cancel]):
1201         (WebCore::FileChooser::FileChooser):
1202         (WebCore::FileChooser::~FileChooser):
1203         (WebCore::FileChooser::openFileChooser):
1204         (WebCore::FileChooser::basenameForWidth):
1205         (WebCore::FileChooser::uploadControlDetaching):
1206         (WebCore::FileChooser::chooseFile):
1207         * platform/mac/IconMac.mm: Added.
1208         (WebCore::Icon::Icon):
1209         (WebCore::Icon::~Icon):
1210         (WebCore::Icon::newIconForFile):
1211         (WebCore::Icon::paint):
1212         * platform/mac/LocalizedStringsMac.mm: Call across bridge to get
1213         localized strings.
1214         (WebCore::fileButtonChooseFileLabel):
1215         (WebCore::fileButtonNoFileSelectedLabel):
1216         * rendering/RenderButton.cpp: Extract method setText() from
1217         updateFromElement.
1218         (WebCore::RenderButton::updateFromElement):
1219         (WebCore::RenderButton::setText):
1220         * rendering/RenderButton.h: Add declaration for new setText method.
1221         * rendering/RenderFileButton.cpp: Removed.
1222         * rendering/RenderFileButton.h: Removed.
1223         * rendering/RenderFileUploadControl.cpp: Added. This is the
1224         replacement for RenderFileButton.cpp.
1225         (WebCore::RenderFileUploadInnerFileBox::renderName):
1226         (WebCore::HTMLFileUploadInnerButtonElement::isShadowNode):
1227         (WebCore::HTMLFileUploadInnerButtonElement::shadowParentNode):
1228         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
1229         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
1230         (WebCore::RenderFileUploadControl::setStyle):
1231         (WebCore::RenderFileUploadControl::updateIconAndFilename):
1232         (WebCore::RenderFileUploadControl::click):
1233         (WebCore::RenderFileUploadControl::updateFromElement):
1234         (WebCore::RenderFileUploadControl::maxFilenameWidth):
1235         (WebCore::RenderFileUploadControl::createButtonStyle):
1236         (WebCore::RenderFileUploadControl::paintObject):
1237         (WebCore::RenderFileUploadInnerFileBox::RenderFileUploadInnerFileBox):
1238         (WebCore::RenderFileUploadInnerFileBox::setStyle):
1239         (WebCore::RenderFileUploadInnerFileBox::layout):
1240         (WebCore::RenderFileUploadInnerFileBox::setHasIcon):
1241         (WebCore::RenderFileUploadInnerFileBox::setFilename):
1242         (WebCore::RenderFileUploadInnerFileBox::calcMinMaxWidth):
1243         (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
1244         (WebCore::HTMLFileUploadInnerButtonElement::createRenderer):
1245         * rendering/RenderFileUploadControl.h: Added. This is the replacement
1246         for RenderFileButton.h.
1247         (WebCore::RenderFileUploadControl::renderName):
1248         * rendering/RenderStyle.cpp: Add support for
1249         -webkit-file-upload-button pseudo element.
1250         (WebCore::):
1251         (WebCore::pseudoBit):
1252         * rendering/RenderStyle.h: Ditto.
1253         (WebCore::RenderStyle::):
1254
1255 2006-09-12  Anders Carlsson  <acarlsson@apple.com>
1256
1257         Reviewed by John Sullivan.
1258
1259         Do the plugin object cleanup in Frame::clear instead of setView.
1260         
1261         * bridge/mac/FrameMac.h:
1262         * bridge/mac/FrameMac.mm:
1263         (WebCore::FrameMac::setView):
1264         (WebCore::FrameMac::cleanupPluginObjects):
1265         * page/Frame.cpp:
1266         (WebCore::Frame::clear):
1267         * page/Frame.h:
1268
1269 2006-09-12  MorganL  <morlmor@yahoo.com>
1270
1271         Reviewed/landed by aroben.
1272
1273         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10822
1274         windows build is busted
1275
1276         * WebCore.vcproj/WebCore/WebCore.vcproj: Add missing
1277         JSRangeException.{cpp,h} to project
1278
1279 2006-09-12  David Hyatt  <hyatt@apple.com>
1280
1281         Fix fieldsets so that they properly expand to enclose overhanging floats
1282         when the fieldset has auto height.  This is a nifty undocumented behavior
1283         of the fieldset element.  The bug is 3898.
1284
1285         Reviewed by mjs
1286
1287         Added fast/forms/fieldset-with-float.html
1288
1289         * rendering/RenderBlock.cpp:
1290         (WebCore::RenderBlock::layoutBlock):
1291         * rendering/RenderFieldset.h:
1292         (WebCore::RenderFieldset::renderName):
1293         (WebCore::RenderFieldset::expandsToEncloseOverhangingFloats):
1294         * rendering/RenderObject.h:
1295         (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
1296         * rendering/RenderTableCell.h:
1297         (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):
1298
1299 2006-09-11  Eric Seidel  <eric@eseidel.com>
1300
1301         Reviewed by hyatt.
1302         
1303         REGRESSION: When dragging a link on a page, the selected link doesn't display it's name or URL
1304         http://bugzilla.opendarwin.org/show_bug.cgi?id=10819
1305         http://bugzilla.opendarwin.org/show_bug.cgi?id=10814
1306
1307         No test cases were harmed in the coding of the patch.
1308
1309         * platform/mac/WebCoreTextRenderer.mm:
1310         (WebCoreDrawTextAtPoint):
1311
1312 2006-09-11  David Hyatt  <hyatt@apple.com>
1313
1314         Fix for bug 8126, column widths apply to the border boxes of cells.
1315
1316         Reviewed by aroben
1317
1318         * rendering/RenderTableCell.cpp:
1319         (WebCore::RenderTableCell::styleOrColWidth):
1320
1321 2006-09-11  Nikolas Zimmermann  <zimmermann@kde.org>
1322
1323         Reviewed by Adele.
1324
1325         Fix Qt/Linux build.
1326
1327         * CMakeLists.txt: Add dom/RangeException.idl to build & fix feature defines.
1328
1329 2006-09-11  Nikolas Zimmermann  <zimmermann@kde.org>
1330
1331         Reviewed by eseidel.  Landed by eseidel.
1332
1333         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10750
1334
1335         This finally fixes the SVGAnimated* classes JS bindings!
1336
1337         - Move all SVGAnimated*.idl files from ksvg2/bindings/idl/svg to ksvg2/svg
1338         - Adjust XCode/Qt build files to generate the new idl files
1339
1340         - Remove all SVGAnimated* primitives cpp implementations (Angle/Boolean/Color/Enumeration/Integer/Length/
1341                                                                   LengthList/Number/NumberList/PreserveAspectRatio/
1342                                                                   Rect/String/TransformList)
1343
1344         - Remove unneeded methods from CodeGenerator.pm and add new helper function: IsSVGAnimatedType
1345         - Adjust CodeGeneratorJS.pm to the new SVGAnimated* tear-off concept
1346
1347         - Add two new macros: ANIMATED_PROPERTY_EMPTY_DECLARATIONS / ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
1348           This is used to fix multiple-inheritance issues in SVG with properties,
1349           similar like SVGTests::isValid() was fixed.
1350
1351         - Rewrote SVGList using WTF::Vector, instead of DeprecatedPtrList and killed DOMList.
1352           (SVGAnimated*Lists work again now)
1353
1354         - Adjust macros in SVGElement to create the "*Animated" tear-off classes.
1355
1356         - Adjust all SVG classes which use the ANIMATED macros to include the ClassName as first param in the header.
1357
1358         * CMakeLists.txt:
1359         * DerivedSources.make:
1360         * WebCore.xcodeproj/project.pbxproj:
1361         * bindings/scripts/CodeGenerator.pm:
1362         * bindings/scripts/CodeGeneratorJS.pm:
1363         * kcanvas/RenderSVGImage.cpp:
1364         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
1365         (WebCore::RenderSVGImage::paint):
1366         * kcanvas/RenderSVGText.cpp:
1367         (WebCore::RenderSVGText::translationForAttributes):
1368         * ksvg2/ksvg.h:
1369         * ksvg2/misc/SVGDocumentExtensions.h:
1370         (WebCore::FloatRect):
1371         * ksvg2/svg/SVGAElement.h:
1372         * ksvg2/svg/SVGAnimateColorElement.cpp:
1373         * ksvg2/svg/SVGAnimateColorElement.h:
1374         * ksvg2/svg/SVGAnimateTransformElement.h:
1375         * ksvg2/svg/SVGAnimatedTemplate.h:
1376         (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate):
1377         * ksvg2/svg/SVGAnimationElement.h:
1378         * ksvg2/svg/SVGCircleElement.h:
1379         * ksvg2/svg/SVGClipPathElement.h:
1380         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1381         (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
1382         (SVGComponentTransferFunctionElement::transferFunction):
1383         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
1384         * ksvg2/svg/SVGCursorElement.h:
1385         * ksvg2/svg/SVGDefsElement.h:
1386         * ksvg2/svg/SVGElement.h:
1387         * ksvg2/svg/SVGElementInstanceList.cpp:
1388         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
1389         * ksvg2/svg/SVGElementInstanceList.h:
1390         * ksvg2/svg/SVGEllipseElement.h:
1391         * ksvg2/svg/SVGExternalResourcesRequired.h:
1392         * ksvg2/svg/SVGFEBlendElement.h:
1393         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1394         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
1395         (SVGFEColorMatrixElement::parseMappedAttribute):
1396         (SVGFEColorMatrixElement::filterEffect):
1397         * ksvg2/svg/SVGFEColorMatrixElement.h:
1398         * ksvg2/svg/SVGFEComponentTransferElement.h:
1399         * ksvg2/svg/SVGFECompositeElement.h:
1400         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
1401         * ksvg2/svg/SVGFEDisplacementMapElement.h:
1402         * ksvg2/svg/SVGFEFloodElement.h:
1403         * ksvg2/svg/SVGFEGaussianBlurElement.h:
1404         * ksvg2/svg/SVGFEImageElement.h:
1405         * ksvg2/svg/SVGFELightElement.h:
1406         * ksvg2/svg/SVGFEMergeNodeElement.h:
1407         * ksvg2/svg/SVGFEOffsetElement.h:
1408         * ksvg2/svg/SVGFESpecularLightingElement.h:
1409         * ksvg2/svg/SVGFETileElement.h:
1410         * ksvg2/svg/SVGFETurbulenceElement.h:
1411         * ksvg2/svg/SVGFilterElement.h:
1412         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
1413         * ksvg2/svg/SVGFitToViewBox.cpp:
1414         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
1415         (WebCore::SVGFitToViewBox::parseViewBox):
1416         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
1417         * ksvg2/svg/SVGFitToViewBox.h:
1418         * ksvg2/svg/SVGForeignObjectElement.h:
1419         * ksvg2/svg/SVGGElement.h:
1420         * ksvg2/svg/SVGGradientElement.cpp:
1421         (SVGGradientElement::SVGGradientElement):
1422         * ksvg2/svg/SVGGradientElement.h:
1423         * ksvg2/svg/SVGHelper.cpp:
1424         (WebCore::SVGHelper::PercentageOfViewport):
1425         * ksvg2/svg/SVGImageElement.h:
1426         * ksvg2/svg/SVGLength.cpp:
1427         * ksvg2/svg/SVGLengthList.cpp:
1428         (WebCore::SVGLengthList::SVGLengthList):
1429         (WebCore::SVGLengthList::parse):
1430         * ksvg2/svg/SVGLengthList.h:
1431         * ksvg2/svg/SVGLineElement.h:
1432         * ksvg2/svg/SVGLinearGradientElement.h:
1433         * ksvg2/svg/SVGList.h:
1434         (WebCore::SVGListBase::SVGListBase):
1435         (WebCore::SVGListBase::~SVGListBase):
1436         (WebCore::SVGListBase::numberOfItems):
1437         (WebCore::SVGListBase::clear):
1438         (WebCore::SVGListBase::initialize):
1439         (WebCore::SVGListBase::getFirst):
1440         (WebCore::SVGListBase::getLast):
1441         (WebCore::SVGListBase::getItem):
1442         (WebCore::SVGListBase::insertItemBefore):
1443         (WebCore::SVGListBase::replaceItem):
1444         (WebCore::SVGListBase::removeItem):
1445         (WebCore::SVGListBase::appendItem):
1446         (WebCore::SVGList::nullItem):
1447         (WebCore::):
1448         * ksvg2/svg/SVGLocatable.cpp:
1449         * ksvg2/svg/SVGMarkerElement.h:
1450         * ksvg2/svg/SVGMaskElement.h:
1451         * ksvg2/svg/SVGNumberList.cpp:
1452         (SVGNumberList::SVGNumberList):
1453         (SVGNumberList::parse):
1454         * ksvg2/svg/SVGNumberList.h:
1455         * ksvg2/svg/SVGPathElement.cpp:
1456         (WebCore::SVGPathElement::pathSegList):
1457         * ksvg2/svg/SVGPathElement.h:
1458         * ksvg2/svg/SVGPathSegList.cpp:
1459         (WebCore::SVGPathSegList::SVGPathSegList):
1460         * ksvg2/svg/SVGPathSegList.h:
1461         * ksvg2/svg/SVGPatternElement.cpp:
1462         (WebCore::SVGPatternElement::SVGPatternElement):
1463         * ksvg2/svg/SVGPatternElement.h:
1464         * ksvg2/svg/SVGPointList.cpp:
1465         (SVGPointList::SVGPointList):
1466         * ksvg2/svg/SVGPointList.h:
1467         * ksvg2/svg/SVGPolyElement.cpp:
1468         (SVGPolyElement::points):
1469         (SVGPolyElement::svgPolyTo):
1470         (SVGPolyElement::notifyAttributeChange):
1471         * ksvg2/svg/SVGPolyElement.h:
1472         * ksvg2/svg/SVGPolygonElement.cpp:
1473         (SVGPolygonElement::toPathData):
1474         * ksvg2/svg/SVGPolylineElement.cpp:
1475         (SVGPolylineElement::toPathData):
1476         * ksvg2/svg/SVGPreserveAspectRatio.h:
1477         (WebCore::SVGPreserveAspectRatio::):
1478         * ksvg2/svg/SVGRadialGradientElement.h:
1479         * ksvg2/svg/SVGRectElement.h:
1480         * ksvg2/svg/SVGSVGElement.cpp:
1481         (WebCore::SVGSVGElement::SVGSVGElement):
1482         (WebCore::SVGSVGElement::parseMappedAttribute):
1483         (WebCore::SVGSVGElement::createRenderer):
1484         * ksvg2/svg/SVGSVGElement.h:
1485         * ksvg2/svg/SVGScriptElement.h:
1486         * ksvg2/svg/SVGStopElement.h:
1487         * ksvg2/svg/SVGStringList.cpp:
1488         (WebCore::SVGStringList::SVGStringList):
1489         (WebCore::SVGStringList::reset):
1490         * ksvg2/svg/SVGStringList.h:
1491         * ksvg2/svg/SVGStyledElement.h:
1492         * ksvg2/svg/SVGStyledLocatableElement.cpp:
1493         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1494         (SVGStyledTransformableElement::SVGStyledTransformableElement):
1495         * ksvg2/svg/SVGStyledTransformableElement.h:
1496         * ksvg2/svg/SVGSwitchElement.h:
1497         * ksvg2/svg/SVGSymbolElement.h:
1498         * ksvg2/svg/SVGTRefElement.h:
1499         * ksvg2/svg/SVGTests.cpp:
1500         (WebCore::SVGTests::isValid):
1501         * ksvg2/svg/SVGTextContentElement.h:
1502         * ksvg2/svg/SVGTextElement.cpp:
1503         (WebCore::SVGTextElement::SVGTextElement):
1504         * ksvg2/svg/SVGTextElement.h:
1505         * ksvg2/svg/SVGTextPositioningElement.cpp:
1506         (SVGTextPositioningElement::SVGTextPositioningElement):
1507         (SVGTextPositioningElement::parseMappedAttribute):
1508         * ksvg2/svg/SVGTextPositioningElement.h:
1509         * ksvg2/svg/SVGTransformList.cpp:
1510         (SVGTransformList::SVGTransformList):
1511         (SVGTransformList::createSVGTransformFromMatrix):
1512         (SVGTransformList::consolidate):
1513         (SVGTransformList::concatenate):
1514         * ksvg2/svg/SVGTransformList.h:
1515         * ksvg2/svg/SVGURIReference.h:
1516         * ksvg2/svg/SVGUseElement.h:
1517         * ksvg2/svg/SVGViewElement.h:
1518
1519 2006-09-11  Adam Roben  <aroben@apple.com>
1520
1521         Rubberstamped by Adele.
1522
1523         Rename LocalGraphicsContext.{h,mm} to
1524         LocalCurrentGraphicsContext.{h,mm} to match the class name.
1525
1526         * WebCore.xcodeproj/project.pbxproj:
1527         * platform/mac/LocalCurrentGraphicsContext.mm: Added.
1528         * platform/mac/LocalCurrentGraphicsContext.h: Added.
1529         * platform/mac/LocalGraphicsContext.h: Removed.
1530         * platform/mac/LocalGraphicsContext.mm: Removed.
1531         * rendering/RenderThemeMac.mm: Fix #include to match renamed file
1532
1533 2006-09-11  Brady Eidson  <beidson@apple.com>
1534
1535         Build fix
1536
1537         * WebCore.xcodeproj/project.pbxproj:
1538
1539 2006-09-11  Kevin McCullough  <KMcCullough@apple.com>
1540
1541         Reviewed by Darin. 
1542
1543         - Implements comparePoint on the Range class
1544
1545         - Exposes RangeExceptions in JavaScript
1546
1547         * DerivedSources.make:
1548         * WebCore.xcodeproj/project.pbxproj:
1549         * bindings/js/kjs_binding.cpp:
1550         * bindings/objc/DOMInternal.mm:
1551         * dom/Range.cpp:
1552         (WebCore::Range::comparePoint):
1553         (WebCore::Range::compareNode):
1554         * dom/Range.h:
1555         (WebCore::Range::):
1556         * dom/Range.idl:
1557         * dom/RangeException.h: Added.
1558         (WebCore::):
1559         * dom/RangeException.idl: Added.
1560         * page/DOMWindow.idl:
1561
1562 2006-09-11  Adam Roben  <aroben@apple.com>
1563
1564         Reviewed by timo.
1565
1566         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10812
1567         Move LocalGraphicsContext out of RenderThemeMac
1568
1569         * WebCore.xcodeproj/project.pbxproj:
1570         * platform/mac/LocalGraphicsContext.h: Added.
1571         * platform/mac/LocalGraphicsContext.mm: Added.
1572         (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
1573         (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
1574         * rendering/RenderThemeMac.mm:
1575
1576 2006-09-11  Vladimir Olexa  <vladimir.olexa@gmail.com>
1577
1578         Reviewed by Darin.
1579
1580         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10323
1581           REGRESSION: javascript: URL containing '\\' gets passed as '//'
1582
1583         Test: fast/dom/javascript-backslash.html
1584
1585         * platform/KURL.cpp: (WebCore::KURL::init): Don't do backslash
1586         substitution in JavaScript URLs.
1587
1588 2006-09-11  Sam Weinig  <sam.weinig@gmail.com>
1589
1590         Reviewed by Darin and Tim H.
1591
1592         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10792
1593         Remove the [Exclude=LANGUAGE] idiom from IDL's and code generators 
1594         for something better
1595
1596         - Replaces [Exclude=LANGUAGE] idiom with preprocessor #if defined(LANGUAGE)
1597           idiom.
1598
1599         - Assorted whitespace changes to IDL files.
1600
1601         * DerivedSources.make:
1602         * WebCore.xcodeproj/project.pbxproj:
1603         * bindings/objc/DOMEvents.h:
1604         * bindings/scripts/CodeGenerator.pm:
1605         * bindings/scripts/CodeGeneratorJS.pm:
1606         * bindings/scripts/CodeGeneratorObjC.pm:
1607         * css/CSSRule.idl:
1608         * css/CSSStyleDeclaration.idl:
1609         * css/CSSValue.idl:
1610         * dom/DOMImplementation.idl:
1611         * dom/Document.idl:
1612         * dom/Element.idl:
1613         * dom/Event.idl:
1614         * dom/KeyboardEvent.idl:
1615         * dom/MouseEvent.idl:
1616         * dom/NamedNodeMap.idl:
1617         * dom/NodeFilter.idl:
1618         * dom/UIEvent.idl:
1619         * dom/WheelEvent.idl:
1620         * html/HTMLAnchorElement.idl:
1621         * html/HTMLAreaElement.idl:
1622         * html/HTMLDocument.idl:
1623         * html/HTMLElement.idl:
1624         * html/HTMLImageElement.idl:
1625         * html/HTMLInputElement.idl:
1626         * html/HTMLLinkElement.idl:
1627         * html/HTMLOptionsCollection.idl:
1628
1629 2006-09-11  David Hyatt  <hyatt@apple.com>
1630
1631         Fix an unwitting victim of the kMin->min change.  calcBlockMinMaxWidth
1632         was accidentally renamed to calcBlominMaxWidth.
1633
1634         * rendering/RenderBlock.cpp:
1635         (WebCore::RenderBlock::calcMinMaxWidth):
1636         (WebCore::RenderBlock::calcBlockMinMaxWidth):
1637         * rendering/RenderBlock.h:
1638
1639 2006-09-10  David Hyatt  <hyatt@apple.com>
1640
1641         Rework the printer font stuff a little bit so that the Font API doesn't
1642         have to be changed.
1643
1644         Reviewed by eseidel
1645
1646         * WebCore.xcodeproj/project.pbxproj:
1647         * bridge/mac/WebCoreStringTruncator.mm:
1648         (truncateString):
1649         (+[WebCoreStringTruncator widthOfString:font:]):
1650         * platform/Font.cpp:
1651         (WebCore::Font::drawSimpleText):
1652         * platform/Font.h:
1653         * platform/TextStyle.h:
1654         (WebCore::TextStyle::TextStyle):
1655         (WebCore::TextStyle::attemptFontSubstitution):
1656         (WebCore::TextStyle::setRTL):
1657         * platform/mac/FontMac.mm:
1658         (WebCore::m_wordSpacing):
1659         (WebCore::Font::drawGlyphs):
1660         * platform/mac/ListBoxMac.mm:
1661         (itemTextRenderer):
1662         (groupLabelTextRenderer):
1663         (-[WebCoreTableView drawRow:clipRect:]):
1664         * platform/mac/PopUpButtonMac.mm:
1665         (PopUpButton::sizeHint):
1666         * platform/mac/TextFieldMac.mm:
1667         (-[NSSearchFieldCell _addStringToRecentSearches:]):
1668         * platform/mac/WebCoreTextRenderer.mm:
1669         (WebCoreDrawTextAtPoint):
1670         (WebCoreTextFloatWidth):
1671         * rendering/EllipsisBox.cpp:
1672         (WebCore::EllipsisBox::paint):
1673         * rendering/InlineTextBox.cpp:
1674         (WebCore::InlineTextBox::paint):
1675         * rendering/RenderImage.cpp:
1676         (WebCore::RenderImage::paint):
1677         * rendering/RenderListMarker.cpp:
1678         (WebCore::RenderListMarker::paint):
1679
1680 2006-09-10  Brady Eidson  <beidson@apple.com>
1681
1682         Reviewed by Maciej
1683
1684         Small cleanups + future plans
1685
1686         * loader/icon/IconDatabase.cpp:
1687         (WebCore::IconDatabase::open): path separator cleanup
1688         * platform/Image.h: 
1689      
1690 2006-09-10  Brady Eidson  <beidson@apple.com>
1691
1692         Reviewed by Maciej
1693
1694         Added specialized HashTraits
1695
1696         * platform/IntSizeHash.h:
1697
1698 2006-09-10  Brady Eidson  <beidson@apple.com>
1699
1700         Forgetting header #define protection is BAAAAAD
1701         (and re-alphabetized the project file)
1702
1703         * WebCore.xcodeproj/project.pbxproj:
1704         * platform/IntSizeHash.h:
1705
1706 2006-09-10  Brady Eidson  <beidson@apple.com>
1707
1708         Reviewed by Maciej
1709
1710         Moved the custom IntSize hash out of IconDatabase into a more generally useful file
1711
1712         * WebCore.xcodeproj/project.pbxproj:
1713         * loader/icon/IconDatabase.h:
1714         * platform/IntSizeHash.h: Added.
1715
1716 2006-09-10  David Hyatt  <hyatt@apple.com>
1717
1718         Fix for bug 10801, form controls that get styled suddenly lose their
1719         intrinsic margins.  Move the intrinsic margin addition code into
1720         adjustRenderStyle and get it out of the theme code and the old form control
1721         code.
1722
1723         Reviewed by aroben
1724
1725         * css/cssstyleselector.cpp:
1726         (WebCore::addIntrinsicMargins):
1727         (WebCore::CSSStyleSelector::adjustRenderStyle):
1728         * css/html4.css:
1729         * rendering/DeprecatedRenderSelect.h:
1730         (WebCore::DeprecatedRenderSelect::calcReplacedHeight):
1731         * rendering/DeprecatedSlider.h:
1732         * rendering/RenderFormElement.cpp:
1733         (WebCore::RenderFormElement::setStyle):
1734         * rendering/RenderFormElement.h:
1735         * rendering/RenderLayer.cpp:
1736         (WebCore::RenderLayer::resize):
1737         * rendering/RenderThemeMac.h:
1738         * rendering/RenderThemeMac.mm:
1739         (WebCore::RenderThemeMac::adjustButtonStyle):
1740         (WebCore::RenderThemeMac::adjustTextFieldStyle):
1741         (WebCore::RenderThemeMac::adjustTextAreaStyle):
1742         (WebCore::RenderThemeMac::adjustMenuListStyle):
1743         (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
1744         * rendering/RenderThemeWin.cpp:
1745         (WebCore::RenderThemeWin::adjustButtonStyle):
1746         (WebCore::RenderThemeWin::adjustTextFieldStyle):
1747         (WebCore::RenderThemeWin::adjustTextAreaStyle):
1748
1749 2006-09-10  Darin Adler  <darin@apple.com>
1750
1751         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=10547
1752
1753         * manual-tests/target-test.html: Added.
1754         * manual-tests/targeted.html: Added.
1755
1756 2006-09-10  Eric Seidel  <eric@eseidel.com>
1757
1758         Reviewed by darin.
1759         
1760         Remove a bunch more NSGraphicsContext related code.
1761         Add a LocalCurrentGraphicsContext to simplify methods which need to call up into AppKit controls (and thus depend on the [NSGraphicsContext currentContext] being set correctly)
1762         Add an "isPrinting" flag to many of the text drawing functions in order to avoid the need for a GraphicsContext::isPrinting() function.
1763
1764         No tests were harmed in the making of this patch.
1765
1766         * bridge/mac/WebCoreFrameBridge.mm:
1767         (-[WebCoreFrameBridge drawRect:]):
1768         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1769         (WebCore::KRenderingDeviceContextQuartz::cgContext):
1770         (WebCore::KRenderingDeviceQuartz::isBuffered):
1771         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1772         (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
1773         (WebCore::KRenderingDeviceContextQuartz::~KRenderingDeviceContextQuartz):
1774         * kcanvas/device/quartz/QuartzSupport.mm:
1775         * platform/Font.cpp:
1776         (WebCore::Font::drawSimpleText):
1777         (WebCore::Font::drawText):
1778         * platform/Font.h:
1779         * platform/GraphicsContext.cpp:
1780         (WebCore::GraphicsContext::drawText):
1781         * platform/GraphicsContext.h:
1782         * platform/mac/FileButtonMac.mm:
1783         (-[WebFileChooserButton drawRect:]):
1784         * platform/mac/FontMac.mm:
1785         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
1786         (WebCore::ATSULayoutParameters::initialize):
1787         (WebCore::Font::drawComplexText):
1788         (WebCore::Font::drawGlyphs):
1789         * platform/mac/GraphicsContextMac.mm:
1790         (WebCore::GraphicsContext::drawLineForMisspelling):
1791         * platform/mac/ListBoxMac.mm:
1792         (-[WebCoreTableView drawRow:clipRect:]):
1793         * platform/mac/WebCoreTextRenderer.mm:
1794         (WebCoreDrawTextAtPoint):
1795         * rendering/EllipsisBox.cpp:
1796         (WebCore::EllipsisBox::paint):
1797         * rendering/InlineTextBox.cpp:
1798         (WebCore::InlineTextBox::paint):
1799         * rendering/RenderImage.cpp:
1800         (WebCore::RenderImage::paint):
1801         * rendering/RenderListMarker.cpp:
1802         (WebCore::RenderListMarker::paint):
1803         * rendering/RenderThemeMac.mm:
1804         (WebCore::WebCoreNSGraphicsContextBridge::WebCoreNSGraphicsContextBridge):
1805         (WebCore::WebCoreNSGraphicsContextBridge::~WebCoreNSGraphicsContextBridge):
1806         (WebCore::RenderThemeMac::paintButton):
1807         (WebCore::RenderThemeMac::paintTextField):
1808         (WebCore::RenderThemeMac::paintTextArea):
1809
1810 2006-09-09  Steve Falkenburg  <sfalken@apple.com>
1811
1812         Reviewed by aroben.
1813
1814         Fixes to work with string API changes.
1815
1816         * platform/cf/ResourceLoaderCFNet.cpp:
1817         (WebCore::arrayFromFormData):
1818         (WebCore::ResourceLoader::start):
1819         * platform/cf/StringCF.cpp:
1820         * platform/cf/StringImplCF.cpp:
1821
1822 2006-09-09  David Hyatt  <hyatt@apple.com>
1823
1824         Fix for Bugzilla bug 5500, scrollLeft/Top/Width/Height properties not supported
1825         on textarea.  Refactored the DOM getters and setters to go through the renderer
1826         instead of right to the layer.  The renderer functions are virtual so that the
1827         text control can subclass and forward to its anonymous div.
1828
1829         Fix for Bugzilla bug 10719, When positioned objects are sizing using their
1830         containing block width as a guide, they should not ever use the line width like
1831         non-positioned objects do.
1832
1833         Reviewed by aroben
1834
1835         * WebCore.xcodeproj/project.pbxproj:
1836         * dom/Element.cpp:
1837         (WebCore::Element::scrollLeft):
1838         (WebCore::Element::scrollTop):
1839         (WebCore::Element::setScrollLeft):
1840         (WebCore::Element::setScrollTop):
1841         * rendering/RenderBox.cpp:
1842         (WebCore::RenderBox::containingBlockWidthForPositioned):
1843         * rendering/RenderObject.cpp:
1844         (WebCore::RenderObject::clientWidth):
1845         (WebCore::RenderObject::clientHeight):
1846         (WebCore::RenderObject::scrollWidth):
1847         (WebCore::RenderObject::scrollHeight):
1848         (WebCore::RenderObject::scrollLeft):
1849         (WebCore::RenderObject::scrollTop):
1850         (WebCore::RenderObject::setScrollLeft):
1851         (WebCore::RenderObject::setScrollTop):
1852         (WebCore::RenderObject::hasStaticX):
1853         (WebCore::RenderObject::hasStaticY):
1854         * rendering/RenderObject.h:
1855         (WebCore::RenderObject::clientLeft):
1856         (WebCore::RenderObject::clientTop):
1857         * rendering/RenderTextControl.cpp:
1858         (WebCore::RenderTextControl::scrollWidth):
1859         (WebCore::RenderTextControl::scrollHeight):
1860         (WebCore::RenderTextControl::scrollLeft):
1861         (WebCore::RenderTextControl::scrollTop):
1862         (WebCore::RenderTextControl::setScrollLeft):
1863         (WebCore::RenderTextControl::setScrollTop):
1864         * rendering/RenderTextControl.h:
1865
1866 2006-09-09  David Hyatt  <hyatt@apple.com>
1867
1868         Implement support for the WinIE clientLeft and clientTop extensions.
1869
1870         Reviewed by aroben
1871
1872         * dom/Element.cpp:
1873         (WebCore::Element::clientLeft):
1874         (WebCore::Element::clientTop):
1875         * dom/Element.h:
1876         * dom/Element.idl:
1877         * rendering/RenderObject.h:
1878         (WebCore::RenderObject::clientLeft):
1879         (WebCore::RenderObject::clientTop):
1880
1881 2006-09-09  Sam Weinig  <sam.weinig@gmail.com>
1882
1883         Reviewed by Eric.
1884
1885         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10795
1886         Auto-generate the Objective-C DOM XPath bindings
1887
1888         - Auto-generates DOMXPathExpression, DOMXPathNSResolver and DOMXPathResult.
1889
1890         * DerivedSources.make:
1891         * WebCore.xcodeproj/project.pbxproj:
1892         * bindings/objc/DOMPrivate.h:
1893         * bindings/objc/DOMXPath.h:
1894         * bindings/objc/DOMXPath.mm:
1895         * bindings/objc/PublicDOMInterfaces.h:
1896         * xml/XPathExpression.idl:
1897         * xml/XPathNSResolver.idl:
1898         * xml/XPathResult.idl:
1899
1900 2006-09-09  Sam Weinig  <sam.weinig@gmail.com>
1901
1902         Reviewed by Eric.
1903
1904         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10791
1905         Even More Objective-C DOM auto-generation cleanup
1906
1907         - Auto-generate some remaining extension methods for DOMDocument
1908           and DOMCSSStyleDeclaration.
1909
1910         - Split DOMHTMLEmbedElement into it's own files.  It can't be
1911           auto-generated yet because the Objective-C interface is significantly
1912           different from the implementation interface.  Since HTMLEmbedElement
1913           is not in the W3C spec, this is somewhat of a gray area.
1914
1915         - Auto-generate DOMEventListener protocol.
1916
1917         - Clean up the IDL files by separating the extensions from the
1918           specified methods and attributes.
1919
1920         * DerivedSources.make:
1921         * WebCore.xcodeproj/project.pbxproj:
1922         * bindings/objc/DOM.mm:
1923         * bindings/objc/DOMCSS.mm:
1924         * bindings/objc/DOMEventListener.h: Removed.
1925         * bindings/objc/DOMExtensions.h:
1926         * bindings/objc/DOMHTML.h:
1927         * bindings/objc/DOMHTML.mm:
1928         * bindings/objc/DOMHTMLEmbedElement.h: Added.
1929         * bindings/objc/DOMHTMLEmbedElement.mm: Added.
1930         (-[DOMHTMLEmbedElement align]):
1931         (-[DOMHTMLEmbedElement setAlign:]):
1932         (-[DOMHTMLEmbedElement height]):
1933         (-[DOMHTMLEmbedElement setHeight:]):
1934         (-[DOMHTMLEmbedElement name]):
1935         (-[DOMHTMLEmbedElement setName:]):
1936         (-[DOMHTMLEmbedElement src]):
1937         (-[DOMHTMLEmbedElement setSrc:]):
1938         (-[DOMHTMLEmbedElement type]):
1939         (-[DOMHTMLEmbedElement setType:]):
1940         (-[DOMHTMLEmbedElement width]):
1941         (-[DOMHTMLEmbedElement setWidth:]):
1942         * bindings/objc/DOMPrivate.h:
1943         * bindings/objc/PublicDOMInterfaces.h:
1944         * css/CSSStyleDeclaration.idl:
1945         * dom/Document.idl:
1946         * dom/KeyboardEvent.h:
1947         * dom/KeyboardEvent.idl:
1948         * dom/MouseEvent.idl:
1949         * dom/MutationEvent.idl:
1950         * dom/OverflowEvent.idl:
1951         * dom/UIEvent.idl:
1952         * dom/WheelEvent.idl:
1953         * html/HTMLEmbedElement.idl: Added.
1954
1955 2006-09-09  Eric Seidel  <eric@eseidel.com>
1956
1957         Reviewed by Tim H.
1958         
1959         Remove DeprecatedString usage and fix style.
1960         http://bugzilla.opendarwin.org/show_bug.cgi?id=10787
1961
1962         No tests were harmed in the making of this patch.
1963
1964         * kcanvas/KCanvasFilters.cpp:
1965         (WebCore::KCanvasFilterEffect::in):
1966         (WebCore::KCanvasFilterEffect::setIn):
1967         (WebCore::KCanvasFilterEffect::result):
1968         (WebCore::KCanvasFilterEffect::setResult):
1969         (WebCore::KCanvasFEMerge::externalRepresentation):
1970         * kcanvas/KCanvasFilters.h:
1971         (WebCore::KCanvasFEBlend::in2):
1972         (WebCore::KCanvasFEBlend::setIn2):
1973         (WebCore::KCanvasFEComposite::in2):
1974         (WebCore::KCanvasFEComposite::setIn2):
1975         (WebCore::KCanvasFEDisplacementMap::in2):
1976         (WebCore::KCanvasFEDisplacementMap::setIn2):
1977         (WebCore::KCanvasFEMerge::mergeInputs):
1978         (WebCore::KCanvasFEMerge::setMergeInputs):
1979         * kcanvas/KCanvasResources.cpp:
1980         (WebCore::KCanvasResource::idInRegistry):
1981         (WebCore::KCanvasResource::setIdInRegistry):
1982         (WebCore::getResourceById):
1983         * kcanvas/KCanvasResources.h:
1984         * kcanvas/RenderPath.cpp:
1985         (WebCore::RenderPath::getAbsoluteRepaintRect):
1986         (WebCore::RenderPath::paint):
1987         (WebCore::RenderPath::drawMarkersIfNeeded):
1988         * kcanvas/RenderSVGContainer.cpp:
1989         (WebCore::RenderSVGContainer::paint):
1990         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
1991         * kcanvas/RenderSVGImage.cpp:
1992         (WebCore::RenderSVGImage::paint):
1993         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
1994         * kcanvas/RenderSVGText.cpp:
1995         (WebCore::RenderSVGText::paint):
1996         * kcanvas/device/KRenderingPaintServer.h:
1997         (WebCore::KRenderingPaintServer::idInRegistry):
1998         (WebCore::KRenderingPaintServer::setIdInRegistry):
1999         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
2000         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2001         (WebCore::KCanvasFilterQuartz::imageForName):
2002         (WebCore::KCanvasFilterQuartz::setImageForName):
2003         (WebCore::KCanvasFEMergeQuartz::getCIFilter):
2004         * ksvg2/css/SVGCSSStyleSelector.cpp:
2005         (WebCore::CSSStyleSelector::applySVGProperty):
2006         * ksvg2/css/SVGRenderStyle.cpp:
2007         * ksvg2/css/SVGRenderStyle.h:
2008         * ksvg2/css/SVGRenderStyleDefs.h:
2009         * ksvg2/ecma/GlobalObject.cpp:
2010         (GlobalObject::get):
2011         * ksvg2/misc/KSVGTimeScheduler.cpp:
2012         (WebCore::SVGTimer::notifyAll):
2013         * ksvg2/svg/SVGDescElement.cpp:
2014         (WebCore::SVGDescElement::SVGDescElement):
2015         (WebCore::SVGDescElement::description):
2016         * ksvg2/svg/SVGDescElement.h:
2017         * ksvg2/svg/SVGFEBlendElement.cpp:
2018         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
2019         (WebCore::SVGFEBlendElement::filterEffect):
2020         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2021         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2022         (SVGFEColorMatrixElement::filterEffect):
2023         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2024         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
2025         (WebCore::SVGFEComponentTransferElement::filterEffect):
2026         * ksvg2/svg/SVGFECompositeElement.cpp:
2027         (SVGFECompositeElement::SVGFECompositeElement):
2028         (SVGFECompositeElement::filterEffect):
2029         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2030         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
2031         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2032         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2033         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
2034         (SVGFEDisplacementMapElement::filterEffect):
2035         * ksvg2/svg/SVGFEFloodElement.cpp:
2036         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
2037         (WebCore::SVGFEFloodElement::filterEffect):
2038         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2039         (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
2040         (SVGFEGaussianBlurElement::filterEffect):
2041         * ksvg2/svg/SVGFELightElement.cpp:
2042         * ksvg2/svg/SVGFEMergeElement.cpp:
2043         (SVGFEMergeElement::filterEffect):
2044         * ksvg2/svg/SVGFEOffsetElement.cpp:
2045         (SVGFEOffsetElement::SVGFEOffsetElement):
2046         (SVGFEOffsetElement::filterEffect):
2047         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2048         (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
2049         (SVGFESpecularLightingElement::filterEffect):
2050         * ksvg2/svg/SVGFETileElement.cpp:
2051         (WebCore::SVGFETileElement::SVGFETileElement):
2052         (WebCore::SVGFETileElement::filterEffect):
2053         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2054         (SVGFETurbulenceElement::SVGFETurbulenceElement):
2055         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
2056         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2057         * ksvg2/svg/SVGFitToViewBox.cpp:
2058         (WebCore::SVGFitToViewBox::parseViewBox):
2059         (WebCore::SVGFitToViewBox::parseMappedAttribute):
2060         * ksvg2/svg/SVGFitToViewBox.h:
2061         * ksvg2/svg/SVGLinearGradientElement.cpp:
2062         (SVGLinearGradientElement::buildGradient):
2063         * ksvg2/svg/SVGPatternElement.cpp:
2064         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2065         (WebCore::SVGPatternElement::notifyAttributeChange):
2066         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
2067         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
2068         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
2069         (WebCore::SVGPreserveAspectRatio::getCTM):
2070         * ksvg2/svg/SVGPreserveAspectRatio.h:
2071         * ksvg2/svg/SVGRadialGradientElement.cpp:
2072         (WebCore::SVGRadialGradientElement::buildGradient):
2073         * ksvg2/svg/SVGStyleElement.cpp:
2074         * ksvg2/svg/SVGStyledTransformableElement.cpp:
2075         * ksvg2/svg/SVGViewElement.cpp:
2076         (WebCore::SVGViewElement::SVGViewElement):
2077         (WebCore::SVGViewElement::parseMappedAttribute):
2078         * ksvg2/svg/SVGZoomAndPan.cpp:
2079         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
2080
2081 2006-09-08  Darin Adler  <darin@apple.com>
2082
2083         Reviewed by Tim H.
2084
2085         <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
2086         
2087         Fixes the quoting logic. The previous logic did not account for the
2088         CSS tokenizer's regex character range between * and ~ as valid in URL types.
2089
2090         * css/CSSPrimitiveValue.cpp:
2091         (WebCore::isCSSTokenizerURL):
2092
2093 2006-09-09  Alexey Proskuryakov  <ap@nypop.com>
2094
2095         Reviewed by Darin.
2096
2097         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10759
2098           fast/AppleScript/array.html test failing
2099
2100         * bridge/mac/WebCoreFrameBridge.mm:
2101         (aeDescFromJSValue): Convert integer values to typeSInt32 AE descriptors.
2102
2103 2006-09-08  Eric Seidel  <eric@eseidel.com>
2104
2105         Reviewed by darin.
2106
2107         Replace incorrect fooBaseValue() calls with foo() calls instead.
2108         http://bugzilla.opendarwin.org/show_bug.cgi?id=10746
2109         
2110         With the previously broken animation system, we had both base and anim values
2111         but they were not automatically connected/disconnected when animation started and stopped.
2112         So the animVals were basically never used (since they were always wrong).
2113         Now, animVal and baseVal are handled correctly.
2114         
2115         There are only 3 places in the code where we will ever need to use the BaseValue accessor variants.
2116         1. SVGAnimated* DOM bindings
2117         2. Animation Code
2118         3. parseMappedAttribute implementations
2119
2120         * kcanvas/RenderForeignObject.cpp:
2121         (WebCore::RenderForeignObject::translationForAttributes):
2122         * kcanvas/RenderSVGImage.cpp:
2123         (WebCore::RenderSVGImage::paint):
2124         (WebCore::RenderSVGImage::relativeBBox):
2125         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
2126         (WebCore::RenderSVGImage::translationForAttributes):
2127         * kcanvas/RenderSVGText.cpp:
2128         (WebCore::RenderSVGText::translationForAttributes):
2129         * ksvg2/misc/SVGImageLoader.cpp:
2130         (WebCore::SVGImageLoader::updateFromElement):
2131         * ksvg2/svg/SVGAElement.cpp:
2132         (WebCore::SVGAElement::defaultEventHandler):
2133         * ksvg2/svg/SVGCircleElement.cpp:
2134         (SVGCircleElement::parseMappedAttribute):
2135         (SVGCircleElement::toPathData):
2136         (SVGCircleElement::pushAttributeContext):
2137         (SVGCircleElement::hasPercentageValues):
2138         * ksvg2/svg/SVGClipPathElement.cpp:
2139         (SVGClipPathElement::canvasResource):
2140         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2141         (SVGComponentTransferFunctionElement::transferFunction):
2142         * ksvg2/svg/SVGCursorElement.cpp:
2143         (SVGCursorElement::parseMappedAttribute):
2144         * ksvg2/svg/SVGEllipseElement.cpp:
2145         (WebCore::SVGEllipseElement::parseMappedAttribute):
2146         (WebCore::SVGEllipseElement::toPathData):
2147         (WebCore::SVGEllipseElement::pushAttributeContext):
2148         (WebCore::SVGEllipseElement::hasPercentageValues):
2149         * ksvg2/svg/SVGFEBlendElement.cpp:
2150         (SVGFEBlendElement::filterEffect):
2151         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2152         (SVGFEColorMatrixElement::filterEffect):
2153         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2154         (SVGFEComponentTransferElement::filterEffect):
2155         * ksvg2/svg/SVGFECompositeElement.cpp:
2156         (SVGFECompositeElement::filterEffect):
2157         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2158         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2159         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2160         (SVGFEDisplacementMapElement::filterEffect):
2161         * ksvg2/svg/SVGFEDistantLightElement.cpp:
2162         (WebCore::SVGFEDistantLightElement::lightSource):
2163         * ksvg2/svg/SVGFEFloodElement.cpp:
2164         (SVGFEFloodElement::filterEffect):
2165         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2166         (SVGFEGaussianBlurElement::filterEffect):
2167         * ksvg2/svg/SVGFEImageElement.cpp:
2168         (SVGFEImageElement::parseMappedAttribute):
2169         * ksvg2/svg/SVGFEMergeElement.cpp:
2170         (SVGFEMergeElement::SVGFEMergeElement):
2171         (SVGFEMergeElement::filterEffect):
2172         * ksvg2/svg/SVGFEOffsetElement.cpp:
2173         (SVGFEOffsetElement::filterEffect):
2174         * ksvg2/svg/SVGFEPointLightElement.cpp:
2175         (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
2176         (WebCore::SVGFEPointLightElement::lightSource):
2177         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2178         (SVGFESpecularLightingElement::filterEffect):
2179         * ksvg2/svg/SVGFESpotLightElement.cpp:
2180         (WebCore::SVGFESpotLightElement::lightSource):
2181         * ksvg2/svg/SVGFETileElement.cpp:
2182         (SVGFETileElement::filterEffect):
2183         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2184         (SVGFETurbulenceElement::filterEffect):
2185         * ksvg2/svg/SVGFilterElement.cpp:
2186         (SVGFilterElement::canvasResource):
2187         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
2188         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2189         * ksvg2/svg/SVGGradientElement.cpp:
2190         (SVGGradientElement::rebuildStops):
2191         * ksvg2/svg/SVGHelper.cpp:
2192         (WebCore::SVGHelper::PercentageOfViewport):
2193         * ksvg2/svg/SVGLineElement.cpp:
2194         (SVGLineElement::toPathData):
2195         (SVGLineElement::pushAttributeContext):
2196         (SVGLineElement::hasPercentageValues):
2197         * ksvg2/svg/SVGLinearGradientElement.cpp:
2198         (SVGLinearGradientElement::buildGradient):
2199         * ksvg2/svg/SVGMarkerElement.cpp:
2200         (WebCore::SVGMarkerElement::canvasResource):
2201         * ksvg2/svg/SVGMaskElement.cpp:
2202         (WebCore::SVGMaskElement::attributeChanged):
2203         (WebCore::SVGMaskElement::drawMaskerContent):
2204         * ksvg2/svg/SVGPatternElement.cpp:
2205         (WebCore::SVGPatternElement::pushAttributeContext):
2206         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2207         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2208         (WebCore::SVGPatternElement::notifyAttributeChange):
2209         (WebCore::SVGPatternElement::getCTM):
2210         * ksvg2/svg/SVGRadialGradientElement.cpp:
2211         (WebCore::SVGRadialGradientElement::buildGradient):
2212         * ksvg2/svg/SVGRectElement.cpp:
2213         (WebCore::SVGRectElement::toPathData):
2214         (WebCore::SVGRectElement::pushAttributeContext):
2215         (WebCore::SVGRectElement::hasPercentageValues):
2216         * ksvg2/svg/SVGSVGElement.cpp:
2217         (WebCore::SVGSVGElement::viewport):
2218         (WebCore::SVGSVGElement::parseMappedAttribute):
2219         (WebCore::SVGSVGElement::getCTM):
2220         (WebCore::SVGSVGElement::getScreenCTM):
2221         (WebCore::SVGSVGElement::createRenderer):
2222         * ksvg2/svg/SVGTRefElement.cpp:
2223         (SVGTRefElement::updateReferencedText):
2224         * ksvg2/svg/SVGUseElement.cpp:
2225         (SVGUseElement::closeRenderer):
2226
2227 2006-09-08  Eric Seidel  <eric@eseidel.com>
2228
2229         Reviewed by beth.
2230
2231         Remove the last vestiges of KDOM (KDOMCSSValue and KDOMCSSValueList)
2232         http://bugzilla.opendarwin.org/show_bug.cgi?id=10778
2233
2234         * ksvg2/css/SVGCSSParser.cpp:
2235         (WebCore::CSSParser::parseSVGValue):
2236         (WebCore::CSSParser::parseSVGStrokeDasharray):
2237         (WebCore::CSSParser::parseSVGPaint):
2238         (WebCore::CSSParser::parseSVGColor):
2239
2240 2006-09-07  Sam Weinig  <sam.weinig@gmail.com>
2241
2242         Reviewed by Darin and Tim H.
2243
2244         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10774
2245         Auto-generate the Objective-C DOM Traversal bindings
2246
2247         - Auto-generates DOMNodeIterator and DOMTreeWalker.
2248
2249         - Splits out DOMNodeFilter into its own file.
2250
2251         * DerivedSources.make:
2252         * WebCore.xcodeproj/project.pbxproj:
2253         * bindings/objc/DOM.mm:
2254         * bindings/objc/DOMNodeFilter.h: Added.
2255         * bindings/objc/DOMTraversal.h:
2256         * bindings/objc/PublicDOMInterfaces.h:
2257         * bindings/scripts/CodeGeneratorObjC.pm:
2258         * dom/NodeFilter.idl:
2259         * dom/NodeIterator.idl:
2260         * dom/Range.idl:
2261         * dom/TreeWalker.idl:
2262
2263 2006-09-07  MorganL  <morlmor@yahoo.com>
2264
2265         Reviewed by Darin, landed by Adam.
2266
2267         Fixes part of bug 10743: Windows build busted.
2268
2269         * platform/win/FontCacheWin.cpp: Add missing #include, set svn:eol-style to native
2270         (WebCore::FontCache::getFontLinkInterface):
2271         (WebCore::FontCache::getFontDataForCharacters):
2272         * platform/win/FontDataWin.cpp: Ditto.
2273         (WebCore::FontData::platformWidthForGlyph):
2274         * platform/win/FontWin.cpp: Add missing #include, band-aid over const problem with GlyphBufferGlyph
2275         (WebCore::Font::drawGlyphs):
2276         * platform/win/ResourceLoaderWin.cpp: Add missing #include, change .ascii() to .latin1()
2277         (WebCore::ResourceLoaderWndProc):
2278         (WebCore::ResourceLoader::start):
2279
2280 2006-09-07  Alexey Proskuryakov  <ap@nypop.com>
2281
2282         Reviewed by Darin.
2283
2284         http://bugzilla.opendarwin.org/show_bug.cgi?id=10753
2285         REGRESSION: The beginning of a CSS file is missing
2286
2287         Test: http/tests/incremental/slow-utf8-css.pl
2288
2289         * loader/Decoder.cpp:
2290         (WebCore::Decoder::checkForCSSCharset): Use the same buffering logic as used for HTML.
2291         (WebCore::Decoder::decode):
2292         * loader/Decoder.h: Added a return value and a movedDataToBuffer parameter to
2293         checkForCSSCharset().
2294
2295 2006-09-07  Sam Weinig  <sam.weinig@gmail.com>
2296
2297         Reviewed by Darin.
2298
2299         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10766
2300         Auto-generate the Objective-C DOM Events bindings
2301
2302         - Auto-generates DOMEvent, DOMKeyboardEvent, DOMMouseEvent, DOMMutationEvent, 
2303           DOMOverflowEvent, DOMUIEvent, and DOMWheelEvent.
2304           
2305         - Splits out DOMEventListener and DOMEventTarget into their own files.
2306
2307         * DerivedSources.make:
2308         * WebCore.xcodeproj/project.pbxproj:
2309         * bindings/objc/DOMEventListener.h: Added.
2310         * bindings/objc/DOMEventTarget.h: Added.
2311         * bindings/objc/DOMEvents.h:
2312         * bindings/objc/DOMEvents.mm:
2313         (-[DOMEvent WebCore::]):
2314         (-[DOMEvent _initWithEvent:WebCore::]):
2315         (+[DOMEvent _eventWith:WebCore::]):
2316         * bindings/objc/DOMEventsNonstandard.mm: Removed.
2317         * bindings/objc/DOMNode.h:
2318         * bindings/objc/PublicDOMInterfaces.h:
2319         * bindings/scripts/CodeGenerator.pm:
2320         * bindings/scripts/CodeGeneratorObjC.pm:
2321         * dom/Event.idl:
2322         * dom/EventListener.idl: Added.
2323         * dom/EventTarget.idl: Added.
2324         * dom/KeyboardEvent.idl:
2325         * dom/MouseEvent.idl:
2326         * dom/UIEvent.idl:
2327         * dom/WheelEvent.idl:
2328
2329 2006-09-07  Rob Buis  <buis@kde.org>
2330
2331         Reviewed by Maciej.
2332
2333         http://bugzilla.opendarwin.org/show_bug.cgi?id=9753
2334         SVG with width and height 100% leaves room for scrollbar on the right.
2335
2336         Relayout children of svg containers, except svg shapes that do not depend on percentages.
2337
2338         * kcanvas/RenderPath.cpp:
2339         (WebCore::RenderPath::hasPercentageValues):
2340         * kcanvas/RenderPath.h:
2341         * kcanvas/RenderSVGContainer.cpp:
2342         (WebCore::RenderSVGContainer::layout):
2343         * ksvg2/svg/SVGCircleElement.cpp:
2344         (SVGCircleElement::hasPercentageValues):
2345         * ksvg2/svg/SVGCircleElement.h:
2346         * ksvg2/svg/SVGEllipseElement.cpp:
2347         (WebCore::SVGEllipseElement::hasPercentageValues):
2348         * ksvg2/svg/SVGEllipseElement.h:
2349         * ksvg2/svg/SVGLineElement.cpp:
2350         (SVGLineElement::hasPercentageValues):
2351         * ksvg2/svg/SVGLineElement.h:
2352         * ksvg2/svg/SVGRectElement.cpp:
2353         (WebCore::SVGRectElement::hasPercentageValues):
2354         * ksvg2/svg/SVGRectElement.h:
2355         * ksvg2/svg/SVGStyledElement.h:
2356         (WebCore::SVGStyledElement::hasPercentageValues):
2357
2358 2006-09-06  Brady Eidson <beidson@apple.com>
2359
2360         Constant renamed in 16250 wasn't changed in each use
2361
2362         * platform/win/GlyphMapWin.cpp:
2363         (WebCore::GlyphMap::fillPage):
2364
2365 2006-09-06  Darin Adler  <darin@apple.com>
2366
2367         Reviewed by Tim Hatcher.
2368
2369         - fix crashes affecting editing layout tests (regressions from my vector change)
2370
2371         * editing/BreakBlockquoteCommand.cpp:
2372         (WebCore::BreakBlockquoteCommand::doApply): Added check for empty vector.
2373         * editing/InsertParagraphSeparatorCommand.cpp:
2374         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
2375
2376 2006-09-06  David Harrison  <harrison@apple.com>
2377
2378         Reviewed and tweaked by Tim H.
2379
2380         <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation
2381
2382         If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
2383         to trigger a search that will include auto activation. No PLT or iBench perf impact.
2384         No layout tests affected. Not testable in an automated way that will work on all systems.
2385
2386         * platform/mac/WebFontCache.mm:
2387         (+[WebFontCache fontWithFamily:traits:size:]):
2388
2389 2006-09-06  Nikolas Zimmermann  <zimmermann@kde.org>
2390
2391         Reviewed and landed by ap.
2392
2393         Fix Qt/Linux build.
2394
2395         * CMakeLists.txt: Take out CharacterData.cpp from build / add new Text* files to build.
2396         * platform/qt/BrowserExtensionQt.cpp: Add wtf/Platform.h include.
2397         * platform/qt/FontCacheQt.cpp: Add FontData.h include.
2398         * platform/qt/FontQt.cpp:
2399         (WebCore::Font::drawGlyphs): Fix constness in reinterpret_cast.
2400         * platform/qt/FrameQt.cpp:
2401         (WebCore::FrameQt::markMisspellings): Change "SelectionController" param type to "Selection".
2402         (WebCore::FrameQt::respondToChangedSelection): Ditto.
2403         (WebCore::FrameQt::respondToChangedContents): Ditto.
2404         (WebCore::FrameQt::shouldChangeSelection): Ditto.
2405         * platform/qt/FrameQt.h: Ditto.
2406         * platform/qt/ImageQt.cpp:
2407         (WebCore::Image::supportsType): Fix String->QString conversion.
2408         * platform/qt/ResourceLoaderManager.cpp:
2409         (WebCore::ResourceLoaderManager::add): Fix String->DeprecatedString conversion.
2410         * platform/qt/ScrollViewCanvasQt.cpp:
2411         (WebCore::ScrollViewCanvasQt::handleKeyEvent): Adapt to SelectionController signature changes.
2412         * platform/qt/qt-encodings.txt: Removed.
2413
2414 2006-09-06  Darin Adler  <darin@apple.com>
2415
2416         Reviewed by Tim Hatcher.
2417
2418         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10675
2419           tweak font-related headers and convert lists to vectors
2420
2421         One major change was to greatly reduce the number of files that include Font.h.
2422         Another was to convert many uses of DeprecatedPtrList/DeprecatedValueList to Vector.
2423
2424         * WebCore.xcodeproj/project.pbxproj: Added TextStyle.h.
2425
2426         * bindings/objc/DOM.mm: (-[DOMElement _font]): Changed to not depend on
2427         Font::getNSFont since a WebCore::Font represents more than one NSFont.
2428
2429         * bindings/objc/DOMNode.mm: (-[DOMNode lineBoxRects]): Updated to use Vector.
2430         * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
2431         * bridge/mac/FrameViewMac.mm: (WebCore::FrameView::updateDashboardRegions): Ditto.
2432         * css/CSSComputedStyleDeclaration.cpp:
2433         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Ditto.
2434         * dom/Document.cpp:
2435         (WebCore::Document::dashboardRegions): Ditto.
2436         (WebCore::Document::setDashboardRegions): Ditto.
2437         * dom/Document.h: Ditto.
2438         * editing/ReplaceSelectionCommand.cpp:
2439         (WebCore::ReplacementFragment::removeUnrenderedNodes): Ditto.
2440         * html/FormDataList.h: Ditto.
2441         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isFocusable): Ditto.
2442         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ditto.
2443         * kcanvas/RenderPath.cpp: (WebCore::RenderPath::absoluteRects): Ditto.
2444         * kcanvas/RenderPath.h: Ditto.
2445         * kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::absoluteRects): Ditto.
2446         * kcanvas/RenderSVGImage.h: Ditto.
2447         * kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): Ditto.
2448         * kcanvas/RenderSVGText.h: Ditto.
2449         * loader/FormData.cpp:
2450         (WebCore::FormData::flatten): Ditto.
2451         (WebCore::FormData::flattenToString): Ditto.
2452         * loader/FormData.h: (WebCore::FormData::elements): Ditto.
2453         * loader/mac/LoaderFunctionsMac.mm: (WebCore::ServeSynchronousRequest): Ditto.
2454         * page/Frame.cpp: (WebCore::Frame::markedTextUnderlines): Ditto.
2455         * page/Frame.h: Ditto.
2456         * page/FramePrivate.h: Ditto.
2457         * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start): Ditto.
2458         * rendering/InlineTextBox.h: Ditto.
2459         * rendering/InlineTextBox.cpp:
2460         (WebCore::InlineTextBox::paint): Ditto.
2461         (WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto.
2462         * rendering/RenderContainer.h: Ditto.
2463         * rendering/RenderContainer.cpp: (WebCore::RenderContainer::lineBoxRects): Ditto.
2464         * rendering/RenderInline.h: Ditto.
2465         * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): Ditto.
2466         * rendering/RenderObject.h: Ditto.
2467         * rendering/RenderObject.cpp:
2468         (WebCore::RenderObject::lineBoxRects): Ditto.
2469         (WebCore::RenderObject::absoluteRects): Ditto.
2470         (WebCore::RenderObject::absoluteBoundingBoxRect): Ditto.
2471         (WebCore::RenderObject::addDashboardRegions): Ditto.
2472         (WebCore::RenderObject::collectDashboardRegions): Ditto.
2473         * rendering/RenderStyle.h: Ditto.
2474         * rendering/RenderStyle.cpp:
2475         (WebCore::RenderStyle::initialDashboardRegions): Ditto.
2476         (WebCore::RenderStyle::noneDashboardRegions): Ditto.
2477         * rendering/RenderText.h: Ditto.
2478         * rendering/RenderText.cpp:
2479         (WebCore::RenderText::absoluteRects): Ditto.
2480         (WebCore::RenderText::lineBoxRects): Ditto.
2481         * rendering/RenderView.h: Ditto.
2482         * rendering/RenderView.cpp: (WebCore::RenderView::absoluteRects): Ditto.
2483
2484         * bridge/mac/FrameMac.mm:
2485         (WebCore::FrameMac::attributedString): Updated to use Vector and changed to not
2486         depend on getNSFont on a Font.
2487         (WebCore::FrameMac::fontForSelection): Changed to not depend on Font::getNSFont.
2488         (WebCore::FrameMac::fontAttributesForSelectionStart): Ditto.
2489         (WebCore::convertAttributesToUnderlines): Updated to use Vector.
2490         (WebCore::FrameMac::setMarkedTextRange): Ditto.
2491         (WebCore::FrameMac::dashboardRegionsDictionary): Ditto.
2492
2493         * bridge/mac/WebCoreAXObject.mm:
2494         (boundingBoxRect): Updated to use Vector.
2495         (AXAttributeStringSetStyle): Changed to not depend on Font::getNSFont.
2496
2497         * bridge/mac/WebCoreStringTruncator.mm: Updated includes.
2498         * page/Settings.h: Ditto.
2499         * platform/mac/WebCoreTextRenderer.mm: Ditto.
2500         * rendering/EllipsisBox.cpp: Ditto.
2501
2502         * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
2503         Updated to use a Vector that we iterate in reverse order instead of a linked list
2504         that we reverse by prepending elements instead of adding to the end.
2505         * editing/InsertParagraphSeparatorCommand.cpp:
2506         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
2507
2508         * loader/DocLoader.h: Removed unneeded include of DeprecatedPtrList.h.
2509
2510         * platform/Font.h: Moved TextStyle to a separate header. Removed Font::getNSFont.
2511         * platform/Font.cpp: Changed to use const instead of #define.
2512         (WebCore::Font::width): Overloaded this so we don't have a default parameter, which
2513         eliminates the need to have TextStyle defined to compiler the Font.h header.
2514
2515         * platform/TextStyle.h: Added.
2516
2517         * platform/FontData.h: Added a forward declaration of ATSUStyle so this header
2518         can stand alone.
2519
2520         * platform/FontFallbackList.h: Tweaks.
2521         * platform/FontFallbackList.cpp: Tweaks.
2522
2523         * platform/FontFamily.h: Removed unneeded NSString declaration. Simplified class by
2524         using Shared and RefPtr, which resulted in removing many explicit functions.
2525         * platform/FontFamily.cpp: More of the same.
2526
2527         * platform/GlyphBuffer.h: Removed unneeded MAX_GLYPH_EXPANSION and GLYPH_BUFFER_SIZE
2528         macros.
2529
2530         * platform/GlyphMap.h: Removed unneeded include of GlyphBuffer.h, which was included
2531         only for the typedef of Glyph; there's no reason to not just repeat that typedef here
2532         since C++ allows multiple typedefs if they match. Renamed the cGlyphPageSize constant
2533         to GlyphPage::size.
2534         * platform/GlyphMap.cpp: Changed NO_BREAK_SPACE and ZERO_WIDTH_SPACE macros into
2535         constants. Updated for cGlyphPageSize change.
2536         * platform/mac/GlyphMapMac.cpp: Updated for cGlyphPageSize change.
2537
2538         * platform/GlyphWidthMap.h: Removed unneeded include of GlyphBuffer.h, which was included
2539         only for the typedef of Glyph; there's no reason to not just repeat that typedef here
2540         since C++ allows multiple typedefs if they match. Renamed the cGlyphWidthPageSize constant
2541         to GlyphWidthPage::size.
2542         * platform/GlyphWidthMap.cpp: Updated for cGlyphWidthPageSize change.
2543
2544         * platform/GraphicsContext.h: Removed unneeded include of Font.h. Changed drawText
2545         function to use overloading instead of default parameters to allow TextStyle to be optional.
2546         This cuts the dependency on TextStyle.
2547         * platform/GraphicsContext.cpp: (WebCore::GraphicsContext::drawText): Added overload.
2548
2549         * platform/Image.h: Removed unneeded forward declaration of IntSize.
2550
2551         * platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters):
2552         Changed to not depend on Font::getNSFont.
2553         * platform/mac/ListBoxMac.mm: (-[WebCoreTableView fontChanged]): Ditto.
2554         * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
2555         Ditto.
2556         * rendering/RenderPopupMenuMac.mm:
2557         (WebCore::RenderPopupMenuMac::showPopup): Ditto.
2558         (WebCore::RenderPopupMenuMac::addGroupLabel): Ditto.
2559         (WebCore::RenderPopupMenuMac::addOption): Ditto.
2560
2561         * platform/mac/FontDataMac.mm: Fixed includes. Converted a bunch of macros to be
2562         constants and inline functions instead.
2563
2564         * platform/mac/FontMac.mm: Fixed includes.
2565         * platform/mac/PopUpButtonMac.mm: Ditto.
2566         * rendering/RenderMenuList.cpp: Ditto.
2567         * rendering/RenderTextControl.cpp: Ditto.
2568
2569         * platform/mac/WebCoreSystemInterface.h: Fixes so this header stands alone and is
2570         compatible with all 4 of C, ObjC, C++, ObjC++.
2571
2572 2006-09-05  MorganL  <morlmor@yahoocom>
2573
2574         Reviewed/landed by aroben.
2575
2576         Fixes bug 10743: Windows build is busted.
2577
2578         * WebCore.vcproj/WebCore/WebCore.vcproj:
2579         * bridge/win/FrameWin.h:
2580         * platform/ResourceLoaderInternal.h:
2581         * platform/TextEncodingRegistry.cpp:
2582         * platform/win/ResourceLoaderWin.cpp:
2583         (WebCore::ResourceLoaderWndProc):
2584         (WebCore::ResourceLoader::start):
2585         * platform/win/TemporaryLinkStubs.cpp:
2586         (FrameWin::markMisspellings):
2587         (FrameWin::shouldChangeSelection):
2588         (FrameWin::respondToChangedSelection):
2589         (FrameWin::respondToChangedContents):
2590         (RenderThemeWin::adjustMenuListStyle):
2591
2592 2006-09-05  Darin Adler  <darin@apple.com>
2593
2594         - some quick build fixes
2595
2596         * bridge/mac/WebCoreAXObject.mm: Remove use of WebCore::UChar.
2597         * bridge/mac/WebCoreFrameBridge.mm: Ditto. Also remove include
2598         of CharsetNames.h.
2599         * css/CSSGrammar.y: Remove use of WebCore::UChar.
2600         * platform/UChar.h: Back out WebCore::UChar for now.
2601
2602 2006-09-05  Darin Adler  <darin@apple.com>
2603
2604         Reviewed by Alexey.
2605
2606         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10728
2607           text encodings should work without a numeric ID
2608
2609         - includes a fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10681
2610           REGRESSION: Reproducible crash at Wikipedia
2611
2612         - fixed a bug where link elements would not set the charset properly for
2613           CSS stylesheets they loaded
2614
2615         - converted DeprecatedString code paths that are related to decoding web
2616           pages to use String instead, to ensure that conversion back and forth won't
2617           hurt performance
2618
2619         Test: fast/encoding/css-link-charset.html
2620         Test: fast/forms/form-data-encoding-normalization-overrun.html
2621
2622         Coverage for encoding issues is pretty good, so we probably don't need more
2623         tests to land this. Our existing tests did find issues with this patch while
2624         it was under development. And I suppose it would be nice to have even more tests.
2625
2626         * platform/TextEncoding.h:
2627         * platform/TextEncoding.cpp:
2628         (WebCore::addEncodingName): Added. Used to build up the set used by isJapanese.
2629         (WebCore::TextEncoding::TextEncoding): Removed boolean "eight bit only" parameter and
2630         added an overload for String as well as const char*. Simplified because now the only
2631         data member is m_name -- calls the registry's atomicCanonicalTextEncodingName function
2632         to make the name canonical (resolve aliases) and atomic (use a single pointer for each
2633         encoding name so we can compare and hash efficiently).
2634         (WebCore::TextEncoding::decode): Renamed from toUnicode. Just a simple wrapper on top
2635         of TextDecoder that can be used when the data to decode is all present at once.
2636         (WebCore::TextEncoding::encode): Renamed from fromUnicode. Handles the normalization and
2637         then uses the registry to get a codec to handle the rest.
2638         (WebCore::TextEncoding::usesVisualOrdering): New implementation that compares with the
2639         name of the only encoding that uses visual ordering. We blur the concepts a bit so that
2640         we treat the visual ordering and logical ordering variations as two separate encodings.
2641         (WebCore::TextEncoding::isJapanese): New implementation that uses a set to efficiently
2642         determine if an encoding is Japanese.
2643         (WebCore::TextEncoding::backslashAsCurrencySymbol): New implementation that compares
2644         with the names of the two encodings that have the strange backslash.
2645         (WebCore::TextEncoding::closest8BitEquivalent): Added. Replaces the old "eight bit only"
2646         boolean parameter to the constructor.
2647         (WebCore::ASCIIEncoding): Added.
2648         (WebCore::Latin1Encoding): Added.
2649         (WebCore::UTF16BigEndianEncoding): Added.
2650         (WebCore::UTF16LittleEndianEncoding): Added.
2651         (WebCore::UTF8Encoding): Added.
2652         (WebCore::WindowsLatin1Encoding): Added.
2653
2654         * platform/TextEncodingRegistry.h: Added.
2655         * platform/TextEncodingRegistry.cpp: Added. Keeps a table of all the character set
2656         aliases and names and another of all the codecs and parameters for each name.
2657
2658         * platform/TextDecoder.h: Added.
2659         * platform/TextDecoder.cpp: Added. Contains logic to look for a BOM and hand the data
2660         to the proper codec, based on code that used to be in both the ICU and Mac codecs.
2661
2662         * platform/StreamingTextDecoder.h: Renamed class to TextCodec. We'll rename
2663         the files in a later check-in. Moved creation functions into TextEncodingRegistry.h.
2664         Added typedefs of the registrar function types so classes derived from this one
2665         can use them without including the TextEncodingRegistry header. Renamed toUnicode
2666         and fromUnicode to decode and encode. Changed the parameter and return types so that
2667         the parameters are pointers to the data and the return types are String and CString.
2668         * platform/StreamingTextDecoder.cpp:
2669         (WebCore::TextCodec::appendOmittingBOM): Added. Helper function used by multiple
2670         classes derived from this one.
2671
2672         * platform/TextCodecLatin1.h: Added.
2673         * platform/TextCodecLatin1.cpp: Added. Contains logic to handle encoding and decoding
2674         Windows Latin-1, based on code that used to be in both the ICU and Mac codecs.
2675
2676         * platform/TextCodecUTF16.h: Added.
2677         * platform/TextCodecUTF16.cpp: Added. Contains logic to handle encoding and decoding
2678         UTF-16, based on code that used to be in both the ICU and Mac codecs.
2679
2680         * platform/StreamingTextDecoderICU.h: Renamed class to TextCodecICU. We'll rename
2681         the files in a later check-in. Removed all the functions having to do with handling
2682         BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
2683         because that's superseded by the registry. Added registry hook functions.
2684         * platform/StreamingTextDecoderICU.cpp:
2685         (WebCore::TextCodecICU::registerEncodingNames): Added. Registers all encodings that
2686         ICU can handle with the "IANA" standard. Also includes a special case for a particular
2687         type of encoding for Hebrew that uses logical ordering. Also includes aliases that are
2688         not in ICU but that were historically known to WebKit for encodings that ICU handles. 
2689         (WebCore::newTextCodecICU): Added. Used by registerCodecs.
2690         (WebCore::TextCodecICU::registerCodecs): Added. Registers codecs for the same encodings
2691         as above.
2692         (WebCore::TextCodecICU::TextCodecICU): Much simplified since this now only handles the
2693         actual ICU encoding and decoding.
2694         (WebCore::TextCodecICU::~TextCodecICU): Renamed.
2695         (WebCore::TextCodecICU::releaseICUConverter): Changed to be a const member function.
2696         (WebCore::TextCodecICU::createICUConverter): Changed to be a const member function and
2697         to check if the cached converter can be reused in a simpler way.
2698         (WebCore::TextCodecICU::decode): Updated for changes to types.
2699         (WebCore::TextCodecICU::encode): Updated for changes to types, and removed normalization
2700         since this is now handled by the caller.
2701
2702         * platform/mac/StreamingTextDecoderMac.h: Renamed class to TextCodecMac. We'll rename
2703         the files in a later check-in. Removed all the functions having to do with handling
2704         BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
2705         because that's superseded by the registry. Added registry hook functions.
2706         * platform/mac/StreamingTextDecoderMac.cpp:
2707         (WebCore::TextCodecMac::registerEncodingNames): Added. Registers encodings based on
2708         the charset table generated by the make-charset-table.pl perl script.
2709         (WebCore::newTextCodecMac): Added. Used by registerCodecs.
2710         (WebCore::TextCodecMac::registerCodecs): Added. Registers codecs for the same encodings
2711         as above.
2712         (WebCore::TextCodecMac::TextCodecMac): Much simplified since this now only handles the
2713         actual TEC/CF encoding and decoding.
2714         (WebCore::TextCodecMac::~TextCodecMac): Renamed.
2715         (WebCore::TextCodecMac::releaseTECConverter): Changed to be a const member function.
2716         (WebCore::TextCodecMac::createTECConverter): Changed to be a const member function.
2717         (WebCore::TextCodecMac::decode): Updated for changes to types.
2718         (WebCore::TextCodecMac::encode): Updated for changes to types, and removed normalization
2719         since this is now handled by the caller.
2720
2721         * platform/mac/mac-encodings.txt: Removed most of the names in this file. This now
2722         only includes encodings where we want to use Mac OS X Carbon Text Encoding Converter,
2723         which is only encodings that are not supported by ICU.
2724         * platform/make-charset-table.pl: Removed flags from output. We don't use them any more.
2725         * platform/CharsetData.h: Changed from a platform-independent header into a
2726         Macintosh-specific one. A later patch should move this and rename it. Also
2727         subsumes ExtraCFEncodings.h.
2728
2729         * WebCore.xcodeproj/project.pbxproj: Added new files. Changed the prefix on the
2730         "make character sets" rule to be kTextEncoding instead of kCFStringEncoding.
2731
2732         * loader/Decoder.h: Change the default encoding parameter to the constructor to be
2733         a TextEncoding object. Renamed setEncodingName to setEncoding, and made it take a
2734         TextEncoding for the encoding. Removed the encodingName and visuallyOrdered functions,
2735         since TextEncoding supports both directly in a straightforward way. Changed both
2736         decode and flush functions to return String instead of DeprecatedString. Added a
2737         number of private functions to factor this class a bit more so it's easier to read.
2738         Got rid of a number of redundant data members. Changed the buffer to a Vector<char>.
2739         * loader/Decoder.cpp:
2740         (WebCore::Decoder::determineContentType): Added. Used by constructor to determine
2741         the content type based on the passed-in MIME type.
2742         (WebCore::Decoder::defaultEncoding): Added. Used by constructor to determine the
2743         default encoding based on the passed in default and the content type.
2744         (WebCore::Decoder::Decoder): Changed to use the functions above. Also renamed
2745         m_reachedBody to m_checkedForHeadCharset.
2746         (WebCore::Decoder::setEncoding): Renamed and changed to take an encoding rather
2747         than an encoding name.
2748         (WebCore::Decoder::checkForBOM): Factored out of decode.
2749         (WebCore::Decoder::checkForCSSCharset): Factored out of decode.
2750         (WebCore::Decoder::checkForHeadCharset): Factored out of decode.
2751         (WebCore::Decoder::detectJapaneseEncoding): Factored out of decode.
2752         (WebCore::Decoder::decode): Refactored so it's no longer one huge function.
2753         Changed to use the new Vector<char> and the new API for TextDecoder.
2754         (WebCore::Decoder::flush): Added code to empty out the buffer. Not an issue in
2755         practice since we don't re-use the decoder after flushing it.
2756
2757         * platform/UChar.h: Added. Has the type named WebCore::UChar that we'll be switching
2758         to. We'll switch away from the ICU ::UChar type, because we don't want to be so
2759         closely tied to ICU -- include this instead of <unicode/umachine.h>.
2760
2761         * platform/PlatformString.h:
2762         * platform/String.cpp:
2763         (WebCore::String::latin1): Updated for changes to TextEncoding.
2764         (WebCore::String::utf8): Ditto.
2765         (WebCore::String::newUninitialized): Added. Gives a way to create a String and
2766         then write directly into its buffer.
2767
2768         * platform/StringImpl.h: Changed return value for charactersWithNullTermination to
2769         be a const UChar*. While it's true that this function changes the underlying
2770         StringImpl, the characters still shouldn't be modified with the returned pointer.
2771         * platform/StringImpl.cpp:
2772         (WebCore::StringImpl::charactersWithNullTermination): Updated for change above.
2773         (WebCore::StringImpl::newUninitialized): Added. Gives a way to create a StringImpl
2774         and then write directly into its buffer.
2775
2776         * platform/CString.h:
2777         * platform/CString.cpp: (WebCore::CString::newUninitialized): Added. Gives a way
2778         to create a CString and then write directly into its buffer.
2779
2780         * bridge/mac/WebCoreFrameBridge.h: Removed textEncoding method, and replaced
2781         +[WebCoreFrameBridge stringWithData:textEncoding:] with
2782         -[WebCoreFrameBridge stringWithData:] to avoid having to pass text encoding
2783         IDs around.
2784         * bridge/mac/WebCoreFrameBridge.mm:
2785         (-[WebCoreFrameBridge setEncoding:userChosen:]): Removed now-unneeded conversion
2786         to DeprecatedString.
2787         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
2788         Ditto.
2789         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): Ditto.
2790         (-[WebCoreFrameBridge referrer]): Removed now-unneeded call to getNSString.
2791         (-[WebCoreFrameBridge stringWithData:]): Added. Asks the document's decoder
2792         what its encoding is, and decodes using that.
2793         (+[WebCoreFrameBridge stringWithData:textEncodingName:]): Simplified so it
2794         no longer involved a text encoding ID number.
2795         (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
2796         Changed to use UChar instead of DeprecatedChar.
2797         (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): Removed
2798         now-unneeded conversion to DeprecatedString.
2799         (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Ditto.
2800
2801         * html/HTMLFormElement.cpp:
2802         (WebCore::encodeCString): Changed parameter to CString.
2803         (WebCore::HTMLFormElement::formData): Updated code for improvements to TextEncoding.
2804
2805         * loader/CachedCSSStyleSheet.h:
2806         * loader/CachedCSSStyleSheet.cpp:
2807         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Fixed mistake where the
2808         decoder was created without passing in the character set. Also changed from
2809         DeprecatedString to String.
2810         (WebCore::CachedCSSStyleSheet::setCharset): More of the same.
2811
2812         * bindings/js/kjs_window.h: (KJS::ScheduledAction::ScheduledAction): Changed
2813         to use String instead of DeprecatedString, UChar instead of DeprecatedChar,
2814         CString instead of DeprecatedCString, etc.
2815         * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
2816         * bridge/mac/FrameMac.h: Ditto.
2817         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::isCharacterSmartReplaceExempt):
2818         Ditto.
2819         * bridge/mac/WebCoreAXObject.mm:
2820         (-[WebCoreAXObject helpText]): Ditto.
2821         (-[WebCoreAXObject value]): Ditto.
2822         (-[WebCoreAXObject accessibilityDescription]): Ditto.
2823         (-[WebCoreAXObject doAXStringForTextMarkerRange:]): Ditto.
2824         * bridge/mac/WebCoreEncodings.mm: (+[WebCoreEncodings decodeData:]): Ditto.
2825         Also fixed code that does a deref without a ref to use RefPtr instead.
2826         * bridge/mac/WebCoreScriptDebugger.mm:
2827         (-[WebCoreScriptCallFrame evaluateWebScript:]): Ditto.
2828         * bridge/mac/WebCoreSettings.mm:
2829         (-[WebCoreSettings setDefaultTextEncoding:]): Ditto.
2830         * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): Ditto.
2831         * css/cssparser.cpp: (WebCore::CSSParser::lex): Ditto.
2832         * dom/Document.h:
2833         * dom/Document.cpp:
2834         (WebCore::Document::setCharset): Ditto.
2835         (WebCore::Document::write): Ditto.
2836         (WebCore::Document::determineParseMode): Ditto.
2837         * dom/ProcessingInstruction.cpp:
2838         (WebCore::ProcessingInstruction::checkStyleSheet): Ditto.
2839         * dom/XMLTokenizer.h:
2840         * dom/XMLTokenizer.cpp:
2841         (WebCore::shouldAllowExternalLoad): Ditto.
2842         (WebCore::createStringParser): Ditto.
2843         (WebCore::XMLTokenizer::write): Ditto.
2844         (WebCore::toString): Ditto.
2845         (WebCore::handleElementAttributes): Ditto.
2846         (WebCore::XMLTokenizer::startElementNs): Ditto.
2847         (WebCore::XMLTokenizer::endElementNs): Ditto.
2848         (WebCore::XMLTokenizer::characters): Ditto.
2849         (WebCore::XMLTokenizer::processingInstruction): Ditto.
2850         (WebCore::XMLTokenizer::cdataBlock): Ditto.
2851         (WebCore::XMLTokenizer::comment): Ditto.
2852         (WebCore::XMLTokenizer::internalSubset): Ditto.
2853         (WebCore::getXHTMLEntity): Ditto.
2854         (WebCore::externalSubsetHandler): Ditto.
2855         (WebCore::XMLTokenizer::initializeParserContext): Ditto.
2856         (WebCore::XMLTokenizer::notifyFinished): Ditto.
2857         (WebCore::xmlDocPtrForString): Ditto.
2858         (WebCore::parseXMLDocumentFragment): Ditto.
2859         (WebCore::attributesStartElementNsHandler): Ditto.
2860         (WebCore::parseAttributes): Ditto.
2861         * html/FormDataList.h:
2862         * html/FormDataList.cpp:
2863         (WebCore::FormDataList::appendString): Ditto. Also changed to call the
2864         encoding function by its new name and with new parameters.
2865         (WebCore::FormDataList::appendFile): Ditto.
2866         * html/HTMLDocument.h:
2867         * html/HTMLDocument.cpp:
2868         (WebCore::parseDocTypePart): Ditto.
2869         (WebCore::containsString): Ditto.
2870         (WebCore::parseDocTypeDeclaration): Ditto.
2871         (WebCore::HTMLDocument::determineParseMode): Ditto.
2872         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Ditto.
2873         * html/HTMLScriptElement.cpp:
2874         (WebCore::HTMLScriptElement::parseMappedAttribute): Ditto.
2875         * html/HTMLTokenizer.h:
2876         * html/HTMLTokenizer.cpp:
2877         (WebCore::HTMLTokenizer::scriptHandler): Ditto.
2878         (WebCore::HTMLTokenizer::parseTag): Ditto.
2879         (WebCore::HTMLTokenizer::write): Ditto.
2880         (WebCore::HTMLTokenizer::finish): Ditto.
2881         (WebCore::parseHTMLDocumentFragment): Ditto.
2882         * loader/Cache.h:
2883         * loader/Cache.cpp:
2884         (WebCore::Cache::requestStyleSheet): Ditto.
2885         (WebCore::Cache::requestScript): Ditto.
2886         * loader/CachedResource.h: Ditto.
2887         * loader/CachedScript.h:
2888         * loader/CachedScript.cpp:
2889         (WebCore::CachedScript::CachedScript): Ditto.
2890         (WebCore::CachedScript::ref): Ditto.
2891         (WebCore::CachedScript::deref): Ditto.
2892         (WebCore::CachedScript::setCharset): Ditto.
2893         (WebCore::CachedScript::data): Ditto.
2894         (WebCore::CachedScript::checkNotify): Ditto.
2895         * loader/CachedXBLDocument.h:
2896         * loader/CachedXBLDocument.cpp:
2897         (WebCore::CachedXBLDocument::setCharset): Ditto.
2898         * loader/CachedXSLStyleSheet.h:
2899         * loader/CachedXSLStyleSheet.cpp:
2900         (WebCore::CachedXSLStyleSheet::setCharset): Ditto.
2901         * loader/DocLoader.cpp:
2902         (WebCore::DocLoader::requestStyleSheet): Ditto.
2903         (WebCore::DocLoader::requestScript): Ditto.
2904         * loader/DocLoader.h: Ditto.
2905         * loader/FormData.h:
2906         * loader/FormData.cpp:
2907         (WebCore::FormData::FormData): Ditto.
2908         (WebCore::FormData::appendFile): Ditto.
2909         (WebCore::FormData::flattenToString): Ditto.
2910         * page/Frame.h:
2911         * page/FramePrivate.h:
2912         * page/Frame.cpp:
2913         (WebCore::UserStyleSheetLoader::setStyleSheet): Ditto.
2914         (WebCore::getString): Ditto.
2915         (WebCore::Frame::replaceContentsWithScriptResult): Ditto.
2916         (WebCore::Frame::executeScript): Ditto.
2917         (WebCore::Frame::clear): Ditto.
2918         (WebCore::Frame::write): Ditto.
2919         (WebCore::Frame::endIfNotLoading): Ditto.
2920         (WebCore::Frame::baseTarget): Ditto.
2921         (WebCore::Frame::scheduleRedirection): Ditto.
2922         (WebCore::Frame::scheduleLocationChange): Ditto.
2923         (WebCore::Frame::scheduleHistoryNavigation): Ditto.
2924         (WebCore::Frame::changeLocation): Ditto.
2925         (WebCore::Frame::redirectionTimerFired): Ditto.
2926         (WebCore::Frame::encoding): Ditto.
2927         (WebCore::Frame::submitForm): Ditto.
2928         (WebCore::Frame::referrer): Ditto.
2929         (WebCore::Frame::isCharacterSmartReplaceExempt): Ditto.
2930         (WebCore::Frame::setEncoding): Ditto.
2931         * page/Settings.h: Ditto.
2932         * platform/SegmentedString.h: Ditto.
2933         * platform/SegmentedString.cpp: Ditto.
2934         * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Ditto.
2935         * xml/XSLTProcessor.cpp:
2936         (WebCore::transformTextStringToXHTMLDocumentString): Ditto.
2937         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
2938         * xml/xmlhttprequest.h:
2939         * xml/xmlhttprequest.cpp:
2940         (WebCore::XMLHttpRequest::open): Ditto.
2941         (WebCore::XMLHttpRequest::send): Ditto.
2942         (WebCore::XMLHttpRequest::receivedData): Ditto.
2943
2944         * platform/DeprecatedString.cpp:
2945         (WebCore::DeprecatedString::fromUtf8): Updated for changes to TextEncoding.
2946         (WebCore::DeprecatedString::utf8): Ditto.
2947
2948         * platform/KURL.h:
2949         * platform/KURL.cpp:
2950         (WebCore::KURL::KURL): Updated to overload based on presence or absence of
2951         TextEncoding rather than having a default.
2952         (WebCore::KURL::init): Moved body of constructor in here. Updated to use
2953         the new TextEncoding interface.
2954         (WebCore::KURL::decode_string): Updated to overload based on presence or
2955         absence of TextEncoding rather than having a default. Updated to use
2956         the new TextEncoding interface.
2957         (WebCore::encodeRelativeString): Updated to use the new TextEncoding interface.
2958
2959         * platform/Font.cpp: (WebCore::WidthIterator::normalizeVoicingMarks): Fixed
2960         code to use U_ZERO_ERROR instead of a typecast.
2961
2962         * bindings/js/kjs_proxy.h: Removed unneeded declaration of DeprecatedString.
2963         * platform/GraphicsContext.h: Ditto.
2964
2965         * platform/GraphicsContext.cpp: Removed unneeded include of "DeprecatedString.h".
2966         * rendering/break_lines.cpp: Ditto.
2967         * xml/XMLSerializer.cpp: Ditto.
2968
2969         * platform/mac/FontDataMac.mm: Removed unneeded include of <unicode/unorm.h>.
2970
2971         * platform/CharsetNames.h: Emptied out this file. A later patch could remove it.
2972         * platform/CharsetNames.cpp: Ditto.
2973         * platform/mac/ExtraCFEncodings.h: Ditto.
2974
2975 2006-09-05  Nikolas Zimmermann  <zimmermann@kde.org>
2976
2977         Reviewed by eseidel.  Landed by eseidel.
2978
2979         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10490
2980
2981         -> Remove all SVGAnimated* usage from ksvg2.
2982         This is all done using a set of macros which live in svg/SVGElement.h
2983         (ANIMATED_PROPERTY_DECLARATIONS / ANIMATED_PROPERTY_DEFINITIONS).
2984         Transform all properties to this new concept using Eric ruby script.
2985
2986         -> Replace all usages of "property()->baseVal()" with "propertyBaseValue()".
2987         -> Replace all usages of "property()->setBaseVal()" with "setPropertyBaseValue()".
2988
2989         -> Add "virtual const SVGElement* contextElement() const".
2990         This concept allows to access the document (needed to access the SVGDocumentExtensions)
2991         from lowest-base-classes like SVGURIReference / SVGExternalResourcesRequired etc.
2992
2993         These classes contain this contextElement() function as pure virtual functions.
2994         The topmost classes (like SVGCircleElement) implement this function with "return this".
2995
2996         -> Move default value initialization to constructors.
2997         As the lazy_create usage, which was involved in default property initialization,
2998         has been removed, we need to do the initialization in the constructor.
2999         
3000         This forces us to fix the SVGLength class, as calling viewportElement() from the
3001         constructor does not work. This SVGLength cleanup is one of the next things to fix.
3002
3003         * bindings/scripts/CodeGeneratorJS.pm:
3004         * kcanvas/RenderForeignObject.cpp:
3005         (WebCore::RenderForeignObject::translationForAttributes):
3006         * kcanvas/RenderSVGImage.cpp:
3007         (WebCore::RenderSVGImage::paint):
3008         (WebCore::RenderSVGImage::relativeBBox):
3009         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
3010         (WebCore::RenderSVGImage::translationForAttributes):
3011         * kcanvas/RenderSVGText.cpp:
3012         (WebCore::RenderSVGText::translationForAttributes):
3013         * ksvg2/misc/KSVGTimeScheduler.cpp:
3014         (WebCore::SVGTimer::notifyAll):
3015         * ksvg2/misc/SVGDocumentExtensions.cpp:
3016         * ksvg2/misc/SVGDocumentExtensions.h:
3017         (WebCore::SVGDocumentExtensions::baseValueMap):
3018         (WebCore::SVGDocumentExtensions::baseValue):
3019         (WebCore::SVGDocumentExtensions::setBaseValue):
3020         (WebCore::SVGDocumentExtensions::hasBaseValue):
3021         (WebCore::String):
3022         (WebCore::bool):
3023         (WebCore::double):
3024         * ksvg2/misc/SVGImageLoader.cpp:
3025         (WebCore::SVGImageLoader::updateFromElement):
3026         * ksvg2/svg/SVGAElement.cpp:
3027         (WebCore::SVGAElement::parseMappedAttribute):
3028         (WebCore::SVGAElement::defaultEventHandler):
3029         * ksvg2/svg/SVGAElement.h:
3030         (WebCore::SVGAElement::contextElement):
3031         * ksvg2/svg/SVGAnimateColorElement.h:
3032         (WebCore::SVGAnimateColorElement::contextElement):
3033         * ksvg2/svg/SVGAnimateElement.h:
3034         (WebCore::SVGAnimateElement::contextElement):
3035         * ksvg2/svg/SVGAnimateTransformElement.cpp:
3036         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
3037         (WebCore::SVGAnimateTransformElement::initialMatrix):
3038         * ksvg2/svg/SVGAnimateTransformElement.h:
3039         (WebCore::SVGAnimateTransformElement::contextElement):
3040         * ksvg2/svg/SVGCircleElement.cpp:
3041         (SVGCircleElement::SVGCircleElement):
3042         (SVGCircleElement::parseMappedAttribute):
3043         (SVGCircleElement::toPathData):
3044         (SVGCircleElement::pushAttributeContext):
3045         * ksvg2/svg/SVGCircleElement.h:
3046         (WebCore::SVGCircleElement::contextElement):
3047         * ksvg2/svg/SVGClipPathElement.cpp:
3048         (SVGClipPathElement::SVGClipPathElement):
3049         (SVGClipPathElement::parseMappedAttribute):
3050         (SVGClipPathElement::canvasResource):
3051         * ksvg2/svg/SVGClipPathElement.h:
3052         (WebCore::SVGClipPathElement::contextElement):
3053         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3054         (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
3055         (SVGComponentTransferFunctionElement::parseMappedAttribute):
3056         (SVGComponentTransferFunctionElement::transferFunction):
3057         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
3058         * ksvg2/svg/SVGCursorElement.cpp:
3059         (SVGCursorElement::SVGCursorElement):
3060         (SVGCursorElement::parseMappedAttribute):
3061         * ksvg2/svg/SVGCursorElement.h:
3062         (WebCore::SVGCursorElement::contextElement):
3063         * ksvg2/svg/SVGDefsElement.h:
3064         (WebCore::SVGDefsElement::contextElement):
3065         * ksvg2/svg/SVGElement.h:
3066         * ksvg2/svg/SVGEllipseElement.cpp:
3067         (WebCore::SVGEllipseElement::SVGEllipseElement):
3068         (WebCore::SVGEllipseElement::parseMappedAttribute):
3069         (WebCore::SVGEllipseElement::toPathData):
3070         (WebCore::SVGEllipseElement::pushAttributeContext):
3071         * ksvg2/svg/SVGEllipseElement.h:
3072         (WebCore::SVGEllipseElement::contextElement):
3073         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
3074         (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
3075         (WebCore::SVGExternalResourcesRequired::parseMappedAttribute):
3076         * ksvg2/svg/SVGExternalResourcesRequired.h:
3077         * ksvg2/svg/SVGFEBlendElement.cpp:
3078         (SVGFEBlendElement::SVGFEBlendElement):
3079         (SVGFEBlendElement::parseMappedAttribute):
3080         (SVGFEBlendElement::filterEffect):
3081         * ksvg2/svg/SVGFEBlendElement.h:
3082         (WebCore::SVGFEBlendElement::contextElement):
3083         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3084         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
3085         (SVGFEColorMatrixElement::parseMappedAttribute):
3086         (SVGFEColorMatrixElement::filterEffect):
3087         * ksvg2/svg/SVGFEColorMatrixElement.h:
3088         (WebCore::SVGFEColorMatrixElement::contextElement):
3089         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3090         (SVGFEComponentTransferElement::SVGFEComponentTransferElement):
3091         (SVGFEComponentTransferElement::parseMappedAttribute):
3092         (SVGFEComponentTransferElement::filterEffect):
3093         * ksvg2/svg/SVGFEComponentTransferElement.h:
3094         (WebCore::SVGFEComponentTransferElement::contextElement):
3095         * ksvg2/svg/SVGFECompositeElement.cpp:
3096         (SVGFECompositeElement::SVGFECompositeElement):
3097         (SVGFECompositeElement::parseMappedAttribute):
3098         (SVGFECompositeElement::filterEffect):
3099         * ksvg2/svg/SVGFECompositeElement.h:
3100         (WebCore::SVGFECompositeElement::contextElement):
3101         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
3102         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
3103         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
3104         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
3105         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
3106         (WebCore::SVGFEDiffuseLightingElement::contextElement):
3107         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3108         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
3109         (SVGFEDisplacementMapElement::parseMappedAttribute):
3110         (SVGFEDisplacementMapElement::filterEffect):
3111         * ksvg2/svg/SVGFEDisplacementMapElement.h:
3112         (WebCore::SVGFEDisplacementMapElement::contextElement):
3113         * ksvg2/svg/SVGFEDistantLightElement.cpp:
3114         (WebCore::SVGFEDistantLightElement::lightSource):
3115         * ksvg2/svg/SVGFEFloodElement.cpp:
3116         (SVGFEFloodElement::parseMappedAttribute):
3117         (SVGFEFloodElement::filterEffect):
3118         * ksvg2/svg/SVGFEFloodElement.h:
3119         (WebCore::SVGFEFloodElement::contextElement):
3120         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3121         (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
3122         (SVGFEGaussianBlurElement::parseMappedAttribute):
3123         (SVGFEGaussianBlurElement::filterEffect):
3124         * ksvg2/svg/SVGFEGaussianBlurElement.h:
3125         (WebCore::SVGFEGaussianBlurElement::contextElement):
3126         * ksvg2/svg/SVGFEImageElement.cpp:
3127         (SVGFEImageElement::SVGFEImageElement):
3128         (SVGFEImageElement::parseMappedAttribute):
3129         * ksvg2/svg/SVGFEImageElement.h:
3130         (WebCore::SVGFEImageElement::contextElement):
3131         * ksvg2/svg/SVGFELightElement.cpp:
3132         (SVGFELightElement::SVGFELightElement):
3133         (SVGFELightElement::parseMappedAttribute):
3134         * ksvg2/svg/SVGFELightElement.h:
3135         * ksvg2/svg/SVGFEMergeElement.cpp:
3136         (SVGFEMergeElement::SVGFEMergeElement):
3137         (SVGFEMergeElement::filterEffect):
3138         * ksvg2/svg/SVGFEMergeElement.h:
3139         (WebCore::SVGFEMergeElement::contextElement):
3140         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
3141         (SVGFEMergeNodeElement::parseMappedAttribute):
3142         * ksvg2/svg/SVGFEMergeNodeElement.h:
3143         (WebCore::SVGFEMergeNodeElement::contextElement):
3144         * ksvg2/svg/SVGFEOffsetElement.cpp:
3145         (SVGFEOffsetElement::SVGFEOffsetElement):
3146         (SVGFEOffsetElement::parseMappedAttribute):
3147         (SVGFEOffsetElement::filterEffect):
3148         * ksvg2/svg/SVGFEOffsetElement.h:
3149         (WebCore::SVGFEOffsetElement::contextElement):
3150         * ksvg2/svg/SVGFEPointLightElement.cpp:
3151         (WebCore::SVGFEPointLightElement::lightSource):
3152         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
3153         (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
3154         (SVGFESpecularLightingElement::parseMappedAttribute):
3155         (SVGFESpecularLightingElement::filterEffect):
3156         * ksvg2/svg/SVGFESpecularLightingElement.h:
3157         (WebCore::SVGFESpecularLightingElement::contextElement):
3158         * ksvg2/svg/SVGFESpotLightElement.cpp:
3159         (WebCore::SVGFESpotLightElement::lightSource):
3160         * ksvg2/svg/SVGFETileElement.cpp:
3161         (SVGFETileElement::parseMappedAttribute):
3162         (SVGFETileElement::filterEffect):
3163         * ksvg2/svg/SVGFETileElement.h:
3164         (WebCore::SVGFETileElement::contextElement):
3165         * ksvg2/svg/SVGFETurbulenceElement.cpp:
3166         (SVGFETurbulenceElement::SVGFETurbulenceElement):
3167         (SVGFETurbulenceElement::parseMappedAttribute):
3168         (SVGFETurbulenceElement::filterEffect):
3169         * ksvg2/svg/SVGFETurbulenceElement.h:
3170         (WebCore::SVGFETurbulenceElement::contextElement):
3171         * ksvg2/svg/SVGFilterElement.cpp:
3172         (SVGFilterElement::SVGFilterElement):
3173         (SVGFilterElement::parseMappedAttribute):
3174         (SVGFilterElement::canvasResource):
3175         * ksvg2/svg/SVGFilterElement.h:
3176         (WebCore::SVGFilterElement::contextElement):
3177         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
3178         (SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
3179         (SVGFilterPrimitiveStandardAttributes::~SVGFilterPrimitiveStandardAttributes):
3180         (SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
3181         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
3182         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3183         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
3184         * ksvg2/svg/SVGFitToViewBox.cpp:
3185         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
3186         (WebCore::SVGFitToViewBox::parseViewBox):
3187         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
3188         (WebCore::SVGFitToViewBox::parseMappedAttribute):
3189         * ksvg2/svg/SVGFitToViewBox.h:
3190         * ksvg2/svg/SVGForeignObjectElement.cpp:
3191         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
3192         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
3193         * ksvg2/svg/SVGForeignObjectElement.h:
3194         (WebCore::SVGForeignObjectElement::isValid):
3195         (WebCore::SVGForeignObjectElement::contextElement):
3196         * ksvg2/svg/SVGGElement.h:
3197         (WebCore::SVGGElement::contextElement):
3198         * ksvg2/svg/SVGGradientElement.cpp:
3199         (SVGGradientElement::SVGGradientElement):
3200         (SVGGradientElement::parseMappedAttribute):
3201         (SVGGradientElement::rebuildStops):
3202         * ksvg2/svg/SVGGradientElement.h:
3203         * ksvg2/svg/SVGHelper.cpp:
3204         (WebCore::SVGHelper::PercentageOfViewport):
3205         * ksvg2/svg/SVGImageElement.cpp:
3206         (SVGImageElement::SVGImageElement):
3207         (SVGImageElement::parseMappedAttribute):
3208         (SVGImageElement::haveLoadedRequiredResources):
3209         * ksvg2/svg/SVGImageElement.h:
3210         (WebCore::SVGImageElement::contextElement):
3211         * ksvg2/svg/SVGLangSpace.h:
3212         * ksvg2/svg/SVGLength.cpp:
3213         * ksvg2/svg/SVGLineElement.cpp:
3214         (SVGLineElement::SVGLineElement):
3215         (SVGLineElement::parseMappedAttribute):
3216         (SVGLineElement::toPathData):
3217         (SVGLineElement::pushAttributeContext):
3218         * ksvg2/svg/SVGLineElement.h:
3219         (WebCore::SVGLineElement::contextElement):
3220         * ksvg2/svg/SVGLinearGradientElement.cpp:
3221         (SVGLinearGradientElement::SVGLinearGradientElement):
3222         (SVGLinearGradientElement::parseMappedAttribute):
3223         (SVGLinearGradientElement::buildGradient):
3224         * ksvg2/svg/SVGLinearGradientElement.h:
3225         (WebCore::SVGLinearGradientElement::contextElement):
3226         * ksvg2/svg/SVGMarkerElement.cpp:
3227         (WebCore::SVGMarkerElement::SVGMarkerElement):
3228         (WebCore::SVGMarkerElement::parseMappedAttribute):
3229         (WebCore::SVGMarkerElement::setOrientToAuto):
3230         (WebCore::SVGMarkerElement::setOrientToAngle):
3231         (WebCore::SVGMarkerElement::canvasResource):
3232         * ksvg2/svg/SVGMarkerElement.h:
3233         (WebCore::SVGMarkerElement::contextElement):
3234         * ksvg2/svg/SVGMaskElement.cpp:
3235         (WebCore::SVGMaskElement::SVGMaskElement):
3236         (WebCore::SVGMaskElement::attributeChanged):
3237         (WebCore::SVGMaskElement::parseMappedAttribute):
3238         (WebCore::SVGMaskElement::drawMaskerContent):
3239         * ksvg2/svg/SVGMaskElement.h:
3240         (WebCore::SVGMaskElement::contextElement):
3241         * ksvg2/svg/SVGPathElement.cpp:
3242         (WebCore::SVGPathElement::SVGPathElement):
3243         * ksvg2/svg/SVGPathElement.h:
3244         (WebCore::SVGPathElement::isValid):
3245         (WebCore::SVGPathElement::contextElement):
3246         * ksvg2/svg/SVGPatternElement.cpp:
3247         (WebCore::SVGPatternElement::SVGPatternElement):
3248         (WebCore::SVGPatternElement::parseMappedAttribute):
3249         (WebCore::SVGPatternElement::pushAttributeContext):
3250         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
3251         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3252         (WebCore::SVGPatternElement::notifyAttributeChange):
3253         (WebCore::SVGPatternElement::getCTM):
3254         * ksvg2/svg/SVGPatternElement.h:
3255         (WebCore::SVGPatternElement::contextElement):
3256         * ksvg2/svg/SVGPolyElement.h:
3257         (WebCore::SVGPolyElement::contextElement):
3258         * ksvg2/svg/SVGRadialGradientElement.cpp:
3259         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
3260         (WebCore::SVGRadialGradientElement::~SVGRadialGradientElement):
3261         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
3262         (WebCore::SVGRadialGradientElement::buildGradient):
3263         * ksvg2/svg/SVGRadialGradientElement.h:
3264         (WebCore::SVGRadialGradientElement::contextElement):
3265         * ksvg2/svg/SVGRectElement.cpp:
3266         (WebCore::SVGRectElement::SVGRectElement):
3267         (WebCore::SVGRectElement::parseMappedAttribute):
3268         (WebCore::SVGRectElement::toPathData):
3269         (WebCore::SVGRectElement::pushAttributeContext):
3270         * ksvg2/svg/SVGRectElement.h:
3271         (WebCore::SVGRectElement::contextElement):
3272         * ksvg2/svg/SVGSVGElement.cpp:
3273         (WebCore::SVGSVGElement::SVGSVGElement):
3274         (WebCore::SVGSVGElement::~SVGSVGElement):
3275         (WebCore::SVGSVGElement::viewport):
3276         (WebCore::SVGSVGElement::parseMappedAttribute):
3277         (WebCore::SVGSVGElement::getCTM):
3278         (WebCore::SVGSVGElement::getScreenCTM):
3279         (WebCore::SVGSVGElement::createRenderer):
3280         * ksvg2/svg/SVGSVGElement.h:
3281         (WebCore::SVGSVGElement::contextElement):
3282         * ksvg2/svg/SVGScriptElement.h:
3283         (WebCore::SVGScriptElement::contextElement):
3284         * ksvg2/svg/SVGSetElement.h:
3285         (WebCore::SVGSetElement::contextElement):
3286         * ksvg2/svg/SVGStopElement.cpp:
3287         (SVGStopElement::SVGStopElement):
3288         (SVGStopElement::parseMappedAttribute):
3289         * ksvg2/svg/SVGStopElement.h:
3290         * ksvg2/svg/SVGStylable.h:
3291         * ksvg2/svg/SVGStyledElement.cpp:
3292         * ksvg2/svg/SVGStyledElement.h:
3293         * ksvg2/svg/SVGStyledTransformableElement.cpp:
3294         (SVGStyledTransformableElement::SVGStyledTransformableElement):
3295         (SVGStyledTransformableElement::parseMappedAttribute):
3296         * ksvg2/svg/SVGStyledTransformableElement.h:
3297         * ksvg2/svg/SVGSwitchElement.cpp:
3298         * ksvg2/svg/SVGSwitchElement.h:
3299         (WebCore::SVGSwitchElement::contextElement):
3300         * ksvg2/svg/SVGSymbolElement.h:
3301         (WebCore::SVGSymbolElement::contextElement):
3302         * ksvg2/svg/SVGTRefElement.cpp:
3303         (SVGTRefElement::updateReferencedText):
3304         * ksvg2/svg/SVGTRefElement.h:
3305         (WebCore::SVGTRefElement::contextElement):
3306         * ksvg2/svg/SVGTSpanElement.h:
3307         (WebCore::SVGTSpanElement::contextElement):
3308         * ksvg2/svg/SVGTextContentElement.cpp:
3309         (SVGTextContentElement::SVGTextContentElement):
3310         (SVGTextContentElement::parseMappedAttribute):
3311         * ksvg2/svg/SVGTextContentElement.h:
3312         * ksvg2/svg/SVGTextElement.cpp:
3313         (WebCore::SVGTextElement::SVGTextElement):
3314         (WebCore::SVGTextElement::parseMappedAttribute):
3315         * ksvg2/svg/SVGTextElement.h:
3316         (WebCore::SVGTextElement::contextElement):
3317         * ksvg2/svg/SVGTextPositioningElement.cpp:
3318         (SVGTextPositioningElement::SVGTextPositioningElement):
3319         (SVGTextPositioningElement::parseMappedAttribute):
3320         * ksvg2/svg/SVGTextPositioningElement.h:
3321         * ksvg2/svg/SVGTransformable.cpp:
3322         * ksvg2/svg/SVGTransformable.h:
3323         * ksvg2/svg/SVGURIReference.cpp:
3324         (SVGURIReference::parseMappedAttribute):
3325         * ksvg2/svg/SVGURIReference.h:
3326         * ksvg2/svg/SVGUseElement.cpp:
3327         (SVGUseElement::SVGUseElement):
3328         (SVGUseElement::parseMappedAttribute):
3329         (SVGUseElement::closeRenderer):
3330         * ksvg2/svg/SVGUseElement.h:
3331         (WebCore::SVGUseElement::contextElement):
3332         * ksvg2/svg/SVGViewElement.h:
3333         (WebCore::SVGViewElement::contextElement):
3334
3335 2006-09-05  Eric Seidel  <eric@eseidel.com>
3336
3337         Reviewed by aroben.
3338
3339         Speed up path parsing by removing string copies.
3340         http://bugzilla.opendarwin.org/show_bug.cgi?id=10722
3341         
3342         Tests already cover path parsing.
3343
3344         * ksvg2/svg/SVGFitToViewBox.cpp:
3345         (WebCore::SVGFitToViewBox::parseViewBox):
3346         * ksvg2/svg/svgpathparser.cpp:
3347         (WebCore::skipOptionalSpaces): Added.
3348         (WebCore::skipOptionalSpacesOrComma): Added.
3349         (WebCore::parseCoord):
3350         (WebCore::SVGPolyParser::parsePoints):
3351         (WebCore::SVGPathParser::parseSVG):
3352
3353 2006-09-05  Sam Weinig  <sam.weinig@gmail.com>
3354
3355         Reviewed by Tim H.
3356
3357         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10742
3358         More Objective-C DOM auto-generation cleanup
3359         
3360         - Factor out implementation type-getters into their own function 
3361           and standardize naming as was done for type-makers (ie. HTML 
3362           and CSS prefixing for method names).
3363
3364         * bindings/objc/DOMCSS.mm:
3365         (-[DOMCSSStyleDeclaration getPropertyShorthand:]):
3366         (-[DOMCSSStyleDeclaration isPropertyImplicit:]):
3367         (-[DOMCSSStyleDeclaration _CSSStyleDeclaration]):
3368         * bindings/objc/DOMHTML.mm:
3369         (-[DOMHTMLTableCaptionElement _HTMLTableCaptionElement]):
3370         (-[DOMHTMLTableSectionElement _HTMLTableSectionElement]):
3371         (-[DOMHTMLTableElement _HTMLTableElement]):
3372         (-[DOMHTMLTableCellElement _HTMLTableCellElement]):
3373         (-[DOMHTMLEmbedElement _HTMLEmbedElement]):
3374         (-[DOMHTMLEmbedElement align]):
3375         (-[DOMHTMLEmbedElement setAlign:]):
3376         (-[DOMHTMLEmbedElement height]):
3377         (-[DOMHTMLEmbedElement setHeight:]):
3378         (-[DOMHTMLEmbedElement name]):
3379         (-[DOMHTMLEmbedElement setName:]):
3380         (-[DOMHTMLEmbedElement src]):
3381         (-[DOMHTMLEmbedElement setSrc:]):
3382         (-[DOMHTMLEmbedElement type]):
3383         (-[DOMHTMLEmbedElement setType:]):
3384         (-[DOMHTMLEmbedElement width]):
3385         (-[DOMHTMLEmbedElement setWidth:]):
3386         * bindings/objc/DOMInternal.h:
3387         * bindings/scripts/CodeGeneratorObjC.pm:
3388         * bridge/mac/WebCoreFrameBridge.mm:
3389         (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
3390         (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
3391         (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
3392         (-[WebCoreFrameBridge selectionStartHasStyle:]):
3393         (-[WebCoreFrameBridge selectionHasStyle:]):
3394
3395 2006-09-05  Adele Peterson  <adele@apple.com>
3396
3397         Reviewed by Adam.
3398
3399         Removed dead code for password field.
3400
3401         * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
3402         * platform/mac/WebCoreTextField.h:
3403         * platform/mac/WebCoreTextField.mm:
3404
3405 2006-09-05  Justin Garcia  <justin.garcia@apple.com>
3406
3407         Reviewed by thatcher
3408         
3409         Setup for <rdar://problem/4344550> Misspellings aren't marked after undo delete
3410         
3411         Fixes:
3412         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6498>
3413         SelectionController's setters should notify delegates of selection changes
3414         
3415         Moved setSelection from Frame to SelectionController.
3416         I haven't moved any of the work that's done as a result of a 
3417         Selection change to SelectionController yet.
3418         Make fewer uses of SelectionControllers.  They're now only used for 
3419         the Frame's selection, the Page's drag caret, and functions that
3420         need to do Selection expansion.
3421
3422         * bindings/js/kjs_window.cpp:
3423         (KJS::Selection::getValueProperty):
3424         (KJS::Selection::toString):
3425         (KJS::SelectionFunc::callAsFunction):
3426         * bridge/mac/FrameMac.h:
3427         * bridge/mac/FrameMac.mm:
3428         (WebCore::FrameMac::advanceToNextMisspelling):
3429         (WebCore::FrameMac::dispatchCPPEvent):
3430         (WebCore::FrameMac::fontForSelection):
3431         (WebCore::FrameMac::baseWritingDirectionForSelectionStart):
3432         (WebCore::FrameMac::markMisspellingsInAdjacentWords):
3433         (WebCore::FrameMac::markMisspellings):
3434         (WebCore::FrameMac::respondToChangedSelection):
3435         (WebCore::FrameMac::shouldChangeSelection):
3436         (WebCore::FrameMac::shouldDeleteSelection):
3437         (WebCore::FrameMac::respondToChangedContents):
3438         * bridge/mac/PageMac.mm:
3439         (WebCore::Page::Page):
3440         * bridge/mac/WebCoreAXObject.mm:
3441         (-[WebCoreAXObject accessibilityAttributeValue:]):
3442         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
3443         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
3444         (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
3445         (-[WebCoreAXObject doSetAXSelectedTextMarkerRange:]):
3446         * bridge/mac/WebCoreFrameBridge.mm:
3447         (-[WebCoreFrameBridge isSelectionEditable]):
3448         (-[WebCoreFrameBridge isSelectionRichlyEditable]):
3449         (-[WebCoreFrameBridge selectionState]):
3450         (-[WebCoreFrameBridge deselectText]):
3451         (-[WebCoreFrameBridge selectedAttributedString]):
3452         (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
3453         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
3454         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
3455         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]):
3456         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
3457         (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
3458         (-[WebCoreFrameBridge selectedDOMRange]):
3459         (-[WebCoreFrameBridge selectNSRange:]):
3460         (-[WebCoreFrameBridge selectedNSRange]):
3461         (-[WebCoreFrameBridge selectionAffinity]):
3462         (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
3463         (-[WebCoreFrameBridge setSelectionToDragCaret]):
3464         (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
3465         (-[WebCoreFrameBridge moveDragCaretToPoint:]):
3466         (-[WebCoreFrameBridge removeDragCaret]):
3467         (-[WebCoreFrameBridge dragCaretDOMRange]):
3468         (-[WebCoreFrameBridge isDragCaretRichlyEditable]):
3469         (-[WebCoreFrameBridge editableDOMRangeForPoint:]):
3470         (-[WebCoreFrameBridge ensureSelectionVisible]):
3471         (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
3472         * bridge/win/PageWin.cpp:
3473         (WebCore::Page::Page):
3474         * dom/Document.cpp:
3475         (WebCore::Document::updateSelection):
3476         (WebCore::Document::clearSelectionIfNeeded):
3477         (WebCore::Document::notifyBeforeNodeRemoval):
3478         * dom/Element.cpp:
3479         (WebCore::Element::updateFocusAppearance):
3480         * editing/EditCommand.cpp:
3481         (WebCore::EditCommand::EditCommand):
3482         * editing/JSEditor.cpp:
3483         * editing/ModifySelectionListLevel.cpp:
3484         (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
3485         (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
3486         * editing/Selection.cpp:
3487         (WebCore::Selection::setBase):
3488         (WebCore::Selection::setExtent):
3489         * editing/Selection.h:
3490         (WebCore::Selection::extent):
3491         * editing/SelectionController.cpp:
3492         (WebCore::SelectionController::SelectionController):
3493         (WebCore::SelectionController::moveTo):
3494         (WebCore::SelectionController::setSelection):
3495         (WebCore::SelectionController::nodeWillBeRemoved):
3496         (WebCore::SelectionController::modify):
3497         (WebCore::SelectionController::clear):
3498         (WebCore::SelectionController::setBase):
3499         (WebCore::SelectionController::setExtent):
3500         * editing/SelectionController.h:
3501         * editing/TypingCommand.cpp:
3502         (WebCore::TypingCommand::insertText):
3503         (WebCore::TypingCommand::deleteKeyPressed):
3504         (WebCore::TypingCommand::forwardDeleteKeyPressed):
3505         * editing/VisiblePosition.cpp:
3506         (WebCore::VisiblePosition::caretRect):
3507         * editing/VisiblePosition.h:
3508         * html/HTMLInputElement.cpp:
3509         (WebCore::HTMLInputElement::defaultEventHandler):
3510         * page/Frame.cpp:
3511         (WebCore::Frame::selectedText):
3512         (WebCore::Frame::hasSelection):
3513         (WebCore::Frame::selectionController):
3514         (WebCore::Frame::dragCaretController):
3515         (WebCore::Frame::notifyRendererOfSelectionChange):
3516         (WebCore::Frame::invalidateSelection):
3517         (WebCore::Frame::clearCaretRectIfNeeded):
3518         (WebCore::Frame::setFocusNodeIfNeeded):
3519         (WebCore::Frame::selectionLayoutChanged):
3520         (WebCore::Frame::caretBlinkTimerFired):
3521         (WebCore::Frame::paintCaret):
3522         (WebCore::Frame::paintDragCaret):