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