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