a65197dea63bc33f17304a1f2d095ba550ef6014
[WebKit-https.git] / WebCore / ChangeLog
1 2006-09-12  Nikolas Zimmermann  <zimmermann@kde.org>
2
3         Reviewed by Anders.
4
5         Add exception codes to SVGList functions, adjust all code using it.
6
7         Move SVGPaintType enums from ksvg.h into SVGPaint (needed for js generation)
8         Move SVGUnitTypes enums from ksvg.h into it's own file SVGUnitType.h (ditto)
9         Move SVGRenderingIntent enums from ksvg.h into it's own file SVGRenderingIntent.h (ditto)
10         Move SVGZoomAndPan enums from ksvg.h into SVGSVGElement (ditto)
11         Move SVGFE* related enums into their respecitive classes.
12
13         Fix JSSVGNumber to operator on doubles, instead of floats.
14
15         * ksvg2/bindings/js/JSSVGNumber.cpp:
16         (WebCore::getJSSVGNumber):
17         * ksvg2/bindings/js/JSSVGNumber.h:
18         (WebCore::JSSVGNumber::JSSVGNumber):
19         * ksvg2/css/SVGCSSParser.cpp:
20         (WebCore::CSSParser::parseSVGValue):
21         (WebCore::CSSParser::parseSVGPaint):
22         * ksvg2/css/SVGRenderStyleDefs.cpp:
23         (StyleFillData::operator==):
24         * ksvg2/ksvg.h:
25         * ksvg2/misc/KCanvasRenderingStyle.cpp:
26         (WebCore::KSVGPainterFactory::isFilled):
27         (WebCore::KSVGPainterFactory::fillPaintServer):
28         (WebCore::KSVGPainterFactory::isStroked):
29         (WebCore::KSVGPainterFactory::strokePaintServer):
30         * ksvg2/misc/KSVGTimeScheduler.cpp:
31         (WebCore::SVGTimer::notifyAll):
32         * ksvg2/svg/SVGAnimateColorElement.cpp:
33         (WebCore::SVGAnimateColorElement::handleTimerEvent):
34         * ksvg2/svg/SVGAnimateTransformElement.cpp:
35         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
36         (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
37         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
38         (WebCore::SVGAnimateTransformElement::parseTransformValue):
39         * ksvg2/svg/SVGAnimateTransformElement.h:
40         * ksvg2/svg/SVGAnimatedTemplate.h:
41         * ksvg2/svg/SVGAnimationElement.cpp:
42         (SVGAnimationElement::getSimpleDuration):
43         (SVGAnimationElement::parseMappedAttribute):
44         (SVGAnimationElement::setTargetAttribute):
45         * ksvg2/svg/SVGAnimationElement.h:
46         * ksvg2/svg/SVGClipPathElement.cpp:
47         (SVGClipPathElement::SVGClipPathElement):
48         (SVGClipPathElement::parseMappedAttribute):
49         (SVGClipPathElement::canvasResource):
50         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
51         (SVGComponentTransferFunctionElement::transferFunction):
52         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
53         (WebCore::SVGComponentTransferFunctionElement::):
54         * ksvg2/svg/SVGDocument.cpp:
55         (WebCore::SVGDocument::dispatchZoomEvent):
56         (WebCore::SVGDocument::dispatchScrollEvent):
57         * ksvg2/svg/SVGFEBlendElement.cpp:
58         (WebCore::SVGFEBlendElement::parseMappedAttribute):
59         (WebCore::SVGFEBlendElement::filterEffect):
60         * ksvg2/svg/SVGFEBlendElement.h:
61         (WebCore::SVGFEBlendElement::):
62         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
63         (SVGFEColorMatrixElement::parseMappedAttribute):
64         (SVGFEColorMatrixElement::filterEffect):
65         * ksvg2/svg/SVGFEColorMatrixElement.h:
66         (WebCore::SVGFEColorMatrixElement::):
67         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
68         (WebCore::SVGFEComponentTransferElement::parseMappedAttribute):
69         (WebCore::SVGFEComponentTransferElement::filterEffect):
70         * ksvg2/svg/SVGFEComponentTransferElement.h:
71         * ksvg2/svg/SVGFECompositeElement.cpp:
72         (SVGFECompositeElement::parseMappedAttribute):
73         (SVGFECompositeElement::filterEffect):
74         * ksvg2/svg/SVGFECompositeElement.h:
75         (WebCore::SVGFECompositeElement::):
76         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
77         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
78         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
79         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
80         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
81         (SVGFEDisplacementMapElement::parseMappedAttribute):
82         (SVGFEDisplacementMapElement::filterEffect):
83         * ksvg2/svg/SVGFEDisplacementMapElement.h:
84         (WebCore::SVGFEDisplacementMapElement::):
85         * ksvg2/svg/SVGFEFloodElement.cpp:
86         (WebCore::SVGFEFloodElement::parseMappedAttribute):
87         (WebCore::SVGFEFloodElement::filterEffect):
88         * ksvg2/svg/SVGFEFloodElement.h:
89         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
90         (SVGFEGaussianBlurElement::parseMappedAttribute):
91         (SVGFEGaussianBlurElement::filterEffect):
92         * ksvg2/svg/SVGFEGaussianBlurElement.h:
93         * ksvg2/svg/SVGFEMergeElement.cpp:
94         (SVGFEMergeElement::filterEffect):
95         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
96         (SVGFEMergeNodeElement::parseMappedAttribute):
97         * ksvg2/svg/SVGFEMergeNodeElement.h:
98         * ksvg2/svg/SVGFEOffsetElement.cpp:
99         (SVGFEOffsetElement::parseMappedAttribute):
100         (SVGFEOffsetElement::filterEffect):
101         * ksvg2/svg/SVGFEOffsetElement.h:
102         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
103         (SVGFESpecularLightingElement::parseMappedAttribute):
104         (SVGFESpecularLightingElement::filterEffect):
105         * ksvg2/svg/SVGFESpecularLightingElement.h:
106         * ksvg2/svg/SVGFETileElement.cpp:
107         (WebCore::SVGFETileElement::parseMappedAttribute):
108         (WebCore::SVGFETileElement::filterEffect):
109         * ksvg2/svg/SVGFETileElement.h:
110         * ksvg2/svg/SVGFETurbulenceElement.h:
111         (WebCore::SVGFETurbulenceElement::):
112         * ksvg2/svg/SVGFilterElement.cpp:
113         (SVGFilterElement::SVGFilterElement):
114         (SVGFilterElement::parseMappedAttribute):
115         (SVGFilterElement::canvasResource):
116         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
117         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
118         * ksvg2/svg/SVGGradientElement.cpp:
119         (SVGGradientElement::SVGGradientElement):
120         (SVGGradientElement::parseMappedAttribute):
121         * ksvg2/svg/SVGGradientElement.h:
122         (WebCore::SVGGradientElement::):
123         * ksvg2/svg/SVGHelper.cpp:
124         (WebCore::SVGHelper::ParseSeperatedList):
125         * ksvg2/svg/SVGLengthList.cpp:
126         (WebCore::SVGLengthList::parse):
127         * ksvg2/svg/SVGLinearGradientElement.cpp:
128         (SVGLinearGradientElement::buildGradient):
129         * ksvg2/svg/SVGList.h:
130         (WebCore::SVGListBase::clear):
131         (WebCore::SVGListBase::initialize):
132         (WebCore::SVGListBase::getItem):
133         (WebCore::SVGListBase::insertItemBefore):
134         (WebCore::SVGListBase::replaceItem):
135         (WebCore::SVGListBase::removeItem):
136         (WebCore::SVGListBase::appendItem):
137         * ksvg2/svg/SVGLocatable.cpp:
138         * ksvg2/svg/SVGLocatable.h:
139         * ksvg2/svg/SVGMarkerElement.h:
140         (WebCore::SVGMarkerElement::):
141         * ksvg2/svg/SVGNumberList.cpp:
142         (SVGNumberList::parse):
143         * ksvg2/svg/SVGPaint.cpp:
144         (WebCore::SVGPaint::SVGPaint):
145         (WebCore::SVGPaint::uri):
146         (WebCore::SVGPaint::setUri):
147         (WebCore::SVGPaint::setPaint):
148         * ksvg2/svg/SVGPaint.h:
149         (WebCore::SVGPaint::):
150         * ksvg2/svg/SVGPathElement.cpp:
151         (WebCore::SVGPathElement::svgMoveTo):
152         (WebCore::SVGPathElement::svgLineTo):
153         (WebCore::SVGPathElement::svgLineToHorizontal):
154         (WebCore::SVGPathElement::svgLineToVertical):
155         (WebCore::SVGPathElement::svgCurveToCubic):
156         (WebCore::SVGPathElement::svgCurveToCubicSmooth):
157         (WebCore::SVGPathElement::svgCurveToQuadratic):
158         (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
159         (WebCore::SVGPathElement::svgArcTo):
160         (WebCore::SVGPathElement::svgClosePath):
161         (WebCore::SVGPathElement::parseMappedAttribute):
162         (WebCore::SVGPathElement::toPathData):
163         * ksvg2/svg/SVGPatternElement.cpp:
164         (WebCore::SVGPatternElement::SVGPatternElement):
165         (WebCore::SVGPatternElement::parseMappedAttribute):
166         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
167         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
168         * ksvg2/svg/SVGPolyElement.cpp:
169         (SVGPolyElement::parseMappedAttribute):
170         (SVGPolyElement::svgPolyTo):
171         (SVGPolyElement::notifyAttributeChange):
172         * ksvg2/svg/SVGPolygonElement.cpp:
173         (SVGPolygonElement::toPathData):
174         * ksvg2/svg/SVGPolylineElement.cpp:
175         (SVGPolylineElement::toPathData):
176         * ksvg2/svg/SVGRadialGradientElement.cpp:
177         (WebCore::SVGRadialGradientElement::buildGradient):
178         * ksvg2/svg/SVGRenderingIntent.h: Added.
179         (WebCore::SVGRenderingIntent::):
180         (WebCore::SVGRenderingIntent::SVGRenderingIntent):
181         (WebCore::SVGRenderingIntent::~SVGRenderingIntent):
182         * ksvg2/svg/SVGSVGElement.h:
183         (WebCore::SVGSVGElement::):
184         * ksvg2/svg/SVGScriptElement.cpp:
185         (WebCore::SVGScriptElement::type):
186         (WebCore::SVGScriptElement::setType):
187         (WebCore::SVGScriptElement::parseMappedAttribute):
188         * ksvg2/svg/SVGScriptElement.h:
189         * ksvg2/svg/SVGStringList.cpp:
190         (WebCore::SVGStringList::reset):
191         * ksvg2/svg/SVGStyledLocatableElement.cpp:
192         (SVGStyledLocatableElement::getTransformToElement):
193         * ksvg2/svg/SVGStyledLocatableElement.h:
194         * ksvg2/svg/SVGStyledTransformableElement.cpp:
195         (SVGStyledTransformableElement::parseMappedAttribute):
196         (SVGStyledTransformableElement::getTransformToElement):
197         * ksvg2/svg/SVGStyledTransformableElement.h:
198         * ksvg2/svg/SVGTests.cpp:
199         (WebCore::SVGTests::hasExtension):
200         (WebCore::SVGTests::isValid):
201         * ksvg2/svg/SVGTests.h:
202         * ksvg2/svg/SVGTextContentElement.cpp:
203         (SVGTextContentElement::getSubStringLength):
204         (SVGTextContentElement::getStartPositionOfChar):
205         (SVGTextContentElement::getEndPositionOfChar):
206         (SVGTextContentElement::getExtentOfChar):
207         (SVGTextContentElement::getRotationOfChar):
208         (SVGTextContentElement::selectSubString):
209         * ksvg2/svg/SVGTextContentElement.h:
210         (WebCore::SVGTextContentElement::):
211         * ksvg2/svg/SVGTextElement.cpp:
212         (WebCore::SVGTextElement::parseMappedAttribute):
213         * ksvg2/svg/SVGTextElement.h:
214         (WebCore::SVGTextElement::getTransformToElement):
215         * ksvg2/svg/SVGTransform.h:
216         * ksvg2/svg/SVGTransformList.cpp:
217         (SVGTransformList::consolidate):
218         (SVGTransformList::concatenate):
219         * ksvg2/svg/SVGTransformable.cpp:
220         (SVGTransformable::parseTransformAttribute):
221         * ksvg2/svg/SVGUnitTypes.h: Added.
222         (WebCore::SVGUnitTypes::):
223         (WebCore::SVGUnitTypes::SVGUnitTypes):
224         (WebCore::SVGUnitTypes::~SVGUnitTypes):
225         * ksvg2/svg/SVGUseElement.cpp:
226         (SVGUseElement::closeRenderer):
227         * ksvg2/svg/SVGViewElement.h:
228         (WebCore::SVGViewElement::):
229         * ksvg2/svg/SVGZoomAndPan.cpp:
230         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
231         (WebCore::SVGZoomAndPan::parseMappedAttribute):
232
233 2006-09-12  John Sullivan  <sullivan@apple.com>
234
235         Reviewed by Adele Peterson.
236
237         * bridge/mac/FrameMac.mm:
238         (WebCore::FrameMac::doTextFieldCommandFromEvent):
239         Don't call textField:doCommandBySelector: with a nil selector. This was indirectly causing a
240         (valid) assertion failure in some Safari code.
241
242 2006-09-12  David Harrison  <harrison@apple.com>
243
244         Reviewed by John Sullivan.
245
246         <rdar://problem/4717841> Setting AXFocused to true does not activate the insertion point in text field
247
248         * bridge/mac/WebCoreAXObject.mm:
249         (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
250         For AXFocus, use focus() if the node is an element, so that selection is set.
251         Matches tabbing behavior in text fields and text areas.
252
253 2006-09-12  Adam Roben  <aroben@apple.com>
254
255         Reviewed by adele.
256
257         Make uploading work with the new file upload control.
258
259         * css/html4.css: Remove unnecessary style (this is already done in
260         RenderFileUpload.cpp)
261         * html/HTMLInputElement.cpp: Don't get the button text from the value
262         attribute for file controls.
263         (WebCore::HTMLInputElement::valueWithDefault):
264         * platform/mac/FileChooserMac.mm: Call
265         RenderFileUploadControl::valueChanged when the user selects a file.
266         (WebCore::FileChooser::chooseFile):
267         * rendering/RenderFileUploadControl.cpp: Add valueChanged() method to
268         update the form and fire the onChange event.
269         (WebCore::RenderFileUploadControl::valueChanged):
270         (WebCore::RenderFileUploadControl::updateFromElement):
271         * rendering/RenderFileUploadControl.h: Add valueChanged() declaration.
272
273 2006-09-12  Adam Roben  <aroben@apple.com>
274
275         Adding rules to html4.css to style the button in file upload controls.
276
277         * css/html4.css:
278
279 2006-09-12  Adam Roben  <aroben@apple.com>
280
281         Reviewed many times by darin, hyatt.
282
283         Switch to new engine-based implementation of <input type="file">
284
285         * WebCore.exp: Remove obsolete symbol WebCoreFileButton
286         * WebCore.xcodeproj/project.pbxproj: Remove files for old widget-based
287         control, add files for new engine-based control
288         * css/CSSSelector.cpp: Add support for new
289         '-webkit-file-upload-button' pseudo element
290         (WebCore::CSSSelector::extractPseudoType):
291         * css/CSSSelector.h: Ditto.
292         (WebCore::CSSSelector::):
293         * css/cssstyleselector.cpp: Ditto.
294         (WebCore::CSSStyleSelector::checkOneSelector):
295         * html/HTMLInputElement.cpp: Send click events to new control
296         (WebCore::HTMLInputElement::select):
297         (WebCore::HTMLInputElement::click):
298         (WebCore::HTMLInputElement::createRenderer):
299         (WebCore::HTMLInputElement::valueWithDefault):
300         (WebCore::HTMLInputElement::defaultEventHandler):
301         * html/HTMLTextFieldInnerElement.h: Add 'virtual' keyword
302         (WebCore::HTMLTextFieldInnerElement::shadowParentNode):
303         * platform/FileButton.h: Removed.
304         * platform/FileChooser.h: Added. This is the replacement for
305         FileButton.h
306         (WebCore::FileChooser::filename):
307         (WebCore::FileChooser::icon):
308         (WebCore::FileChooser::uploadControl):
309         (WebCore::FileChooser::document):
310         * platform/Icon.h: Added new platform-specific class representing a
311         file icon.
312         * platform/LocalizedStrings.h:
313         * platform/mac/FileButtonMac.mm: Removed.
314         * platform/mac/FileChooserMac.mm: Added. This is the replacement for
315         FileButtonMac.mm
316         (-[OpenPanelController initWithFileChooser:]):
317         (-[OpenPanelController fileChooserDetachingSoon]):
318         (-[OpenPanelController beginSheet]):
319         (-[OpenPanelController chooseFilename:]):
320         (-[OpenPanelController cancel]):
321         (WebCore::FileChooser::FileChooser):
322         (WebCore::FileChooser::~FileChooser):
323         (WebCore::FileChooser::openFileChooser):
324         (WebCore::FileChooser::basenameForWidth):
325         (WebCore::FileChooser::uploadControlDetaching):
326         (WebCore::FileChooser::chooseFile):
327         * platform/mac/IconMac.mm: Added.
328         (WebCore::Icon::Icon):
329         (WebCore::Icon::~Icon):
330         (WebCore::Icon::newIconForFile):
331         (WebCore::Icon::paint):
332         * platform/mac/LocalizedStringsMac.mm: Call across bridge to get
333         localized strings.
334         (WebCore::fileButtonChooseFileLabel):
335         (WebCore::fileButtonNoFileSelectedLabel):
336         * rendering/RenderButton.cpp: Extract method setText() from
337         updateFromElement.
338         (WebCore::RenderButton::updateFromElement):
339         (WebCore::RenderButton::setText):
340         * rendering/RenderButton.h: Add declaration for new setText method.
341         * rendering/RenderFileButton.cpp: Removed.
342         * rendering/RenderFileButton.h: Removed.
343         * rendering/RenderFileUploadControl.cpp: Added. This is the
344         replacement for RenderFileButton.cpp.
345         (WebCore::RenderFileUploadInnerFileBox::renderName):
346         (WebCore::HTMLFileUploadInnerButtonElement::isShadowNode):
347         (WebCore::HTMLFileUploadInnerButtonElement::shadowParentNode):
348         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
349         (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
350         (WebCore::RenderFileUploadControl::setStyle):
351         (WebCore::RenderFileUploadControl::updateIconAndFilename):
352         (WebCore::RenderFileUploadControl::click):
353         (WebCore::RenderFileUploadControl::updateFromElement):
354         (WebCore::RenderFileUploadControl::maxFilenameWidth):
355         (WebCore::RenderFileUploadControl::createButtonStyle):
356         (WebCore::RenderFileUploadControl::paintObject):
357         (WebCore::RenderFileUploadInnerFileBox::RenderFileUploadInnerFileBox):
358         (WebCore::RenderFileUploadInnerFileBox::setStyle):
359         (WebCore::RenderFileUploadInnerFileBox::layout):
360         (WebCore::RenderFileUploadInnerFileBox::setHasIcon):
361         (WebCore::RenderFileUploadInnerFileBox::setFilename):
362         (WebCore::RenderFileUploadInnerFileBox::calcMinMaxWidth):
363         (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
364         (WebCore::HTMLFileUploadInnerButtonElement::createRenderer):
365         * rendering/RenderFileUploadControl.h: Added. This is the replacement
366         for RenderFileButton.h.
367         (WebCore::RenderFileUploadControl::renderName):
368         * rendering/RenderStyle.cpp: Add support for
369         -webkit-file-upload-button pseudo element.
370         (WebCore::):
371         (WebCore::pseudoBit):
372         * rendering/RenderStyle.h: Ditto.
373         (WebCore::RenderStyle::):
374
375 2006-09-12  Anders Carlsson  <acarlsson@apple.com>
376
377         Reviewed by John Sullivan.
378
379         Do the plugin object cleanup in Frame::clear instead of setView.
380         
381         * bridge/mac/FrameMac.h:
382         * bridge/mac/FrameMac.mm:
383         (WebCore::FrameMac::setView):
384         (WebCore::FrameMac::cleanupPluginObjects):
385         * page/Frame.cpp:
386         (WebCore::Frame::clear):
387         * page/Frame.h:
388
389 2006-09-12  MorganL  <morlmor@yahoo.com>
390
391         Reviewed/landed by aroben.
392
393         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10822
394         windows build is busted
395
396         * WebCore.vcproj/WebCore/WebCore.vcproj: Add missing
397         JSRangeException.{cpp,h} to project
398
399 2006-09-12  David Hyatt  <hyatt@apple.com>
400
401         Fix fieldsets so that they properly expand to enclose overhanging floats
402         when the fieldset has auto height.  This is a nifty undocumented behavior
403         of the fieldset element.  The bug is 3898.
404
405         Reviewed by mjs
406
407         Added fast/forms/fieldset-with-float.html
408
409         * rendering/RenderBlock.cpp:
410         (WebCore::RenderBlock::layoutBlock):
411         * rendering/RenderFieldset.h:
412         (WebCore::RenderFieldset::renderName):
413         (WebCore::RenderFieldset::expandsToEncloseOverhangingFloats):
414         * rendering/RenderObject.h:
415         (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
416         * rendering/RenderTableCell.h:
417         (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):
418
419 2006-09-11  Eric Seidel  <eric@eseidel.com>
420
421         Reviewed by hyatt.
422         
423         REGRESSION: When dragging a link on a page, the selected link doesn't display it's name or URL
424         http://bugzilla.opendarwin.org/show_bug.cgi?id=10819
425         http://bugzilla.opendarwin.org/show_bug.cgi?id=10814
426
427         No test cases were harmed in the coding of the patch.
428
429         * platform/mac/WebCoreTextRenderer.mm:
430         (WebCoreDrawTextAtPoint):
431
432 2006-09-11  David Hyatt  <hyatt@apple.com>
433
434         Fix for bug 8126, column widths apply to the border boxes of cells.
435
436         Reviewed by aroben
437
438         * rendering/RenderTableCell.cpp:
439         (WebCore::RenderTableCell::styleOrColWidth):
440
441 2006-09-11  Nikolas Zimmermann  <zimmermann@kde.org>
442
443         Reviewed by Adele.
444
445         Fix Qt/Linux build.
446
447         * CMakeLists.txt: Add dom/RangeException.idl to build & fix feature defines.
448
449 2006-09-11  Nikolas Zimmermann  <zimmermann@kde.org>
450
451         Reviewed by eseidel.  Landed by eseidel.
452
453         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10750
454
455         This finally fixes the SVGAnimated* classes JS bindings!
456
457         - Move all SVGAnimated*.idl files from ksvg2/bindings/idl/svg to ksvg2/svg
458         - Adjust XCode/Qt build files to generate the new idl files
459
460         - Remove all SVGAnimated* primitives cpp implementations (Angle/Boolean/Color/Enumeration/Integer/Length/
461                                                                   LengthList/Number/NumberList/PreserveAspectRatio/
462                                                                   Rect/String/TransformList)
463
464         - Remove unneeded methods from CodeGenerator.pm and add new helper function: IsSVGAnimatedType
465         - Adjust CodeGeneratorJS.pm to the new SVGAnimated* tear-off concept
466
467         - Add two new macros: ANIMATED_PROPERTY_EMPTY_DECLARATIONS / ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
468           This is used to fix multiple-inheritance issues in SVG with properties,
469           similar like SVGTests::isValid() was fixed.
470
471         - Rewrote SVGList using WTF::Vector, instead of DeprecatedPtrList and killed DOMList.
472           (SVGAnimated*Lists work again now)
473
474         - Adjust macros in SVGElement to create the "*Animated" tear-off classes.
475
476         - Adjust all SVG classes which use the ANIMATED macros to include the ClassName as first param in the header.
477
478         * CMakeLists.txt:
479         * DerivedSources.make:
480         * WebCore.xcodeproj/project.pbxproj:
481         * bindings/scripts/CodeGenerator.pm:
482         * bindings/scripts/CodeGeneratorJS.pm:
483         * kcanvas/RenderSVGImage.cpp:
484         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
485         (WebCore::RenderSVGImage::paint):
486         * kcanvas/RenderSVGText.cpp:
487         (WebCore::RenderSVGText::translationForAttributes):
488         * ksvg2/ksvg.h:
489         * ksvg2/misc/SVGDocumentExtensions.h:
490         (WebCore::FloatRect):
491         * ksvg2/svg/SVGAElement.h:
492         * ksvg2/svg/SVGAnimateColorElement.cpp:
493         * ksvg2/svg/SVGAnimateColorElement.h:
494         * ksvg2/svg/SVGAnimateTransformElement.h:
495         * ksvg2/svg/SVGAnimatedTemplate.h:
496         (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate):
497         * ksvg2/svg/SVGAnimationElement.h:
498         * ksvg2/svg/SVGCircleElement.h:
499         * ksvg2/svg/SVGClipPathElement.h:
500         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
501         (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
502         (SVGComponentTransferFunctionElement::transferFunction):
503         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
504         * ksvg2/svg/SVGCursorElement.h:
505         * ksvg2/svg/SVGDefsElement.h:
506         * ksvg2/svg/SVGElement.h:
507         * ksvg2/svg/SVGElementInstanceList.cpp:
508         (WebCore::SVGElementInstanceList::SVGElementInstanceList):
509         * ksvg2/svg/SVGElementInstanceList.h:
510         * ksvg2/svg/SVGEllipseElement.h:
511         * ksvg2/svg/SVGExternalResourcesRequired.h:
512         * ksvg2/svg/SVGFEBlendElement.h:
513         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
514         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
515         (SVGFEColorMatrixElement::parseMappedAttribute):
516         (SVGFEColorMatrixElement::filterEffect):
517         * ksvg2/svg/SVGFEColorMatrixElement.h:
518         * ksvg2/svg/SVGFEComponentTransferElement.h:
519         * ksvg2/svg/SVGFECompositeElement.h:
520         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
521         * ksvg2/svg/SVGFEDisplacementMapElement.h:
522         * ksvg2/svg/SVGFEFloodElement.h:
523         * ksvg2/svg/SVGFEGaussianBlurElement.h:
524         * ksvg2/svg/SVGFEImageElement.h:
525         * ksvg2/svg/SVGFELightElement.h:
526         * ksvg2/svg/SVGFEMergeNodeElement.h:
527         * ksvg2/svg/SVGFEOffsetElement.h:
528         * ksvg2/svg/SVGFESpecularLightingElement.h:
529         * ksvg2/svg/SVGFETileElement.h:
530         * ksvg2/svg/SVGFETurbulenceElement.h:
531         * ksvg2/svg/SVGFilterElement.h:
532         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
533         * ksvg2/svg/SVGFitToViewBox.cpp:
534         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
535         (WebCore::SVGFitToViewBox::parseViewBox):
536         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
537         * ksvg2/svg/SVGFitToViewBox.h:
538         * ksvg2/svg/SVGForeignObjectElement.h:
539         * ksvg2/svg/SVGGElement.h:
540         * ksvg2/svg/SVGGradientElement.cpp:
541         (SVGGradientElement::SVGGradientElement):
542         * ksvg2/svg/SVGGradientElement.h:
543         * ksvg2/svg/SVGHelper.cpp:
544         (WebCore::SVGHelper::PercentageOfViewport):
545         * ksvg2/svg/SVGImageElement.h:
546         * ksvg2/svg/SVGLength.cpp:
547         * ksvg2/svg/SVGLengthList.cpp:
548         (WebCore::SVGLengthList::SVGLengthList):
549         (WebCore::SVGLengthList::parse):
550         * ksvg2/svg/SVGLengthList.h:
551         * ksvg2/svg/SVGLineElement.h:
552         * ksvg2/svg/SVGLinearGradientElement.h:
553         * ksvg2/svg/SVGList.h:
554         (WebCore::SVGListBase::SVGListBase):
555         (WebCore::SVGListBase::~SVGListBase):
556         (WebCore::SVGListBase::numberOfItems):
557         (WebCore::SVGListBase::clear):
558         (WebCore::SVGListBase::initialize):
559         (WebCore::SVGListBase::getFirst):
560         (WebCore::SVGListBase::getLast):
561         (WebCore::SVGListBase::getItem):
562         (WebCore::SVGListBase::insertItemBefore):
563         (WebCore::SVGListBase::replaceItem):
564         (WebCore::SVGListBase::removeItem):
565         (WebCore::SVGListBase::appendItem):
566         (WebCore::SVGList::nullItem):
567         (WebCore::):
568         * ksvg2/svg/SVGLocatable.cpp:
569         * ksvg2/svg/SVGMarkerElement.h:
570         * ksvg2/svg/SVGMaskElement.h:
571         * ksvg2/svg/SVGNumberList.cpp:
572         (SVGNumberList::SVGNumberList):
573         (SVGNumberList::parse):
574         * ksvg2/svg/SVGNumberList.h:
575         * ksvg2/svg/SVGPathElement.cpp:
576         (WebCore::SVGPathElement::pathSegList):
577         * ksvg2/svg/SVGPathElement.h:
578         * ksvg2/svg/SVGPathSegList.cpp:
579         (WebCore::SVGPathSegList::SVGPathSegList):
580         * ksvg2/svg/SVGPathSegList.h:
581         * ksvg2/svg/SVGPatternElement.cpp:
582         (WebCore::SVGPatternElement::SVGPatternElement):
583         * ksvg2/svg/SVGPatternElement.h:
584         * ksvg2/svg/SVGPointList.cpp:
585         (SVGPointList::SVGPointList):
586         * ksvg2/svg/SVGPointList.h:
587         * ksvg2/svg/SVGPolyElement.cpp:
588         (SVGPolyElement::points):
589         (SVGPolyElement::svgPolyTo):
590         (SVGPolyElement::notifyAttributeChange):
591         * ksvg2/svg/SVGPolyElement.h:
592         * ksvg2/svg/SVGPolygonElement.cpp:
593         (SVGPolygonElement::toPathData):
594         * ksvg2/svg/SVGPolylineElement.cpp:
595         (SVGPolylineElement::toPathData):
596         * ksvg2/svg/SVGPreserveAspectRatio.h:
597         (WebCore::SVGPreserveAspectRatio::):
598         * ksvg2/svg/SVGRadialGradientElement.h:
599         * ksvg2/svg/SVGRectElement.h:
600         * ksvg2/svg/SVGSVGElement.cpp:
601         (WebCore::SVGSVGElement::SVGSVGElement):
602         (WebCore::SVGSVGElement::parseMappedAttribute):
603         (WebCore::SVGSVGElement::createRenderer):
604         * ksvg2/svg/SVGSVGElement.h:
605         * ksvg2/svg/SVGScriptElement.h:
606         * ksvg2/svg/SVGStopElement.h:
607         * ksvg2/svg/SVGStringList.cpp:
608         (WebCore::SVGStringList::SVGStringList):
609         (WebCore::SVGStringList::reset):
610         * ksvg2/svg/SVGStringList.h:
611         * ksvg2/svg/SVGStyledElement.h:
612         * ksvg2/svg/SVGStyledLocatableElement.cpp:
613         * ksvg2/svg/SVGStyledTransformableElement.cpp:
614         (SVGStyledTransformableElement::SVGStyledTransformableElement):
615         * ksvg2/svg/SVGStyledTransformableElement.h:
616         * ksvg2/svg/SVGSwitchElement.h:
617         * ksvg2/svg/SVGSymbolElement.h:
618         * ksvg2/svg/SVGTRefElement.h:
619         * ksvg2/svg/SVGTests.cpp:
620         (WebCore::SVGTests::isValid):
621         * ksvg2/svg/SVGTextContentElement.h:
622         * ksvg2/svg/SVGTextElement.cpp:
623         (WebCore::SVGTextElement::SVGTextElement):
624         * ksvg2/svg/SVGTextElement.h:
625         * ksvg2/svg/SVGTextPositioningElement.cpp:
626         (SVGTextPositioningElement::SVGTextPositioningElement):
627         (SVGTextPositioningElement::parseMappedAttribute):
628         * ksvg2/svg/SVGTextPositioningElement.h:
629         * ksvg2/svg/SVGTransformList.cpp:
630         (SVGTransformList::SVGTransformList):
631         (SVGTransformList::createSVGTransformFromMatrix):
632         (SVGTransformList::consolidate):
633         (SVGTransformList::concatenate):
634         * ksvg2/svg/SVGTransformList.h:
635         * ksvg2/svg/SVGURIReference.h:
636         * ksvg2/svg/SVGUseElement.h:
637         * ksvg2/svg/SVGViewElement.h:
638
639 2006-09-11  Adam Roben  <aroben@apple.com>
640
641         Rubberstamped by Adele.
642
643         Rename LocalGraphicsContext.{h,mm} to
644         LocalCurrentGraphicsContext.{h,mm} to match the class name.
645
646         * WebCore.xcodeproj/project.pbxproj:
647         * platform/mac/LocalCurrentGraphicsContext.mm: Added.
648         * platform/mac/LocalCurrentGraphicsContext.h: Added.
649         * platform/mac/LocalGraphicsContext.h: Removed.
650         * platform/mac/LocalGraphicsContext.mm: Removed.
651         * rendering/RenderThemeMac.mm: Fix #include to match renamed file
652
653 2006-09-11  Brady Eidson  <beidson@apple.com>
654
655         Build fix
656
657         * WebCore.xcodeproj/project.pbxproj:
658
659 2006-09-11  Kevin McCullough  <KMcCullough@apple.com>
660
661         Reviewed by Darin. 
662
663         - Implements comparePoint on the Range class
664
665         - Exposes RangeExceptions in JavaScript
666
667         * DerivedSources.make:
668         * WebCore.xcodeproj/project.pbxproj:
669         * bindings/js/kjs_binding.cpp:
670         * bindings/objc/DOMInternal.mm:
671         * dom/Range.cpp:
672         (WebCore::Range::comparePoint):
673         (WebCore::Range::compareNode):
674         * dom/Range.h:
675         (WebCore::Range::):
676         * dom/Range.idl:
677         * dom/RangeException.h: Added.
678         (WebCore::):
679         * dom/RangeException.idl: Added.
680         * page/DOMWindow.idl:
681
682 2006-09-11  Adam Roben  <aroben@apple.com>
683
684         Reviewed by timo.
685
686         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10812
687         Move LocalGraphicsContext out of RenderThemeMac
688
689         * WebCore.xcodeproj/project.pbxproj:
690         * platform/mac/LocalGraphicsContext.h: Added.
691         * platform/mac/LocalGraphicsContext.mm: Added.
692         (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
693         (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
694         * rendering/RenderThemeMac.mm:
695
696 2006-09-11  Vladimir Olexa  <vladimir.olexa@gmail.com>
697
698         Reviewed by Darin.
699
700         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10323
701           REGRESSION: javascript: URL containing '\\' gets passed as '//'
702
703         Test: fast/dom/javascript-backslash.html
704
705         * platform/KURL.cpp: (WebCore::KURL::init): Don't do backslash
706         substitution in JavaScript URLs.
707
708 2006-09-11  Sam Weinig  <sam.weinig@gmail.com>
709
710         Reviewed by Darin and Tim H.
711
712         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10792
713         Remove the [Exclude=LANGUAGE] idiom from IDL's and code generators 
714         for something better
715
716         - Replaces [Exclude=LANGUAGE] idiom with preprocessor #if defined(LANGUAGE)
717           idiom.
718
719         - Assorted whitespace changes to IDL files.
720
721         * DerivedSources.make:
722         * WebCore.xcodeproj/project.pbxproj:
723         * bindings/objc/DOMEvents.h:
724         * bindings/scripts/CodeGenerator.pm:
725         * bindings/scripts/CodeGeneratorJS.pm:
726         * bindings/scripts/CodeGeneratorObjC.pm:
727         * css/CSSRule.idl:
728         * css/CSSStyleDeclaration.idl:
729         * css/CSSValue.idl:
730         * dom/DOMImplementation.idl:
731         * dom/Document.idl:
732         * dom/Element.idl:
733         * dom/Event.idl:
734         * dom/KeyboardEvent.idl:
735         * dom/MouseEvent.idl:
736         * dom/NamedNodeMap.idl:
737         * dom/NodeFilter.idl:
738         * dom/UIEvent.idl:
739         * dom/WheelEvent.idl:
740         * html/HTMLAnchorElement.idl:
741         * html/HTMLAreaElement.idl:
742         * html/HTMLDocument.idl:
743         * html/HTMLElement.idl:
744         * html/HTMLImageElement.idl:
745         * html/HTMLInputElement.idl:
746         * html/HTMLLinkElement.idl:
747         * html/HTMLOptionsCollection.idl:
748
749 2006-09-11  David Hyatt  <hyatt@apple.com>
750
751         Fix an unwitting victim of the kMin->min change.  calcBlockMinMaxWidth
752         was accidentally renamed to calcBlominMaxWidth.
753
754         * rendering/RenderBlock.cpp:
755         (WebCore::RenderBlock::calcMinMaxWidth):
756         (WebCore::RenderBlock::calcBlockMinMaxWidth):
757         * rendering/RenderBlock.h:
758
759 2006-09-10  David Hyatt  <hyatt@apple.com>
760
761         Rework the printer font stuff a little bit so that the Font API doesn't
762         have to be changed.
763
764         Reviewed by eseidel
765
766         * WebCore.xcodeproj/project.pbxproj:
767         * bridge/mac/WebCoreStringTruncator.mm:
768         (truncateString):
769         (+[WebCoreStringTruncator widthOfString:font:]):
770         * platform/Font.cpp:
771         (WebCore::Font::drawSimpleText):
772         * platform/Font.h:
773         * platform/TextStyle.h:
774         (WebCore::TextStyle::TextStyle):
775         (WebCore::TextStyle::attemptFontSubstitution):
776         (WebCore::TextStyle::setRTL):
777         * platform/mac/FontMac.mm:
778         (WebCore::m_wordSpacing):
779         (WebCore::Font::drawGlyphs):
780         * platform/mac/ListBoxMac.mm:
781         (itemTextRenderer):
782         (groupLabelTextRenderer):
783         (-[WebCoreTableView drawRow:clipRect:]):
784         * platform/mac/PopUpButtonMac.mm:
785         (PopUpButton::sizeHint):
786         * platform/mac/TextFieldMac.mm:
787         (-[NSSearchFieldCell _addStringToRecentSearches:]):
788         * platform/mac/WebCoreTextRenderer.mm:
789         (WebCoreDrawTextAtPoint):
790         (WebCoreTextFloatWidth):
791         * rendering/EllipsisBox.cpp:
792         (WebCore::EllipsisBox::paint):
793         * rendering/InlineTextBox.cpp:
794         (WebCore::InlineTextBox::paint):
795         * rendering/RenderImage.cpp:
796         (WebCore::RenderImage::paint):
797         * rendering/RenderListMarker.cpp:
798         (WebCore::RenderListMarker::paint):
799
800 2006-09-10  Brady Eidson  <beidson@apple.com>
801
802         Reviewed by Maciej
803
804         Small cleanups + future plans
805
806         * loader/icon/IconDatabase.cpp:
807         (WebCore::IconDatabase::open): path separator cleanup
808         * platform/Image.h: 
809      
810 2006-09-10  Brady Eidson  <beidson@apple.com>
811
812         Reviewed by Maciej
813
814         Added specialized HashTraits
815
816         * platform/IntSizeHash.h:
817
818 2006-09-10  Brady Eidson  <beidson@apple.com>
819
820         Forgetting header #define protection is BAAAAAD
821         (and re-alphabetized the project file)
822
823         * WebCore.xcodeproj/project.pbxproj:
824         * platform/IntSizeHash.h:
825
826 2006-09-10  Brady Eidson  <beidson@apple.com>
827
828         Reviewed by Maciej
829
830         Moved the custom IntSize hash out of IconDatabase into a more generally useful file
831
832         * WebCore.xcodeproj/project.pbxproj:
833         * loader/icon/IconDatabase.h:
834         * platform/IntSizeHash.h: Added.
835
836 2006-09-10  David Hyatt  <hyatt@apple.com>
837
838         Fix for bug 10801, form controls that get styled suddenly lose their
839         intrinsic margins.  Move the intrinsic margin addition code into
840         adjustRenderStyle and get it out of the theme code and the old form control
841         code.
842
843         Reviewed by aroben
844
845         * css/cssstyleselector.cpp:
846         (WebCore::addIntrinsicMargins):
847         (WebCore::CSSStyleSelector::adjustRenderStyle):
848         * css/html4.css:
849         * rendering/DeprecatedRenderSelect.h:
850         (WebCore::DeprecatedRenderSelect::calcReplacedHeight):
851         * rendering/DeprecatedSlider.h:
852         * rendering/RenderFormElement.cpp:
853         (WebCore::RenderFormElement::setStyle):
854         * rendering/RenderFormElement.h:
855         * rendering/RenderLayer.cpp:
856         (WebCore::RenderLayer::resize):
857         * rendering/RenderThemeMac.h:
858         * rendering/RenderThemeMac.mm:
859         (WebCore::RenderThemeMac::adjustButtonStyle):
860         (WebCore::RenderThemeMac::adjustTextFieldStyle):
861         (WebCore::RenderThemeMac::adjustTextAreaStyle):
862         (WebCore::RenderThemeMac::adjustMenuListStyle):
863         (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
864         * rendering/RenderThemeWin.cpp:
865         (WebCore::RenderThemeWin::adjustButtonStyle):
866         (WebCore::RenderThemeWin::adjustTextFieldStyle):
867         (WebCore::RenderThemeWin::adjustTextAreaStyle):
868
869 2006-09-10  Darin Adler  <darin@apple.com>
870
871         - test for http://bugzilla.opendarwin.org/show_bug.cgi?id=10547
872
873         * manual-tests/target-test.html: Added.
874         * manual-tests/targeted.html: Added.
875
876 2006-09-10  Eric Seidel  <eric@eseidel.com>
877
878         Reviewed by darin.
879         
880         Remove a bunch more NSGraphicsContext related code.
881         Add a LocalCurrentGraphicsContext to simplify methods which need to call up into AppKit controls (and thus depend on the [NSGraphicsContext currentContext] being set correctly)
882         Add an "isPrinting" flag to many of the text drawing functions in order to avoid the need for a GraphicsContext::isPrinting() function.
883
884         No tests were harmed in the making of this patch.
885
886         * bridge/mac/WebCoreFrameBridge.mm:
887         (-[WebCoreFrameBridge drawRect:]):
888         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
889         (WebCore::KRenderingDeviceContextQuartz::cgContext):
890         (WebCore::KRenderingDeviceQuartz::isBuffered):
891         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
892         (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
893         (WebCore::KRenderingDeviceContextQuartz::~KRenderingDeviceContextQuartz):
894         * kcanvas/device/quartz/QuartzSupport.mm:
895         * platform/Font.cpp:
896         (WebCore::Font::drawSimpleText):
897         (WebCore::Font::drawText):
898         * platform/Font.h:
899         * platform/GraphicsContext.cpp:
900         (WebCore::GraphicsContext::drawText):
901         * platform/GraphicsContext.h:
902         * platform/mac/FileButtonMac.mm:
903         (-[WebFileChooserButton drawRect:]):
904         * platform/mac/FontMac.mm:
905         (WebCore::ATSULayoutParameters::ATSULayoutParameters):
906         (WebCore::ATSULayoutParameters::initialize):
907         (WebCore::Font::drawComplexText):
908         (WebCore::Font::drawGlyphs):
909         * platform/mac/GraphicsContextMac.mm:
910         (WebCore::GraphicsContext::drawLineForMisspelling):
911         * platform/mac/ListBoxMac.mm:
912         (-[WebCoreTableView drawRow:clipRect:]):
913         * platform/mac/WebCoreTextRenderer.mm:
914         (WebCoreDrawTextAtPoint):
915         * rendering/EllipsisBox.cpp:
916         (WebCore::EllipsisBox::paint):
917         * rendering/InlineTextBox.cpp:
918         (WebCore::InlineTextBox::paint):
919         * rendering/RenderImage.cpp:
920         (WebCore::RenderImage::paint):
921         * rendering/RenderListMarker.cpp:
922         (WebCore::RenderListMarker::paint):
923         * rendering/RenderThemeMac.mm:
924         (WebCore::WebCoreNSGraphicsContextBridge::WebCoreNSGraphicsContextBridge):
925         (WebCore::WebCoreNSGraphicsContextBridge::~WebCoreNSGraphicsContextBridge):
926         (WebCore::RenderThemeMac::paintButton):
927         (WebCore::RenderThemeMac::paintTextField):
928         (WebCore::RenderThemeMac::paintTextArea):
929
930 2006-09-09  Steve Falkenburg  <sfalken@apple.com>
931
932         Reviewed by aroben.
933
934         Fixes to work with string API changes.
935
936         * platform/cf/ResourceLoaderCFNet.cpp:
937         (WebCore::arrayFromFormData):
938         (WebCore::ResourceLoader::start):
939         * platform/cf/StringCF.cpp:
940         * platform/cf/StringImplCF.cpp:
941
942 2006-09-09  David Hyatt  <hyatt@apple.com>
943
944         Fix for Bugzilla bug 5500, scrollLeft/Top/Width/Height properties not supported
945         on textarea.  Refactored the DOM getters and setters to go through the renderer
946         instead of right to the layer.  The renderer functions are virtual so that the
947         text control can subclass and forward to its anonymous div.
948
949         Fix for Bugzilla bug 10719, When positioned objects are sizing using their
950         containing block width as a guide, they should not ever use the line width like
951         non-positioned objects do.
952
953         Reviewed by aroben
954
955         * WebCore.xcodeproj/project.pbxproj:
956         * dom/Element.cpp:
957         (WebCore::Element::scrollLeft):
958         (WebCore::Element::scrollTop):
959         (WebCore::Element::setScrollLeft):
960         (WebCore::Element::setScrollTop):
961         * rendering/RenderBox.cpp:
962         (WebCore::RenderBox::containingBlockWidthForPositioned):
963         * rendering/RenderObject.cpp:
964         (WebCore::RenderObject::clientWidth):
965         (WebCore::RenderObject::clientHeight):
966         (WebCore::RenderObject::scrollWidth):
967         (WebCore::RenderObject::scrollHeight):
968         (WebCore::RenderObject::scrollLeft):
969         (WebCore::RenderObject::scrollTop):
970         (WebCore::RenderObject::setScrollLeft):
971         (WebCore::RenderObject::setScrollTop):
972         (WebCore::RenderObject::hasStaticX):
973         (WebCore::RenderObject::hasStaticY):
974         * rendering/RenderObject.h:
975         (WebCore::RenderObject::clientLeft):
976         (WebCore::RenderObject::clientTop):
977         * rendering/RenderTextControl.cpp:
978         (WebCore::RenderTextControl::scrollWidth):
979         (WebCore::RenderTextControl::scrollHeight):
980         (WebCore::RenderTextControl::scrollLeft):
981         (WebCore::RenderTextControl::scrollTop):
982         (WebCore::RenderTextControl::setScrollLeft):
983         (WebCore::RenderTextControl::setScrollTop):
984         * rendering/RenderTextControl.h:
985
986 2006-09-09  David Hyatt  <hyatt@apple.com>
987
988         Implement support for the WinIE clientLeft and clientTop extensions.
989
990         Reviewed by aroben
991
992         * dom/Element.cpp:
993         (WebCore::Element::clientLeft):
994         (WebCore::Element::clientTop):
995         * dom/Element.h:
996         * dom/Element.idl:
997         * rendering/RenderObject.h:
998         (WebCore::RenderObject::clientLeft):
999         (WebCore::RenderObject::clientTop):
1000
1001 2006-09-09  Sam Weinig  <sam.weinig@gmail.com>
1002
1003         Reviewed by Eric.
1004
1005         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10795
1006         Auto-generate the Objective-C DOM XPath bindings
1007
1008         - Auto-generates DOMXPathExpression, DOMXPathNSResolver and DOMXPathResult.
1009
1010         * DerivedSources.make:
1011         * WebCore.xcodeproj/project.pbxproj:
1012         * bindings/objc/DOMPrivate.h:
1013         * bindings/objc/DOMXPath.h:
1014         * bindings/objc/DOMXPath.mm:
1015         * bindings/objc/PublicDOMInterfaces.h:
1016         * xml/XPathExpression.idl:
1017         * xml/XPathNSResolver.idl:
1018         * xml/XPathResult.idl:
1019
1020 2006-09-09  Sam Weinig  <sam.weinig@gmail.com>
1021
1022         Reviewed by Eric.
1023
1024         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10791
1025         Even More Objective-C DOM auto-generation cleanup
1026
1027         - Auto-generate some remaining extension methods for DOMDocument
1028           and DOMCSSStyleDeclaration.
1029
1030         - Split DOMHTMLEmbedElement into it's own files.  It can't be
1031           auto-generated yet because the Objective-C interface is significantly
1032           different from the implementation interface.  Since HTMLEmbedElement
1033           is not in the W3C spec, this is somewhat of a gray area.
1034
1035         - Auto-generate DOMEventListener protocol.
1036
1037         - Clean up the IDL files by separating the extensions from the
1038           specified methods and attributes.
1039
1040         * DerivedSources.make:
1041         * WebCore.xcodeproj/project.pbxproj:
1042         * bindings/objc/DOM.mm:
1043         * bindings/objc/DOMCSS.mm:
1044         * bindings/objc/DOMEventListener.h: Removed.
1045         * bindings/objc/DOMExtensions.h:
1046         * bindings/objc/DOMHTML.h:
1047         * bindings/objc/DOMHTML.mm:
1048         * bindings/objc/DOMHTMLEmbedElement.h: Added.
1049         * bindings/objc/DOMHTMLEmbedElement.mm: Added.
1050         (-[DOMHTMLEmbedElement align]):
1051         (-[DOMHTMLEmbedElement setAlign:]):
1052         (-[DOMHTMLEmbedElement height]):
1053         (-[DOMHTMLEmbedElement setHeight:]):
1054         (-[DOMHTMLEmbedElement name]):
1055         (-[DOMHTMLEmbedElement setName:]):
1056         (-[DOMHTMLEmbedElement src]):
1057         (-[DOMHTMLEmbedElement setSrc:]):
1058         (-[DOMHTMLEmbedElement type]):
1059         (-[DOMHTMLEmbedElement setType:]):
1060         (-[DOMHTMLEmbedElement width]):
1061         (-[DOMHTMLEmbedElement setWidth:]):
1062         * bindings/objc/DOMPrivate.h:
1063         * bindings/objc/PublicDOMInterfaces.h:
1064         * css/CSSStyleDeclaration.idl:
1065         * dom/Document.idl:
1066         * dom/KeyboardEvent.h:
1067         * dom/KeyboardEvent.idl:
1068         * dom/MouseEvent.idl:
1069         * dom/MutationEvent.idl:
1070         * dom/OverflowEvent.idl:
1071         * dom/UIEvent.idl:
1072         * dom/WheelEvent.idl:
1073         * html/HTMLEmbedElement.idl: Added.
1074
1075 2006-09-09  Eric Seidel  <eric@eseidel.com>
1076
1077         Reviewed by Tim H.
1078         
1079         Remove DeprecatedString usage and fix style.
1080         http://bugzilla.opendarwin.org/show_bug.cgi?id=10787
1081
1082         No tests were harmed in the making of this patch.
1083
1084         * kcanvas/KCanvasFilters.cpp:
1085         (WebCore::KCanvasFilterEffect::in):
1086         (WebCore::KCanvasFilterEffect::setIn):
1087         (WebCore::KCanvasFilterEffect::result):
1088         (WebCore::KCanvasFilterEffect::setResult):
1089         (WebCore::KCanvasFEMerge::externalRepresentation):
1090         * kcanvas/KCanvasFilters.h:
1091         (WebCore::KCanvasFEBlend::in2):
1092         (WebCore::KCanvasFEBlend::setIn2):
1093         (WebCore::KCanvasFEComposite::in2):
1094         (WebCore::KCanvasFEComposite::setIn2):
1095         (WebCore::KCanvasFEDisplacementMap::in2):
1096         (WebCore::KCanvasFEDisplacementMap::setIn2):
1097         (WebCore::KCanvasFEMerge::mergeInputs):
1098         (WebCore::KCanvasFEMerge::setMergeInputs):
1099         * kcanvas/KCanvasResources.cpp:
1100         (WebCore::KCanvasResource::idInRegistry):
1101         (WebCore::KCanvasResource::setIdInRegistry):
1102         (WebCore::getResourceById):
1103         * kcanvas/KCanvasResources.h:
1104         * kcanvas/RenderPath.cpp:
1105         (WebCore::RenderPath::getAbsoluteRepaintRect):
1106         (WebCore::RenderPath::paint):
1107         (WebCore::RenderPath::drawMarkersIfNeeded):
1108         * kcanvas/RenderSVGContainer.cpp:
1109         (WebCore::RenderSVGContainer::paint):
1110         (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
1111         * kcanvas/RenderSVGImage.cpp:
1112         (WebCore::RenderSVGImage::paint):
1113         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
1114         * kcanvas/RenderSVGText.cpp:
1115         (WebCore::RenderSVGText::paint):
1116         * kcanvas/device/KRenderingPaintServer.h:
1117         (WebCore::KRenderingPaintServer::idInRegistry):
1118         (WebCore::KRenderingPaintServer::setIdInRegistry):
1119         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
1120         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1121         (WebCore::KCanvasFilterQuartz::imageForName):
1122         (WebCore::KCanvasFilterQuartz::setImageForName):
1123         (WebCore::KCanvasFEMergeQuartz::getCIFilter):
1124         * ksvg2/css/SVGCSSStyleSelector.cpp:
1125         (WebCore::CSSStyleSelector::applySVGProperty):
1126         * ksvg2/css/SVGRenderStyle.cpp:
1127         * ksvg2/css/SVGRenderStyle.h:
1128         * ksvg2/css/SVGRenderStyleDefs.h:
1129         * ksvg2/ecma/GlobalObject.cpp:
1130         (GlobalObject::get):
1131         * ksvg2/misc/KSVGTimeScheduler.cpp:
1132         (WebCore::SVGTimer::notifyAll):
1133         * ksvg2/svg/SVGDescElement.cpp:
1134         (WebCore::SVGDescElement::SVGDescElement):
1135         (WebCore::SVGDescElement::description):
1136         * ksvg2/svg/SVGDescElement.h:
1137         * ksvg2/svg/SVGFEBlendElement.cpp:
1138         (WebCore::SVGFEBlendElement::SVGFEBlendElement):
1139         (WebCore::SVGFEBlendElement::filterEffect):
1140         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1141         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
1142         (SVGFEColorMatrixElement::filterEffect):
1143         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1144         (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
1145         (WebCore::SVGFEComponentTransferElement::filterEffect):
1146         * ksvg2/svg/SVGFECompositeElement.cpp:
1147         (SVGFECompositeElement::SVGFECompositeElement):
1148         (SVGFECompositeElement::filterEffect):
1149         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1150         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
1151         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
1152         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1153         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
1154         (SVGFEDisplacementMapElement::filterEffect):
1155         * ksvg2/svg/SVGFEFloodElement.cpp:
1156         (WebCore::SVGFEFloodElement::SVGFEFloodElement):
1157         (WebCore::SVGFEFloodElement::filterEffect):
1158         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1159         (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
1160         (SVGFEGaussianBlurElement::filterEffect):
1161         * ksvg2/svg/SVGFELightElement.cpp:
1162         * ksvg2/svg/SVGFEMergeElement.cpp:
1163         (SVGFEMergeElement::filterEffect):
1164         * ksvg2/svg/SVGFEOffsetElement.cpp:
1165         (SVGFEOffsetElement::SVGFEOffsetElement):
1166         (SVGFEOffsetElement::filterEffect):
1167         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1168         (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
1169         (SVGFESpecularLightingElement::filterEffect):
1170         * ksvg2/svg/SVGFETileElement.cpp:
1171         (WebCore::SVGFETileElement::SVGFETileElement):
1172         (WebCore::SVGFETileElement::filterEffect):
1173         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1174         (SVGFETurbulenceElement::SVGFETurbulenceElement):
1175         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
1176         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
1177         * ksvg2/svg/SVGFitToViewBox.cpp:
1178         (WebCore::SVGFitToViewBox::parseViewBox):
1179         (WebCore::SVGFitToViewBox::parseMappedAttribute):
1180         * ksvg2/svg/SVGFitToViewBox.h:
1181         * ksvg2/svg/SVGLinearGradientElement.cpp:
1182         (SVGLinearGradientElement::buildGradient):
1183         * ksvg2/svg/SVGPatternElement.cpp:
1184         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1185         (WebCore::SVGPatternElement::notifyAttributeChange):
1186         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1187         (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
1188         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
1189         (WebCore::SVGPreserveAspectRatio::getCTM):
1190         * ksvg2/svg/SVGPreserveAspectRatio.h:
1191         * ksvg2/svg/SVGRadialGradientElement.cpp:
1192         (WebCore::SVGRadialGradientElement::buildGradient):
1193         * ksvg2/svg/SVGStyleElement.cpp:
1194         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1195         * ksvg2/svg/SVGViewElement.cpp:
1196         (WebCore::SVGViewElement::SVGViewElement):
1197         (WebCore::SVGViewElement::parseMappedAttribute):
1198         * ksvg2/svg/SVGZoomAndPan.cpp:
1199         (WebCore::SVGZoomAndPan::SVGZoomAndPan):
1200
1201 2006-09-08  Darin Adler  <darin@apple.com>
1202
1203         Reviewed by Tim H.
1204
1205         <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
1206         
1207         Fixes the quoting logic. The previous logic did not account for the
1208         CSS tokenizer's regex character range between * and ~ as valid in URL types.
1209
1210         * css/CSSPrimitiveValue.cpp:
1211         (WebCore::isCSSTokenizerURL):
1212
1213 2006-09-09  Alexey Proskuryakov  <ap@nypop.com>
1214
1215         Reviewed by Darin.
1216
1217         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10759
1218           fast/AppleScript/array.html test failing
1219
1220         * bridge/mac/WebCoreFrameBridge.mm:
1221         (aeDescFromJSValue): Convert integer values to typeSInt32 AE descriptors.
1222
1223 2006-09-08  Eric Seidel  <eric@eseidel.com>
1224
1225         Reviewed by darin.
1226
1227         Replace incorrect fooBaseValue() calls with foo() calls instead.
1228         http://bugzilla.opendarwin.org/show_bug.cgi?id=10746
1229         
1230         With the previously broken animation system, we had both base and anim values
1231         but they were not automatically connected/disconnected when animation started and stopped.
1232         So the animVals were basically never used (since they were always wrong).
1233         Now, animVal and baseVal are handled correctly.
1234         
1235         There are only 3 places in the code where we will ever need to use the BaseValue accessor variants.
1236         1. SVGAnimated* DOM bindings
1237         2. Animation Code
1238         3. parseMappedAttribute implementations
1239
1240         * kcanvas/RenderForeignObject.cpp:
1241         (WebCore::RenderForeignObject::translationForAttributes):
1242         * kcanvas/RenderSVGImage.cpp:
1243         (WebCore::RenderSVGImage::paint):
1244         (WebCore::RenderSVGImage::relativeBBox):
1245         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
1246         (WebCore::RenderSVGImage::translationForAttributes):
1247         * kcanvas/RenderSVGText.cpp:
1248         (WebCore::RenderSVGText::translationForAttributes):
1249         * ksvg2/misc/SVGImageLoader.cpp:
1250         (WebCore::SVGImageLoader::updateFromElement):
1251         * ksvg2/svg/SVGAElement.cpp:
1252         (WebCore::SVGAElement::defaultEventHandler):
1253         * ksvg2/svg/SVGCircleElement.cpp:
1254         (SVGCircleElement::parseMappedAttribute):
1255         (SVGCircleElement::toPathData):
1256         (SVGCircleElement::pushAttributeContext):
1257         (SVGCircleElement::hasPercentageValues):
1258         * ksvg2/svg/SVGClipPathElement.cpp:
1259         (SVGClipPathElement::canvasResource):
1260         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1261         (SVGComponentTransferFunctionElement::transferFunction):
1262         * ksvg2/svg/SVGCursorElement.cpp:
1263         (SVGCursorElement::parseMappedAttribute):
1264         * ksvg2/svg/SVGEllipseElement.cpp:
1265         (WebCore::SVGEllipseElement::parseMappedAttribute):
1266         (WebCore::SVGEllipseElement::toPathData):
1267         (WebCore::SVGEllipseElement::pushAttributeContext):
1268         (WebCore::SVGEllipseElement::hasPercentageValues):
1269         * ksvg2/svg/SVGFEBlendElement.cpp:
1270         (SVGFEBlendElement::filterEffect):
1271         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1272         (SVGFEColorMatrixElement::filterEffect):
1273         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1274         (SVGFEComponentTransferElement::filterEffect):
1275         * ksvg2/svg/SVGFECompositeElement.cpp:
1276         (SVGFECompositeElement::filterEffect):
1277         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1278         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
1279         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1280         (SVGFEDisplacementMapElement::filterEffect):
1281         * ksvg2/svg/SVGFEDistantLightElement.cpp:
1282         (WebCore::SVGFEDistantLightElement::lightSource):
1283         * ksvg2/svg/SVGFEFloodElement.cpp:
1284         (SVGFEFloodElement::filterEffect):
1285         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1286         (SVGFEGaussianBlurElement::filterEffect):
1287         * ksvg2/svg/SVGFEImageElement.cpp:
1288         (SVGFEImageElement::parseMappedAttribute):
1289         * ksvg2/svg/SVGFEMergeElement.cpp:
1290         (SVGFEMergeElement::SVGFEMergeElement):
1291         (SVGFEMergeElement::filterEffect):
1292         * ksvg2/svg/SVGFEOffsetElement.cpp:
1293         (SVGFEOffsetElement::filterEffect):
1294         * ksvg2/svg/SVGFEPointLightElement.cpp:
1295         (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
1296         (WebCore::SVGFEPointLightElement::lightSource):
1297         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1298         (SVGFESpecularLightingElement::filterEffect):
1299         * ksvg2/svg/SVGFESpotLightElement.cpp:
1300         (WebCore::SVGFESpotLightElement::lightSource):
1301         * ksvg2/svg/SVGFETileElement.cpp:
1302         (SVGFETileElement::filterEffect):
1303         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1304         (SVGFETurbulenceElement::filterEffect):
1305         * ksvg2/svg/SVGFilterElement.cpp:
1306         (SVGFilterElement::canvasResource):
1307         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
1308         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
1309         * ksvg2/svg/SVGGradientElement.cpp:
1310         (SVGGradientElement::rebuildStops):
1311         * ksvg2/svg/SVGHelper.cpp:
1312         (WebCore::SVGHelper::PercentageOfViewport):
1313         * ksvg2/svg/SVGLineElement.cpp:
1314         (SVGLineElement::toPathData):
1315         (SVGLineElement::pushAttributeContext):
1316         (SVGLineElement::hasPercentageValues):
1317         * ksvg2/svg/SVGLinearGradientElement.cpp:
1318         (SVGLinearGradientElement::buildGradient):
1319         * ksvg2/svg/SVGMarkerElement.cpp:
1320         (WebCore::SVGMarkerElement::canvasResource):
1321         * ksvg2/svg/SVGMaskElement.cpp:
1322         (WebCore::SVGMaskElement::attributeChanged):
1323         (WebCore::SVGMaskElement::drawMaskerContent):
1324         * ksvg2/svg/SVGPatternElement.cpp:
1325         (WebCore::SVGPatternElement::pushAttributeContext):
1326         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1327         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1328         (WebCore::SVGPatternElement::notifyAttributeChange):
1329         (WebCore::SVGPatternElement::getCTM):
1330         * ksvg2/svg/SVGRadialGradientElement.cpp:
1331         (WebCore::SVGRadialGradientElement::buildGradient):
1332         * ksvg2/svg/SVGRectElement.cpp:
1333         (WebCore::SVGRectElement::toPathData):
1334         (WebCore::SVGRectElement::pushAttributeContext):
1335         (WebCore::SVGRectElement::hasPercentageValues):
1336         * ksvg2/svg/SVGSVGElement.cpp:
1337         (WebCore::SVGSVGElement::viewport):
1338         (WebCore::SVGSVGElement::parseMappedAttribute):
1339         (WebCore::SVGSVGElement::getCTM):
1340         (WebCore::SVGSVGElement::getScreenCTM):
1341         (WebCore::SVGSVGElement::createRenderer):
1342         * ksvg2/svg/SVGTRefElement.cpp:
1343         (SVGTRefElement::updateReferencedText):
1344         * ksvg2/svg/SVGUseElement.cpp:
1345         (SVGUseElement::closeRenderer):
1346
1347 2006-09-08  Eric Seidel  <eric@eseidel.com>
1348
1349         Reviewed by beth.
1350
1351         Remove the last vestiges of KDOM (KDOMCSSValue and KDOMCSSValueList)
1352         http://bugzilla.opendarwin.org/show_bug.cgi?id=10778
1353
1354         * ksvg2/css/SVGCSSParser.cpp:
1355         (WebCore::CSSParser::parseSVGValue):
1356         (WebCore::CSSParser::parseSVGStrokeDasharray):
1357         (WebCore::CSSParser::parseSVGPaint):
1358         (WebCore::CSSParser::parseSVGColor):
1359
1360 2006-09-07  Sam Weinig  <sam.weinig@gmail.com>
1361
1362         Reviewed by Darin and Tim H.
1363
1364         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10774
1365         Auto-generate the Objective-C DOM Traversal bindings
1366
1367         - Auto-generates DOMNodeIterator and DOMTreeWalker.
1368
1369         - Splits out DOMNodeFilter into its own file.
1370
1371         * DerivedSources.make:
1372         * WebCore.xcodeproj/project.pbxproj:
1373         * bindings/objc/DOM.mm:
1374         * bindings/objc/DOMNodeFilter.h: Added.
1375         * bindings/objc/DOMTraversal.h:
1376         * bindings/objc/PublicDOMInterfaces.h:
1377         * bindings/scripts/CodeGeneratorObjC.pm:
1378         * dom/NodeFilter.idl:
1379         * dom/NodeIterator.idl:
1380         * dom/Range.idl:
1381         * dom/TreeWalker.idl:
1382
1383 2006-09-07  MorganL  <morlmor@yahoo.com>
1384
1385         Reviewed by Darin, landed by Adam.
1386
1387         Fixes part of bug 10743: Windows build busted.
1388
1389         * platform/win/FontCacheWin.cpp: Add missing #include, set svn:eol-style to native
1390         (WebCore::FontCache::getFontLinkInterface):
1391         (WebCore::FontCache::getFontDataForCharacters):
1392         * platform/win/FontDataWin.cpp: Ditto.
1393         (WebCore::FontData::platformWidthForGlyph):
1394         * platform/win/FontWin.cpp: Add missing #include, band-aid over const problem with GlyphBufferGlyph
1395         (WebCore::Font::drawGlyphs):
1396         * platform/win/ResourceLoaderWin.cpp: Add missing #include, change .ascii() to .latin1()
1397         (WebCore::ResourceLoaderWndProc):
1398         (WebCore::ResourceLoader::start):
1399
1400 2006-09-07  Alexey Proskuryakov  <ap@nypop.com>
1401
1402         Reviewed by Darin.
1403
1404         http://bugzilla.opendarwin.org/show_bug.cgi?id=10753
1405         REGRESSION: The beginning of a CSS file is missing
1406
1407         Test: http/tests/incremental/slow-utf8-css.pl
1408
1409         * loader/Decoder.cpp:
1410         (WebCore::Decoder::checkForCSSCharset): Use the same buffering logic as used for HTML.
1411         (WebCore::Decoder::decode):
1412         * loader/Decoder.h: Added a return value and a movedDataToBuffer parameter to
1413         checkForCSSCharset().
1414
1415 2006-09-07  Sam Weinig  <sam.weinig@gmail.com>
1416
1417         Reviewed by Darin.
1418
1419         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10766
1420         Auto-generate the Objective-C DOM Events bindings
1421
1422         - Auto-generates DOMEvent, DOMKeyboardEvent, DOMMouseEvent, DOMMutationEvent, 
1423           DOMOverflowEvent, DOMUIEvent, and DOMWheelEvent.
1424           
1425         - Splits out DOMEventListener and DOMEventTarget into their own files.
1426
1427         * DerivedSources.make:
1428         * WebCore.xcodeproj/project.pbxproj:
1429         * bindings/objc/DOMEventListener.h: Added.
1430         * bindings/objc/DOMEventTarget.h: Added.
1431         * bindings/objc/DOMEvents.h:
1432         * bindings/objc/DOMEvents.mm:
1433         (-[DOMEvent WebCore::]):
1434         (-[DOMEvent _initWithEvent:WebCore::]):
1435         (+[DOMEvent _eventWith:WebCore::]):
1436         * bindings/objc/DOMEventsNonstandard.mm: Removed.
1437         * bindings/objc/DOMNode.h:
1438         * bindings/objc/PublicDOMInterfaces.h:
1439         * bindings/scripts/CodeGenerator.pm:
1440         * bindings/scripts/CodeGeneratorObjC.pm:
1441         * dom/Event.idl:
1442         * dom/EventListener.idl: Added.
1443         * dom/EventTarget.idl: Added.
1444         * dom/KeyboardEvent.idl:
1445         * dom/MouseEvent.idl:
1446         * dom/UIEvent.idl:
1447         * dom/WheelEvent.idl:
1448
1449 2006-09-07  Rob Buis  <buis@kde.org>
1450
1451         Reviewed by Maciej.
1452
1453         http://bugzilla.opendarwin.org/show_bug.cgi?id=9753
1454         SVG with width and height 100% leaves room for scrollbar on the right.
1455
1456         Relayout children of svg containers, except svg shapes that do not depend on percentages.
1457
1458         * kcanvas/RenderPath.cpp:
1459         (WebCore::RenderPath::hasPercentageValues):
1460         * kcanvas/RenderPath.h:
1461         * kcanvas/RenderSVGContainer.cpp:
1462         (WebCore::RenderSVGContainer::layout):
1463         * ksvg2/svg/SVGCircleElement.cpp:
1464         (SVGCircleElement::hasPercentageValues):
1465         * ksvg2/svg/SVGCircleElement.h:
1466         * ksvg2/svg/SVGEllipseElement.cpp:
1467         (WebCore::SVGEllipseElement::hasPercentageValues):
1468         * ksvg2/svg/SVGEllipseElement.h:
1469         * ksvg2/svg/SVGLineElement.cpp:
1470         (SVGLineElement::hasPercentageValues):
1471         * ksvg2/svg/SVGLineElement.h:
1472         * ksvg2/svg/SVGRectElement.cpp:
1473         (WebCore::SVGRectElement::hasPercentageValues):
1474         * ksvg2/svg/SVGRectElement.h:
1475         * ksvg2/svg/SVGStyledElement.h:
1476         (WebCore::SVGStyledElement::hasPercentageValues):
1477
1478 2006-09-06  Brady Eidson <beidson@apple.com>
1479
1480         Constant renamed in 16250 wasn't changed in each use
1481
1482         * platform/win/GlyphMapWin.cpp:
1483         (WebCore::GlyphMap::fillPage):
1484
1485 2006-09-06  Darin Adler  <darin@apple.com>
1486
1487         Reviewed by Tim Hatcher.
1488
1489         - fix crashes affecting editing layout tests (regressions from my vector change)
1490
1491         * editing/BreakBlockquoteCommand.cpp:
1492         (WebCore::BreakBlockquoteCommand::doApply): Added check for empty vector.
1493         * editing/InsertParagraphSeparatorCommand.cpp:
1494         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
1495
1496 2006-09-06  David Harrison  <harrison@apple.com>
1497
1498         Reviewed and tweaked by Tim H.
1499
1500         <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation
1501
1502         If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
1503         to trigger a search that will include auto activation. No PLT or iBench perf impact.
1504         No layout tests affected. Not testable in an automated way that will work on all systems.
1505
1506         * platform/mac/WebFontCache.mm:
1507         (+[WebFontCache fontWithFamily:traits:size:]):
1508
1509 2006-09-06  Nikolas Zimmermann  <zimmermann@kde.org>
1510
1511         Reviewed and landed by ap.
1512
1513         Fix Qt/Linux build.
1514
1515         * CMakeLists.txt: Take out CharacterData.cpp from build / add new Text* files to build.
1516         * platform/qt/BrowserExtensionQt.cpp: Add wtf/Platform.h include.
1517         * platform/qt/FontCacheQt.cpp: Add FontData.h include.
1518         * platform/qt/FontQt.cpp:
1519         (WebCore::Font::drawGlyphs): Fix constness in reinterpret_cast.
1520         * platform/qt/FrameQt.cpp:
1521         (WebCore::FrameQt::markMisspellings): Change "SelectionController" param type to "Selection".
1522         (WebCore::FrameQt::respondToChangedSelection): Ditto.
1523         (WebCore::FrameQt::respondToChangedContents): Ditto.
1524         (WebCore::FrameQt::shouldChangeSelection): Ditto.
1525         * platform/qt/FrameQt.h: Ditto.
1526         * platform/qt/ImageQt.cpp:
1527         (WebCore::Image::supportsType): Fix String->QString conversion.
1528         * platform/qt/ResourceLoaderManager.cpp:
1529         (WebCore::ResourceLoaderManager::add): Fix String->DeprecatedString conversion.
1530         * platform/qt/ScrollViewCanvasQt.cpp:
1531         (WebCore::ScrollViewCanvasQt::handleKeyEvent): Adapt to SelectionController signature changes.
1532         * platform/qt/qt-encodings.txt: Removed.
1533
1534 2006-09-06  Darin Adler  <darin@apple.com>
1535
1536         Reviewed by Tim Hatcher.
1537
1538         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10675
1539           tweak font-related headers and convert lists to vectors
1540
1541         One major change was to greatly reduce the number of files that include Font.h.
1542         Another was to convert many uses of DeprecatedPtrList/DeprecatedValueList to Vector.
1543
1544         * WebCore.xcodeproj/project.pbxproj: Added TextStyle.h.
1545
1546         * bindings/objc/DOM.mm: (-[DOMElement _font]): Changed to not depend on
1547         Font::getNSFont since a WebCore::Font represents more than one NSFont.
1548
1549         * bindings/objc/DOMNode.mm: (-[DOMNode lineBoxRects]): Updated to use Vector.
1550         * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
1551         * bridge/mac/FrameViewMac.mm: (WebCore::FrameView::updateDashboardRegions): Ditto.
1552         * css/CSSComputedStyleDeclaration.cpp:
1553         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Ditto.
1554         * dom/Document.cpp:
1555         (WebCore::Document::dashboardRegions): Ditto.
1556         (WebCore::Document::setDashboardRegions): Ditto.
1557         * dom/Document.h: Ditto.
1558         * editing/ReplaceSelectionCommand.cpp:
1559         (WebCore::ReplacementFragment::removeUnrenderedNodes): Ditto.
1560         * html/FormDataList.h: Ditto.
1561         * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isFocusable): Ditto.
1562         * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ditto.
1563         * kcanvas/RenderPath.cpp: (WebCore::RenderPath::absoluteRects): Ditto.
1564         * kcanvas/RenderPath.h: Ditto.
1565         * kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::absoluteRects): Ditto.
1566         * kcanvas/RenderSVGImage.h: Ditto.
1567         * kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): Ditto.
1568         * kcanvas/RenderSVGText.h: Ditto.
1569         * loader/FormData.cpp:
1570         (WebCore::FormData::flatten): Ditto.
1571         (WebCore::FormData::flattenToString): Ditto.
1572         * loader/FormData.h: (WebCore::FormData::elements): Ditto.
1573         * loader/mac/LoaderFunctionsMac.mm: (WebCore::ServeSynchronousRequest): Ditto.
1574         * page/Frame.cpp: (WebCore::Frame::markedTextUnderlines): Ditto.
1575         * page/Frame.h: Ditto.
1576         * page/FramePrivate.h: Ditto.
1577         * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start): Ditto.
1578         * rendering/InlineTextBox.h: Ditto.
1579         * rendering/InlineTextBox.cpp:
1580         (WebCore::InlineTextBox::paint): Ditto.
1581         (WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto.
1582         * rendering/RenderContainer.h: Ditto.
1583         * rendering/RenderContainer.cpp: (WebCore::RenderContainer::lineBoxRects): Ditto.
1584         * rendering/RenderInline.h: Ditto.
1585         * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): Ditto.
1586         * rendering/RenderObject.h: Ditto.
1587         * rendering/RenderObject.cpp:
1588         (WebCore::RenderObject::lineBoxRects): Ditto.
1589         (WebCore::RenderObject::absoluteRects): Ditto.
1590         (WebCore::RenderObject::absoluteBoundingBoxRect): Ditto.
1591         (WebCore::RenderObject::addDashboardRegions): Ditto.
1592         (WebCore::RenderObject::collectDashboardRegions): Ditto.
1593         * rendering/RenderStyle.h: Ditto.
1594         * rendering/RenderStyle.cpp:
1595         (WebCore::RenderStyle::initialDashboardRegions): Ditto.
1596         (WebCore::RenderStyle::noneDashboardRegions): Ditto.
1597         * rendering/RenderText.h: Ditto.
1598         * rendering/RenderText.cpp:
1599         (WebCore::RenderText::absoluteRects): Ditto.
1600         (WebCore::RenderText::lineBoxRects): Ditto.
1601         * rendering/RenderView.h: Ditto.
1602         * rendering/RenderView.cpp: (WebCore::RenderView::absoluteRects): Ditto.
1603
1604         * bridge/mac/FrameMac.mm:
1605         (WebCore::FrameMac::attributedString): Updated to use Vector and changed to not
1606         depend on getNSFont on a Font.
1607         (WebCore::FrameMac::fontForSelection): Changed to not depend on Font::getNSFont.
1608         (WebCore::FrameMac::fontAttributesForSelectionStart): Ditto.
1609         (WebCore::convertAttributesToUnderlines): Updated to use Vector.
1610         (WebCore::FrameMac::setMarkedTextRange): Ditto.
1611         (WebCore::FrameMac::dashboardRegionsDictionary): Ditto.
1612
1613         * bridge/mac/WebCoreAXObject.mm:
1614         (boundingBoxRect): Updated to use Vector.
1615         (AXAttributeStringSetStyle): Changed to not depend on Font::getNSFont.
1616
1617         * bridge/mac/WebCoreStringTruncator.mm: Updated includes.
1618         * page/Settings.h: Ditto.
1619         * platform/mac/WebCoreTextRenderer.mm: Ditto.
1620         * rendering/EllipsisBox.cpp: Ditto.
1621
1622         * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
1623         Updated to use a Vector that we iterate in reverse order instead of a linked list
1624         that we reverse by prepending elements instead of adding to the end.
1625         * editing/InsertParagraphSeparatorCommand.cpp:
1626         (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
1627
1628         * loader/DocLoader.h: Removed unneeded include of DeprecatedPtrList.h.
1629
1630         * platform/Font.h: Moved TextStyle to a separate header. Removed Font::getNSFont.
1631         * platform/Font.cpp: Changed to use const instead of #define.
1632         (WebCore::Font::width): Overloaded this so we don't have a default parameter, which
1633         eliminates the need to have TextStyle defined to compiler the Font.h header.
1634
1635         * platform/TextStyle.h: Added.
1636
1637         * platform/FontData.h: Added a forward declaration of ATSUStyle so this header
1638         can stand alone.
1639
1640         * platform/FontFallbackList.h: Tweaks.
1641         * platform/FontFallbackList.cpp: Tweaks.
1642
1643         * platform/FontFamily.h: Removed unneeded NSString declaration. Simplified class by
1644         using Shared and RefPtr, which resulted in removing many explicit functions.
1645         * platform/FontFamily.cpp: More of the same.
1646
1647         * platform/GlyphBuffer.h: Removed unneeded MAX_GLYPH_EXPANSION and GLYPH_BUFFER_SIZE
1648         macros.
1649
1650         * platform/GlyphMap.h: Removed unneeded include of GlyphBuffer.h, which was included
1651         only for the typedef of Glyph; there's no reason to not just repeat that typedef here
1652         since C++ allows multiple typedefs if they match. Renamed the cGlyphPageSize constant
1653         to GlyphPage::size.
1654         * platform/GlyphMap.cpp: Changed NO_BREAK_SPACE and ZERO_WIDTH_SPACE macros into
1655         constants. Updated for cGlyphPageSize change.
1656         * platform/mac/GlyphMapMac.cpp: Updated for cGlyphPageSize change.
1657
1658         * platform/GlyphWidthMap.h: Removed unneeded include of GlyphBuffer.h, which was included
1659         only for the typedef of Glyph; there's no reason to not just repeat that typedef here
1660         since C++ allows multiple typedefs if they match. Renamed the cGlyphWidthPageSize constant
1661         to GlyphWidthPage::size.
1662         * platform/GlyphWidthMap.cpp: Updated for cGlyphWidthPageSize change.
1663
1664         * platform/GraphicsContext.h: Removed unneeded include of Font.h. Changed drawText
1665         function to use overloading instead of default parameters to allow TextStyle to be optional.
1666         This cuts the dependency on TextStyle.
1667         * platform/GraphicsContext.cpp: (WebCore::GraphicsContext::drawText): Added overload.
1668
1669         * platform/Image.h: Removed unneeded forward declaration of IntSize.
1670
1671         * platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters):
1672         Changed to not depend on Font::getNSFont.
1673         * platform/mac/ListBoxMac.mm: (-[WebCoreTableView fontChanged]): Ditto.
1674         * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
1675         Ditto.
1676         * rendering/RenderPopupMenuMac.mm:
1677         (WebCore::RenderPopupMenuMac::showPopup): Ditto.
1678         (WebCore::RenderPopupMenuMac::addGroupLabel): Ditto.
1679         (WebCore::RenderPopupMenuMac::addOption): Ditto.
1680
1681         * platform/mac/FontDataMac.mm: Fixed includes. Converted a bunch of macros to be
1682         constants and inline functions instead.
1683
1684         * platform/mac/FontMac.mm: Fixed includes.
1685         * platform/mac/PopUpButtonMac.mm: Ditto.
1686         * rendering/RenderMenuList.cpp: Ditto.
1687         * rendering/RenderTextControl.cpp: Ditto.
1688
1689         * platform/mac/WebCoreSystemInterface.h: Fixes so this header stands alone and is
1690         compatible with all 4 of C, ObjC, C++, ObjC++.
1691
1692 2006-09-05  MorganL  <morlmor@yahoocom>
1693
1694         Reviewed/landed by aroben.
1695
1696         Fixes bug 10743: Windows build is busted.
1697
1698         * WebCore.vcproj/WebCore/WebCore.vcproj:
1699         * bridge/win/FrameWin.h:
1700         * platform/ResourceLoaderInternal.h:
1701         * platform/TextEncodingRegistry.cpp:
1702         * platform/win/ResourceLoaderWin.cpp:
1703         (WebCore::ResourceLoaderWndProc):
1704         (WebCore::ResourceLoader::start):
1705         * platform/win/TemporaryLinkStubs.cpp:
1706         (FrameWin::markMisspellings):
1707         (FrameWin::shouldChangeSelection):
1708         (FrameWin::respondToChangedSelection):
1709         (FrameWin::respondToChangedContents):
1710         (RenderThemeWin::adjustMenuListStyle):
1711
1712 2006-09-05  Darin Adler  <darin@apple.com>
1713
1714         - some quick build fixes
1715
1716         * bridge/mac/WebCoreAXObject.mm: Remove use of WebCore::UChar.
1717         * bridge/mac/WebCoreFrameBridge.mm: Ditto. Also remove include
1718         of CharsetNames.h.
1719         * css/CSSGrammar.y: Remove use of WebCore::UChar.
1720         * platform/UChar.h: Back out WebCore::UChar for now.
1721
1722 2006-09-05  Darin Adler  <darin@apple.com>
1723
1724         Reviewed by Alexey.
1725
1726         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10728
1727           text encodings should work without a numeric ID
1728
1729         - includes a fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10681
1730           REGRESSION: Reproducible crash at Wikipedia
1731
1732         - fixed a bug where link elements would not set the charset properly for
1733           CSS stylesheets they loaded
1734
1735         - converted DeprecatedString code paths that are related to decoding web
1736           pages to use String instead, to ensure that conversion back and forth won't
1737           hurt performance
1738
1739         Test: fast/encoding/css-link-charset.html
1740         Test: fast/forms/form-data-encoding-normalization-overrun.html
1741
1742         Coverage for encoding issues is pretty good, so we probably don't need more
1743         tests to land this. Our existing tests did find issues with this patch while
1744         it was under development. And I suppose it would be nice to have even more tests.
1745
1746         * platform/TextEncoding.h:
1747         * platform/TextEncoding.cpp:
1748         (WebCore::addEncodingName): Added. Used to build up the set used by isJapanese.
1749         (WebCore::TextEncoding::TextEncoding): Removed boolean "eight bit only" parameter and
1750         added an overload for String as well as const char*. Simplified because now the only
1751         data member is m_name -- calls the registry's atomicCanonicalTextEncodingName function
1752         to make the name canonical (resolve aliases) and atomic (use a single pointer for each
1753         encoding name so we can compare and hash efficiently).
1754         (WebCore::TextEncoding::decode): Renamed from toUnicode. Just a simple wrapper on top
1755         of TextDecoder that can be used when the data to decode is all present at once.
1756         (WebCore::TextEncoding::encode): Renamed from fromUnicode. Handles the normalization and
1757         then uses the registry to get a codec to handle the rest.
1758         (WebCore::TextEncoding::usesVisualOrdering): New implementation that compares with the
1759         name of the only encoding that uses visual ordering. We blur the concepts a bit so that
1760         we treat the visual ordering and logical ordering variations as two separate encodings.
1761         (WebCore::TextEncoding::isJapanese): New implementation that uses a set to efficiently
1762         determine if an encoding is Japanese.
1763         (WebCore::TextEncoding::backslashAsCurrencySymbol): New implementation that compares
1764         with the names of the two encodings that have the strange backslash.
1765         (WebCore::TextEncoding::closest8BitEquivalent): Added. Replaces the old "eight bit only"
1766         boolean parameter to the constructor.
1767         (WebCore::ASCIIEncoding): Added.
1768         (WebCore::Latin1Encoding): Added.
1769         (WebCore::UTF16BigEndianEncoding): Added.
1770         (WebCore::UTF16LittleEndianEncoding): Added.
1771         (WebCore::UTF8Encoding): Added.
1772         (WebCore::WindowsLatin1Encoding): Added.
1773
1774         * platform/TextEncodingRegistry.h: Added.
1775         * platform/TextEncodingRegistry.cpp: Added. Keeps a table of all the character set
1776         aliases and names and another of all the codecs and parameters for each name.
1777
1778         * platform/TextDecoder.h: Added.
1779         * platform/TextDecoder.cpp: Added. Contains logic to look for a BOM and hand the data
1780         to the proper codec, based on code that used to be in both the ICU and Mac codecs.
1781
1782         * platform/StreamingTextDecoder.h: Renamed class to TextCodec. We'll rename
1783         the files in a later check-in. Moved creation functions into TextEncodingRegistry.h.
1784         Added typedefs of the registrar function types so classes derived from this one
1785         can use them without including the TextEncodingRegistry header. Renamed toUnicode
1786         and fromUnicode to decode and encode. Changed the parameter and return types so that
1787         the parameters are pointers to the data and the return types are String and CString.
1788         * platform/StreamingTextDecoder.cpp:
1789         (WebCore::TextCodec::appendOmittingBOM): Added. Helper function used by multiple
1790         classes derived from this one.
1791
1792         * platform/TextCodecLatin1.h: Added.
1793         * platform/TextCodecLatin1.cpp: Added. Contains logic to handle encoding and decoding
1794         Windows Latin-1, based on code that used to be in both the ICU and Mac codecs.
1795
1796         * platform/TextCodecUTF16.h: Added.
1797         * platform/TextCodecUTF16.cpp: Added. Contains logic to handle encoding and decoding
1798         UTF-16, based on code that used to be in both the ICU and Mac codecs.
1799
1800         * platform/StreamingTextDecoderICU.h: Renamed class to TextCodecICU. We'll rename
1801         the files in a later check-in. Removed all the functions having to do with handling
1802         BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
1803         because that's superseded by the registry. Added registry hook functions.
1804         * platform/StreamingTextDecoderICU.cpp:
1805         (WebCore::TextCodecICU::registerEncodingNames): Added. Registers all encodings that
1806         ICU can handle with the "IANA" standard. Also includes a special case for a particular
1807         type of encoding for Hebrew that uses logical ordering. Also includes aliases that are
1808         not in ICU but that were historically known to WebKit for encodings that ICU handles. 
1809         (WebCore::newTextCodecICU): Added. Used by registerCodecs.
1810         (WebCore::TextCodecICU::registerCodecs): Added. Registers codecs for the same encodings
1811         as above.
1812         (WebCore::TextCodecICU::TextCodecICU): Much simplified since this now only handles the
1813         actual ICU encoding and decoding.
1814         (WebCore::TextCodecICU::~TextCodecICU): Renamed.
1815         (WebCore::TextCodecICU::releaseICUConverter): Changed to be a const member function.
1816         (WebCore::TextCodecICU::createICUConverter): Changed to be a const member function and
1817         to check if the cached converter can be reused in a simpler way.
1818         (WebCore::TextCodecICU::decode): Updated for changes to types.
1819         (WebCore::TextCodecICU::encode): Updated for changes to types, and removed normalization
1820         since this is now handled by the caller.
1821
1822         * platform/mac/StreamingTextDecoderMac.h: Renamed class to TextCodecMac. We'll rename
1823         the files in a later check-in. Removed all the functions having to do with handling
1824         BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
1825         because that's superseded by the registry. Added registry hook functions.
1826         * platform/mac/StreamingTextDecoderMac.cpp:
1827         (WebCore::TextCodecMac::registerEncodingNames): Added. Registers encodings based on
1828         the charset table generated by the make-charset-table.pl perl script.
1829         (WebCore::newTextCodecMac): Added. Used by registerCodecs.
1830         (WebCore::TextCodecMac::registerCodecs): Added. Registers codecs for the same encodings
1831         as above.
1832         (WebCore::TextCodecMac::TextCodecMac): Much simplified since this now only handles the
1833         actual TEC/CF encoding and decoding.
1834         (WebCore::TextCodecMac::~TextCodecMac): Renamed.
1835         (WebCore::TextCodecMac::releaseTECConverter): Changed to be a const member function.
1836         (WebCore::TextCodecMac::createTECConverter): Changed to be a const member function.
1837         (WebCore::TextCodecMac::decode): Updated for changes to types.
1838         (WebCore::TextCodecMac::encode): Updated for changes to types, and removed normalization
1839         since this is now handled by the caller.
1840
1841         * platform/mac/mac-encodings.txt: Removed most of the names in this file. This now
1842         only includes encodings where we want to use Mac OS X Carbon Text Encoding Converter,
1843         which is only encodings that are not supported by ICU.
1844         * platform/make-charset-table.pl: Removed flags from output. We don't use them any more.
1845         * platform/CharsetData.h: Changed from a platform-independent header into a
1846         Macintosh-specific one. A later patch should move this and rename it. Also
1847         subsumes ExtraCFEncodings.h.
1848
1849         * WebCore.xcodeproj/project.pbxproj: Added new files. Changed the prefix on the
1850         "make character sets" rule to be kTextEncoding instead of kCFStringEncoding.
1851
1852         * loader/Decoder.h: Change the default encoding parameter to the constructor to be
1853         a TextEncoding object. Renamed setEncodingName to setEncoding, and made it take a
1854         TextEncoding for the encoding. Removed the encodingName and visuallyOrdered functions,
1855         since TextEncoding supports both directly in a straightforward way. Changed both
1856         decode and flush functions to return String instead of DeprecatedString. Added a
1857         number of private functions to factor this class a bit more so it's easier to read.
1858         Got rid of a number of redundant data members. Changed the buffer to a Vector<char>.
1859         * loader/Decoder.cpp:
1860         (WebCore::Decoder::determineContentType): Added. Used by constructor to determine
1861         the content type based on the passed-in MIME type.
1862         (WebCore::Decoder::defaultEncoding): Added. Used by constructor to determine the
1863         default encoding based on the passed in default and the content type.
1864         (WebCore::Decoder::Decoder): Changed to use the functions above. Also renamed
1865         m_reachedBody to m_checkedForHeadCharset.
1866         (WebCore::Decoder::setEncoding): Renamed and changed to take an encoding rather
1867         than an encoding name.
1868         (WebCore::Decoder::checkForBOM): Factored out of decode.
1869         (WebCore::Decoder::checkForCSSCharset): Factored out of decode.
1870         (WebCore::Decoder::checkForHeadCharset): Factored out of decode.
1871         (WebCore::Decoder::detectJapaneseEncoding): Factored out of decode.
1872         (WebCore::Decoder::decode): Refactored so it's no longer one huge function.
1873         Changed to use the new Vector<char> and the new API for TextDecoder.
1874         (WebCore::Decoder::flush): Added code to empty out the buffer. Not an issue in
1875         practice since we don't re-use the decoder after flushing it.
1876
1877         * platform/UChar.h: Added. Has the type named WebCore::UChar that we'll be switching
1878         to. We'll switch away from the ICU ::UChar type, because we don't want to be so
1879         closely tied to ICU -- include this instead of <unicode/umachine.h>.
1880
1881         * platform/PlatformString.h:
1882         * platform/String.cpp:
1883         (WebCore::String::latin1): Updated for changes to TextEncoding.
1884         (WebCore::String::utf8): Ditto.
1885         (WebCore::String::newUninitialized): Added. Gives a way to create a String and
1886         then write directly into its buffer.
1887
1888         * platform/StringImpl.h: Changed return value for charactersWithNullTermination to
1889         be a const UChar*. While it's true that this function changes the underlying
1890         StringImpl, the characters still shouldn't be modified with the returned pointer.
1891         * platform/StringImpl.cpp:
1892         (WebCore::StringImpl::charactersWithNullTermination): Updated for change above.
1893         (WebCore::StringImpl::newUninitialized): Added. Gives a way to create a StringImpl
1894         and then write directly into its buffer.
1895
1896         * platform/CString.h:
1897         * platform/CString.cpp: (WebCore::CString::newUninitialized): Added. Gives a way
1898         to create a CString and then write directly into its buffer.
1899
1900         * bridge/mac/WebCoreFrameBridge.h: Removed textEncoding method, and replaced
1901         +[WebCoreFrameBridge stringWithData:textEncoding:] with
1902         -[WebCoreFrameBridge stringWithData:] to avoid having to pass text encoding
1903         IDs around.
1904         * bridge/mac/WebCoreFrameBridge.mm:
1905         (-[WebCoreFrameBridge setEncoding:userChosen:]): Removed now-unneeded conversion
1906         to DeprecatedString.
1907         (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
1908         Ditto.
1909         (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): Ditto.
1910         (-[WebCoreFrameBridge referrer]): Removed now-unneeded call to getNSString.
1911         (-[WebCoreFrameBridge stringWithData:]): Added. Asks the document's decoder
1912         what its encoding is, and decodes using that.
1913         (+[WebCoreFrameBridge stringWithData:textEncodingName:]): Simplified so it
1914         no longer involved a text encoding ID number.
1915         (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
1916         Changed to use UChar instead of DeprecatedChar.
1917         (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): Removed
1918         now-unneeded conversion to DeprecatedString.
1919         (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Ditto.
1920
1921         * html/HTMLFormElement.cpp:
1922         (WebCore::encodeCString): Changed parameter to CString.
1923         (WebCore::HTMLFormElement::formData): Updated code for improvements to TextEncoding.
1924
1925         * loader/CachedCSSStyleSheet.h:
1926         * loader/CachedCSSStyleSheet.cpp:
1927         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Fixed mistake where the
1928         decoder was created without passing in the character set. Also changed from
1929         DeprecatedString to String.
1930         (WebCore::CachedCSSStyleSheet::setCharset): More of the same.
1931
1932         * bindings/js/kjs_window.h: (KJS::ScheduledAction::ScheduledAction): Changed
1933         to use String instead of DeprecatedString, UChar instead of DeprecatedChar,
1934         CString instead of DeprecatedCString, etc.
1935         * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
1936         * bridge/mac/FrameMac.h: Ditto.
1937         * bridge/mac/FrameMac.mm: (WebCore::FrameMac::isCharacterSmartReplaceExempt):
1938         Ditto.
1939         * bridge/mac/WebCoreAXObject.mm:
1940         (-[WebCoreAXObject helpText]): Ditto.
1941         (-[WebCoreAXObject value]): Ditto.
1942         (-[WebCoreAXObject accessibilityDescription]): Ditto.
1943         (-[WebCoreAXObject doAXStringForTextMarkerRange:]): Ditto.
1944         * bridge/mac/WebCoreEncodings.mm: (+[WebCoreEncodings decodeData:]): Ditto.
1945         Also fixed code that does a deref without a ref to use RefPtr instead.
1946         * bridge/mac/WebCoreScriptDebugger.mm:
1947         (-[WebCoreScriptCallFrame evaluateWebScript:]): Ditto.
1948         * bridge/mac/WebCoreSettings.mm:
1949         (-[WebCoreSettings setDefaultTextEncoding:]): Ditto.
1950         * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): Ditto.
1951         * css/cssparser.cpp: (WebCore::CSSParser::lex): Ditto.
1952         * dom/Document.h:
1953         * dom/Document.cpp:
1954         (WebCore::Document::setCharset): Ditto.
1955         (WebCore::Document::write): Ditto.
1956         (WebCore::Document::determineParseMode): Ditto.
1957         * dom/ProcessingInstruction.cpp:
1958         (WebCore::ProcessingInstruction::checkStyleSheet): Ditto.
1959         * dom/XMLTokenizer.h:
1960         * dom/XMLTokenizer.cpp:
1961         (WebCore::shouldAllowExternalLoad): Ditto.
1962         (WebCore::createStringParser): Ditto.
1963         (WebCore::XMLTokenizer::write): Ditto.
1964         (WebCore::toString): Ditto.
1965         (WebCore::handleElementAttributes): Ditto.
1966         (WebCore::XMLTokenizer::startElementNs): Ditto.
1967         (WebCore::XMLTokenizer::endElementNs): Ditto.
1968         (WebCore::XMLTokenizer::characters): Ditto.
1969         (WebCore::XMLTokenizer::processingInstruction): Ditto.
1970         (WebCore::XMLTokenizer::cdataBlock): Ditto.
1971         (WebCore::XMLTokenizer::comment): Ditto.
1972         (WebCore::XMLTokenizer::internalSubset): Ditto.
1973         (WebCore::getXHTMLEntity): Ditto.
1974         (WebCore::externalSubsetHandler): Ditto.
1975         (WebCore::XMLTokenizer::initializeParserContext): Ditto.
1976         (WebCore::XMLTokenizer::notifyFinished): Ditto.
1977         (WebCore::xmlDocPtrForString): Ditto.
1978         (WebCore::parseXMLDocumentFragment): Ditto.
1979         (WebCore::attributesStartElementNsHandler): Ditto.
1980         (WebCore::parseAttributes): Ditto.
1981         * html/FormDataList.h:
1982         * html/FormDataList.cpp:
1983         (WebCore::FormDataList::appendString): Ditto. Also changed to call the
1984         encoding function by its new name and with new parameters.
1985         (WebCore::FormDataList::appendFile): Ditto.
1986         * html/HTMLDocument.h:
1987         * html/HTMLDocument.cpp:
1988         (WebCore::parseDocTypePart): Ditto.
1989         (WebCore::containsString): Ditto.
1990         (WebCore::parseDocTypeDeclaration): Ditto.
1991         (WebCore::HTMLDocument::determineParseMode): Ditto.
1992         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Ditto.
1993         * html/HTMLScriptElement.cpp:
1994         (WebCore::HTMLScriptElement::parseMappedAttribute): Ditto.
1995         * html/HTMLTokenizer.h:
1996         * html/HTMLTokenizer.cpp:
1997         (WebCore::HTMLTokenizer::scriptHandler): Ditto.
1998         (WebCore::HTMLTokenizer::parseTag): Ditto.
1999         (WebCore::HTMLTokenizer::write): Ditto.
2000         (WebCore::HTMLTokenizer::finish): Ditto.
2001         (WebCore::parseHTMLDocumentFragment): Ditto.
2002         * loader/Cache.h:
2003         * loader/Cache.cpp:
2004         (WebCore::Cache::requestStyleSheet): Ditto.
2005         (WebCore::Cache::requestScript): Ditto.
2006         * loader/CachedResource.h: Ditto.
2007         * loader/CachedScript.h:
2008         * loader/CachedScript.cpp:
2009         (WebCore::CachedScript::CachedScript): Ditto.
2010         (WebCore::CachedScript::ref): Ditto.
2011         (WebCore::CachedScript::deref): Ditto.
2012         (WebCore::CachedScript::setCharset): Ditto.
2013         (WebCore::CachedScript::data): Ditto.
2014         (WebCore::CachedScript::checkNotify): Ditto.
2015         * loader/CachedXBLDocument.h:
2016         * loader/CachedXBLDocument.cpp:
2017         (WebCore::CachedXBLDocument::setCharset): Ditto.
2018         * loader/CachedXSLStyleSheet.h:
2019         * loader/CachedXSLStyleSheet.cpp:
2020         (WebCore::CachedXSLStyleSheet::setCharset): Ditto.
2021         * loader/DocLoader.cpp:
2022         (WebCore::DocLoader::requestStyleSheet): Ditto.
2023         (WebCore::DocLoader::requestScript): Ditto.
2024         * loader/DocLoader.h: Ditto.
2025         * loader/FormData.h:
2026         * loader/FormData.cpp:
2027         (WebCore::FormData::FormData): Ditto.
2028         (WebCore::FormData::appendFile): Ditto.
2029         (WebCore::FormData::flattenToString): Ditto.
2030         * page/Frame.h:
2031         * page/FramePrivate.h:
2032         * page/Frame.cpp:
2033         (WebCore::UserStyleSheetLoader::setStyleSheet): Ditto.
2034         (WebCore::getString): Ditto.
2035         (WebCore::Frame::replaceContentsWithScriptResult): Ditto.
2036         (WebCore::Frame::executeScript): Ditto.
2037         (WebCore::Frame::clear): Ditto.
2038         (WebCore::Frame::write): Ditto.
2039         (WebCore::Frame::endIfNotLoading): Ditto.
2040         (WebCore::Frame::baseTarget): Ditto.
2041         (WebCore::Frame::scheduleRedirection): Ditto.
2042         (WebCore::Frame::scheduleLocationChange): Ditto.
2043         (WebCore::Frame::scheduleHistoryNavigation): Ditto.
2044         (WebCore::Frame::changeLocation): Ditto.
2045         (WebCore::Frame::redirectionTimerFired): Ditto.
2046         (WebCore::Frame::encoding): Ditto.
2047         (WebCore::Frame::submitForm): Ditto.
2048         (WebCore::Frame::referrer): Ditto.
2049         (WebCore::Frame::isCharacterSmartReplaceExempt): Ditto.
2050         (WebCore::Frame::setEncoding): Ditto.
2051         * page/Settings.h: Ditto.
2052         * platform/SegmentedString.h: Ditto.
2053         * platform/SegmentedString.cpp: Ditto.
2054         * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Ditto.
2055         * xml/XSLTProcessor.cpp:
2056         (WebCore::transformTextStringToXHTMLDocumentString): Ditto.
2057         (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
2058         * xml/xmlhttprequest.h:
2059         * xml/xmlhttprequest.cpp:
2060         (WebCore::XMLHttpRequest::open): Ditto.
2061         (WebCore::XMLHttpRequest::send): Ditto.
2062         (WebCore::XMLHttpRequest::receivedData): Ditto.
2063
2064         * platform/DeprecatedString.cpp:
2065         (WebCore::DeprecatedString::fromUtf8): Updated for changes to TextEncoding.
2066         (WebCore::DeprecatedString::utf8): Ditto.
2067
2068         * platform/KURL.h:
2069         * platform/KURL.cpp:
2070         (WebCore::KURL::KURL): Updated to overload based on presence or absence of
2071         TextEncoding rather than having a default.
2072         (WebCore::KURL::init): Moved body of constructor in here. Updated to use
2073         the new TextEncoding interface.
2074         (WebCore::KURL::decode_string): Updated to overload based on presence or
2075         absence of TextEncoding rather than having a default. Updated to use
2076         the new TextEncoding interface.
2077         (WebCore::encodeRelativeString): Updated to use the new TextEncoding interface.
2078
2079         * platform/Font.cpp: (WebCore::WidthIterator::normalizeVoicingMarks): Fixed
2080         code to use U_ZERO_ERROR instead of a typecast.
2081
2082         * bindings/js/kjs_proxy.h: Removed unneeded declaration of DeprecatedString.
2083         * platform/GraphicsContext.h: Ditto.
2084
2085         * platform/GraphicsContext.cpp: Removed unneeded include of "DeprecatedString.h".
2086         * rendering/break_lines.cpp: Ditto.
2087         * xml/XMLSerializer.cpp: Ditto.
2088
2089         * platform/mac/FontDataMac.mm: Removed unneeded include of <unicode/unorm.h>.
2090
2091         * platform/CharsetNames.h: Emptied out this file. A later patch could remove it.
2092         * platform/CharsetNames.cpp: Ditto.
2093         * platform/mac/ExtraCFEncodings.h: Ditto.
2094
2095 2006-09-05  Nikolas Zimmermann  <zimmermann@kde.org>
2096
2097         Reviewed by eseidel.  Landed by eseidel.
2098
2099         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10490
2100
2101         -> Remove all SVGAnimated* usage from ksvg2.
2102         This is all done using a set of macros which live in svg/SVGElement.h
2103         (ANIMATED_PROPERTY_DECLARATIONS / ANIMATED_PROPERTY_DEFINITIONS).
2104         Transform all properties to this new concept using Eric ruby script.
2105
2106         -> Replace all usages of "property()->baseVal()" with "propertyBaseValue()".
2107         -> Replace all usages of "property()->setBaseVal()" with "setPropertyBaseValue()".
2108
2109         -> Add "virtual const SVGElement* contextElement() const".
2110         This concept allows to access the document (needed to access the SVGDocumentExtensions)
2111         from lowest-base-classes like SVGURIReference / SVGExternalResourcesRequired etc.
2112
2113         These classes contain this contextElement() function as pure virtual functions.
2114         The topmost classes (like SVGCircleElement) implement this function with "return this".
2115
2116         -> Move default value initialization to constructors.
2117         As the lazy_create usage, which was involved in default property initialization,
2118         has been removed, we need to do the initialization in the constructor.
2119         
2120         This forces us to fix the SVGLength class, as calling viewportElement() from the
2121         constructor does not work. This SVGLength cleanup is one of the next things to fix.
2122
2123         * bindings/scripts/CodeGeneratorJS.pm:
2124         * kcanvas/RenderForeignObject.cpp:
2125         (WebCore::RenderForeignObject::translationForAttributes):
2126         * kcanvas/RenderSVGImage.cpp:
2127         (WebCore::RenderSVGImage::paint):
2128         (WebCore::RenderSVGImage::relativeBBox):
2129         (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
2130         (WebCore::RenderSVGImage::translationForAttributes):
2131         * kcanvas/RenderSVGText.cpp:
2132         (WebCore::RenderSVGText::translationForAttributes):
2133         * ksvg2/misc/KSVGTimeScheduler.cpp:
2134         (WebCore::SVGTimer::notifyAll):
2135         * ksvg2/misc/SVGDocumentExtensions.cpp:
2136         * ksvg2/misc/SVGDocumentExtensions.h:
2137         (WebCore::SVGDocumentExtensions::baseValueMap):
2138         (WebCore::SVGDocumentExtensions::baseValue):
2139         (WebCore::SVGDocumentExtensions::setBaseValue):
2140         (WebCore::SVGDocumentExtensions::hasBaseValue):
2141         (WebCore::String):
2142         (WebCore::bool):
2143         (WebCore::double):
2144         * ksvg2/misc/SVGImageLoader.cpp:
2145         (WebCore::SVGImageLoader::updateFromElement):
2146         * ksvg2/svg/SVGAElement.cpp:
2147         (WebCore::SVGAElement::parseMappedAttribute):
2148         (WebCore::SVGAElement::defaultEventHandler):
2149         * ksvg2/svg/SVGAElement.h:
2150         (WebCore::SVGAElement::contextElement):
2151         * ksvg2/svg/SVGAnimateColorElement.h:
2152         (WebCore::SVGAnimateColorElement::contextElement):
2153         * ksvg2/svg/SVGAnimateElement.h:
2154         (WebCore::SVGAnimateElement::contextElement):
2155         * ksvg2/svg/SVGAnimateTransformElement.cpp:
2156         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
2157         (WebCore::SVGAnimateTransformElement::initialMatrix):
2158         * ksvg2/svg/SVGAnimateTransformElement.h:
2159         (WebCore::SVGAnimateTransformElement::contextElement):
2160         * ksvg2/svg/SVGCircleElement.cpp:
2161         (SVGCircleElement::SVGCircleElement):
2162         (SVGCircleElement::parseMappedAttribute):
2163         (SVGCircleElement::toPathData):
2164         (SVGCircleElement::pushAttributeContext):
2165         * ksvg2/svg/SVGCircleElement.h:
2166         (WebCore::SVGCircleElement::contextElement):
2167         * ksvg2/svg/SVGClipPathElement.cpp:
2168         (SVGClipPathElement::SVGClipPathElement):
2169         (SVGClipPathElement::parseMappedAttribute):
2170         (SVGClipPathElement::canvasResource):
2171         * ksvg2/svg/SVGClipPathElement.h:
2172         (WebCore::SVGClipPathElement::contextElement):
2173         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
2174         (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2175         (SVGComponentTransferFunctionElement::parseMappedAttribute):
2176         (SVGComponentTransferFunctionElement::transferFunction):
2177         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
2178         * ksvg2/svg/SVGCursorElement.cpp:
2179         (SVGCursorElement::SVGCursorElement):
2180         (SVGCursorElement::parseMappedAttribute):
2181         * ksvg2/svg/SVGCursorElement.h:
2182         (WebCore::SVGCursorElement::contextElement):
2183         * ksvg2/svg/SVGDefsElement.h:
2184         (WebCore::SVGDefsElement::contextElement):
2185         * ksvg2/svg/SVGElement.h:
2186         * ksvg2/svg/SVGEllipseElement.cpp:
2187         (WebCore::SVGEllipseElement::SVGEllipseElement):
2188         (WebCore::SVGEllipseElement::parseMappedAttribute):
2189         (WebCore::SVGEllipseElement::toPathData):
2190         (WebCore::SVGEllipseElement::pushAttributeContext):
2191         * ksvg2/svg/SVGEllipseElement.h:
2192         (WebCore::SVGEllipseElement::contextElement):
2193         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
2194         (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
2195         (WebCore::SVGExternalResourcesRequired::parseMappedAttribute):
2196         * ksvg2/svg/SVGExternalResourcesRequired.h:
2197         * ksvg2/svg/SVGFEBlendElement.cpp:
2198         (SVGFEBlendElement::SVGFEBlendElement):
2199         (SVGFEBlendElement::parseMappedAttribute):
2200         (SVGFEBlendElement::filterEffect):
2201         * ksvg2/svg/SVGFEBlendElement.h:
2202         (WebCore::SVGFEBlendElement::contextElement):
2203         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2204         (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2205         (SVGFEColorMatrixElement::parseMappedAttribute):
2206         (SVGFEColorMatrixElement::filterEffect):
2207         * ksvg2/svg/SVGFEColorMatrixElement.h:
2208         (WebCore::SVGFEColorMatrixElement::contextElement):
2209         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2210         (SVGFEComponentTransferElement::SVGFEComponentTransferElement):
2211         (SVGFEComponentTransferElement::parseMappedAttribute):
2212         (SVGFEComponentTransferElement::filterEffect):
2213         * ksvg2/svg/SVGFEComponentTransferElement.h:
2214         (WebCore::SVGFEComponentTransferElement::contextElement):
2215         * ksvg2/svg/SVGFECompositeElement.cpp:
2216         (SVGFECompositeElement::SVGFECompositeElement):
2217         (SVGFECompositeElement::parseMappedAttribute):
2218         (SVGFECompositeElement::filterEffect):
2219         * ksvg2/svg/SVGFECompositeElement.h:
2220         (WebCore::SVGFECompositeElement::contextElement):
2221         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
2222         (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
2223         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
2224         (WebCore::SVGFEDiffuseLightingElement::filterEffect):
2225         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
2226         (WebCore::SVGFEDiffuseLightingElement::contextElement):
2227         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
2228         (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
2229         (SVGFEDisplacementMapElement::parseMappedAttribute):
2230         (SVGFEDisplacementMapElement::filterEffect):
2231         * ksvg2/svg/SVGFEDisplacementMapElement.h:
2232         (WebCore::SVGFEDisplacementMapElement::contextElement):
2233         * ksvg2/svg/SVGFEDistantLightElement.cpp:
2234         (WebCore::SVGFEDistantLightElement::lightSource):
2235         * ksvg2/svg/SVGFEFloodElement.cpp:
2236         (SVGFEFloodElement::parseMappedAttribute):
2237         (SVGFEFloodElement::filterEffect):
2238         * ksvg2/svg/SVGFEFloodElement.h:
2239         (WebCore::SVGFEFloodElement::contextElement):
2240         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2241         (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
2242         (SVGFEGaussianBlurElement::parseMappedAttribute):
2243         (SVGFEGaussianBlurElement::filterEffect):
2244         * ksvg2/svg/SVGFEGaussianBlurElement.h:
2245         (WebCore::SVGFEGaussianBlurElement::contextElement):
2246         * ksvg2/svg/SVGFEImageElement.cpp:
2247         (SVGFEImageElement::SVGFEImageElement):
2248         (SVGFEImageElement::parseMappedAttribute):
2249         * ksvg2/svg/SVGFEImageElement.h:
2250         (WebCore::SVGFEImageElement::contextElement):
2251         * ksvg2/svg/SVGFELightElement.cpp:
2252         (SVGFELightElement::SVGFELightElement):
2253         (SVGFELightElement::parseMappedAttribute):
2254         * ksvg2/svg/SVGFELightElement.h:
2255         * ksvg2/svg/SVGFEMergeElement.cpp:
2256         (SVGFEMergeElement::SVGFEMergeElement):
2257         (SVGFEMergeElement::filterEffect):
2258         * ksvg2/svg/SVGFEMergeElement.h:
2259         (WebCore::SVGFEMergeElement::contextElement):
2260         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
2261         (SVGFEMergeNodeElement::parseMappedAttribute):
2262         * ksvg2/svg/SVGFEMergeNodeElement.h:
2263         (WebCore::SVGFEMergeNodeElement::contextElement):
2264         * ksvg2/svg/SVGFEOffsetElement.cpp:
2265         (SVGFEOffsetElement::SVGFEOffsetElement):
2266         (SVGFEOffsetElement::parseMappedAttribute):
2267         (SVGFEOffsetElement::filterEffect):
2268         * ksvg2/svg/SVGFEOffsetElement.h:
2269         (WebCore::SVGFEOffsetElement::contextElement):
2270         * ksvg2/svg/SVGFEPointLightElement.cpp:
2271         (WebCore::SVGFEPointLightElement::lightSource):
2272         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
2273         (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
2274         (SVGFESpecularLightingElement::parseMappedAttribute):
2275         (SVGFESpecularLightingElement::filterEffect):
2276         * ksvg2/svg/SVGFESpecularLightingElement.h:
2277         (WebCore::SVGFESpecularLightingElement::contextElement):
2278         * ksvg2/svg/SVGFESpotLightElement.cpp:
2279         (WebCore::SVGFESpotLightElement::lightSource):
2280         * ksvg2/svg/SVGFETileElement.cpp:
2281         (SVGFETileElement::parseMappedAttribute):
2282         (SVGFETileElement::filterEffect):
2283         * ksvg2/svg/SVGFETileElement.h:
2284         (WebCore::SVGFETileElement::contextElement):
2285         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2286         (SVGFETurbulenceElement::SVGFETurbulenceElement):
2287         (SVGFETurbulenceElement::parseMappedAttribute):
2288         (SVGFETurbulenceElement::filterEffect):
2289         * ksvg2/svg/SVGFETurbulenceElement.h:
2290         (WebCore::SVGFETurbulenceElement::contextElement):
2291         * ksvg2/svg/SVGFilterElement.cpp:
2292         (SVGFilterElement::SVGFilterElement):
2293         (SVGFilterElement::parseMappedAttribute):
2294         (SVGFilterElement::canvasResource):
2295         * ksvg2/svg/SVGFilterElement.h:
2296         (WebCore::SVGFilterElement::contextElement):
2297         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
2298         (SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
2299         (SVGFilterPrimitiveStandardAttributes::~SVGFilterPrimitiveStandardAttributes):
2300         (SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
2301         (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2302         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
2303         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
2304         * ksvg2/svg/SVGFitToViewBox.cpp:
2305         (WebCore::SVGFitToViewBox::SVGFitToViewBox):
2306         (WebCore::SVGFitToViewBox::parseViewBox):
2307         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
2308         (WebCore::SVGFitToViewBox::parseMappedAttribute):
2309         * ksvg2/svg/SVGFitToViewBox.h:
2310         * ksvg2/svg/SVGForeignObjectElement.cpp:
2311         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
2312         (WebCore::SVGForeignObjectElement::parseMappedAttribute):
2313         * ksvg2/svg/SVGForeignObjectElement.h:
2314         (WebCore::SVGForeignObjectElement::isValid):
2315         (WebCore::SVGForeignObjectElement::contextElement):
2316         * ksvg2/svg/SVGGElement.h:
2317         (WebCore::SVGGElement::contextElement):
2318         * ksvg2/svg/SVGGradientElement.cpp:
2319         (SVGGradientElement::SVGGradientElement):
2320         (SVGGradientElement::parseMappedAttribute):
2321         (SVGGradientElement::rebuildStops):
2322         * ksvg2/svg/SVGGradientElement.h:
2323         * ksvg2/svg/SVGHelper.cpp:
2324         (WebCore::SVGHelper::PercentageOfViewport):
2325         * ksvg2/svg/SVGImageElement.cpp:
2326         (SVGImageElement::SVGImageElement):
2327         (SVGImageElement::parseMappedAttribute):
2328         (SVGImageElement::haveLoadedRequiredResources):
2329         * ksvg2/svg/SVGImageElement.h:
2330         (WebCore::SVGImageElement::contextElement):
2331         * ksvg2/svg/SVGLangSpace.h:
2332         * ksvg2/svg/SVGLength.cpp:
2333         * ksvg2/svg/SVGLineElement.cpp:
2334         (SVGLineElement::SVGLineElement):
2335         (SVGLineElement::parseMappedAttribute):
2336         (SVGLineElement::toPathData):
2337         (SVGLineElement::pushAttributeContext):
2338         * ksvg2/svg/SVGLineElement.h:
2339         (WebCore::SVGLineElement::contextElement):
2340         * ksvg2/svg/SVGLinearGradientElement.cpp:
2341         (SVGLinearGradientElement::SVGLinearGradientElement):
2342         (SVGLinearGradientElement::parseMappedAttribute):
2343         (SVGLinearGradientElement::buildGradient):
2344         * ksvg2/svg/SVGLinearGradientElement.h:
2345         (WebCore::SVGLinearGradientElement::contextElement):
2346         * ksvg2/svg/SVGMarkerElement.cpp:
2347         (WebCore::SVGMarkerElement::SVGMarkerElement):
2348         (WebCore::SVGMarkerElement::parseMappedAttribute):
2349         (WebCore::SVGMarkerElement::setOrientToAuto):
2350         (WebCore::SVGMarkerElement::setOrientToAngle):
2351         (WebCore::SVGMarkerElement::canvasResource):
2352         * ksvg2/svg/SVGMarkerElement.h:
2353         (WebCore::SVGMarkerElement::contextElement):
2354         * ksvg2/svg/SVGMaskElement.cpp:
2355         (WebCore::SVGMaskElement::SVGMaskElement):
2356         (WebCore::SVGMaskElement::attributeChanged):
2357         (WebCore::SVGMaskElement::parseMappedAttribute):
2358         (WebCore::SVGMaskElement::drawMaskerContent):
2359         * ksvg2/svg/SVGMaskElement.h:
2360         (WebCore::SVGMaskElement::contextElement):
2361         * ksvg2/svg/SVGPathElement.cpp:
2362         (WebCore::SVGPathElement::SVGPathElement):
2363         * ksvg2/svg/SVGPathElement.h:
2364         (WebCore::SVGPathElement::isValid):
2365         (WebCore::SVGPathElement::contextElement):
2366         * ksvg2/svg/SVGPatternElement.cpp:
2367         (WebCore::SVGPatternElement::SVGPatternElement):
2368         (WebCore::SVGPatternElement::parseMappedAttribute):
2369         (WebCore::SVGPatternElement::pushAttributeContext):
2370         (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2371         (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2372         (WebCore::SVGPatternElement::notifyAttributeChange):
2373         (WebCore::SVGPatternElement::getCTM):
2374         * ksvg2/svg/SVGPatternElement.h:
2375         (WebCore::SVGPatternElement::contextElement):
2376         * ksvg2/svg/SVGPolyElement.h:
2377         (WebCore::SVGPolyElement::contextElement):
2378         * ksvg2/svg/SVGRadialGradientElement.cpp:
2379         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
2380         (WebCore::SVGRadialGradientElement::~SVGRadialGradientElement):
2381         (WebCore::SVGRadialGradientElement::parseMappedAttribute):
2382         (WebCore::SVGRadialGradientElement::buildGradient):
2383         * ksvg2/svg/SVGRadialGradientElement.h:
2384         (WebCore::SVGRadialGradientElement::contextElement):
2385         * ksvg2/svg/SVGRectElement.cpp:
2386         (WebCore::SVGRectElement::SVGRectElement):
2387         (WebCore::SVGRectElement::parseMappedAttribute):
2388         (WebCore::SVGRectElement::toPathData):
2389         (WebCore::SVGRectElement::pushAttributeContext):
2390         * ksvg2/svg/SVGRectElement.h:
2391         (WebCore::SVGRectElement::contextElement):
2392         * ksvg2/svg/SVGSVGElement.cpp:
2393         (WebCore::SVGSVGElement::SVGSVGElement):
2394         (WebCore::SVGSVGElement::~SVGSVGElement):
2395         (WebCore::SVGSVGElement::viewport):
2396         (WebCore::SVGSVGElement::parseMappedAttribute):
2397         (WebCore::SVGSVGElement::getCTM):
2398         (WebCore::SVGSVGElement::getScreenCTM):
2399         (WebCore::SVGSVGElement::createRenderer):
2400         * ksvg2/svg/SVGSVGElement.h:
2401         (WebCore::SVGSVGElement::contextElement):
2402         * ksvg2/svg/SVGScriptElement.h:
2403         (WebCore::SVGScriptElement::contextElement):
2404         * ksvg2/svg/SVGSetElement.h:
2405         (WebCore::SVGSetElement::contextElement):
2406         * ksvg2/svg/SVGStopElement.cpp:
2407         (SVGStopElement::SVGStopElement):
2408         (SVGStopElement::parseMappedAttribute):
2409         * ksvg2/svg/SVGStopElement.h:
2410         * ksvg2/svg/SVGStylable.h:
2411         * ksvg2/svg/SVGStyledElement.cpp:
2412         * ksvg2/svg/SVGStyledElement.h:
2413         * ksvg2/svg/SVGStyledTransformableElement.cpp:
2414         (SVGStyledTransformableElement::SVGStyledTransformableElement):
2415         (SVGStyledTransformableElement::parseMappedAttribute):
2416         * ksvg2/svg/SVGStyledTransformableElement.h:
2417         * ksvg2/svg/SVGSwitchElement.cpp:
2418         * ksvg2/svg/SVGSwitchElement.h:
2419         (WebCore::SVGSwitchElement::contextElement):
2420         * ksvg2/svg/SVGSymbolElement.h:
2421         (WebCore::SVGSymbolElement::contextElement):
2422         * ksvg2/svg/SVGTRefElement.cpp:
2423         (SVGTRefElement::updateReferencedText):
2424         * ksvg2/svg/SVGTRefElement.h:
2425         (WebCore::SVGTRefElement::contextElement):
2426         * ksvg2/svg/SVGTSpanElement.h:
2427         (WebCore::SVGTSpanElement::contextElement):
2428         * ksvg2/svg/SVGTextContentElement.cpp:
2429         (SVGTextContentElement::SVGTextContentElement):
2430         (SVGTextContentElement::parseMappedAttribute):
2431         * ksvg2/svg/SVGTextContentElement.h:
2432         * ksvg2/svg/SVGTextElement.cpp:
2433         (WebCore::SVGTextElement::SVGTextElement):
2434         (WebCore::SVGTextElement::parseMappedAttribute):
2435         * ksvg2/svg/SVGTextElement.h:
2436         (WebCore::SVGTextElement::contextElement):
2437         * ksvg2/svg/SVGTextPositioningElement.cpp:
2438         (SVGTextPositioningElement::SVGTextPositioningElement):
2439         (SVGTextPositioningElement::parseMappedAttribute):
2440         * ksvg2/svg/SVGTextPositioningElement.h:
2441         * ksvg2/svg/SVGTransformable.cpp:
2442         * ksvg2/svg/SVGTransformable.h:
2443         * ksvg2/svg/SVGURIReference.cpp:
2444         (SVGURIReference::parseMappedAttribute):
2445         * ksvg2/svg/SVGURIReference.h:
2446         * ksvg2/svg/SVGUseElement.cpp:
2447         (SVGUseElement::SVGUseElement):
2448         (SVGUseElement::parseMappedAttribute):
2449         (SVGUseElement::closeRenderer):
2450         * ksvg2/svg/SVGUseElement.h:
2451         (WebCore::SVGUseElement::contextElement):
2452         * ksvg2/svg/SVGViewElement.h:
2453         (WebCore::SVGViewElement::contextElement):
2454
2455 2006-09-05  Eric Seidel  <eric@eseidel.com>
2456
2457         Reviewed by aroben.
2458
2459         Speed up path parsing by removing string copies.
2460         http://bugzilla.opendarwin.org/show_bug.cgi?id=10722
2461         
2462         Tests already cover path parsing.
2463
2464         * ksvg2/svg/SVGFitToViewBox.cpp:
2465         (WebCore::SVGFitToViewBox::parseViewBox):
2466         * ksvg2/svg/svgpathparser.cpp:
2467         (WebCore::skipOptionalSpaces): Added.
2468         (WebCore::skipOptionalSpacesOrComma): Added.
2469         (WebCore::parseCoord):
2470         (WebCore::SVGPolyParser::parsePoints):
2471         (WebCore::SVGPathParser::parseSVG):
2472
2473 2006-09-05  Sam Weinig  <sam.weinig@gmail.com>
2474
2475         Reviewed by Tim H.
2476
2477         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10742
2478         More Objective-C DOM auto-generation cleanup
2479         
2480         - Factor out implementation type-getters into their own function 
2481           and standardize naming as was done for type-makers (ie. HTML 
2482           and CSS prefixing for method names).
2483
2484         * bindings/objc/DOMCSS.mm:
2485         (-[DOMCSSStyleDeclaration getPropertyShorthand:]):
2486         (-[DOMCSSStyleDeclaration isPropertyImplicit:]):
2487         (-[DOMCSSStyleDeclaration _CSSStyleDeclaration]):
2488         * bindings/objc/DOMHTML.mm:
2489         (-[DOMHTMLTableCaptionElement _HTMLTableCaptionElement]):
2490         (-[DOMHTMLTableSectionElement _HTMLTableSectionElement]):
2491         (-[DOMHTMLTableElement _HTMLTableElement]):
2492         (-[DOMHTMLTableCellElement _HTMLTableCellElement]):
2493         (-[DOMHTMLEmbedElement _HTMLEmbedElement]):
2494         (-[DOMHTMLEmbedElement align]):
2495         (-[DOMHTMLEmbedElement setAlign:]):
2496         (-[DOMHTMLEmbedElement height]):
2497         (-[DOMHTMLEmbedElement setHeight:]):
2498         (-[DOMHTMLEmbedElement name]):
2499         (-[DOMHTMLEmbedElement setName:]):
2500         (-[DOMHTMLEmbedElement src]):
2501         (-[DOMHTMLEmbedElement setSrc:]):
2502         (-[DOMHTMLEmbedElement type]):
2503         (-[DOMHTMLEmbedElement setType:]):
2504         (-[DOMHTMLEmbedElement width]):
2505         (-[DOMHTMLEmbedElement setWidth:]):
2506         * bindings/objc/DOMInternal.h:
2507         * bindings/scripts/CodeGeneratorObjC.pm:
2508         * bridge/mac/WebCoreFrameBridge.mm:
2509         (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
2510         (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
2511         (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
2512         (-[WebCoreFrameBridge selectionStartHasStyle:]):
2513         (-[WebCoreFrameBridge selectionHasStyle:]):
2514
2515 2006-09-05  Adele Peterson  <adele@apple.com>
2516
2517         Reviewed by Adam.
2518
2519         Removed dead code for password field.
2520
2521         * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
2522         * platform/mac/WebCoreTextField.h:
2523         * platform/mac/WebCoreTextField.mm:
2524
2525 2006-09-05  Justin Garcia  <justin.garcia@apple.com>
2526
2527         Reviewed by thatcher
2528         
2529         Setup for <rdar://problem/4344550> Misspellings aren't marked after undo delete
2530         
2531         Fixes:
2532         <http://bugzilla.opendarwin.org/show_bug.cgi?id=6498>
2533         SelectionController's setters should notify delegates of selection changes
2534         
2535         Moved setSelection from Frame to SelectionController.
2536         I haven't moved any of the work that's done as a result of a 
2537         Selection change to SelectionController yet.
2538         Make fewer uses of SelectionControllers.  They're now only used for 
2539         the Frame's selection, the Page's drag caret, and functions that
2540         need to do Selection expansion.
2541
2542         * bindings/js/kjs_window.cpp:
2543         (KJS::Selection::getValueProperty):
2544         (KJS::Selection::toString):
2545         (KJS::SelectionFunc::callAsFunction):
2546         * bridge/mac/FrameMac.h:
2547         * bridge/mac/FrameMac.mm:
2548         (WebCore::FrameMac::advanceToNextMisspelling):
2549         (WebCore::FrameMac::dispatchCPPEvent):
2550         (WebCore::FrameMac::fontForSelection):
2551         (WebCore::FrameMac::baseWritingDirectionForSelectionStart):
2552         (WebCore::FrameMac::markMisspellingsInAdjacentWords):
2553         (WebCore::FrameMac::markMisspellings):
2554         (WebCore::FrameMac::respondToChangedSelection):
2555         (WebCore::FrameMac::shouldChangeSelection):
2556         (WebCore::FrameMac::shouldDeleteSelection):
2557         (WebCore::FrameMac::respondToChangedContents):
2558         * bridge/mac/PageMac.mm:
2559         (WebCore::Page::Page):
2560         * bridge/mac/WebCoreAXObject.mm:
2561         (-[WebCoreAXObject accessibilityAttributeValue:]):
2562         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
2563         (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
2564         (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
2565         (-[WebCoreAXObject doSetAXSelectedTextMarkerRange:]):
2566         * bridge/mac/WebCoreFrameBridge.mm:
2567         (-[WebCoreFrameBridge isSelectionEditable]):
2568         (-[WebCoreFrameBridge isSelectionRichlyEditable]):
2569         (-[WebCoreFrameBridge selectionState]):
2570         (-[WebCoreFrameBridge deselectText]):
2571         (-[WebCoreFrameBridge selectedAttributedString]):
2572         (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
2573         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
2574         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
2575         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]):
2576         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
2577         (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
2578         (-[WebCoreFrameBridge selectedDOMRange]):
2579         (-[WebCoreFrameBridge selectNSRange:]):
2580         (-[WebCoreFrameBridge selectedNSRange]):
2581         (-[WebCoreFrameBridge selectionAffinity]):
2582         (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
2583         (-[WebCoreFrameBridge setSelectionToDragCaret]):
2584         (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
2585         (-[WebCoreFrameBridge moveDragCaretToPoint:]):
2586         (-[WebCoreFrameBridge removeDragCaret]):
2587         (-[WebCoreFrameBridge dragCaretDOMRange]):
2588         (-[WebCoreFrameBridge isDragCaretRichlyEditable]):
2589         (-[WebCoreFrameBridge editableDOMRangeForPoint:]):
2590         (-[WebCoreFrameBridge ensureSelectionVisible]):
2591         (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
2592         * bridge/win/PageWin.cpp:
2593         (WebCore::Page::Page):
2594         * dom/Document.cpp:
2595         (WebCore::Document::updateSelection):
2596         (WebCore::Document::clearSelectionIfNeeded):
2597         (WebCore::Document::notifyBeforeNodeRemoval):
2598         * dom/Element.cpp:
2599         (WebCore::Element::updateFocusAppearance):
2600         * editing/EditCommand.cpp:
2601         (WebCore::EditCommand::EditCommand):
2602         * editing/JSEditor.cpp:
2603         * editing/ModifySelectionListLevel.cpp:
2604         (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
2605         (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
2606         * editing/Selection.cpp:
2607         (WebCore::Selection::setBase):
2608         (WebCore::Selection::setExtent):
2609         * editing/Selection.h:
2610         (WebCore::Selection::extent):
2611         * editing/SelectionController.cpp:
2612         (WebCore::SelectionController::SelectionController):
2613         (WebCore::SelectionController::moveTo):
2614         (WebCore::SelectionController::setSelection):
2615         (WebCore::SelectionController::nodeWillBeRemoved):
2616         (WebCore::SelectionController::modify):
2617         (WebCore::SelectionController::clear):
2618         (WebCore::SelectionController::setBase):
2619         (WebCore::SelectionController::setExtent):
2620         * editing/SelectionController.h:
2621         * editing/TypingCommand.cpp:
2622         (WebCore::TypingCommand::insertText):
2623         (WebCore::TypingCommand::deleteKeyPressed):
2624         (WebCore::TypingCommand::forwardDeleteKeyPressed):
2625         * editing/VisiblePosition.cpp:
2626         (WebCore::VisiblePosition::caretRect):
2627         * editing/VisiblePosition.h:
2628         * html/HTMLInputElement.cpp:
2629         (WebCore::HTMLInputElement::defaultEventHandler):
2630         * page/Frame.cpp:
2631         (WebCore::Frame::selectedText):
2632         (WebCore::Frame::hasSelection):
2633         (WebCore::Frame::selectionController):
2634         (WebCore::Frame::dragCaretController):
2635         (WebCore::Frame::notifyRendererOfSelectionChange):
2636         (WebCore::Frame::invalidateSelection):
2637         (WebCore::Frame::clearCaretRectIfNeeded):
2638         (WebCore::Frame::setFocusNodeIfNeeded):
2639         (WebCore::Frame::selectionLayoutChanged):
2640         (WebCore::Frame::caretBlinkTimerFired):
2641         (WebCore::Frame::paintCaret):
2642         (WebCore::Frame::paintDragCaret):
2643         (WebCore::Frame::isPointInsideSelection):
2644         (WebCore::Frame::selectClosestWordFromMouseEvent):
2645         (WebCore::Frame::handleMousePressEventDoubleClick):
2646         (WebCore::Frame::handleMousePressEventTripleClick):
2647         (WebCore::Frame::handleMousePressEventSingleClick):
2648         (WebCore::Frame::handleMouseMoveEvent):
2649         (WebCore::Frame::handleMouseReleaseEvent):
2650         (WebCore::Frame::selectAll):
2651         (WebCore::Frame::selectContentsOfNode):
2652         (WebCore::Frame::shouldChangeSelection):
2653         (WebCore::Frame::shouldDeleteSelection):
2654         (WebCore::Frame::isSelectionInPasswordField):
2655         (WebCore::Frame::appliedEditing):
2656         (WebCore::Frame::unappliedEditing):
2657         (WebCore::Frame::reappliedEditing):
2658         (WebCore::Frame::computeAndSetTypingStyle):
2659         (WebCore::Frame::applyStyle):
2660         (WebCore::Frame::applyParagraphStyle):
2661         (WebCore::Frame::selectionListState):
2662         (WebCore::Frame::selectionHasStyle):
2663         (WebCore::Frame::selectionComputedStyle):
2664         (WebCore::Frame::selectFrameElementInParentIfFullySelected):
2665         (WebCore::Frame::currentForm):
2666         (WebCore::Frame::revealSelection):
2667         (WebCore::Frame::centerSelectionInVisibleArea):
2668         (WebCore::Frame::styleForSelectionStart):
2669         (WebCore::Frame::setSelectionFromNone):
2670         (WebCore::Frame::findString):
2671         * page/Frame.h:
2672         * page/FramePrivate.h:
2673         (WebCore::FramePrivate::FramePrivate):
2674         * page/FrameView.cpp:
2675         (WebCore::FrameView::clear):
2676         * page/Page.cpp:
2677         (WebCore::Page::dragCaretController):
2678         * page/Page.h:
2679         * rendering/RenderBlock.cpp:
2680         (WebCore::RenderBlock::paintCaret):
2681         * rendering/RenderLayer.cpp:
2682         (WebCore::RenderLayer::autoscroll):
2683         * rendering/RenderTextControl.cpp:
2684         (WebCore::RenderTextControl::selectionStart):
2685         (WebCore::RenderTextControl::selectionEnd):
2686         (WebCore::RenderTextControl::setSelectionRange):
2687         (WebCore::RenderTextControl::selectionChanged):
2688         * rendering/RenderTreeAsText.cpp:
2689         (WebCore::writeSelection):
2690
2691 2006-09-05  Adele Peterson  <adele@apple.com>
2692
2693         Reviewed by Adam.
2694
2695         Let the engine draw the focus ring for styled menu lists.
2696
2697         * rendering/RenderTheme.cpp: (WebCore::RenderTheme::supportsFocusRing): Added case for MenulistButtonAppearance.
2698
2699 2006-09-05  Adele Peterson  <adele@apple.com>
2700
2701         Reviewed by Adam.
2702
2703         - Fix for <rdar://problem/4706463> REGRESSION: Must click twice on <select> elements for menu to show
2704
2705         * rendering/RenderPopupMenuMac.h:
2706         * rendering/RenderPopupMenuMac.mm:
2707         (WebCore::RenderPopupMenuMac::showPopup): Moved call to dismiss popup into hidePopup method.
2708          Now calls RenderMenuList::hidePopup which will update the m_popupIsVisible flag on the menu list before hiding the popup.
2709         (WebCore::RenderPopupMenuMac::hidePopup): Added.
2710
2711 2006-09-05  Sam Weinig  <sam.weinig@gmail.com>
2712
2713         Reviewed by Tim H.
2714
2715         Patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10738
2716         Consolidate the Objective-C DOM Bindings Internal files into DOMInternal.h
2717
2718         - Consolidate DOMHTMLInternal.h, DOMCSSInternal.h, DOMEventsInternal.h,
2719           DOMViewsInternal.h and DOMXPathInternal.h into DOMInternal.h.
2720
2721         - Rename the "type-makers" (used to make a binding from an implementation 
2722           type) so that all the HTML ones begin with the prefix HTML.  Did the same
2723           for the CSS.
2724
2725         - Auto-generate a couple more methods from DOMExtensions.h.
2726
2727         - Various cleanups of the Objective-C auto-generation code.
2728
2729         * WebCore.xcodeproj/project.pbxproj:
2730         * bindings/objc/DOM.mm:
2731         (-[DOMDocument createCSSStyleDeclaration]):
2732         * bindings/objc/DOMCSS.mm:
2733         (+[DOMCSSRuleList _CSSRuleListWith:]):
2734         (+[DOMCSSRule _CSSRuleWith:]):
2735         (+[DOMCSSStyleDeclaration _CSSStyleDeclarationWith:]):
2736         (+[DOMCSSValue _CSSValueWith:]):
2737         (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:]):
2738         (-[DOMDocument getComputedStyle::]):
2739         (-[DOMDocument getMatchedCSSRules::]):
2740         * bindings/objc/DOMCSSInternal.h: Removed.
2741         * bindings/objc/DOMEvents.mm:
2742         * bindings/objc/DOMEventsInternal.h: Removed.
2743         * bindings/objc/DOMEventsNonstandard.mm:
2744         * bindings/objc/DOMExtensions.h:
2745         * bindings/objc/DOMHTML.mm:
2746         (+[DOMHTMLCollection _HTMLCollectionWith:]):
2747         (+[DOMHTMLOptionsCollection _HTMLOptionsCollectionWith:]):
2748         (+[DOMHTMLElement _HTMLElementWith:]):
2749         (+[DOMHTMLFormElement _HTMLFormElementWith:]):
2750         (+[DOMHTMLTableCaptionElement _HTMLTableCaptionElementWith:]):
2751         (+[DOMHTMLTableSectionElement _HTMLTableSectionElementWith:]):
2752         (+[DOMHTMLTableElement _HTMLTableElementWith:]):
2753         (+[DOMHTMLTableCellElement _HTMLTableCellElementWith:]):
2754         * bindings/objc/DOMHTMLAppletElement.mm:
2755         * bindings/objc/DOMHTMLDocument.mm:
2756         (-[DOMHTMLDocument body]):
2757         (-[DOMHTMLDocument images]):
2758         (-[DOMHTMLDocument applets]):
2759         (-[DOMHTMLDocument links]):
2760         (-[DOMHTMLDocument forms]):
2761         (-[DOMHTMLDocument anchors]):
2762         * bindings/objc/DOMHTMLInternal.h: Removed.
2763         * bindings/objc/DOMHTMLOptionElement.mm:
2764         (-[DOMHTMLOptionElement form]):
2765         * bindings/objc/DOMInternal.h:
2766         * bindings/objc/DOMRGBColor.mm:
2767         (setWrapperForRGB):
2768         (-[DOMRGBColor red]):
2769         (-[DOMRGBColor green]):
2770         (-[DOMRGBColor blue]):
2771         (-[DOMRGBColor alpha]):
2772         * bindings/objc/DOMUtility.mm:
2773         (KJS::ScriptInterpreter::createObjcInstanceForValue):
2774         * bindings/objc/DOMViews.mm:
2775         (-[DOMAbstractView WebCore::]):
2776         (-[DOMAbstractView _initWithAbstractView:WebCore::]):
2777         (+[DOMAbstractView _abstractViewWith:WebCore::]):
2778         * bindings/objc/DOMViewsInternal.h: Removed.
2779         * bindings/objc/DOMXPath.mm:
2780         * bindings/objc/DOMXPathInternal.h: Removed.
2781         * bindings/objc/PublicDOMInterfaces.h:
2782         * bindings/scripts/CodeGeneratorObjC.pm:
2783         * bridge/mac/WebCoreFrameBridge.mm:
2784         (-[WebCoreFrameBridge typingStyle]):
2785         * html/HTMLAnchorElement.idl:
2786         * html/HTMLAreaElement.idl:
2787         * html/HTMLImageElement.idl:
2788         * html/HTMLInputElement.idl:
2789         * html/HTMLLinkElement.idl:
2790
2791 2006-09-05  Steve Falkenburg  <sfalken@apple.com>
2792
2793         Conditionalize new DOM headers for ObjC only
2794
2795         * DerivedSources.make:
2796
2797 2006-09-04  Alexey Proskuryakov  <ap@nypop.com>
2798
2799         Reviewed by Darin.
2800
2801         http://bugzilla.opendarwin.org/show_bug.cgi?id=10716
2802         XMLHttpRequest.responseText is null if HTTP response is empty
2803
2804         Extended existing tests:
2805         - http/tests/xmlhttrequest/zero-length-response.html
2806         - http/tests/xmlhttrequest/zero-length-response-sync.html
2807
2808         * xml/xmlhttprequest.cpp:
2809         (WebCore::XMLHttpRequest::XMLHttpRequest): Initialize responseText to an empty string.
2810         (WebCore::XMLHttpRequest::open): Reset responseText to an empty string.
2811         * bindings/js/JSXMLHttpRequest.cpp:
2812         (KJS::JSXMLHttpRequest::getValueProperty): Return null rather than undefined
2813         for nil responseXML.
2814
2815 2006-09-04  Timothy Hatcher  <timothy@apple.com>
2816
2817         Reviewed by Darin.
2818
2819         Bug 10714: ObjC autogeneration needs safe-guards against easily modifying the public API
2820         http://bugzilla.opendarwin.org/show_bug.cgi?id=10714
2821         
2822         - New PublicDOMInterfaces.h file is consulted when generating
2823           the ObjC DOM files. All public DOM class interfaces, properties
2824           and methods need to be in this file. Anything not in the file will
2825           be generated into the appropriate private header file. During
2826           generation if something changed or is missing in the public API
2827           a build error will occur. New interfaces added to the IDLs files
2828           will now not automatically be reflected in the public ObjC API.
2829           Methods commented out in PublicDOMInterfaces.h are pending public
2830           and will be uncommented once approved.
2831
2832         - Removed most of the Exclude=ObjC uses from the IDL files. This
2833           attribute was mostly used to prevent changes to the public headers.
2834
2835         - Make a new parameter name if the original conflicts with a property name.
2836
2837         - Simplified the generation code for dealing with exceptions.
2838
2839         - Moved file opens to WriteData. Files are unlinked before
2840           being opened to work around a Leopard file truncation bug.
2841
2842         - Fixed #imports for DOMImplementation to be DOMDOMImplementation.h
2843
2844         * WebCore.xcodeproj/project.pbxproj:
2845         * bindings/objc/DOMCSS.h:
2846         * bindings/objc/DOMCore.h:
2847         * bindings/objc/DOMExtensions.h:
2848         * bindings/objc/DOMHTMLInternal.h:
2849         * bindings/objc/DOMPrivate.h:
2850         * bindings/objc/PublicDOMInterfaces.h: Added.
2851         * bindings/scripts/CodeGeneratorObjC.pm:
2852         * dom/Document.idl:
2853         * dom/Element.idl:
2854         * dom/NamedNodeMap.idl:
2855         * dom/ProcessingInstruction.idl:
2856         * html/HTMLAnchorElement.idl:
2857         * html/HTMLAreaElement.idl:
2858         * html/HTMLBodyElement.idl:
2859         * html/HTMLButtonElement.idl:
2860         * html/HTMLImageElement.idl:
2861         * html/HTMLInputElement.idl:
2862         * html/HTMLLabelElement.idl:
2863         * html/HTMLLegendElement.idl:
2864         * html/HTMLLinkElement.idl:
2865         * html/HTMLOptionsCollection.idl:
2866         * html/HTMLPreElement.idl:
2867         * html/HTMLStyleElement.idl:
2868         * html/HTMLTextAreaElement.idl:
2869
2870 2006-09-04  Nikolas Zimmermann  <zimmermann@kde.org>
2871
2872         Reviewed by Tim H.
2873
2874         Continue fixing the build, I forgot this in my previous patch!
2875
2876         * platform/qt/PathQt.cpp:
2877         (WebCore::Path::apply):
2878
2879 2006-09-04  Nikolas Zimmermann  <zimmermann@kde.org>
2880
2881         Reviewed by Tim H.
2882
2883         Fix build on Qt/Linux.
2884
2885         * CMakeLists.txt:
2886         * platform/qt/PathQt.cpp:
2887         (WebCore::Path::transform):
2888
2889 2006-09-04  Alexey Proskuryakov  <ap@nypop.com>
2890
2891         Reviewed by Darin.
2892
2893         http://bugzilla.opendarwin.org/show_bug.cgi?id=10676
2894         @charset rules not accessible via DOM
2895
2896         Test: fast/encoding/css-charset-dom.html
2897
2898         * WebCore.xcodeproj/project.pbxproj: Added CSSCharsetRule.cpp
2899         * bindings/js/kjs_css.cpp:
2900         (KJS::DOMCSSStyleSheet::getValueProperty):
2901         Separated Rules and CssRules, since now they behave differently.
2902
2903         * css/CSSCharsetRule.h: Make the constructor take an encoding.
2904         * css/CSSCharsetRule.cpp: Added.
2905
2906         * css/CSSGrammar.y: Create CSSStylesheetRules as necessary.
2907
2908         * css/CSSRuleList.cpp:
2909         (WebCore::CSSRuleList::CSSRuleList):
2910         * css/CSSRuleList.h:
2911         * css/CSSStyleSheet.cpp:
2912         (WebCore::CSSStyleSheet::cssRules):
2913         * css/CSSStyleSheet.h:
2914         Skip charset rules in IE compatibility mode.
2915
2916         * css/StyleBase.h:
2917         (WebCore::StyleBase::isCharsetRule): Fixed a typo.
2918
2919         * css/cssparser.cpp:
2920         (WebCore::CSSParser::createCharsetRule):
2921         * css/cssparser.h:
2922         Added createCharsetRule().
2923
2924 2006-09-04  Nikolas Zimmermann  <zimmermann@kde.org>
2925
2926         Reviewed by Darin.
2927
2928         Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10644
2929         Let FrameQt operate on a FrameQtClient, just like Win/Mac handle it.
2930
2931         * CMakeLists.txt:
2932         * platform/qt/FrameQt.cpp:
2933         (WebCore::FrameQt::FrameQt):
2934         (WebCore::FrameQt::~FrameQt):
2935         (WebCore::FrameQt::openURL):
2936         (WebCore::FrameQt::submitForm):
2937         (WebCore::FrameQt::urlSelected):
2938         * platform/qt/FrameQt.h:
2939         * platform/qt/FrameQtClient.cpp: Added.
2940         (WebCore::FrameQtClientDefault::FrameQtClientDefault):
2941         (WebCore::FrameQtClientDefault::~FrameQtClientDefault):
2942         (WebCore::FrameQtClientDefault::setFrame):
2943         (WebCore::FrameQtClientDefault::openURL):
2944         (WebCore::FrameQtClientDefault::submitForm):
2945         (WebCore::FrameQtClientDefault::receivedResponse):
2946         (WebCore::FrameQtClientDefault::receivedData):
2947         (WebCore::FrameQtClientDefault::receivedAllData):
2948         * platform/qt/FrameQtClient.h: Added.
2949         (WebCore::FrameQtClient::~FrameQtClient):
2950
2951 2006-09-04  Eric Seidel  <eric@eseidel.com>
2952
2953         Reviewed by andersca.
2954
2955         Clean-up style and spacing.
2956         http://bugzilla.opendarwin.org/show_bug.cgi?id=10724
2957         No tests needed, no functional changes.
2958
2959         * ksvg2/svg/svgpathparser.cpp:
2960         (WebCore::parseCoord):
2961         (WebCore::SVGPolyParser::parsePoints):
2962         (WebCore::SVGPathParser::parseSVG):
2963         (WebCore::SVGPathParser::calculateArc):
2964         (WebCore::SVGPathParser::svgLineToHorizontal):
2965         (WebCore::SVGPathParser::svgLineToVertical):
2966         (WebCore::SVGPathParser::svgCurveToCubicSmooth):
2967         (WebCore::SVGPathParser::svgCurveToQuadratic):
2968         (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
2969         (WebCore::SVGPathParser::svgArcTo):
2970
2971 2006-09-04  Rob Buis  <buis@kde.org>
2972
2973         Reviewed by Eric.
2974
2975         http://bugzilla.opendarwin.org/show_bug.cgi?id=6546
2976         clipPath data does not respect transforms
2977
2978         Get the transform from the dom element and adjust
2979         the clip path with it.
2980
2981         * ksvg2/svg/SVGClipPathElement.cpp:
2982         (SVGClipPathElement::canvasResource):
2983
2984 2006-09-04  Rob Buis  <buis@kde.org>
2985
2986         Reviewed by Eric.
2987
2988         This code should have gone in as part of:
2989         http://bugzilla.opendarwin.org/show_bug.cgi?id=10696
2990         It addresses the comments there, also we use double instead
2991         of float now in calculations.
2992
2993         * platform/Path.cpp:
2994         (WebCore::Path::createRoundedRectangle):
2995         (WebCore::Path::createRectangle):
2996         (WebCore::Path::createEllipse):
2997         (WebCore::Path::createCircle):
2998
2999 2006-09-03  Sam Weinig  <sam.weinig@gmail.com>
3000
3001         Reviewed by Darin and Tim H.
3002
3003         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10711
3004           Auto-generate the Objective-C DOM Stylesheet bindings
3005
3006           Auto-generates DOMMediaList, DOMStyleSheet, and DOMStyleSheetList.
3007
3008         * DerivedSources.make:
3009         * WebCore.xcodeproj/project.pbxproj:
3010         * bindings/objc/DOMCSS.mm:
3011         (+[DOMStyleSheet _styleSheetWith:]):
3012         (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
3013         * bindings/objc/DOMCSSInternal.h:
3014         * bindings/objc/DOMInternal.h:
3015         * bindings/objc/DOMObject.mm:
3016         (-[DOMObject sheet]):
3017         * bindings/objc/DOMPrivate.h:
3018         * bindings/objc/DOMStylesheets.h:
3019         * bindings/objc/DOMUtility.mm:
3020         (KJS::ScriptInterpreter::createObjcInstanceForValue):
3021         * bindings/scripts/CodeGeneratorObjC.pm:
3022         * css/StyleSheet.idl: Added.
3023         * css/StyleSheetList.idl: Added.
3024
3025 2006-09-03  Rob Buis  <buis@kde.org>
3026
3027         Reviewed by Darin.
3028
3029         http://bugzilla.opendarwin.org/show_bug.cgi?id=10696
3030         RenderPathQuartz and RenderPathQt should not be needed
3031
3032         Cleanup of code related to RenderPath.
3033
3034         * CMakeLists.txt:
3035         * WebCore.xcodeproj/project.pbxproj:
3036         * kcanvas/KCanvasCreator.cpp:
3037         * kcanvas/KCanvasCreator.h:
3038         * kcanvas/RenderPath.cpp:
3039         (WebCore::):
3040         (WebCore::DrawMarkersData::DrawMarkersData):
3041         (WebCore::drawMarkerWithData):
3042         (WebCore::updateMarkerDataForElement):
3043         (WebCore::drawStartAndMidMarkers):
3044         (WebCore::RenderPath::drawMarkersIfNeeded):
3045         * kcanvas/RenderPath.h:
3046         * kcanvas/device/KRenderingDevice.h:
3047         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
3048         * kcanvas/device/qt/KRenderingDeviceQt.h:
3049         * kcanvas/device/qt/RenderPathQt.cpp:
3050         (WebCore::RenderPath::strokeContains):
3051         (WebCore::RenderPath::strokeBBox):
3052         * kcanvas/device/qt/RenderPathQt.h:
3053         * kcanvas/device/quartz/KCanvasItemQuartz.h:
3054         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
3055         (WebCore::RenderPath::strokeBBox):
3056         (WebCore::RenderPath::strokeContains):
3057         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
3058         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
3059         * kcanvas/device/quartz/QuartzSupport.h:
3060         * ksvg2/svg/SVGAElement.cpp:
3061         * ksvg2/svg/SVGCircleElement.cpp:
3062         (SVGCircleElement::toPathData):
3063         * ksvg2/svg/SVGEllipseElement.cpp:
3064         (WebCore::SVGEllipseElement::toPathData):
3065         * ksvg2/svg/SVGFEImageElement.cpp:
3066         * ksvg2/svg/SVGGElement.cpp:
3067         * ksvg2/svg/SVGImageElement.cpp:
3068         * ksvg2/svg/SVGLineElement.cpp:
3069         (SVGLineElement::toPathData):
3070         * ksvg2/svg/SVGMarkerElement.cpp:
3071         * ksvg2/svg/SVGPathElement.cpp:
3072         * ksvg2/svg/SVGPatternElement.cpp:
3073         * ksvg2/svg/SVGPolygonElement.cpp:
3074         * ksvg2/svg/SVGPolylineElement.cpp:
3075         * ksvg2/svg/SVGRectElement.cpp:
3076         (WebCore::SVGRectElement::toPathData):
3077         * ksvg2/svg/SVGSVGElement.cpp:
3078         * ksvg2/svg/SVGStyledElement.cpp:
3079         (WebCore::SVGStyledElement::createRenderer):
3080         * ksvg2/svg/SVGSwitchElement.cpp:
3081         * ksvg2/svg/SVGTextElement.cpp:
3082         * ksvg2/svg/SVGUseElement.cpp:
3083         * platform/Path.h:
3084         (WebCore::):
3085         * platform/cg/PathCG.cpp:
3086         (WebCore::CGPathToCFStringApplierFunction):
3087         (WebCore::CGPathApplierToPathApplier):
3088         (WebCore::Path::apply):
3089         (WebCore::Path::transform):
3090         * platform/qt/PathQt.cpp:
3091         (WebCore::Path::apply):
3092
3093 2006-09-03  Timothy Hatcher  <timothy@apple.com>
3094
3095         Reviewed by Darin.
3096
3097         Bug 10685: ObjC DOM should have no unnamed parameters
3098         http://bugzilla.opendarwin.org/show_bug.cgi?id=10685
3099
3100         - The ObjC code generation script now outputs parameter prefixes
3101           for methods that have more than 1 parameter. This prefix is simply
3102           the parameter name. Some parameter names have been changed in the IDL
3103           files to produce better prefixes. If an extended attribute of "ObjCPrefix"
3104           exists on a parameter we will use that for the prefix.
3105
3106         - A backwards compatible version of the method is placed in a
3107           category with a deprecation macro for 10.5 and later. This step only
3108           happens if the IDL extended attribute "OldStyleObjC" is defined.
3109           All new functions in IDL should not get this attribute.
3110
3111         - Made the $interfaceMethodSelector regex in IDLStructure.pm allow "=" so 
3112           parameter extended attributes can have values.
3113
3114         - Moved RemoveExcludedAttributesAndFunctions to CodeGenerator.pm
3115           so it can be shared between the two generators.
3116           
3117         - Removed the die when we encounter a getter that uses exceptions.
3118           Sam Weinig added support for this in an earlier change.
3119
3120         - Check if $ENV{"MACOSX_DEPLOYMENT_TARGET"} is defined before we compare.
3121           This caused a perl warning when generating on other platforms.
3122
3123         - The ObjC generation will not happen on platforms other than Mac OS.
3124           This is determined by the "OS" env variable Xcode sets. This check
3125           is in the DerivedSources.make.
3126
3127         - Added a way to skip generation if the constructor of the specific
3128           generator returns undef. Not used yet.
3129
3130         - Many cleanup tweaks in CodeGeneratorObjC.pm.
3131
3132         - Removed IDL and CSS files from the project's resource copy phase,
3133           these do no need to be in WebCore's resources. 
3134
3135         * DerivedSources.make
3136         * WebCore.xcodeproj/project.pbxproj
3137         * bindings/scripts/CodeGenerator.pm
3138         * bindings/scripts/CodeGeneratorJS.pm
3139         * bindings/scripts/CodeGeneratorObjC.pm
3140         * bindings/scripts/IDLStructure.pm
3141         * css/CSSMediaRule.idl
3142         * css/CSSPrimitiveValue.idl
3143         * css/CSSStyleDeclaration.idl
3144         * css/CSSStyleSheet.idl
3145         * dom/CharacterData.idl
3146         * dom/DOMImplementation.idl
3147         * dom/Document.idl
3148         * dom/Element.idl
3149         * dom/KeyboardEvent.idl
3150         * dom/MouseEvent.idl
3151         * dom/MutationEvent.idl
3152         * dom/NamedNodeMap.idl
3153         * dom/UIEvent.idl
3154         * html/HTMLCanvasElement.idl
3155         * html/HTMLSelectElement.idl
3156         * ksvg2/bindings/idl/svg/SVGLengthList.idl
3157         * ksvg2/bindings/idl/svg/SVGNumberList.idl
3158         * ksvg2/bindings/idl/svg/SVGPointList.idl
3159         * ksvg2/bindings/idl/svg/SVGStringList.idl
3160         * ksvg2/bindings/idl/svg/SVGTextContentElement.idl
3161         * ksvg2/bindings/idl/svg/SVGTransformList.idl
3162         * ksvg2/svg/SVGSVGElement.idl
3163         * page/DOMWindow.idl
3164
3165 2006-09-03  Alexey Proskuryakov  <ap@nypop.com>
3166
3167         Reviewed by Tim H.
3168
3169         http://bugzilla.opendarwin.org/show_bug.cgi?id=10693
3170         Convert JavaScript arrays to AppleScript lists
3171
3172         Test: fast/AppleScript/array.html
3173
3174         * bridge/mac/WebCoreFrameBridge.mm:
3175         (aeDescFromJSValue): Added a case for ArrayInstance.
3176
3177 2006-09-03  Alexey Proskuryakov  <ap@nypop.com>
3178
3179         Reviewed by Eric.
3180
3181         http://bugzilla.opendarwin.org/show_bug.cgi?id=10697
3182         REGRESSION (r16175): Errors in incremental decoding of UTF-8
3183
3184         Tests:
3185         - http/tests/incremental/slow-utf8-html.pl
3186         - fast/encoding/charset-invalid.html
3187
3188         * loader/Decoder.cpp:
3189         (Decoder::Decoder): Ensure that we have a valid encoding. Get its name via TextEncoding, to match
3190         the logic in setEncodingName().
3191         (Decoder::setEncodingName): Only set m_encodingName if the encoding is valid. Rely on TextEncoding
3192         constructor to lowercase it if necessary.
3193         (Decoder::decode): Use setEncodingName() to apply encoding from BOM. Don't try to ensure the
3194         validity of encoding - it is enforced by class constructor and setEncodingName().
3195
3196 2006-09-02  Sam Weinig  <sam.weinig@gmail.com>
3197
3198         Reviewed by Tim H.
3199
3200         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10684
3201           Auto-generate the Objective-C DOM CSS bindings
3202
3203           Auto-generates DOMCSSCharsetRule, DOMCSSFontFaceRule, DOMCSSImportRule,
3204           DOMCSSMediaRule, DOMCSSPageRule, DOMCSSPrimitiveValue, DOMCSSRule,
3205           DOMCSSRuleList, DOMCSSStyleDeclaration, DOMCSSStyleRule, DOMCSSStyleSheet,
3206           DOMCSSUnknownRule, DOMCSSValue, DOMCSSValueList, DOMCounter, and DOMRect.
3207
3208           Splits DOMRGBColor into its own files.
3209
3210         * DerivedSources.make:
3211         * WebCore.xcodeproj/project.pbxproj:
3212         * bindings/objc/DOMCSS.h:
3213         * bindings/objc/DOMCSS.mm:
3214         (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
3215         (+[DOMCSSPrimitiveValue _valueWith:]):
3216         * bindings/objc/DOMCSSInternal.h:
3217         * bindings/objc/DOMExtensions.h:
3218         * bindings/objc/DOMInternal.h:
3219         * bindings/objc/DOMRGBColor.h: Added.
3220         * bindings/objc/DOMRGBColor.mm: Added.
3221         (getWrapperForRGB):
3222         (setWrapperForRGB):
3223         (removeWrapperForRGB):
3224         (-[DOMRGBColor dealloc]):
3225         (-[DOMRGBColor finalize]):
3226         (-[DOMRGBColor red]):
3227         (-[DOMRGBColor green]):
3228         (-[DOMRGBColor blue]):
3229         (-[DOMRGBColor alpha]):
3230         (-[DOMRGBColor color]):
3231         (-[DOMRGBColor _initWithRGB:WebCore::]):
3232         (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
3233         * bindings/scripts/CodeGeneratorObjC.pm:
3234         * css/CSSCharsetRule.idl: Added.
3235         * css/CSSFontFaceRule.idl: Added.
3236         * css/CSSImportRule.idl: Added.
3237         * css/CSSMediaRule.idl: Added.
3238         * css/CSSPageRule.idl: Added.
3239         * css/CSSRule.idl:
3240         * css/CSSStyleDeclaration.idl:
3241         * css/CSSStyleRule.idl: Added.
3242         * css/CSSStyleSheet.idl: Added.
3243         * css/CSSUnknownRule.idl: Added.
3244         * css/CSSValue.idl:
3245         * css/MediaList.idl:
3246         * css/RGBColor.idl: Added.
3247         * css/Rect.idl:
3248         * css/RectImpl.h:
3249
3250 2006-09-02  Graham Dennis  <graham.dennis@gmail.com>
3251
3252         Reviewed by Justin.
3253         
3254         http://bugzilla.opendarwin.org/show_bug.cgi?id=10579
3255         AppleStyleCommand::applyBlockStyle crash
3256
3257         * editing/ApplyStyleCommand.cpp:
3258         (WebCore::ApplyStyleCommand::applyBlockStyle): Prevent a crash by
3259         making sure that the 'beyondEnd' node is after the start node.
3260
3261 2006-09-02  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
3262
3263         Reviewed by Tim H.
3264
3265         Bug 10454: Unix bakefile fixes
3266         http://bugzilla.opendarwin.org/show_bug.cgi?id=10454
3267
3268         * WebCoreSources.bkl:
3269         * platform/gdk/RenderPopupMenuGdk.cpp:
3270         (WebCore::RenderPopupMenuGdk::RenderPopupMenuGdk):
3271         * platform/gdk/RenderPopupMenuGdk.h:
3272         * platform/gdk/RenderThemeGdk.cpp:
3273         (WebCore::RenderThemeGdk::createPopupMenu):
3274         (WebCore::RenderThemeGdk::systemFont):
3275         * platform/gdk/RenderThemeGdk.h:
3276         * platform/gdk/TemporaryLinkStubs.cpp:
3277         * webcore-base.bkl:
3278
3279 2006-09-02  Adele Peterson  <adele@apple.com>
3280
3281         Reviewed by Anders.
3282
3283         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10667
3284           Password: Double-click should select-all to avoid exposing word boundaries
3285
3286         Test: fast/forms/password-doubleclick-selection.html
3287
3288         * editing/visible_units.cpp:
3289         (WebCore::previousBoundary): When searching for boundaries in renderers that use the textSecurity property, 
3290          convert characters in strings to alpha-numeric characters (in this case, all 'x's) so that every character
3291          isn't treated as a punctuation boundary.
3292         (WebCore::nextBoundary): ditto.
3293         * editing/TextIterator.cpp: (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Updated to use the renderer's 
3294           string instead of the node value.  This matches the base class implementation of handleTextNode.
3295
3296         Code cleanup.
3297         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): 
3298           Avoid unnecessary check for password field case if the smart replace condition is false.
3299         * page/Frame.cpp: (WebCore::Frame::mayCopy): Removed duplicate code.  Calls isSelectionInPasswordField now.
3300         * rendering/RenderText.cpp: (WebCore::RenderText::setText): Updated formatting.
3301
3302 2006-09-01  David Hyatt  <hyatt@apple.com>
3303
3304         Fix for 10682, refine the FOUC paint suppression logic so that it
3305         is only triggered when FOUC would really have occurred.
3306
3307         Reviewed by aroben
3308
3309         * css/cssstyleselector.cpp:
3310         (WebCore::CSSStyleSelector::styleForElement):
3311         * dom/Document.cpp:
3312         (WebCore::Document::Document):
3313         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
3314         (WebCore::Document::updateStyleSelector):
3315         * dom/Document.h:
3316         (WebCore::Document::haveStylesheetsLoaded):
3317         (WebCore::Document::):
3318         (WebCore::Document::didLayoutWithPendingStylesheets):
3319         * rendering/RenderBlock.cpp:
3320         (WebCore::RenderBlock::paintChildren):
3321         * rendering/RenderLayer.cpp:
3322         (WebCore::RenderLayer::paintLayer):
3323
3324 2006-09-01  MorganL  <morlmor@yahoo.com>
3325
3326         Reviewed by Darin. Updated/landed by Adam.
3327
3328         Fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=10553
3329         Windows build fixes
3330
3331         * WebCore.vcproj/WebCore/WebCore.vcproj:
3332         * WebCore.vcproj/WebCore/build-generated-files.sh:
3333         * bridge/win/FrameWin.h:
3334         * bridge/win/PageWin.cpp:
3335         (WebCore::Page::Page):
3336         * platform/win/FontWin.cpp:
3337         * platform/win/TemporaryLinkStubs.cpp:
3338         (FrameWin::registerCommandForUndo):
3339         (FrameWin::canPaste):
3340         (FrameWin::issuePasteAndMatchStyleCommand):
3341         (WebCore::screenDepthPerComponent):
3342         (WebCore::screenIsMonochrome):
3343         (FrameWin::overrideMediaType):
3344         (FrameWin::saveDocumentState):
3345         (FrameWin::respondToChangedContents):
3346         (FrameWin::handledOnloadEvents):
3347         (FrameWin::createPlugin):
3348         (FrameWin::objectContentType):
3349         (Path::contains):
3350         (TextField::TextField):
3351         (RenderPopupMenuWin::hidePopup):
3352         (RenderThemeWin::paintMenuList):
3353         (RenderThemeWin::adjustMenuListStyle):
3354         (CString::CString):
3355         (CString::data):
3356         * platform/win/WidgetWin.cpp:
3357         * rendering/RenderPopupMenuWin.h:
3358
3359 2006-09-01  Brady Eidson  <beidson@apple.com>
3360
3361         Reviewed by Tim Omernick
3362
3363         Added an SQLDatabase logging channel.  Changed all SQLDatabase and SQLStatement errors to use this new channel.
3364         Also, as a popular request from other contributers, added a log for all prepare(), step(), finalize(), and reset()s
3365         Also, fixed a grammar error in my previous ChangeLog entry.
3366
3367         * bridge/mac/WebCorePageBridge.mm:
3368         (initializeLoggingChannelsIfNecessary): Initialize the new channel
3369         * loader/icon/SQLDatabase.cpp:
3370         (WebCore::SQLDatabase::setBusyTimeout): Use SQLDatabase logging channel
3371         (WebCore::SQLDatabase::setBusyHandler): ditto
3372         (WebCore::SQLDatabase::clearAllTables): ditto
3373         (WebCore::SQLDatabase::runVacuumCommand): ditto
3374         * loader/icon/SQLStatement.cpp:
3375         (WebCore::SQLStatement::prepare): Added a log
3376         (WebCore::SQLStatement::step): ditto
3377         (WebCore::SQLStatement::finalize): ditto
3378         (WebCore::SQLStatement::reset): ditto
3379         (WebCore::SQLStatement::getColumnBlob): Use SQLDatabase logging channel
3380         (WebCore::SQLStatement::returnTextResults): ditto
3381         (WebCore::SQLStatement::returnTextResults16): ditto
3382         (WebCore::SQLStatement::returnIntResults): ditto
3383         (WebCore::SQLStatement::returnInt64Results): ditto
3384         (WebCore::SQLStatement::returnDoubleResults): ditto
3385         * platform/Logging.cpp:
3386         (WebCore::): Added new logging channel
3387         * platform/Logging.h: ditto
3388
3389 2006-09-01  Adele Peterson  <adele@apple.com>
3390
3391         Reviewed by Tim Omernick.
3392
3393         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6990
3394         Switch to use new text field implementation for <input type="password">
3395
3396         * css/html4.css: Give input[password] the same style properties as normal text fields.
3397         * html/HTMLInputElement.cpp: Removed checks for TextFieldAppearance.
3398         (WebCore::HTMLInputElement::selectionStart):
3399         (WebCore::HTMLInputElement::selectionEnd):
3400         (WebCore::HTMLInputElement::setSelectionStart):
3401         (WebCore::HTMLInputElement::setSelectionEnd):
3402         (WebCore::HTMLInputElement::select):
3403         (WebCore::HTMLInputElement::setSelectionRange):
3404         (WebCore::HTMLInputElement::createRenderer):
3405         * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField):
3406
3407 2006-09-01  Brady Eidson  <beidson@apple.com>
3408
3409         Reviewed by John (though Sarge reviewed a previous patch of mine in an attempt to review this one)
3410
3411         Added some constants for SQL Result Codes to SQLDatabase.h
3412         This way, users of SQLDatabase can access all necessary SQLite functionality
3413         without having access to sqlite3.h.
3414         Also reordered some files in the xcodeproj and some #includes
3415
3416         * WebCore.xcodeproj/project.pbxproj:  Reordered some files 
3417         * loader/icon/IconDataCache.cpp:
3418         (WebCore::IconDataCache::writeToDatabase): Use our new result codes
3419         * loader/icon/IconDatabase.cpp:
3420         (WebCore::IconDatabase::sharedIconDatabase): Use our new result codes
3421         (WebCore::IconDatabase::retainIconForPageURL): Use our new result codes
3422         (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Use our new result codes
3423         (WebCore::IconDatabase::addIconForIconURLQuery): Use our new result codes
3424         (WebCore::IconDatabase::hasIconForIconURLQuery): Use our new result codes
3425         * loader/icon/SQLDatabase.cpp:
3426         (WebCore::SQLDatabase::lastError): Moved from header to eliminate dependency on sqlite3.h in header
3427         (WebCore::SQLDatabase::lastErrorMsg): Ditto
3428         * loader/icon/SQLDatabase.h: Removed #include <sqlite3.h>
3429         * loader/icon/SQLStatement.cpp: Added #include <sqlite3.h>
3430         * loader/icon/SQLStatement.h: Removed #include <sqlite3.h>
3431
3432 2006-09-01  David Hyatt  <hyatt@apple.com>
3433
3434         Fix for 10680, contrained flexbox is not shrinking flexible children
3435         properly.  (Fixing in case it's hit by the file upload control.)
3436
3437         Reviewed by aroben
3438
3439         Adding 026.html to fast/flexbox.
3440
3441         * rendering/RenderFlexibleBox.cpp:
3442         (WebCore::RenderFlexibleBox::allowedChildFlex):
3443
3444 2006-09-01  Nikolas Zimmermann  <zimmermann@kde.org>
3445
3446         Reviewed by eseidel.  Landed by eseidel.
3447
3448         Implement support for multiple parents in the SVG idls.
3449
3450         For class "FooBar" go through all parents recursively,
3451         collect their attributes & functions & constants and
3452         add them directly into the class "FooBar".
3453
3454         (Note: It is NOT enabled by default for now - still some things related to SVGAnimated* need to be solved first)
3455
3456         * bindings/scripts/CodeGenerator.pm:
3457         * bindings/scripts/CodeGeneratorJS.pm:
3458         * bindings/scripts/generate-bindings.pl:
3459
3460 2006-09-02  Nikolas Zimmermann  <zimmermann@kde.org>
3461
3462         Reviewed by hyatt.  Landed by eseidel.
3463
3464         Fix build on Linux.
3465
3466         * CMakeLists.txt: Add platform/CString.cpp.
3467         * platform/qt/FrameQt.cpp: Correct repsondToChangedContents() signature
3468         * platform/qt/FrameQt.h:: Correct respondToChangedContents() signature
3469
3470 2006-09-01  Darin Adler  <darin@apple.com>
3471
3472         Reviewed by Brady.
3473
3474         - a few small tweaks to the icon database bridge
3475
3476         * bridge/mac/WebCoreIconDatabaseBridge.h: Removed unnecessary declarations.
3477         Renamed sharedBridgeInstance to sharedInstance.
3478         * bridge/mac/WebCoreIconDatabaseBridge.mm: Put functions inside WebCore namespace.
3479         (WebCore::IconDatabase::loadIconFromURL): Updated for sharedInstance namespace.
3480
3481 2006-09-01  Timothy Hatcher  <timothy@apple.com>
3482
3483         Reviewed by Darin.
3484
3485         <rdar://problem/4651318> REGRESSION: can't drag library items to widget in Dashcode
3486         <rdar://problem/4701626> REGRESSION: Unit Converter widget doesn't work convert data in its fields
3487
3488         jsNull should not be returned as NSNull because existing applications do not
3489         expect that return value. Return as nil for backwards compatibility.
3490
3491         * bindings/objc/WebScriptObject.mm:
3492         (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
3493
3494 2006-09-01  Alexey Proskuryakov  <ap@nypop.com>
3495
3496         Release build fix.
3497
3498         * loader/Decoder.cpp:
3499         (Decoder::Decoder): Use String::latin1().
3500
3501 2006-09-01  Alexey Proskuryakov  <ap@nypop.com>
3502
3503         Reviewed by Eric.
3504
3505         - http://bugzilla.opendarwin.org/show_bug.cgi?id=5620
3506         Should only honor encoding from <meta> in HTML
3507
3508         - http://bugzilla.opendarwin.org/show_bug.cgi?id=9783
3509         An XML declaration without an explicit encoding incorrectly triggers
3510         UTF-8 encoding in an HTML document
3511
3512         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10155
3513         CSS2: @charset is not supported
3514         
3515         * loader/Decoder.cpp:
3516         (Decoder::Decoder): Decoder now knows what kind of content it is decoding.
3517         Also, the browser default encoding can now be passed directly to the constructor,
3518         to streamline the logic.
3519         (Decoder::decode): Add support for @charset, differentiate between HTML and XML.
3520         (Decoder::setEncodingName): Style cleanup.
3521         (Decoder::encodingName): Ditto.
3522         (Decoder::flush): Ditto.
3523         * loader/Decoder.h:
3524         (WebCore::Decoder::):
3525
3526         * bridge/mac/WebCoreEncodings.mm: Pass a content type of text/html to Decoder.
3527
3528         * loader/CachedCSSStyleSheet.cpp:
3529         (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
3530         (WebCore::CachedCSSStyleSheet::setCharset):
3531         (WebCore::CachedCSSStyleSheet::data):
3532         * loader/CachedCSSStyleSheet.h:
3533         Use Decoder instead of TextEncoding::toUnicode() to enable @charset support.
3534
3535         * loader/CachedXBLDocument.cpp:
3536         (WebCore::CachedXBLDocument::CachedXBLDocument): Pass a content type.
3537         * loader/CachedXSLStyleSheet.cpp:
3538         (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet): Ditto.
3539         (WebCore::CachedXSLStyleSheet::data): Flush the decoder to be safe.
3540
3541         * page/Frame.cpp:
3542         (WebCore::Frame::write): Pass a content type and a default encoding to 
3543         the Decoder.
3544         * xml/XSLTProcessor.cpp:
3545         (WebCore::XSLTProcessor::createDocumentFromSource): Pass the output document
3546         MIME type.
3547         * xml/xmlhttprequest.cpp:
3548         (WebCore::XMLHttpRequest::receivedData): Ditto.
3549
3550 2006-09-01  Adele Peterson  <adele@apple.com>
3551
3552         Reviewed by John.
3553
3554         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10580
3555           Password: New secure text field allows non-Roman text entry
3556
3557         * bridge/mac/FrameMac.mm:
3558         (WebCore::FrameMac::setSecureKeyboardEntry): Enable and disable Roman keyboards when switching in and out of this mode.
3559         (WebCore::FrameMac::isSecureKeyboardEntry): Changed secureKeyboardEntry to isSecureKeyboardEntry.
3560         * bridge/mac/FrameMac.h: ditto.
3561         * page/Frame.cpp: (WebCore::Frame::setIsActive): ditto.
3562         * page/Frame.h: (WebCore::Frame::isSecureKeyboardEntry): ditto.
3563
3564 2006-09-01  Adele Peterson  <adele@apple.com>
3565
3566         Reviewed by John.
3567
3568         - Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10665
3569           Password: Disable smartReplace for new password fields
3570
3571         * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
3572           Don't smart replace when the selection being replaced is in a password field.
3573
3574 2006-08-31  Sam Weinig  <sam.weinig@gmail.com>
3575
3576         Reviewed by Tim H.
3577
3578         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10669
3579           Auto-generate the remaining Objective-C HTML DOM bindings
3580           
3581           Auto-generates DOMHTMLAnchorElement, DOMHTMLAreaElement,
3582           DOMHTMLBaseFontElement, DOMHTMLFontElement, DOMHTMLFrameElement,
3583           DOMHTMLFrameSetElement, DOMHTMLHRElement, DOMHTMLIFrameElement,
3584           DOMHTMLImageElement, DOMHTMLMapElement, DOMHTMLModElement,
3585           DOMHTMLObjectElement, DOMHTMLParamElement, DOMHTMLScriptElement,
3586           DOMHTMLTableCaptionElement, DOMHTMLTableCellElement,
3587           DOMHTMLTableColElement, DOMHTMLTableElement, DOMHTMLTableRowElement,
3588           and DOMHTMLTableSectionElement.  
3589
3590           Splits DOMHTMLAppletElement and DOMHTMLOptionElement into their own 
3591           files.
3592
3593         * DerivedSources.make:
3594         * WebCore.xcodeproj/project.pbxproj:
3595         * bindings/objc/DOM.mm:
3596         * bindings/objc/DOMExtensions.h:
3597         * bindings/objc/DOMHTML.h:
3598         * bindings/objc/DOMHTML.mm:
3599         (-[DOMHTMLAnchorElement absoluteLinkURL]):
3600         (-[DOMHTMLImageElement altDisplayString]):
3601         (-[DOMHTMLImageElement absoluteImageURL]):
3602         (-[DOMHTMLImageElement WebCore::]):
3603         (-[DOMHTMLObjectElement absoluteImageURL]):
3604         (-[DOMHTMLObjectElement WebCore::]):
3605         (+[DOMHTMLTableCaptionElement _tableCaptionElementWith:]):
3606         (-[DOMHTMLTableCaptionElement _tableCaptionElement]):
3607         (+[DOMHTMLTableSectionElement _tableSectionElementWith:]):
3608         (-[DOMHTMLTableSectionElement _tableSectionElement]):
3609         (+[DOMHTMLTableElement _tableElementWith:]):
3610         (-[DOMHTMLTableElement _tableElement]):
3611         (+[DOMHTMLTableCellElement _tableCellElementWith:]):
3612         (-[DOMHTMLTableCellElement _tableCellElement]):
3613         * bindings/objc/DOMHTMLAppletElement.h: Added.
3614         * bindings/objc/DOMHTMLAppletElement.mm: Added.
3615         (-[DOMHTMLAppletElement WebCore::]):
3616         (-[DOMHTMLAppletElement align]):
3617         (-[DOMHTMLAppletElement setAlign:]):
3618         (-[DOMHTMLAppletElement alt]):
3619         (-[DOMHTMLAppletElement setAlt:]):
3620         (-[DOMHTMLAppletElement archive]):
3621         (-[DOMHTMLAppletElement setArchive:]):
3622         (-[DOMHTMLAppletElement code]):
3623         (-[DOMHTMLAppletElement setCode:]):
3624         (-[DOMHTMLAppletElement codeBase]):
3625         (-[DOMHTMLAppletElement setCodeBase:]):
3626         (-[DOMHTMLAppletElement height]):
3627         (-[DOMHTMLAppletElement setHeight:]):
3628         (-[DOMHTMLAppletElement hspace]):
3629         (-[DOMHTMLAppletElement setHspace:]):
3630         (-[DOMHTMLAppletElement name]):
3631         (-[DOMHTMLAppletElement setName:]):
3632         (-[DOMHTMLAppletElement object]):
3633         (-[DOMHTMLAppletElement setObject:]):
3634         (-[DOMHTMLAppletElement vspace]):
3635         (-[DOMHTMLAppletElement setVspace:]):
3636         (-[DOMHTMLAppletElement width]):
3637         (-[DOMHTMLAppletElement setWidth:]):
3638         * bindings/objc/DOMHTMLInternal.h:
3639         * bindings/objc/DOMHTMLOptionElement.h: Added.
3640         * bindings/objc/DOMHTMLOptionElement.mm: Added.
3641         (-[DOMHTMLOptionElement WebCore::]):
3642         (-[DOMHTMLOptionElement form]):
3643         (-[DOMHTMLOptionElement defaultSelected]):
3644         (-[DOMHTMLOptionElement setDefaultSelected:]):
3645         (-[DOMHTMLOptionElement text]):
3646         (-[DOMHTMLOptionElement index]):
3647         (-[DOMHTMLOptionElement disabled]):
3648         (-[DOMHTMLOptionElement setDisabled:]):
3649         (-[DOMHTMLOptionElement label]):
3650         (-[DOMHTMLOptionElement setLabel:]):
3651         (-[DOMHTMLOptionElement selected]):
3652         (-[DOMHTMLOptionElement setSelected:]):
3653         (-[DOMHTMLOptionElement value]):
3654         (-[DOMHTMLOptionElement setValue:]):
3655         * bindings/objc/DOMPrivate.h:
3656         * bindings/scripts/CodeGeneratorObjC.pm:
3657
3658 2006-08-31  Alice Liu  <alice.liu@apple.com>
3659
3660         Reviewed by Darin.
3661
3662         Fixed <rdar://problem/4463870> Switch to use new text field implementation for <isindex>
3663
3664         * bindings/objc/DOMHTML.mm:
3665         (-[DOMHTMLInputElement _isTextField]):
3666         moved isindex from the list of nonTextInputTypes to the list of textInputTypes
3667         * css/html4.css:
3668         added isindex to certain rules that applied to input fields
3669         * html/HTMLInputElement.cpp:
3670         (WebCore::HTMLInputElement::canHaveSelection):
3671         (WebCore::HTMLInputElement::selectionStart):
3672         (WebCore::HTMLInputElement::selectionEnd):
3673         (WebCore::HTMLInputElement::setSelectionStart):
3674         (WebCore::HTMLInputElement::setSelectionEnd):
3675         (WebCore::HTMLInputElement::select):
3676         (WebCore::HTMLInputElement::setSelectionRange):
3677         (WebCore::HTMLInputElement::createRenderer):
3678         for the 8 methods above, moved the case for isindex to the same case as text
3679         * html/HTMLInputElement.h:
3680         (WebCore::HTMLInputElement::isNonWidgetTextField):
3681         added isindex to this test
3682         * html/HTMLIsIndexElement.idl:
3683         HTMLIsIndexElement inherits from HTMLInputElement
3684         * rendering/RenderLineEdit.cpp:
3685         (WebCore::RenderLineEdit::RenderLineEdit):
3686         removed the case for isindex since we changed the renderer type from a RenderLineEdit
3687         to a RenderTextControl in WebCore::HTMLInputElement::createRenderer()
3688
3689 2006-08-31  David Harrison  <harrison@apple.com>
3690
3691         Reviewed by Adele.
3692
3693         <rdar://problem/4708119> REGRESSION: Cannot observe an AXTextField element directly
3694
3695         ... and most of
3696         <rdar://problem/4708022> REGRESSION: TextRange-based attributes are missing from text fields
3697         <rdar://problem/4709515> REGRESSION: Expose text areas
3698
3699         Remaining work for those two bugs in new bugs:
3700
3701         <rdar://problem/4712101> Support NSAccessibilityVisibleCharacterRangeAttribute for AXTextField and AXTextArea elements
3702         <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
3703         <rdar://problem/4712125> Support setting NSAccessibilitySelectedTextAttribute for AXTextField and AXTextArea elements
3704
3705         * bridge/AXObjectCache.h:
3706         (WebCore::AXObjectCache::postNotificationToElement):
3707         * bridge/mac/AXObjectCacheMac.mm:
3708         (WebCore::AXObjectCache::postNotification):
3709         (WebCore::AXObjectCache::postNotificationToElement):
3710         Removed postNotificationToTopWebArea.
3711         postNotification now posts to input element or top web area, as appropriate.
3712         postNotificationToElement posts to the specified element itself.
3713         
3714         * bridge/mac/FrameMac.h:
3715         * bridge/mac/FrameMac.mm:
3716         (WebCore::FrameMac::respondToChangedContents):
3717         Take a selection.  Pass the starting position's renderer to postNotification so that postNotification can post to the appropriate input element, if any.
3718         
3719         * bridge/mac/WebCoreAXObject.h:
3720         * bridge/mac/WebCoreAXObject.mm:
3721         (-[WebCoreAXObject isWebArea]):
3722         (-[WebCoreAXObject isAnchor]):
3723         (-[WebCoreAXObject isTextRange]):
3724         New convenience methods.
3725         
3726         (-[WebCoreAXObject role]):
3727         (-[WebCoreAXObject roleDescription])        
3728         (-[WebCoreAXObject value]):
3729         (-[WebCoreAXObject accessibilityDescription]):
3730         Support AXTextField and AXTextArea.
3731
3732         (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
3733         Register AXTextField and AXTextArea elements so notifications to them can be observed.
3734         
3735         (-[WebCoreAXObject accessibilityIsIgnored]):
3736         Use new convenience method isWebArea.
3737
3738         (-[WebCoreAXObject accessibilityAttributeNames]):
3739         Simplify the array creation.
3740         Add text range support.
3741        
3742         (-[WebCoreAXObject accessibilityAttributeValue:]):
3743         Add text range support.
3744        
3745         (-[WebCoreAXObject canSetFocusAttribute]):
3746         (-[WebCoreAXObject canSetValueAttribute]):
3747         (-[WebCoreAXObject canSetTextRangeAttributes]):
3748         New convenience methods.
3749         
3750         (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
3751         (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
3752         Add text range support.
3753
3754         (-[WebCoreAXObject observableObject]):
3755         New to locate text field or text area to notify.
3756         
3757         * dom/Document.cpp:
3758         (WebCore::Document::updateSelection):
3759         Post AXSelectedTextChanged notification with new selection's start node.
3760         postNotification will send it to the input element, if there is one, or the top WebArea.
3761         
3762         (WebCore::Document::implicitClose):
3763         Use postNotificationToElement now that it acts like the old postNotification.
3764         
3765         * page/Frame.h:
3766         * page/Frame.cpp:
3767         (WebCore::Frame::appliedEditing):
3768         (WebCore::Frame::unappliedEditing):
3769         (WebCore::Frame::reappliedEditing):
3770         Pass the selection of interest to respondToChangedContents.
3771         
3772         * page/FrameView.cpp:
3773         (WebCore::FrameView::layout):
3774         Use postNotificationToElement now that it acts like the old postNotification.
3775
3776 2006-08-31  Adele Peterson  <adele@apple.com>
3777
3778         Reviewed by Darin.
3779
3780         WebCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10666
3781         Password: Disallow Spelling, Font, Speech, and Writing Direction context menu
3782
3783         * bridge/mac/WebCoreFrameBridge.h:
3784         * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge isSelectionInPasswordField]): Added.
3785         * page/Frame.cpp: (WebCore::Frame::isSelectionInPasswordField): Added.
3786         * page/Frame.h:
3787
3788 2006-08-31  Anders Carlsson  <acarlsson@apple.com>
3789
3790         Reviewed by Tim O, Hyatt.
3791
3792         * WebCore.xcodeproj/project.pbxproj:
3793         Add KURLCFNet.cpp
3794         
3795         * platform/KURL.h:
3796         Get rid of include, add KURL constructor that takes a CFURLRef.
3797         
3798         * platform/PlatformString.h:
3799         * platform/StringImpl.h:
3800         Get rid of include.
3801         
3802         * platform/cf/KURLCFNet.cpp:
3803         (WebCore::KURL::KURL):
3804         Add constructor.
3805         
3806         * platform/cf/ResourceLoaderCFNet.cpp:
3807         Fix includes.
3808         
3809         * platform/cf/StringCF.cpp:
3810         (WebCore::String::createCFString):
3811         Move this here from PlatformString.h
3812         
3813         * platform/cf/StringImplCF.cpp:
3814         (WebCore::StringImpl::createCFString):
3815         Fix cast.
3816         
3817         * platform/mac/KURLMac.mm:
3818         Move createCFURL() to KURLCFNet.cpp
3819
3820 2006-08-31 Dave Hyatt <hyatt@apple.com>
3821
3822         Make ScrollBar.cpp suitable for compiling on Windows by removing the #import.
3823
3824         Reviewed by adam
3825
3826         * platform/ScrollBar.cpp:
3827
3828 2006-08-31  Brady Eidson  <beidson@apple.com>
3829
3830         Reviewed by John
3831
3832         Cleaned up my last patch after further considerations
3833
3834         * loader/icon/IconDatabase.cpp:
3835         (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Uses the new checkForDanglingPageURLs to check
3836           for and fix danglers.  Does so in all builds (changed from debug only in my last patch)
3837         (WebCore::IconDatabase::syncDatabase): Uses the new checkForDanglingPageURLs to check for danglers
3838         (WebCore::IconDatabase::checkForDanglingPageURLs): This checks and, if asked via an arg, prunes the dangling pageURLs
3839         * loader/icon/IconDatabase.h:
3840
3841 2006-08-31  Anders Carlsson  <acarlsson@apple.com>
3842
3843         Reviewed by Maciej.
3844
3845         Add CString. CString is a simple, null-terminated byte buffer that supports data
3846         sharing. Its main use is to be a better const char*.
3847         
3848         Also add latin1 and utf8 methods to String which returns CStrings.
3849         
3850         * platform/CString.cpp: Added.
3851         (WebCore::CString::CString):
3852         (WebCore::CString::init):
3853         (WebCore::CString::data):
3854         (WebCore::CString::length):
3855         (WebCore::CString::deprecatedCString):
3856         * platform/CString.h: Added.
3857         (WebCore::CStringBuffer::CStringBuffer):
3858         (WebCore::CStringBuffer::data):
3859         (WebCore::CStringBuffer::length):
3860         (WebCore::CString::CString):
3861         (WebCore::CString::operator const char*):
3862         (WebCore::CString::isNull):
3863         * platform/PlatformString.h:
3864         * platform/String.cpp:
3865         (WebCore::String::latin1):
3866         (WebCore::String::utf8):
3867
3868 2006-08-31  Brady Eidson  <beidson@apple.com>
3869
3870         Reviewed by Hyatt
3871
3872         Previously mentioned ASSERT was hit right away by folks, as we first need to bring their old icon.db into consistency
3873         Changed the ASSERT to a LOG_ERROR and added a method for debug builds to bring a DB back together.
3874
3875         * loader/icon/IconDatabase.cpp:
3876         (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Check for the danglers and prune them out
3877         (WebCore::IconDatabase::syncDatabase): Check for the danglers and log the error
3878         (WebCore::IconDatabase::pruneDanglingPageURLs): Prune the danglers
3879         * loader/icon/IconDatabase.h:
3880
3881 2006-08-31  Brady Eidson  <beidson@apple.com>
3882
3883         Reviewed by Hyatt
3884
3885         Fixed an error where an Icon's IconID could change without the change being reflected in the PageURL table,
3886         causing icons to be pruned before their time and pages to lose their icons.  This is because I misunderstood
3887         how SQLite handles the "ON CONFLICT REPLACE" condition, which is to delete the row and re-insert instead of 
3888         perform an update.  Also added an assertion to make sure this doesn't happen again.
3889
3890         * loader/icon/IconDataCache.cpp:
3891         (WebCore::IconDataCache::writeToDatabase): Instead of one INSERT relying on SQLites conflict handling, broke
3892           this into an UPDATE attempt followed by the initial INSERT
3893         * loader/icon/IconDatabase.cpp:
3894         (WebCore::IconDatabase::createDatabaseTables): Slight tweak to the database schema to prevent this from happening
3895           in the future.  Note this change will not cause incompatibility with the current schema, therefore I didn't update
3896           the official database version number
3897         (WebCore::IconDatabase::syncDatabase): Added an ASSERT to look for this condition in the future
3898         * loader/icon/SQLDatabase.cpp:
3899         (WebCore::SQLDatabase::lastChanges): Added this SQLite accessor to see if an UPDATE command actually changed a row
3900         * loader/icon/SQLDatabase.h: Ditto
3901
3902 2006-08-31  Sam Weinig  <sam.weinig@gmail.com>
3903
3904         Reviewed by Tim H.
3905
3906         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10653
3907           Auto-generate another 20 Objective-C DOM HTML bindings
3908
3909           Auto-generates DOMHTMLBRElement, DOMHTMLButtonElement, DOMHTMLDListElement, 
3910           DOMHTMLDirectoryElement, DOMHTMLDivElement, DOMHTMLFieldSetElement, 
3911           DOMHTMLHeadingElement, DOMHTMLInputElement, DOMHTMLLIElement, DOMHTMLLabelElement,
3912           DOMHTMLLegendElement, DOMHTMLMenuElement, DOMHTMLOListElement, DOMHTMLOptGroupElement,
3913           DOMHTMLParagraphElement, DOMHTMLPreElement, DOMHTMLQuoteElement, DOMHTMLSelectElement,
3914           DOMHTMLTextAreaElement, and DOMHTMLUListElement.
3915
3916         * DerivedSources.make:
3917         * WebCore.xcodeproj/project.pbxproj:
3918         * bindings/objc/DOM.mm:
3919         * bindings/objc/DOMExtensions.h:
3920         * bindings/objc/DOMHTML.h:
3921         * bindings/objc/DOMHTML.mm:
3922         (-[DOMHTMLInputElement altDisplayString]):
3923         (-[DOMHTMLInputElement absoluteImageURL]):
3924         (-[DOMHTMLInputElement WebCore::]):
3925         (-[DOMHTMLInputElement _rectOnScreen]):
3926         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
3927         (-[DOMHTMLInputElement _selectedRange]):
3928         (-[DOMHTMLInputElement _setAutofilled:]):
3929         * bindings/objc/DOMHTMLInternal.h:
3930         * bindings/objc/DOMPrivate.h:
3931         * bindings/scripts/CodeGeneratorObjC.pm:
3932
3933 2006-08-31  Adele Peterson  <adele@apple.com>
3934
3935         Reviewed by John Sullivan.
3936
3937         Removing use of SPI in favor of Carbon API to enable and disable secure event input.
3938
3939         * WebCore.exp: Removed wkSecureEventInput and wkSetSecureEventInput.
3940         * platform/mac/WebCoreSystemInterface.h: ditto.
3941         * platform/mac/WebCoreSystemInterface.mm: ditto.
3942
3943         * bridge/mac/FrameMac.mm:
3944         (WebCore::FrameMac::setSecureKeyboardEntry): Uses EnableSecureEventInput and DisableSecureEventInput.
3945         (WebCore::FrameMac::secureKeyboardEntry): Uses IsSecureEventInputEnabled.
3946
3947 2006-08-30  Brady Eidson  <beidson@apple.com>
3948
3949         Reviewed by "common sense" (and Maciej)
3950
3951         Fixed two logging typos
3952
3953         * loader/icon/IconDatabase.cpp:
3954         (WebCore::IconDatabase::syncDatabase):
3955
3956 2006-08-30  Adele Peterson  <adele@apple.com>
3957
3958         Adding missing nil check for focus node.
3959
3960         * page/Frame.cpp: (WebCore::Frame::setIsActive):
3961
3962 2006-08-30  Adele Peterson  <adele@apple.com>
3963
3964         Reviewed by Hyatt.
3965
3966         WebCore part of fix for  http://bugzilla.opendarwin.org/show_bug.cgi?id=10575
3967         Enable secure input mode for new password fields
3968
3969         * WebCore.exp: Added wkSetSecureEventInput and wkSecureEventInput.
3970         * platform/mac/WebCoreSystemInterface.h: ditto.
3971         * platform/mac/WebCoreSystemInterface.mm: ditto.
3972
3973         * page/Frame.cpp: (WebCore::Frame::setIsActive): Enables and disables secure keyboard entry based on whether the frame becomes active.
3974         * bridge/mac/FrameMac.h:
3975         * bridge/mac/FrameMac.mm:
3976         (WebCore::FrameMac::setSecureKeyboardEntry): Added. Calls wkSetSecureEventInput.
3977         (WebCore::FrameMac::secureKeyboardEntry): Added. Calls wkSecureEventInput.
3978         * html/HTMLInputElement.cpp:
3979         (WebCore::HTMLInputElement::dispatchFocusEvent): For password fields, enable secure keyboard entry.
3980         (WebCore::HTMLInputElement::dispatchBlurEvent): For password fields, disable secure keyboard entry.
3981         * page/Frame.h:
3982         (WebCore::Frame::setSecureKeyboardEntry):
3983         (WebCore::Frame::secureKeyboardEntry):
3984
3985 2006-08-30  Darin Adler  <darin@apple.com>
3986
3987         Reviewed by Tim Hatcher.
3988
3989         - eliminated the need for UsesPassRefPtr in IDL files
3990         - got rid of the category mechanism for ObjC generated DOM headers
3991           (after discussions with Tim H where we decided it's not needed)
3992         - simplified use of macro inside ObjC generated code
3993
3994         * ForwardingHeaders/wtf/GetPtr.h: Added.
3995
3996         * bindings/scripts/CodeGeneratorObjC.pm: Removed code to handle
3997         categories. Eliminated use of DOM_cast since that's for the protection
3998         of human programmers -- the script won't make mistakes that it needs
3999         to catch. Changed macro to always be named IMPL instead of incorporating
4000         the class name. Use WTF::getPtr to extract the pointer, and removed the
4001         code that uses .get() to extract the pointer in the PassRefPtr case.
4002
4003         * dom/Attr.idl: Removed all uses of UsesPassRefPtr and ObjCCatagory.
4004         * dom/DOMImplementation.idl: Ditto.
4005         * dom/Document.idl: Ditto.
4006         * dom/Element.idl: Ditto.
4007         * dom/NamedNodeMap.idl: Ditto.
4008         * html/HTMLDocument.idl: Ditto.
4009         * html/HTMLElement.idl: Ditto.
4010         * html/HTMLFormElement.idl: Ditto.
4011         * html/HTMLMapElement.idl: Ditto.
4012         * html/HTMLSelectElement.idl: Ditto.
4013         * html/HTMLTableElement.idl: Ditto.
4014         * html/HTMLTableRowElement.idl: Ditto.
4015         * html/HTMLTableSectionElement.idl: Ditto.
4016
4017 2006-08-30  Brady Eidson  <beidson@apple.com>
4018
4019         Reviewed by John
4020
4021         <rdar://problem/4707718> - Instead of faking the user out with an in-memory icon database if their 
4022         ~/Library/Safari/Icons is unwritable, we'll actually fail to open the icon database and the app will
4023         run as if it was disabled via a preference.
4024         Also took the opportunity to change some ASSERTS() to reasonable behavior
4025
4026         * bridge/mac/WebCoreIconDatabaseBridge.mm:
4027         (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]): NSLog on failure so the user has a chance to figure 
4028           out there's a problem.
4029         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
4030         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]): From here on, just replaced ASSERTS() with reasonable behavior
4031         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
4032         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
4033         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
4034         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
4035         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
4036         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
4037         (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
4038         (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
4039         * loader/icon/IconDatabase.cpp:
4040         (WebCore::IconDatabase::open): If we fail to open, return false 
4041         (WebCore::IconDatabase::~IconDatabase): cleanup better
4042         * loader/icon/IconDatabase.h:
4043
4044 2006-08-30  David Harrison  <harrison@apple.com>
4045
4046         Reviewed by John Sullivan.
4047
4048         <rdar://problem/4708007> REGRESSION: text field inside a webpage no longer has settable AXValueAttribute
4049         <rdar://problem/4707479> REGRESSION: controls inside a webpage no longer have settable AXFocusedAttribute
4050
4051         * bridge/mac/WebCoreAXObject.mm:
4052         (-[WebCoreAXObject canSetFocusAttribute]):
4053         (-[WebCoreAXObject canSetValueAttribute]):
4054         New utility methods.  Text fields and buttons are focusable.
4055         Text fields can have their value set. We need not make
4056         popupbutton value settable because AppKit does not.
4057         
4058         (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
4059         Call new utility methods.
4060         
4061         (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
4062         Set focus for text field or button.
4063         Set value for text field.
4064         
4065 2006-08-30  David Hyatt  <hyatt@apple.com>
4066
4067         Fix for bugs 9000 and 10606.  Add code to suppress painting when
4068         a FOUC situation would otherwise occur.  There will still typically be
4069         a flash to white, but at least the wrong content won't show.
4070
4071         Reviewed by darin
4072
4073         * dom/Document.cpp:
4074         (WebCore::Document::Document):
4075         (WebCore::Document::updateLayoutIgnorePendingStylesheets):
4076         (WebCore::Document::preferredStylesheetSet):
4077         (WebCore::Document::selectedStylesheetSet):
4078         (WebCore::Document::setSelectedStylesheetSet):
4079         (WebCore::Document::stylesheetLoaded):
4080         (WebCore::Document::updateStyleSelector):
4081         * dom/Document.h:
4082         (WebCore::Document::haveStylesheetsLoaded):
4083         * rendering/RenderBlock.cpp:
4084         (WebCore::RenderBlock::paintChildren):
4085         * rendering/RenderLayer.cpp:
4086         (WebCore::RenderLayer::paintLayer):
4087         (WebCore::isSubframe):
4088         (WebCore::RenderLayer::hitTest):
4089         * rendering/RenderView.cpp:
4090         (WebCore::RenderView::repaintViewRectangle):
4091
4092 2006-08-31  Nikolas Zimmermann  <zimmermann@kde.org>
4093  
4094          Reviewed by Eric. Landed by rwlbuis.
4095  
4096          Apply Rob's fixes in RenderPathQt too -> unbreak build.
4097  
4098          * kcanvas/RenderPath.h: Some style cleanups.
4099          * kcanvas/device/qt/RenderPathQt.cpp:
4100          (WebCore::RenderPathQt::strokeContains):
4101          * kcanvas/device/qt/RenderPathQt.h:
4102
4103 2006-08-30  Sam Weinig  <sam.weinig@gmail.com>
4104         Reviewed by Tim H.
4105
4106         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10640
4107           Auto-generate 10 more Objective-C DOM HTML bindings
4108
4109           Auto-generates DOMHTMLBaseElement, DOMHTMLBodyElement, DOMHTMLHeadElement,
4110           DOMHTMLHtmlElement, DOMHTMLIsIndexElement, DOMHTMLLinkElement,
4111           DOMHTMLMetaElement, DOMHTMLStyleElement and DOMHTMLTitleElement.
4112
4113           Splits DOMHTMLDocument into it's own files.
4114
4115         * DerivedSources.make:
4116         * WebCore.xcodeproj/project.pbxproj:
4117         * bindings/objc/DOM.mm:
4118         * bindings/objc/DOMExtensions.h:
4119         * bindings/objc/DOMHTML.h:
4120         * bindings/objc/DOMHTML.mm:
4121         * bindings/objc/DOMHTMLDocument.h: Added.
4122         * bindings/objc/DOMHTMLDocument.mm: Added.
4123         (-[DOMHTMLDocument WebCore::]):
4124         (-[DOMHTMLDocument title]):
4125         (-[DOMHTMLDocument setTitle:]):
4126         (-[DOMHTMLDocument referrer]):
4127         (-[DOMHTMLDocument domain]):
4128         (-[DOMHTMLDocument URL]):
4129         (-[DOMHTMLDocument body]):
4130         (-[DOMHTMLDocum