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