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