1 2006-12-31 Eric Seidel <eric@webkit.org>
5 Make SVGPathSeg construction take fewer lines of code.
7 * WebCore.xcodeproj/project.pbxproj:
8 * ksvg2/svg/SVGPathElement.cpp:
9 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
10 (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
11 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
12 (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
13 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
14 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
15 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
16 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
17 (WebCore::SVGPathElement::createSVGPathSegArcAbs):
18 (WebCore::SVGPathElement::createSVGPathSegArcRel):
19 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
20 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
21 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
22 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
23 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
24 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
25 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
26 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
27 * ksvg2/svg/SVGPathSegArc.cpp:
28 (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
29 (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
30 * ksvg2/svg/SVGPathSegArc.h:
31 * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
32 (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
33 (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
34 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
35 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
36 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
37 (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
38 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
39 * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
40 (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
41 (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
42 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
43 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
44 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
45 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
46 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
47 * ksvg2/svg/SVGPathSegLineto.cpp:
48 (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
49 (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
50 * ksvg2/svg/SVGPathSegLineto.h:
51 * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
52 (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
53 (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
54 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
55 * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
56 (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
57 (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
58 * ksvg2/svg/SVGPathSegLinetoVertical.h:
59 * ksvg2/svg/SVGPathSegMoveto.cpp:
60 (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
61 (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
62 * ksvg2/svg/SVGPathSegMoveto.h:
64 2006-12-31 Eric Seidel <eric@webkit.org>
68 Implement path length measuring for SVGPathElement::getTotalLength and friends.
69 http://bugs.webkit.org/show_bug.cgi?id=12033
71 * WebCore.xcodeproj/project.pbxproj:
72 * ksvg2/svg/SVGPathElement.cpp:
73 (WebCore::SVGPathElement::getTotalLength):
74 (WebCore::SVGPathElement::getPointAtLength):
75 * platform/graphics/Path.cpp:
76 (WebCore::pathLengthApplierFunction):
77 (WebCore::Path::length):
78 (WebCore::Path::pointAtLength):
79 * platform/graphics/Path.h:
80 * platform/graphics/PathTraversalState.cpp: Added.
82 (WebCore::distanceLine):
83 (WebCore::QuadraticBezier::QuadraticBezier):
84 (WebCore::QuadraticBezier::approximateDistance):
85 (WebCore::QuadraticBezier::split):
86 (WebCore::CubicBezier::CubicBezier):
87 (WebCore::CubicBezier::approximateDistance):
88 (WebCore::CubicBezier::split):
89 (WebCore::curveLength):
90 (WebCore::PathTraversalState::PathTraversalState):
91 (WebCore::PathTraversalState::closeSubpath):
92 (WebCore::PathTraversalState::moveTo):
93 (WebCore::PathTraversalState::lineTo):
94 (WebCore::PathTraversalState::quadraticBezierTo):
95 (WebCore::PathTraversalState::cubicBezierTo):
96 * platform/graphics/PathTraversalState.h: Added.
97 (WebCore::PathTraversalState::):
99 2006-12-31 Sam Weinig <sam@webkit.org>
103 Move the SVGZoomAndPanType enum out of SVGSVGElement and
104 SVGViewElement and into SVGZoomAndPan where it belongs.
106 * ksvg2/svg/SVGSVGElement.h:
107 * ksvg2/svg/SVGViewElement.h:
108 * ksvg2/svg/SVGZoomAndPan.cpp:
109 (WebCore::SVGZoomAndPan::SVGZoomAndPan):
110 (WebCore::SVGZoomAndPan::parseMappedAttribute):
111 * ksvg2/svg/SVGZoomAndPan.h:
112 (WebCore::SVGZoomAndPan::):
114 2006-12-31 Mitz Pettel <mitz@webkit.org>
118 - fix http://bugs.webkit.org/show_bug.cgi?id=9659
119 Quirksmode: Fixed / Overflow > Positioned objects get hidden when scrolling
121 Added a 'fixed' flag to ClipRects, indicating that the cached rects are in
122 viewport coordinates. The flag is set (and scrolling is compensated for) for
123 fixed objects and their descendants.
125 * rendering/RenderLayer.cpp:
126 (WebCore::RenderLayer::calculateClipRects):
127 (WebCore::RenderLayer::calculateRects):
128 * rendering/RenderLayer.h:
129 (WebCore::ClipRects::ClipRects):
130 (WebCore::ClipRects::fixed):
132 2006-12-31 Mitz Pettel <mitz@webkit.org>
136 - fix http://bugs.webkit.org/show_bug.cgi?id=12037
137 For relatively positioned boxes in an RTL block, 'right' should win over 'left' if both are not 'auto'
139 Test: fast/block/positioning/relative-overconstrained.html
141 * rendering/RenderBox.cpp:
142 (WebCore::RenderBox::relativePositionOffsetX):
144 2006-12-30 Rob Buis <buis@kde.org>
148 http://bugs.webkit.org/show_bug.cgi?id=12004
149 Webkit doesnt handle omitting M at the start of path syntax well
151 Improve path parsing error handling.
153 * WebCore.xcodeproj/project.pbxproj:
154 * ksvg2/svg/SVGLength.cpp:
155 (WebCore::SVGLength::setValueAsString):
156 * ksvg2/svg/SVGParserUtilities.cpp:
157 (WebCore::SVGPathParser::parseSVG):
158 * ksvg2/svg/SVGParserUtilities.h:
159 * ksvg2/svg/SVGPathElement.cpp:
160 (WebCore::SVGPathElement::SVGPathElement):
161 (WebCore::SVGPathElement::parseMappedAttribute):
162 * ksvg2/svg/SVGPathElement.h:
163 * ksvg2/svg/SVGPolyElement.cpp:
164 (WebCore::SVGPolyElement::parseMappedAttribute):
165 * ksvg2/svg/SVGPolyElement.h:
166 * ksvg2/svg/svgpathparser.cpp: Removed.
167 * ksvg2/svg/svgpathparser.h: Removed.
169 2006-12-30 RĂ©mi Zara <remi_zara@mac.com>
173 The marker is used for start, mid and end.
175 * ksvg2/css/SVGCSSParser.cpp:
176 (WebCore::CSSParser::parseSVGValue):
178 2006-12-30 Rob Buis <buis@kde.org>
182 http://bugs.webkit.org/show_bug.cgi?id=12035
183 Use SVGParserUtilities in lists of values
185 Use SVGParserUtilities in some more places.
187 * ksvg2/svg/SVGAnimationElement.cpp:
188 (WebCore::SVGAnimationElement::parseMappedAttribute):
189 (WebCore::SVGAnimationElement::parseClockValue):
190 (WebCore::SVGAnimationElement::detectAnimationMode):
191 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
192 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
193 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
194 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
195 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
196 * ksvg2/svg/SVGFEGaussianBlurElement.h:
197 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
198 (WebCore::SVGFESpecularLightingElement::parseMappedAttribute):
199 * ksvg2/svg/SVGFESpecularLightingElement.h:
200 * ksvg2/svg/SVGFETurbulenceElement.cpp:
201 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
202 * ksvg2/svg/SVGFETurbulenceElement.h:
203 * ksvg2/svg/SVGLengthList.cpp:
204 (WebCore::SVGLengthList::parse):
205 * ksvg2/svg/SVGNumberList.cpp:
206 (WebCore::SVGNumberList::parse):
207 * ksvg2/svg/SVGNumberList.h:
208 * ksvg2/svg/SVGStringList.cpp:
209 (WebCore::SVGStringList::reset):
210 (WebCore::SVGStringList::parse):
211 * ksvg2/svg/SVGStringList.h:
213 2006-12-30 Rob Buis <buis@kde.org>
217 http://bugs.webkit.org/show_bug.cgi?id=12034
218 Adapt preserveAspectRatio parsing to SVGParserUtilities
220 Use the new SVGParserUtilities methods to parse prserveAspectRatio attribute.
222 * ksvg2/svg/SVGParserUtilities.h:
223 (WebCore::checkString):
224 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
226 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
227 * ksvg2/svg/SVGTransformable.cpp:
229 2006-12-30 Mitz Pettel <mitz@webkit.org>
233 - remove unused member variables m_loadingSheet and m_bAllDataReceived
235 No test possible (no change to functionality).
238 (WebCore::Document::Document):
239 (WebCore::Document::setCSSStyleSheet):
242 2006-12-30 Alexey Proskuryakov <ap@webkit.org>
246 http://bugs.webkit.org/show_bug.cgi?id=11998
247 Incorrect serialization of quotation marks in XML attributes.
249 Test: fast/dom/serialize-attribute.xhtml
251 * editing/markup.cpp:
252 (WebCore::escapeTextForMarkup): Added an isAttributeValue parameter, as the quotation mark
253 only needs to be encoded in attribute values.
254 (WebCore::startMarkup): Pass appropriate isAttributeValue to escapeTextForMarkup().
256 2006-12-29 David Kilzer <ddkilzer@webkit.org>
258 Build fix for no-svg build.
260 Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT.
262 * bindings/js/kjs_css.cpp:
264 * loader/CachedImage.cpp:
265 (WebCore::CachedImage::createImage):
267 2006-12-29 Geoffrey Garen <ggaren@apple.com>
269 Reviewed by Brian Dash... err... Mark Rowe.
271 More cleanup in preparation for fixing <rdar://problem/4608404>
272 WebScriptObject's _executionContext lack of ownership policy causes
273 crashes (e.g., in Dashcode)
275 The key change here is to RootObject::RootObject().
279 Renamed "_bindingRoot" => "_bindingRootObject" because "RootObject" is the
282 * bindings/objc/WebScriptObject.mm:
283 (_didExecute): Use Interpreter::globalObject(), since RootObject::rootObjectImp()
286 * page/mac/FrameMac.mm:
287 (WebCore::FrameMac::bindingRootObject): Use the new RootObject constructor.
288 Stop lying about who deletes _bindingRoot.
290 (WebCore::FrameMac::cleanupPluginObjects): => "destroy". Fixed a bug where
291 the RootObject would only free its own memory if there were a ReferencesSet*
294 * page/mac/WebCoreFrameBridge.mm:
295 (-[WebCoreFrameBridge rootObjectForView:]): Use new constructor. Changed
298 2006-12-29 Rob Buis <buis@kde.org>
302 http://bugs.webkit.org/show_bug.cgi?id=12007
303 SVGColor::setRGBColor color creates/deletes many strings, slowing down parsing
305 Refactor code so svg reuses cssparser methods. Also make
306 SVGColor and SVGPaint more efficient by avoiding using
307 setRGBColor internally.
309 * bindings/js/kjs_css.cpp:
312 (WebCore::CSSParser::parseColor):
313 (WebCore::CSSParser::parseColorFromValue):
314 (WebCore::CSSParser::parseShadow):
316 * ksvg2/css/SVGCSSParser.cpp:
317 (WebCore::CSSParser::parseSVGPaint):
318 (WebCore::CSSParser::parseSVGColor):
319 * ksvg2/svg/SVGColor.cpp:
320 (WebCore::SVGColor::SVGColor):
321 (WebCore::SVGColor::setRGBColor):
322 (WebCore::SVGColor::cssText):
323 * ksvg2/svg/SVGColor.h:
324 * ksvg2/svg/SVGPaint.cpp:
325 (WebCore::SVGPaint::SVGPaint):
326 * ksvg2/svg/SVGPaint.h:
327 * platform/graphics/Color.cpp:
328 (WebCore::Color::parseHexColor):
329 * platform/graphics/Color.h:
331 2006-12-29 Rob Buis <buis@kde.org>
335 http://bugs.webkit.org/show_bug.cgi?id=12022
336 typo in SVGTransformable.cpp introduce in r18440
338 Use the helper method proposed by Eric.
340 * ksvg2/svg/SVGTransformable.cpp:
341 (WebCore::checkString):
343 (WebCore::SVGTransformable::parseTransformAttribute):
345 2006-12-29 Rob Buis <buis@kde.org>
349 http://bugs.webkit.org/show_bug.cgi?id=12028
350 Adapt viewBox parsing to SVGParserUtilities
352 Use the new parseNumber and add tests for viewBox parsing.
354 * ksvg2/svg/SVGFitToViewBox.cpp:
355 (WebCore::SVGFitToViewBox::parseViewBox):
357 2006-12-29 Geoffrey Garen <ggaren@apple.com>
359 Build fix: SVGImage only works on Mac.
361 * loader/CachedImage.cpp:
362 (WebCore::CachedImage::createImage):
364 2006-12-29 Sam Weinig <sam@webkit.org>
368 Patch for http://bugs.webkit.org/show_bug.cgi?id=12018
369 Cleanup of CSSRule and its subclasses
371 - Make CSSRule::type() virtual instead of using a member variable.
372 - General style cleanup.
374 * WebCore.xcodeproj/project.pbxproj:
375 * css/CSSCharsetRule.cpp:
376 (WebCore::CSSCharsetRule::CSSCharsetRule):
377 * css/CSSCharsetRule.h:
378 (WebCore::CSSCharsetRule::isCharsetRule):
379 (WebCore::CSSCharsetRule::type):
380 * css/CSSFontFaceRule.cpp:
381 (WebCore::CSSFontFaceRule::CSSFontFaceRule):
382 (WebCore::CSSFontFaceRule::cssText):
383 * css/CSSFontFaceRule.h:
384 (WebCore::CSSFontFaceRule::isFontFaceRule):
385 (WebCore::CSSFontFaceRule::type):
386 * css/CSSImportRule.cpp:
387 (WebCore::CSSImportRule::CSSImportRule):
388 (WebCore::CSSImportRule::setCSSStyleSheet):
389 (WebCore::CSSImportRule::insertedIntoParent):
390 * css/CSSImportRule.h:
391 (WebCore::CSSImportRule::isImportRule):
392 (WebCore::CSSImportRule::type):
393 * css/CSSMediaRule.cpp:
394 (WebCore::CSSMediaRule::CSSMediaRule):
395 (WebCore::CSSMediaRule::insertRule):
396 (WebCore::CSSMediaRule::deleteRule):
397 (WebCore::CSSMediaRule::cssText):
398 * css/CSSMediaRule.h:
399 (WebCore::CSSMediaRule::isMediaRule):
400 (WebCore::CSSMediaRule::type):
401 * css/CSSPageRule.cpp:
402 (WebCore::CSSPageRule::CSSPageRule):
403 (WebCore::CSSPageRule::selectorText):
404 (WebCore::CSSPageRule::setSelectorText):
405 (WebCore::CSSPageRule::cssText):
407 (WebCore::CSSPageRule::style):
408 (WebCore::CSSPageRule::type):
410 (WebCore::CSSRule::cssText):
411 (WebCore::CSSRule::setCssText):
413 (WebCore::CSSRule::):
414 (WebCore::CSSRule::CSSRule):
415 * css/CSSStyleRule.cpp:
416 (WebCore::CSSStyleRule::CSSStyleRule):
417 (WebCore::CSSStyleRule::setSelectorText):
418 (WebCore::CSSStyleRule::cssText):
419 (WebCore::CSSStyleRule::parseString):
420 * css/CSSStyleRule.h:
421 (WebCore::CSSStyleRule::isStyleRule):
422 (WebCore::CSSStyleRule::style):
423 (WebCore::CSSStyleRule::type):
424 * css/CSSUnknownRule.h:
425 (WebCore::CSSUnknownRule::CSSUnknownRule):
426 (WebCore::CSSUnknownRule::type):
428 2006-12-29 Eric Seidel <eric@webkit.org>
432 * platform/graphics/svg/SVGImage.cpp:
433 (WebCore::SVGImage::size): explicitly cast to integers to prevent compile error
435 2006-12-29 George Staikos <staikos@kde.org>
439 Don't crash on sites such as www.apple.com. Painter was ended incorrectly among other issues.
441 * platform/graphics/qt/GraphicsContextQt.cpp:
442 (WebCore::TransparencyLayer::TransparencyLayer):
443 (WebCore::TransparencyLayer::cleanup):
444 (WebCore::GraphicsContext::endTransparencyLayer):
445 * platform/qt/ScrollViewCanvasQt.cpp:
446 (WebCore::ScrollViewCanvasQt::paintEvent):
448 2006-12-29 Nikolas Zimmermann <zimmermann@kde.org>
450 Build fixed, not reviewed. Noticed by Daniel Molkentin.
452 * platform/graphics/svg/SVGImage.h: s/WTF/wtf/ in include.
454 2006-12-29 Eric Seidel <eric@webkit.org>
458 * platform/graphics/svg/SVGImageEmptyClients.h:
459 (WebCore::SVGEmptyCromeClient::scaleFactor): build fix, use 1.f instead of 1f
461 2006-12-29 Eric Seidel <eric@webkit.org>
466 * fast/images/svg-as-image.html
467 * fast/images/svg-as-background.html
468 * fast/images/svg-as-tiled-background.html
470 Implement basic SVGImage support.
471 http://bugs.webkit.org/show_bug.cgi?id=5971
473 This implementation depends on (rather ugly) stub Page and Frame clients in SVGImageEmptyClients.h
475 * WebCore.xcodeproj/project.pbxproj: add SVGImage.*
476 * ksvg2/svg/SVGFEImageElement.cpp:
477 (WebCore::SVGFEImageElement::parseMappedAttribute): ignore fragment urls
478 * loader/CachedImage.cpp:
479 (WebCore::CachedImage::createImage):
480 * platform/graphics/Image.h: made setData virtual
481 * platform/graphics/cg/PDFDocumentImage.cpp:
482 (WebCore::PDFDocumentImage::drawTiled): stub method
483 * platform/graphics/cg/PDFDocumentImage.h:
484 * platform/graphics/svg/SVGImage.cpp: Added.
485 (WebCore::SVGImage::SVGImage):
486 (WebCore::SVGImage::~SVGImage):
487 (WebCore::SVGImage::size):
488 (WebCore::SVGImage::draw):
489 (WebCore::SVGImage::drawTiled): stub method
490 (WebCore::SVGImage::setData):
491 * platform/graphics/svg/SVGImage.h: Added.
492 (WebCore::SVGImage::frameAtIndex):
493 * platform/graphics/svg/SVGImageEmptyClients.h: Added.
494 (WebCore::SVGEmptyCromeClient::~SVGEmptyCromeClient):
495 (WebCore::SVGEmptyCromeClient::chromeDestroyed):
496 (WebCore::SVGEmptyCromeClient::setWindowRect):
497 (WebCore::SVGEmptyCromeClient::windowRect):
498 (WebCore::SVGEmptyCromeClient::pageRect):
499 (WebCore::SVGEmptyCromeClient::scaleFactor):
500 (WebCore::SVGEmptyCromeClient::focus):
501 (WebCore::SVGEmptyCromeClient::unfocus):
502 (WebCore::SVGEmptyCromeClient::createWindow):
503 (WebCore::SVGEmptyCromeClient::createModalDialog):
504 (WebCore::SVGEmptyCromeClient::show):
505 (WebCore::SVGEmptyCromeClient::canRunModal):
506 (WebCore::SVGEmptyCromeClient::runModal):
507 (WebCore::SVGEmptyCromeClient::setToolbarsVisible):
508 (WebCore::SVGEmptyCromeClient::toolbarsVisible):
509 (WebCore::SVGEmptyCromeClient::setStatusbarVisible):
510 (WebCore::SVGEmptyCromeClient::statusbarVisible):
511 (WebCore::SVGEmptyCromeClient::setScrollbarsVisible):
512 (WebCore::SVGEmptyCromeClient::scrollbarsVisible):
513 (WebCore::SVGEmptyCromeClient::setMenubarVisible):
514 (WebCore::SVGEmptyCromeClient::menubarVisible):
515 (WebCore::SVGEmptyCromeClient::setResizable):
516 (WebCore::SVGEmptyCromeClient::addMessageToConsole):
517 (WebCore::SVGEmptyCromeClient::canRunBeforeUnloadConfirmPanel):
518 (WebCore::SVGEmptyCromeClient::runBeforeUnloadConfirmPanel):
519 (WebCore::SVGEmptyCromeClient::closeWindowSoon):
520 (WebCore::SVGEmptyFrameLoaderClient::~SVGEmptyFrameLoaderClient):
521 (WebCore::SVGEmptyFrameLoaderClient::frameLoaderDestroyed):
522 (WebCore::SVGEmptyFrameLoaderClient::hasWebView):
523 (WebCore::SVGEmptyFrameLoaderClient::hasFrameView):
524 (WebCore::SVGEmptyFrameLoaderClient::hasBackForwardList):
525 (WebCore::SVGEmptyFrameLoaderClient::resetBackForwardList):
526 (WebCore::SVGEmptyFrameLoaderClient::provisionalItemIsTarget):
527 (WebCore::SVGEmptyFrameLoaderClient::loadProvisionalItemFromPageCache):
528 (WebCore::SVGEmptyFrameLoaderClient::invalidateCurrentItemPageCache):
529 (WebCore::SVGEmptyFrameLoaderClient::privateBrowsingEnabled):
530 (WebCore::SVGEmptyFrameLoaderClient::makeDocumentView):
531 (WebCore::SVGEmptyFrameLoaderClient::makeRepresentation):
532 (WebCore::SVGEmptyFrameLoaderClient::setDocumentViewFromPageCache):
533 (WebCore::SVGEmptyFrameLoaderClient::forceLayout):
534 (WebCore::SVGEmptyFrameLoaderClient::forceLayoutForNonHTML):
535 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryForCommit):
536 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryForBackForwardNavigation):
537 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryForReload):
538 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryForStandardLoad):
539 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryForInternalLoad):
540 (WebCore::SVGEmptyFrameLoaderClient::updateHistoryAfterClientRedirect):
541 (WebCore::SVGEmptyFrameLoaderClient::setCopiesOnScroll):
542 (WebCore::SVGEmptyFrameLoaderClient::tokenForLoadErrorReset):
543 (WebCore::SVGEmptyFrameLoaderClient::resetAfterLoadError):
544 (WebCore::SVGEmptyFrameLoaderClient::doNotResetAfterLoadError):
545 (WebCore::SVGEmptyFrameLoaderClient::detachedFromParent1):
546 (WebCore::SVGEmptyFrameLoaderClient::detachedFromParent2):
547 (WebCore::SVGEmptyFrameLoaderClient::detachedFromParent3):
548 (WebCore::SVGEmptyFrameLoaderClient::detachedFromParent4):
549 (WebCore::SVGEmptyFrameLoaderClient::loadedFromPageCache):
550 (WebCore::SVGEmptyFrameLoaderClient::download):
551 (WebCore::SVGEmptyFrameLoaderClient::dispatchIdentifierForInitialRequest):
552 (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSendRequest):
553 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveAuthenticationChallenge):
554 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelAuthenticationChallenge):
555 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveResponse):
556 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveContentLength):
557 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishLoading):
558 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailLoading):
559 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidLoadResourceFromMemoryCache):
560 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidHandleOnloadEvents):
561 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveServerRedirectForProvisionalLoad):
562 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCancelClientRedirect):
563 (WebCore::SVGEmptyFrameLoaderClient::dispatchWillPerformClientRedirect):
564 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidChangeLocationWithinPage):
565 (WebCore::SVGEmptyFrameLoaderClient::dispatchWillClose):
566 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveIcon):
567 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidStartProvisionalLoad):
568 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidReceiveTitle):
569 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidCommitLoad):
570 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailProvisionalLoad):
571 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFailLoad):
572 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFinishLoad):
573 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidFirstLayout):
574 (WebCore::SVGEmptyFrameLoaderClient::dispatchCreatePage):
575 (WebCore::SVGEmptyFrameLoaderClient::dispatchShow):
576 (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForMIMEType):
577 (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNewWindowAction):
578 (WebCore::SVGEmptyFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
579 (WebCore::SVGEmptyFrameLoaderClient::cancelPolicyCheck):
580 (WebCore::SVGEmptyFrameLoaderClient::dispatchUnableToImplementPolicy):
581 (WebCore::SVGEmptyFrameLoaderClient::dispatchWillSubmitForm):
582 (WebCore::SVGEmptyFrameLoaderClient::dispatchDidLoadMainResource):
583 (WebCore::SVGEmptyFrameLoaderClient::clearLoadingFromPageCache):
584 (WebCore::SVGEmptyFrameLoaderClient::isLoadingFromPageCache):
585 (WebCore::SVGEmptyFrameLoaderClient::revertToProvisionalState):
586 (WebCore::SVGEmptyFrameLoaderClient::setMainDocumentError):
587 (WebCore::SVGEmptyFrameLoaderClient::clearUnarchivingState):
588 (WebCore::SVGEmptyFrameLoaderClient::progressStarted):
589 (WebCore::SVGEmptyFrameLoaderClient::progressCompleted):
590 (WebCore::SVGEmptyFrameLoaderClient::incrementProgress):
591 (WebCore::SVGEmptyFrameLoaderClient::completeProgress):
592 (WebCore::SVGEmptyFrameLoaderClient::setMainFrameDocumentReady):
593 (WebCore::SVGEmptyFrameLoaderClient::startDownload):
594 (WebCore::SVGEmptyFrameLoaderClient::willChangeTitle):
595 (WebCore::SVGEmptyFrameLoaderClient::didChangeTitle):
596 (WebCore::SVGEmptyFrameLoaderClient::committedLoad):
597 (WebCore::SVGEmptyFrameLoaderClient::finishedLoading):
598 (WebCore::SVGEmptyFrameLoaderClient::finalSetupForReplace):
599 (WebCore::SVGEmptyFrameLoaderClient::cancelledError):
600 (WebCore::SVGEmptyFrameLoaderClient::cannotShowURLError):
601 (WebCore::SVGEmptyFrameLoaderClient::interruptForPolicyChangeError):
602 (WebCore::SVGEmptyFrameLoaderClient::cannotShowMIMETypeError):
603 (WebCore::SVGEmptyFrameLoaderClient::fileDoesNotExistError):
604 (WebCore::SVGEmptyFrameLoaderClient::shouldFallBack):
605 (WebCore::SVGEmptyFrameLoaderClient::setDefersLoading):
606 (WebCore::SVGEmptyFrameLoaderClient::willUseArchive):
607 (WebCore::SVGEmptyFrameLoaderClient::isArchiveLoadPending):
608 (WebCore::SVGEmptyFrameLoaderClient::cancelPendingArchiveLoad):
609 (WebCore::SVGEmptyFrameLoaderClient::clearArchivedResources):
610 (WebCore::SVGEmptyFrameLoaderClient::canHandleRequest):
611 (WebCore::SVGEmptyFrameLoaderClient::canShowMIMEType):
612 (WebCore::SVGEmptyFrameLoaderClient::representationExistsForURLScheme):
613 (WebCore::SVGEmptyFrameLoaderClient::generatedMIMETypeForURLScheme):
614 (WebCore::SVGEmptyFrameLoaderClient::frameLoadCompleted):
615 (WebCore::SVGEmptyFrameLoaderClient::restoreScrollPositionAndViewState):
616 (WebCore::SVGEmptyFrameLoaderClient::provisionalLoadStarted):
617 (WebCore::SVGEmptyFrameLoaderClient::shouldTreatURLAsSameAsCurrent):
618 (WebCore::SVGEmptyFrameLoaderClient::addHistoryItemForFragmentScroll):
619 (WebCore::SVGEmptyFrameLoaderClient::didFinishLoad):
620 (WebCore::SVGEmptyFrameLoaderClient::prepareForDataSourceReplacement):
621 (WebCore::SVGEmptyFrameLoaderClient::createDocumentLoader):
622 (WebCore::SVGEmptyFrameLoaderClient::setTitle):
623 (WebCore::SVGEmptyFrameLoaderClient::userAgent):
624 (WebCore::SVGEmptyEditorClient::~SVGEmptyEditorClient):
625 (WebCore::SVGEmptyEditorClient::pageDestroyed):
626 (WebCore::SVGEmptyEditorClient::shouldDeleteRange):
627 (WebCore::SVGEmptyEditorClient::shouldShowDeleteInterface):
628 (WebCore::SVGEmptyEditorClient::smartInsertDeleteEnabled):
629 (WebCore::SVGEmptyEditorClient::isContinuousSpellCheckingEnabled):
630 (WebCore::SVGEmptyEditorClient::toggleContinuousSpellChecking):
631 (WebCore::SVGEmptyEditorClient::isGrammarCheckingEnabled):
632 (WebCore::SVGEmptyEditorClient::toggleGrammarChecking):
633 (WebCore::SVGEmptyEditorClient::spellCheckerDocumentTag):
634 (WebCore::SVGEmptyEditorClient::selectWordBeforeMenuEvent):
635 (WebCore::SVGEmptyEditorClient::isEditable):
636 (WebCore::SVGEmptyEditorClient::shouldBeginEditing):
637 (WebCore::SVGEmptyEditorClient::shouldEndEditing):
638 (WebCore::SVGEmptyEditorClient::shouldInsertNode):
639 (WebCore::SVGEmptyEditorClient::shouldInsertText):
640 (WebCore::SVGEmptyEditorClient::shouldApplyStyle):
641 (WebCore::SVGEmptyEditorClient::didBeginEditing):
642 (WebCore::SVGEmptyEditorClient::respondToChangedContents):
643 (WebCore::SVGEmptyEditorClient::didEndEditing):
644 (WebCore::SVGEmptyEditorClient::registerCommandForUndo):
645 (WebCore::SVGEmptyEditorClient::registerCommandForRedo):
646 (WebCore::SVGEmptyEditorClient::clearUndoRedoOperations):
647 (WebCore::SVGEmptyEditorClient::canUndo):
648 (WebCore::SVGEmptyEditorClient::canRedo):
649 (WebCore::SVGEmptyEditorClient::undo):
650 (WebCore::SVGEmptyEditorClient::redo):
651 (WebCore::SVGEmptyEditorClient::dataForArchivedSelection):
652 (WebCore::SVGEmptyEditorClient::userVisibleString):
653 (WebCore::SVGEmptyContextMenuClient::~SVGEmptyContextMenuClient):
654 (WebCore::SVGEmptyContextMenuClient::contextMenuDestroyed):
655 (WebCore::SVGEmptyContextMenuClient::addCustomContextMenuItems):
656 (WebCore::SVGEmptyContextMenuClient::contextMenuItemSelected):
657 (WebCore::SVGEmptyContextMenuClient::downloadURL):
658 (WebCore::SVGEmptyContextMenuClient::copyImageToClipboard):
659 (WebCore::SVGEmptyContextMenuClient::lookUpInDictionary):
660 (WebCore::SVGEmptyContextMenuClient::speak):
661 (WebCore::SVGEmptyContextMenuClient::stopSpeaking):
662 (WebCore::SVGEmptyContextMenuClient::searchWithSpotlight):
664 2006-12-29 George Staikos <staikos@kde.org>
668 Make redirects work properly. Sites will thank us for this. :-)
670 * platform/network/qt/ResourceHandleManagerQt.cpp:
671 (WebCore::ResourceHandleManager::receivedResponse):
673 2006-12-28 George Staikos <staikos@kde.org>
677 * loader/CachedImage.cpp: build for Qt
679 2006-12-28 Daniel Molkentin <molkentin@kde.org>
681 Reviewed by Eric Seidel <eric@webkit.org>
684 - Make Qt platform build again:
685 - Adjust Qt platform to the Image class split.
686 - Introduce BitmapImage class
687 - add stub PDFDocumentImage class
690 * editing/qt/EditorQt.cpp:
691 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
692 * loader/qt/FrameLoaderQt.cpp:
693 (WebCore::FrameLoader::partClearedInBegin):
694 * platform/graphics/qt/ImageQt.cpp:
695 (WebCore::BitmapImage::initPlatformData):
696 (WebCore::BitmapImage::invalidatePlatformData):
697 (WebCore::Image::loadPlatformResource):
698 (WebCore::BitmapImage::draw):
699 (WebCore::BitmapImage::drawTiled):
700 (WebCore::BitmapImage::checkForSolidColor):
701 * platform/graphics/svg/SVGPaintServerLinearGradient.h:
702 * platform/graphics/svg/SVGPaintServerRadialGradient.h:
703 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
704 (WebCore::SVGPaintServerLinearGradient::setup):
705 * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
706 (WebCore::SVGPaintServerPattern::setup):
707 * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
708 (WebCore::SVGPaintServer::teardown):
709 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
710 (WebCore::SVGPaintServerRadialGradient::setup):
711 * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
712 (WebCore::SVGPaintServerSolid::setup):
713 * platform/qt/FrameQt.cpp:
714 (WebCore::FrameQt::FrameQt):
715 (WebCore::FrameQt::bindingRootObject):
717 2006-12-28 Geoffrey Garen <ggaren@apple.com>
719 Reviewed by Brady Eidson.
721 Some cleanup in preparation for fixing <rdar://problem/4608404>
722 WebScriptObject's _executionContext lack of ownership policy causes
723 crashes (e.g., in Dashcode)
727 Renamed "root" | "execContext" | "executionContext" => rootObject, because
728 that's the object's (admittedly vague) type name.
730 * bindings/js/kjs_binding.cpp:
731 * bindings/js/kjs_binding.h: Removed createLanguageInstanceForValue
732 and createObjcInstanceForValue because their only purpose was to confuse you.
734 * bindings/objc/DOMInternal.h: Moved declaration of createDOMWrapper here.
735 createDOMWrapper is the new name for createObjcInstanceForValue.
737 * bindings/objc/DOMInternal.mm: Renamed Interpreter::createObjcInstanceForValue
738 to createDOMWrapper because creating DOM wrappers has nothing to do with the interpreter,
739 and everything to do with the DOM. Renamed value to object because it is one.
740 Removed newObj nil check that is unnecessary in ObjC.
742 * bindings/objc/WebScriptObject.mm: Replaced call to createLanguageInstanceForValue
743 with explicit code to do the same thing it would have done: (1) try to create
744 a DOM wrapper; (2) if the object is not a wrappable DOM object, create a
745 vanilla WebScriptObject for it instead.
747 2006-12-28 Mitz Pettel <mitz@webkit.org>
751 - fix http://bugs.webkit.org/show_bug.cgi?id=11729
752 REGRESSION: Crash closing page with frames after selection
754 * loader/FrameLoader.cpp:
755 (WebCore::FrameLoader::detachFromParent): Added call to pageDestroyed().
756 * page/FrameTree.cpp:
757 (WebCore::FrameTree::appendChild): Added an assertion that the parent and
758 the child are in the same page.
759 (WebCore::FrameTree::removeChild): Added calls to decrementFrameCount() and pageDestroyed().
761 2006-12-28 David Kilzer <ddkilzer@webkit.org>
765 - fix http://bugs.webkit.org/show_bug.cgi?id=12016
766 REGRESSION: fast/text/stroking-decorations.html test fails with bus error in no-svg build
768 No test cases (no change in functionality).
770 * platform/TextStream.cpp: Properly initialize presicionFormats.
771 * rendering/RenderTreeAsText.cpp:
772 (WebCore::externalRepresentation): HTML tests now print out the stroke width, which is a float,
773 so the precision needs to be set.
775 2006-12-28 Eric Seidel <eric@webkit.org>
779 Fix for memory smasher when drawing markers.
780 http://bugs.webkit.org/show_bug.cgi?id=12015
782 No test case possible (crashes for some folks but not others, not even under --guard)
784 * platform/graphics/cg/PathCG.cpp:
785 (WebCore::CGPathApplierToPathApplier): array was too small
787 2006-12-28 Mitz Pettel <mitz@webkit.org>
791 - fix http://bugs.webkit.org/show_bug.cgi?id=11124
792 REGRESSION (r14297): No drag image for partially-selected complex text
794 Test: fast/text/atsui-partial-selection.html
796 * platform/Font.h: Changed comment.
797 * platform/mac/FontMac.mm:
798 (WebCore::Font::drawComplexText): Corrected the run length calculation.
799 Changed the ATSUI layout parameters to know about the entire text run, rather
800 than just the range we are drawing. ATSUI measures the characters before
801 the range and positions the range accordingly.
803 2006-12-28 Mitz Pettel <mitz@webkit.org>
807 - fix http://bugs.webkit.org/show_bug.cgi?id=9202
808 CSS3: border-radius not completely implemented, testcase hangs webkit
810 Test: fast/borders/borderRadiusAllStylesAllCorners.html
812 * rendering/RenderObject.cpp:
813 (WebCore::RenderObject::paintBorder): Changed to not draw "arcs" at straight
814 corners and to paint half-corners only where the styles mismatch.
815 Corrected the condition for matching styles: ridge, groove, inset and outset
816 all mismatch in the upper right and lower left corners and match in the other
817 two. The incorrect condition for a match was (almost) unnoticeable because of
818 the painting of both half-corners on each side that had at least one mismatch.
820 2006-12-28 Alexey Proskuryakov <ap@webkit.org>
822 Reverting the previous checkin, as it caused an assertion in layout tests.
824 * rendering/RenderTableCell.cpp:
825 (WebCore::RenderTableCell::borderLeft):
826 (WebCore::RenderTableCell::borderRight):
827 (WebCore::RenderTableCell::borderTop):
828 (WebCore::RenderTableCell::borderBottom):
829 * rendering/RenderTableCell.h:
831 2006-12-28 Mitz Pettel <mitz@webkit.org>
835 - fix http://bugs.webkit.org/show_bug.cgi?id=11359
836 Incomplete repaint of table cell's collapsed border when changing only the cell
838 Test: fast/repaint/table-cell-collapsed-border.html
840 * rendering/RenderTableCell.cpp:
841 (WebCore::RenderTableCell::getAbsoluteRepaintRect): Overloaded to add the
842 outer half of any collapsed borders. This function checks the cell's borders'
843 widths but also the widths of the adjoining cells' borders, since they can
844 contribute to the length of this cell's borders perpendicular to them, making
845 such a border overflow the cell in both dimensions.
846 (WebCore::RenderTableCell::borderLeft): Split the collapsing borders case off to
848 (WebCore::RenderTableCell::borderRight): Ditto.
849 (WebCore::RenderTableCell::borderTop): Ditto.
850 (WebCore::RenderTableCell::borderBottom): Ditto.
851 (WebCore::RenderTableCell::borderHalfLeft): Added. Takes an 'outer' boolean
852 parameter. When true, this function returns the width of the part of the border
853 that is outside the cell (different from the inner width when the total width is odd).
854 (WebCore::RenderTableCell::borderHalfRight): Ditto.
855 (WebCore::RenderTableCell::borderHalfTop): Ditto.
856 (WebCore::RenderTableCell::borderHalfBottom): Ditto.
857 * rendering/RenderTableCell.h:
859 2006-12-28 Mitz Pettel <mitz@webkit.org>
863 - fix http://bugs.webkit.org/show_bug.cgi?id=11671
864 REGRESSION (r13702): text-transform: capitalize changes non-breaking spaces to spaces
866 Test: fast/text/capitalize-preserve-nbsp.html
868 * platform/StringImpl.cpp:
869 (WebCore::StringImpl::capitalize): Copy back non-breaking spaces from the
870 original string to the capitalized string. Change a 'previous' non-breaking
871 space into a space (this improves the fix for <rdar://problem/4502311> from r13702).
873 2006-12-28 Mitz Pettel <mitz@webkit.org>
877 - fix http://bugs.webkit.org/show_bug.cgi?id=10699
878 div with border-radius does not redraw properly if element inside div is resized
880 Test: fast/repaint/border-radius-repaint.html
882 * rendering/RenderObject.cpp:
883 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
885 2006-12-28 Darin Adler <darin@apple.com>
887 * loader/CachedImage.cpp: (WebCore::CachedImage::createImage):
888 Fixed an #ifdef PLATFORM(CG) that should be #if PLATFORM(CG).
889 Might have broken the build on some platforms.
891 2006-12-27 Geoffrey Garen <ggaren@apple.com>
893 Build fix, plus a few "double &" => "double&" changes.
895 * ksvg2/svg/SVGParserUtilities.cpp:
896 (WebCore::parseNumber):
897 (WebCore::SVGPathParser::calculateArc):
899 2006-12-27 Oliver Hunt <oliver@apple.com>
903 * platform/graphics/BitmapImage.h:
904 * platform/graphics/Image.cpp:
905 * platform/graphics/Image.h:
906 (WebCore::Image::getHBITMAP):
907 * platform/graphics/cg/PDFDocumentImage.cpp:
908 (WebCore::PDFDocumentImage::PDFDocumentImage):
910 2006-12-27 Eric Seidel <eric@webkit.org>
914 Add new PDFDocumentImage and BitmapImage classes (subclasses of Image)
915 (In preparation for adding SVGImage as part of bug 5971)
916 http://bugs.webkit.org/show_bug.cgi?id=11990
918 Test cases landed separately as part of filing bug 11992.
920 * WebCore.xcodeproj/project.pbxproj: add BitmapImage.*
921 * loader/CachedImage.cpp:
922 (WebCore::nullImage): use BitmapImage directly
923 (WebCore::CachedImage::createImage): now create either BitmapImage or PDFDocumentImage directly
924 * loader/icon/IconDataCache.cpp:
925 (WebCore::IconDataCache::setImageData): use BitmapImage directly
926 * platform/graphics/BitmapImage.cpp: Added.
927 (WebCore::BitmapImage::BitmapImage):
928 (WebCore::BitmapImage::~BitmapImage):
929 (WebCore::BitmapImage::invalidateData):
930 (WebCore::BitmapImage::cacheFrame):
931 (WebCore::BitmapImage::size):
932 (WebCore::BitmapImage::setNativeData):
933 (WebCore::BitmapImage::frameCount):
934 (WebCore::BitmapImage::isSizeAvailable):
935 (WebCore::BitmapImage::frameAtIndex):
936 (WebCore::BitmapImage::frameDurationAtIndex):
937 (WebCore::BitmapImage::frameHasAlphaAtIndex):
938 (WebCore::BitmapImage::shouldAnimate):
939 (WebCore::BitmapImage::startAnimation):
940 (WebCore::BitmapImage::stopAnimation):
941 (WebCore::BitmapImage::resetAnimation):
942 (WebCore::BitmapImage::advanceAnimation):
943 * platform/graphics/BitmapImage.h: Added.
944 (WebCore::FrameData::FrameData):
945 (WebCore::BitmapImage::nativeImageForCurrentFrame): added.
946 (WebCore::BitmapImage::currentFrame):
947 (WebCore::BitmapImage::mayFillWithSolidColor): added.
948 (WebCore::BitmapImage::solidColor): added.
949 * platform/graphics/Image.cpp:
950 (WebCore::Image::Image):
951 (WebCore::Image::~Image):
952 * platform/graphics/Image.h:
953 (WebCore::Image::setNativeData): now virtual
954 (WebCore::Image::stopAnimation): now virtual
955 (WebCore::Image::resetAnimation): now virtual
956 (WebCore::Image::getNSImage): now virtual
957 (WebCore::Image::getTIFFRepresentation): now virtual
958 (WebCore::Image::getCGImageRef): now virtual
959 * platform/graphics/cg/ImageCG.cpp:
960 (WebCore::BitmapImage::checkForSolidColor):
961 (WebCore::BitmapImage::getCGImageRef): use nativeImageForCurrentFrame
962 (WebCore::fillWithSolidColor): added
963 (WebCore::BitmapImage::draw):
964 (WebCore::drawPattern): use fillWithSolidColor, mayFillWithSolidColor() and solidcolor()
965 (WebCore::BitmapImage::drawTiled): use fillWithSolidColor, mayFillWithSolidColor() and solidcolor()
966 * platform/graphics/cg/PDFDocumentImage.cpp:
967 (WebCore::PDFDocumentImage::PDFDocumentImage):
968 (WebCore::PDFDocumentImage::size): change to subclass from Image
969 (WebCore::PDFDocumentImage::setNativeData):
970 (WebCore::PDFDocumentImage::draw):
971 * platform/graphics/cg/PDFDocumentImage.h:
972 (WebCore::PDFDocumentImage::drawTiled):
973 * platform/graphics/mac/ImageMac.mm:
974 (WebCore::BitmapImage::initPlatformData):
975 (WebCore::BitmapImage::invalidatePlatformData):
976 (WebCore::Image::loadPlatformResource):
977 (WebCore::BitmapImage::getTIFFRepresentation):
978 (WebCore::BitmapImage::getNSImage):
979 * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
980 (WebCore::SVGFEImage::getCIFilter): remove soon-to-be unnecessary comment
981 * rendering/RenderImage.cpp:
982 (WebCore::RenderImage::nullImage): use BitmapImage
984 2006-12-27 Mitz Pettel <mitz@webkit.org>
988 - fix http://bugs.webkit.org/show_bug.cgi?id=11452
989 REGRESSION (r16736-r16801): Incorrect repaint of fixed boxes
991 Test: fast/repaint/fixed.html
993 * rendering/RenderView.cpp:
994 (WebCore::RenderView::computeAbsoluteRepaintRect): Re-added.
995 * rendering/RenderView.h:
997 2006-12-27 Mitz Pettel <mitz@webkit.org>
1001 - fix http://bugs.webkit.org/show_bug.cgi?id=11930
1002 Specifying border-radius makes the outline shrink
1004 Test: fast/css/border-radius-outline-offset.html
1006 * css/cssstyleselector.cpp:
1007 (WebCore::CSSStyleSelector::applyProperty): Added missing return statement.
1009 2006-12-27 Rob Buis <buis@kde.org>
1013 http://bugs.webkit.org/show_bug.cgi?id=11108
1014 Replace usage of split by proper parsers
1015 http://bugs.webkit.org/show_bug.cgi?id=11908
1016 WebKit spends 40% of its time displaying "bamboo.svg" executing Regexes
1018 Get rid of split() when parsing transform attribute.
1021 * WebCore.xcodeproj/project.pbxproj:
1022 * ksvg2/svg/SVGParserUtilities.cpp: Added.
1023 (WebCore::parseNumber):
1024 (WebCore::parseNumberOptionalNumber):
1025 (WebCore::SVGPolyParser::parsePoints):
1026 (WebCore::SVGPathParser::parseSVG):
1027 (WebCore::SVGPathParser::calculateArc):
1028 (WebCore::SVGPathParser::svgLineToHorizontal):
1029 (WebCore::SVGPathParser::svgLineToVertical):
1030 (WebCore::SVGPathParser::svgCurveToCubicSmooth):
1031 (WebCore::SVGPathParser::svgCurveToQuadratic):
1032 (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
1033 (WebCore::SVGPathParser::svgArcTo):
1034 * ksvg2/svg/SVGParserUtilities.h: Added.
1035 (WebCore::isWhitespace):
1036 (WebCore::skipOptionalSpaces):
1037 (WebCore::skipOptionalSpacesOrDelimiter):
1038 (WebCore::SVGPolyParser::~SVGPolyParser):
1039 (WebCore::SVGPathParser::~SVGPathParser):
1040 * ksvg2/svg/SVGPathElement.cpp:
1041 (WebCore::SVGPathElement::SVGPathElement):
1042 * ksvg2/svg/SVGPathElement.h:
1043 * ksvg2/svg/SVGTransformable.cpp:
1044 (WebCore::parseTransformParamList):
1045 (WebCore::SVGTransformable::parseTransformAttribute):
1046 * ksvg2/svg/svgpathparser.cpp:
1047 (WebCore::DeprecatedSVGPathParser::parseSVG):
1048 (WebCore::DeprecatedSVGPathParser::calculateArc):
1049 (WebCore::DeprecatedSVGPathParser::svgLineToHorizontal):
1050 (WebCore::DeprecatedSVGPathParser::svgLineToVertical):
1051 (WebCore::DeprecatedSVGPathParser::svgCurveToCubicSmooth):
1052 (WebCore::DeprecatedSVGPathParser::svgCurveToQuadratic):
1053 (WebCore::DeprecatedSVGPathParser::svgCurveToQuadraticSmooth):
1054 (WebCore::DeprecatedSVGPathParser::svgArcTo):
1055 * ksvg2/svg/svgpathparser.h:
1056 (WebCore::DeprecatedSVGPathParser::~DeprecatedSVGPathParser):
1058 2006-12-27 Mitz Pettel <mitz@webkit.org>
1062 - http://bugs.webkit.org/show_bug.cgi?id=11968
1063 BidiContext's m_basicDir is redundant
1065 No test possible (no functionality change)
1067 * rendering/bidi.cpp:
1068 (WebCore::BidiContext::BidiContext):
1069 (WebCore::operator==):
1070 (WebCore::RenderBlock::computeHorizontalPositionsForLine): Use the block's
1071 direction to resolve 'automatic' text-align.
1073 (WebCore::BidiContext::dir):
1075 2006-12-27 Nikolas Zimmermann <zimmermann@kde.org>
1077 Build fix, not reviewed.
1079 Accidently commited an older revision of this file.
1081 * platform/graphics/svg/SVGPaintServerPattern.h:
1083 2006-12-27 Nikolas Zimmermann <zimmermann@kde.org>
1085 Reviewed by Mitz & Eric.
1087 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11904
1089 We need to cache the CGPatternRef (m_pattern) for efficiency
1090 in SVGPaintServerPatternCg, and keep track wheter the underlying
1091 ImageBuffer has changed, and only update the pattern in that case.
1093 * platform/graphics/svg/SVGPaintServerPattern.cpp:
1094 (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
1095 (WebCore::SVGPaintServerPattern::~SVGPaintServerPattern):
1096 (WebCore::SVGPaintServerPattern::setTile):
1097 * platform/graphics/svg/SVGPaintServerPattern.h:
1098 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1099 (WebCore::SVGPaintServerPattern::setup):
1100 (WebCore::SVGPaintServerPattern::teardown):
1102 2006-12-26 Geoffrey Garen <ggaren@apple.com>
1104 Reviewed by Eric Seidel.
1106 Fixed <rdar://problem/4740328> Safari crash on quit in _NPN_ReleaseObject
1107 from KJS::Bindings::CInstance::~CInstance
1109 No testcase because we can't open and close windows in DumpRenderTree.
1111 * loader/FrameLoader.cpp: Removed closeDocument helper function because
1112 its only purpose was to call didCloseDocument, which is gone now.
1113 (WebCore::FrameLoader::detachFromParent): closeDocument => closeURL,
1114 since didCloseDocument is gone now.
1116 * loader/FrameLoaderClient.h: Removed didCloseDocument because it proved
1117 unnecessary and harmful.
1119 * loader/mac/FrameLoaderMac.mm:
1120 (WebCore::FrameLoader::transitionToCommitted): closeDocument => closeURL,
1121 since didCloseDocument is gone now.
1123 2006-12-26 Eric Seidel <eric@webkit.org>
1127 ASSERT while loading SVG map
1128 http://bugs.webkit.org/show_bug.cgi?id=11987
1130 * ksvg2/css/SVGCSSParser.cpp: remove a few .impl() calls previously missed.
1131 (WebCore::CSSParser::parseSVGValue):
1132 (WebCore::CSSParser::parseSVGPaint):
1133 (WebCore::CSSParser::parseSVGColor):
1134 * ksvg2/misc/KCanvasRenderingStyle.cpp: handle invalid colors
1135 (WebCore::KSVGPainterFactory::fillPaintServer):
1136 (WebCore::KSVGPainterFactory::strokePaintServer):
1138 2006-12-26 Eric Seidel <eric@webkit.org>
1142 No test cases changed.
1144 Remove unnecessary (and inefficient) .impl() and .deprecatedString() calls.
1145 http://bugs.webkit.org/show_bug.cgi?id=11989
1147 * bindings/js/kjs_dom.cpp:
1148 (KJS::DOMNodeList::getOwnPropertySlot):
1150 (WebCore::Document::createAttributeNS):
1152 (WebCore::Element::getAttributeNS):
1153 (WebCore::Element::setAttribute):
1154 (WebCore::Element::setAttributeNS):
1155 (WebCore::Element::removeAttributeNS):
1156 (WebCore::Element::getAttributeNode):
1157 (WebCore::Element::getAttributeNodeNS):
1158 (WebCore::Element::hasAttribute):
1159 (WebCore::Element::hasAttributeNS):
1160 * dom/NamedAttrMap.cpp:
1161 (WebCore::NamedAttrMap::getNamedItemNS):
1162 (WebCore::NamedAttrMap::removeNamedItemNS):
1163 * dom/ProcessingInstruction.cpp:
1164 (WebCore::ProcessingInstruction::checkStyleSheet):
1165 * html/HTMLBaseElement.cpp:
1166 (WebCore::HTMLBaseElement::process):
1167 * html/HTMLEmbedElement.cpp:
1168 (WebCore::HTMLEmbedElement::parseMappedAttribute):
1169 * html/HTMLEmbedElement.h:
1170 * html/HTMLHRElement.cpp:
1171 (WebCore::HTMLHRElement::parseMappedAttribute):
1172 * html/HTMLScriptElement.cpp:
1173 (WebCore::HTMLScriptElement::insertedIntoDocument):
1174 * html/HTMLStyleElement.cpp:
1175 (WebCore::HTMLStyleElement::parseMappedAttribute):
1176 * ksvg2/svg/SVGAnimateElement.cpp:
1177 (WebCore::SVGAnimateElement::handleTimerEvent):
1178 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1179 (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
1180 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1181 (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
1182 * ksvg2/svg/SVGFEImageElement.cpp:
1183 (WebCore::SVGFEImageElement::parseMappedAttribute):
1184 * ksvg2/svg/SVGFitToViewBox.cpp:
1185 (WebCore::SVGFitToViewBox::parseMappedAttribute):
1186 * ksvg2/svg/SVGImageElement.cpp:
1187 (WebCore::SVGImageElement::parseMappedAttribute):
1188 * ksvg2/svg/SVGPatternElement.cpp:
1189 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
1190 (WebCore::SVGPatternElement::notifyAttributeChange):
1191 * ksvg2/svg/SVGPolyElement.cpp:
1192 (WebCore::SVGPolyElement::notifyAttributeChange):
1193 * ksvg2/svg/SVGStopElement.cpp:
1194 (WebCore::SVGStopElement::parseMappedAttribute):
1195 * ksvg2/svg/SVGTRefElement.cpp:
1196 (WebCore::SVGTRefElement::updateReferencedText):
1197 * ksvg2/svg/SVGTests.cpp:
1198 (WebCore::SVGTests::parseMappedAttribute):
1199 * ksvg2/svg/SVGTextPositioningElement.cpp:
1200 (WebCore::SVGTextPositioningElement::parseMappedAttribute):
1201 * ksvg2/svg/SVGUseElement.cpp:
1202 (WebCore::SVGUseElement::closeRenderer):
1203 * ksvg2/svg/SVGViewElement.cpp:
1204 (WebCore::SVGViewElement::parseMappedAttribute):
1206 (WebCore::Frame::selectionComputedStyle):
1207 * rendering/RenderPartObject.cpp:
1208 (WebCore::RenderPartObject::updateWidget):
1209 * rendering/SVGRenderTreeAsText.cpp:
1210 (WebCore::writeRenderResources):
1212 2006-12-26 Nikolas Zimmermann <zimmermann@kde.org>
1216 Add patternContentUnits support, and cleanup SVGPaintServerGradientCg.cpp
1217 Fixes coords-units-01-b.svg
1219 * ksvg2/svg/SVGPatternElement.cpp:
1220 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
1221 * platform/graphics/svg/SVGPaintServerPattern.cpp:
1222 (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
1223 (WebCore::SVGPaintServerPattern::contentBoundingBoxMode):
1224 (WebCore::SVGPaintServerPattern::setContentBoundingBoxMode):
1225 * platform/graphics/svg/SVGPaintServerPattern.h:
1226 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1227 (WebCore::SVGPaintServerGradient::renderPath):
1228 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1229 (WebCore::SVGPaintServerPattern::setup):
1231 2006-12-26 Eric Seidel <eric@webkit.org>
1235 No test cases changed.
1237 Remove unneeded isPaintingText() and activeClient() from SVGPaintServer system
1239 * platform/graphics/svg/SVGPaintServer.cpp:
1240 (WebCore::SVGPaintServer::SVGPaintServer):
1241 * platform/graphics/svg/SVGPaintServer.h:
1242 * platform/graphics/svg/SVGPaintServerGradient.h:
1243 * platform/graphics/svg/SVGPaintServerPattern.h:
1244 * platform/graphics/svg/SVGPaintServerSolid.h:
1245 * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
1246 (WebCore::SVGPaintServer::teardown):
1247 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1248 (WebCore::SVGPaintServerGradient::teardown):
1249 (WebCore::SVGPaintServerGradient::setup):
1250 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
1251 (WebCore::SVGPaintServerPattern::setup):
1252 (WebCore::SVGPaintServerPattern::teardown):
1253 * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
1254 (WebCore::SVGPaintServerSolid::setup):
1255 * rendering/RenderPath.cpp:
1256 (WebCore::RenderPath::paint):
1257 * rendering/SVGInlineFlowBox.cpp:
1258 (WebCore::paintSVGInlineFlow):
1260 2006-12-25 Geoffrey Garen <ggaren@apple.com>
1262 Reviewed by Adam Roben.
1264 Fixed <rdar://problem/4778898> REGRESSION: crash in getInstanceForView()
1265 when quitting from kcbs.com
1267 No testcase because we can't open and close windows in DRT.
1269 The crash was caused by deallocating plug-ins that were later referenced
1270 in the unload event handler.
1272 * loader/FrameLoader.cpp:
1273 (WebCore::FrameLoader::closeDocument): Call didCloseDocument after closing
1274 instead of before, so plugins don't get deallocated until the document
1275 has been destroyed and all event handlers have fired.
1277 * loader/FrameLoaderClient.h: Renamed "willCloseDocument" to "didCloseDocument",
1278 since we call it after closing now.
1280 2006-12-26 Eric Seidel <eric@webkit.org>
1282 Reviewed by rwlbuis.
1284 Replace bogus SVGLength::isFraction() method with valueAsPercentage() to fix:
1285 http://bugs.webkit.org/show_bug.cgi?id=11973
1287 * ksvg2/svg/SVGLength.cpp:
1288 (WebCore::SVGLength::valueInSpecifiedUnits): remove extra spaces
1289 (WebCore::SVGLength::valueAsPercentage): new method
1290 * ksvg2/svg/SVGLength.h:
1291 * ksvg2/svg/SVGLinearGradientElement.cpp:
1292 (WebCore::SVGLinearGradientElement::buildGradient): use valueAsPercentage()
1293 * ksvg2/svg/SVGPatternElement.cpp:
1294 (WebCore::SVGPatternElement::drawPatternContentIntoTile): return if malloc fails
1295 * ksvg2/svg/SVGRadialGradientElement.cpp:
1296 (WebCore::SVGRadialGradientElement::buildGradient): use valueAsPercentage()
1297 * platform/graphics/cg/GraphicsContextCG.cpp:
1298 (WebCore::GraphicsContext::createImageBuffer): return 0 if malloc fails
1299 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
1300 (WebCore::SVGPaintServerGradient::setup): return if malloc fails
1301 * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
1302 (WebCore::SVGResourceMasker::applyMask): add comment about possible crash
1304 2006-12-26 Nikolas Zimmermann <zimmermann@kde.org>
1308 In the DOMParser class, we have to create content-type specific
1309 documents, instead of a pure "Document" object. Real-life SVG
1310 files us this way to convert strings "<svg><rect x=...></svg>
1311 to a new Document structure.
1313 Add new testcase dynamic-svg-document-creation.svg.
1315 * xml/DOMParser.cpp:
1316 (WebCore::DOMParser::parseFromString):
1318 2006-12-25 Geoffrey Garen <ggaren@apple.com>
1320 Reviewed by Oliver Hunt.
1322 Removed WebCoreSettings, cleaned up WebCore::Settings.
1324 * WebCore.exp: Exported Settings for use by WebKit, removed WebCoreSettings class.
1326 * WebCore.xcodeproj/project.pbxproj: Removed WebCoreSetttings.h/.mm.
1329 * page/Frame.cpp: Removed cruft that duplicated Settings data. Callers now call
1330 through to Settings to get Settings data.
1332 * page/Page.cpp: Added Settings data member, to replace the one that WebView
1335 * page/Settings.cpp: Added.
1337 - Renamed all functions to match WebKit API. Renamed all variables to
1338 match functions. Favorite old name: "isPluginsEnabled."
1339 - Moved EditableLinkBehavior outside of the class. Having it inside
1340 just made it harder to type.
1341 - Merged in old WebCoreSettings functionality, like guarding against re-setting
1342 to the same value, and making sure to update page layout.
1343 - Paired setters and getters, putting setters first.
1345 2006-12-26 Nikolas Zimmermann <zimmermann@kde.org>
1349 Fix some minor style issues.
1351 * ksvg2/svg/SVGPolygonElement.cpp:
1352 (WebCore::SVGPolygonElement::toPathData):
1353 * ksvg2/svg/SVGPolygonElement.h:
1354 * ksvg2/svg/SVGPolylineElement.cpp:
1355 (WebCore::SVGPolylineElement::toPathData):
1356 * ksvg2/svg/SVGPolylineElement.h:
1358 2006-12-26 Nikolas Zimmermann <zimmermann@kde.org>
1362 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11963
1363 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11123
1365 Fix SVGList JS wrappers, which operate on POD types (ie. Point).
1366 There exists a special JSSVGPODTypeWrapperCreatorForList class now,
1367 which operators on specialized SVGPODList's. It makes it possible
1368 to support stuff like "myList.getItem(0).value = 200", for POD lists.
1370 Adding two new testcases demonstrating the usage of SVG DOM & SVGAnimatedPoints.
1373 * WebCore.xcodeproj/project.pbxproj:
1374 * bindings/js/JSSVGPODTypeWrapper.h:
1375 (WebCore::JSSVGPODTypeWrapperCreatorForList::JSSVGPODTypeWrapperCreatorForList):
1376 (WebCore::JSSVGPODTypeWrapperCreatorForList::~JSSVGPODTypeWrapperCreatorForList):
1377 (WebCore::JSSVGPODTypeWrapperCreatorForList::commitChange):
1378 * bindings/js/JSSVGPathSegListCustom.cpp:
1379 (WebCore::updatePathSegContextMap):
1380 (WebCore::removeFromPathSegContextMap):
1381 (WebCore::JSSVGPathSegList::clear):
1382 (WebCore::JSSVGPathSegList::initialize):
1383 * bindings/js/JSSVGPointListCustom.cpp: Added.
1384 (WebCore::JSSVGPointList::clear):
1385 (WebCore::JSSVGPointList::initialize):
1386 (WebCore::JSSVGPointList::getItem):
1387 (WebCore::JSSVGPointList::insertItemBefore):
1388 (WebCore::JSSVGPointList::replaceItem):
1389 (WebCore::JSSVGPointList::removeItem):
1390 (WebCore::JSSVGPointList::appendItem):
1391 * bindings/scripts/CodeGeneratorJS.pm:
1392 * ksvg2/misc/SVGDocumentExtensions.h:
1393 (WebCore::SVGDocumentExtensions::baseValueMap):
1394 (WebCore::SVGDocumentExtensions::genericContextMap):
1395 (WebCore::SVGDocumentExtensions::genericContext):
1396 (WebCore::SVGDocumentExtensions::setGenericContext):
1397 (WebCore::SVGDocumentExtensions::removeGenericContext):
1398 (WebCore::SVGDocumentExtensions::hasGenericContext):
1399 * ksvg2/svg/SVGAnimatedPathData.cpp:
1400 * ksvg2/svg/SVGAnimatedPathData.h:
1401 * ksvg2/svg/SVGAnimatedPoints.cpp:
1402 * ksvg2/svg/SVGAnimatedPoints.h:
1403 * ksvg2/svg/SVGLengthList.cpp:
1404 (WebCore::SVGLengthList::SVGLengthList):
1405 (WebCore::SVGLengthList::parse):
1406 * ksvg2/svg/SVGLengthList.h:
1407 * ksvg2/svg/SVGList.h:
1408 (WebCore::SVGPODListItem::SVGPODListItem):
1409 (WebCore::SVGPODListItem::operator Item&):
1410 (WebCore::SVGPODListItem::operator const Item&):
1411 (WebCore::SVGPODListItem::value):
1412 (WebCore::SVGPODListItem::setValue):
1413 (WebCore::SVGPODList::SVGPODList):
1414 (WebCore::SVGPODList::initialize):
1415 (WebCore::SVGPODList::getFirst):
1416 (WebCore::SVGPODList::getLast):
1417 (WebCore::SVGPODList::getItem):
1418 (WebCore::SVGPODList::insertItemBefore):
1419 (WebCore::SVGPODList::replaceItem):
1420 (WebCore::SVGPODList::removeItem):
1421 (WebCore::SVGPODList::appendItem):
1422 * ksvg2/svg/SVGPathSegList.idl:
1423 * ksvg2/svg/SVGPointList.cpp:
1424 (SVGPointList::SVGPointList):
1425 (SVGPointList::context):
1426 * ksvg2/svg/SVGPointList.h:
1427 * ksvg2/svg/SVGPointList.idl:
1428 * ksvg2/svg/SVGPolyElement.cpp:
1429 (WebCore::SVGPolyElement::SVGPolyElement):
1430 (WebCore::SVGPolyElement::points):
1431 (WebCore::SVGPolyElement::animatedPoints):
1432 (WebCore::SVGPolyElement::parseMappedAttribute):
1433 (WebCore::SVGPolyElement::notifyAttributeChange):
1434 * ksvg2/svg/SVGPolyElement.h:
1435 * rendering/RenderSVGText.cpp:
1437 2006-12-25 Alexey Proskuryakov <ap@webkit.org>
1441 http://bugs.webkit.org/show_bug.cgi?id=10313
1442 Reproducible crash when doing importStylesheet in javascript with
1443 xsl files that use xsl:import
1445 This doesn't fully address the bug, but makes a couple of steps
1448 * xml/XSLTProcessor.cpp:
1449 (WebCore::transformToString): Set m_stylesheet even if it's created implicitly,
1450 rather than passed from outside. Always reset it in the end (this doesn't affect
1451 Document::applyXSLTransform(), which was the only user of setXSLStylesheet()).
1453 * xml/xmlhttprequest.cpp:
1454 (WebCore::XMLHttpRequest::getResponseXML): Set the loaded document's URL.
1456 2006-12-24 Mitz Pettel <mitz@webkit.org>
1458 Reviewed by Maciej and Geoff.
1460 - remove unused member variable m_styleSelectorDirty
1462 No test possible (no functionality change)
1465 (WebCore::Document::Document):
1466 (WebCore::Document::recalcStyleSelector):
1469 2006-12-24 Sam Weinig <sam@webkit.org>
1473 Patch for http://bugs.webkit.org/show_bug.cgi?id=11952
1474 style changes made through CSSMediaRule functions insertRule()
1475 and deleteRule do not show up on the screen
1478 * fast/dom/css-mediarule-deleteRule-update.html
1479 * fast/dom/css-mediarule-insertRule-update.html
1481 * css/CSSMediaRule.cpp:
1482 (WebCore::CSSMediaRule::insertRule):
1483 (WebCore::CSSMediaRule::deleteRule):
1485 2006-12-24 Rob Buis <buis@kde.org>
1489 Get rid of unused variable.
1491 * ksvg2/svg/SVGURIReference.cpp:
1492 (WebCore::SVGURIReference::getTarget):
1494 2006-12-23 Alexey Proskuryakov <ap@webkit.org>
1498 http://bugs.webkit.org/show_bug.cgi?id=11933
1499 REGRESSION: trying to change a property in a computed style declaration results in a crash
1501 Test: fast/dom/computed-style-set-property.html
1503 * bindings/js/kjs_css.cpp:
1504 (KJS::DOMCSSStyleDeclaration::put): Added a check for null m_impl->stylesheet(). Also, fixed
1505 incorrect logic in Dashboard branch - it didn't return in time if removeProperty() raised
1506 an exception (credit for noticing this bug goes to Geoff).
1508 2006-12-23 Lars Naesbye Christensen <lars@naesbye.dk>
1512 Patch for http://bugs.webkit.org/show_bug.cgi?id=11940
1513 Bad transparency in some cursor pointer images
1515 * Resources/northEastResizeCursor.png:
1516 * Resources/northEastSouthWestResizeCursor.png:
1517 * Resources/northWestResizeCursor.png:
1518 * Resources/northWestSouthEastResizeCursor.png:
1519 * Resources/southEastResizeCursor.png:
1520 * Resources/southWestResizeCursor.png:
1522 2006-12-23 Sam Weinig <sam@webkit.org>
1526 Patch for http://bugs.webkit.org/show_bug.cgi?id=11876
1527 CSSMediaRule functions insertRule and deleteRule don't raise exceptions
1530 * fast/dom/css-mediarule-functions.html
1532 * bindings/js/kjs_css.cpp:
1533 (KJS::DOMCSSRuleFunc::callAsFunction):
1534 * css/CSSMediaRule.cpp: add exception handling
1535 (WebCore::CSSMediaRule::insertRule):
1536 (WebCore::CSSMediaRule::deleteRule):
1537 * css/CSSMediaRule.h: add ExceptionCode arguments
1538 * css/CSSMediaRule.idl: un-comment exceptions
1540 2006-12-23 David Hyatt <hyatt@apple.com>
1542 Fix 11942. The inheritable properties array is duplicated (lame). Make
1543 sure to keep both in sync.
1547 * css/CSSComputedStyleDeclaration.cpp:
1548 * css/CSSMutableStyleDeclaration.cpp:
1551 2006-12-22 Geoffrey Garen <ggaren@apple.com>
1553 Reviewed by Brady Eidson.
1555 Fixed <rdar://problem/4871518> Leopard9A321: Crash visiting www.audible.com
1556 (WebCore::FrameLoader::loadSubframe)
1558 * loader/mac/FrameLoaderMac.mm:
1559 (WebCore::FrameLoader::createFrame): Updated to reflect the fact that
1560 createChildFrameNamed: now returns a WebCore::Frame* instead of a
1561 WebCoreFrameBridge *.
1562 * page/mac/WebCoreFrameBridge.h:
1564 2006-12-22 David Hyatt <hyatt@apple.com>
1566 Make sure to actually set the stroke thickness for text decorations.
1567 Covered by bugzilla bug 11921.
1571 * rendering/InlineFlowBox.cpp:
1572 (WebCore::InlineFlowBox::paintDecorations):
1573 * rendering/InlineTextBox.cpp:
1574 (WebCore::InlineTextBox::paintDecoration):
1576 2006-12-22 Nikolas Zimmermann <zimmermann@kde.org>
1580 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11934
1582 Adding/removing SVGPathSeg* items to a SVGPathElement (through SVGPathSegList
1583 interface) has live update problems, as the notifyAttributeChange() function
1584 isn't called anywhere. The context param is currently stored per SVGPathSeg,
1585 which is not needed - as it can be done using SVGPathSegList completely. It
1586 wastes memory, that is fixed. In order to get rid of the context param in
1587 SVGPathSeg, we need a way to map SVGPathSeg* objects to SVGStyledElement*
1588 objects ("context element"). That is done using a new HashMap in the
1589 SVGDocumentExtensions class.
1592 * WebCore.xcodeproj/project.pbxproj:
1593 * bindings/js/JSSVGPathSegListCustom.cpp: Added.
1594 (WebCore::updatePathSegContextMap):
1595 (WebCore::removeFromPathSegContextMap):
1596 (WebCore::JSSVGPathSegList::getItem):
1597 (WebCore::JSSVGPathSegList::insertItemBefore):
1598 (WebCore::JSSVGPathSegList::replaceItem):
1599 (WebCore::JSSVGPathSegList::removeItem):
1600 (WebCore::JSSVGPathSegList::appendItem):
1601 * bindings/scripts/CodeGeneratorJS.pm:
1602 * ksvg2/misc/SVGDocumentExtensions.h:
1603 (WebCore::SVGDocumentExtensions::pathSegContextMap):
1604 (WebCore::SVGDocumentExtensions::pathSegContext):
1605 (WebCore::SVGDocumentExtensions::setPathSegContext):
1606 (WebCore::SVGDocumentExtensions::removePathSegContext):
1607 (WebCore::SVGDocumentExtensions::hasPathSegContext):
1608 * ksvg2/svg/SVGList.h:
1609 (WebCore::SVGList::getFirst):
1610 (WebCore::SVGList::getLast):
1611 * ksvg2/svg/SVGPathElement.cpp:
1612 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
1613 (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
1614 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
1615 (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
1616 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
1617 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
1618 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
1619 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
1620 (WebCore::SVGPathElement::createSVGPathSegArcAbs):
1621 (WebCore::SVGPathElement::createSVGPathSegArcRel):
1622 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
1623 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
1624 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
1625 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
1626 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
1627 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
1628 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
1629 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
1630 (WebCore::SVGPathElement::svgMoveTo):
1631 (WebCore::SVGPathElement::svgLineTo):
1632 (WebCore::SVGPathElement::svgLineToHorizontal):
1633 (WebCore::SVGPathElement::svgLineToVertical):
1634 (WebCore::SVGPathElement::svgCurveToCubic):
1635 (WebCore::SVGPathElement::svgCurveToCubicSmooth):
1636 (WebCore::SVGPathElement::svgCurveToQuadratic):
1637 (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
1638 (WebCore::SVGPathElement::svgArcTo):
1639 (WebCore::SVGPathElement::pathSegList):
1640 * ksvg2/svg/SVGPathElement.h:
1641 * ksvg2/svg/SVGPathSeg.cpp: Removed.
1642 * ksvg2/svg/SVGPathSeg.h:
1643 (WebCore::SVGPathSeg::SVGPathSeg):
1644 (WebCore::SVGPathSeg::~SVGPathSeg):
1645 (WebCore::SVGPathSeg::toString):
1646 * ksvg2/svg/SVGPathSegArc.cpp:
1647 (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
1648 (WebCore::SVGPathSegArcAbs::setX):
1649 (WebCore::SVGPathSegArcAbs::setY):
1650 (WebCore::SVGPathSegArcAbs::setR1):
1651 (WebCore::SVGPathSegArcAbs::setR2):
1652 (WebCore::SVGPathSegArcAbs::setAngle):
1653 (WebCore::SVGPathSegArcAbs::setLargeArcFlag):
1654 (WebCore::SVGPathSegArcAbs::setSweepFlag):
1655 (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
1656 (WebCore::SVGPathSegArcRel::setX):
1657 (WebCore::SVGPathSegArcRel::setY):
1658 (WebCore::SVGPathSegArcRel::setR1):
1659 (WebCore::SVGPathSegArcRel::setR2):
1660 (WebCore::SVGPathSegArcRel::setAngle):
1661 (WebCore::SVGPathSegArcRel::setLargeArcFlag):
1662 (WebCore::SVGPathSegArcRel::setSweepFlag):
1663 * ksvg2/svg/SVGPathSegArc.h:
1664 * ksvg2/svg/SVGPathSegClosePath.cpp:
1665 * ksvg2/svg/SVGPathSegClosePath.h:
1666 * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
1667 (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
1668 (WebCore::SVGPathSegCurvetoCubicAbs::setX):
1669 (WebCore::SVGPathSegCurvetoCubicAbs::setY):
1670 (WebCore::SVGPathSegCurvetoCubicAbs::setX1):
1671 (WebCore::SVGPathSegCurvetoCubicAbs::setY1):
1672 (WebCore::SVGPathSegCurvetoCubicAbs::setX2):
1673 (WebCore::SVGPathSegCurvetoCubicAbs::setY2):
1674 (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
1675 (WebCore::SVGPathSegCurvetoCubicRel::setX):
1676 (WebCore::SVGPathSegCurvetoCubicRel::setY):
1677 (WebCore::SVGPathSegCurvetoCubicRel::setX1):
1678 (WebCore::SVGPathSegCurvetoCubicRel::setY1):
1679 (WebCore::SVGPathSegCurvetoCubicRel::setX2):
1680 (WebCore::SVGPathSegCurvetoCubicRel::setY2):
1681 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
1682 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
1683 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
1684 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX):
1685 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY):
1686 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setX2):
1687 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::setY2):
1688 (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
1689 (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX):
1690 (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY):
1691 (WebCore::SVGPathSegCurvetoCubicSmoothRel::setX2):
1692 (WebCore::SVGPathSegCurvetoCubicSmoothRel::setY2):
1693 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
1694 * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
1695 (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
1696 (WebCore::SVGPathSegCurvetoQuadraticAbs::setX):
1697 (WebCore::SVGPathSegCurvetoQuadraticAbs::setY):
1698 (WebCore::SVGPathSegCurvetoQuadraticAbs::setX1):
1699 (WebCore::SVGPathSegCurvetoQuadraticAbs::setY1):
1700 (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
1701 (WebCore::SVGPathSegCurvetoQuadraticRel::setX):
1702 (WebCore::SVGPathSegCurvetoQuadraticRel::setY):
1703 (WebCore::SVGPathSegCurvetoQuadraticRel::setX1):
1704 (WebCore::SVGPathSegCurvetoQuadraticRel::setY1):
1705 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
1706 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1707 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
1708 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setX):
1709 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::setY):
1710 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
1711 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setX):
1712 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::setY):
1713 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
1714 * ksvg2/svg/SVGPathSegLineto.cpp:
1715 (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
1716 (WebCore::SVGPathSegLinetoAbs::setX):
1717 (WebCore::SVGPathSegLinetoAbs::setY):
1718 (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
1719 (WebCore::SVGPathSegLinetoRel::setX):
1720 (WebCore::SVGPathSegLinetoRel::setY):
1721 * ksvg2/svg/SVGPathSegLineto.h:
1722 * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
1723 (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
1724 (WebCore::SVGPathSegLinetoHorizontalAbs::setX):
1725 (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
1726 (WebCore::SVGPathSegLinetoHorizontalRel::setX):
1727 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
1728 * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
1729 (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
1730 (WebCore::SVGPathSegLinetoVerticalAbs::setY):
1731 (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
1732 (WebCore::SVGPathSegLinetoVerticalRel::setY):
1733 * ksvg2/svg/SVGPathSegLinetoVertical.h:
1734 * ksvg2/svg/SVGPathSegList.cpp:
1735 (WebCore::SVGPathSegList::SVGPathSegList):
1736 (WebCore::SVGPathSegList::context):
1737 * ksvg2/svg/SVGPathSegList.h:
1738 * ksvg2/svg/SVGPathSegList.idl:
1739 * ksvg2/svg/SVGPathSegMoveto.cpp:
1740 (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
1741 (WebCore::SVGPathSegMovetoAbs::setX):
1742 (WebCore::SVGPathSegMovetoAbs::setY):
1743 (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
1744 (WebCore::SVGPathSegMovetoRel::setX):
1745 (WebCore::SVGPathSegMovetoRel::setY):
1746 * ksvg2/svg/SVGPathSegMoveto.h:
1748 2006-12-22 Mitz Pettel <mitz@webkit.org>
1752 - fix http://bugs.webkit.org/show_bug.cgi?id=11903
1753 REGRESSION: outline not drawn if line style is dashed.
1755 This fixes a bunch of existing pixel tests.
1757 * rendering/RenderObject.cpp:
1758 (WebCore::RenderObject::drawBorder):
1760 2006-12-22 John Sullivan <sullivan@apple.com>
1762 Reviewed by Kevin Decker
1764 - renamed markMisspellingsInAdjacentWords to markMisspellingsAfterTypingToPosition
1765 in anticipation of fixing it to work more correctly with grammar checking, where
1766 only checking adjacent words isn't good enough.
1769 renamed markMisspellingsInAdjacentWords to markMisspellingsAfterTypingToPosition
1771 * editing/TypingCommand.cpp:
1772 (WebCore::TypingCommand::markMisspellingsAfterTyping):
1773 updated for name change
1775 * editing/mac/EditorMac.mm:
1776 (WebCore::Editor::markMisspellingsAfterTypingToPosition):
1777 renamed from markMisspellingsInAdjacentWords and added FIXME comment
1779 2006-12-22 Eric Seidel <eric@webkit.org>
1783 http://bugs.webkit.org/show_bug.cgi?id=11912
1784 Overriding visibility does not behave as expected.
1786 * rendering/RenderSVGContainer.cpp:
1787 (WebCore::RenderSVGContainer::paint): allow children to draw when container is visibility='hidden'
1789 2006-12-22 Nikolas Zimmermann <zimmermann@kde.org>
1793 Fix SVGPathSeg JS object creation. SVGPathSegList has to return
1794 the actual SVGPathSegLineToAbs/MoveToRel... object instead of a pure
1795 SVGPathSeg JS object.
1797 * WebCore.xcodeproj/project.pbxproj:
1798 * WebCore/bindings/js/JSSVGPathSegCustom.cpp: Added.
1799 * bindings/scripts/CodeGeneratorJS.pm:
1801 2006-12-21 Beth Dakin <bdakin@apple.com>
1805 Fix for <rdar://problem/4897162> REGRESSION: Attempting to create a
1806 new message in .Mac web mail causes Safari to crash
1807 ( KJS::DOMCSSStyleDeclaration::put() + 368 )
1809 This was a regression from my clone-node change. This fix is very
1812 * dom/StyledElement.cpp:
1813 (WebCore::StyledElement::copyNonAttributeProperties): Must set the
1814 data that getInlineStyleDecl() points to instead of setting
1815 m_inlineStyleDecl directly. I also changed some variable names.
1816 * dom/StyledElement.h: Don't need parameter name here.
1818 2006-12-21 Adele Peterson <adele@apple.com>
1822 - Fix for <rdar://problem/4895716> REGRESSION: Pressing return key in search field doesn't begin search
1824 Test: fast/events/onsearch-enter.html
1826 * html/HTMLInputElement.cpp:
1827 (WebCore::HTMLInputElement::defaultEventHandler): Calls onSearch when handling "Enter". Also removed
1828 special case for AppKit search fields, so now the enter event is considered handled here.
1829 (WebCore::HTMLInputElement::onSearch): Added. Dispatches search event.
1830 * html/HTMLInputElement.h: Added onSearch.
1831 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::onSearch): Calls onSearch on the node.
1833 2006-12-21 Geoffrey Garen <ggaren@apple.com>
1835 Reviewed by Brady Eidson.
1837 Fixed <rdar://problem/4897205> ASSERTION FAILURE in ContainerNode::queuePostAttachCallback
1838 when creating an iframe from an iframe onload handler
1840 I added that assertion to try to "keep things simple," but I've found a
1841 testcase that demonstrates why things need to be complicated.
1843 * dom/ContainerNode.cpp:
1844 (WebCore::ContainerNode::queuePostAttachCallback):
1846 2006-12-21 Alexey Proskuryakov <ap@webkit.org>
1850 http://bugs.webkit.org/show_bug.cgi?id=11919
1851 Allow setting CSS values to null.
1853 * bindings/js/kjs_css.cpp:
1854 (KJS::DOMCSSStyleDeclaration::put):
1855 (KJS::DOMCSSStyleDeclarationProtoFunc::callAsFunction):
1856 Convert null values to null strings.
1858 2006-12-21 Rob Buis <buis@kde.org>
1862 http://bugs.webkit.org/show_bug.cgi?id=11898
1863 CSSMediaRule functions insertRule and deleteRule assert when called from js in debug builds
1865 Test explicitly for the two media rule functions so it ends up calling callAsFunction.
1867 * bindings/js/kjs_css.cpp:
1868 (KJS::DOMCSSRule::getOwnPropertySlot):
1870 2006-12-21 Lars Knoll <lars@trolltech.com>
1874 * loader/FrameLoaderClient.h:
1875 * loader/qt/FrameLoaderQt.cpp:
1876 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1877 (WebCore::FrameLoader::partClearedInBegin):
1878 (WebCore::FrameLoader::restoreDocumentState):
1879 comment out a few notImplemented() warnings
1880 * platform/qt/FrameQt.cpp:
1881 (WebCore::FrameQt::bindingRootObject):
1882 (WebCore::FrameQt::addPluginRootObject):
1883 * platform/qt/FrameQt.h:
1886 2006-12-20 David Hyatt <hyatt@apple.com>
1888 Make sure the execrable match-nearest-mail-blockquote-color CSS property is actually initialized (amazingly
1889 it started off with the value "match", since it wasn't even initialized). Now that it is actually being
1890 initialized and properly copied and assigned to, tests have failed. It seems that we were getting the
1891 behavior of "match" by default, when the initial value was supposed to be "normal."
1893 Because this property really should not exist at all, it's unclear to me what the right solution is here.
1895 * rendering/RenderStyle.cpp:
1896 (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
1897 (WebCore::StyleCSS3NonInheritedData::operator==):
1898 * rendering/RenderStyle.h:
1900 2006-12-20 Brady Eidson <beidson@apple.com>
1902 Reviewed by Adam's rubberstamp
1904 Accidentally left a logging channel on in my checkin
1906 * platform/Logging.cpp:
1909 2006-12-21 Nikolas Zimmermann <zimmermann@kde.org>
1913 Fix removeItem recursively calling itself (!). It was meant to call m_vector.remove(index)
1914 not removeItem(index, ec). This bug is in SVN for quite some time now :-)
1916 * ksvg2/svg/SVGList.h:
1917 (WebCore::SVGList::removeItem):
1919 2006-12-20 David Harrison <harrison@apple.com>
1921 Reviewed by John Sullivan.
1923 <rdar://problem/4893376> REGRESSION: Crash occurs at WebCoreFrameBridge fontForSelection: when drag selecting from a line break
1925 No layout test added because crash only happens in path where editing window is key,
1926 which is never the case for the automated tests.
1928 * page/mac/WebCoreFrameBridge.mm:
1929 (-[WebCoreFrameBridge fontForSelection:]):
1930 Add nil check of fontForSelection() result.
1932 2006-12-21 Nikolas Zimmermann <zimmermann@kde.org>
1936 Fix dynamic gradient changes, via JS. It actually worked before, but it
1937 wasn't repainted. Behave just like the pattern notifyAttributeChange() code now.
1939 * ksvg2/svg/SVGGradientElement.cpp:
1940 (WebCore::SVGGradientElement::notifyAttributeChange):
1942 2006-12-20 Geoffrey Garen <ggaren@apple.com>
1944 Reviewed by Darin Adler.
1946 Fixed <rdar://problem/4809825>. We need to check isSafeScript when converting
1947 a Location to string.
1949 It's really a bug, and poor design, for objects to override toString.
1950 Subclasses that want custom toString implementations should add a toString
1951 function to their prototypes instead of overriding the JavaScript ToString
1952 operation. Following this design pattern would have avoided this bug in the
1955 * bindings/js/kjs_window.cpp:
1956 (KJS::Location::toString):
1958 2006-12-20 David Hyatt <hyatt@apple.com>
1960 Fix SVG stroking. Make strokeThickness() get pushed into CG immediately
1961 when set in the GraphicsContext. Remove setLineWidth since it is
1962 redundant with setStrokeThickness now.
1966 * html/CanvasRenderingContext2D.cpp:
1967 (WebCore::CanvasRenderingContext2D::setLineWidth):
1968 * platform/graphics/GraphicsContext.cpp:
1969 (WebCore::GraphicsContext::setPlatformStrokeThickness):
1970 (WebCore::GraphicsContext::setPlatformStrokeStyle):
1971 * platform/graphics/GraphicsContext.h:
1972 * platform/graphics/cg/GraphicsContextCG.cpp:
1973 (WebCore::GraphicsContext::drawLine):
1974 (WebCore::GraphicsContext::drawEllipse):
1975 (WebCore::GraphicsContext::strokeArc):
1976 (WebCore::GraphicsContext::drawConvexPolygon):
1977 (WebCore::GraphicsContext::setPlatformStrokeThickness):
1978 * platform/graphics/qt/GraphicsContextQt.cpp:
1979 * platform/mac/FontMac.mm:
1980 (WebCore::Font::drawComplexText):
1981 (WebCore::Font::drawGlyphs):
1983 2006-12-20 David Hyatt <hyatt@apple.com>
1985 Fix for bug 11893, white text on form controls. Just make sure that
1986 all form control drawing in RenderTheme is bracketed by save/restore
1991 * platform/mac/LocalCurrentGraphicsContext.h:
1992 * platform/mac/LocalCurrentGraphicsContext.mm:
1993 (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
1994 (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
1995 * rendering/RenderThemeMac.mm:
1996 (WebCore::RenderThemeMac::paintTextField):
1997 (WebCore::RenderThemeMac::paintTextArea):
1999 2006-12-20 Mark Rowe <bdash@webkit.org>
2003 Fix leak of CGContextRef from GraphicsContext::createImageBuffer.
2005 * platform/graphics/cg/GraphicsContextCG.cpp:
2006 (WebCore::GraphicsContext::createImageBuffer): Release newly-created CGContextRef after passing it to GraphicsContext.
2008 2006-12-20 Timothy Hatcher <timothy@apple.com>
2010 Reviewed by Mark Rowe.
2012 <rdar://problem/4871993> WebCore-421.31 build fails with "Public API change" error when gcc 3.3 is the default compiler
2014 * bindings/scripts/CodeGeneratorObjC.pm: ignore blank lines in the public API check
2016 2006-12-20 David Harrison <harrison@apple.com>
2018 Reviewed by John Sullivan.
2020 <rdar://problem/4570218> REGRESSION (?-10.4.7): cntl-K only works the first time
2023 * editing/deleting/delete-to-end-of-paragraph.html
2025 * editing/TypingCommand.cpp:
2026 (WebCore::TypingCommand::forwardDeleteKeyPressed):
2027 If the selection was a caret at the end of the paragraph, extend selection so it wraps to the start of next paragraph (if any),
2029 2006-12-20 Nikolas Zimmermann <zimmermann@kde.org>
2031 Build fix, reviewed by Mitz.
2033 Fix mac build, by using proper float -> int conversion.
2035 * rendering/InlineFlowBox.cpp:
2036 (WebCore::InlineFlowBox::placeBoxesHorizontally):
2038 2006-12-20 David Hyatt <hyatt@apple.com>
2040 Make sure text decoration colors prefer stroke over fill (and honor both of the new CSS properties added
2041 for these values over color).
2045 Added fast/text/stroking-decorations.html
2047 * rendering/InlineFlowBox.cpp:
2048 (WebCore::InlineFlowBox::paintDecorations):
2049 * rendering/RenderObject.cpp:
2050 (WebCore::decorationColor):
2051 (WebCore::RenderObject::getTextDecorationColors):
2053 2006-12-20 David Kilzer <ddkilzer@kilzer.net>
2057 http://bugs.webkit.org/show_bug.cgi?id=11746
2058 REGRESSION(r14931): Outlook Web Access incorrectly positions the insertion point when replying to e-mail
2060 Set caret at beginning of text on initial focus.
2062 Test: fast/forms/textarea-initial-caret-position.html
2064 * html/HTMLTextAreaElement.cpp:
2065 (WebCore::HTMLTextAreaElement::updateFocusAppearance):
2067 2006-12-20 David Hyatt <hyatt@apple.com>
2069 Fix for bug 11889, support stroking and filling of HTML text from CSS. This patch adds four new CSS properties:
2070 text-fill-color, text-stroke-color, text-stroke-width and text-stroke (a shorthand for the other two). Text
2071 is filled and not stroked by default and does so using the text-fill-color. If this property is not set, then
2074 Stroking is accomplished by setting a stroke width. Stroke color, if omitted, will be picked up from the color
2075 property. You can set either color to be transparent or partially transparent. A fully transparent fill color is
2076 the way to achieve an "outline" effect where only stroking happens.
2078 Stroking and filling are both customizable inside the ::selection pseudo-element, and so when selecting you can
2079 vary colors and widths.
2081 text-shadow applies to both the stroke and the fill.
2083 text-decorations do not yet respect the stroke/fill colors. This will follow in a later patch.
2087 Added fast/text/stroking.html as a layout test. Enhanced RenderTreeAsText.cpp to dump fill and stroke information.
2089 * css/CSSComputedStyleDeclaration.cpp:
2091 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2092 * css/CSSPropertyNames.in:
2093 * css/cssparser.cpp:
2094 (WebCore::CSSParser::parseValue):
2095 * css/cssstyleselector.cpp:
2096 (WebCore::CSSStyleSelector::applyProperty):
2097 * platform/mac/FontMac.mm:
2098 (WebCore::Font::drawComplexText):
2099 (WebCore::Font::drawGlyphs):
2100 * rendering/InlineFlowBox.cpp:
2101 (WebCore::InlineFlowBox::placeBoxesHorizontally):
2102 * rendering/InlineFlowBox.h:
2103 (WebCore::InlineFlowBox::InlineFlowBox):
2104 (WebCore::InlineFlowBox::maxHorizontalVisualOverflow):
2105 * rendering/InlineTextBox.cpp:
2106 (WebCore::updateGraphicsContext):
2107 (WebCore::InlineTextBox::paint):
2108 (WebCore::InlineTextBox::paintSelection):
2109 (WebCore::InlineTextBox::paintMarkedTextBackground):
2110 (WebCore::InlineTextBox::paintTextMatchMarker):
2111 * rendering/RenderObject.cpp:
2112 (WebCore::RenderObject::selectionForegroundColor):
2113 * rendering/RenderStyle.cpp:
2114 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
2115 (WebCore::StyleCSS3InheritedData::operator==):
2116 (WebCore::RenderStyle::diff):
2117 * rendering/RenderStyle.h:
2118 (WebCore::RenderStyle::textStrokeColor):
2119 (WebCore::RenderStyle::textStrokeWidth):
2120 (WebCore::RenderStyle::textFillColor):
2121 (WebCore::RenderStyle::setTextStrokeColor):
2122 (WebCore::RenderStyle::setTextStrokeWidth):
2123 (WebCore::RenderStyle::setTextFillColor):
2124 (WebCore::RenderStyle::initialTextStrokeWidth):
2125 * rendering/RenderTreeAsText.cpp:
2126 (WebCore::operator<<):
2128 2006-12-19 Adele Peterson <adele@apple.com>
2132 - Fix for <rdar://problem/3824247> Select All works even if -khtml-user-select:none; style is set
2134 Also made user-select:none work on new list boxes, and cleaned up the list box defaultEventHandler.
2136 Test: editing/selection/select-all-user-select-none.html
2138 * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): Make sure canSelect is true on the root renderer.
2139 * html/HTMLSelectElement.cpp:
2140 (WebCore::HTMLSelectElement::canSelectAll): Check canSelect here.
2141 (WebCore::HTMLSelectElement::selectAll): Added nil check for renderer.
2142 (WebCore::HTMLSelectElement::defaultEventHandler): Return early if the event has been handled.
2143 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Check canSelect here.
2144 * html/HTMLSelectElement.h:
2146 2006-12-19 Anders Carlsson <acarlsson@apple.com>
2150 <rdar://problem/4701860>
2151 http://bugs.webkit.org/show_bug.cgi?id=11010
2152 [9A255] Crash in WebCore::EventTargetNode::dispatchEvent
2154 * html/HTMLScriptElement.cpp:
2155 (WebCore::HTMLScriptElement::notifyFinished):
2156 Ref the script element while running the script since it can be freed
2157 when executing the script.
2159 2006-12-19 Darin Adler <darin@apple.com>
2163 - <rdar://problem/4885227>
2164 frame resizing is now live and no longer does direct drawing
2166 * html/HTMLFrameSetElement.h: Made frameBorder() and noResize() const.
2167 Added rowLengths() and colLengths() getters so that we don't have to
2168 have RenderFrameSet as a friend. Stopped using bit fields.
2170 * html/HTMLFrameSetElement.cpp:
2171 (WebCore::HTMLFrameSetElement::defaultEventHandler): Removed now-uneeded
2172 check for contextmenu events. Look at return value from userResize to
2173 decide whether to mark the event as "default handled". In the case where
2174 the event is handled, don't call through to the base class.
2176 * rendering/RenderFrameSet.h: No longer mark HTMLFrameSetElement as a
2177 friend. Made positionFrames and canResize private, and changed canResize
2178 to take an IntPoint. Added isResizingRow, isResizingColumn, canResizeRow,
2179 and canResizeColumn functions to be used soon for cursor feedback.
2180 Removed override of non-virtual element() function and replaced it with
2181 a private frameSet() inline function. Grouped all the data members for
2182 each axis into a GridAxis class, and made one called m_cols and one called
2183 m_rows. Used vectors for the resizable bits of this instead of new/delete
2184 arrays. Added a constant named "noSplit" so we don't have to use -1
2185 everywhere explicitly for this purpose. Renamed setResizing to
2186 setIsResizing and made it private. Eliminated resizing() function.
2187 Added new private helper functions, layOutAxis, findNonResizableSplits,
2188 splitPosition, hitTestSplit, startResizing, and continueResizing.
2189 Renamed m_resizing to m_isResizing, and m_clientResizing to
2192 * rendering/RenderFrameSet.cpp:
2193 (WebCore::RenderFrameSet::RenderFrameSet): Removed now-unneeded initialization
2194 that is handled by the GridAxis and Vector constructors.
2195 (WebCore::RenderFrameSet::~RenderFrameSet): Ditto (for destructors).
2196 (WebCore::RenderFrameSet::GridAxis::GridAxis): Added.
2197 (WebCore::RenderFrameSet::frameSet): Added. Inline function so we don't have
2198 to cast the result of node() or element() everywhere.
2199 (WebCore::RenderFrameSet::nodeAtPoint): Updated for name changes.
2200 (WebCore::RenderFrameSet::GridAxis::resize): Added. Helper function to be used
2201 in the layout function.
2202 (WebCore::RenderFrameSet::layOutAxis): Added. Factored out the part of the
2203 layout function that used to be inside a for loop for the two axes.
2204 The algorithm is otherwise unchanged.
2205 (WebCore::RenderFrameSet::findNonResizableSplits): Added. Factored out the
2206 code that set up the "split variable" arrays from the layout function.
2207 (WebCore::RenderFrameSet::layout): Moved the bulk of this function into the
2208 new helpers. This allowed me to remove the use of goto.
2209 (WebCore::RenderFrameSet::positionFrames): Updated for change to data structures.
2210 Also added some more local variables for clarity.
2211 (WebCore::RenderFrameSet::startResizing): Added. Code factored out of the
2212 userResize function that handles mousedown events that might begin a resize.
2213 (WebCore::RenderFrameSet::continueResizing): Added. Code factored out of the
2214 userResize function that handles mouse events that continue a resize already
2215 in progress, including mouseup events that end the resizing. Uses the new
2216 splitPosition function so it can be used over and over again while resizing.
2217 (WebCore::RenderFrameSet::userResize): Restructured to use the new helper
2218 functions. Removed the direct drawing of a gray bar during mouse movement;
2219 instead we do the resizing live.
2220 (WebCore::RenderFrameSet::setIsResizing): Updated for name changes.
2221 (WebCore::RenderFrameSet::isResizingRow): Added.
2222 (WebCore::RenderFrameSet::isResizingColumn): Added.
2223 (WebCore::RenderFrameSet::canResize): Changed to use hitTestSplit for clarity.
2224 (WebCore::RenderFrameSet::canResizeRow): Added.
2225 (WebCore::RenderFrameSet::canResizeColumn): Added.
2226 (WebCore::RenderFrameSet::splitPosition): Added.
2227 (WebCore::RenderFrameSet::hitTestSplit): Added. Contains the guts of the code
2228 that was used both in canResize and userResize before -- now it's shared.
2229 (WebCore::RenderFrameSet::dump): Updated for name changes.
2231 2006-12-19 Justin Garcia <justin.garcia@apple.com>
2233 Reviewed by harrison
2235 Added Selection::removeAllRanges() and ::addRange()
2237 * bindings/js/kjs_window.cpp:
2238 (KJS::SelectionFunc::callAsFunction): Added the bindings for
2239 the two new functions.
2240 * bindings/js/kjs_window.h:
2242 * editing/SelectionController.cpp:
2243 (WebCore::SelectionController::removeAllRanges): Equivalent
2245 (WebCore::SelectionController::addRange): Until we support
2246 discontiguous selections, the new selected range is the
2247 union of the old selected range and the passed range if
2248 the two intersect, and the old range if they don't.
2249 * editing/SelectionController.h:
2251 2006-12-19 Beth Dakin <bdakin@apple.com>
2255 Fix for <rdar://problem/4860924> outerHTML gives an out-of-date
2256 result when applied to a clone
2258 We were only copying the m_inlineStyleDecl over to clones, but we
2259 need to copy m_isStyleAttributeValid and
2260 m_synchronizingStyleAttribute as well to know when we have to
2263 * dom/StyledElement.cpp:
2264 (WebCore::StyledElement::copyNonAttributeProperties): Copy over all
2265 three member variables.
2266 * dom/StyledElement.h:
2267 * html/HTMLElement.cpp:
2268 (WebCore::HTMLElement::cloneNode): No longer need to copy the
2269 inline style decl explicitly because copyNonAttributeProperties()
2270 will take care of it.
2271 * html/HTMLInputElement.cpp:
2272 (WebCore::HTMLInputElement::copyNonAttributeProperties): Call into
2273 parent class implementation. This is important now that there is
2274 more than one implementation of this function.
2276 2006-12-19 Geoffrey Garen <ggaren@apple.com>
2278 Reviewed by Darin Adler.
2280 Fixed http://bugs.webkit.org/show_bug.cgi?id=11880
2281 REGRESSION (r18304): Assertion failure in -[WebHTMLView _canProcessDragWithDraggingInfo:]
2282 when dragging over the window's a scroll bar (innerFrame)
2284 RenderLayer needs to check 'active,' when deciding what to do if hit testing
2285 hasn't hit anything, because we want the default hit testing mechanism to return the
2286 document when we hit a scrollbar.
2288 This problem shows that the idea of 'capturing' was a little too ambitious
2289 in hit testing, at least given the current state of things. So, I've replaced
2290 'capturing' with 'mouseUp,' the condition that provided the immediate need
2291 for the capturing flag in the first place.
2293 * page/EventHandler.cpp:
2294 (WebCore::EventHandler::handleMouseMoveEvent):
2295 * rendering/HitTestRequest.h: Removed 'capturing'
2296 (WebCore::HitTestRequest::HitTestRequest):
2297 * rendering/RenderLayer.cpp:
2298 (WebCore::RenderLayer::hitTestLayer):
2300 2006-12-19 Brady Eidson <beidson@apple.com>
2304 Added a logging channel for network activity for loader work
2306 * platform/Logging.cpp:
2308 * platform/Logging.h:
2309 * platform/mac/LoggingMac.mm:
2310 (WebCore::InitializeLoggingChannelsIfNecessary):
2312 2006-12-19 Justin Garcia <justin.garcia@apple.com>
2316 <rdar://problem/4888891>
2317 Docs & Spreadsheets: Comment fails to insert if text is selected in the document
2320 (WebCore::Range::surroundContents): If startContainer is a text node,
2321 it will be split when the range is extracted, and it will be its parent
2322 that will have to accept newParent. Also cleaned up some code with
2325 2006-12-19 Timothy Hatcher <timothy@apple.com>
2329 <rdar://problem/4891774> Local WebCore/WebBrowser builds fail in 9A328 due to warning about ObjC-2.0 language features
2331 * WebCore.xcodeproj/project.pbxproj:
2333 2006-12-19 Nikolas Zimmermann <zimmermann@kde.org>
2337 Fix SVGList index validation (off-by-one error).
2339 Adding new testcase js-font-test.svg, which uses SVGLengthList interface.
2340 (This is a very old ksvg1 testcase, adopted for SVG1.1)
2342 * ksvg2/svg/SVGList.h:
2343 (WebCore::SVGList::getItem):
2344 (WebCore::SVGList::replaceItem):
2345 (WebCore::SVGList::removeItem):
2347 2006-12-19 Nikolas Zimmermann <zimmermann@kde.org>
2351 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11879
2353 Fix pattern on stroke/fill of text.
2355 * ksvg2/svg/SVGPatternElement.cpp:
2356 (WebCore::SVGPatternElement::notifyAttributeChange):
2357 * platform/graphics/svg/SVGPaintServerGradient.cpp:
2358 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
2359 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
2360 (WebCore::SVGPaintServerGradient::teardown):
2361 (WebCore::SVGPaintServerGradient::setup):
2362 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
2363 (WebCore::SVGPaintServerPattern::setup):
2365 2006-12-19 Alice Liu <alice.liu@apple.com>
2369 * platform/graphics/ImageBuffer.cpp:
2371 2006-12-19 Alexey Proskuryakov <ap@webkit.org>
2375 http://bugs.webkit.org/show_bug.cgi?id=7296
2376 JavaScript error not thrown when trying to set a CSS property to an invalid value
2378 * bindings/js/kjs_css.cpp:
2379 (KJS::DOMCSSStyleDeclaration::put): When not in Dashboard compatibility mode,
2380 raise exception for invalid values. Also removed an unnecessary call to
2381 removeProperty(), which prevented the property value from being preserved in
2384 * css/CSSMutableStyleDeclaration.cpp:
2385 (WebCore::CSSMutableStyleDeclaration::setProperty): Moved the handling of
2386 empty property values here. Also removed an unnecessary call to removeProperty().
2388 2006-12-19 Anders Carlsson <acarlsson@apple.com>
2393 * page/EventHandler.h:
2394 Use correct forward declarations for HitTestRequest.
2396 2006-12-19 Nikolas Zimmermann <zimmermann@kde.org>
2398 Build fix, not reviewed.
2400 Fix Qt/Linux build. Missing GraphicsContext.h include.
2401 Fix Mac build, by adding lroundf() (I swear this compiled w/o that, locally :-)
2403 * platform/graphics/qt/ImageBufferQt.cpp:
2404 * ksvg2/svg/SVGPatternElement.cpp:
2406 2006-12-19 Nikolas Zimmermann <zimmermann@kde.org>
2408 Reviewed by Sam. Previous attempts reviewed by Oliver & Eric.
2410 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11867
2412 Bring back masking, by adding off-screen rendering functionality in GraphicsContext.
2413 Add new "static GraphicsContext* createImageContext(const IntSize& size, bool grayScale)"
2414 function, and implement it with CGBitmapContext in the GraphicsContextCG (stubs for Qt.)
2416 Mask image sizes are dynamically calculated using the passed bounding box in applyMask,
2417 as it was orignally planned. Gradient stroke mask image sizes aren't hardcoded to 2048x2048
2418 anymore, but are as well dynamically calculated using getAbsoluteRepaintRect().
2420 Add new ImageBuffer class encapsulating the size of the image, a platform-specific
2421 handle (ie. CGImageRef for CG platform) plus the GraphicsContext pointer, obtained
2422 via GraphicsContext::createImageBuffer. Offer a generic logic for rendering subtrees
2423 of the rendering tree into a ImageBuffer (see renderSubtreeToImage function)
2424 ImageBufferCG is completly implemented, ImageBufferQt is stubbed.
2426 Also add correct default values for x/y/width/height of <mask>.
2427 Fixes masking related LayoutTests, and speeds up gradient-on-stroke a lot.
2431 * WebCore.xcodeproj/project.pbxproj:
2432 * ksvg2/svg/SVGFEImageElement.cpp:
2433 * ksvg2/svg/SVGImageElement.cpp:
2434 * ksvg2/svg/SVGMaskElement.cpp:
2435 (WebCore::SVGMaskElement::SVGMaskElement):
2436 (WebCore::SVGMaskElement::attributeChanged):
2437 (WebCore::SVGMaskElement::parseMappedAttribute):
2438 (WebCore::SVGMaskElement::drawMaskerContent):
2439 (WebCore::SVGMaskElement::canvasResource):
2440 * ksvg2/svg/SVGMaskElement.h:
2441 * ksvg2/svg/SVGPatternElement.cpp:
2442 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2443 (WebCore::SVGPatternElement::notifyAttributeChange):
2444 * ksvg2/svg/SVGPatternElement.h:
2445 * platform/graphics/GraphicsContext.h:
2446 * platform/graphics/ImageBuffer.cpp: Added.
2447 (WebCore::ImageBuffer::renderSubtreeToImage):
2448 * platform/graphics/ImageBuffer.h: Added.
2449 * platform/graphics/cg/GraphicsContextCG.cpp:
2450 (WebCore::GraphicsContext::createImageBuffer):
2451 * platform/graphics/cg/ImageBufferCG.cpp: Added.
2452 (WebCore::ImageBuffer::ImageBuffer):
2453 (WebCore::ImageBuffer::~ImageBuffer):
2454 (WebCore::ImageBuffer::size):
2455 (WebCore::ImageBuffer::context):
2456 (WebCore::ImageBuffer::cgImage):
2457 * platform/graphics/mac/GraphicsContextMac.mm:
2458 * platform/graphics/qt/GraphicsContextQt.cpp:
2459 (WebCore::GraphicsContext::createImageBuffer):
2460 * platform/graphics/qt/ImageBufferQt.cpp: Added.
2461 (WebCore::ImageBuffer::ImageBuffer):
2462 (WebCore::ImageBuffer::~ImageBuffer):
2463 (WebCore::ImageBuffer::size):
2464 (WebCore::ImageBuffer::context):
2465 * platform/graphics/svg/SVGPaintServerGradient.h:
2466 * platform/graphics/svg/SVGPaintServerPattern.cpp:
2467 (WebCore::SVGPaintServerPattern::tile):
2468 (WebCore::SVGPaintServerPattern::setTile):
2469 * platform/graphics/svg/SVGPaintServerPattern.h:
2470 * platform/graphics/svg/SVGResourceImage.h: Removed.
2471 * platform/graphics/svg/SVGResourceMasker.cpp:
2472 (WebCore::SVGResourceMasker::setMask):
2473 (WebCore::SVGResourceMasker::mask):
2474 * platform/graphics/svg/SVGResourceMasker.h:
2475 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
2476 (WebCore::SVGPaintServerGradient::teardown):
2477 (WebCore::SVGPaintServerGradient::renderPath):
2478 (WebCore::SVGPaintServerGradient::setup):
2479 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
2480 (WebCore::patternCallback):
2481 (WebCore::SVGPaintServerPattern::setup):
2482 * platform/graphics/svg/cg/SVGResourceImageCg.cpp: Removed.
2483 * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
2484 (WebCore::SVGResourceMasker::applyMask):
2485 * platform/graphics/svg/qt/SVGResourceImageQt.cpp: Removed.
2487 2006-12-19 David Hyatt <hyatt@apple.com>
2489 Make sure to initialize the CG fill and stroke colors to our initial fill/stroke colors when first
2490 constructing a GraphicsContextCG. Because Safari actually draws text in the bookmarks bar using GraphicsContext
2491 and sets a fill color, this could only really be seen in another WebKit app.
2493 Patched GraphicsContextQt as well, since it has the same pattern.
2497 * platform/graphics/cg/GraphicsContextCG.cpp:
2498 (WebCore::setCGFillColor):
2499 (WebCore::setCGStrokeColor):
2500 (WebCore::GraphicsContext::GraphicsContext):
2502 2006-12-19 Lars Knoll <lars@trolltech.com>
2506 * loader/FrameLoader.cpp:
2507 (WebCore::FrameLoader::URL):\
2508 Fix a crash, because of the incompletely ported loader
2509 * platform/qt/FontQt.cpp:
2510 (WebCore::Font::drawGlyphs):
2511 Adapt to the changes in GraphicsContext
2513 2006-12-19 David Hyatt <hyatt@apple.com>
2515 Convert stroke thickness to a float. This allows the thickness argument to strokeArc to be eliminated.
2519 * platform/graphics/GraphicsContext.cpp:
2520 (WebCore::GraphicsContext::setStrokeThickness):
2521 (WebCore::GraphicsContext::strokeThickness):
2522 (WebCore::GraphicsContext::setPlatformStrokeThickness):
2523 * platform/graphics/GraphicsContext.h:
2524 * platform/graphics/cg/GraphicsContextCG.cpp:
2525 (WebCore::GraphicsContext::drawEllipse):
2526 (WebCore::GraphicsContext::strokeArc):
2527 * platform/graphics/qt/GraphicsContextQt.cpp:
2528 (WebCore::GraphicsContext::strokeArc):
2529 (WebCore::GraphicsContext::setPlatformStrokeThickness):
2530 * rendering/RenderObject.cpp:
2531 (WebCore::RenderObject::drawBorderArc):
2533 2006-12-19 David Hyatt <hyatt@apple.com>
2535 Rename drawArc to strokeArc and remove its strange behavior of trying to "fill" by stroking using the passed in
2536 thickness. Now the method is purely about stroking an arc and always uses the passed in thickness. Fix the
2537 border-radius code that calls the method so that it makes more sense now. If stroke thickness is converted
2538 to a float, then even the extra argument can go away, and this method can be a clean stroke of an arc.
2540 Make sure to get square list markers right by setting both stroke and fill color properly.
2542 Reviewed by mitz, olliej
2544 * platform/graphics/GraphicsContext.h:
2545 * platform/graphics/cg/GraphicsContextCG.cpp:
2546 (WebCore::GraphicsContext::strokeArc):
2547 * platform/graphics/qt/GraphicsContextQt.cpp:
2548 (WebCore::GraphicsContext::strokeArc):
2549 * rendering/RenderListMarker.cpp:
2550 (WebCore::RenderListMarker::paint):
2551 * rendering/RenderObject.cpp:
2552 (WebCore::RenderObject::drawBorderArc):
2554 2006-12-18 Geoffrey Garen <ggaren@apple.com>
2556 Reviewed by Beth Dakin.
2558 Fixed <rdar://problem/4549745> REGRESSION: scrolling on Google maps
2559 continues after the mouse is released outside the window (8137)
2561 The RenderLayer hit testing code assumed that, when the mouse was outside
2562 the WebView, we only needed to capture mouse events while the mouse was
2563 down (in other words, mouse move events). We actually need to capture mouse
2567 (WebCore::Document::prepareMouseEvent): To match EventHandler::prepareMouseEvent,
2568 I changed this function to take a HitTestRequest instead of the broken-out values of one.
2569 For clarity, I moved an assert to top of function.
2570 (WebCore::Document::addMarker): Removed stray character.
2573 * page/EventHandler.cpp: Changed prepareMouseEvent to take a HitTestRequest,
2574 instead of the broken-out values of one. This simplified the code, and made
2575 the task of adding an extra, optional parameter to hit testing much easier.
2576 (WebCore::EventHandler::handleMousePressEvent):
2577 (WebCore::EventHandler::handleMouseDoubleClickEvent):
2578 (WebCore::EventHandler::handleMouseMoveEvent): Set the 'capturing' flag
2579 if the move occurs while the mouse is down. This replaces RenderLayer's
2580 heavy-handed assumption that we should always capture if the mouse is down.
2581 (WebCore::EventHandler::handleMouseReleaseEvent): Set the 'capturing'
2582 flag, since we assume every mouse up follows a mouse down inside the WebView.
2583 (We'd like to ASSERT as much, but DRT's event sending mechanism is crazy, and
2584 violates this axiom.)
2585 (WebCore::EventHandler::updateDragAndDrop):
2586 (WebCore::EventHandler::prepareMouseEvent):
2587 (WebCore::EventHandler::handleWheelEvent):
2588 (WebCore::EventHandler::sendContextMenuEvent):
2589 (WebCore::EventHandler::hoverTimerFired):
2590 * page/EventHandler.h:
2592 * rendering/HitTestRequest.h:
2593 (WebCore::HitTestRequest::HitTestRequest): Added 'capturing' data member,
2594 which specifies whether the hit test should capture mouse events that occur
2595 outside the WebView.
2597 * rendering/RenderLayer.cpp:
2598 (WebCore::RenderLayer::hitTestLayer): Moved misleading comment to where
2599 it actually applies. Changed 'active' test to new 'capturing' test, so
2600 the hit test requester can decide whether we need to capture mouse events
2601 that don't intersect any layer.
2603 2006-12-18 David Hyatt <hyatt@apple.com>
2605 Make sure a stroke style is set for list bullets.
2609 * rendering/RenderListMarker.cpp:
2610 (WebCore::RenderListMarker::paint):
2612 2006-12-18 Ada Chan <adachan@apple.com>
2616 Moved implementation of Frame::scheduleClose to Frame.cpp.
2617 Added canRunBeforeUnloadConfirmPanel, runBeforeUnloadConfirmPanel, and closeWindowSoon
2618 in Chrome and ChromeClient.
2621 * bridge/win/FrameWin.h:
2623 (WebCore::Chrome::canRunBeforeUnloadConfirmPanel):
2624 (WebCore::Chrome::runBeforeUnloadConfirmPanel):
2625 (WebCore::Chrome::closeWindowSoon):
2627 * page/ChromeClient.h:
2629 (WebCore::Frame::shouldClose):
2630 (WebCore::Frame::scheduleClose):
2632 * page/mac/FrameMac.h:
2633 * page/mac/FrameMac.mm:
2634 * page/mac/WebCoreFrameBridge.h:
2635 * platform/gdk/FrameGdk.h:
2636 * platform/gdk/TemporaryLinkStubs.cpp:
2637 (FrameGdk::issuePasteCommand):
2638 * platform/qt/FrameQt.cpp:
2639 * platform/qt/FrameQt.h:
2640 * platform/win/TemporaryLinkStubs.cpp:
2641 (WebCore::FrameWin::issuePasteCommand):
2643 2006-12-18 Alice Liu <alice.liu@apple.com>
2647 Fixed <rdar://problem/4766174> REGRESSION(r16081): Aspect eWFM: Unable to log in
2649 * loader/FrameLoader.cpp:
2650 (WebCore::FrameLoader::didExplicitOpen):
2652 2006-12-18 David Hyatt <hyatt@apple.com>
2654 Add save/restore calls around the painting of text areas on Mac, since the methods in question
2655 alter the current fill color in CG destructively.
2659 * rendering/RenderThemeMac.mm:
2660 (WebCore::RenderThemeMac::paintButton):
2661 (WebCore::RenderThemeMac::paintTextField):
2662 (WebCore::RenderThemeMac::paintTextArea):
2663 (WebCore::RenderThemeMac::paintSliderTrack):
2664 (WebCore::RenderThemeMac::paintSliderThumb):
2666 2006-12-18 David Hyatt <hyatt@apple.com>
2668 Fix list markers to properly stroke and fill. I screwed this up when changing how text draws.
2672 * rendering/RenderListMarker.cpp:
2673 (WebCore::RenderListMarker::paint):
2675 2006-12-18 David Hyatt <hyatt@apple.com>
2677 Eliminate the Pen object in favor of separate stroke variables, since most code just wants to set the
2678 stroke color. This also makes it easier for us to push only stroke color through into CG synchronously
2679 while leaving the others alone.
2683 * platform/graphics/GraphicsContext.cpp:
2684 (WebCore::GraphicsContextState::GraphicsContextState):
2685 (WebCore::GraphicsContext::setStrokeThickness):
2686 (WebCore::GraphicsContext::setStrokeStyle):
2687 (WebCore::GraphicsContext::setStrokeColor):
2688 (WebCore::GraphicsContext::strokeThickness):
2689 (WebCore::GraphicsContext::strokeStyle):
2690 (WebCore::GraphicsContext::strokeColor):
2691 (WebCore::GraphicsContext::setPlatformStrokeStyle):
2692 (WebCore::GraphicsContext::setPlatformStrokeThickness):
2693 * platform/graphics/GraphicsContext.h:
2695 * platform/graphics/cg/GraphicsContextCG.cpp:
2696 (WebCore::GraphicsContext::drawRect):
2697 (WebCore::GraphicsContext::drawLine):
2698 (WebCore::GraphicsContext::drawEllipse):
2699 (WebCore::GraphicsContext::drawArc):
2700 (WebCore::GraphicsContext::drawConvexPolygon):
2701 (WebCore::GraphicsContext::drawLineForText):
2702 (WebCore::GraphicsContext::setPlatformStrokeColor):
2703 * platform/graphics/qt/GraphicsContextQt.cpp:
2704 (WebCore::toQPenStyle):
2705 (WebCore::GraphicsContext::setPlatformStrokeColor):
2706 (WebCore::GraphicsContext::setPlatformStrokeStyle):
2707 (WebCore::GraphicsContext::setPlatformStrokeThickness):
2708 * platform/mac/FontMac.mm:
2709 (WebCore::Font::drawComplexText):
2710 (WebCore::Font::drawGlyphs):
2711 * rendering/InlineFlowBox.cpp:
2712 (WebCore::InlineFlowBox::paintDecorations):
2713 * rendering/InlineTextBox.cpp:
2714 (WebCore::updateTextColor):
2715 (WebCore::InlineTextBox::paint):
2716 (WebCore::InlineTextBox::paintDecoration):
2717 (WebCore::InlineTextBox::paintMarkedTextUnderline):
2718 * rendering/RenderBlock.cpp:
2719 (WebCore::RenderBlock::paintObject):
2720 * rendering/RenderBox.cpp:
2721 * rendering/RenderBox.h:
2722 * rendering/RenderFrameSet.cpp:
2723 (WebCore::RenderFrameSet::userResize):
2724 * rendering/RenderImage.cpp:
2725 (WebCore::RenderImage::paint):
2726 * rendering/RenderObject.cpp:
2727 (WebCore::RenderObject::drawBorderArc):
2728 (WebCore::RenderObject::drawBorder):
2729 * rendering/RenderTable.cpp:
2730 (WebCore::RenderTable::paint):
2731 * rendering/RenderTableCell.cpp:
2732 (WebCore::RenderTableCell::paint):
2733 * rendering/RenderText.cpp:
2734 * rendering/RenderThemeMac.mm:
2735 (WebCore::RenderThemeMac::paintMenuListButton):
2737 2006-12-18 Darin Adler <darin@apple.com>
2741 - fix <rdar://problem/4889565> REGRESSION (r17597): Command-clicking a submit
2742 button does not submit in a new tab/window
2743 http://bugs.webkit.org/show_bug.cgi?id=11858
2745 - change DOMActivate events to be created as a part of default handling of
2746 click events instead of having the sender of the click event also send
2749 - fixed some edge cases in the slider thumb element handler; since this is
2750 inside a shadow DOM, it's likely none of these can arise in practice
2752 No easy way to test the command-click part since the behavior is in Safari.
2753 To make a test we'd have to provide JavaScript access to the modifiers passed
2754 to the policy delegate or have some way to query the underlying event from
2757 * dom/EventTargetNode.cpp: Change all assert to ASSERT.
2758 (WebCore::EventTargetNode::dispatchMouseEvent): Renamed some local variables
2759 for clarity. Added a RefPtr for relatedTarget since it might be deallocated
2760 by the handlers for the click event and is used in the code that creates the
2761 dblclick event. Removed the code to create a DOMActivate event, since that's
2762 now done in the default event handler for the click event.
2763 (WebCore::EventTargetNode::defaultEventHandler): Added code to check for a
2764 click event and dispatch a DOMActivate event using the click event as the
2765 underlying event. The part of this that fixes the bug is that we use the
2766 click event as the underlying event; the old code used the same underlying
2767 event as for the click event, not the click event itself. The underlying event
2768 for the click event is usually 0, since we propagate the key state to the click
2769 event instead of using an underlying event in the common case.
2771 * dom/Document.cpp: (WebCore::Document::defaultEventHandler): Added call
2772 to the base class's defaultEventHandler function, except in the case where
2773 the event is already handled.
2775 * html/HTMLInputElement.h: Removed clickX() and clickY().
2776 * html/HTMLInputElement.cpp:
2777 (WebCore::HTMLInputElement::appendFormData): Use xPos and yPos directly,
2778 so we can remove clickX() and clickY().
2779 (WebCore::HTMLInputElement::defaultEventHandler): Removed code that calls
2780 setDefaultHandled for click events since we are just recording the x and y
2781 coordinates of the events; that's not "handling" an event, and setting
2782 the flag prevents us from calling the base class's default event handler,
2783 which is now needed to submmit the form.
2785 * rendering/RenderSlider.cpp:
2786 (WebCore::HTMLSliderThumbElement::defaultEventHandler):
2787 Added some missing isMouseEvent checks in code that casts to a MouseEvent.
2788 Added check document()->frame() in code that manipulates the frame so that
2789 fake events, which might happen when there's no frame, can't cause a crash.
2790 Added an m_inDragMode check so we don't try to handle mouseup events when
2791 we are not handling a drag. Remove the setDefaultHandled call from the
2792 mousemove case, because mousemove events are observed, and not "handled"
2793 in the "nobody else should look at this event" sense. Added a call to the
2794 base class's default event handler, and some return statements so that we
2795 won't call it when the event has been handled.
2797 * html/HTMLLabelElement.cpp: (WebCore::HTMLLabelElement::defaultEventHandler):
2798 Removed an unneeded "return" for a function that has no return value.
2800 2006-12-18 Beth Dakin <bdakin@apple.com>
2804 Fix for <rdar://problem/4749770> WebCore crashes on a blog website
2805 in WebCore::InlineBox::root() + 6
2807 We null-check inlineBoxWrapper everywhere else in the code except
2808 for these 3 spots. This patch adds them in. Only one of the checks
2809 is required to fix the crash. What we render for the test case now
2810 matches shipping Safari, but still seems wrong because we do not
2811 match Firefox. I will file a follow-up about the rendering problem.
2813 * rendering/RenderListItem.cpp:
2814 (WebCore::RenderListItem::positionListMarker): This is the required
2816 * rendering/RenderListMarker.cpp:
2817 (WebCore::RenderListMarker::setSelectionState): Null-check for
2819 (WebCore::RenderListMarker::selectionRect): Same.
2821 2006-12-18 David Hyatt <hyatt@apple.com>
2823 Fix performance regression caused by adding setting of stroke colors as well as fill colors to every font drawing
2824 call on Mac. Fix is rather involved:
2826 (1) Fill color is now updated in CG synchronously. There is no more delay in the push. I used the model that
2827 Qt added for this, setPlatformFillColor, so we're the same now.
2829 (2) Text was being drawn using the pen color, which is tantamount to using the stroke color. Since text in HTML
2830 is really a fill and not a stroke, all cross-platform code that draws text has been patched to use fill instead
2833 (3) Added a new API to GraphicsContext to set the text drawing mode to any combination of fill/stroke/clip.
2834 Ports should implement setPlatformTextDrawingMode or just query the mode in their drawGlyphs/drawComplexText
2835 method on their Font class to get the new functionality.
2837 (4) InlineTextBox will set the fill and stroke colors appropriately now rather than always assuming fill.
2839 (5) Fixed a bug in GraphicsContextCG where fillRectWithColor was updating the CG fill color in the state object
2840 as a side effect, creating a mismatch between CG's fill color and the stored cross-platform fill color.
2844 * platform/graphics/GraphicsContext.cpp:
2845 (WebCore::GraphicsContextState::GraphicsContextState):
2846 (WebCore::GraphicsContext::textDrawingMode):
2847 (WebCore::GraphicsContext::setTextDrawingMode):
2848 (WebCore::GraphicsContext::setPlatformTextDrawingMode):
2849 (WebCore::GraphicsContext::setPlatformPen):
2850 * platform/graphics/GraphicsContext.h:
2851 * platform/graphics/cg/GraphicsContextCG.cpp:
2852 (WebCore::GraphicsContext::fillRect):
2853 (WebCore::GraphicsContext::setPlatformTextDrawingMode):
2854 (WebCore::GraphicsContext::setPlatformFillColor):
2855 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
2856 (WebCore::SVGPaintServerGradient::teardown):
2857 (WebCore::SVGPaintServerGradient::setup):
2858 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
2859 (WebCore::SVGPaintServerPattern::setup):
2860 (WebCore::SVGPaintServerPattern::teardown):
2861 * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
2862 (WebCore::SVGPaintServerSolid::setup):
2863 * platform/mac/FontMac.mm:
2864 (WebCore::Font::drawComplexText):
2865 (WebCore::Font::drawGlyphs):
2866 * platform/mac/WebCoreTextRenderer.mm:
2867 (WebCoreDrawTextAtPoint):
2868 * rendering/EllipsisBox.cpp:
2869 (WebCore::EllipsisBox::paint):
2870 * rendering/InlineTextBox.cpp:
2871 (WebCore::correctedTextColor):
2872 (WebCore::updateTextColor):
2873 (WebCore::InlineTextBox::paint):
2874 (WebCore::InlineTextBox::paintSelection):
2875 (WebCore::InlineTextBox::paintMarkedTextBackground):
2876 (WebCore::InlineTextBox::paintTextMatchMarker):
2877 * rendering/RenderFileUploadControl.cpp:
2878 (WebCore::RenderFileUploadControl::paintObject):
2879 * rendering/RenderListBox.cpp:
2880 (WebCore::RenderListBox::paintItemForeground):
2881 * rendering/RenderListMarker.cpp:
2882 (WebCore::RenderListMarker::paint):
2884 2006-12-18 Dex Deacon <occupant4@gmail.com>
2888 Bug 11760: Animated GIFs with offsets crash WebKit
2889 http://bugs.webkit.org/show_bug.cgi?id=11760
2891 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2892 ensure we don't write past the end of the image buffer when the offset
2893 is nonzero. also fix the way we composite frames when animating.
2894 (WebCore::GIFImageDecoder::initFrameBuffer):
2895 (WebCore::GIFImageDecoder::haveDecodedRow):
2897 2006-12-18 Kirby White <KWhiteRight@gmail.com>
2901 Changed hidden input controls to reset to their initial values
2902 when the form is reset. Also added layout tests for resetting
2903 other input controls.
2905 Fixes http://bugs.webkit.org/show_bug.cgi?id=11866
2907 * html/HTMLInputElement.cpp:
2908 (WebCore::HTMLInputElement::setValue):
2909 (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
2911 2006-12-18 Alice Liu <alice.liu@apple.com>
2915 * editing/EditorDeleteAction.h: Added.
2918 2006-12-18 Alice Liu <alice.liu@apple.com>
2922 Have the Editor handle deletion instead of WebHTMLView
2925 Exposed Editor::deleteWithDirection and ::deleteRange()
2927 * WebCore.xcodeproj/project.pbxproj:
2928 Added EditorDeleteAction.h
2930 * editing/Editor.cpp:
2931 (WebCore::Editor::deleteRange):
2932 (WebCore::Editor::deleteWithDirection):
2935 (WebCore::Editor::deleteSelectionWithSmartDelete):
2936 Overloaded to take no params, in which case canSmartCopyOrDelete is called
2938 (WebCore::execCopy):
2940 (WebCore::execDelete):
2941 (WebCore::execPaste):
2942 Call the editor instead of asking frame to cut/copy/paste/delete
2944 (WebCore::execBackwardDelete):
2945 (WebCore::execForwardDelete):
2946 Call deleteWithDirection instead of just executing a TypingCommand
2948 (WebCore::CommandEntry::):
2949 distinguished delete (which deletes selection) from backwards delete (single character, no selection)
2951 (WebCore::Editor::cut):
2952 (WebCore::Editor::performDelete):
2956 Added some functons.
2957 (WebCore::Editor::setStartNewKillRingSequence):
2958 (WebCore::Editor::propogateDOMException):
2959 (WebCore::Editor::addToKillRing):
2960 * editing/mac/EditorMac.mm:
2961 Factored out support for Kill Rings to this file
2963 * platform/mac/PasteboardMac.mm:
2966 2006-12-18 Kevin McCullough <KMcCullough@apple.com>
2970 - Removed CG header include
2972 * platform/graphics/ImageSource.h:
2974 2006-12-18 John Sullivan <sullivan@apple.com>
2976 Reviewed by Tim Hatcher
2978 - fixed <rdar://problem/4887764> GMAIL: Crash occurs at WebCore::Range::cloneRange()
2979 when I ctrl-click in a empty list item
2981 * editing/mac/EditorMac.mm:
2982 (WebCore::isRangeUngrammatical):
2983 bail out immediately for nil range (which selectionController()->toRange().get()
2984 can return). Also save some work by bailing out immediately for collapsed ranges.
2986 2006-12-18 Alice Liu <alice.liu@apple.com>
2990 * platform/ContextMenu.cpp:
2991 (WebCore::ContextMenu::checkOrEnableIfNeeded):
2993 2006-12-17 Zack Rusin <zack@kde.org>
2995 Fix compilation after the const changes.
2997 * platform/qt/ContextMenuItemQt.cpp:
2998 (WebCore::ContextMenuItem::type):
2999 (WebCore::ContextMenuItem::setTitle):
3000 (WebCore::ContextMenuItem::setChecked):
3001 (WebCore::ContextMenuItem::setEnabled):
3003 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
3007 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10956
3009 Long standing regression. The old code in FontMac.mm, used set the fill/stroke
3010 color "[nsColor(graphicsContext->pen().color()) set];", and current code only
3011 sets the fill color. Reverting to old behaviour fixes gradient-on-stroke-of-text.
3013 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
3014 (WebCore::SVGPaintServerGradient::setup):
3015 * platform/mac/FontMac.mm:
3016 (WebCore::Font::drawComplexText):
3017 (WebCore::Font::drawGlyphs):
3019 2006-12-17 Lars Naesbye Christensen <lars@naesbye.dk>
3021 Reviewed, tweaked and landed by Alexey.
3023 http://bugs.webkit.org/show_bug.cgi?id=11798
3024 [CSS 3] missing cursor support for 'none'
3026 * Resources/noneCursor.png: Added.
3027 * WebCore.xcodeproj/project.pbxproj:
3028 * css/CSSComputedStyleDeclaration.cpp:
3029 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3030 * css/CSSValueKeywords.in:
3031 * css/cssparser.cpp: Also fixed previously broken -webkit-background-composite: copy.
3032 * manual-tests/cursor.html:
3033 * page/EventHandler.cpp:
3034 (WebCore::selectCursor):
3035 * platform/Cursor.h:
3036 * platform/gdk/CursorGdk.cpp:
3037 (WebCore::noneCursor):
3038 * platform/mac/CursorMac.mm:
3039 (WebCore::noneCursor):
3040 * platform/qt/CursorQt.cpp:
3041 (WebCore::noneCursor):
3042 * platform/win/CursorWin.cpp:
3043 (WebCore::noneCursor):
3044 * rendering/RenderStyle.h:
3047 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
3049 Build fix, not reviewed.
3051 This should hopefully fix Qt build.
3053 * ksvg2/svg/SVGLength.cpp: Include math.h for Qt/Linux build.
3055 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
3059 Remove SVGHelper class. Move the last static function "parseSeparatedList"
3060 to the only place using it: SVGAnimationElement. Update all build files.
3062 Remove any lazy_create macro usage, by what it does - cleaner.
3066 * WebCore.xcodeproj/project.pbxproj:
3067 * ksvg2/misc/KCanvasRenderingStyle.cpp:
3068 * ksvg2/svg/SVGAElement.cpp:
3069 * ksvg2/svg/SVGAnimationElement.cpp:
3070 (WebCore::parseSeparatedList):
3071 (WebCore::SVGAnimationElement::parseMappedAttribute):
3072 * ksvg2/svg/SVGCircleElement.cpp:
3073 * ksvg2/svg/SVGClipPathElement.cpp:
3074 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
3075 * ksvg2/svg/SVGCursorElement.cpp:
3076 * ksvg2/svg/SVGEllipseElement.cpp:
3077 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
3078 * ksvg2/svg/SVGFEBlendElement.cpp:
3079 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
3080 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
3081 * ksvg2/svg/SVGFECompositeElement.cpp:
3082 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
3083 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
3084 * ksvg2/svg/SVGFEFloodElement.cpp:
3085 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
3086 * ksvg2/svg/SVGFEImageElement.cpp:
3087 * ksvg2/svg/SVGFELightElement.cpp:
3088 * ksvg2/svg/SVGFEMergeElement.cpp:
3089 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
3090 * ksvg2/svg/SVGFEOffsetElement.cpp:
3091 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
3092 * ksvg2/svg/SVGFETileElement.cpp:
3093 * ksvg2/svg/SVGFilterElement.cpp:
3094 * ksvg2/svg/SVGForeignObjectElement.cpp:
3095 * ksvg2/svg/SVGGradientElement.cpp:
3096 * ksvg2/svg/SVGHelper.cpp: Removed.
3097 * ksvg2/svg/SVGHelper.h: Removed.
3098 * ksvg2/svg/SVGImageElement.cpp:
3099 * ksvg2/svg/SVGLength.cpp:
3100 * ksvg2/svg/SVGLineElement.cpp:
3101 * ksvg2/svg/SVGLinearGradientElement.cpp:
3102 * ksvg2/svg/SVGMarkerElement.cpp:
3103 * ksvg2/svg/SVGMaskElement.cpp:
3104 * ksvg2/svg/SVGPathElement.cpp:
3105 * ksvg2/svg/SVGPatternElement.cpp:
3106 * ksvg2/svg/SVGPolyElement.cpp:
3107 * ksvg2/svg/SVGRadialGradientElement.cpp:
3108 * ksvg2/svg/SVGRectElement.cpp:
3109 * ksvg2/svg/SVGStopElement.cpp:
3110 * ksvg2/svg/SVGStyledElement.cpp:
3111 * ksvg2/svg/SVGStyledTransformableElement.cpp:
3112 * ksvg2/svg/SVGSymbolElement.cpp:
3113 * ksvg2/svg/SVGTests.cpp:
3114 * ksvg2/svg/SVGTextContentElement.cpp:
3115 * ksvg2/svg/SVGTextElement.cpp:
3116 * ksvg2/svg/SVGTextPositioningElement.cpp:
3117 * ksvg2/svg/SVGTransformable.cpp:
3118 * ksvg2/svg/SVGURIReference.cpp:
3119 * ksvg2/svg/SVGUseElement.cpp:
3120 * ksvg2/svg/SVGViewElement.cpp:
3121 * ksvg2/svg/SVGZoomAndPan.cpp:
3123 2006-12-17 Nikolas Zimmermann <zimmermann@kde.org>
3127 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11813
3129 Pass SVGLength around by value, remove any SVGLength* usage.
3130 Bindings work fine, as the SVG POD JS Wrapper stuff is already in svn.
3132 No new regressions, none fixed. But the code itself is much cleaner.
3133 And some problems with width-full-percentage.svg have been fixed, viewport
3134 clipping works in any case now, also for percentual width/height values set on <svg>.
3136 * bindings/scripts/CodeGenerator.pm:
3137 * bindings/scripts/CodeGeneratorJS.pm:
3138 * ksvg2/misc/KCanvasRenderingStyle.cpp:
3139 (WebCore::KSVGPainterFactory::cssPrimitiveToLength):
3140 * ksvg2/svg/SVGAnimatedTemplate.h:
3141 * ksvg2/svg/SVGCircleElement.cpp:
3142 (WebCore::SVGCircleElement::SVGCircleElement):
3143 (WebCore::SVGCircleElement::parseMappedAttribute):
3144 (WebCore::SVGCircleElement::toPathData):
3145 * ksvg2/svg/SVGCircleElement.h:
3146 * ksvg2/svg/SVGCursorElement.cpp:
3147 (WebCore::SVGCursorElement::SVGCursorElement):
3148 (WebCore::SVGCursorElement::parseMappedAttribute):
3149 * ksvg2/svg/SVGCursorElement.h:
3150 * ksvg2/svg/SVGElement.cpp:
3151 * ksvg2/svg/SVGEllipseElement.cpp:
3152 (WebCore::SVGEllipseElement::SVGEllipseElement):
3153 (WebCore::SVGEllipseElement::parseMappedAttribute):
3154 (WebCore::SVGEllipseElement::toPathData):
3155 * ksvg2/svg/SVGEllipseElement.h:
3156 * ksvg2/svg/SVGFilterElement.cpp:
3157 (WebCore::SVGFilterElement::SVGFilterElement):
3158 (WebCore::SVGFilterElement::parseMappedAttribute):
3159 (WebCore::SVGFilterElement::canvasResource):
3160 * ksvg2/svg/SVGFilterElement.h:
3161 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
3162 (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
3163 (WebCore::SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
3164 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
3165 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
3166 * ksvg2/svg/SVGFitToViewBox.cpp:
3167 (WebCore::SVGFitToViewBox::parseViewBox):
3168 * ksvg2/svg/SVGForeignObjectElement.cpp:
3169 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
3170 (WebCore::SVGForeignObjectElement::parseMappedAttribute):
3171 (WebCore::SVGForeignObjectElement::createRenderer):
3172 (WebCore::SVGForeignObjectElement::childShouldCreateRenderer):
3173 * ksvg2/svg/SVGForeignObjectElement.h:
3174 * ksvg2/svg/SVGHelper.cpp:
3175 (WebCore::SVGHelper::parseSeparatedList):
3176 * ksvg2/svg/SVGHelper.h:
3177 * ksvg2/svg/SVGImageElement.cpp:
3178 (WebCore::SVGImageElement::SVGImageElement):
3179 (WebCore::SVGImageElement::parseMappedAttribute):
3180 * ksvg2/svg/SVGImageElement.h:
3181 * ksvg2/svg/SVGLength.cpp:
3182 (WebCore::storeUnit):
3183 (WebCore::extractMode):
3184 (WebCore::extractType):
3185 (WebCore::lengthTypeToString):
3186 (WebCore::stringToLengthType):
3187 (WebCore::SVGLength::SVGLength):
3188 (WebCore::SVGLength::unitType):
3189 (WebCore::SVGLength::value):
3190 (WebCore::SVGLength::setValue):
3191 (WebCore::SVGLength::setValueInSpecifiedUnits):
3192 (WebCore::SVGLength::setValueAsString):
3193 (WebCore::SVGLength::valueAsString):
3194 (WebCore::SVGLength::newValueSpecifiedUnits):
3195 (WebCore::SVGLength::convertToSpecifiedUnits):
3196 (WebCore::SVGLength::isFraction):
3197 (WebCore::SVGLength::dpi):
3198 (WebCore::SVGLength::PercentageOfViewport):
3199 * ksvg2/svg/SVGLength.h:
3201 (WebCore::SVGLength::):
3202 * ksvg2/svg/SVGLength.idl:
3203 * ksvg2/svg/SVGLengthList.cpp:
3204 (WebCore::SVGLengthList::SVGLengthList):
3205 (WebCore::SVGLengthList::parse):
3206 * ksvg2/svg/SVGLengthList.h:
3207 * ksvg2/svg/SVGLineElement.cpp:
3208 (WebCore::SVGLineElement::SVGLineElement):
3209 (WebCore::SVGLineElement::parseMappedAttribute):
3210 (WebCore::SVGLineElement::toPathData):
3211 * ksvg2/svg/SVGLineElement.h:
3212 * ksvg2/svg/SVGLinearGradientElement.cpp:
3213 (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
3214 (WebCore::SVGLinearGradientElement::parseMappedAttribute):
3215 (WebCore::SVGLinearGradientElement::buildGradient):
3216 * ksvg2/svg/SVGLinearGradientElement.h:
3217 * ksvg2/svg/SVGMarkerElement.cpp:
3218 (WebCore::SVGMarkerElement::SVGMarkerElement):
3219 (WebCore::SVGMarkerElement::parseMappedAttribute):
3220 (WebCore::SVGMarkerElement::canvasResource):
3221 * ksvg2/svg/SVGMarkerElement.h:
3222 * ksvg2/svg/SVGMaskElement.cpp:
3223 (WebCore::SVGMaskElement::SVGMaskElement):
3224 (WebCore::SVGMaskElement::attributeChanged):
3225 (WebCore::SVGMaskElement::parseMappedAttribute):
3226 (WebCore::SVGMaskElement::drawMaskerContent):
3227 * ksvg2/svg/SVGMaskElement.h:
3228 * ksvg2/svg/SVGPatternElement.cpp:
3229 (WebCore::SVGPatternElement::SVGPatternElement):
3230 (WebCore::SVGPatternElement::parseMappedAttribute):
3231 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
3232 (WebCore::SVGPatternElement::notifyAttributeChange):
3233 (WebCore::SVGPatternElement::getCTM):
3234 * ksvg2/svg/SVGPatternElement.h:
3235 * ksvg2/svg/SVGRadialGradientElement.cpp:
3236 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
3237 (WebCore::SVGRadialGradientElement::parseMappedAttribute):
3238 (WebCore::SVGRadialGradientElement::buildGradient):
3239 * ksvg2/svg/SVGRadialGradientElement.h:
3240 * ksvg2/svg/SVGRectElement.cpp:
3241 (WebCore::SVGRectElement::SVGRectElement):
3242 (WebCore::SVGRectElement::parseMappedAttribute):
3243 (WebCore::SVGRectElement::toPathData):
3244 * ksvg2/svg/SVGRectElement.h:
3245 * ksvg2/svg/SVGSVGElement.cpp:
3246 (WebCore::SVGSVGElement::SVGSVGElement):
3247 (WebCore::SVGSVGElement::viewport):
3248 (WebCore::SVGSVGElement::parseMappedAttribute):
3249 (WebCore::SVGSVGElement::createSVGLength):
3250 (WebCore::SVGSVGElement::getCTM):
3251 (WebCore::SVGSVGElement::getScreenCTM):
3252 * ksvg2/svg/SVGSVGElement.h:
3253 * ksvg2/svg/SVGStyledElement.cpp:
3254 * ksvg2/svg/SVGStyledElement.h:
3255 * ksvg2/svg/SVGTextContentElement.cpp:
3256 (WebCore::SVGTextContentElement::SVGTextContentElement):
3257 (WebCore::SVGTextContentElement::parseMappedAttribute):
3258 * ksvg2/svg/SVGTextContentElement.h:
3259 * ksvg2/svg/SVGTextElement.cpp:
3260 * ksvg2/svg/SVGTextPositioningElement.cpp:
3261 (WebCore::SVGTextPositioningElement::parseMappedAttribute):
3262 * ksvg2/svg/SVGUseElement.cpp:
3263 (WebCore::SVGUseElement::SVGUseElement):
3264 (WebCore::SVGUseElement::parseMappedAttribute):
3265 (WebCore::SVGUseElement::closeRenderer):
3266 * ksvg2/svg/SVGUseElement.h:
3267 * page/EventHandler.cpp:
3268 (WebCore::selectCursor):
3269 * rendering/RenderForeignObject.cpp:
3270 (WebCore::RenderForeignObject::translationForAttributes):
3271 * rendering/RenderPath.cpp:
3272 * rendering/RenderPath.h:
3273 * rendering/RenderSVGContainer.cpp:
3274 (WebCore::RenderSVGContainer::layout):
3275 (WebCore::RenderSVGContainer::calcViewport):
3276 * rendering/RenderSVGImage.cpp:
3277 (WebCore::RenderSVGImage::relativeBBox):
3278 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
3279 (WebCore::RenderSVGImage::translationForAttributes):
3280 * rendering/RenderSVGText.cpp:
3281 (WebCore::RenderSVGText::layout):
3282 * rendering/SVGInlineFlowBox.cpp:
3283 (WebCore::translateBox):
3284 (WebCore::placePositionedBoxesHorizontally):
3285 (WebCore::placeBoxesVerticallyWithAbsBaseline):
3287 2006-12-16 Sam Weinig <sam@webkit.org>
3291 Patch for http://bugs.webkit.org/show_bug.cgi?id=11856
3292 Update renderName() methods to return current class names.
3294 * rendering/RenderPath.h:
3295 (WebCore::RenderPath::renderName): Returns "RenderPath" instead of "KCanvasItem".
3296 * rendering/RenderSVGContainer.h:
3297 (WebCore::RenderSVGContainer::renderName): Returns "RenderSVGContainer" instead of "KCanvasContainer".
3298 * rendering/RenderTextControl.h:
3299 (WebCore::RenderTextControl::renderName): Returns "RenderTextControl" instead of "RenderTextField".
3301 2006-12-16 Sam Weinig <sam@webkit.org>
3305 Patch for http://bugs.webkit.org/show_bug.cgi?id=11844
3306 Code Cleanup for more of the rendering code
3308 * WebCore.xcodeproj/project.pbxproj:
3309 * rendering/RenderCounter.cpp:
3310 (WebCore::RenderCounter::calcMinMaxWidth):
3311 * rendering/RenderText.cpp:
3312 (WebCore::RenderText::RenderText):
3313 (WebCore::RenderText::setStyle):
3314 (WebCore::RenderText::destroy):
3315 (WebCore::RenderText::attachTextBox):
3316 (WebCore::RenderText::findNextInlineTextBox):
3317 (WebCore::RenderText::positionForCoordinates):
3318 (WebCore::firstRendererOnNextLine):
3319 (WebCore::lastRendererOnPrevLine):
3320 (WebCore::RenderText::caretRect):
3321 (WebCore::RenderText::posOfChar):
3322 (WebCore::RenderText::allAscii):
3323 (WebCore::RenderText::shouldUseMonospaceCache):
3324 (WebCore::RenderText::cacheWidths):
3325 (WebCore::RenderText::widthFromCache):
3326 (WebCore::RenderText::trimmedMinMaxWidth):
3327 (WebCore::RenderText::calcMinMaxWidth):
3328 (WebCore::isSpaceAccordingToStyle):
3329 (WebCore::RenderText::containsOnlyWhitespace):
3330 (WebCore::RenderText::minXPos):
3331 (WebCore::RenderText::setSelectionState):
3332 (WebCore::RenderText::setTextWithOffset):
3333 (WebCore::RenderText::setText):
3334 (WebCore::RenderText::position):
3335 (WebCore::RenderText::width):
3336 (WebCore::RenderText::getAbsoluteRepaintRect):
3337 (WebCore::RenderText::selectionRect):
3338 (WebCore::RenderText::verticalPositionHint):
3339 (WebCore::RenderText::font):
3340 (WebCore::RenderText::caretMinOffset):
3341 (WebCore::RenderText::caretMaxOffset):
3342 (WebCore::RenderText::previousOffset):
3343 (WebCore::RenderText::nextOffset):
3344 (WebCore::RenderText::inlineBox):
3345 * rendering/RenderText.h:
3346 (WebCore::RenderText::isTextFragment):
3347 (WebCore::RenderText::data):
3348 (WebCore::RenderText::string):
3349 (WebCore::RenderText::paint):
3350 (WebCore::RenderText::layout):
3351 (WebCore::RenderText::nodeAtPoint):
3352 (WebCore::RenderText::length):
3353 (WebCore::RenderText::text):
3354 (WebCore::RenderText::stringLength):
3355 * rendering/RenderTextControl.cpp:
3356 (WebCore::RenderTextControl::setStyle):
3357 (WebCore::disabledTextColor):
3358 (WebCore::RenderTextControl::createInnerBlockStyle):
3359 (WebCore::RenderTextControl::createInnerTextStyle):
3360 (WebCore::RenderTextControl::createResultsButtonStyle):
3361 (WebCore::RenderTextControl::createCancelButtonStyle):
3362 (WebCore::RenderTextControl::showPlaceholderIfNeeded):
3363 (WebCore::RenderTextControl::hidePlaceholderIfNeeded):
3364 (WebCore::RenderTextControl::createSubtreeIfNeeded):
3365 (WebCore::RenderTextControl::updateFromElement):
3366 (WebCore::RenderTextControl::selectionStart):
3367 (WebCore::RenderTextControl::setSelectionRange):
3368 (WebCore::RenderTextControl::visiblePositionForIndex):
3369 (WebCore::RenderTextControl::subtreeHasChanged):
3370 (WebCore::RenderTextControl::textWithHardLineBreaks):
3371 (WebCore::RenderTextControl::calcHeight):
3372 (WebCore::RenderTextControl::nodeAtPoint):
3373 (WebCore::RenderTextControl::layout):
3374 (WebCore::RenderTextControl::calcMinMaxWidth):
3375 (WebCore::RenderTextControl::addSearchResult):
3376 (WebCore::RenderTextControl::showPopup):
3377 (WebCore::RenderTextControl::itemText):
3378 (WebCore::RenderTextControl::itemIsEnabled):
3379 (WebCore::RenderTextControl::listSize):
3380 (WebCore::RenderTextControl::scroll):
3381 * rendering/RenderTextControl.h:
3382 (WebCore::RenderTextControl::renderName):
3383 (WebCore::RenderTextControl::removeLeftoverAnonymousBoxes):
3384 * rendering/RenderTextFragment.cpp:
3385 (WebCore::RenderTextFragment::RenderTextFragment):
3386 (WebCore::RenderTextFragment::originalString):
3387 * rendering/RenderTextFragment.h:
3388 (WebCore::RenderTextFragment::isTextFragment):
3389 * rendering/RenderTheme.cpp:
3390 (WebCore::RenderTheme::adjustStyle):
3391 (WebCore::RenderTheme::isControlStyled):
3392 (WebCore::RenderTheme::stateChanged):
3393 (WebCore::RenderTheme::adjustCheckboxStyle):
3394 (WebCore::RenderTheme::adjustRadioStyle):
3395 * rendering/RenderTheme.h:
3397 * rendering/RenderThemeMac.h:
3398 * rendering/RenderThemeMac.mm:
3399 (WebCore::RenderThemeMac::RenderThemeMac):
3400 (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
3401 (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
3402 (WebCore::RenderThemeMac::activeListBoxSelectionBackgroundColor):
3403 (WebCore::RenderThemeMac::systemFont):
3404 (WebCore::RenderThemeMac::isControlStyled):
3405 (WebCore::RenderThemeMac::adjustRepaintRect):
3406 (WebCore::RenderThemeMac::updateCheckedState):
3407 (WebCore::RenderThemeMac::controlSupportsTints):
3408 (WebCore::RenderThemeMac::setFontFromControlSize):
3409 (WebCore::RenderThemeMac::paintCheckbox):
3410 (WebCore::RenderThemeMac::checkboxMargins):
3411 (WebCore::RenderThemeMac::setCheckboxCellState):
3412 (WebCore::RenderThemeMac::setCheckboxSize):
3413 (WebCore::RenderThemeMac::paintRadio):
3414 (WebCore::RenderThemeMac::radioMargins):
3415 (WebCore::RenderThemeMac::setRadioCellState):
3416 (WebCore::RenderThemeMac::setRadioSize):
3417 (WebCore::RenderThemeMac::adjustButtonStyle):
3418 (WebCore::RenderThemeMac::buttonMargins):
3419 (WebCore::RenderThemeMac::setButtonSize):
3420 (WebCore::RenderThemeMac::setButtonCellState):
3421 (WebCore::RenderThemeMac::adjustTextFieldStyle):
3422 (WebCore::RenderThemeMac::adjustTextAreaStyle):
3423 (WebCore::RenderThemeMac::popupButtonMargins):
3424 (WebCore::RenderThemeMac::popupButtonPadding):
3425 (WebCore::TopGradientInterpolate):
3426 (WebCore::BottomGradientInterpolate):
3427 (WebCore::MainGradientInterpolate):
3428 (WebCore::TrackGradientInterpolate):
3429 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
3430 (WebCore::RenderThemeMac::paintMenuListButton):
3431 (WebCore::RenderThemeMac::adjustMenuListStyle):
3432 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
3433 (WebCore::RenderThemeMac::paintSliderTrack):
3434 (WebCore::RenderThemeMac::paintSliderThumb):
3435 (WebCore::RenderThemeMac::paintSearchField):
3436 (WebCore::RenderThemeMac::setSearchCellState):
3437 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
3438 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
3439 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
3440 * rendering/RenderTreeAsText.cpp:
3441 (WebCore::operator<<):
3442 (WebCore::writeIndent):
3443 (WebCore::printBorderStyle):
3444 (WebCore::getTagName):
3445 (WebCore::isEmptyOrUnstyledAppleStyleSpan):
3446 (WebCore::writeTextRun):
3448 (WebCore::writeLayers):
3449 (WebCore::nodePosition):
3450 (WebCore::writeSelection):
3451 * rendering/RenderTreeAsText.h:
3452 * rendering/RenderView.cpp:
3453 (WebCore::RenderView::RenderView):
3454 (WebCore::RenderView::calcMinMaxWidth):
3455 (WebCore::RenderView::layout):
3456 (WebCore::RenderView::absolutePosition):
3457 (WebCore::RenderView::paint):
3458 (WebCore::RenderView::repaintViewRectangle):
3459 (WebCore::rendererAfterPosition):
3460 (WebCore::RenderView::selectionRect):
3461 (WebCore::RenderView::setSelection):
3462 (WebCore::RenderView::selectionStartEnd):
3463 (WebCore::RenderView::updateWidgetPositions):
3464 (WebCore::RenderView::addWidget):
3465 (WebCore::RenderView::removeWidget):
3466 (WebCore::RenderView::viewRect):
3467 (WebCore::RenderView::docHeight):
3468 (WebCore::RenderView::docWidth):
3469 (WebCore::RenderView::setBestTruncatedAt):
3470 * rendering/RenderView.h:
3471 (WebCore::RenderView::renderName):
3472 (WebCore::RenderView::selectionStart):
3473 (WebCore::RenderView::selectionEnd):
3474 * rendering/RenderWidget.cpp:
3475 (WebCore::RenderWidget::destroy):
3476 (WebCore::RenderWidget::resizeWidget):
3477 (WebCore::RenderWidget::setStyle):
3478 (WebCore::RenderWidget::paint):
3479 (WebCore::RenderWidget::updateWidgetPosition):
3480 (WebCore::RenderWidget::setSelectionState):
3481 * rendering/RootInlineBox.cpp:
3482 (WebCore::RootInlineBox::placeEllipsis):
3483 (WebCore::RootInlineBox::fillLineSelectionGap):
3484 (WebCore::RootInlineBox::selectionState):
3485 (WebCore::RootInlineBox::firstSelectedBox):
3486 (WebCore::RootInlineBox::lastSelectedBox):
3487 (WebCore::RootInlineBox::selectionTop):
3488 (WebCore::RootInlineBox::closestLeafChildForXPos):
3489 * rendering/RootInlineBox.h:
3490 (WebCore::RootInlineBox::isRootInlineBox):
3491 (WebCore::RootInlineBox::setVerticalOverflowPositions):
3492 (WebCore::RootInlineBox::setHorizontalOverflowPositions):
3493 (WebCore::RootInlineBox::setVerticalSelectionPositions):
3494 (WebCore::RootInlineBox::lineBreakObj):
3495 (WebCore::RootInlineBox::lineBreakPos):
3496 (WebCore::RootInlineBox::setLineBreakPos):
3497 (WebCore::RootInlineBox::blockHeight):
3498 (WebCore::RootInlineBox::setBlockHeight):
3499 (WebCore::RootInlineBox::endsWithBreak):
3500 (WebCore::RootInlineBox::setEndsWithBreak):
3501 * rendering/SVGInlineFlowBox.cpp:
3502 (WebCore::SVGInlineFlowBox::paint):
3503 (WebCore::paintSVGInlineFlow):
3504 (WebCore::translateBox):
3505 (WebCore::placePositionedBoxesHorizontally):
3506 (WebCore::placeBoxesVerticallyWithAbsBaseline):
3507 (WebCore::placeSVGFlowVertically):
3508 * rendering/SVGInlineFlowBox.h:
3509 * rendering/SVGRenderTreeAsText.cpp:
3510 (WebCore::TextStreamSeparator::TextStreamSeparator):
3511 (WebCore::operator<<):
3512 (WebCore::hasFractions):
3513 (WebCore::writeIndent):
3514 (WebCore::writeStyle):
3515 (WebCore::getTagName):
3517 (WebCore::writeRenderResources):
3518 * rendering/SVGRenderTreeAsText.h:
3519 (WebCore::operator<<):
3520 * rendering/SVGRootInlineBox.cpp:
3521 (WebCore::SVGRootInlineBox::paint):
3522 (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
3523 * rendering/SVGRootInlineBox.h:
3524 * rendering/TableLayout.h:
3526 2006-12-16 Adam Roben <aroben@apple.com>
3530 * platform/ContextMenuItem.h: Fixed const declarations.
3531 * platform/mac/ContextMenuItemMac.mm: Dito.
3532 (WebCore::ContextMenuItem::type):
3533 (WebCore::ContextMenuItem::setTitle):
3534 (WebCore::ContextMenuItem::setChecked):
3535 (WebCore::ContextMenuItem::setEnabled):
3537 2006-12-16 Adele Peterson <adele@apple.com>
3541 Fix for http://bugs.webkit.org/show_bug.cgi?id=11189
3542 <rdar://problem/4770249> REGRESSION (NativeListBox): When a list box has focus, pressing command- A (select all) doesn't selected all items in list
3544 Test: fast/forms/listbox-select-all.html
3546 * dom/Node.h: We should try to find a more appropriate place to put these methods.
3547 (WebCore::Node::canSelectAll): Added.
3548 (WebCore::Node::selectAll): Added.
3549 * editing/SelectionController.cpp: (WebCore::SelectionController::selectAll): Before selecting editable content, give the focused node
3550 a chance to select its content.
3551 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::selectAll): Selects all items in a multi-select list box. Single-select
3552 list boxes will just do nothing, but we still want the select to handle this case when it has focus, rather than selecting other content.
3553 * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::canSelectAll): Returns true for list boxes.
3555 2006-12-16 Zack Rusin <zack@kde.org>
3557 Add a stub for SearchPopupMenu for Qt code.
3559 * platform/qt/SearchPopupMenuQt.cpp: Added.
3560 (WebCore::SearchPopupMenu::SearchPopupMenu):
3561 (WebCore::SearchPopupMenu::saveRecentSearches):
3562 (WebCore::SearchPopupMenu::loadRecentSearches):
3564 2006-12-16 Zack Rusin <zack@kde.org>
3566 Make it compile after last nights changes.
3569 * loader/qt/DocumentLoaderQt.cpp:
3570 (WebCore::DocumentLoader::stopLoading):
3571 (WebCore::DocumentLoader::prepareForLoadStart):
3572 * platform/qt/ContextMenuItemQt.cpp:
3573 (WebCore::ContextMenuItem::ContextMenuItem):
3574 (WebCore::ContextMenuItem::releasePlatformDescription):
3575 (WebCore::ContextMenuItem::type):
3576 (WebCore::ContextMenuItem::setType):
3577 (WebCore::ContextMenuItem::action):
3578 (WebCore::ContextMenuItem::setAction):
3579 (WebCore::ContextMenuItem::setTitle):
3580 (WebCore::ContextMenuItem::platformSubMenu):
3581 (WebCore::ContextMenuItem::setSubMenu):
3582 (WebCore::ContextMenuItem::setChecked):
3583 (WebCore::ContextMenuItem::setEnabled):
3584 * platform/qt/ContextMenuQt.cpp:
3585 (WebCore::ContextMenu::appendItem):
3586 (WebCore::ContextMenu::insertItem):
3587 * platform/qt/TemporaryLinkStubs.cpp:
3589 2006-12-16 Adele Peterson <adele@apple.com>
3593 * editing/ReplaceSelectionCommand.cpp:
3594 (WebCore::ReplacementFragment::ReplacementFragment):
3596 2006-12-16 Adele Peterson <adele@apple.com>
3598 Missed one instance of isNonWidgetTextField.
3600 * editing/DeleteSelectionCommand.cpp:
3601 (WebCore::DeleteSelectionCommand::doApply):
3603 2006-12-16 Hunter L. Williams <hlwebkit@gmail.com>
3607 Fix mouse wheel scrolling in <textarea> controls.
3609 * rendering/RenderTextControl.cpp:
3610 * rendering/RenderTextControl.h:
3611 Override |scroll| on RenderTextControl to forward the call to the RenderObject of the
3612 inner m_innerText, which has a layer that can be scrolled.
3614 2006-12-16 Adele Peterson <adele@apple.com>
3618 Removed RenderLineEdit, TextField, WebCoreTextField classes, and use of isNonWidgetTextField,
3620 * WebCore.xcodeproj/project.pbxproj:
3621 * html/HTMLInputElement.cpp:
3622 (WebCore::HTMLInputElement::isKeyboardFocusable):
3623 (WebCore::HTMLInputElement::isMouseFocusable):
3624 (WebCore::HTMLInputElement::focus):
3625 (WebCore::HTMLInputElement::updateFocusAppearance):
3626 (WebCore::HTMLInputElement::aboutToUnload):
3627 (WebCore::HTMLInputElement::dispatchFocusEvent):
3628 (WebCore::HTMLInputElement::dispatchBlurEvent):
3629 (WebCore::HTMLInputElement::setValue):
3630 (WebCore::HTMLInputElement::defaultEventHandler):
3631 * html/HTMLInputElement.h:
3632 (WebCore::HTMLInputElement::isTextField):
3633 * html/HTMLTextFieldInnerElement.cpp:
3634 (WebCore::HTMLTextFieldInnerTextElement::defaultEventHandler):
3635 * platform/TextField.h: Removed.
3636 * platform/mac/TextFieldMac.mm: Removed.
3637 * platform/mac/WebCoreTextField.h: Removed.
3638 * platform/mac/WebCoreTextField.mm: Removed.
3639 * rendering/RenderLineEdit.cpp: Removed.
3640 * rendering/RenderLineEdit.h: Removed.
3642 2006-12-16 Adele Peterson <adele@apple.com>
3644 Two more files I forgot to svn add for search fields.
3646 * platform/SearchPopupMenu.h: Added.
3647 (WebCore::SearchPopupMenu::create):
3648 * platform/mac/SearchPopupMenuMac.mm: Added.
3649 (WebCore::SearchPopupMenu::SearchPopupMenu):
3650 (WebCore::autosaveKey):
3651 (WebCore::SearchPopupMenu::saveRecentSearches):
3652 (WebCore::SearchPopupMenu::loadRecentSearches):
3654 2006-12-16 Adele Peterson <adele@apple.com>
3658 * platform/PopupMenuClient.h: Added. Broken out of PopupMenu class.
3659 (WebCore::PopupMenuClient::~PopupMenuClient):
3661 2006-12-16 Adele Peterson <adele@apple.com>
3665 WebCore part of fix for:
3666 <rdar://problem/4463829> Switch to use new search field implementation for <input type="search">
3668 * WebCore.xcodeproj/project.pbxproj: Added SearchPopupMenu.h, SearchPopupMenuMac.mm, and PopupMenuClient.h.
3670 Added pseudo classes and corresponding values for -webkit appearance for the cancel button and for the three types of "decoration" that
3671 correspond to the different functions of the magnifier glass in the search field. One for the button that will show and hide the
3672 recent searches menu. One for decoration when the results attribute is set, but no results are saved. And one for decoration
3673 when no results attribute is set. We added these different pseudo elements so that RenderTextControl can decide which pseudo class
3674 is appropriate, and each theme can decide for itself which kind of image is appropriate for each function.
3676 * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
3677 * css/CSSSelector.h: (WebCore::CSSSelector::): Added to PseudoType enum.
3678 * css/CSSValueKeywords.in: Added searchfield-decoration, searchfield-results-decoration, searchfield-results-button, searchfield-cancel-button values.
3679 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::checkOneSelector): Added cases for -webkit-search-cancel-button,
3680 -webkit-search-decoration, -webkit-search-results-decoration, -webkit-search-results-button
3681 * rendering/RenderStyle.cpp: Addes new pseudoBits for matching pseudoIds.
3683 (WebCore::pseudoBit):
3684 * rendering/RenderStyle.h: Added new appearance values and pseudoIds.
3686 (WebCore::RenderStyle::):
3687 * css/html4.css: Added style for input[type=search], and the new pseudo elements.
3689 The structure of the shadow DOM for new search field adds an intermediate block that contains 3 inline-blocks for the magnifier, text element, and cancel button.
3690 Since the tree has become deeper, some editing and event code that used to check for a shadowParent, really needs to check the shadowAncestorNode.
3692 * editing/Editor.cpp: (WebCore::Editor::dispatchCPPEvent): Check shadowAncestorNode instead of shadowParentNode.
3693 * editing/Selection.cpp: (WebCore::Selection::adjustForEditableContent): ditto.
3694 * editing/htmlediting.cpp:
3695 (WebCore::firstEditablePositionAfterPositionInRoot): ditto.
3696 (WebCore::lastEditablePositionBeforePositionInRoot): ditto.
3697 * editing/ReplaceSelectionCommand.cpp:
3698 (WebCore::ReplacementFragment::ReplacementFragment): ditto.
3699 (WebCore::ReplaceSelectionCommand::shouldMerge): Nil check enclosingBlock call. I ran into this while testing search fields in mixed editability.
3700 (WebCore::ReplaceSelectionCommand::doApply): ditto.
3702 * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::submit): Remove use of RenderLineEdit.
3703 * html/HTMLInputElement.cpp:
3704 (WebCore::HTMLInputElement::selectionStart): ditto.
3705 (WebCore::HTMLInputElement::selectionEnd): ditto.
3706 (WebCore::HTMLInputElement::setSelectionStart): ditto.
3707 (WebCore::HTMLInputElement::setSelectionEnd): ditto.
3708 (WebCore::HTMLInputElement::select): ditto.
3709 (WebCore::HTMLInputElement::setSelectionRange): ditto.
3710 (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
3711 (WebCore::HTMLInputElement::createRenderer): ditto.
3712 (WebCore::HTMLInputElement::defaultEventHandler): ditto.
3713 (WebCore::HTMLInputElement::addSearchResult): Added. Calls addSearchResult on the renderer.
3714 * html/HTMLInputElement.h:
3715 (WebCore::HTMLInputElement::isNonWidgetTextField): Added case for search field.
3716 (WebCore::HTMLInputElement::isSearchField): Added.
3718 * platform/PopupMenu.h: Broke PopupMenuClient out into a separate file.
3719 * platform/PopupMenuClient.h: Added.
3720 (WebCore::PopupMenuClient::~PopupMenuClient):
3721 * platform/graphics/Icon.h:
3723 * platform/SearchPopupMenu.h: Added. Saves and loads recent search vector.
3724 (WebCore::SearchPopupMenu::create):
3725 * platform/mac/SearchPopupMenuMac.mm: Added.
3726 (WebCore::SearchPopupMenu::SearchPopupMenu):
3727 (WebCore::autosaveKey):
3728 (WebCore::SearchPopupMenu::saveRecentSearches):
3729 (WebCore::SearchPopupMenu::loadRecentSearches):
3731 * html/HTMLTextFieldInnerElement.h: Reorganized this class.
3732 Added subclasses HTMLTextFieldInnerTextElement, HTMLSearchFieldResultsButtonElement, HTMLSearchFieldCancelButtonElement
3733 (WebCore::HTMLTextFieldInnerElement::isMouseFocusable): Added. Returns false so setFocusNodeIfNeeded
3734 will try to focus the input element instead of nodes in the shadow tree.
3735 (WebCore::HTMLTextFieldInnerElement::isShadowNode): Now returns whether or not a shadowParent has been specified.
3736 * html/HTMLTextFieldInnerElement.cpp:
3737 (WebCore::HTMLTextFieldInnerTextElement::HTMLTextFieldInnerTextElement):
3738 (WebCore::HTMLTextFieldInnerTextElement::defaultEventHandler): Moved this from the old HTMLTextFieldInnerElement class.
3739 (WebCore::HTMLSearchFieldResultsButtonElement::HTMLSearchFieldResultsButtonElement):
3740 (WebCore::HTMLSearchFieldResultsButtonElement::defaultEventHandler): Shows and hides recent searches menu.
3741 (WebCore::HTMLSearchFieldCancelButtonElement::HTMLSearchFieldCancelButtonElement):
3742 (WebCore::HTMLSearchFieldCancelButtonElement::defaultEventHandler): On mouse up, clears the value from the text field.
3744 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::listSize): Changed return type to unsigned.
3745 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::valueShouldChangeOnHotTrack): Added.
3747 * WebCore.exp: Export _wkDrawTextFieldCellFocusRing.
3748 * platform/mac/WebCoreSystemInterface.h: Added wkDrawTextFieldCellFocusRing
3749 * platform/mac/WebCoreSystemInterface.mm: ditto.
3751 * rendering/RenderTextControl.h:
3752 (WebCore::RenderTextControl::popupIsVisible): Added so HTMLSearchFieldResultsButtonElement knows whether or not the menu is already up.
3753 (WebCore::RenderTextControl::shouldPopOver): Added as a PopupClient method so the results menu shows up under the control instead of over.
3754 (WebCore::RenderTextControl::valueShouldChangeOnHotTrack):
3755 * rendering/RenderTextControl.cpp:
3756 (WebCore::RenderTextControl::RenderTextControl): Initialize m_placeholderIsVisible, m_searchPopup, and m_searchPopupIsVisible.
3757 (WebCore::RenderTextControl::~RenderTextControl): Detach the node at the top of the shadow tree (m_innerBlock for search fields, and m_innerText for other text controls).
3758 (WebCore::RenderTextControl::setStyle): Sets style on new elements.
3759 (WebCore::disabledTextColor): Added so this can be used in setPlaceholder.
3760 (WebCore::RenderTextControl::createInnerBlockStyle): Added.
3761 (WebCore::RenderTextControl::createInnerTextStyle): Added.
3762 (WebCore::RenderTextControl::createResultsButtonStyle): Added.
3763 (WebCore::RenderTextControl::createCancelButtonStyle): Added.
3764 (WebCore::RenderTextControl::showPlaceholderIfNeeded): Added. Shows the placeholder if there's no value and the field doesn't have focus.
3765 (WebCore::RenderTextControl::hidePlaceholderIfNeeded): Added. Clears the placeholder if there's a value or the field has focus.
3766 (WebCore::RenderTextControl::createSubtreeIfNeeded): Added. Creates all of the shadow tree elements.
3767 (WebCore::RenderTextControl::updateFromElement): Calls showPlaceholderIfNeeded.
3768 (WebCore::RenderTextControl::visiblePositionForIndex): Renaming (m_div to m_innerText).
3769 (WebCore::RenderTextControl::indexForVisiblePosition): ditto.
3770 (WebCore::RenderTextControl::updateCancelButtonVisibility): Shows and hides cancel button based on the value of the control.
3771 (WebCore::RenderTextControl::subtreeHasChanged): Fires onSearch if the incremental attribute is set.
3772 (WebCore::RenderTextControl::text): Renaming.
3773 (WebCore::RenderTextControl::textWithHardLineBreaks): ditto.
3774 (WebCore::RenderTextControl::calcHeight): Take the size of the results button and cancel button into account when calculating height.
3775 (WebCore::RenderTextControl::nodeAtPoint): Act as if we've hit the shadow tree elements based on the x coordinate of the mouse event.
3776 (WebCore::RenderTextControl::layout): Set the height and width of the text block taking the other shadow tree elements into account.
3777 (WebCore::RenderTextControl::calcMinMaxWidth): Take new shadow tree elements into account when calculating width.
3778 (WebCore::RenderTextControl::forwardEvent): Forward events to appropriate shadow nodes.
3779 (WebCore::RenderTextControl::scrollWidth): Renaming.
3780 (WebCore::RenderTextControl::scrollHeight): ditto.
3781 (WebCore::RenderTextControl::scrollLeft): ditto.
3782 (WebCore::RenderTextControl::scrollTop): ditto.
3783 (WebCore::RenderTextControl::setScrollLeft): ditto.
3784 (WebCore::RenderTextControl::setScrollTop): ditto.
3785 (WebCore::RenderTextControl::autosaveName): ditto.
3786 (WebCore::RenderTextControl::addSearchResult): Added. Saves value to search result list.
3787 (WebCore::RenderTextControl::onSearch): Added. Dispatches search event.
3788 (WebCore::RenderTextControl::showPopup): Added. Loads searches, and displays menu.
3789 (WebCore::RenderTextControl::hidePopup): Added PopupClient method.
3790 (WebCore::RenderTextControl::valueChanged): Added PopupClient method. Interprets the selected menu item index, and either sets the value and
3791 fires onSearch, or clears all recent searches for this autosave name.
3792 (WebCore::RenderTextControl::itemText): Added PopupClient method.
3793 (WebCore::RenderTextControl::itemIsEnabled): Added PopupClient method.
3794 (WebCore::RenderTextControl::itemStyle): ditto.
3795 (WebCore::RenderTextControl::clientStyle): ditto.
3796 (WebCore::RenderTextControl::clientDocument): ditto.
3797 (WebCore::RenderTextControl::clientPaddingLeft): ditto.
3798 (WebCore::RenderTextControl::clientPaddingRight): ditto.
3799 (WebCore::RenderTextControl::listSize): ditto.
3800 (WebCore::RenderTextControl::selectedIndex): ditto.
3801 (WebCore::RenderTextControl::itemIsSeparator): ditto.
3802 (WebCore::RenderTextControl::itemIsLabel): ditto.
3803 (WebCore::RenderTextControl::itemIsSelected): ditto.
3804 (WebCore::RenderTextControl::setTextFromItem): ditto.
3806 * rendering/RenderTheme.cpp: Added search field theme.
3807 (WebCore::RenderTheme::adjustStyle):
3808 (WebCore::RenderTheme::paint):
3809 (WebCore::RenderTheme::paintBorderOnly):
3810 (WebCore::RenderTheme::paintDecorations):
3811 (WebCore::RenderTheme::isControlStyled): Returns false for search fields, until we've worked out the kinks.
3812 (WebCore::RenderTheme::adjustSearchFieldStyle):
3813 (WebCore::RenderTheme::adjustSearchFieldCancelButtonStyle):
3814 (WebCore::RenderTheme::adjustSearchFieldDecorationStyle):
3815 (WebCore::RenderTheme::adjustSearchFieldResultsDecorationStyle):
3816 (WebCore::RenderTheme::adjustSearchFieldResultsButtonStyle):
3817 * rendering/RenderTheme.h:
3818 (WebCore::RenderTheme::paintSearchField):
3819 (WebCore::RenderTheme::paintSearchFieldCancelButton):
3820 (WebCore::RenderTheme::paintSearchFieldDecoration):
3821 (WebCore::RenderTheme::paintSearchFieldResultsDecoration):
3822 (WebCore::RenderTheme::paintSearchFieldResultsButton):
3823 * rendering/RenderThemeMac.h:
3824 * rendering/RenderThemeMac.mm:
3825 (WebCore::RenderThemeMac::RenderThemeMac):
3826 (WebCore::RenderThemeMac::sizeForSystemFont): Added. Compares style's font to systemFontSizeForControlSize to determine
3827 what controlSize to use after a style's font has already been initially adjusted.
3828 (WebCore::RenderThemeMac::controlSizeForSystemFont): Added. ditto.
3829 (WebCore::RenderThemeMac::paintCheckbox):
3830 (WebCore::RenderThemeMac::paintRadio):
3831 (WebCore::RenderThemeMac::menuListSizes):
3832 (WebCore::RenderThemeMac::minimumMenuListSize): Uses sizeForSystemFont instead of hardcoded adjusted font sizes.
3833 (WebCore::RenderThemeMac::paintSearchField):
3834 (WebCore::RenderThemeMac::setSearchCellState):
3835 (WebCore::RenderThemeMac::adjustSearchFieldStyle):
3836 (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
3837 (WebCore::RenderThemeMac::cancelButtonSizes):
3838 (WebCore::RenderThemeMac::adjustSearchFieldCancelButtonStyle):
3839 (WebCore::RenderThemeMac::resultsButtonSizes):
3840 (WebCore::RenderThemeMac::adjustSearchFieldDecorationStyle):
3841 (WebCore::RenderThemeMac::paintSearchFieldDecoration):
3842 (WebCore::RenderThemeMac::adjustSearchFieldResultsDecorationStyle):
3843 (WebCore::RenderThemeMac::paintSearchFieldResultsDecoration):
3844 (WebCore::RenderThemeMac::adjustSearchFieldResultsButtonStyle):
3845 (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
3847 2006-12-16 Beth Dakin <bdakin@apple.com>
3849 Reviewed by Adam (and partially Geoff).
3851 Primarily, this patch gives WebCore context menus the ability to
3852 enable/disable and set state. It does a few other things along the
3853 way, though. Some of the more noticeable things:
3854 -Re-architects the ContextMenuItem class a bit so that the
3855 ownership model is a bit less confusing. ContextMenuItem is
3856 now *purely* a wrapper for the platformDescription. There
3857 are no other member variables. If you ever need the
3858 platformDescription outside of the MenuItem class, you have
3859 to call releasePlatformDescription(), which transfers
3860 ownership of the platformDescription to the caller.
3861 -Moves fontForSelection() from FrameMac into Editor.cpp.
3862 Turns out I don't need to use this function for my patch
3863 after all, but it doesn't seem like a terrible idea to move
3864 it anyway since we seem to be moving things from FrameMac
3865 into Editor these days anyway.
3868 * editing/Editor.cpp:
3869 (WebCore::Editor::fontForSelection): Moved in from FrameMac.
3870 * editing/Editor.h: Same, and name change.
3871 * editing/mac/EditorMac.mm: Name change.
3872 * page/ContextMenuClient.h: contextMenuItemSelected() has to take a
3873 pointer to the parent context menu since ContextMenuItem no longer
3875 * page/ContextMenuController.cpp: Same.
3876 (WebCore::ContextMenuController::contextMenuItemSelected): Same.
3877 * page/mac/FrameMac.h: Move fontForSelection to Editor
3878 * page/mac/FrameMac.mm: Same.
3879 * page/mac/WebCoreFrameBridge.mm:
3880 (-[WebCoreFrameBridge fontForSelection:]): Account for above.
3881 * platform/ContextMenu.cpp:
3882 (WebCore::separatorItem): Can't be const because appendItem now
3883 expects a non-const menu item.
3884 (WebCore::createAndAppendFontSubMenu): Change name for clarity.
3885 (WebCore::createAndAppendSpellingAndGrammarSubMenu): Same.
3886 (WebCore::createAndAppendSpellingSubMenu): Same.
3887 (WebCore::createAndAppendSpeechSubMenu): Same.
3888 (WebCore::createAndAppendWritingDirectionSubMenu): Same.
3889 (WebCore::ContextMenu::populate): Account for above.
3890 (WebCore::triStateToBool): New helper.
3891 (WebCore::ContextMenu::checkOrEnableIfNeeded): Transfers
3892 logic from WebHTMLView into WebCore to determine if menu items are
3893 enabled or disabled and to determine if they require a check.
3894 * platform/ContextMenu.h:
3895 * platform/ContextMenuItem.h: Re-factored stuff so that our only
3896 member variable is the platform description.
3897 (WebCore::): Get rid of if-def.
3898 * platform/cf/RetainPtr.h: Add releaseRef like in PassRefPtr.
3899 (WebCore::RetainPtr::releaseRef):
3900 * platform/mac/ContextMenuItemMac.mm: Same as .h
3901 (WebCore::ContextMenuItem::ContextMenuItem): Same.
3902 (WebCore::ContextMenuItem::releasePlatformDescription): Same.
3903 (WebCore::ContextMenuItem::type): Same.
3904 (WebCore::ContextMenuItem::platformSubMenu): Same.
3905 (WebCore::ContextMenuItem::setType): Same.
3906 (WebCore::ContextMenuItem::setTitle): Same.
3907 (WebCore::ContextMenuItem::setSubMenu): Same.
3908 (WebCore::ContextMenuItem::setChecked): Same.
3909 (WebCore::ContextMenuItem::setEnabled): Same.
3910 * platform/mac/ContextMenuMac.mm:
3911 (-[WebCoreMenuTarget forwardContextMenuAction:]): Don't set the
3913 (WebCore::setMenuItemTarget):
3914 (WebCore::ContextMenu::appendItem): Call releasePlatformDescription
3915 (WebCore::ContextMenu::insertItem): Same.
3917 2006-12-15 MorganL <morganl.webkit@yahoo.com>
3921 Allow images to load into frames again. Tidy up code a bit and
3922 add some much needed documentation.
3924 * platform/MimeTypeRegistry.cpp:
3925 (WebCore::initialiseSupportedImageMIMETypes):
3926 (WebCore::initialiseSupportedNonImageMimeTypes):
3927 * platform/MimeTypeRegistry.h:
3929 2006-12-15 Anders Carlsson <acarlsson@apple.com>
3933 * loader/DocumentLoader.cpp:
3934 (WebCore::DocumentLoader::response):
3935 (WebCore::DocumentLoader::setResponse):
3936 (WebCore::DocumentLoader::isStopping):
3937 (WebCore::DocumentLoader::mainDocumentError):
3938 * loader/DocumentLoader.h:
3940 2006-12-15 Anders Carlsson <acarlsson@apple.com>
3944 More loader cleanup.
3946 * loader/DocumentLoader.h:
3947 (WebCore::DocumentLoader::isStopping):
3948 (WebCore::DocumentLoader::response):
3949 (WebCore::DocumentLoader::mainDocumentError):
3950 (WebCore::DocumentLoader::setResponse):
3951 * loader/FrameLoader.h:
3952 * loader/FrameLoaderClient.h:
3953 * loader/mac/DocumentLoaderMac.mm:
3954 (WebCore::DocumentLoader::DocumentLoader):
3955 (WebCore::DocumentLoader::stopLoading):
3956 (WebCore::DocumentLoader::receivedData):
3957 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
3958 (WebCore::DocumentLoader::prepareForLoadStart):
3959 * loader/mac/FrameLoaderMac.mm:
3960 (WebCore::FrameLoader::commitProvisionalLoad):
3961 (WebCore::FrameLoader::setResponse):
3962 * loader/mac/ImageDocumentMac.mm:
3963 (WebCore::finishImageLoad):
3965 2006-12-15 Anders Carlsson <acarlsson@apple.com>
3967 * loader/DocumentLoader.h:
3968 Whoops, didn't mean to commit this.
3970 2006-12-15 Anders Carlsson <acarlsson@apple.com>
3972 Reviewed by Darin and Brady (in no particular order).
3974 More loader cleanup.
3976 * loader/FrameLoader.h:
3977 * loader/mac/FrameLoaderMac.mm:
3978 (WebCore::FrameLoader::cancelledError):
3979 (WebCore::FrameLoader::fileDoesNotExistError):
3980 (WebCore::FrameLoader::cannotShowMIMEType):
3981 (WebCore::FrameLoader::interruptionForPolicyChangeError):
3982 * loader/mac/MainResourceLoaderMac.mm:
3983 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
3985 2006-12-16 Alexey Proskuryakov <ap@webkit.org>
3987 Try to fix Windows buid.
3989 * WebCore.vcproj/WebCore/WebCore.vcproj: Added EventTarget.{h,cpp}
3991 2006-12-15 Alexey Proskuryakov <ap@webkit.org>
3995 http://bugs.webkit.org/show_bug.cgi?id=11610
3996 XMLHttpRequest.onreadystatechange doesn't provide access to the request object
3998 Created a separate EventTarget class, now that EventTargetNode isn't the only kind.
4000 Test: http/tests/xmlhttprequest/event-target.html
4002 * WebCore.xcodeproj/project.pbxproj: Added EventTarget.{h,cpp}
4004 * bindings/js/kjs_dom.cpp:
4005 (KJS::toJS): Added an EventTarget variant.
4006 * bindings/js/kjs_dom.h: Added toJS() for EventTarget; some minor style fixes.
4008 * bindings/objc/DOM.mm:
4009 (+[DOMNode _eventTargetWith:WebCore::]):
4010 * bindings/scripts/CodeGeneratorObjC.pm:
4011 Added an EventTarget->DOMEventTarget converter in DOMNode (WebCoreInternal).
4012 It only works for nodes, since we don't have an ObjC binding for XMLHttpRequest.
4013 Corrected spelling of internalHeaderContent.
4016 (WebCore::Event::setTarget):
4018 (WebCore::Event::target):
4019 (WebCore::Event::currentTarget):
4020 (WebCore::Event::setCurrentTarget):
4021 These methods now work with EventTargets instead of Nodes.
4023 * dom/EventTarget.cpp: Added.
4024 (WebCore::EventTarget::~EventTarget):
4025 (WebCore::EventTarget::toNode):
4026 (WebCore::EventTarget::toXMLHttpRequest):
4027 * dom/EventTarget.h: Added.
4028 (WebCore::EventTarget::ref):
4029 (WebCore::EventTarget::deref):
4030 Originally, my intention was to share much of the implementation between
4031 EventTargetNode and XHR, but now I don't see anything substantial worth sharing.
4033 * dom/EventTargetNode.cpp:
4034 (WebCore::EventTargetNode::dispatchGenericEvent): Cast Node to EventTargetNode.
4036 * dom/EventTargetNode.h: Made EventTarget methods virtual.
4037 (WebCore::EventTargetNode::toNode): Added poor man's RTTI to upcast from EventTarget.
4038 (WebCore::EventTargetNode::refEventTarget):
4039 (WebCore::EventTargetNode::derefEventTarget):
4041 * dom/MouseEvent.cpp:
4042 (WebCore::MouseEvent::toElement):
4043 (WebCore::MouseEvent::fromElement):
4044 * dom/MouseRelatedEvent.cpp:
4045 (WebCore::MouseRelatedEvent::receivedTarget):
4046 * html/HTMLAnchorElement.cpp:
4047 (WebCore::HTMLAnchorElement::defaultEventHandler):
4048 * html/HTMLLabelElement.cpp:
4049 (WebCore::HTMLLabelElement::defaultEventHandler):
4050 * page/ContextMenuController.cpp:
4051 (WebCore::ContextMenuController::handleContextMenuEvent):
4052 * rendering/RenderSlider.cpp:
4053 (WebCore::RenderSlider::mouseEventIsInThumb):
4054 Cast from EventTarget to Node as appropriate.
4056 * xml/xmlhttprequest.cpp:
4057 (WebCore::XMLHttpRequest::dispatchEvent):
4058 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
4059 Set target and currentTarget before dispatching.
4061 * xml/xmlhttprequest.h: Made EventTarget methods virtual, added a bool tempEvent parameter
4062 to match EventTargetNode.
4063 (WebCore::XMLHttpRequest::toXMLHttpRequest): Added poor man's RTTI to upcast from EventTarget.
4064 (WebCore::XMLHttpRequest::refEventTarget):
4065 (WebCore::XMLHttpRequest::derefEventTarget):
4067 2006-12-15 Anders Carlsson <acarlsson@apple.com>
4071 More loader cleanup, use KURL instead of NSURL in a couple of places.
4073 * loader/DocumentLoader.h:
4074 * loader/FrameLoader.h:
4075 * loader/FrameLoaderClient.h:
4076 * loader/ResourceLoader.h:
4077 * loader/mac/DocumentLoaderMac.mm:
4078 (WebCore::DocumentLoader::DocumentLoader):
4079 (WebCore::DocumentLoader::prepareForLoadStart):
4080 * loader/mac/FrameLoaderMac.mm:
4081 (WebCore::FrameLoader::willUseArchive):
4082 * loader/mac/ResourceLoaderMac.mm:
4083 (WebCore::ResourceLoader::load):
4085 2006-12-15 Marvin Decker <marv.decker@gmail.com>
4087 Reviewed by Darin and Alexey.
4089 Fix the Windows build, move various Client implementations out of
4090 WebCore and into WebKit.
4092 * WebCore.vcproj/WebCore/WebCore.vcproj:
4093 * bridge/win/ChromeClientWin.h: Removed.
4094 * bridge/win/ContextMenuClientWin.h: Removed.
4095 * bridge/win/EditorClientWin.h: Removed.
4096 * bridge/win/FrameWin.cpp:
4097 (WebCore::FrameWin::FrameWin):
4098 * bridge/win/FrameWin.h:
4099 * loader/win/FrameLoaderClientWin.cpp: Removed.
4100 * loader/win/FrameLoaderClientWin.h: Removed.
4101 * platform/network/win/ResourceHandleWin.cpp:
4102 (WebCore::ResourceHandle::start):
4103 * platform/win/TemporaryLinkStubs.cpp:
4104 (WebCore::DocumentLoader::URL):
4105 (WebCore::FrameLoader::load):
4106 (WebCore::FrameLoader::createFrame):
4107 (WebCore::FrameLoader::loadResourceSynchronously):
4108 (WebCore::Pasteboard::writeSelection):
4109 (WebCore::Pasteboard::writeURL):
4110 (WebCore::Pasteboard::clear):
4111 (WebCore::Pasteboard::~Pasteboard):
4112 (WebCore::PolicyCheck::call):
4113 (WebCore::PopupMenu::PopupMenu):
4114 (WebCore::ResourceHandle::loadsBlocked):
4115 (WebCore::ResourceLoader::cancel):
4117 2006-12-15 Anders Carlsson <acarlsson@apple.com>
4121 http://bugs.webkit.org/show_bug.cgi?id=11842
4122 REGRESSION: Using Safari's snippet editor leaves applewebdata: URLs in history
4124 * loader/mac/DocumentLoaderMac.mm:
4125 (WebCore::DocumentLoader::URLForHistory):
4126 Don't return appleweburls without an unreachable url.
4128 2006-12-15 Anders Carlsson <acarlsson@apple.com>
4132 Replace more instances of NSError with ResourceError.
4134 Also remove a check for a selector that was added pre-Tiger.
4137 * loader/DocumentLoader.h:
4138 * loader/FrameLoader.h:
4139 * loader/ResourceLoader.h:
4140 * loader/mac/DocumentLoaderMac.mm:
4141 (WebCore::DocumentLoader::setMainDocumentError):
4142 (WebCore::DocumentLoader::mainDocumentError):
4143 (WebCore::DocumentLoader::clearErrors):
4144 (WebCore::DocumentLoader::mainReceivedError):
4145 * loader/mac/FrameLoaderMac.mm:
4146 (WebCore::FrameLoader::cancelMainResourceLoad):
4147 (WebCore::FrameLoader::opened):
4148 (WebCore::FrameLoader::mainReceivedError):
4149 (WebCore::FrameLoader::cancelledError):
4150 (WebCore::FrameLoader::fileDoesNotExistError):
4151 (WebCore::FrameLoader::handleUnimplementablePolicy):
4152 (WebCore::FrameLoader::setMainDocumentError):
4153 (WebCore::FrameLoader::mainReceivedCompleteError):
4154 (WebCore::FrameLoader::sendRemainingDelegateMessages):
4155 (WebCore::FrameLoader::requestFromDelegate):
4156 (WebCore::FrameLoader::loadedResourceFromMemoryCache):
4157 (WebCore::FrameLoader::loadResourceSynchronously):
4158 * loader/mac/ResourceLoaderMac.mm:
4159 (WebCore::ResourceLoader::willSendRequest):
4160 (WebCore::ResourceLoader::didCancel):
4161 (WebCore::ResourceLoader::cancel):
4162 (WebCore::ResourceLoader::cancelledError):
4163 * loader/mac/SubresourceLoaderMac.mm:
4164 (WebCore::SubresourceLoader::didCancel):
4166 2006-12-15 Rob Buis <buis@kde.org>
4170 http://bugs.webkit.org/show_bug.cgi?id=11824
4171 CSSStyleSheet.title property is always null
4173 Set title on the stylesheet just after creating it, for the HTML
4174 elements <link> and <style>.
4177 (WebCore::StyleSheet::setTitle):
4179 (WebCore::Element::title):
4181 * dom/StyleElement.cpp:
4182 (WebCore::StyleElement::childrenChanged):
4183 * dom/StyleElement.h:
4184 * html/HTMLElement.cpp:
4185 * html/HTMLElement.h:
4186 * html/HTMLLinkElement.cpp:
4187 (WebCore::HTMLLinkElement::parseMappedAttribute):
4188 (WebCore::HTMLLinkElement::setCSSStyleSheet):
4189 * html/HTMLStyleElement.cpp:
4190 (WebCore::HTMLStyleElement::parseMappedAttribute):
4191 * ksvg2/svg/SVGStyleElement.cpp:
4192 (WebCore::SVGStyleElement::setTitle):
4193 (WebCore::SVGStyleElement::parseMappedAttribute):
4194 * ksvg2/svg/SVGStyleElement.h:
4196 2006-12-15 Lars Knoll <lars@trolltech.com>
4202 * loader/SubresourceLoader.h:
4203 * platform/qt/PopupMenuQt.cpp:
4204 (WebCore::PopupMenu::PopupMenu):
4206 2006-12-14 Anders Carlsson <acarlsson@apple.com>
4210 Use char* pointer + length instead of NSData in a bunch of places.
4212 * loader/DocumentLoader.h:
4213 * loader/FrameLoader.h:
4214 * loader/FrameLoaderClient.h:
4215 * loader/MainResourceLoader.h:
4216 * loader/NetscapePlugInStreamLoader.h:
4217 * loader/ResourceLoader.h:
4218 (WebCore::ResourceLoader::willStopBufferingData):
4219 * loader/SubresourceLoader.h:
4220 * loader/mac/DocumentLoaderMac.mm:
4221 (WebCore::DocumentLoader::commitLoad):
4222 (WebCore::DocumentLoader::receivedData):
4223 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
4224 * loader/mac/FrameLoaderMac.mm:
4225 (WebCore::FrameLoader::didReceiveData):
4226 (WebCore::FrameLoader::receivedData):
4227 (WebCore::FrameLoader::committedLoad):
4228 * loader/mac/MainResourceLoaderMac.mm:
4229 (WebCore::MainResourceLoader::addData):
4230 (WebCore::MainResourceLoader::didReceiveData):
4231 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
4232 (WebCore::NetscapePlugInStreamLoader::didReceiveData):
4233 * loader/mac/ResourceLoaderMac.mm:
4234 (WebCore::ResourceLoader::addData):
4235 (WebCore::ResourceLoader::didReceiveData):
4236 (WebCore::ResourceLoader::willStopBufferingData):
4237 * loader/mac/SubresourceLoaderMac.mm:
4238 (WebCore::SubresourceLoader::didReceiveData):
4239 * platform/network/ResourceHandleClient.h:
4240 (WebCore::ResourceHandleClient::willStopBufferingData):
4241 * platform/network/mac/ResourceHandleMac.mm:
4242 (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
4244 2006-12-14 Adele Peterson <adele@apple.com>
4248 Added PopupMenuClient class so the PopupMenu class no longer needs to know
4249 about the RenderMenuList or the DOM.
4251 * platform/PopupMenu.h:
4252 (WebCore::PopupMenuClient::~PopupMenuClient):
4253 (WebCore::PopupMenu::create): Made this protected so PopupMenu can be subclassed.
4254 (WebCore::PopupMenu::disconnectClient): Renamed from disconnectMenuList.
4255 (WebCore::PopupMenu::client): Added.
4256 * platform/mac/PopupMenuMac.mm:
4257 (WebCore::PopupMenu::PopupMenu): Created using PopupMenuClient instead of RenderMenuList.
4258 (WebCore::PopupMenu::populate): Asks the client for info about the list items instead of looking at the DOM or the renderer.
4259 (WebCore::PopupMenu::show): ditto.
4260 (WebCore::PopupMenu::hide): ditto.
4261 * rendering/RenderMenuList.h: Now also inherits from PopupMenuClient.
4262 (WebCore::RenderMenuList::shouldPopOver): Added. Tells the popup whether the menu should pop over the client, or under.
4263 * rendering/RenderMenuList.cpp:
4264 (WebCore::RenderMenuList::~RenderMenuList): Calls disconnectClient().
4265 (WebCore::RenderMenuList::calcMinMaxWidth): Removed unnecessary (and harmful) call to updateFromElement. updateFromElmeent
4266 can add children, and you don't want to do that in the middle of calculating width.
4267 (WebCore::RenderMenuList::itemText): Added PopupClient method to provide information about the items in the menu list.
4268 (WebCore::RenderMenuList::itemIsEnabled): ditto.
4269 (WebCore::RenderMenuList::itemStyle): ditto.
4270 (WebCore::RenderMenuList::clientStyle): ditto.
4271 (WebCore::RenderMenuList::clientDocument): ditto.
4272 (WebCore::RenderMenuList::clientPaddingLeft): ditto.
4273 (WebCore::RenderMenuList::clientPaddingRight): ditto.
4274 (WebCore::RenderMenuList::listSize): ditto.
4275 (WebCore::RenderMenuList::selectedIndex): ditto.
4276 (WebCore::RenderMenuList::itemIsSeparator): ditto.
4277 (WebCore::RenderMenuList::itemIsLabel): ditto.
4278 (WebCore::RenderMenuList::itemIsSelected): ditto.
4279 (WebCore::RenderMenuList::setTextFromItem): ditto.
4281 2006-12-14 Geoffrey Garen <ggaren@apple.com>
4283 Fixed <rdar://problem/4882713> GMAIL (REGRESSION): Can't apply font style,
4284 foreground or background to selected text
4286 Also <rdar://problem/4883751> REGRESSION: Caret fails to insert itself
4287 automatically in a new note window
4289 I'm rolling out my change to move focus to the page level because it caused
4290 too many unexpected and bizarre regressions. Our code relies on focus
4291 being per-document so that it can make focus changes that are effectively
4292 no-ops, and so that it can conflate focus and selection in some cases (a bad
4293 idea, since they're not the same).
4295 Hopefully we can revisit this, along with hover and active, in the future.
4298 (WebCore::widgetForNode):
4299 (WebCore::relinquishesEditingFocus):
4300 (WebCore::acceptsEditingFocus):
4301 (WebCore::clearSelectionIfNeeded):
4302 (WebCore::Document::removedLastRef):
4303 (WebCore::Document::detach):
4304 (WebCore::Document::focusedNodeDetached):
4305 (WebCore::Document::setFocusedNode):
4307 (WebCore::Document::focusedNode):
4308 * page/FocusController.cpp:
4309 * page/FocusController.h:
4311 2006-12-14 Maciej Stachowiak <mjs@apple.com>
4315 - fix failing drag & drop layout tests
4317 * platform/mac/KURLMac.mm:
4318 (WebCore::KURL::getNSURL): Turn empty KURL into empty NSURL, but null KURL into
4321 2006-12-14 Steve Falkenburg <sfalken@apple.com>
4325 * loader/MainResourceLoader.h:
4327 2006-12-14 Anders Carlsson <acarlsson@apple.com>
4331 Convert a bunch of NSErrors to ResourceError.
4333 Make the ResourceError accessor functions const.
4336 * WebCore.xcodeproj/project.pbxproj:
4337 * loader/FrameLoader.h:
4338 * loader/FrameLoaderClient.h:
4339 * loader/MainResourceLoader.h:
4340 * loader/NetscapePlugInStreamLoader.h:
4341 * loader/ResourceLoader.h:
4342 * loader/SubresourceLoader.h:
4343 * loader/mac/FrameLoaderMac.mm:
4344 (WebCore::FrameLoader::didFailToLoad):
4345 (WebCore::FrameLoader::receivedMainResourceError):
4346 (WebCore::FrameLoader::interruptionForPolicyChangeError):
4347 * loader/mac/MainResourceLoaderMac.mm:
4348 (WebCore::MainResourceLoader::receivedError):
4349 (WebCore::MainResourceLoader::didCancel):
4350 (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
4351 (WebCore::MainResourceLoader::didFail):
4352 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
4353 (WebCore::NetscapePlugInStreamLoader::didFail):
4354 (WebCore::NetscapePlugInStreamLoader::didCancel):
4355 * loader/mac/ResourceLoaderMac.mm:
4356 (WebCore::ResourceLoader::didFail):
4357 (WebCore::ResourceLoader::didCancel):
4358 * loader/mac/SubresourceLoaderMac.mm:
4359 (WebCore::SubresourceLoader::didFail):
4360 (WebCore::SubresourceLoader::didCancel):
4361 * platform/network/ResourceError.h:
4362 (WebCore::ResourceError::domain):
4363 (WebCore::ResourceError::errorCode):
4364 (WebCore::ResourceError::failingURL):
4365 (WebCore::ResourceError::localizedDescription):
4366 (WebCore::ResourceError::unpackPlatformErrorIfNeeded):
4368 2006-12-14 George Staikos <staikos@kde.org>
4370 Link, after the last loader changes. Please update this directory with stubs when modifying the loader.
4372 * loader/qt/FrameLoaderQt.cpp:
4373 (WebCore::FrameLoader::loadResourceSynchronously):
4375 2006-12-14 Justin Garcia <justin.garcia@apple.com>
4377 Reviewed by harrison
4379 <rdar://problem/4866671>
4380 CrashTracer: 1 crashes in Mail after deleting a list item at WebCore::DeleteSelectionCommand::doApply()
4382 Don't allow VisiblePositions inside -webkit-user-select:none regions.
4383 Renamed inRenderedContent to isCandidate.
4386 (WebCore::Document::updateSelection):
4388 (WebCore::Position::previousCharacterPosition):
4389 (WebCore::Position::nextCharacterPosition):
4390 (WebCore::nodeIsUserSelectNone):
4391 (WebCore::Position::isCandidate):
4392 (WebCore::Position::rendersInDifferentPosition):
4394 * editing/InsertParagraphSeparatorCommand.cpp:
4395 (WebCore::InsertParagraphSeparatorCommand::doApply):
4396 * editing/InsertTextCommand.cpp:
4397 (WebCore::InsertTextCommand::input):
4398 * editing/VisiblePosition.cpp:
4399 (WebCore::VisiblePosition::canonicalPosition):
4400 * editing/htmlediting.cpp:
4401 (WebCore::nextCandidate):
4402 (WebCore::nextVisuallyDistinctCandidate):
4403 (WebCore::previousCandidate):
4404 (WebCore::previousVisuallyDistinctCandidate):
4405 * editing/visible_units.cpp:
4406 (WebCore::previousLinePosition):
4407 (WebCore::nextLinePosition):
4408 (WebCore::startOfParagraph):
4410 (WebCore::Frame::styleForSelectionStart):
4412 2006-12-14 David Hyatt <hyatt@apple.com>
4414 Get rid of the containsStart check and just rely on the selectionState
4415 bits. This allows selection gap filling to behave properly in the presence
4416 of inline blocks and inline tables on lines when the selection originates
4417 inside the inline block.
4421 * rendering/RenderBlock.cpp:
4422 (WebCore::RenderBlock::fillInlineSelectionGaps):
4424 2006-12-14 Anders Carlsson <acarlsson@apple.com>
4428 General loader cleanup, convert NSURLResponse to ResourceResponse in some places.
4430 * loader/DocumentLoader.h:
4431 * loader/SubresourceLoader.h:
4432 * loader/mac/DocumentLoaderMac.mm:
4433 (WebCore::DocumentLoader::addResponse):
4434 * loader/mac/FrameLoaderMac.mm:
4435 (WebCore::FrameLoader::opened):
4436 * loader/mac/SubresourceLoaderMac.mm:
4437 (WebCore::SubresourceLoader::create):
4439 2006-12-14 Anders Carlsson <acarlsson@apple.com>
4443 Add loadResourceSynchronously to ResourceHandle and have FrameLoader use it instead of
4444 calling NSURLConnection directly.
4446 Add an isNull flag to ResourceError so we can convert correctly between nil NSErrors and ResourceErrors.
4448 Get rid of ServeSynchronousRequest and use the loader instead.
4451 * dom/XMLTokenizer.cpp:
4452 (WebCore::openFunc):
4453 * loader/FrameLoader.h:
4454 * loader/LoaderFunctions.h:
4455 * loader/mac/FrameLoaderMac.mm:
4456 (WebCore::FrameLoader::canLoad):
4457 (WebCore::FrameLoader::loadResourceSynchronously):
4458 * loader/mac/LoaderFunctionsMac.mm:
4459 * platform/network/ResourceError.h:
4460 (WebCore::ResourceError::ResourceError):
4461 (WebCore::ResourceError::isNull):
4462 * platform/network/ResourceHandle.h:
4463 * platform/network/ResourceRequest.cpp:
4464 (WebCore::ResourceRequest::isConditional):
4465 * platform/network/ResourceRequest.h:
4466 * platform/network/mac/ResourceErrorMac.mm:
4467 (-[NSError WebCore]):
4468 * platform/network/mac/ResourceHandleMac.mm:
4469 (WebCore::ResourceHandle::loadResourceSynchronously):
4470 * xml/XSLTProcessor.cpp:
4471 (WebCore::docLoaderFunc):
4472 * xml/xmlhttprequest.cpp:
4473 (WebCore::XMLHttpRequest::send):
4475 2006-12-14 Nikolas Zimmermann <zimmermann@kde.org>
4479 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11830
4481 Fix fundamental problems with JS SVG POD types.
4482 (currently: FloatPoint/FloatRect/AffineTransform)
4484 This doesn't affect any testcase, but when I wrote my SVGLength* -> SVGLength
4485 the problem got visible (aka. baseVal-animVal-equality.svg broke and more)
4486 With that patch applied first, none breaks - so SVG POD JS wrappers do work now.
4489 - Fix setBaseValue() confusion. ONLY use the hash map in SVGDocumentExtension
4490 when we're animating a property. Add "start##Property" / "stop##Property" methods
4491 which take care, of moving "animVal" -> "baseVal" hash, and back after animation stopped.
4493 These new methods are not yet used anywhere, but finally the "animated property" system is complete.
4495 - Offer a new JSSVGPODTypeWrapper class, wrapping around non-pointer POD types like FloatPoint etc.
4496 to be used in the generated JS bindings. Currently if you modified ie the "x" property of a SVGPoint
4497 from JS, you only actually modified the "m_x" object stored in the JSSVGPoint wrapper.
4499 If you take SVGLength as example (more frequently used in the JS SVG bindings, that's why I'm using it)
4500 "document.rootElement.width.baseVal.value = 100;" only modified the "SVGLength m_impl" object stored in
4501 JSSVGLength, but the "SVGSVGElement" didn't notice it width got changed. The new commitChanges() logic
4502 fixes these problems.
4504 It's quite hard too describe the actual changes, if one is not familiar with the code. This is the result
4505 of endless discussions with Eric Seidel, and we hope this is a decent solution addressing all issues.
4507 * WebCore.xcodeproj/project.pbxproj:
4508 * bindings/js/JSSVGMatrixCustom.cpp:
4509 (WebCore::JSSVGMatrix::inverse):
4510 (WebCore::JSSVGMatrix::rotateFromVector):
4511 * bindings/js/JSSVGPODTypeWrapper.h: Added.
4512 (WebCore::JSSVGPODTypeWrapper::JSSVGPODTypeWrapper):
4513 (WebCore::JSSVGPODTypeWrapper::~JSSVGPODTypeWrapper):
4514 (WebCore::JSSVGPODTypeWrapper::operator PODType&):
4515 (WebCore::JSSVGPODTypeWrapper::commitChange):
4516 (WebCore::JSSVGPODTypeWrapperCreator::JSSVGPODTypeWrapperCreator):
4517 (WebCore::JSSVGPODTypeWrapperCreator::~JSSVGPODTypeWrapperCreator):
4518 (WebCore::JSSVGPODTypeWrapperCreator::commitChange):
4519 * bindings/scripts/CodeGeneratorJS.pm:
4520 * ksvg2/misc/SVGDocumentExtensions.h:
4521 (WebCore::SVGDocumentExtensions::removeBaseValue):
4522 * ksvg2/svg/SVGElement.h:
4524 2006-12-14 Alexey Proskuryakov <ap@webkit.org>
4528 http://bugs.webkit.org/show_bug.cgi?id=11828
4529 Fix a leak of NSURLRequest on each update - RetainPtr retains the object itself.
4531 * platform/network/mac/ResourceRequestMac.mm:
4532 (WebCore::ResourceRequest::doUpdatePlatformRequest):
4534 2006-12-14 Simon Hausmann <hausmann@kde.org>
4536 Reviewed by Zack Rusin.
4538 * WebCore.pro: Clean up the xpath grammar generation rule.
4540 2006-12-14 Zack Rusin <zack@kde.org>
4542 Make it link with temporary stubs.
4544 * loader/qt/DocumentLoaderQt.cpp:
4545 (WebCore::DocumentLoader::originalRequest):
4546 (WebCore::DocumentLoader::originalRequestCopy):
4547 (WebCore::DocumentLoader::request):
4548 (WebCore::DocumentLoader::initialRequest):
4549 (WebCore::DocumentLoader::actualRequest):
4550 (WebCore::DocumentLoader::URL):
4552 2006-12-14 Zack Rusin <zack@kde.org>
4554 Compilation fixes for the Qt port after last nights
4557 * loader/qt/DocumentLoaderQt.cpp:
4558 (WebCore::DocumentLoader::URL):
4559 (WebCore::DocumentLoader::unreachableURL):
4560 * loader/qt/FrameLoaderQt.cpp:
4561 (WebCore::PolicyCheck::call):
4562 * platform/network/ResourceRequest.h:
4563 (WebCore::ResourceRequest::setHTTPReferrer):
4565 2006-12-14 Rob Buis <buis@kde.org>
4569 http://bugs.webkit.org/show_bug.cgi?id=11726
4570 SVG Image do not take into account clip/overflow when hit testing
4572 Take into account the overflowRect when hit-testing <svg> container.
4574 * rendering/RenderSVGContainer.cpp:
4575 (WebCore::RenderSVGContainer::viewportTransform):
4576 (WebCore::RenderSVGContainer::nodeAtPoint):
4577 * rendering/RenderSVGContainer.h:
4579 2006-12-13 David Hyatt <hyatt@apple.com>
4581 Fix for bug 11825, dragging elements via -khtml-user-drag is broken (affects Dashboard). Make sure
4582 to clear the paintingRoot properly when recurring into children. It would be nice to find a design
4583 that prevented this mistake from being made and didn't require explicit clearing of the root.
4587 * rendering/InlineFlowBox.cpp:
4588 (WebCore::InlineFlowBox::paint):
4589 * rendering/RenderBlock.cpp:
4590 (WebCore::RenderBlock::paintChildren):
4591 * rendering/RenderBox.cpp:
4592 (WebCore::RenderBox::paint):
4593 * rendering/RenderTable.cpp:
4594 (WebCore::RenderTable::paint):
4596 2006-12-13 Anders Carlsson <acarlsson@apple.com>
4598 * loader/FrameLoader.h:
4601 2006-12-13 Brady Eidson <beidson@apple.com>
4603 Implicitly reviewed by Darin, Hyatt, Maciej, and others!
4605 Fixes a document tear down crash.
4606 Changes a few long standing assertions to our new style
4609 (WebCore::Document::~Document):
4610 (WebCore::Document::topDocument):
4612 2006-12-13 Maciej Stachowiak <mjs@apple.com>
4616 - converted many places to use ResourceRequest instead of NSURLRequest
4619 * loader/DocumentLoader.h:
4620 * loader/FrameLoader.cpp:
4621 (WebCore::FrameLoader::stopPolicyCheck):
4622 * loader/FrameLoader.h:
4623 (WebCore::PolicyCheck::request):
4624 * loader/FrameLoaderClient.h:
4625 * loader/MainResourceLoader.h:
4626 * loader/mac/DocumentLoaderMac.mm:
4627 (WebCore::DocumentLoader::DocumentLoader):
4628 (WebCore::DocumentLoader::originalRequest):
4629 (WebCore::DocumentLoader::originalRequestCopy):
4630 (WebCore::DocumentLoader::request):
4631 (WebCore::DocumentLoader::initialRequest):
4632 (WebCore::DocumentLoader::actualRequest):
4633 (WebCore::DocumentLoader::URL):
4634 (WebCore::DocumentLoader::unreachableURL):
4635 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
4636 (WebCore::DocumentLoader::setRequest):
4637 (WebCore::DocumentLoader::stopLoading):
4638 (WebCore::DocumentLoader::setLastCheckedRequest):
4639 (WebCore::DocumentLoader::lastCheckedRequest):
4640 (WebCore::DocumentLoader::URLForHistory):
4641 * loader/mac/FrameLoaderMac.mm:
4642 (WebCore::FrameLoader::load):
4643 (WebCore::FrameLoader::startLoadingMainResource):
4644 (WebCore::FrameLoader::applyUserAgent):
4645 (WebCore::FrameLoader::originalRequest):
4646 (WebCore::FrameLoader::receivedMainResourceError):
4647 (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
4648 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
4649 (WebCore::FrameLoader::commitProvisionalLoad):
4650 (WebCore::FrameLoader::initialRequest):
4651 (WebCore::FrameLoader::setRequest):
4652 (WebCore::FrameLoader::checkNavigationPolicy):
4653 (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
4654 (WebCore::FrameLoader::reloadAllowingStaleData):
4655 (WebCore::FrameLoader::reload):
4656 (WebCore::FrameLoader::checkNewWindowPolicy):
4657 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
4658 (WebCore::FrameLoader::continueAfterNavigationPolicy):
4659 (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
4660 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
4661 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
4662 (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
4663 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
4664 (WebCore::FrameLoader::post):
4665 (WebCore::FrameLoader::addExtraFieldsToRequest):
4666 (WebCore::FrameLoader::isReloading):
4667 (WebCore::FrameLoader::referrer):
4668 (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
4669 (WebCore::FrameLoader::loadResourceSynchronously):
4670 (WebCore::FrameLoader::originalRequestURL):
4671 (WebCore::PolicyCheck::set):
4672 (WebCore::PolicyCheck::call):
4673 (WebCore::PolicyCheck::clearRequest):
4674 * loader/mac/MainResourceLoaderMac.mm:
4675 (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
4676 (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
4677 (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
4678 * loader/mac/SubresourceLoaderMac.mm:
4679 (WebCore::SubresourceLoader::create):
4680 * loader/mac/WebDataProtocol.h:
4681 * loader/mac/WebDataProtocol.mm:
4682 * platform/KURL.cpp:
4683 (WebCore::operator!=):
4685 * platform/mac/KURLMac.mm:
4686 (WebCore::KURL::getNSURL):
4687 * platform/network/FormData.h:
4688 (WebCore::operator==):
4689 (WebCore::operator!=):
4690 * platform/network/ResourceRequest.cpp:
4691 (WebCore::operator==):
4692 * platform/network/ResourceRequest.h:
4693 * platform/network/mac/ResourceRequestMac.mm:
4694 (WebCore::ResourceRequest::doUpdatePlatformRequest):
4696 2006-12-13 Geoffrey Garen <ggaren@apple.com>
4698 Reviewed by Darin Adler, Dave Hyatt.
4700 Beefed up FocusController to handle frame focus. Changed implementors to
4701 use FocusController, rather than the widget hierarchy, to focus frames.
4703 (WebCore::FocusController::focusedNode): Made a minor change to focus a frame
4704 before focusing the element inside of it. This matches FF.
4705 (WebCore::FocusController::focusedFrame):
4706 * platform/Widget.h:
4708 2006-12-13 Justin Garcia <justin.garcia@apple.com>
4712 <rdar://problem/4818145>
4713 Cannot setSelectedDOMRange to non-editable island unless it has editable content on both sides
4715 There are editable positions before/after a "non-editable island" if its
4716 a table, but the code in canonicalPosition was not using
4717 editableRootForPosition to find root editable elements.
4719 * editing/VisiblePosition.cpp:
4720 (WebCore::VisiblePosition::canonicalPosition): Use editableRootForPosition
4721 to fix the table case.
4723 2006-12-13 Steve Falkenburg <sfalken@apple.com>
4727 Added missing forwarding headers.
4729 * ForwardingHeaders/kjs/value.h: Added.
4730 * ForwardingHeaders/wtf/HashTable.h: Added.
4732 2006-12-13 Lars Knoll <lars@trolltech.com>
4734 Reviewed by Maciej, Zack.
4736 Make the Qt cbuild compile again.
4739 * loader/qt/ResourceLoaderQt.cpp:
4740 * platform/network/qt/ResourceHandleQt.cpp:
4741 (WebCore::ResourceHandle::start):
4742 (WebCore::ResourceHandle::loadsBlocked):
4743 * platform/qt/FrameQtClient.cpp:
4744 (WebCore::FrameQtClient::openURL):
4745 (WebCore::FrameQtClient::submitForm):
4747 2006-12-12 Adam Roben <aroben@apple.com>
4751 Changed #import to #include to match the rest of our ForwardingHeaders.
4753 * ForwardingHeaders/wtf/StringExtras.h:
4755 2006-12-12 Justin Garcia <justin.garcia@apple.com>
4757 Reviewed by harrison
4759 <rdar://problem/4757667>
4760 GoogleDocs: Style menu does not open
4762 * bindings/js/kjs_window.cpp:
4763 (KJS::Selection::getValueProperty): Added rangeCount.
4764 * bindings/js/kjs_window.h:
4766 * editing/SelectionController.h:
4767 (WebCore::SelectionController::rangeCount): Added.
4769 2006-12-12 Alice Liu <alice.liu@apple.com>
4773 * bindings/js/JSSVGMatrixCustom.cpp:
4774 added #ifdef SVG_SUPPORT
4776 2006-12-12 Anders Carlsson <acarlsson@apple.com>
4780 * loader/ResourceLoader.cpp:
4781 Move down include of ResourceHandle.h.
4783 2006-12-12 Geoffrey Garen <ggaren@apple.com>
4785 Reviewed by Adam Roben, Dave Hyatt, Darin Adler.
4787 Factored focus control into a FocusController class. I inted to use this
4788 class for handling window active state and the focused frame, as well.
4792 * WebCore.xcodeproj/project.pbxproj:
4794 (WebCore::Document::view):
4795 (WebCore::Document::page): New helper function.
4796 * dom/Document.h: Moved setters before getters.
4797 (WebCore::Document::hoverNode):
4798 (WebCore::Document::activeNode):
4800 (WebCore::Node::detach): Use the FocusController.
4801 * page/FocusController.cpp: Added.
4802 (WebCore::shouldFocus): renamed and refactored this helper function.
4803 (WebCore::shouldUnfocus): ditto.
4804 * page/FocusController.h: Added.
4806 2006-12-12 Anders Carlsson <acarlsson@apple.com>
4808 Rubber Stamped by Geoff.
4810 * platform/Base64.cpp:
4811 * platform/Base64.h:
4812 Put functions inside of the WebCore namespace.
4814 2006-12-12 Anders Carlsson <acarlsson@apple.com>
4816 Try fixing the non-Mac builds.
4818 * loader/ResourceLoader.cpp:
4819 (WebCore::ResourceLoader::willSendRequest):
4820 (WebCore::ResourceLoader::didReceiveResponse):
4821 (WebCore::ResourceLoader::didReceiveData):
4822 (WebCore::ResourceLoader::didFinishLoading):
4823 (WebCore::ResourceLoader::didFail):
4824 * loader/SubresourceLoader.cpp:
4825 (WebCore::SubresourceLoader::create):
4826 * loader/SubresourceLoader.h:
4828 2006-12-12 Anders Carlsson <acarlsson@apple.com>
4832 Turn ResourceLoader into a ResourceHandleClient and stop using NSURLConnection in the loader.
4835 Add new methods needed by WebKit.
4837 * WebCore.xcodeproj/project.pbxproj:
4838 Make ResourceHandle.h a private header.
4840 * loader/FrameLoaderClient.h:
4841 Change the download method to take a ResourceHandle instead of an NSURLConnection.
4843 * loader/MainResourceLoader.h:
4844 Get rid of the proxy instance variable, that's handled by ResourceHandlw now.
4846 * loader/ResourceLoader.h:
4847 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
4848 (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
4849 (WebCore::ResourceLoader::willStopBufferingData):
4850 (WebCore::ResourceLoader::willCacheResponse):
4851 (WebCore::ResourceLoader::receivedCredential):
4852 (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
4853 (WebCore::ResourceLoader::receivedCancellation):
4854 (WebCore::ResourceLoader::handle):
4855 * loader/SubresourceLoader.h:
4856 Make ResourceLoader a ResourceHandleClient, moving the methods from SubresourceLoader.
4858 * loader/mac/MainResourceLoaderMac.mm:
4859 (WebCore::MainResourceLoader::MainResourceLoader):
4860 (WebCore::MainResourceLoader::continueAfterContentPolicy):
4861 (WebCore::MainResourceLoader::loadNow):
4862 (WebCore::MainResourceLoader::load):
4863 Use a ResourceHandle instead of an NSURLConnection.
4865 * loader/mac/ResourceLoaderMac.mm:
4866 (WebCore::ResourceLoader::~ResourceLoader):
4867 (WebCore::ResourceLoader::releaseResources):
4868 (WebCore::ResourceLoader::load):
4869 (WebCore::ResourceLoader::setDefersLoading):
4870 (WebCore::ResourceLoader::resourceData):
4871 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
4872 (WebCore::ResourceLoader::didCancel):
4873 (WebCore::ResourceLoader::willSendRequest):
4874 (WebCore::ResourceLoader::didReceiveResponse):
4875 (WebCore::ResourceLoader::didReceiveData):
4876 (WebCore::ResourceLoader::didFinishLoading):
4877 (WebCore::ResourceLoader::didFail):
4878 Remove the WebCoreResourceLoaderAsDelegate class, use a ResourceHandle instead of an NSURLConnection.
4880 * loader/mac/SubresourceLoaderMac.mm:
4881 Remove ResourceHandleClient methods.
4883 * platform/network/ResourceHandle.cpp:
4884 (WebCore::ResourceHandle::ResourceHandle):
4885 (WebCore::ResourceHandle::create):
4886 * platform/network/ResourceHandle.h:
4887 * platform/network/ResourceHandleInternal.h:
4888 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
4889 Add an extra argument denoting whether this ResourceHandle can possibly be "converted" into one used for downloads.
4891 * platform/network/mac/ResourceHandleMac.mm:
4892 (WebCore::ResourceHandle::~ResourceHandle):
4893 (WebCore::ResourceHandle::start):
4894 (WebCore::ResourceHandle::releaseProxy):
4895 (WebCore::ResourceHandle::connection):
4896 New methods for creating a NSURLConnectionDelegateProxy which is used when creating a NSURLDownload from an existing
4899 2006-12-12 Anders Carlsson <acarlsson@apple.com>
4903 * loader/mac/SubresourceLoaderMac.mm:
4904 (WebCore::SubresourceLoader::load):
4905 * platform/network/mac/ResourceHandleMac.mm:
4906 (WebCore::ResourceHandle::start):
4907 Move the didTellBridgeAboutLoad call to SubresourceLoader in preparation for getting rid of
4908 the DocLoader parameter to ResourceHandle::create.
4910 2006-12-12 George Staikos <staikos@kde.org>
4912 Make the last checkin compile.
4915 * ksvg2/svg/SVGTransform.cpp:
4917 2006-12-12 Nikolas Zimmermann <zimmermann@kde.org>
4919 Reviewed by Sam Weinig & Rob Buis.
4921 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11797
4923 Remove SVGMatrix, replace it by AffineTransform usage everywhere.
4924 Changed AffineTransform API to be able to be used within generation
4925 (m11() -> a(), m12() -> b(), ...). Add some methods needed for SVG.
4927 The actual SVGMatrix -> AffineTransformation patch has been created
4928 by Rob - I just adapted it to the autogenerated POD style.
4930 * WebCore.xcodeproj/project.pbxproj:
4931 * bindings/js/JSSVGMatrixCustom.cpp: Added.
4932 (WebCore::JSSVGMatrix::inverse):
4933 (WebCore::JSSVGMatrix::rotateFromVector):
4934 * bindings/objc/DOMInternal.h:
4935 * bindings/scripts/CodeGeneratorJS.pm:
4936 * bindings/scripts/CodeGeneratorObjC.pm:
4937 * ksvg2/misc/KSVGTimeScheduler.cpp:
4938 * ksvg2/misc/SVGImageLoader.cpp:
4939 * ksvg2/svg/SVGAnimateTransformElement.cpp:
4940 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
4941 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
4942 (WebCore::SVGAnimateTransformElement::initialMatrix):
4943 (WebCore::SVGAnimateTransformElement::transformMatrix):
4944 * ksvg2/svg/SVGAnimateTransformElement.h:
4945 * ksvg2/svg/SVGClipPathElement.cpp:
4946 (WebCore::SVGClipPathElement::canvasResource):
4947 * ksvg2/svg/SVGFitToViewBox.cpp:
4948 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
4949 * ksvg2/svg/SVGFitToViewBox.h:
4950 * ksvg2/svg/SVGLengthList.cpp:
4951 * ksvg2/svg/SVGLinearGradientElement.cpp:
4952 (WebCore::SVGLinearGradientElement::buildGradient):
4953 * ksvg2/svg/SVGLocatable.cpp:
4954 (WebCore::SVGLocatable::getCTM):
4955 (WebCore::SVGLocatable::getScreenCTM):
4956 (WebCore::SVGLocatable::getTransformToElement):
4957 * ksvg2/svg/SVGLocatable.h:
4958 * ksvg2/svg/SVGMarkerElement.cpp:
4959 * ksvg2/svg/SVGMatrix.cpp: Removed.
4960 * ksvg2/svg/SVGMatrix.h: Removed.
4961 * ksvg2/svg/SVGMatrix.idl:
4962 * ksvg2/svg/SVGNumberList.cpp:
4963 * ksvg2/svg/SVGPatternElement.cpp:
4964 (WebCore::SVGPatternElement::notifyAttributeChange):
4965 (WebCore::SVGPatternElement::getCTM):
4966 * ksvg2/svg/SVGPatternElement.h:
4967 * ksvg2/svg/SVGPoint.idl:
4968 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
4969 (WebCore::SVGPreserveAspectRatio::getCTM):
4970 * ksvg2/svg/SVGPreserveAspectRatio.h:
4971 * ksvg2/svg/SVGRadialGradientElement.cpp:
4972 (WebCore::SVGRadialGradientElement::buildGradient):
4973 * ksvg2/svg/SVGSVGElement.cpp:
4974 (WebCore::SVGSVGElement::viewport):
4975 (WebCore::SVGSVGElement::createSVGMatrix):
4976 (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
4977 (WebCore::SVGSVGElement::getCTM):
4978 (WebCore::SVGSVGElement::getScreenCTM):
4979 * ksvg2/svg/SVGSVGElement.h:
4980 * ksvg2/svg/SVGStyledElement.cpp:
4981 * ksvg2/svg/SVGStyledLocatableElement.cpp:
4982 (WebCore::SVGStyledLocatableElement::getCTM):
4983 (WebCore::SVGStyledLocatableElement::getScreenCTM):
4984 * ksvg2/svg/SVGStyledLocatableElement.h:
4985 * ksvg2/svg/SVGStyledTransformableElement.cpp:
4986 (WebCore::SVGStyledTransformableElement::localMatrix):
4987 (WebCore::SVGStyledTransformableElement::getCTM):
4988 (WebCore::SVGStyledTransformableElement::getScreenCTM):
4989 (WebCore::SVGStyledTransformableElement::updateLocalTransform):
4990 (WebCore::SVGStyledTransformableElement::attach):
4991 * ksvg2/svg/SVGStyledTransformableElement.h:
4992 * ksvg2/svg/SVGTextElement.cpp:
4993 (WebCore::SVGTextElement::localMatrix):
4994 (WebCore::SVGTextElement::updateLocalTransform):
4995 (WebCore::SVGTextElement::attach):
4996 (WebCore::SVGTextElement::getScreenCTM):
4997 (WebCore::SVGTextElement::getCTM):
4998 * ksvg2/svg/SVGTextElement.h:
4999 * ksvg2/svg/SVGTransform.cpp:
5000 (SVGTransform::SVGTransform):
5001 (SVGTransform::matrix):
5002 (SVGTransform::setMatrix):
5003 (SVGTransform::setTranslate):
5004 (SVGTransform::setScale):
5005 (SVGTransform::setRotate):
5006 (SVGTransform::setSkewX):
5007 (SVGTransform::setSkewY):
5008 * ksvg2/svg/SVGTransform.h:
5009 * ksvg2/svg/SVGTransformList.cpp:
5010 (SVGTransformList::createSVGTransformFromMatrix):
5011 (SVGTransformList::concatenate):
5012 * ksvg2/svg/SVGTransformList.h:
5013 * ksvg2/svg/SVGTransformable.cpp:
5014 (WebCore::SVGTransformable::getCTM):
5015 (WebCore::SVGTransformable::getScreenCTM):
5016 (WebCore::SVGTransformable::parseTransformAttribute):
5017 * ksvg2/svg/SVGTransformable.h:
5018 * platform/graphics/AffineTransform.cpp:
5019 (WebCore::AffineTransform::multiply):
5020 (WebCore::AffineTransform::scale):
5021 (WebCore::AffineTransform::scaleNonUniform):
5022 (WebCore::AffineTransform::rotateFromVector):
5023 (WebCore::AffineTransform::flipX):
5024 (WebCore::AffineTransform::flipY):
5025 (WebCore::AffineTransform::skewX):
5026 (WebCore::AffineTransform::skewY):
5027 * platform/graphics/AffineTransform.h:
5028 * platform/graphics/cairo/AffineTransformCairo.cpp:
5029 (WebCore::AffineTransform::a):
5030 (WebCore::AffineTransform::setA):
5031 (WebCore::AffineTransform::b):
5032 (WebCore::AffineTransform::setB):
5033 (WebCore::AffineTransform::c):
5034 (WebCore::AffineTransform::setC):
5035 (WebCore::AffineTransform::d):
5036 (WebCore::AffineTransform::setD):
5037 (WebCore::AffineTransform::e):
5038 (WebCore::AffineTransform::setE):
5039 (WebCore::AffineTransform::f):
5040 (WebCore::AffineTransform::setF):
5041 (WebCore::AffineTransform::inverse):
5042 * platform/graphics/cg/AffineTransformCG.cpp:
5043 (WebCore::AffineTransform::a):
5044 (WebCore::AffineTransform::setA):
5045 (WebCore::AffineTransform::b):
5046 (WebCore::AffineTransform::setB):
5047 (WebCore::AffineTransform::c):
5048 (WebCore::AffineTransform::setC):
5049 (WebCore::AffineTransform::d):
5050 (WebCore::AffineTransform::setD):
5051 (WebCore::AffineTransform::e):
5052 (WebCore::AffineTransform::setE):
5053 (WebCore::AffineTransform::f):
5054 (WebCore::AffineTransform::setF):
5055 (WebCore::AffineTransform::inverse):
5056 * platform/graphics/qt/AffineTransformQt.cpp:
5057 (WebCore::AffineTransform::a):
5058 (WebCore::AffineTransform::setA):
5059 (WebCore::AffineTransform::b):
5060 (WebCore::AffineTransform::setB):
5061 (WebCore::AffineTransform::c):
5062 (WebCore::AffineTransform::setC):
5063 (WebCore::AffineTransform::d):
5064 (WebCore::AffineTransform::setD):
5065 (WebCore::AffineTransform::e):
5066 (WebCore::AffineTransform::setE):
5067 (WebCore::AffineTransform::f):
5068 (WebCore::AffineTransform::setF):
5069 (WebCore::AffineTransform::inverse):
5070 * rendering/RenderForeignObject.cpp:
5071 (WebCore::RenderForeignObject::paint):
5072 (WebCore::RenderForeignObject::nodeAtPoint):
5073 * rendering/RenderPath.cpp:
5074 (WebCore::RenderPath::mapAbsolutePointToLocal):
5075 * rendering/RenderSVGImage.cpp:
5076 (WebCore::RenderSVGImage::paint):
5077 (WebCore::RenderSVGImage::nodeAtPoint):
5078 * rendering/RenderSVGText.cpp:
5079 (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
5080 (WebCore::RenderSVGText::nodeAtPoint):
5081 (WebCore::RenderSVGText::paint):
5082 * rendering/SVGInlineFlowBox.cpp:
5083 (WebCore::paintSVGInlineFlow):
5084 * rendering/SVGRenderTreeAsText.cpp:
5085 (WebCore::operator<<):
5087 2006-12-12 George Staikos <staikos@kde.org>
5091 Fix the Qt build again.
5094 * loader/qt/FrameLoaderQt.cpp:
5095 (WebCore::FrameLoader::createFrame):
5096 (WebCore::FrameLoader::load):
5097 * platform/qt/PasteboardQt.cpp:
5098 (WebCore::Pasteboard::writeSelection):
5099 (WebCore::Pasteboard::writeURL):
5100 (WebCore::Pasteboard::clear):
5102 2006-12-12 Geoffrey Garen <ggaren@apple.com>
5104 Reviewed by Beth Dakin.
5106 Moved focus control to the page level. Fixed a minor bug where a node
5107 would retain keyboard focus even when removed from the document.
5109 We should probably move this, along with hover and active, into a separate
5110 FocusController. But I'm too tired right now.
5112 * dom/Document.cpp: Migrated code to Page
5113 (WebCore::Document::removedLastRef):
5114 (WebCore::Document::detach):
5115 (WebCore::Document::setFocusedNode):
5116 (WebCore::Document::focusedNode):
5119 (WebCore::Node::detach): Clear ourselves from keyboard focus. This fixes
5120 the minor bug and was also necessary to prevent regressions caused by hanging
5121 on to a focused node after the document was replaced.
5123 (WebCore::Node::inDetach):
5124 * page/Page.cpp: Migrated code from Document
5125 (WebCore::shouldAcquireEditingFocus):
5126 (WebCore::shouldRelinquishEditingFocus):
5127 (WebCore::clearSelectionIfNeeded):
5128 (WebCore::widgetForNode):
5129 (WebCore::Page::setFocusedNode):
5131 (WebCore::Page::focusedNode):
5133 2006-12-11 Alexey Proskuryakov <ap@webkit.org>
5137 http://bugs.webkit.org/show_bug.cgi?id=11053
5138 XMLHttpRequest should be an EventTarget
5140 Test: http/tests/xmlhttprequest/event-target.html
5142 * bindings/js/JSXMLHttpRequest.cpp:
5143 (KJS::JSXMLHttpRequest::mark):
5144 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
5145 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
5146 * bindings/js/JSXMLHttpRequest.h:
5147 (KJS::JSXMLHttpRequest::):
5148 * xml/xmlhttprequest.cpp:
5149 (WebCore::XMLHttpRequest::addEventListener):
5150 (WebCore::XMLHttpRequest::removeEventListener):
5151 (WebCore::XMLHttpRequest::dispatchEvent):
5152 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
5153 * xml/xmlhttprequest.h:
5154 (WebCore::XMLHttpRequest::eventListeners):
5155 Implement EventTarget methods (except for NS variations, which Firefox doesn't have either).
5157 2006-12-11 Darin Adler <darin@apple.com>
5161 - fix http://bugs.webkit.org/show_bug.cgi?id=11809
5162 fast/dom/gc-8.html crash in alternate-thread marking code in ScriptInterpreter
5164 DocumentType objects were getting filed under the wrong document in the
5165 DOM objects structure.
5167 * bindings/js/kjs_binding.h: Added a destructor for debugging purposes only.
5168 * bindings/js/kjs_binding.cpp:
5169 (KJS::wrapperSet): Added. Set of outstanding wrappers for debugging.
5170 (KJS::addWrapper): Added.
5171 (KJS::removeWrapper): Added.
5172 (KJS::removeWrappers): Added.
5173 (KJS::DOMObject::~DOMObject): Added. Asserts that there is no outstanding reference
5174 to this wrapper since it's being destroyed.
5175 (KJS::ScriptInterpreter::putDOMObject): Added a call to ADD_WRAPPER.
5176 (KJS::ScriptInterpreter::forgetDOMObject): Added a call to REMOVE_WRAPPER.
5177 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Added a call to REMOVE_WRAPPER.
5178 (KJS::ScriptInterpreter::putDOMNodeForDocument): Added a call to ADD_WRAPPER.
5179 (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Added a call to REMOVE_WRAPPERS.
5180 (KJS::ScriptInterpreter::updateDOMNodeDocument): Added calls to REMOVE_WRAPPER and
5181 ADD_WRAPPER so the out-of-order transaction doesn't upset the assertions in the functions
5182 we're calling. Another solution would be to reorder the two, but I think that would
5183 create a race where another thread could garbage collect after the forget but before the put.
5184 (KJS::ScriptInterpreter::wasRunByUserGesture): Tweaked formatting.
5186 * dom/Document.cpp: (WebCore::Document::adoptNode): Removed call to updateDOMNodeDocument
5187 since setDocument now takes care of that.
5189 (WebCore::Node::setDocument): Added call to updateDOMNodeDocument here.
5190 (WebCore::Node::checkAddChild): Removed call to updateDOMNodeDocument since setDocument
5191 now takes care of that.
5193 2006-12-11 Alexey Proskuryakov <ap@nypop.com>
5197 http://bugs.webkit.org/show_bug.cgi?id=9673
5198 Add support for window.atob() and window.btoa()
5200 * WebCore.xcodeproj/project.pbxproj: Added Base64.{h,cpp}
5201 * bindings/js/kjs_window.cpp:
5202 (KJS::WindowFunc::callAsFunction):
5203 * bindings/js/kjs_window.h:
5205 * platform/Base64.cpp: Added.
5208 * platform/Base64.h: Added.
5209 * ForwardingHeaders/wtf/StringExtras.h: Added.
5210 * platform/DeprecatedString.cpp: Use strncasecmp from StringExtras.
5212 2006-12-11 Darin Adler <darin@apple.com>
5216 - did some of the Mac-specific file moves mentioned in my recent mail to the WebKit list
5218 * WebCore.xcodeproj/project.pbxproj: Updated project for file moves.
5220 * bridge/mac/FrameMac.h: Moved to page/mac.
5221 * bridge/mac/FrameMac.mm: Ditto.
5222 * bridge/mac/WebCoreFrameBridge.h: Ditto.
5223 * bridge/mac/WebCoreFrameBridge.mm: Ditto.
5224 * bridge/mac/WebCoreFrameView.h: Ditto.
5225 * bridge/mac/WebCoreViewFactory.h: Ditto.
5226 * bridge/mac/WebCoreViewFactory.m: Ditto.
5227 * bridge/mac/WebDashboardRegion.h: Ditto.
5228 * bridge/mac/WebDashboardRegion.m: Ditto.
5230 * bridge/mac/WebCoreKeyboardAccess.h: Moved to page/mac,
5231 renamed WebCoreKeyboardUIMode.h, and made a C++ header.
5233 * page/EventHandler.h: Updated for change to WebCoreKeyboardAccess.
5234 * page/mac/EventHandlerMac.mm:
5235 (WebCore::EventHandler::tabsToLinks): Ditto.
5236 (WebCore::EventHandler::tabsToAllControls): Ditto.
5237 (WebCore::EventHandler::keyboardUIMode): Ditto.
5239 2006-12-11 Beth Dakin <bdakin@apple.com>
5243 Primarily, this patch implements/hooks-up actions for the sub-menu
5244 items in WebCore context menus. I fixed a few other things along
5246 -Made BUILDING_ON_TIGER ifdef work within C++ as well as
5248 -Fixed bug where we would throw and Obj-C exception and
5249 fail to pop up menus with more than one separator item.
5250 -Re-named some of the spelling/grammar tags since Tiger and
5251 Leopard share more of the actions than initially
5254 * WebCorePrefix.h: Make BUILDING_ON_TIGER available to C++
5255 * bridge/EditorClient.h: New functions to toggle
5256 spelling/grammar checking.
5257 * editing/Editor.cpp:
5258 (WebCore::Editor::toggleContinuousSpellChecking): Call into client.
5259 (WebCore::Editor::toggleGrammarChecking): Same.
5260 (WebCore::Editor::toggleBold): call execToggleBold()
5261 (WebCore::Editor::toggleUnderline): Create appropriate underline
5262 style and apply to selection.
5263 (WebCore::Editor::setBaseWritingDirection): Create appropriate
5264 writing direction and apply to selection.
5266 * editing/mac/EditorMac.mm: New functions to show spelling guesses,
5267 fonts, styles, and color panels.
5268 * page/ContextMenuClient.h: New functions for the speech sub-menu.
5269 * page/ContextMenuController.cpp:
5270 (WebCore::ContextMenuController::contextMenuItemSelected): Fill in
5271 editing sub-menu actions.
5272 * platform/ContextMenu.cpp:
5273 (WebCore::separatorItem): Helper function to create a separator
5275 (WebCore::createFontSubMenu): Put very mac-specific things within a
5277 (WebCore::createSpellingAndGrammarSubMenu): Re-named some of the
5278 spelling sub-menu tags.
5279 (WebCore::createSpellingSubMenu): Same.
5280 (WebCore::ContextMenu::populate): We can't share the separator
5281 item. When we do, menus with more than one separator throw and obj-
5282 c exception and fail to pop-up.
5283 * platform/ContextMenuItem.h:
5284 (WebCore::): Re-named some of the spelling sub-menu tags.
5286 2006-12-11 Alice Liu <alice.liu@apple.com>
5288 Reviewed by Geoff, Adam.
5290 Switch to use the Editor for copying URLs. Also some Pasteboard and PlatformMouseEvent cleanup.
5292 All layout tests pass as they would without this patch.
5295 added Editor::copyURL to be called from WebKit
5297 * editing/Editor.cpp:
5298 (WebCore::Editor::tryDHTMLCopy):
5299 (WebCore::Editor::tryDHTMLCut):
5300 Pasteboard::clearTypes() changed to clear()
5302 (WebCore::Editor::writeSelectionToPasteboard):
5303 (WebCore::Editor::cut):
5304 (WebCore::Editor::copy):
5305 Changed signature of writeSelection to take raw pointer instead of PassRefPtr
5307 (WebCore::Editor::copyURL):
5311 * page/ContextMenuClient.h:
5312 * page/ContextMenuController.cpp:
5313 (WebCore::ContextMenuController::contextMenuItemSelected):
5314 Removed copyLinkToClipboard
5316 * platform/KURL.cpp:
5317 (WebCore::KURL::lastPathComponent):
5319 Added lastPathComponent.
5321 * platform/Pasteboard.h:
5322 Changed some function names.
5323 Moved some functions out of class to static.
5325 * platform/PlatformMouseEvent.h:
5327 Removed MouseEventType enum, added NoButton to MouseButton without disturbing other button values.
5329 * platform/mac/PasteboardMac.mm:
5330 Added writeURL, and moved some things around
5332 * platform/mac/WebCoreSystemInterface.h:
5333 * platform/mac/WebCoreSystemInterface.mm:
5334 Add some calls necessary for Pasteboard::writeURL to work
5336 2006-12-11 Darin Adler <darin@apple.com>
5340 - http://bugs.webkit.org/show_bug.cgi?id=11794
5341 fix lifetime problems affecting Frame's ownerElement pointer
5344 * WebCore.vcproj/WebCore/WebCore.vcproj:
5345 * WebCore.xcodeproj/project.pbxproj:
5346 * WebCoreSources.bkl:
5347 Updated for new source files.
5349 * WebCore.exp: Updated for changes to entry point names.
5351 * bridge/mac/FrameMac.h:
5352 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac):
5353 * bridge/win/FrameWin.h:
5354 * bridge/win/FrameWin.cpp: (WebCore::FrameWin::FrameWin):
5355 * platform/qt/FrameQt.h:
5356 * platform/qt/FrameQt.cpp: (WebCore::FrameQt::FrameQt):
5357 Updated owner element type to HTMLFrameOwnerElement.
5359 * bridge/mac/WebCoreFrameBridge.h: Removed non-C++ case since we don't
5360 use that any more. Updated owner element type to HTMLFrameOwnerElement.
5362 * dom/Document.cpp: Added include so that the ownerElement function can
5363 compile (since it downcasts an HTMLFrameOwnerElement to an Element).
5365 * html/HTMLFrameElement.cpp:
5366 (WebCore::containingFrameSetElement): Moved this function in here; it
5367 doesn't need to be a member function.
5368 (WebCore::HTMLFrameElement::attach): Updated to call this.
5370 * html/HTMLFrameElementBase.h:
5371 * html/HTMLFrameElementBase.cpp:
5372 (WebCore::HTMLFrameElementBase::HTMLFrameElementBase): Inherit from
5373 HTMLFrameOwnerElement. Removed contentFrame, contentDocument, and
5374 containingFrameSetElement. Removed friend classes.
5376 * html/HTMLFrameOwnerElement.h: Added.
5377 * html/HTMLFrameOwnerElement.cpp: Added.
5379 * html/HTMLEmbedElement.h:
5380 * html/HTMLEmbedElement.cpp:
5381 * html/HTMLObjectElement.h:
5382 * html/HTMLObjectElement.cpp:
5383 Remove now-unneeded contentDocument functions.
5385 * html/HTMLPlugInElement.h:
5386 * html/HTMLPlugInElement.cpp:
5387 (WebCore::HTMLPlugInElement::HTMLPlugInElement): Inherit from
5388 HTMLFrameOwnerElement.
5390 * loader/FormState.h:
5391 * loader/FormState.cpp: Use HTMLFormElement instead of just Element.
5393 * loader/FrameLoader.h:
5394 * loader/FrameLoader.cpp:
5395 (WebCore::FrameLoader::requestFrame): Use HTMLFormElement.
5396 (WebCore::FrameLoader::loadSubframe): Ditto.
5397 (WebCore::FrameLoader::requestObject): Don't pass an element parameter
5398 to shouldUsePlugin, and remove now-unneeded type casts.
5399 (WebCore::FrameLoader::shouldUsePlugin): Removed unneeded element parameter.
5400 (WebCore::FrameLoader::handleFallbackContent): Use HTMLFrameOwnerElement.
5401 (WebCore::FrameLoader::updateBaseURLForEmptyDocument): Ditto.
5402 (WebCore::FrameLoader::isHostedByObjectElement): Ditto.
5403 * loader/mac/FrameLoaderMac.mm:
5404 (WebCore::FrameLoader::load): Use HTMLFormElement.
5405 (WebCore::FrameLoader::post): Ditto.
5406 (WebCore::FrameLoader::createFrame): Use HTMLFrameOwnerElement.
5409 * page/FramePrivate.h:
5411 (WebCore::parentFromOwnerElement): Use HTMLFrameOwnerElement.
5412 (WebCore::Frame::Frame): Ditto. Also set m_contentFrame on the owner element.
5413 (WebCore::Frame::ownerElement): Ditto.
5414 (WebCore::Frame::ownerRenderer): Ditto.
5415 (WebCore::Frame::disconnectOwnerElement): Clear m_contentFrame on the owner
5416 element before disconnecting it.
5417 (WebCore::FramePrivate::FramePrivate): Use HTMLFrameOwnerElement.
5419 * page/mac/EventHandlerMac.mm: Include HTMLFrameOwnerElement.h so that
5420 the code here will compile (no code changes needed).
5422 * rendering/RenderFrame.cpp: (WebCore::RenderFrame::viewCleared):
5423 Updated so that RenderFrame doesn't need to be a friend of HTMLFrameElementBase.
5425 * rendering/RenderPart.h:
5426 * rendering/RenderPart.cpp: (WebCore::RenderPart::RenderPart):
5427 Use HTMLFrameOwnerElement.
5429 * rendering/RenderPartObject.h:
5430 * rendering/RenderPartObject.cpp:
5431 (WebCore::RenderPartObject::RenderPartObject): Use HTMLFrameOwnerElement.
5432 (WebCore::RenderPartObject::viewCleared): Updated so that RenderFrame doesn't
5433 need to be a friend of HTMLFrameElementBase.
5437 * platform/network/ResourceHandleInternal.h: Added Noncopyable and
5440 2006-12-11 David Hyatt <hyatt@apple.com>
5442 Fix failing layout test. Remove WTF::Unicode::isSpace and just revert
5443 the caller to the old behavior.
5447 * platform/StringImpl.cpp:
5450 2006-12-11 Alexey Proskuryakov <ap@webkit.org>
5454 http://bugs.webkit.org/show_bug.cgi?id=11807
5455 Merge EventHandler::m_bMousePressed and EventHandler::m_mousePressed
5457 * page/EventHandler.cpp:
5458 (WebCore::EventHandler::EventHandler):
5459 (WebCore::EventHandler::handleMousePressEvent):
5460 (WebCore::EventHandler::handleMouseMoveEvent):
5461 (WebCore::EventHandler::handleMouseReleaseEvent):
5462 (WebCore::EventHandler::autoscrollTimerFired):
5463 * page/EventHandler.h:
5464 * page/mac/EventHandlerMac.mm:
5465 (WebCore::EventHandler::handleDrag):
5466 (WebCore::EventHandler::mouseMoved):
5467 Merge EventHandler::m_bMousePressed and EventHandler::m_mousePressed
5469 (WebCore::EventHandler::lastEventIsMouseUp):
5470 Check that the "new" event is newer than the "old" one - that's not always the case
5471 when running in DRT, as [NSApp currentEvent] isn't updated by eventSender.
5473 2006-12-11 Nikolas Zimmermann <zimmermann@kde.org>
5475 Reviewed by Sam Weinig.
5477 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11801
5479 Autogenerate POD types for ObjC/JS.
5481 This removes the need for the hand-written JSSVG*, DOMSVG* wrappers
5482 in bindings/js, bindings/objc. Makes it much easier to convert more
5483 SVG types to POD types (ie. SVGMatrix* -> AffineTransform etc.)
5485 Affected test: svg/custom/SVGPoint-matrixTransform.svg
5487 It's failing with this patch, as the SVGPoint matrixTransform() function
5488 got disabled, until the SVGMatrix -> AffineTransform transition patch
5489 is landed. Otherwhise we'd need to add special cases to both CodeGeneratorJS/ObjC.pm
5490 which would be a waste of time, as SVGMatrix is about to die.
5492 Temporarily updating layout test result, as suggested by John Sullivan, so
5493 no-one notices that SVGPoint-matrixTransform.svg actually fails right now.
5495 Expect that to be fixed again in the next hour(s).
5497 * DerivedSources.make:
5498 * WebCore.xcodeproj/project.pbxproj:
5499 * bindings/js/JSSVGNumber.cpp: Removed.
5500 * bindings/js/JSSVGNumber.h: Removed.
5501 * bindings/js/JSSVGPoint.cpp: Removed.
5502 * bindings/js/JSSVGPoint.h: Removed.
5503 * bindings/js/JSSVGRect.cpp: Removed.
5504 * bindings/js/JSSVGRect.h: Removed.
5505 * bindings/objc/DOMSVGNumber.mm: Removed.
5506 * bindings/objc/DOMSVGPoint.mm: Removed.
5507 * bindings/objc/DOMSVGRect.mm: Removed.
5508 * bindings/scripts/CodeGeneratorJS.pm:
5509 * bindings/scripts/CodeGeneratorObjC.pm:
5510 * ksvg2/svg/SVGNumber.idl:
5511 * ksvg2/svg/SVGPoint.idl:
5512 * ksvg2/svg/SVGRect.idl:
5514 2006-12-10 Lars Knoll <lars@trolltech.com>
5518 Fix another issue with frame loading
5520 * platform/network/qt/ResourceHandleManagerQt.cpp:
5521 (WebCore::ResourceHandleManager::cancel):
5522 (WebCore::ResourceHandleManager::receivedData):
5523 (WebCore::ResourceHandleManager::receivedFinished):
5524 (WebCore::FileLoader::request):
5525 * platform/qt/FrameQtClient.cpp:
5526 (WebCore::FrameQtClient::openURL):
5528 2006-12-10 George Staikos <staikos@kde.org>
5532 Make the xpath grammar hack more specific (and work on OS X) until
5537 2006-12-10 Zack Rusin <zack@kde.org>
5539 Set the widgetclient correctly. This code
5540 should be platform independent!
5542 * platform/qt/WidgetQt.cpp:
5543 (WebCore::WidgetPrivate::WidgetPrivate):
5544 (WebCore::Widget::setClient):
5545 (WebCore::Widget::client):
5546 (WebCore::Widget::focusPolicy):
5548 2006-12-11 Lars Knoll <lars@trolltech.com>
5552 Fix loading of local files.
5554 * platform/network/qt/ResourceHandleManagerQt.cpp:
5555 (WebCore::FileLoader::request):
5557 2006-12-10 Zack Rusin <zack@kde.org>
5559 Don't use my QTransform magic, affine QMatrix is fine for
5560 SVG so use setMatrix.
5562 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
5563 (WebCore::SVGPaintServerLinearGradient::setup):
5564 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
5567 2006-12-10 Lars Knoll <lars@trolltech.com>
5571 Make sure we call checkCompleted() on the FrameLoader
5572 to get the regression tests running.
5575 * loader/qt/FrameLoaderQt.cpp:
5576 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
5577 (WebCore::FrameLoader::saveDocumentState):
5578 * page/qt/EventHandlerQt.cpp:
5579 (WebCore::EventHandler::handleDrag):
5580 * platform/qt/FrameQtClient.cpp:
5581 (WebCore::FrameQtClient::openURL):
5582 (WebCore::FrameQtClient::didReceiveResponse):
5583 (WebCore::FrameQtClient::didFinishLoading):
5584 (WebCore::FrameQtClient::didFail):
5585 * platform/qt/FrameQtClient.h:
5587 2006-12-10 Zack Rusin <zack@kde.org>
5589 Enable the SVG build by default and make it build.
5592 * loader/qt/FrameLoaderQt.cpp: Output the method name
5594 2006-12-10 Zack Rusin <zack@kde.org>
5596 Move the client classes to WebKitQt/WebCoreSupport.
5599 * loader/qt/FrameLoaderClientQt.cpp: Removed.
5600 * loader/qt/FrameLoaderClientQt.h: Removed.
5601 * platform/qt/ChromeClientQt.cpp: Removed.
5602 * platform/qt/ChromeClientQt.h: Removed.
5603 * platform/qt/ContextMenuClientQt.cpp: Removed.
5604 * platform/qt/ContextMenuClientQt.h: Removed.
5605 * platform/qt/EditorClientQt.cpp: Removed.
5606 * platform/qt/EditorClientQt.h: Removed.
5608 2006-12-10 Lars Knoll <lars@trolltech.com>
5612 Add some stubs required to link.
5614 * platform/qt/FrameQt.cpp:
5615 (WebCore::FrameQt::runJavaScriptAlert):
5616 (WebCore::FrameQt::runJavaScriptConfirm):
5617 (WebCore::FrameQt::runJavaScriptPrompt):
5618 (WebCore::FrameQt::bindingRootObject):
5620 2006-12-10 Rob Buis <buis@kde.org>
5624 http://bugs.webkit.org/show_bug.cgi?id=10996
5625 WebKit needs (possibly private) XML/SVG innerText support (for DumpRenderTree)
5627 Create an internal method to create innerText functionality for non-HTML
5628 nodes. When called from DRT this omits CDATA nodes.
5631 (WebCore::Element::innerText):
5632 (WebCore::Element::outerText):
5635 * html/HTMLElement.cpp:
5636 * html/HTMLElement.h:
5638 2006-12-10 MorganL <morganl.webkit@yahoo.com>
5642 Fixes http://bugs.webkit.org/show_bug.cgi?id=11790
5643 No way to initialize ResourceResponse::m_httpHeaderFields
5645 * platform/network/ResourceResponse.cpp: impl setHTTPHeaderField
5646 (WebCore::ResourceResponse::setHTTPHeaderField):
5647 * platform/network/ResourceResponse.h: decl setHTTPHeaderField
5649 2006-12-10 Zack Rusin <zack@kde.org>
5651 Cleaning up the code after removals.
5653 * platform/qt/FrameQt.cpp:
5654 * platform/qt/FrameQt.h: Remove virtual methods
5655 which have been moved to different objects
5657 2006-12-10 Zack Rusin <zack@kde.org>
5659 Cleanup the FrameQtClient a little bit more. Remove
5662 * platform/qt/FrameQtClient.cpp:
5663 * platform/qt/FrameQtClient.h:
5665 2006-12-09 Adam Roben <aroben@apple.com>
5669 * xml/XPathParser.cpp:
5670 (WebCore::XPath::charCat): Use C++ unsigned instead of uint.
5672 2006-12-09 George Staikos <staikos@kde.org>
5676 Make it not crash, and make it set the title on Qt platform.
5678 * loader/qt/FrameLoaderClientQt.cpp:
5679 (WebCore::FrameLoaderClientQt::hasWebView):
5680 (WebCore::FrameLoaderClientQt::hasFrameView):
5681 (WebCore::FrameLoaderClientQt::didChangeTitle):
5682 * loader/qt/FrameLoaderQt.cpp:
5683 (WebCore::FrameLoader::setTitle):
5684 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
5686 2006-12-10 Zack Rusin <zack@kde.org>
5688 Renaming FrameQtClientDefault to FrameQtClient.
5689 Removing FrameQtClient. Adding FrameLoaderClient
5690 as an argument. Clenaing up the code a bit.
5692 * platform/qt/FrameQt.cpp:
5693 (WebCore::FrameQt::FrameQt):
5694 * platform/qt/FrameQt.h:
5695 * platform/qt/FrameQtClient.cpp:
5696 (WebCore::FrameQtClient::FrameQtClient):
5697 (WebCore::FrameQtClient::~FrameQtClient):
5698 (WebCore::FrameQtClient::setFrame):
5699 (WebCore::FrameQtClient::openURL):
5700 (WebCore::FrameQtClient::submitForm):
5701 (WebCore::FrameQtClient::checkLoaded):
5702 (WebCore::FrameQtClient::runJavaScriptAlert):
5703 (WebCore::FrameQtClient::runJavaScriptConfirm):
5704 (WebCore::FrameQtClient::runJavaScriptPrompt):
5705 (WebCore::FrameQtClient::menubarVisible):
5706 (WebCore::FrameQtClient::toolbarVisible):
5707 (WebCore::FrameQtClient::statusbarVisible):
5708 (WebCore::FrameQtClient::personalbarVisible):
5709 (WebCore::FrameQtClient::locationbarVisible):
5710 (WebCore::FrameQtClient::loadFinished):
5711 (WebCore::FrameQtClient::didReceiveResponse):
5712 (WebCore::FrameQtClient::didFinishLoading):
5713 (WebCore::FrameQtClient::didFail):
5714 (WebCore::FrameQtClient::didReceiveData):
5715 (WebCore::FrameQtClient::traverseNextFrameStayWithin):
5716 (WebCore::FrameQtClient::numPendingOrLoadingRequests):
5717 (WebCore::FrameQtClient::receivedAllData):
5718 (WebCore::FrameQtClient::setTitle):
5719 * platform/qt/FrameQtClient.h:
5721 2006-12-10 Zack Rusin <zack@kde.org>
5723 Fixes compilation after the last removals.
5727 2006-12-10 Lars Knoll <lars@trolltech.com>
5731 Implement a decent network loader using QHttp.
5733 * loader/qt/FrameLoaderQt.cpp:
5734 (WebCore::FrameLoader::load):
5735 * platform/network/ResourceHandle.cpp:
5736 (WebCore::ResourceHandle::request):
5737 * platform/network/ResourceHandle.h:
5738 * platform/network/ResourceHandleInternal.h:
5739 * platform/network/qt/ResourceHandleManager.cpp: Removed.
5740 * platform/network/qt/ResourceHandleManager.h: Removed.
5741 * platform/network/qt/ResourceHandleManagerKDE.cpp: Added.
5742 (WebCore::ResourceHandleManager::self):
5743 (WebCore::ResourceHandleManager::ResourceHandleManager):
5744 (WebCore::ResourceHandleManager::~ResourceHandleManager):
5745 (WebCore::ResourceHandleManager::slotData):
5746 (WebCore::ResourceHandleManager::slotMimetype):
5747 (WebCore::ResourceHandleManager::slotResult):
5748 (WebCore::ResourceHandleManager::remove):
5749 (WebCore::ResourceHandleManager::add):
5750 (WebCore::ResourceHandleManager::cancel):
5751 * platform/network/qt/ResourceHandleManagerKDE.h: Added.
5752 * platform/network/qt/ResourceHandleManagerQt.cpp: Added.
5753 (WebCore::ResourceHandleManager::ResourceHandleManager):
5754 (WebCore::ResourceHandleManager::~ResourceHandleManager):
5755 (WebCore::ResourceHandleManager::self):
5756 (WebCore::RequestQt::RequestQt):
5757 (WebCore::ResourceHandleManager::add):
5758 (WebCore::ResourceHandleManager::cancel):
5759 (WebCore::ResourceHandleManager::receivedResponse):
5760 (WebCore::ResourceHandleManager::receivedData):
5761 (WebCore::ResourceHandleManager::receivedFinished):
5762 (WebCore::LoaderThread::LoaderThread):
5763 (WebCore::LoaderThread::run):
5764 (WebCore::FileLoader::FileLoader):
5765 (WebCore::FileLoader::request):
5766 (WebCore::FileLoader::cancel):
5767 (WebCore::WebCoreHttp::WebCoreHttp):
5768 (WebCore::WebCoreHttp::~WebCoreHttp):
5769 (WebCore::WebCoreHttp::request):
5770 (WebCore::WebCoreHttp::scheduleNextRequest):
5771 (WebCore::WebCoreHttp::getConnection):
5772 (WebCore::WebCoreHttp::onResponseHeaderReceived):
5773 (WebCore::WebCoreHttp::onReadyRead):
5774 (WebCore::WebCoreHttp::onRequestFinished):
5775 (WebCore::WebCoreHttp::onStateChanged):
5776 (WebCore::WebCoreHttp::cancel):
5778 (WebCore::operator==):
5779 (WebCore::HostInfo::HostInfo):
5780 (WebCore::NetworkLoader::NetworkLoader):
5781 (WebCore::NetworkLoader::~NetworkLoader):
5782 (WebCore::NetworkLoader::request):
5783 (WebCore::NetworkLoader::connectionClosed):
5784 (WebCore::NetworkLoader::cancel):
5785 * platform/network/qt/ResourceHandleManagerQt.h: Added.
5786 (WebCore::LoaderThread::):
5787 (WebCore::LoaderThread::waitForSetup):
5788 * platform/network/qt/ResourceHandleQt.cpp:
5789 (WebCore::ResourceHandle::start):
5790 * platform/qt/FrameQt.cpp:
5791 (WebCore::FrameQt::FrameQt):
5792 (WebCore::FrameQt::keyEvent):
5793 * platform/qt/FrameQt.h:
5794 * platform/qt/FrameQtClient.cpp:
5795 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
5796 (WebCore::FrameQtClientDefault::openURL):
5797 (WebCore::FrameQtClientDefault::submitForm):
5798 (WebCore::FrameQtClientDefault::didReceiveResponse):
5799 (WebCore::FrameQtClientDefault::didFinishLoading):
5800 (WebCore::FrameQtClientDefault::didFail):
5801 (WebCore::FrameQtClientDefault::didReceiveData):
5802 (WebCore::FrameQtClientDefault::receivedAllData):
5803 (WebCore::FrameQtClientDefault::setTitle):
5804 * platform/qt/FrameQtClient.h:
5806 2006-12-09 George Staikos <staikos@kde.org>
5810 Fix bison again on qmake build.
5814 2006-12-09 Zack Rusin <zack@kde.org>
5818 Use the correct filename.
5820 * WebCore.pro: it's PasteboardQt.cpp
5822 2006-12-09 Zack Rusin <zack@kde.org>
5826 Correctly set the font on widgets.
5828 * platform/qt/WidgetQt.cpp:
5829 (WebCore::Widget::setFont):
5831 2006-12-09 Adam Treat <treat@kde.org>
5835 No more nil renderer warnings
5837 * platform/qt/ScrollViewCanvasQt.cpp:
5838 (WebCore::ScrollViewCanvasQt::paintEvent):
5840 2006-12-09 Friedemann Kleint <fkleint@trolltech.com>
5844 Removed compiler warnings about rounding issues
5846 * platform/qt/FontPlatformDataQt.cpp:
5847 (WebCore::FontPlatformData::FontPlatformData):
5848 * platform/qt/FontQt.cpp:
5849 (WebCore::Font::drawComplexText):
5851 2006-12-09 George Staikos <staikos@kde.org>
5855 Qt 4.1 (especially Qtopia) build fixes
5857 * platform/qt/FrameQtClient.cpp:
5858 * platform/qt/GraphicsContextQt.cpp:
5859 * platform/qt/PlatformKeyboardEventQt.cpp:
5860 * platform/qt/CursorQt.cpp:
5861 * platform/qt/WidgetQt.cpp:
5862 * platform/Cursor.h:
5865 2006-12-09 Lars Knoll <lars@trolltech.com>
5869 Make it possible to build WebKit with qmake.
5871 * WebCore.pro: Added.
5872 * platform/graphics/qt/GraphicsContextQt.cpp:
5874 2006-12-10 Lars Knoll <lars@trolltech.com>
5878 Compile after latest WebKit changes and don't depend
5879 on deprecated methods in Qt.
5881 * platform/network/qt/ResourceHandleManager.cpp:
5882 (WebCore::ResourceHandleManager::remove):
5883 (WebCore::ResourceHandleManager::deliverJobData):
5884 * platform/network/qt/ResourceHandleQt.cpp:
5885 (WebCore::ResourceHandle::extractCharsetFromHeaders):
5886 * platform/qt/PlatformKeyboardEventQt.cpp:
5887 (WebCore::windowsKeyCodeForKeyEvent):
5889 2006-12-10 Lars Knoll <lars@trolltech.com>
5893 Use the Qt image loading framework.
5896 * platform/graphics/ImageSource.h:
5897 * platform/graphics/qt/GraphicsContextQt.cpp:
5898 * platform/graphics/qt/ImageDecoderQt.cpp: Added.
5899 (WebCore::ImageDecoderQt::ImageData::ImageData):
5900 (WebCore::ImageDecoderQt::ReadContext::):
5901 (WebCore::ImageDecoderQt::ReadContext::ReadContext):
5902 (WebCore::ImageDecoderQt::ReadContext::read):
5903 (WebCore::ImageDecoderQt::ReadContext::readImageLines):
5904 (WebCore::ImageDecoderQt::ImageDecoderQt):
5905 (WebCore::ImageDecoderQt::~ImageDecoderQt):
5906 (WebCore::ImageDecoderQt::hasFirstImageHeader):
5907 (WebCore::ImageDecoderQt::reset):
5908 (WebCore::ImageDecoderQt::setData):
5909 (WebCore::ImageDecoderQt::isSizeAvailable):
5910 (WebCore::ImageDecoderQt::frameCount):
5911 (WebCore::ImageDecoderQt::repetitionCount):
5912 (WebCore::ImageDecoderQt::ImageDecoderQt::supportsAlpha):
5913 (WebCore::ImageDecoderQt::duration):
5914 (WebCore::ImageDecoderQt::frameBufferAtIndex):
5915 (WebCore::ImageDecoderQt::imageAtIndex):
5916 * platform/graphics/qt/ImageDecoderQt.h: Added.
5917 (WebCore::ImageDecoderQt::):
5918 * platform/graphics/qt/ImageSourceQt.cpp:
5920 (WebCore::detectImageFormat):
5921 (WebCore::createDecoder):
5922 (WebCore::ImageSource::setData):
5923 (WebCore::ImageSource::createFrameAtIndex):
5924 (WebCore::ImageSource::frameDurationAtIndex):
5925 (WebCore::ImageSource::frameHasAlphaAtIndex):
5927 2006-12-09 Lars Knoll <lars@trolltech.com>
5931 Remove an explicit ICU dependency.
5933 * xml/XPathParser.cpp:
5934 (WebCore::XPath::charCat):
5936 2006-12-09 Zack Rusin <zack@kde.org>
5938 Adjusting the build after the icu changes.
5942 2006-12-09 Adam Roben <aroben@apple.com>
5946 Changed all ForwardingHeaders to use #include instead of #import.
5948 * ForwardingHeaders/kjs/JSLock.h:
5949 * ForwardingHeaders/kjs/SavedBuiltins.h:
5950 * ForwardingHeaders/kjs/collector.h:
5951 * ForwardingHeaders/kjs/dtoa.h:
5952 * ForwardingHeaders/kjs/internal.h:
5953 * ForwardingHeaders/kjs/interpreter.h:
5954 * ForwardingHeaders/kjs/lookup.h:
5955 * ForwardingHeaders/kjs/object.h:
5956 * ForwardingHeaders/kjs/property_map.h:
5957 * ForwardingHeaders/kjs/protect.h:
5958 * ForwardingHeaders/wtf/AlwaysInline.h:
5959 * ForwardingHeaders/wtf/Assertions.h:
5960 * ForwardingHeaders/wtf/FastMalloc.h:
5961 * ForwardingHeaders/wtf/GetPtr.h:
5962 * ForwardingHeaders/wtf/HashCountedSet.h:
5963 * ForwardingHeaders/wtf/HashMap.h:
5964 * ForwardingHeaders/wtf/HashSet.h:
5965 * ForwardingHeaders/wtf/HashTraits.h:
5966 * ForwardingHeaders/wtf/MathExtras.h:
5967 * ForwardingHeaders/wtf/Noncopyable.h:
5968 * ForwardingHeaders/wtf/OwnArrayPtr.h:
5969 * ForwardingHeaders/wtf/OwnPtr.h:
5970 * ForwardingHeaders/wtf/PassRefPtr.h:
5971 * ForwardingHeaders/wtf/Platform.h:
5972 * ForwardingHeaders/wtf/RefPtr.h:
5973 * ForwardingHeaders/wtf/Vector.h:
5975 2006-12-09 Rob Buis <buis@kde.org>
5979 http://bugs.webkit.org/show_bug.cgi?id=11625
5980 Investigate possibility to share code between HTMLStyleElement and SVGStyleElement
5982 Add a class shared by both HTMLStyleElement and SVGStyleElement that
5983 encapsulates the common logic.
5986 * WebCore.xcodeproj/project.pbxproj:
5988 (WebCore::Document::recalcStyleSelector):
5989 Generalize stylesheet processing of svg and html.
5991 * dom/StyleElement.cpp: Added.
5992 (WebCore::StyleElement::StyleElement):
5993 (WebCore::StyleElement::sheet):
5994 (WebCore::StyleElement::insertedIntoDocument):
5995 (WebCore::StyleElement::removedFromDocument):
5996 (WebCore::StyleElement::childrenChanged):
5997 * dom/StyleElement.h: Added.
5998 (WebCore::StyleElement::~StyleElement):
5999 (WebCore::StyleElement::isLoading):
6000 Common base class for SVGStyleElement and HTMLStyleElement.
6002 * html/HTMLStyleElement.cpp:
6003 (WebCore::HTMLStyleElement::HTMLStyleElement):
6004 (WebCore::HTMLStyleElement::parseMappedAttribute):
6005 (WebCore::HTMLStyleElement::insertedIntoDocument):
6006 (WebCore::HTMLStyleElement::removedFromDocument):
6007 (WebCore::HTMLStyleElement::childrenChanged):
6008 (WebCore::HTMLStyleElement::media):
6009 (WebCore::HTMLStyleElement::setMedia):
6010 (WebCore::HTMLStyleElement::type):
6011 (WebCore::HTMLStyleElement::setType):
6012 * html/HTMLStyleElement.h:
6013 Use new common class.
6015 * ksvg2/svg/SVGElement.cpp:
6016 * ksvg2/svg/SVGElement.h:
6017 * ksvg2/svg/SVGSVGElement.cpp:
6018 (WebCore::SVGSVGElement::contentScriptType):
6019 (WebCore::SVGSVGElement::contentStyleType):
6020 * ksvg2/svg/SVGSVGElement.h:
6021 Do not use tryGetAttribute(NS) anymore.
6023 * ksvg2/svg/SVGStyleElement.cpp:
6024 (WebCore::SVGStyleElement::SVGStyleElement):
6025 (WebCore::SVGStyleElement::xmlspace):
6026 (WebCore::SVGStyleElement::type):
6027 (WebCore::SVGStyleElement::media):
6028 (WebCore::SVGStyleElement::title):
6029 (WebCore::SVGStyleElement::insertedIntoDocument):
6030 (WebCore::SVGStyleElement::removedFromDocument):
6031 (WebCore::SVGStyleElement::childrenChanged):
6032 * ksvg2/svg/SVGStyleElement.h:
6033 Use new common class.
6035 2006-12-08 David Hyatt <hyatt@apple.com>
6037 Land the new ICU abstraction layer (WTF::Unicode). Patch
6038 by Lars with a couple of fixes thrown in by me.
6042 * ForwardingHeaders/wtf/icu/UnicodeIcu.h: Added.
6043 * ForwardingHeaders/wtf/unicode/Unicode.h: Added.
6044 * WebCore.xcodeproj/project.pbxproj:
6045 * css/cssparser.cpp:
6046 (WebCore::ParseString::lower):
6048 (WebCore::isValidNameStart):
6049 (WebCore::isValidNamePart):
6050 * editing/TextIterator.cpp:
6051 (WebCore::CircularSearchBuffer::append):
6052 * html/HTMLFontElement.cpp:
6053 (WebCore::parseFontSizeNumber):
6054 * html/HTMLInputElement.cpp:
6055 (WebCore::numGraphemeClusters):
6056 (WebCore::numCharactersInGraphemeClusters):
6057 * html/HTMLSelectElement.cpp:
6058 (WebCore::stripLeadingWhiteSpace):
6060 * platform/DeprecatedString.h:
6061 (WebCore::DeprecatedChar::isSpace):
6062 (WebCore::DeprecatedChar::lower):
6063 (WebCore::DeprecatedChar::upper):
6064 * platform/Font.cpp:
6065 (WebCore::WidthIterator::advance):
6066 (WebCore::WidthIterator::normalizeVoicingMarks):
6067 * platform/FontCache.h:
6068 * platform/FontData.h:
6069 * platform/GlyphMap.cpp:
6070 * platform/GlyphMap.h:
6071 * platform/GlyphWidthMap.h:
6072 * platform/KURL.cpp:
6073 (WebCore::encodeHostname):
6074 * platform/StringHash.h:
6076 * platform/StringImpl.cpp:
6078 (WebCore::parseLength):
6079 (WebCore::StringImpl::isLower):
6080 (WebCore::StringImpl::lower):
6081 (WebCore::StringImpl::upper):
6082 (WebCore::StringImpl::secure):
6083 (WebCore::StringImpl::foldCase):
6084 (WebCore::StringImpl::capitalize):
6085 (WebCore::StringImpl::toInt):
6086 (WebCore::equalIgnoringCase):
6087 (WebCore::StringImpl::find):
6088 * platform/StringImpl.h:
6089 * platform/TextBoundaries.h:
6090 * platform/TextBreakIterator.h: Added.
6092 * platform/TextBreakIteratorICU.cpp: Added.
6093 (WebCore::wordBreakIterator):
6094 (WebCore::characterBreakIterator):
6095 (WebCore::textBreakFirst):
6096 (WebCore::textBreakNext):
6097 (WebCore::textBreakPreceding):
6098 (WebCore::textBreakFollowing):
6099 (WebCore::textBreakCurrent):
6100 * platform/TextCodec.h:
6101 * platform/TextCodecLatin1.cpp:
6102 * platform/TextEncoding.cpp:
6103 (WebCore::TextEncoding::encode):
6104 * platform/TextEncoding.h:
6105 * platform/TextEncodingRegistry.cpp:
6106 (WebCore::buildTextEncodingNameMap):
6107 (WebCore::buildTextCodecMap):
6108 * platform/TextEncodingRegistry.h:
6109 * platform/UChar.h: Removed.
6110 * platform/graphics/GraphicsContext.h:
6111 * platform/qt/GlyphMapQt.cpp:
6112 * platform/qt/TextBreakIteratorQt.cpp: Added.
6113 (WebCore::TextBreakIterator::following):
6114 (WebCore::TextBreakIterator::preceding):
6115 (WebCore::WordBreakIteratorQt::first):
6116 (WebCore::WordBreakIteratorQt::next):
6117 (WebCore::WordBreakIteratorQt::previous):
6118 (WebCore::CharBreakIteratorQt::first):
6119 (WebCore::CharBreakIteratorQt::next):
6120 (WebCore::CharBreakIteratorQt::previous):
6121 (WebCore::wordBreakIterator):
6122 (WebCore::characterBreakIterator):
6123 (WebCore::textBreakFirst):
6124 (WebCore::textBreakNext):
6125 (WebCore::textBreakPreceding):
6126 (WebCore::textBreakFollowing):
6127 (WebCore::textBreakCurrent):
6128 * platform/qt/TextCodecQt.cpp: Added.
6129 (WebCore::getAtomicName):
6130 (WebCore::TextCodecQt::registerEncodingNames):
6131 (WebCore::newTextCodecQt):
6132 (WebCore::TextCodecQt::registerCodecs):
6133 (WebCore::TextCodecQt::TextCodecQt):
6134 (WebCore::TextCodecQt::~TextCodecQt):
6135 (WebCore::TextCodecQt::decode):
6136 (WebCore::TextCodecQt::encode):
6137 * platform/qt/TextCodecQt.h: Added.
6138 * rendering/RenderBlock.cpp:
6139 (WebCore::RenderBlock::updateFirstLetter):
6140 * rendering/RenderText.cpp:
6141 (WebCore::RenderText::previousOffset):
6142 (WebCore::RenderText::nextOffset):
6143 (WebCore::RenderText::widthFromCache):
6144 * rendering/RenderText.h:
6145 * rendering/bidi.cpp:
6146 (WebCore::BidiState::BidiState):
6147 (WebCore::BidiContext::BidiContext):
6148 (WebCore::bidiNext):
6149 (WebCore::bidiFirst):
6150 (WebCore::BidiIterator::direction):
6151 (WebCore::appendRun):
6153 (WebCore::RenderBlock::computeHorizontalPositionsForLine):
6154 (WebCore::RenderBlock::bidiReorderLine):
6155 (WebCore::RenderBlock::layoutInlineChildren):
6157 (WebCore::BidiStatus::BidiStatus):
6158 (WebCore::BidiContext::dir):
6159 (WebCore::BidiContext::basicDir):
6160 (WebCore::BidiRun::BidiRun):
6161 * rendering/break_lines.h:
6163 2006-12-08 Adam Roben <aroben@apple.com>
6165 Rolling out r17865 because it caused a performance regression.
6167 * loader/TextResourceDecoder.cpp:
6168 (WebCore::findXMLEncoding):
6169 * platform/CString.cpp:
6170 (WebCore::CString::data):
6171 * platform/CString.h:
6172 * platform/TextStream.cpp:
6173 (WebCore::TextStream::operator<<):
6174 * platform/TextStream.h:
6176 2006-12-08 Zack Rusin <zack@kde.org>
6180 Fix the Qt/KDE build after all the API changes.
6183 * editing/qt/EditorQt.cpp: Added.
6184 (WebCore::Editor::newGeneralClipboard):
6185 (WebCore::Editor::ignoreSpelling):
6186 (WebCore::Editor::learnSpelling):
6187 (WebCore::Editor::advanceToNextMisspelling):
6188 (WebCore::Editor::isSelectionMisspelled):
6189 (WebCore::Editor::isSelectionUngrammatical):
6190 (WebCore::Editor::guessesForUngrammaticalSelection):
6191 (WebCore::Editor::guessesForMisspelledSelection):
6192 (WebCore::Editor::markMisspellingsInAdjacentWords):
6193 (WebCore::Editor::markMisspellings):
6194 * loader/NavigationAction.h:
6195 * loader/qt/FrameLoaderClientQt.cpp:
6196 (WebCore::FrameLoaderClientQt::frameLoaderDestroyed):
6197 (WebCore::FrameLoaderClientQt::canHandleRequest):
6198 * loader/qt/FrameLoaderClientQt.h:
6199 * loader/qt/FrameLoaderQt.cpp:
6200 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
6201 (WebCore::FrameLoader::load):
6202 * loader/qt/ResourceLoaderQt.cpp:
6203 * platform/ContextMenu.h:
6204 * platform/graphics/qt/GraphicsContextQt.cpp:
6205 * platform/graphics/qt/PathQt.cpp:
6206 (WebCore::Path::addArc):
6207 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
6208 (WebCore::SVGPaintServerLinearGradient::setup):
6209 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
6211 * platform/network/ResourceHandle.h:
6212 (WebCore::ResourceHandle::getInternal):
6213 * platform/network/ResourceHandleInternal.h:
6214 * platform/network/qt/ResourceHandleManager.cpp:
6215 (WebCore::ResourceHandleManager::slotData):
6216 (WebCore::ResourceHandleManager::remove):
6217 * platform/network/qt/ResourceHandleQt.cpp:
6218 (WebCore::ResourceHandle::~ResourceHandle):
6219 (WebCore::ResourceHandle::start):
6220 * platform/qt/ChromeClientQt.cpp:
6221 (WebCore::ChromeClientQt::addMessageToConsole):
6222 (WebCore::ChromeClientQt::chromeDestroyed):
6223 * platform/qt/ChromeClientQt.h:
6224 * platform/qt/ContextMenuClientQt.cpp:
6225 (WebCore::ContextMenuClientQt::copyLinkToClipboard):
6226 (WebCore::ContextMenuClientQt::downloadURL):
6227 (WebCore::ContextMenuClientQt::copyImageToClipboard):
6228 (WebCore::ContextMenuClientQt::contextMenuDestroyed):
6229 (WebCore::ContextMenuClientQt::contextMenuItemSelected):
6230 * platform/qt/ContextMenuClientQt.h:
6231 * platform/qt/ContextMenuItemQt.cpp: Added.
6232 (WebCore::ContextMenuItem::ContextMenuItem):
6233 (WebCore::ContextMenuItem::~ContextMenuItem):
6234 (WebCore::ContextMenuItem::platformDescription):
6235 (WebCore::ContextMenuItem::action):
6236 (WebCore::ContextMenuItem::title):
6237 (WebCore::ContextMenuItem::setAction):
6238 (WebCore::ContextMenuItem::setTitle):
6239 (WebCore::ContextMenuItem::setSubMenu):
6240 * platform/qt/ContextMenuQt.cpp:
6241 (WebCore::ContextMenu::ContextMenu):
6242 (WebCore::ContextMenu::~ContextMenu):
6243 (WebCore::ContextMenu::appendItem):
6244 (WebCore::ContextMenu::itemCount):
6245 (WebCore::ContextMenu::insertItem):
6246 (WebCore::ContextMenu::setPlatformDescription):
6247 * platform/qt/CursorQt.cpp:
6248 (WebCore::copyCursor):
6249 * platform/qt/EditorClientQt.cpp:
6250 (WebCore::EditorClientQt::shouldInsertNode):
6251 (WebCore::WebCore::EditorClientQt::pageDestroyed):
6252 (WebCore::EditorClientQt::smartInsertDeleteEnabled):
6253 * platform/qt/EditorClientQt.h:
6254 * platform/qt/FrameQt.cpp:
6255 (WebCore::FrameQt::FrameQt):
6256 (WebCore::FrameQt::keyEvent):
6257 * platform/qt/FrameQt.h:
6258 * platform/qt/FrameQtClient.cpp:
6259 (WebCore::FrameQtClientDefault::openURL):
6260 (WebCore::FrameQtClientDefault::submitForm):
6261 * platform/qt/LoaderFunctionsQt.cpp:
6262 * platform/qt/PasteboardQt.cpp: Added.
6263 (WebCore::Pasteboard::Pasteboard):
6264 (WebCore::Pasteboard::generalPasteboard):
6265 (WebCore::Pasteboard::clearTypes):
6266 (WebCore::Pasteboard::writeSelection):
6267 (WebCore::Pasteboard::canSmartReplace):
6268 (WebCore::Pasteboard::plainText):
6269 (WebCore::Pasteboard::documentFragment):
6271 === Safari-521.32 ===
6273 2006-12-08 Rob Buis <buis@kde.org>
6277 http://bugs.webkit.org/show_bug.cgi?id=10188
6278 Form elements added via appendChild() are not accessible via form.element
6280 Make sure looking up form elements works when the form is not appended
6283 * html/HTMLFormElement.cpp:
6284 (WebCore::HTMLFormElement::registerFormElement):
6286 2006-12-08 Rob Buis <buis@kde.org>
6290 http://bugs.webkit.org/show_bug.cgi?id=11765
6291 REGRESSION: Clicking on a select with size other than 1 and no children results in a crash
6293 Make sure returned value is -1 for selects without children.
6295 * rendering/RenderListBox.cpp:
6296 (WebCore::RenderListBox::listIndexAtOffset):
6298 2006-12-08 Adam Roben <aroben@apple.com>
6302 This is a mo' better fix for ensuring we don't use macro definitions
6307 2006-12-08 Don Gibson <dgibson77@gmail.com>
6309 Reviewed and landed by Alexey.
6311 http://bugs.webkit.org/show_bug.cgi?id=11759:
6312 Windows build bustage
6314 * WebCore.vcproj/WebCore/WebCore.vcproj:
6315 * bridge/win/ContextMenuClientWin.h:
6316 * bridge/win/FrameWin.h:
6317 * loader/win/FrameLoaderWin.cpp:
6318 (WebCore::FrameLoader::submitForm):
6319 * platform/network/win/ResourceHandleWin.cpp:
6320 (WebCore::ResourceHandle::onRequestComplete):
6321 (WebCore::ResourceHandle::fileLoadTimer):
6322 (WebCore::ResourceHandle::cancel):
6323 * platform/win/MouseEventWin.cpp:
6324 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
6325 * platform/win/TemporaryLinkStubs.cpp:
6326 (WebCore::fileButtonChooseFileLabel):
6327 (WebCore::inputElementAltText):
6328 (WebCore::copyCursor):
6329 (WebCore::resetButtonDefaultLabel):
6330 (WebCore::ContextMenuClientWin::contextMenuItemSelected):
6331 (WebCore::ContextMenuClientWin::copyLinkToClipboard):
6332 (WebCore::ContextMenuClientWin::downloadURL):
6333 (WebCore::ContextMenuClientWin::copyImageToClipboard):
6334 (WebCore::Editor::ignoreSpelling):
6335 (WebCore::Editor::learnSpelling):
6336 (WebCore::Editor::isSelectionUngrammatical):
6337 (WebCore::Editor::isSelectionMisspelled):
6338 (WebCore::Editor::guessesForMisspelledSelection):
6339 (WebCore::Editor::guessesForUngrammaticalSelection):
6340 (WebCore::Editor::markMisspellingsInAdjacentWords):
6341 (WebCore::FrameLoader::load):
6342 (WebCore::FrameWin::scheduleClose):
6343 (WebCore::FrameWin::respondToChangedSelection):
6345 2006-12-08 Sam Weinig <sam@webkit.org>
6349 Fix for http://bugs.webkit.org/show_bug.cgi?id=11777
6350 Crash when using XMLSerializer.serializeToString() on
6351 documentless, DocumentType nodes.
6353 Test: fast/dom/XMLSerializer-doctype.html
6354 Test: fast/dom/XMLSerializer-doctype2.html
6356 * dom/DOMImplementation.cpp:
6357 (WebCore::DOMImplementation::createDocument): set the document of the
6358 DocumentType node to the new document.
6359 * xml/XMLSerializer.cpp: Cleanup.
6360 (WebCore::XMLSerializer::serializeToString): now throws an exception
6361 for documentless nodes.
6362 * xml/XMLSerializer.h: cleanup
6363 * xml/XMLSerializer.idl: add exception
6365 2006-12-07 Justin Garcia <justin.garcia@apple.com>
6369 <rdar://problem/4836287>
6370 Cannot expand selection out of editable element when containing element is non-editable.
6372 * editing/Selection.cpp:
6373 (WebCore::Selection::adjustForEditableContent): Restrict the selection endpoints
6374 to the same *highest* editable root. This bug only happened when creating selections
6375 based in an editable region and extending into a higher editable root, so this change
6376 doesn't expose any new kinds of deletions, but we should start thinking about how
6377 those deletions should behave.
6378 * editing/SelectionController.cpp:
6379 (WebCore::SelectionController::selectAll): Ditto.
6381 2006-12-08 Beth Dakin <bdakin@apple.com>
6385 Add a new member variable to ContextMenuItem to hold on to the sub-
6386 menu. The new member variable is an OwnPtr<ContextMenu>
6388 * platform/ContextMenu.cpp: Because of the OwnPtr in
6389 ContextMenuItem, we have to separate the declaration of
6390 ContextMenuItems away from the calls to appendItem(). Not doing so
6391 causes a build failure because OwnPtr inherits from Noncopyable.
6392 (WebCore::createFontSubMenu): Same.
6393 (WebCore::createSpellingAndGrammarSubMenu): Same.
6394 (WebCore::createSpellingSubMenu): Same.
6395 (WebCore::createSpeechSubMenu): Same.
6396 (WebCore::createWritingDirectionSubMenu): Same.
6397 (WebCore::ContextMenu::populate): Same.
6398 * platform/ContextMenuItem.h: New member variable m_subMenu.
6399 * platform/mac/ContextMenuItemMac.mm: Take care of setting
6400 m_subMenu in addition to setting the submenu of the NSMenuItem when
6402 (WebCore::menuToArray):
6403 (WebCore::ContextMenuItem::ContextMenuItem): Same.
6404 (WebCore::ContextMenuItem::platformSubMenu): Same.
6405 (WebCore::ContextMenuItem::setSubMenu): Same.
6407 2006-12-08 MorganL <morganl.webkit@yahoo.com>
6411 http://bugs.webkit.org/show_bug.cgi?id=11778
6412 CString::data() should be documented as returning a null terminated char array
6414 * platform/CString.h:
6415 Add some basic documentation to CString.h
6417 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
6421 http://bugs.webkit.org/show_bug.cgi?id=11718
6422 REGRESSION: When I mouse up after dragging a selection outside of a iframe, the iframe
6423 continues to scroll automatically.
6425 Test: manual-tests/autoscroll.html
6427 * manual-tests/autoscroll.html: Added.
6429 * page/EventHandler.cpp:
6430 (WebCore::EventHandler::handleMousePressEvent):
6431 Assign to m_mousePressNode earlier, so that it is available in the superframe as well.
6432 Reset m_mouseDownWasInSubframe to false when starting to handle a mousedown - previously, its value
6433 was only defined if the event was passed down to a widget or a subframe.
6435 (WebCore::EventHandler::stopAutoscrollTimer):
6436 If the mouse down event was in a subframe, stop the subframe's timer.
6438 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
6442 http://bugs.webkit.org/show_bug.cgi?id=6275
6443 XMLHttpRequest.getResponseHeader should return a null string for non-existent headers
6445 * bindings/js/JSXMLHttpRequest.cpp:
6446 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
6447 Convert null getResponseHeader strings to JS null, rather than undefined.
6449 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
6453 http://bugs.webkit.org/show_bug.cgi?id=9854
6454 HTTP Refresh header with quotes is parsed incorrectly
6456 Test: http/tests/misc/redirect-with-quotes.php
6458 * WebCore.xcodeproj/project.pbxproj:
6459 Added HTTPParsers.{h,cpp}. I intend to move Content-Type parsing here, as well.
6462 (WebCore::Document::processHttpEquiv):
6463 * loader/FrameLoader.cpp:
6464 (WebCore::FrameLoader::receivedFirstData):
6465 Use the new implementation in HTTPHeaders.
6467 * platform/network/HTTPParsers.cpp: Added.
6468 (WebCore::skipWhiteSpace):
6469 (WebCore::parseHTTPRefresh):
6470 * platform/network/HTTPParsers.h: Added.
6471 Merged and rewrote existing implementations for better Firefox compatibility.
6473 2006-12-08 Alexey Proskuryakov <ap@webkit.org>
6477 http://bugs.webkit.org/show_bug.cgi?id=11772
6478 REGRESSION: XMLSerializer.serializeToString incorrect value for CDATA nodes
6480 Test: fast/dom/serialize-cdata.html
6482 * editing/markup.cpp:
6483 (WebCore::startMarkup): Dump CDATA sections, too.
6485 2006-12-08 Mitz Pettel <mitz@webkit.org>
6489 Deleted misplaced comment.
6491 * rendering/RenderWidget.cpp:
6493 2006-12-08 Rob Buis <buis@kde.org>
6497 http://bugs.webkit.org/show_bug.cgi?id=6074
6498 WebKit+SVG and FireFox disagree on invalid "transform" handling
6500 Test for parsing failure on transform attribute and clear the transform
6501 list upon failure to match FF behaviour.
6503 * ksvg2/svg/SVGGradientElement.cpp:
6504 (WebCore::SVGGradientElement::parseMappedAttribute):
6505 * ksvg2/svg/SVGPatternElement.cpp:
6506 (WebCore::SVGPatternElement::parseMappedAttribute):
6507 * ksvg2/svg/SVGStyledTransformableElement.cpp:
6508 (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
6509 * ksvg2/svg/SVGTextElement.cpp:
6510 (WebCore::SVGTextElement::parseMappedAttribute):
6511 * ksvg2/svg/SVGTransformable.cpp:
6512 (WebCore::SVGTransformable::parseTransformAttribute):
6513 * ksvg2/svg/SVGTransformable.h:
6515 2006-12-07 Geoffrey Garen <ggaren@apple.com>
6517 Reviewed by Beth Dakin.
6519 Fixed <rdar://problem/4870551> 9A320: <input type="text"> no longer
6520 dispatches onchange event in response to enter key
6522 To match our old behavior and FF, we need to dispatch onchange in response to the
6523 ENTER key. The strategy here is just to dispatch a blur event, since that's how
6524 the search field always worked, and the DOM spec says onchange only fires
6525 as a precursor to blur.
6528 * html/HTMLInputElement.cpp:
6529 (WebCore::HTMLInputElement::defaultEventHandler):
6531 2006-12-07 Adam Roben <aroben@apple.com>
6535 Some small context menu-related fixes.
6537 * html/HTMLFrameSetElement.cpp:
6538 (WebCore::HTMLFrameSetElement::defaultEventHandler): Don't try to
6539 resize on a contextmenuEvent.
6540 * html/HTMLInputElement.cpp:
6541 (WebCore::HTMLInputElement::defaultEventHandler): Only pass the event
6542 off to HTMLGenericFormElement if we haven't handled it.
6544 2006-12-07 Anders Carlsson <acarlsson@apple.com>
6548 <rdar://problem/4838778>
6549 Title: DashboardClient crashing in WebCore::SubresourceLoader::didFail
6551 * loader/SubresourceLoader.cpp:
6552 (WebCore::SubresourceLoader::stopLoading):
6553 * loader/SubresourceLoader.h:
6554 Add stopLoading method which currently just clears the client. This isn't the ideal fix,
6555 since it doesn't actually stop the load.
6557 * loader/mac/SubresourceLoaderMac.mm:
6558 (WebCore::SubresourceLoader::willSendRequest):
6559 (WebCore::SubresourceLoader::didReceiveResponse):
6560 (WebCore::SubresourceLoader::didReceiveData):
6561 (WebCore::SubresourceLoader::didFinishLoading):
6562 (WebCore::SubresourceLoader::didFail):
6563 (WebCore::SubresourceLoader::didCancel):
6566 * xml/xmlhttprequest.cpp:
6567 (WebCore::XMLHttpRequest::abort):
6570 2006-12-07 Kevin McCullough <kmccullough@apple.com>
6574 - added the ability to set the auto repeating variable to force a keyPressed
6575 event from a keyDown event.
6577 * platform/PlatformKeyboardEvent.h:
6578 (WebCore::PlatformKeyboardEvent::setIsAutoRepeat):
6580 2006-12-07 Don Gibson <dgibson77@gmail.com>
6584 http://bugs.webkit.org/show_bug.cgi?id=11749
6585 Don't call updateThumbProportion() unnecessarily.
6587 * platform/ScrollBar.cpp:
6588 (WebCore::Scrollbar::setProportion):
6590 2006-12-07 Beth Dakin <bdakin@apple.com>
6594 Fixes "Open in new Window" item in WebCore ContextMenus. It wasn't
6595 doing anything before, and now it works! Also some formatting
6598 * page/ContextMenuClient.h: Several of the parameters to several of
6599 the functions here should be const or const references. And now
6601 * page/ContextMenuController.cpp:
6602 (WebCore::openNewWindow): Moved the open new window functionality
6603 into a helper function since it is used by several menu item tags.
6604 Now after calling chrome()->createWindow() we call chrome()->show()
6605 on the new window, and so it appears!
6606 (WebCore::ContextMenuController::contextMenuItemSelected): Call new
6607 openNewWindow function to do the right thing. Shift some
6608 formatting, use local variable for HitTestResult. Implement action
6609 for ContextMenuItemTagOpenLink.
6611 2006-12-06 Kevin McCullough <KMcCullough@apple.com>
6615 - Removed a conflict marker
6619 2006-12-06 Justin Garcia <justin.garcia@apple.com>
6623 <rdar://problem/4818134>
6624 Crash in WebCore::selectRange when invoking WebView:insertNewLine in any empty content editable DIV.
6626 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RebalanceWhitespaceCommand.*.
6627 * editing/visible_units.cpp:
6628 (WebCore::startOfLine): There are VisiblePositions at offset 0 in blocks without
6629 RootInlineBoxes, like empty editable blocks and bordered blocks.
6630 (WebCore::endOfLine): Ditto.
6632 2006-12-06 Kevin McCullough <KMcCullough@apple.com>
6636 - Removed a conflict marker
6640 2006-12-06 Justin Garcia <justin.garcia@apple.com>
6644 <rdar://problem/4854869>
6645 Inserting a new line in a contenteditable=true SPAN whose parent is a DIV asserts
6647 * editing/htmlediting.cpp:
6648 (WebCore::enclosingBlock): Use enclosingNodeWithType to prevent escape
6649 from editable content.
6650 * editing/markup.cpp:
6651 (WebCore::createMarkup): A null commonAncestorBlock will happen
6652 if commonAncestor is inside an inline editable root that doesn't
6653 contain any blocks. Removed an early return for this case: the
6654 code below the early return can and must handle it.
6656 2006-12-06 Timothy Hatcher <timothy@apple.com>
6658 Reviewed by Mark Rowe.
6660 <rdar://problem/4843505> Fix cross-library ivar use for 64-bit Objective-C
6662 Adds a new WebCore.LP64.exp file that gets appended to the normal export file.
6663 This new file will have 64-bit only symbols we need to export.
6665 * WebCore.LP64.exp: Added.
6666 * WebCore.xcodeproj/project.pbxproj:
6668 2006-12-06 Anders Carlsson <acarlsson@apple.com>
6672 Change SubresourceLoader to use a ResourceHandle, and change ResourceHandle to use a NSURLConnection.
6674 * loader/ResourceLoader.h:
6675 * loader/SubresourceLoader.cpp:
6676 (WebCore::SubresourceLoader::create):
6677 (WebCore::SubresourceLoader::didReceiveData):
6678 (WebCore::SubresourceLoader::didFinishLoading):
6679 (WebCore::SubresourceLoader::didFail):
6680 * loader/SubresourceLoader.h:
6681 (WebCore::SubresourceLoader::didReceiveAuthenticationChallenge):
6682 (WebCore::SubresourceLoader::didCancelAuthenticationChallenge):
6683 (WebCore::SubresourceLoader::willStopBufferingData):
6684 (WebCore::SubresourceLoader::willCacheResponse):
6685 (WebCore::SubresourceLoader::receivedCredential):
6686 (WebCore::SubresourceLoader::receivedRequestToContinueWithoutCredential):
6687 (WebCore::SubresourceLoader::receivedCancellation):
6688 * loader/SubresourceLoaderClient.h:
6689 (WebCore::SubresourceLoaderClient::didFail):
6690 * loader/icon/IconLoader.cpp:
6691 (WebCore::IconLoader::didFail):
6692 * loader/icon/IconLoader.h:
6693 * loader/loader.cpp:
6694 (WebCore::Loader::didFail):
6696 * loader/mac/ResourceLoaderMac.mm:
6697 (WebCore::ResourceLoader::ResourceLoader):
6698 (WebCore::ResourceLoader::addData):
6699 (WebCore::ResourceLoader::resourceData):
6700 * loader/mac/SubresourceLoaderMac.mm:
6701 (WebCore::SubresourceLoader::SubresourceLoader):
6702 (WebCore::SubresourceLoader::setDefersLoading):
6703 (WebCore::SubresourceLoader::resourceData):
6704 (WebCore::SubresourceLoader::load):
6705 (WebCore::SubresourceLoader::create):
6706 (WebCore::SubresourceLoader::willSendRequest):
6707 (WebCore::SubresourceLoader::didReceiveResponse):
6708 (WebCore::SubresourceLoader::didReceiveData):
6709 (WebCore::SubresourceLoader::didFinishLoading):
6710 (WebCore::SubresourceLoader::didFail):
6711 (WebCore::SubresourceLoader::didCancel):
6712 * platform/network/ResourceHandle.cpp:
6713 (WebCore::ResourceHandle::ResourceHandle):
6714 (WebCore::ResourceHandle::create):
6715 * platform/network/ResourceHandle.h:
6716 * platform/network/ResourceHandleClient.h:
6717 (WebCore::ResourceHandleClient::didReceiveData):
6718 (WebCore::ResourceHandleClient::didFail):
6719 (WebCore::ResourceHandleClient::didReceiveAuthenticationChallenge):
6720 (WebCore::ResourceHandleClient::didCancelAuthenticationChallenge):
6721 (WebCore::ResourceHandleClient::willStopBufferingData):
6722 (WebCore::ResourceHandleClient::willCacheResponse):
6723 (WebCore::ResourceHandleClient::receivedCredential):
6724 (WebCore::ResourceHandleClient::receivedRequestToContinueWithoutCredential):
6725 (WebCore::ResourceHandleClient::receivedCancellation):
6726 * platform/network/ResourceHandleInternal.h:
6727 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
6728 * platform/network/mac/ResourceHandleMac.mm:
6729 (WebCore::ResourceHandle::~ResourceHandle):
6730 (WebCore::ResourceHandle::start):
6731 (WebCore::ResourceHandle::cancel):
6732 (WebCore::ResourceHandle::setDefersLoading):
6733 (WebCore::ResourceHandle::delegate):
6734 (WebCore::ResourceHandle::releaseDelegate):
6735 (WebCore::ResourceHandle::supportsBufferedData):
6736 (WebCore::ResourceHandle::bufferedData):
6737 (-[WebCoreResourceHandleAsDelegate initWithHandle:]):
6738 (-[WebCoreResourceHandleAsDelegate detachHandle]):
6739 (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
6740 (-[WebCoreResourceHandleAsDelegate connection:didReceiveAuthenticationChallenge:]):
6741 (-[WebCoreResourceHandleAsDelegate connection:didCancelAuthenticationChallenge:]):
6742 (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
6743 (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
6744 (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
6745 (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
6746 (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
6747 (-[WebCoreResourceHandleAsDelegate connection:willCacheResponse:]):
6748 (-[WebCoreResourceHandleAsDelegate useCredential:forAuthenticationChallenge:]):
6749 (-[WebCoreResourceHandleAsDelegate continueWithoutCredentialForAuthenticationChallenge:]):
6750 (-[WebCoreResourceHandleAsDelegate cancelAuthenticationChallenge:]):
6751 * xml/xmlhttprequest.cpp:
6752 (WebCore::XMLHttpRequest::didFail):
6753 * xml/xmlhttprequest.h:
6755 2006-12-06 Beth Dakin <bdakin@apple.com>
6759 There are two bugs with WebCore ContextMenus due to the static
6760 ContextMenuItems. One bug is that we often crashed in
6761 NSAutoreleasePool upon quitting the browser. The other bug is that
6762 we were adding static NSMenuItems to multiple NSMenus, which is
6763 disallowed. To fix these bugs, the MenuItems are no longer static.
6764 This is in line with the current design in WebKit anyway. I made
6765 some re-arrangements in the code because I also removed the macro
6766 that was used to create the menu items since it was a bit
6769 * platform/ContextMenu.cpp:
6770 (WebCore::createFontSubMenu):
6771 (WebCore::createSpellingAndGrammarSubMenu):
6772 (WebCore::createSpellingSubMenu):
6773 (WebCore::createSpeechSubMenu):
6774 (WebCore::createWritingDirectionSubMenu):
6775 (WebCore::ContextMenu::populate):
6776 * platform/ContextMenuItem.h:
6777 * platform/mac/ContextMenuItemMac.mm:
6778 (WebCore::ContextMenuItem::ContextMenuItem): Use the NSMenuItem
6779 global separator item if we have SeparatorType.
6780 * platform/mac/ContextMenuMac.mm:
6781 (WebCore::setMenuItemTarget): Change name of getNSMenuItem since
6782 that is no longer accurate.
6783 (WebCore::ContextMenu::appendItem): Above name change.
6784 (WebCore::ContextMenu::insertItem): Same.
6786 2006-12-06 Kevin McCullough <kmccullough@apple.com>
6790 - Returned the semantic meaning of the mask to be the actual repeat count,
6791 and changed auto_repeat to correctly differnetiate between keypressed and keydown.
6793 * platform/win/KeyEventWin.cpp:
6794 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
6796 2006-12-06 Justin Garcia <justin.garcia@apple.com>
6798 Reviewed by harrison
6800 <rdar://problem/4753545>
6801 REGRESSION: Edited whitespace sequences are all nbsps (10636)
6803 * WebCore.xcodeproj/project.pbxproj: Removed RebalanceWhitespaceCommand.* from the project.
6804 * editing/CompositeEditCommand.cpp:
6805 (WebCore::isWhitespace): Moved from htmlediting.
6806 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Moved the work that was
6807 once done in its own command here.
6808 (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit): Prevents
6809 whitespace around a position from collapsing when it's pushed apart during Paste.
6810 This function can eventually be deployed to eliminate the need for leading/trailing
6811 whitespace handling in InsertParagraphSeparator, InsertLineBreak, Delete, and BreakBlockquote.
6812 (WebCore::CompositeEditCommand::rebalanceWhitespace): Cleaned up.
6813 * editing/CompositeEditCommand.h:
6814 * editing/DeleteSelectionCommand.cpp:
6815 (WebCore::DeleteSelectionCommand::doApply): Do rebalanceWhitespaceAt *before*
6816 saving the typing style, because whitespace rebalancing is no longer it's own
6817 command that claims to preserve the typing style.
6818 * editing/RebalanceWhitespaceCommand.cpp: Removed.
6819 * editing/RebalanceWhitespaceCommand.h: Removed.
6820 * editing/ReplaceSelectionCommand.cpp:
6821 (WebCore::ReplaceSelectionCommand::doApply): Moved the code to prepare whitespace
6822 arond a position for being pushed aparat to its own method.
6823 * editing/htmlediting.cpp:
6824 (WebCore::stringWithRebalancedWhitespace): Added. Returns a rebalanced string.
6825 Takes in whether or not the beginning of that string will be at the start of
6826 a paragraph, because a space at such a position must have be nbsp, even if
6827 that doesn't follow the nbsp/space pattern used. Similar stuff for the end
6829 * editing/htmlediting.h:
6830 * editing/markup.cpp:
6831 (WebCore::fillContainerFromString): Call stringWithRelabacedWhitespace. Pass
6832 it the startOfParagraph/endOfParagraph bools.
6834 2006-12-05 John Sullivan <sullivan@apple.com>
6838 Moved spelling and grammar code from Frame to Editor
6841 updated for these changes
6844 removed declarations of spelling and grammar functions
6846 * bridge/mac/FrameMac.h:
6847 removed declarations of spelling and grammar functions
6849 * bridge/mac/FrameMac.mm:
6850 moved implementation of spelling and grammar functions from here
6851 (WebCore::FrameMac::respondToChangedSelection):
6852 updated for moved functions
6855 moved declarations of spelling and grammar functions to here
6857 * editing/mac/EditorMac.mm:
6858 moved implementation of spelling and grammar functions to here; changed
6859 only to make it compile (e.g. removing "editor()->" and adding "frame()->"
6861 (WebCore::findFirstMisspellingInRange):
6862 (WebCore::paragraphAlignedRangeForRange):
6863 (WebCore::findFirstGrammarDetailInRange):
6864 (WebCore::findFirstBadGrammarInRange):
6865 (WebCore::Editor::advanceToNextMisspelling):
6866 (WebCore::Editor::isSelectionMisspelled):
6867 (WebCore::isRangeUngrammatical):
6868 (WebCore::Editor::isSelectionUngrammatical):
6869 (WebCore::Editor::guessesForUngrammaticalSelection):
6871 (WebCore::Editor::guessesForMisspelledSelection):
6872 (WebCore::Editor::markMisspellingsInAdjacentWords):
6873 (WebCore::markAllMisspellingsInRange):
6874 (WebCore::markAllBadGrammarInRange):
6875 (WebCore::Editor::markMisspellings):
6877 * platform/ContextMenu.cpp:
6878 (WebCore::ContextMenu::populate):
6879 updated for moved functions
6881 * editing/TypingCommand.cpp:
6882 (WebCore::TypingCommand::markMisspellingsAfterTyping):
6883 updated for moved functions
6885 2006-12-05 Anders Carlsson <acarlsson@apple.com>
6889 General cleanup, get rid of PlatformResponse (we have ResourceResponse now)
6890 and remove a couple of functions that were unused.
6892 * loader/CachedResource.h:
6893 * loader/LoaderFunctions.h:
6894 * loader/mac/LoaderFunctionsMac.mm:
6895 * platform/network/ResourceHandle.h:
6896 * platform/network/ResourceHandleClient.h:
6897 * platform/network/mac/ResourceHandleMac.mm:
6898 (WebCore::ResourceHandle::~ResourceHandle):
6900 2006-12-05 Kevin McCullough <kmccullough@apple.com>
6904 - keydown is now a keydown event instead of a keypress event.
6905 Fixes some form submission oddities.
6907 * platform/win/KeyEventWin.cpp:
6909 2006-12-05 John Sullivan <sullivan@apple.com>
6913 * editing/mac/EditorMac.mm:
6914 declare -[NSSpellChecker learnWord:], on Tiger only (it's API on Leopard)
6916 2006-12-05 John Sullivan <sullivan@apple.com>
6918 Reviewed by Geoff Garen
6921 remove declarations of ignoreSpelling() and learnSpelling()
6923 * bridge/mac/FrameMac.h:
6924 remove declarations of ignoreSpelling() and learnSpelling()
6925 * bridge/mac/FrameMac.mm:
6926 moved implementations of ignoreSpelling() and learnSpelling() from here
6929 added declarations of ignoreSpelling() and learnSpelling()
6931 * editing/mac/EditorMac.mm:
6932 (WebCore::Editor::ignoreSpelling):
6933 moved here from FrameMac.mm
6934 (WebCore::Editor::learnSpelling):
6937 * page/ContextMenuController.cpp:
6938 (WebCore::ContextMenuController::contextMenuItemSelected):
6939 updated callers to use frame()->editor() rather than frame()
6941 2006-12-05 John Sullivan <sullivan@apple.com>
6945 New context-menu mechanism fix for:
6946 <rdar://problem/4864351> Should leave out "No Guesses Found" from context menu for bad grammar
6948 * platform/ContextMenu.cpp:
6949 (WebCore::ContextMenu::populate):
6950 Leave out "No Guesses Found" and separator for grammar-checking case.
6952 2006-12-05 Rob Buis <buis@kde.org>
6956 http://bugs.webkit.org/show_bug.cgi?id=11686
6957 WebKit draws Carto.net tabgroup example completely incorrectly (ff does fine)
6959 Make sure the SVG render objects are laid out before measuring their
6960 dimensions using relativeBBox.
6962 * ksvg2/svg/SVGLocatable.cpp:
6963 (WebCore::SVGLocatable::getBBox):
6965 2006-12-05 John Sullivan <sullivan@apple.com>
6969 Grammar/Spelling code re-homing, baby step one: put isGrammarCheckingEnabled in Editor
6970 since that's where isContinousSpellCheckingEnabled lives.
6973 * editing/Editor.cpp:
6974 (WebCore::Editor::isGrammarCheckingEnabled):
6975 new method, calls through to client a la isContinuousSpellCheckingEnabled
6977 * bridge/mac/FrameMac.mm:
6978 (WebCore::FrameMac::advanceToNextMisspelling):
6979 call editor() rather than editor()->client()
6980 (WebCore::FrameMac::markMisspellings):
6983 * platform/ContextMenu.cpp:
6984 (WebCore::ContextMenu::populate):
6987 2006-12-05 Darin Adler <darin@apple.com>
6993 * html/HTMLInputElement.h: Removed unneeded includes of RenderObject.h
6995 * html/HTMLSelectElement.h: Removed unneeded include of RenderStyle.h.
6996 * ksvg2/svg/SVGStyledElement.h: Removed unneeded include of RenderStyle.h.
6998 * ksvg2/svg/SVGSVGElement.h: Remove unneeded parameter to createSVGPoint.
6999 * ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::createSVGPoint):
7002 * ksvg2/scripts/generateJSBindings.pl: Removed unused script.
7004 2006-12-05 Darin Adler <darin@apple.com>
7006 * doc: Removed empty directory. It's not clear this is a good place for
7007 documentation, so lets add it back later if we actually start using it.
7009 2006-12-05 Anders Carlsson <acarlsson@apple.com>
7011 Reviewed by Brady, Darin.
7013 * loader/loader.cpp:
7014 (WebCore::Loader::receivedAllData):
7015 Remove ref() call that was left around by mistake.
7017 2006-12-05 Sam Weinig <sam@webkit.org>
7021 Fix for http://bugs.webkit.org/show_bug.cgi?id=11758
7022 Don't compile custom SVG and XSLT bindings in non-svg build
7024 * bindings/js/JSSVGNumber.cpp:
7025 * bindings/js/JSSVGNumber.h:
7026 * bindings/js/JSSVGPoint.cpp:
7027 * bindings/js/JSSVGPoint.h:
7028 * bindings/js/JSSVGRect.cpp:
7029 * bindings/js/JSSVGRect.h:
7030 * bindings/js/JSXSLTProcessor.cpp:
7031 * bindings/js/JSXSLTProcessor.h:
7033 2006-12-04 John Sullivan <sullivan@apple.com>
7037 WebCore part of fix for:
7038 <rdar://problem/4817188> Context menu for bad grammar should include suggestions and "Ignore Grammar"
7040 The context menu mechanism is currently in flux; the old mechanism is still in place, but an
7041 up-and-coming new mechanism is waiting in the wings. I updated both of them, but couldn't
7042 test the new mechanism because it doesn't work well enough yet. Also, some of this code
7043 should move from Frame to Editor, but that will wait for another checkin.
7046 added pure virtual function declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
7048 * bridge/mac/FrameMac.h:
7049 added virtual functions declarations for isSelectionUngrammatical() and guessesForUngrammaticalSelection()
7051 * bridge/mac/FrameMac.mm:
7052 (WebCore::FrameMac::isSelectionMisspelled):
7053 now updates spelling panel (whether or not it's showing), since this is now needed to make -[NSSSpellChecker
7054 ignoreWord:inSpellDocumentWithTag:] work correctly
7055 (WebCore::isRangeUngrammatical):
7056 new function, helper used by both isSelectionUngrammatical() and guessesForUngrammaticalSelection()
7057 (WebCore::FrameMac::isSelectionUngrammatical):
7058 new function, calls isRangeUngrammatical
7059 (WebCore::FrameMac::guessesForUngrammaticalSelection):
7062 * platform/ContextMenu.cpp:
7063 (WebCore::ContextMenu::populate):
7064 now considers bad grammar as well as misspellings
7066 * platform/ContextMenuItem.h:
7067 added ContextMenuItemTagIgnoreGrammar
7069 2006-12-05 Kirby White <KWhiteRight@gmail.com>
7071 Reviewed, tweaked and landed by Alexey.
7073 <http://bugs.webkit.org/show_bug.cgi?id=11639> Form buttons don't look different when clicked
7075 * rendering/RenderThemeWin.cpp:
7076 (WebCore::RenderThemeWin::determineState): Moved test for active
7077 state before test for hover state, since active should override hover
7080 * platform/gdk/RenderThemeGdk.cpp:
7081 (WebCore::RenderThemeGdk::determineState): Same fix.
7083 2006-12-05 Kirby White <KWhiteRight@gmail.com>
7085 Reviewed and landed by Alexey.
7087 http://bugs.webkit.org/show_bug.cgi?id=11681
7088 Don't select the first option when resetting a listbox-style form
7089 control (i.e., a multi-select control or one with size > 1) that
7090 has no default selection.
7092 Test: fast/dom/HTMLSelectElement/listbox-select-reset.html
7094 * html/HTMLSelectElement.cpp:
7095 (WebCore::HTMLSelectElement::reset):
7097 2006-12-05 Lars Naesbye Christensen <lars@naesbye.dk>
7099 Reviewed and landed by Alexey.
7101 http://bugs.webkit.org/show_bug.cgi?id=11752
7102 [CSS 3] missing support for cursor selector 'copy'
7104 * Resources/copyCursor.png: Added.
7105 * WebCore.xcodeproj/project.pbxproj:
7106 * css/CSSComputedStyleDeclaration.cpp:
7107 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
7108 * css/CSSValueKeywords.in:
7109 * manual-tests/cursor.html:
7110 * page/EventHandler.cpp:
7111 (WebCore::selectCursor):
7112 * platform/Cursor.h:
7113 * platform/mac/CursorMac.mm:
7114 (WebCore::copyCursor):
7115 * rendering/RenderStyle.h:
7118 2006-12-04 Beth Dakin <bdakin@apple.com>
7122 Fix from last check-in. This line was badbad.
7124 * platform/mac/ContextMenuMac.mm:
7125 (WebCore::ContextMenu::~ContextMenu):
7127 2006-12-04 Beth Dakin <bdakin@apple.com>
7131 With the new changes to ContextMenuItems, WebCore context menus
7132 stopped appearing at all. And then when I got them to appear, they
7133 crashed. This fixes both of these problems.
7135 * platform/mac/ContextMenuItemMac.mm:
7136 (WebCore::ContextMenuItem::ContextMenuItem): keyEquivalent cannot
7137 be nil. This was causing Obj-C to throw an exception preventing the
7138 menus from popping up at all.
7139 * platform/mac/ContextMenuMac.mm:
7140 (+[WebCoreMenuTarget sharedMenuTarget]): Re-name our static
7141 MenuTarget so that it is more clear that it is a static and shared
7143 (WebCore::ContextMenu::ContextMenu): Initialize the
7144 WebCoreMenuTarget's controller in the ContextMenu constructor
7145 instead of in getNSMenuItem since the controller will only possibly
7146 change when a new ContextMenu has been created.
7147 (WebCore::ContextMenu::~ContextMenu): Set the target's controller
7149 (WebCore::getNSMenuItem): A lot of this work is being done other
7150 places now. Call new class method on WebCoreMenuTarget to get the
7152 (WebCore::ContextMenu::appendItem): We should not be releasing the
7153 menuItem here! This caused the crashes I saw.
7154 (WebCore::ContextMenu::insertItem): Same.
7156 2006-12-04 Anders Carlsson <acarlsson@apple.com>
7160 * loader/mac/SubresourceLoaderMac.mm:
7161 (WebCore::SubresourceLoader::~SubresourceLoader):
7162 Add back the destructor.
7164 2006-12-04 Anders Carlsson <acarlsson@apple.com>
7168 Change all ResourceHandleClients to be SubresourceLoaderClients instead. Also,
7169 make SubresourceLoader a ResourceHandleClient. This is a first step towards turning ResourceHandle into a
7170 standalone class which doesn't need to know about SubresourceLoader.
7172 * WebCore.xcodeproj/project.pbxproj:
7173 * loader/ResourceLoader.cpp:
7174 (WebCore::ResourceLoader::~ResourceLoader):
7175 (WebCore::ResourceLoader::ResourceLoader):
7176 (WebCore::ResourceLoader::setDefersLoading):
7177 * loader/SubresourceLoader.cpp:
7178 (WebCore::SubresourceLoader::SubresourceLoader):
7179 (WebCore::SubresourceLoader::~SubresourceLoader):
7180 (WebCore::SubresourceLoader::create):
7181 (WebCore::SubresourceLoader::willSendRequest):
7182 (WebCore::SubresourceLoader::didReceiveResponse):
7183 (WebCore::SubresourceLoader::didReceiveData):
7184 (WebCore::SubresourceLoader::didFinishLoading):
7185 (WebCore::SubresourceLoader::didFailWithError):
7186 (WebCore::SubresourceLoader::receivedAllData):
7187 * loader/SubresourceLoader.h:
7188 (WebCore::SubresourceLoader::loaderAsResourceHandleClient):
7189 (WebCore::SubresourceLoader::handle):
7190 * loader/SubresourceLoaderClient.h: Added.
7191 (WebCore::SubresourceLoaderClient::~SubresourceLoaderClient):
7192 (WebCore::SubresourceLoaderClient::willSendRequest):
7193 (WebCore::SubresourceLoaderClient::didReceiveResponse):
7194 (WebCore::SubresourceLoaderClient::didReceiveData):
7195 (WebCore::SubresourceLoaderClient::didFinishLoading):
7196 (WebCore::SubresourceLoaderClient::didFailWithError):
7197 (WebCore::SubresourceLoaderClient::receivedAllData):
7198 * loader/icon/IconLoader.cpp:
7199 (WebCore::IconLoader::startLoading):
7200 (WebCore::IconLoader::stopLoading):
7201 (WebCore::IconLoader::didReceiveResponse):
7202 (WebCore::IconLoader::didReceiveData):
7203 (WebCore::IconLoader::didFailWithError):
7204 (WebCore::IconLoader::didFinishLoading):
7205 (WebCore::IconLoader::clearLoadingState):
7206 * loader/icon/IconLoader.h:
7207 * loader/loader.cpp:
7208 (WebCore::Loader::servePendingRequests):
7209 (WebCore::Loader::receivedAllData):
7210 (WebCore::Loader::didFailWithError):
7211 (WebCore::Loader::didReceiveResponse):
7212 (WebCore::Loader::didReceiveData):
7213 (WebCore::Loader::cancelRequests):
7215 * loader/mac/SubresourceLoaderMac.mm:
7216 (WebCore::SubresourceLoader::SubresourceLoader):
7217 (WebCore::SubresourceLoader::create):
7218 (WebCore::SubresourceLoader::willSendRequest):
7219 (WebCore::SubresourceLoader::didReceiveResponse):
7220 (WebCore::SubresourceLoader::didReceiveData):
7221 (WebCore::SubresourceLoader::didFinishLoading):
7222 (WebCore::SubresourceLoader::didFail):
7223 (WebCore::SubresourceLoader::didCancel):
7224 * platform/network/ResourceHandle.cpp:
7225 (WebCore::ResourceHandle::ResourceHandle):
7226 (WebCore::ResourceHandle::create):
7227 * platform/network/ResourceHandle.h:
7228 * platform/network/ResourceHandleClient.h:
7229 * platform/network/ResourceHandleInternal.h:
7230 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
7231 * platform/network/mac/ResourceHandleMac.mm:
7232 (WebCore::ResourceHandle::start):
7233 (WebCore::ResourceHandle::finishJobAndHandle):
7234 (WebCore::ResourceHandle::loader):
7235 * xml/xmlhttprequest.cpp:
7236 (WebCore::XMLHttpRequest::send):
7237 (WebCore::XMLHttpRequest::didFailWithError):
7238 (WebCore::XMLHttpRequest::didFinishLoading):
7239 (WebCore::XMLHttpRequest::willSendRequest):
7240 (WebCore::XMLHttpRequest::didReceiveResponse):
7241 (WebCore::XMLHttpRequest::didReceiveData):
7242 * xml/xmlhttprequest.h:
7244 2006-12-04 Darin Adler <darin@apple.com>
7248 - fix another part of http://bugs.webkit.org/show_bug.cgi?id=11628
7249 REGRESSION (r17597): Command-return in text fields doesn't open a new tab or window
7251 This fixes command-return when the focus is on a link.
7252 Despite the title of the bug, Mitz wanted me to fix both, and I will not
7255 Test: fast/events/simulated-key-state.html
7257 * dom/EventTargetNode.cpp:
7258 (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): Instead of always passing
7259 false for all the key state in simulated mouse events, pass the state from the
7260 first underlying event in the chain that has key state; in the case in the bug,
7261 the keyboard event will be the underlying event itself and we'll propagate the
7262 alt key modifier to the mouse event, resulting in the effect we want. It's nice
7263 that JavaScript also gets to see the proper modifiers in the mouse event.
7265 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler):
7266 Added code to pass in an underlying event to dispatchSimulatedClick. After looking
7267 at all the other callers, this seems to be the only one that needs to pass an
7268 event that is currently passing 0. Also removed the code that only simulated a
7269 click when the event has a PlatformKeyboardEvent -- no reason for that and it
7270 prevented me from writing a layout test for the fix.
7272 * dom/UIEventWithKeyState.h: Added findEventWithKeyState function that walks the
7273 underlyingEvent chain to find the first event that has key state. This already
7274 existed in WebKit, but I wanted to use it in dispatchSimulatedMouseEvent.
7275 * dom/UIEventWithKeyState.cpp: Added.
7277 * CMakeLists.txt: Added UIEventWithKeyState.cpp.
7278 * WebCore.vcproj/WebCore/WebCore.vcproj: Added UIEventWithKeyState.cpp.
7279 * WebCore.xcodeproj/project.pbxproj: Added UIEventWithKeyState.cpp.
7280 * WebCoreSources.bkl: Added UIEventWithKeyState.cpp.
7282 * WebCore.exp: Added findEventWithKeyState, used by WebKit.
7284 2006-12-04 Kevin McCullough <KMcCullough@apple.com>
7288 - rdar://problem/4833935
7289 - removed the guards for the "multiple forms submission" issue, which may not be
7290 an issue anymore and the guards prevent perfectly legitimate websites from
7293 * bridge/mac/FrameMac.mm:
7294 (WebCore::FrameMac::setView):
7295 * bridge/mac/WebCoreAXObject.mm:
7296 (-[WebCoreAXObject accessibilityPerformAction:]):
7297 * bridge/win/FrameWin.cpp:
7298 (WebCore::FrameWin::keyPress):
7300 * loader/FrameLoader.cpp:
7301 (WebCore::FrameLoader::submitForm):
7302 * loader/FrameLoader.h:
7303 * loader/mac/FrameLoaderMac.mm:
7304 (WebCore::FrameLoader::receivedMainResourceError):
7305 * loader/qt/FrameLoaderQt.cpp:
7306 (WebCore::FrameLoader::submitForm):
7308 (WebCore::Frame::setView):
7309 * page/mac/EventHandlerMac.mm:
7310 (WebCore::EventHandler::keyEvent):
7311 (WebCore::EventHandler::mouseDown):
7312 * platform/qt/FrameQt.cpp:
7313 (WebCore::FrameQt::keyEvent):
7315 2006-12-02 Geoffrey Garen <ggaren@apple.com>
7317 Reviewed by Darin Adler.
7319 Added support for Dashboard backward compatibility mode.
7321 * html/CanvasRenderingContext2D.cpp:
7322 (WebCore::CanvasRenderingContext2D::stroke): Added support for old behavior
7323 of automatically clearing the stroke path buffer after a call to stroke().
7324 * html/HTMLCanvasElement.cpp: Added supoprt for old behavior of the canvas
7325 tag being self-closing.
7326 (WebCore::HTMLCanvasElement::endTagRequirement):
7327 (WebCore::HTMLCanvasElement::tagPriority):
7328 * html/HTMLCanvasElement.h:
7329 * html/HTMLParser.cpp: Ditto.
7330 (WebCore::HTMLParser::canvasCreateErrorCheck):
7331 * xml/xmlhttprequest.cpp: Added support for old behavior of silently ignoring
7332 a call to setRequestHeader() if it preceded a call to open() or followed a call
7334 (WebCore::XMLHttpRequest::setRequestHeader):
7336 2006-12-04 Darin Adler <darin@apple.com>
7340 * bridge/EditorClient.h: Removed "_web_" prefix from
7341 C++ userVisibleString member function. Alice will probably change
7342 this so it's not on the editor client any more later.
7344 * editing/Editor.h: Removed "_web_" prefix from
7345 C++ userVisibleString member function.
7346 * editing/Editor.cpp: Tweaked formatting a bit. Removed Mac-specific
7347 code from this file.
7349 * editing/mac/EditorMac.mm:
7350 (WebCore::Editor::newGeneralClipboard): Removed unnneded local variable.
7351 (WebCore::Editor::userVisibleString): Moved this function here.
7353 * platform/Pasteboard.h: Added some FIXMEs. Removed unneeded includes.
7354 Made Pasteboard noncopyable. Removed use of "protected" where we should
7355 be using "private". Removed s_generalPasteboard.
7356 * platform/mac/PasteboardMac.mm: Added some FIXMEs. Removed the
7357 s_generalPasteboard global. Removed the unused destructor. Updated call
7358 to userVisibleString for name change. Tweaked formatting.
7360 2006-12-04 Alice Liu <alice.liu@apple.com>
7364 Moved some constants from EventHandlerMac.mm to EventHandler.cpp
7365 Added some platform-specific data members and functions.
7367 * page/EventHandler.cpp:
7368 * page/EventHandler.h:
7369 * page/mac/EventHandlerMac.mm:
7370 * platform/PlatformMouseEvent.h:
7372 (WebCore::PlatformMouseEvent::timestamp):
7373 (WebCore::PlatformMouseEvent::activatedWebView):
7374 (WebCore::PlatformMouseEvent::type):
7376 2006-12-04 Anders Carlsson <acarlsson@apple.com>
7378 Reviewed by Darin, Geoff.
7380 Get rid of ResourceHandle::kill(), all it did was to balance out a ref() in ResourceHandle::start().
7381 We use RefPtrs to ResourceHandle instead.
7383 * loader/icon/IconLoader.cpp:
7384 (WebCore::IconLoader::~IconLoader):
7385 (WebCore::IconLoader::stopLoading):
7386 (WebCore::IconLoader::didReceiveResponse):
7387 * loader/loader.cpp:
7388 (WebCore::Loader::servePendingRequests):
7389 (WebCore::Loader::cancelRequests):
7390 (WebCore::Loader::jobForRequest):
7392 * platform/network/ResourceHandle.cpp:
7393 * platform/network/ResourceHandle.h:
7394 * platform/network/mac/ResourceHandleMac.mm:
7395 (WebCore::ResourceHandle::start):
7396 (WebCore::ResourceHandle::finishJobAndHandle):
7397 (WebCore::ResourceHandle::reportError):
7398 * xml/xmlhttprequest.cpp:
7399 (WebCore::XMLHttpRequest::abort):
7400 (WebCore::XMLHttpRequest::didFinishLoading):
7402 2006-12-04 Oliver Hunt <oliver@apple.com>
7404 Build fix for non-SVG builds
7406 * bindings/js/JSSVGPoint.cpp:
7407 (WebCore::JSSVGPointProtoFunc::callAsFunction):
7409 2006-12-04 Darin Adler <darin@apple.com>
7413 - fix http://bugs.webkit.org/show_bug.cgi?id=11632
7414 AKA <rdar://problem/4858866> REGRESSION (r17770): Overflow areas' scrollbars don't work
7416 No test case added at the moment, but Beth said she'd investigate
7417 adding one after the fact.
7419 * page/mac/EventHandlerMac.mm:
7420 (WebCore::EventHandler::passMousePressEventToScrollbar):
7421 Fix obvious-in-retrospect copy and paste error -- call
7422 passMouseDownEventToWidget instead of passWheelEventToWidget.
7424 2006-12-04 Don Gibson <dgibson77@gmail.com>
7426 Reviewed and landed by Alexey.
7428 http://bugs.webkit.org/show_bug.cgi?id=11738:
7429 Make link clicking work again on Windows.
7431 This re-implements a few functions that used to be part of FrameWin in
7432 their new loader-based locations, and copies a few things from the Mac
7433 and Qt event handling code that aren't strictly necessary but are
7436 * WebCore.vcproj/WebCore/WebCore.vcproj:
7437 * bridge/win/ChromeClientWin.h:
7438 * bridge/win/ContextMenuClientWin.h:
7439 * bridge/win/EditorClientWin.h:
7440 * bridge/win/FrameWin.cpp:
7441 (WebCore::FrameWin::client):
7442 * bridge/win/FrameWin.h:
7443 * loader/win/DocumentLoaderWin.cpp: Added.
7444 (WebCore::DocumentLoader::setTitle):
7445 * loader/win/FrameLoaderClientWin.cpp: Added.
7446 (WebCore::FrameLoaderClientWin::userAgent):
7447 * loader/win/FrameLoaderClientWin.h:
7448 * loader/win/FrameLoaderWin.cpp: Added.
7449 (WebCore::FrameLoader::urlSelected):
7450 (WebCore::FrameLoader::submitForm):
7451 (WebCore::FrameLoader::setTitle):
7452 * page/win/EventHandlerWin.cpp: Added.
7453 (WebCore::EventHandler::passMousePressEventToSubframe):
7454 (WebCore::EventHandler::passMouseMoveEventToSubframe):
7455 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
7456 (WebCore::EventHandler::passWheelEventToSubframe):
7457 (WebCore::EventHandler::passMousePressEventToScrollbar):
7458 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
7459 * platform/win/TemporaryLinkStubs.cpp:
7460 (WebCore::EventHandler::tabsToLinks):
7461 (WebCore::EventHandler::tabsToAllControls):
7462 (WebCore::EventHandler::lastEventIsMouseUp):
7463 (WebCore::EventHandler::passSubframeEventToSubframe):
7464 (WebCore::EventHandler::passMouseDownEventToWidget):
7465 (WebCore::EventHandler::passWheelEventToWidget):
7466 (WebCore::FrameLoader::getHistoryLength):
7467 (WebCore::FrameLoader::historyURL):
7468 (WebCore::FrameLoader::createFrame):
7469 (WebCore::FrameLoaderClientWin::setTitle):
7471 2006-12-04 Don Gibson <dgibson77@gmail.com>
7475 http://bugs.webkit.org/show_bug.cgi?id=11748:
7476 Windows build bustage.
7478 * WebCore.vcproj/WebCore/WebCore.vcproj:
7479 * platform/ContextMenuItem.h:
7480 * platform/win/TemporaryLinkStubs.cpp:
7481 (WebCore::ContextMenuItem::ContextMenuItem):
7482 (WebCore::ContextMenuItem::platformDescription):
7483 (WebCore::ContextMenuItem::action):
7484 (WebCore::ContextMenuItem::setAction):
7485 (WebCore::ContextMenuItem::title):
7486 (WebCore::ContextMenuItem::setTitle):
7487 (WebCore::ContextMenuItem::platformSubMenu):
7488 (WebCore::ContextMenuItem::setSubMenu):
7490 2006-12-04 John Sullivan <sullivan@apple.com>
7494 Moved EditorMac.mm to its appropriate location
7496 * platform/mac/EditorMac.mm: Removed.
7497 * editing/mac/EditorMac.mm: Added
7499 * WebCore.xcodeproj/project.pbxproj:
7500 updated for this change
7502 2006-12-04 Rob Buis <buis@kde.org>
7508 http://bugs.webkit.org/show_bug.cgi?id=3280
7509 With LEGEND element, align=right value is not supported
7510 http://bugs.webkit.org/show_bug.cgi?id=11544
7511 <legend> rendering doesn't take align into account
7513 Allow aligning for legends in both RTL and LTR mode.
7515 * rendering/RenderFieldset.cpp:
7516 (WebCore::RenderFieldset::layoutLegend):
7518 2006-12-03 Mark Rowe <bdash@webkit.org>
7522 http://bugs.webkit.org/show_bug.cgi?id=11730
7523 Bug 11730: Meta HTTP Refresh that contains a fraction / decimal get ignored.
7526 (WebCore::Document::processHttpEquiv): Parse the refresh interval as a double rather than an integer.
7528 2006-12-03 Nikolas Zimmermann <zimmermann@kde.org>
7533 http://bugs.webkit.org/show_bug.cgi?id=11734
7534 http://bugs.webkit.org/show_bug.cgi?id=11685
7536 SVGPoint/SVGRect/SVGNumber were missing put() support.
7537 SVGPoint.matrixTransform() was missing.
7539 In SVG DOM there are no cases where a readwrite property
7540 exists of type SVGRect/SVGNumber/SVGPoint. Only function
7541 calls returns instances of these objects. It would make
7542 no sense to be able to write "someObj.getBbox().x = 100", and
7543 modify the actual stored internal value of "someObj".
7545 The only cases where these modification makes sense, is
7546 when these SVGPoint/SVGRect/SVGNumber objects are created
7547 via document.rootElement.createSVGPoint/Rect/Number (SVGSVGElement interface).
7549 Result: The current implementation, where we just modify the stored FloatPoint/FloatRect/double
7550 values in the JSSVGPoint/Rect/Number wrappers directly, is sufficient.
7552 Patch created by Rob & me - co production.
7553 Long live the great carto.next examples! :-)
7556 * DerivedSources.make:
7557 * bindings/js/JSSVGNumber.cpp:
7559 (WebCore::JSSVGNumber::getOwnPropertySlot):
7560 (WebCore::JSSVGNumber::getValueProperty):
7561 (WebCore::JSSVGNumber::put):
7562 (WebCore::JSSVGNumber::putValueProperty):
7563 * bindings/js/JSSVGNumber.h:
7564 (WebCore::JSSVGNumber::):
7565 (WebCore::JSSVGNumber::impl):
7566 * bindings/js/JSSVGPoint.cpp:
7567 (WebCore::JSSVGPoint::JSSVGPoint):
7568 (WebCore::JSSVGPoint::put):
7569 (WebCore::JSSVGPoint::putValueProperty):
7570 (WebCore::JSSVGPointProtoFunc::callAsFunction):
7571 * bindings/js/JSSVGPoint.h:
7572 (WebCore::JSSVGPoint::):
7573 * bindings/js/JSSVGRect.cpp:
7574 (WebCore::JSSVGRect::put):
7575 (WebCore::JSSVGRect::putValueProperty):
7576 * bindings/js/JSSVGRect.h:
7577 * bindings/objc/DOMSVGPoint.mm:
7578 (-[DOMSVGPoint matrixTransform:]):
7579 * platform/graphics/FloatPoint.cpp:
7580 (WebCore::FloatPoint::matrixTransform):
7581 * platform/graphics/FloatPoint.h:
7583 2006-12-03 Nikolas Zimmermann <zimmermann@kde.org>
7587 Another missing piece in the platform/graphics move.
7589 * WebCore.xcodeproj/project.pbxproj:
7590 * platform/ImageAnimationObserver.h: Moved to platform/graphics.
7592 2006-12-03 Rob Buis <buis@kde.org>
7596 http://bugs.webkit.org/show_bug.cgi?id=11667
7597 SVG: method .getTransformToElement(elt) in SVGLocatable not implemented
7599 Implement getTransformToElement functionality. Introduce virtual
7600 baseclass SVGLocatable to allow one implementation of the functionality.
7601 Finally cleanup some code.
7603 * ksvg2/svg/SVGLocatable.cpp:
7604 (WebCore::SVGLocatable::getTransformToElement):
7605 * ksvg2/svg/SVGLocatable.h:
7606 * ksvg2/svg/SVGStyledLocatableElement.cpp:
7607 (WebCore::SVGStyledLocatableElement::SVGStyledLocatableElement):
7608 (WebCore::SVGStyledLocatableElement::nearestViewportElement):
7609 (WebCore::SVGStyledLocatableElement::farthestViewportElement):
7610 (WebCore::SVGStyledLocatableElement::getCTM):
7611 (WebCore::SVGStyledLocatableElement::getScreenCTM):
7612 * ksvg2/svg/SVGStyledLocatableElement.h:
7613 * ksvg2/svg/SVGStyledTransformableElement.cpp:
7614 (WebCore::SVGStyledTransformableElement::SVGStyledTransformableElement):
7615 (WebCore::SVGStyledTransformableElement::localMatrix):
7616 (WebCore::SVGStyledTransformableElement::getCTM):
7617 (WebCore::SVGStyledTransformableElement::getScreenCTM):
7618 (WebCore::SVGStyledTransformableElement::updateLocalTransform):
7619 (WebCore::SVGStyledTransformableElement::parseMappedAttribute):
7620 (WebCore::SVGStyledTransformableElement::nearestViewportElement):
7621 (WebCore::SVGStyledTransformableElement::farthestViewportElement):
7622 * ksvg2/svg/SVGStyledTransformableElement.h:
7623 * ksvg2/svg/SVGTextElement.h:
7624 * ksvg2/svg/SVGTransformable.h:
7626 2006-12-03 Nikolas Zimmermann <zimmermann@kde.org>
7630 Move some files around, which have been forgotton in the platform/graphics move.
7633 * WebCore.xcodeproj/project.pbxproj:
7634 * platform/mac/GraphicsContextMac.mm: Moved to platform/graphics/mac.
7635 * platform/qt/GraphicsContextQt.cpp: Moved to platform/grahpics/qt.
7637 2006-12-03 Nikolas Zimmermann <zimmermann@kde.org>
7643 * platform/graphics/GraphicsContext.h:
7644 * platform/mac/GraphicsContextMac.mm:
7646 2006-12-02 John Sullivan <sullivan@apple.com>
7648 Reviewed by Tim Omernick
7650 Removed a couple of big chunks of duplicated code from the spelling and grammar stuff by merging
7651 the find-next-instance functions with the mark-all-instances functions.
7653 * bridge/mac/FrameMac.mm:
7654 (WebCore::findFirstMisspellingInRange):
7655 added markAll parameter, and reworked loop so that if markAll parameter is true, this function loops
7656 through the entire range and marks each misspelling
7657 (WebCore::findFirstGrammarDetailInRange):
7658 extracted from findFirstBadGrammarInRange; loops through the potentially-multiple details in a given
7659 ungrammatical phrase (e.g., multiple grammar errors in one sentence). Has a markAll parameter akin
7660 to the one in findFirstMisspellingInRange.
7661 (WebCore::findFirstBadGrammarInRange):
7662 added markAll parameter like the one in findFirstMisspellingInRange, and extracted findFirstGrammarDetailInRange
7663 (WebCore::FrameMac::advanceToNextMisspelling):
7664 pass "false" for new markAll parameters
7665 (WebCore::markAllMisspellingsInRange):
7666 now just calls findFirstMisspellingInRange with markAll = true, thus removing a big hunk of duplicated code
7667 (WebCore::markAllBadGrammarInRange):
7668 now just calls findFirstBadGrammarInRange with markAll = true, thus removing a big hunk of duplicated code
7670 2006-12-02 Mitz Pettel <mitz@webkit.org>
7674 - fix http://bugs.webkit.org/show_bug.cgi?id=11672
7675 REGRESSION (r17068): Repro crash due to painting without layout
7677 Test: fast/dynamic/containing-block-change.html
7679 * rendering/RenderObject.cpp:
7680 (WebCore::RenderObject::setStyle): Changed the logic used
7681 to find absolutely positioned descendant's current containing block to
7682 match the changes made to containingBlock() in the fix for bug 9347.
7684 2006-12-02 MorganL <morganl.webkit@yahoo.com>
7688 http://bugs.webkit.org/show_bug.cgi?id=11709
7689 DeprecatedString::format is broken on Windows
7691 Use _vscprintf on Windows to compute the length of the buffer that
7692 vsnprintf would need.
7694 * platform/DeprecatedString.cpp:
7695 (WebCore::DeprecatedString::format):
7696 * platform/String.cpp:
7697 (WebCore::String::format):
7699 2006-12-01 Beth Dakin <bdakin@apple.com>
7703 Support for sub-menus in WebCore context menus. This also re-
7704 architects the ContextMenuItem class so that it is more like
7705 ContextMenu in that the class is now really just a wrapper for the
7709 * WebCore.xcodeproj/project.pbxproj:
7710 * page/ContextMenuController.cpp:
7711 (WebCore::ContextMenuController::contextMenuItemSelected): Add
7712 place-holders for new tags for the sub-menu items. I will flesh
7713 these out in a separate check-in.
7714 * platform/ContextMenu.cpp:
7715 (WebCore::createFontSubMenu):
7716 (WebCore::createSpellingAndGrammarSubMenu):
7717 (WebCore::createSpellingSubMenu):
7718 (WebCore::createSpeechSubMenu):
7719 (WebCore::createWritingDirectionSubMenu):
7720 (WebCore::ContextMenu::populate): Call the above functions to add
7721 the appropriate sub-menus to editing context menus.
7722 * platform/ContextMenu.h:
7723 * platform/ContextMenuItem.h:
7724 (WebCore::): New tags in the ContextMenuAction enumeration.
7725 (WebCore::ContextMenuItem::parentMenu):
7726 (WebCore::ContextMenuItem::setType):
7727 * platform/PlatformMenuDescription.h: Added. This defines
7728 PlatformMenuDesciption. It needs to be its own header because we
7729 have to include it from ContextMenu.h and ContextMenuItem.h
7730 * platform/mac/ContextMenuItemMac.mm: Lots of adjustments here to
7731 make this class basically just be a wrapper for NSMenuItem.
7732 (WebCore::ContextMenuItem::ContextMenuItem):
7733 (WebCore::ContextMenuItem::~ContextMenuItem):
7734 (WebCore::ContextMenuItem::platformDescription):
7735 (WebCore::ContextMenuItem::action):
7736 (WebCore::ContextMenuItem::title):
7737 (WebCore::ContextMenuItem::platformSubMenu):
7738 (WebCore::ContextMenuItem::setAction):
7739 (WebCore::ContextMenuItem::setTitle):
7740 (WebCore::ContextMenuItem::setSubMenu):
7741 * platform/mac/ContextMenuMac.mm:
7742 (WebCore::ContextMenu::ContextMenu):
7743 (WebCore::getNSMenuItem): Now we only have to get the
7744 platformDescription of the ContextMenuItem and then set its target
7746 (WebCore::ContextMenu::itemCount):
7748 2006-12-01 Kevin McCullough <KMcCullough@apple.com>
7752 - accidentally checked in with previous checkin
7754 * platform/qt/FrameQt.cpp:
7755 (WebCore::FrameQt::keyEvent):
7757 2006-12-01 Kevin McCullough <KMcCullough@apple.com>
7761 - better solution to the ambiguous reference
7763 * platform/Widget.h:
7764 (WebCore::Widget::handleMouseMoveEvent):
7765 (WebCore::Widget::handleMouseReleaseEvent):
7766 * platform/qt/FrameQt.cpp:
7767 (WebCore::FrameQt::keyEvent):
7768 * platform/win/PlatformScrollBar.h:
7769 * platform/win/TemporaryLinkStubs.cpp:
7770 (WebCore::PlatformScrollbar::handleMouseMoveEvent):
7771 (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
7773 2006-12-01 Justin Garcia <justin.garcia@apple.com>
7777 <rdar://problem/4826940>
7778 Selection change performed even when delete delegate replies NO (11415)
7780 No layout test for the bug fix, because there's no way to register a custom
7781 editing delegate from a layout test. Layout tests are effected by the change
7782 to avoid sending unnecessary shouldChangeSelections, however.
7784 * editing/Editor.cpp:
7785 (WebCore::Editor::appliedEditing): Don't bother sending shouldChangeSelection
7786 if the editing operation didn't change the selection. Still call
7787 setSelection though, because it does work in this case that's necessary,
7788 like clearing the typing style.
7789 (WebCore::Editor::unappliedEditing): Ditto.
7790 (WebCore::Editor::reappliedEditing): Ditto.
7791 * editing/TypingCommand.cpp:
7792 (WebCore::TypingCommand::deleteKeyPressed): Don't set the starting
7793 selection if the editing delegate returns NO from shouldDeleteRange.
7794 Notice we now call setStartingSelection in the case where
7795 the current selection was a range selection. This is fine because
7796 it's a no-op (the starting selection is already the current selection).
7797 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
7799 2006-12-01 John Sullivan <sullivan@apple.com>
7803 Move subrange helper function from spellchecking code to TextIterator
7805 * editing/TextIterator.h:
7806 added TextIterator::subrange
7807 * editing/TextIterator.cpp:
7808 (WebCore::CharacterIterator::advance):
7809 early return if count is <= 0; assert that it's not < 0
7810 (WebCore::TextIterator::subrange):
7811 new function, moved from FrameMac.mmm
7813 * bridge/mac/FrameMac.mm:
7814 moved subrange() function to TextIterator
7815 (WebCore::FrameMac::advanceToNextMisspelling):
7816 use TextIterator::subrange
7817 (WebCore::markAllMisspellingsInRange):
7819 (WebCore::markAllBadGrammarInRange):
7822 2006-12-01 Darin Adler <darin@apple.com>
7826 - fix http://bugs.webkit.org/show_bug.cgi?id=11628
7827 REGRESSION (r17597): Command-return in native text fields doesn't open a new tab or window
7829 I couldn't think of an easy way to make a regression test for this, but maybe
7830 I'll get an idea later about how to do it.
7832 The main thing I did was add a concept of a DOM event having an "underlying event".
7833 That allows the DOM activate event to contain inside it the original keyboard event
7834 that triggered the form submission, and thus allows WebKit to see the modifier keys
7835 from that original event. The code that uses the underlying event is in WebKit, but
7836 the code to set it up is here in WebCore.
7838 - also do some clean-up to related event handling code
7840 * bindings/js/kjs_events.cpp: (KJS::DOMEvent::getValueProperty): Updated for the
7841 name change of cancelBubble.
7843 * dom/Event.h: Removed a useless comment. Fixed some whitespace and formatting.
7844 Renamed getCancelBubble to cancelBubble to match the DOM -- I suspect the old
7845 name predated the use of the m_ prefix on data members. Added the underlying event,
7846 and a getter and setter.
7848 (WebCore::Event::setTarget): Updated to take a PassRefPtr.
7849 (WebCore::Event::setUnderlyingEvent): Added.
7851 * dom/EventTargetNode.h: Added an optional underlyingEvent parameter to
7852 dispatchUIEvent, one of the overloads of dispatchMouseEvent, and
7853 dispatchSimulatedMouseEvent. Added a new dispatchSimulatedClick function here that
7854 mostly replaces the click function in HTMLElement.
7855 * dom/EventTargetNode.cpp:
7856 (WebCore::EventTargetNode::dispatchGenericEvent): Updated for the name change
7858 (WebCore::EventTargetNode::dispatchUIEvent): Added an underlying event parameter,
7859 which gets attached to the UIEvent object after it's created.
7860 (WebCore::EventTargetNode::dispatchMouseEvent): Tweaked formatting and parameter
7861 name for the version that creates a mouse event for a real platform mouse event.
7862 Added an underlying event parameter to the main version, and attached it to all
7863 three of the events that can be dispatched.
7864 (WebCore::EventTargetNode::dispatchSimulatedMouseEvent): Added an underlying
7865 event parameter, passed it along to dispatchMouseEvent.
7866 (WebCore::EventTargetNode::dispatchSimulatedClick): Moved this here from HTMLElement
7867 and renamed it from click. Added an underlyingEvent parameter, and passed that along
7868 in all three of the calls to dispatchSimulatedMouseEvent.
7870 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::shouldClose): Updated call to
7871 setTarget that no longer needs a get().
7872 * ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::sendSVGLoadEventIfPossible): Ditto.
7874 * html/HTMLAnchorElement.cpp:
7875 (WebCore::HTMLAnchorElement::defaultEventHandler): Converted a call to click
7876 to a call to dispatchSimulatedClick.
7877 (WebCore::HTMLAnchorElement::accessKeyAction): Ditto.
7878 * html/HTMLButtonElement.cpp:
7879 (WebCore::HTMLButtonElement::accessKeyAction): Ditto.
7880 * html/HTMLElement.h: Removed the parameters to click and made it non-virtual.
7881 We could move it down to the input and button elements, now that it's just
7882 a single function call, but it's also OK to just leave it here.
7883 * html/HTMLElement.cpp:
7884 (WebCore::HTMLElement::click): Removed the parameters and changed this to just
7885 call dispatchSimulatedClick. The real work is now in dispatchSimulatedClick.
7886 (WebCore::HTMLElement::accessKeyAction): Converted a call to click to a call to
7887 dispatchSimulatedClick.
7888 * html/HTMLFormElement.cpp:
7889 (WebCore::HTMLFormElement::submitClick): Ditto. But unlike accessKeyAction callers,
7890 pass the event along as the underlying event.
7891 * html/HTMLInputElement.h:
7892 * html/HTMLInputElement.cpp: Removed override of virtual click function. The
7893 special cases for the file control and hidden input elements aren't needed.
7894 (WebCore::HTMLInputElement::accessKeyAction): Converted a call to click to a call to
7895 dispatchSimulatedClick.
7896 (WebCore::HTMLInputElement::defaultEventHandler): Converted calls to click to calls to
7897 dispatchSimulatedClick, passing along the event as the underlying event.
7898 * html/HTMLLabelElement.cpp:
7899 (WebCore::HTMLLabelElement::defaultEventHandler): Converted a call to click to a call
7900 to dispatchSimulatedClick, passing the event along as the underlying event. Also
7901 changed the local variable for the element to a RefPtr since the code assumes it's
7902 still around after calling arbitrary JavaScript code.
7903 * html/HTMLSelectElement.cpp:
7904 (WebCore::HTMLSelectElement::accessKeyAction): Converted a call to click to a call to
7905 dispatchSimulatedClick.
7907 * rendering/RenderFileUploadControl.h:
7908 * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::click):
7909 Removed unneeded ignored parameter to the click function, and also made it non-virtual.
7911 * loader/NavigationAction.h: Removed unneeded includes.
7912 * loader/NavigationAction.cpp: Moved all the code here from NavigationActionMac.mm,
7913 since none of it is Mac-specific any more.
7914 * loader/mac/NavigationActionMac.mm: Removed.
7915 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
7917 * ksvg2/svg/SVGAElement.cpp: Removed an unnecessary include.
7919 * loader/FrameLoader.cpp: Added a newly-needed incluude.
7920 * loader/mac/DocumentLoaderMac.mm: Ditto.
7921 * loader/mac/FrameLoaderMac.mm: Ditto.
7922 * rendering/RenderWidget.cpp: Ditto.
7924 2006-12-01 John Sullivan <sullivan@apple.com>
7928 - fixed <rdar://problem/4811175> Many false reports of bad grammar appear, caused by
7929 insufficient context passed to grammar checker
7931 * bridge/mac/FrameMac.mm:
7932 (WebCore::markAllMisspellingsInRange):
7933 new function, extracted from markMisspellings -- ignores grammar
7934 (WebCore::markAllBadGrammarInRange):
7935 new function, extracted from markMisspellings -- ignores spelling, and operates on
7936 appropriately-sized chunks of text
7937 (WebCore::FrameMac::markMisspellings):
7938 now calls markAllMisspellingsInRange and (optionally) markAllBadGrammarInRange rather
7939 than trying to interweave the spelling and grammar logic
7941 2006-12-01 John Sullivan <sullivan@apple.com>
7945 With these changes, grammar checking works correctly for the one-by-one case.
7946 It still doesn't work correctly for the check-as-you-type case; I need to make these
7947 same kinds of changes in markMisspellings, and refactor to share more code between
7948 the two cases, but I wanted to get this working code in before modifying it further.
7950 The major change here is that advanceToNextMisspelling used to look at small chunks of
7951 text at a time, checking each one for both misspellings and questionable grammar. But
7952 grammar checking needs at least paragraph-sized chunks of text to have enough context
7953 to work correctly, so the old mechanism was causing many spurious complaints of bad
7954 grammar (e.g., almost every word seemed to be at the start of a sentence so the checker
7955 would complain about missing capitalization). So now the spell checker runs in the
7956 specified range first. Then the grammar checker runs on the same range (stopping at the
7957 next misspelling, if any), but expanded to paragraph-aligned boundaries.
7959 * bridge/mac/FrameMac.mm:
7960 (WebCore::findFirstMisspellingInRange):
7961 new function, extracted from advanceToNextMisspelling, and ignores grammar
7962 (WebCore::paragraphAlignedRangeForRange):
7963 new function, used by findNextBadGrammarInRange
7964 (WebCore::findFirstBadGrammarInRange):
7965 new function, extracted from advanceToNextMisspelling, and rewritten to use paragraph-aligned
7966 chunks, and ignores spelling
7967 (WebCore::subrange):
7968 new helper function, used by advanceToNextMisspelling
7969 (WebCore::FrameMac::advanceToNextMisspelling):
7970 now calls out to both findFirstMisspellingInRange and findFirstBadGrammarInRange separately
7971 instead of trying to interweave the spelling and grammar logic
7973 2006-12-01 Don Gibson <dgibson77@gmail.com>
7977 http://bugs.webkit.org/show_bug.cgi?id=11732:
7978 Windows build bustage.
7980 * WebCore.vcproj/WebCore/WebCore.vcproj:
7981 * bridge/win/ChromeClientWin.h:
7982 * bridge/win/ContextMenuClientWin.h:
7983 * bridge/win/EditorClientWin.h:
7984 * bridge/win/FrameWin.cpp:
7985 (WebCore::FrameWin::FrameWin):
7986 (WebCore::FrameWin::keyPress):
7987 * bridge/win/FrameWin.h:
7988 * loader/win/FrameLoaderClientWin.h:
7989 * platform/ContextMenu.h:
7990 * platform/Widget.h:
7991 * platform/win/PlatformScrollBar.h:
7992 * platform/win/TemporaryLinkStubs.cpp:
7993 (WebCore::ChromeClientWin::chromeDestroyed):
7994 (WebCore::ChromeClientWin::addMessageToConsole):
7995 (WebCore::ContextMenu::ContextMenu):
7996 (WebCore::ContextMenu::~ContextMenu):
7997 (WebCore::ContextMenu::appendItem):
7998 (WebCore::ContextMenuClientWin::contextMenuDestroyed):
7999 (WebCore::ContextMenuClientWin::contextMenuItemSelected):
8000 (WebCore::ContextMenuItem::~ContextMenuItem):
8001 (WebCore::Editor::newGeneralClipboard):
8002 (WebCore::EditorClientWin::pageDestroyed):
8003 (WebCore::EditorClientWin::smartInsertDeleteEnabled):
8004 (WebCore::EditorClientWin::shouldInsertNode):
8005 (WebCore::FrameLoader::createPlugin):
8006 (WebCore::FrameLoaderClientWin::frameLoaderDestroyed):
8007 (WebCore::FrameLoaderClientWin::hasWebView):
8008 (WebCore::FrameLoaderClientWin::canHandleRequest):
8009 (WebCore::FrameWin::unfocusWindow):
8010 (WebCore::FrameWin::bindingRootObject):
8011 (WebCore::FrameWin::issueCopyCommand):
8012 (WebCore::FrameWin::markMisspellings):
8013 (WebCore::FrameWin::issueTransposeCommand):
8014 (WebCore::FrameWin::markedTextRange):
8015 (WebCore::FrameWin::respondToChangedSelection):
8016 (WebCore::FrameWin::markMisspellingsInAdjacentWords):
8017 (WebCore::FrameWin::isSelectionMisspelled):
8018 (WebCore::FrameWin::guessesForMisspelledSelection):
8019 (WebCore::Pasteboard::generalPasteboard):
8020 (WebCore::Pasteboard::writeSelection):
8021 (WebCore::Pasteboard::clearTypes):
8022 (WebCore::Pasteboard::canSmartReplace):
8023 (WebCore::Pasteboard::documentFragment):
8024 (WebCore::Pasteboard::plainText):
8025 (WebCore::Pasteboard::Pasteboard):
8026 (WebCore::Pasteboard::~Pasteboard):
8027 (WebCore::Pasteboard::registerSelectionPasteboardTypes):
8028 (WebCore::Pasteboard::replaceNBSP):
8029 (WebCore::Pasteboard::createHandle):
8030 (WebCore::Pasteboard::createCF_HTMLFromRange):
8032 2006-11-30 Geoffrey Garen <ggaren@apple.com>
8034 Rubber Stamped by Anders Carlsson.
8036 Global rename of Document::focusNode to Document::focusedNode. 'focusNode'
8037 suggested a command, and conflicted with a different meaning for 'focusNode'
8038 in the Mozilla selection API.
8040 2006-11-30 John Sullivan <sullivan@apple.com>
8044 With Darin, fixed a problem in the Range constructors found while implementing grammar checking.
8045 That revealed another problem in the layout tests involving bad parameters passed to the Range
8048 With these fixes in place, one layout test (editing/execCommand/create-list-from-range-selection.html)
8049 no longer works as intended. This is apparently due to yet another bug being flushed out somewhere.
8050 I'm going to update the results for that test and file a separate radar about it, which Justin will
8054 removed equivalentRangeCompliantPosition(), which was declared but not implemented or called.
8057 (WebCore::Range::Range):
8058 Call setStart and setEnd in the two Range constructors that take parameters, rather than just
8059 directly setting the instance variables. This makes Range perform the boundary checks and
8060 compensations that the DOM spec requires.
8062 * editing/CompositeEditCommand.cpp:
8063 (WebCore::CompositeEditCommand::moveParagraphs):
8064 Use rangeCompliantEquivalent() on "editing-style" Positions before creating Ranges from them.
8066 * editing/TextIterator.cpp:
8067 (WebCore::TextIterator::TextIterator):
8068 Assert that the boundary points of the range are valid.
8070 2006-11-30 Lou Amadio <lamadio@apple.com>
8072 Reviewed by Dave Hyatt
8073 Cleaned up generated files.
8075 * html/HTMLElement.cpp:
8076 (WebCore::HTMLElement::isRecognizedTagName):
8077 Uses the new method for retrieving the list of supported tags
8078 * ksvg2/scripts/make_names.pl:
8079 Generates tag lists without using macros.
8081 2006-11-30 Adam Roben <aroben@apple.com>
8085 Store ContextMenu's NSMutableArray inside a RetainPtr so that we
8086 will retain/release it correctly.
8089 * platform/ContextMenu.cpp:
8090 (WebCore::ContextMenu::populate): Added a FIXME.
8091 * platform/ContextMenu.h:
8092 * platform/mac/ContextMenuMac.mm:
8093 (WebCore::ContextMenu::ContextMenu):
8094 (WebCore::ContextMenu::~ContextMenu):
8095 (WebCore::getNSMenuItem):
8096 (WebCore::ContextMenu::appendItem):
8097 (WebCore::ContextMenu::itemCount):
8098 (WebCore::ContextMenu::insertItem):
8099 (WebCore::ContextMenu::setPlatformDescription):
8100 (WebCore::ContextMenu::platformDescription):
8102 2006-11-30 Nikolas Zimmermann <zimmermann@kde.org>
8104 Reviewed by Eric. Rubber stamped by Oliver.
8106 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10383
8108 This is the final patch after the long "die kcanvas" journey.
8110 All old kcanvas code is gone now, and properly integrated within
8111 WebCore (stuff like GraphicsContext changes etc.). It shares
8112 the platform/ design concept: no subclassing, but instead
8113 implementing parts of the classes/methods per-platform.
8115 This commit removes the last pieces: KRenderingDevice & KRenderingDeviceContext.
8116 This layer was just obsolete, given the powerful GraphicsContext API we have
8117 since quite a while now. All the ugly pushContext/popContext stuff is gone now.
8119 LayoutTests affected: svg/W3C-SVG-1.1/pservers-grad-11-b.svg
8120 Radial gradients as fill color for texts, work again!
8121 Though "Gradient on text stroke" remains broken. Funny thing:
8122 With this patch, if you "select" the text using the mouse, as
8123 soon as the selection rectangle is drawn, you see the correct
8124 gradient on stroke rendering - at least a hint where it breaks!
8126 All svg layout tests have subtle text rendering changes - with and without this
8127 patch, it seems it was forgotton to update svg pixel test baseline, a while ago.
8130 * WebCore.xcodeproj/project.pbxproj:
8131 * kcanvas/device/KRenderingDevice.cpp: Removed.
8132 * kcanvas/device/KRenderingDevice.h: Removed.
8133 * kcanvas/device/qt/KRenderingDeviceQt.cpp: Removed.
8134 * kcanvas/device/qt/KRenderingDeviceQt.h: Removed.
8135 * kcanvas/device/qt/RenderPathQt.cpp: Moved to platform/graphics/qt
8136 * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Moved to platform/graphics/svg/cg/RenderPathCg.cpp
8137 * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Removed.
8138 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: Removed.
8139 * kcanvas/device/quartz/QuartzSupport.cpp: Moved to platform/graphics/svg/cg/CgSupport.cpp
8140 * kcanvas/device/quartz/QuartzSupport.h: Moved to platform/graphics/svg/cg/CgSupport.h
8141 * ksvg2/misc/KCanvasRenderingStyle.cpp:
8142 (WebCore::sharedSolidPaintServer):
8143 * ksvg2/misc/KCanvasRenderingStyle.h:
8144 * ksvg2/svg/SVGAElement.cpp:
8145 * ksvg2/svg/SVGClipPathElement.cpp:
8146 * ksvg2/svg/SVGFEBlendElement.cpp:
8147 (WebCore::SVGFEBlendElement::filterEffect):
8148 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
8149 (WebCore::SVGFEColorMatrixElement::filterEffect):
8150 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
8151 (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
8152 (WebCore::SVGFEComponentTransferElement::parseMappedAttribute):
8153 (WebCore::SVGFEComponentTransferElement::filterEffect):
8154 * ksvg2/svg/SVGFECompositeElement.cpp:
8155 (WebCore::SVGFECompositeElement::SVGFECompositeElement):
8156 (WebCore::SVGFECompositeElement::filterEffect):
8157 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
8158 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
8159 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
8160 (WebCore::SVGFEDiffuseLightingElement::updateLights):
8161 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
8162 (WebCore::SVGFEDisplacementMapElement::filterEffect):
8163 * ksvg2/svg/SVGFEDistantLightElement.cpp:
8164 (WebCore::SVGFEDistantLightElement::SVGFEDistantLightElement):
8165 (WebCore::SVGFEDistantLightElement::lightSource):
8166 * ksvg2/svg/SVGFEFloodElement.cpp:
8167 (WebCore::SVGFEFloodElement::SVGFEFloodElement):
8168 (WebCore::SVGFEFloodElement::parseMappedAttribute):
8169 (WebCore::SVGFEFloodElement::filterEffect):
8170 * ksvg2/svg/SVGFEFuncAElement.cpp:
8171 * ksvg2/svg/SVGFEFuncBElement.cpp:
8172 * ksvg2/svg/SVGFEFuncGElement.cpp:
8173 (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
8174 * ksvg2/svg/SVGFEFuncRElement.cpp:
8175 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
8176 (WebCore::SVGFEGaussianBlurElement::filterEffect):
8177 * ksvg2/svg/SVGFEImageElement.cpp:
8178 (WebCore::SVGFEImageElement::SVGFEImageElement):
8179 (WebCore::SVGFEImageElement::parseMappedAttribute):
8180 (WebCore::SVGFEImageElement::notifyFinished):
8181 (WebCore::SVGFEImageElement::filterEffect):
8182 * ksvg2/svg/SVGFELightElement.cpp:
8183 * ksvg2/svg/SVGFEMergeElement.cpp:
8184 (WebCore::SVGFEMergeElement::filterEffect):
8185 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
8186 * ksvg2/svg/SVGFEOffsetElement.cpp:
8187 (WebCore::SVGFEOffsetElement::SVGFEOffsetElement):
8188 (WebCore::SVGFEOffsetElement::parseMappedAttribute):
8189 (WebCore::SVGFEOffsetElement::filterEffect):
8190 * ksvg2/svg/SVGFEPointLightElement.cpp:
8191 (WebCore::SVGFEPointLightElement::lightSource):
8192 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
8193 (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement):
8194 (WebCore::SVGFESpecularLightingElement::filterEffect):
8195 (WebCore::SVGFESpecularLightingElement::updateLights):
8196 * ksvg2/svg/SVGFESpotLightElement.cpp:
8197 (WebCore::SVGFESpotLightElement::SVGFESpotLightElement):
8198 (WebCore::SVGFESpotLightElement::lightSource):
8199 * ksvg2/svg/SVGFETileElement.cpp:
8200 (WebCore::SVGFETileElement::SVGFETileElement):
8201 (WebCore::SVGFETileElement::parseMappedAttribute):
8202 (WebCore::SVGFETileElement::filterEffect):
8203 * ksvg2/svg/SVGFETurbulenceElement.cpp:
8204 (WebCore::SVGFETurbulenceElement::filterEffect):
8205 * ksvg2/svg/SVGFilterElement.cpp:
8206 (WebCore::SVGFilterElement::canvasResource):
8207 * ksvg2/svg/SVGGradientElement.cpp:
8208 (WebCore::SVGGradientElement::canvasResource):
8209 * ksvg2/svg/SVGLinearGradientElement.cpp:
8210 * ksvg2/svg/SVGMarkerElement.cpp:
8211 * ksvg2/svg/SVGMaskElement.cpp:
8212 (WebCore::SVGMaskElement::parseMappedAttribute):
8213 (WebCore::SVGMaskElement::drawMaskerContent):
8214 (WebCore::SVGMaskElement::canvasResource):
8215 * ksvg2/svg/SVGPatternElement.cpp:
8216 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
8217 (WebCore::SVGPatternElement::canvasResource):
8218 * ksvg2/svg/SVGStyledElement.cpp:
8219 * ksvg2/svg/SVGStyledElement.h:
8220 * platform/graphics/GraphicsContext.h:
8221 * platform/graphics/svg/SVGPaintServer.h:
8222 * platform/graphics/svg/SVGPaintServerGradient.cpp:
8223 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
8224 * platform/graphics/svg/SVGPaintServerGradient.h:
8225 * platform/graphics/svg/SVGPaintServerLinearGradient.h:
8226 * platform/graphics/svg/SVGPaintServerPattern.h:
8227 * platform/graphics/svg/SVGPaintServerRadialGradient.h:
8228 * platform/graphics/svg/SVGPaintServerSolid.h:
8229 * platform/graphics/svg/SVGResource.cpp:
8230 * platform/graphics/svg/SVGResource.h:
8231 * platform/graphics/svg/SVGResourceClipper.h:
8232 * platform/graphics/svg/SVGResourceFilter.h:
8233 * platform/graphics/svg/SVGResourceMasker.h:
8234 * platform/graphics/svg/cg/RenderPathCg.cpp: Added.
8235 * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
8236 (WebCore::SVGPaintServer::draw):
8237 (WebCore::SVGPaintServer::teardown):
8238 (WebCore::SVGPaintServer::renderPath):
8239 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
8240 (WebCore::SVGPaintServerGradient::teardown):
8241 (WebCore::SVGPaintServerGradient::renderPath):
8242 (WebCore::SVGPaintServerGradient::setup):
8243 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
8244 (WebCore::SVGPaintServerPattern::setup):
8245 (WebCore::SVGPaintServerPattern::teardown):
8246 * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
8247 (WebCore::SVGPaintServerSolid::setup):
8248 * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
8249 (WebCore::SVGResourceClipper::applyClip):
8250 * platform/graphics/svg/cg/SVGResourceFilterCg.mm:
8251 (WebCore::SVGResourceFilter::SVGResourceFilter):
8252 (WebCore::SVGResourceFilter::createFilterEffect):
8253 (WebCore::SVGResourceFilter::prepareFilter):
8254 (WebCore::SVGResourceFilter::applyFilter):
8255 * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
8256 (WebCore::SVGResourceMasker::applyMask):
8257 * platform/graphics/svg/filters/cg/SVGFEImageCg.mm:
8258 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
8259 (WebCore::SVGPaintServerLinearGradient::setup):
8260 * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp:
8261 (WebCore::SVGPaintServerPattern::setup):
8262 * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
8263 (WebCore::SVGPaintServer::draw):
8264 (WebCore::SVGPaintServer::teardown):
8265 (WebCore::SVGPaintServer::renderPath):
8266 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
8268 * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
8269 (WebCore::SVGPaintServerSolid::setup):
8270 * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
8271 (WebCore::SVGResourceClipper::applyClip):
8272 * platform/graphics/svg/qt/SVGResourceFilterQt.cpp:
8273 (WebCore::SVGResourceFilter::createFilterEffect):
8274 (WebCore::SVGResourceFilter::prepareFilter):
8275 (WebCore::SVGResourceFilter::applyFilter):
8276 * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
8277 (WebCore::SVGResourceMasker::applyMask):
8278 * platform/qt/GraphicsContextQt.cpp:
8279 (WebCore::GraphicsContext::beginPath):
8280 (WebCore::GraphicsContext::addPath):
8281 (WebCore::GraphicsContext::setFillRule):
8282 (WebCore::GraphicsContext::currentPath):
8283 (WebCore::GraphicsContext::strokeRect):
8284 (WebCore::contextForImage):
8285 * rendering/RenderForeignObject.cpp:
8286 (WebCore::RenderForeignObject::paint):
8287 * rendering/RenderPath.cpp:
8288 (WebCore::RenderPath::paint):
8289 * rendering/RenderSVGContainer.cpp:
8290 (WebCore::RenderSVGContainer::paint):
8291 * rendering/RenderSVGImage.cpp:
8292 (WebCore::RenderSVGImage::paint):
8293 * rendering/RenderSVGImage.h:
8294 * rendering/RenderSVGInline.cpp:
8295 (WebCore::RenderSVGInline::RenderSVGInline):
8296 (WebCore::RenderSVGInline::createInlineBox):
8297 * rendering/RenderSVGInlineText.cpp:
8298 (WebCore::RenderSVGInlineText::RenderSVGInlineText):
8299 * rendering/RenderSVGTSpan.cpp:
8300 (WebCore::RenderSVGTSpan::RenderSVGTSpan):
8301 * rendering/RenderSVGText.cpp:
8302 (WebCore::RenderSVGText::paint):
8303 * rendering/SVGInlineFlowBox.cpp:
8304 (WebCore::paintSVGInlineFlow):
8305 * rendering/SVGRenderTreeAsText.cpp:
8306 (WebCore::writeStyle):
8308 2006-11-30 Geoffrey Garen <ggaren@apple.com>
8310 Reviewed by Beth Dakin.
8312 Fixed up garbage collection at window close time.
8314 * bindings/js/kjs_proxy.cpp: Don't garbage collect in the KJSProxy
8315 destructor, since the global object hasn't been freed yet.
8316 * bindings/js/kjs_proxy.h:
8317 * loader/FrameLoader.cpp:
8318 (WebCore::FrameLoader::detachFromParent): Made this function cross-
8320 * loader/FrameLoader.h:
8321 * loader/mac/FrameLoaderMac.mm:
8322 (WebCore::FrameLoader::setTitle): Moved this function to FrameLoaderMac,
8323 since it's Mac-only.
8324 (WebCore::FrameLoader::closeBridge):
8326 (WebCore::Page::~Page): Don't garbage collect in the Page destructor,
8327 since the Interpreter destructor will do it for us.
8329 2006-11-30 Brady Eidson <beidson@apple.com>
8331 Reviewed by Tim's rubberstamp
8333 Amazingly, DocumentLoader.h survived all this time without a header guard...
8335 * loader/DocumentLoader.h: Added header guard
8337 2006-11-30 Timothy Hatcher <timothy@apple.com>
8339 Reviewed by Brady and Eric.
8341 XMLHttpRequest fails in a page loaded with WebFrame's loadHTMLString: or loadData:
8342 http://bugs.webkit.org/show_bug.cgi?id=11723
8344 Allow cross-domain XMLHTTPRequest for applewebdata URLs. No automated way to test,
8345 tested in Safari's debug Snippet Editor.
8347 * xml/xmlhttprequest.cpp:
8348 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
8350 2006-11-29 Anders Carlsson <acarlsson@apple.com>
8354 Get rid of PlatformResponse, the platform specific response object is stored inside of
8355 the ResourceResponse object now. This also gets rid of receivedResponse in ResourceHandleClient.
8357 * bridge/mac/WebCoreFrameBridge.mm:
8358 (-[WebCoreFrameBridge getData:andResponse:forURL:]):
8359 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
8360 * loader/CachedResource.cpp:
8361 (WebCore::CachedResource::CachedResource):
8362 (WebCore::CachedResource::~CachedResource):
8363 * loader/CachedResource.h:
8364 (WebCore::CachedResource::response):
8365 * loader/loader.cpp:
8367 * loader/mac/ImageDocumentMac.mm:
8368 (WebCore::finishImageLoad):
8369 * loader/mac/LoaderFunctionsMac.mm:
8370 (WebCore::CheckCacheObjectStatus):
8371 * loader/mac/SubresourceLoaderMac.mm:
8372 (WebCore::SubresourceLoader::didReceiveResponse):
8373 * platform/network/ResourceHandle.h:
8374 * platform/network/ResourceResponse.h:
8375 (WebCore::ResourceResponse::nsURLResponse):
8376 (WebCore::ResourceResponse::cfURLResponse):
8377 * platform/network/mac/ResourceHandleMac.mm:
8378 (WebCore::ResourceHandle::didReceiveResponse):
8380 2006-11-29 Justin Garcia <justin.garcia@apple.com>
8382 Reviewed by sullivan
8384 <rdar://problem/4845371>
8385 In Mail, a crash occurs at WebCore::Node::traverseNextNode() when cutting selected text from a HTML message
8387 * editing/DeleteSelectionCommand.cpp:
8388 (WebCore::DeleteSelectionCommand::initializeStartEnd): The start/end were
8389 being inflated even when they were the start/end of a partially selected
8392 2006-11-29 Anders Carlsson <acarlsson@apple.com>
8396 Fix fast/dom/xmlhttprequest-get layout test failure.
8398 * platform/network/mac/ResourceResponseMac.mm:
8399 Initialize the status code to 0 for non-http responses.
8401 2006-11-29 Geoffrey Garen <ggaren@apple.com>
8403 Reviewed by Anders Carlsson.
8405 Fixed http://bugs.webkit.org/show_bug.cgi?id=11712
8406 REGRESSION: Crash when clicking JS link on crateandbarrel.com (window.open("http[...]"))
8408 This was an accidental commit by Anders.
8410 Chrome can't use the FrameView at window.open time, because it doesn't
8414 (WebCore::Chrome::pageRect):
8416 2006-11-29 Geoffrey Garen <ggaren@apple.com>
8418 Reviewed by Mitz Pettel.
8420 Fixed http://bugs.webkit.org/show_bug.cgi?id=11710
8421 REGRESSION (r17906): Crash in WebCore::FrameMac
8423 Added null checks for EditorClient, since it can be NULL when the page
8424 has been destroyed. Removed external access to EditorClient, since it's
8425 an implementation detail of the Editor.
8427 No test case because this crash depends on window tear-down. Layout tests
8430 2006-11-29 Anders Carlsson <acarlsson@apple.com>
8434 * platform/network/mac/ResourceHandleMac.mm:
8435 (WebCore::ResourceHandle::receivedResponse):
8438 2006-11-29 Anders Carlsson <acarlsson@apple.com>
8442 Have ResourceResponse hold on to the platform object and do lazy
8443 initialization of the data members.
8445 * WebCore.xcodeproj/project.pbxproj:
8446 * loader/mac/FrameLoaderMac.mm:
8447 (WebCore::FrameLoader::loadResourceSynchronously):
8448 * platform/network/ResourceRequest.cpp:
8449 (WebCore::ResourceRequest::updatePlatformRequest):
8450 (WebCore::ResourceRequest::updateResourceRequest):
8451 * platform/network/ResourceResponse.cpp: Added.
8452 (WebCore::ResourceResponse::url):
8453 (WebCore::ResourceResponse::mimeType):
8454 (WebCore::ResourceResponse::expectedContentLength):
8455 (WebCore::ResourceResponse::textEncodingName):
8456 (WebCore::ResourceResponse::suggestedFilename):
8457 (WebCore::ResourceResponse::httpStatusCode):
8458 (WebCore::ResourceResponse::setHTTPStatusCode):
8459 (WebCore::ResourceResponse::httpStatusText):
8460 (WebCore::ResourceResponse::setHTTPStatusText):
8461 (WebCore::ResourceResponse::httpHeaderField):
8462 (WebCore::ResourceResponse::httpHeaderFields):
8463 (WebCore::ResourceResponse::setExpirationDate):
8464 (WebCore::ResourceResponse::expirationDate):
8465 (WebCore::ResourceResponse::setLastModifiedDate):
8466 (WebCore::ResourceResponse::lastModifiedDate):
8467 (WebCore::ResourceResponse::updateResourceResponse):
8468 * platform/network/ResourceResponse.h:
8469 (WebCore::ResourceResponse::ResourceResponse):
8470 (WebCore::ResourceResponse::isMultipart):
8471 * platform/network/mac/ResourceHandleMac.mm:
8472 (WebCore::ResourceHandle::receivedResponse):
8473 (WebCore::ResourceHandle::willSendRequest):
8474 * platform/network/mac/ResourceResponseMac.h: Removed.
8475 * platform/network/mac/ResourceResponseMac.mm:
8476 (-[NSURLResponse WebCore]):
8478 2006-11-28 Alice Liu <alice.liu@apple.com>
8482 A fix for a couple failing layout tests involving copy/cut in iframes.
8484 * bridge/EditorClient.h:
8485 Add frame parameter to dataForArchivedSelectionInFrame instead of
8486 just getting the webview's selectedFrame.
8488 * platform/mac/PasteboardMac.mm:
8489 (Pasteboard::writeSelection):
8492 2006-11-28 Geoffrey Garen <ggaren@apple.com>
8494 Reviewed by Beth Dakin.
8496 Fixed <rdar://problem/4844855> Should clarify when to create clients in
8497 the WebCore client API
8499 All clients must now be supplied as constructor arguments. This clarifies
8500 when you need to create clients, and also guarantees that objects can't
8501 (for the most part) be in a clientless state.
8503 Layout tests pass. No leaks reported.
8505 * bridge/mac/WebCoreFrameBridge.mm: I had to move some initialization up into
8506 WebKit to resolve circular dependencies at init time.
8508 2006-11-28 Adam Roben <aroben@apple.com>
8512 Add platform-specific constructor/destructor to ContextMenu so we can
8513 properly retain/release the platform menu description.
8515 * platform/ContextMenu.h:
8516 (WebCore::ContextMenu::platformDescription):
8517 * platform/mac/ContextMenuMac.mm:
8518 (WebCore::ContextMenu::ContextMenu):
8519 (WebCore::ContextMenu::~ContextMenu):
8520 (WebCore::getNSMenuItem):
8521 (WebCore::ContextMenu::appendItem):
8522 (WebCore::ContextMenu::itemCount):
8523 (WebCore::ContextMenu::insertItem):
8524 (WebCore::ContextMenu::setPlatformDescription):
8526 2006-11-28 Adam Roben <aroben@apple.com>
8530 * platform/network/mac/ResourceRequestMac.mm:
8532 2006-11-28 David Harrison <harrison@apple.com>
8536 <rdar://problem/4852804> selection color does not get drawn over the missing image rectangle
8539 * editing/selection/select-missing-image.html: Added.
8541 * rendering/RenderImage.cpp:
8542 (WebCore::RenderImage::paint):
8543 Draw the selection tint even if the image itself is not available.
8545 2006-11-28 Anders Carlsson <acarlsson@apple.com>
8549 Have ResourceRequest hold on to the platform object so we don't
8550 have to convert back and forth when nothing in the object changes.
8553 * WebCore.xcodeproj/project.pbxproj:
8554 * loader/mac/FrameLoaderMac.mm:
8555 (WebCore::FrameLoader::continueAfterNavigationPolicy):
8557 (WebCore::Chrome::pageRect):
8558 * platform/network/ResourceRequest.cpp: Added.
8559 (WebCore::ResourceRequest::isEmpty):
8560 (WebCore::ResourceRequest::url):
8561 (WebCore::ResourceRequest::setURL):
8562 (WebCore::ResourceRequest::cachePolicy):
8563 (WebCore::ResourceRequest::setCachePolicy):
8564 (WebCore::ResourceRequest::timeoutInterval):
8565 (WebCore::ResourceRequest::setTimeoutInterval):
8566 (WebCore::ResourceRequest::mainDocumentURL):
8567 (WebCore::ResourceRequest::setMainDocumentURL):
8568 (WebCore::ResourceRequest::httpMethod):
8569 (WebCore::ResourceRequest::setHTTPMethod):
8570 (WebCore::ResourceRequest::httpHeaderFields):
8571 (WebCore::ResourceRequest::httpHeaderField):
8572 (WebCore::ResourceRequest::setHTTPHeaderField):
8573 (WebCore::ResourceRequest::httpBody):
8574 (WebCore::ResourceRequest::setHTTPBody):
8575 (WebCore::ResourceRequest::allowHTTPCookies):
8576 (WebCore::ResourceRequest::setAllowHTTPCookies):
8577 (WebCore::ResourceRequest::updatePlatformRequest):
8578 (WebCore::ResourceRequest::updateResourceRequest):
8579 (WebCore::ResourceRequest::addHTTPHeaderField):
8580 (WebCore::ResourceRequest::addHTTPHeaderFields):
8581 * platform/network/ResourceRequest.h:
8582 (WebCore::ResourceRequest::ResourceRequest):
8583 * platform/network/mac/ResourceHandleMac.mm:
8584 (WebCore::ResourceHandle::willSendRequest):
8585 * platform/network/mac/ResourceRequestMac.h: Removed.
8586 * platform/network/mac/ResourceRequestMac.mm:
8587 (WebCore::ResourceRequest::nsURLRequest):
8588 (WebCore::ResourceRequest::doUpdateResourceRequest):
8589 (WebCore::ResourceRequest::doUpdatePlatformRequest):
8591 2006-11-28 Adam Roben <aroben@apple.com>
8595 More WebCore context menu work (still not turned on, however).
8597 Split ContextMenuItem into its own files and make it a class.
8599 * WebCore.exp: Updated symbols.
8600 * WebCore.xcodeproj/project.pbxproj: Added new ContextMenuItem files.
8601 * platform/ContextMenu.cpp:
8602 (WebCore::ContextMenu::populate): Code cleanup.
8603 * platform/ContextMenu.h: Split ContextMenuItem into a separate file,
8604 removed redundant "Menu" part of platformMenuDescription(),
8605 setPlatformMenuDescription().
8606 (WebCore::ContextMenu::ContextMenu):
8607 (WebCore::ContextMenu::hitTestResult):
8608 (WebCore::ContextMenu::platformDescription):
8609 * platform/ContextMenuItem.h: Added. Made ContextMenuItem a
8612 (WebCore::ContextMenuItem::ContextMenuItem):
8613 (WebCore::ContextMenuItem::menu):
8614 (WebCore::ContextMenuItem::platformDescription):
8615 (WebCore::ContextMenuItem::type):
8616 (WebCore::ContextMenuItem::action):
8617 (WebCore::ContextMenuItem::title):
8618 * platform/mac/ContextMenuItemMac.mm: Added.
8619 (WebCore::ContextMenuItem::ContextMenuItem):
8620 * platform/mac/ContextMenuMac.mm: Updated for ContextMenuItem changes.
8621 (-[MenuTarget forwardContextMenuAction:]):
8622 (getNSMenuItem): Handle separator items.
8623 (ContextMenu::appendItem):
8624 (ContextMenu::itemCount):
8625 (ContextMenu::insertItem):
8626 (ContextMenu::setPlatformDescription):
8627 * page/ContextMenuController.h: Updated declaration, added getter.
8628 (WebCore::ContextMenuController::contextMenu):
8630 Added some more context menu plumbing.
8632 * dom/EventTargetNode.cpp:
8633 (WebCore::EventTargetNode::defaultEventHandler): Added code to call the
8634 ContextMenuController when a context menu event is received.
8635 * page/ContextMenuClient.h: New client method declaration.
8636 * page/ContextMenuController.cpp:
8637 (WebCore::ContextMenuController::handleContextMenuEvent): Set the event
8638 defaultHandled after handling it.
8639 (WebCore::ContextMenuController::contextMenuItemSelected): Take a
8640 ContextMenuItem instead of a separate action and title.
8642 Changed event-handling methods to return bools to signify whether the
8643 event was handled or not. This is needed so we can know whether to hand
8644 the event off to the OS. Also restructured some code to use early
8645 returns instead of nesting ifs.
8647 * page/EventHandler.cpp:
8648 (WebCore::EventHandler::handleMousePressEventDoubleClick):
8649 (WebCore::EventHandler::handleMousePressEventTripleClick):
8650 (WebCore::EventHandler::handleMousePressEventSingleClick):
8651 (WebCore::EventHandler::handleMousePressEvent):
8652 (WebCore::EventHandler::handleMouseMoveEvent):
8653 (WebCore::EventHandler::handleMouseReleaseEvent):
8654 (WebCore::EventHandler::handleMouseDoubleClickEvent):
8655 (WebCore::EventHandler::handleWheelEvent):
8656 (WebCore::EventHandler::canMouseDownStartSelect):
8657 * page/EventHandler.h:
8658 * page/FrameView.cpp:
8659 (WebCore::FrameView::handleMouseMoveEvent):
8660 (WebCore::FrameView::handleMouseReleaseEvent):
8662 * platform/ScrollBar.h: More bool return values.
8663 (WebCore::Scrollbar::handleMouseMoveEvent):
8664 (WebCore::Scrollbar::handleMouseOutEvent):
8665 * platform/Widget.h: Ditto.
8666 (WebCore::Widget::handleMouseMoveEvent):
8667 (WebCore::Widget::handleMouseReleaseEvent):
8669 Reverted the changes made in r17805 so that we can have fewer header
8673 (WebCore::Page::Page):
8674 * page/Page.h: Ditto.
8675 (WebCore::Page::dragCaretController):
8676 (WebCore::Page::chrome):
8677 (WebCore::Page::contextMenuController):
8679 2006-11-28 Alice Liu <alice.liu@apple.com>
8681 Reviewed by Justin and Adam.
8683 All layout tests pass as they do without this patch
8686 Exposed functions in Editor and removed functions in FrameMac due to changes in WebHTMLView.m
8688 * WebCore.xcodeproj/project.pbxproj:
8689 Added Pasteboard.h, PasteboardMac.mm, WebNSAttributedStringExtras.h&mm, EditorMac.mm
8691 * bridge/EditorClient.h:
8692 Added smartInsertDeleteEnabled and shouldInsertNode and some mac-specific functions
8694 * bridge/mac/FrameMac.h:
8695 * bridge/mac/FrameMac.mm:
8696 Removed dispatchCPPEvent and [can|try]DHTML[cut|copy|paste] since the Editor's are called now
8698 * dom/CharacterData.h:
8699 (WebCore::CharacterData::isCharacterDataNode):
8701 (WebCore::Node::isCharacterDataNode):
8702 Added a type-identifying function to Node and the proper subclass
8705 Exposed setAccessPolicy as public
8708 * editing/Editor.cpp:
8709 Implemented the following
8710 (WebCore::Editor::canDHTMLCut):
8711 (WebCore::Editor::canDHTMLCopy):
8712 (WebCore::Editor::canDHTMLPaste):
8713 (WebCore::Editor::canSmartCopyOrDelete):
8714 (WebCore::Editor::deleteSelection):
8715 (WebCore::Editor::pasteAsPlainTextWithPasteboard):
8716 (WebCore::Editor::pasteWithPasteboard):
8717 (WebCore::Editor::canSmartReplaceWithPasteboard):
8718 (WebCore::Editor::shouldInsertFragment):
8719 (WebCore::Editor::replaceSelectionWithFragment):
8720 (WebCore::Editor::replaceSelectionWithText):
8721 (WebCore::Editor::selectedRange):
8722 (WebCore::Editor::shouldDeleteRange):
8723 (WebCore::Editor::tryDHTMLCopy):
8724 (WebCore::Editor::tryDHTMLCut):
8725 (WebCore::Editor::tryDHTMLPaste):
8726 (WebCore::Editor::writeSelectionToPasteboard):
8727 (WebCore::Editor::dispatchCPPEvent):
8728 (WebCore::Editor::cut):
8729 (WebCore::Editor::copy):
8730 (WebCore::Editor::paste):
8732 * platform/mac/ClipboardAccessPolicy.h: Removed.
8733 Not removed, but moved to dom/ClipboardAccessPolicy.h
8735 * platform/mac/EditorMac.mm: Added.
8736 (WebCore::Editor::newGeneralClipboard):
8738 * platform/Pasteboard.h: Added.
8739 * platform/mac/PasteboardMac.mm: Added.
8740 The pasteboard class follows a singleton pattern
8741 (Pasteboard::generalPasteboard):
8742 (Pasteboard::~Pasteboard):
8743 (Pasteboard::Pasteboard):
8744 (Pasteboard::clearTypes):
8745 (Pasteboard::writeSelection):
8746 (Pasteboard::selectionPasteboardTypes):
8747 (Pasteboard::canSmartReplace):
8748 (Pasteboard::plainText):
8749 (Pasteboard::documentFragment):
8751 * platform/mac/WebNSAttributedStringExtras.h: Added.
8752 * platform/mac/WebNSAttributedStringExtras.mm: Added.
8753 Added select portions of this file from WebKit because the pasteboard needed the following function:
8754 (-[NSAttributedString _web_attributedStringByStrippingAttachmentCharacters]):
8756 2006-11-28 Justin Garcia <justin.garcia@apple.com>
8758 Reviewed by harrison
8760 <rdar://problem/4397952>
8761 Cannot select buttons at the end of a document, preventing copy/paste
8763 There were no VisiblePositions before/after buttons because editingIgnoresContent
8764 returned false for buttons.
8767 (WebCore::Position::upstream): Fixed a comment.
8768 (WebCore::Position::downstream): Ditto.
8769 * editing/DeleteSelectionCommand.cpp:
8770 (WebCore::DeleteSelectionCommand::initializeStartEnd): Ditto.
8771 * editing/htmlediting.cpp:
8772 (WebCore::editingIgnoresContent): It's unnecessary to prefer renderer
8773 checks over tag name checks because it seems that a node of a tag name
8774 that we do not ignore content for can't have a renderer of a type that we do.
8775 (WebCore::canHaveChildrenForEditing): Added selects, buttons, applets, and embeds.
8776 * editing/visible_units.cpp:
8777 (WebCore::previousLinePosition): Migrate to enclosingBlock. Fixes a bug where the
8778 caret would get stuck moving up/down a line from a caret just before an
8780 (WebCore::nextLinePosition): Ditto.
8782 2006-11-28 Geoffrey Garen <ggaren@apple.com>
8786 Fixed <rdar://problem/4844848> REGRESSION: extra cross-library ref/deref
8787 calls cause .5% PLT regression.
8789 Changed ref/deref calls to a single 'xxxDestroyed' call. Moved EditorClient
8790 from the Frame to the Page, since it's only responsible for
8791 Webview-level delegate calls.
8793 I don't really love this design, but it fixes the regression and allows
8794 a single WebKit object to implement multiple client interfaces.
8798 2006-11-27 Anders Carlsson <acarlsson@apple.com>
8800 Try fixing the build.
8802 * platform/graphics/IntRect.cpp:
8803 (WebCore::IntRect::IntRect):
8805 2006-11-27 Beth Dakin <bdakin@apple.com>
8809 Getting rid of some of the critical FIXMEs in ContextMenu.cpp.
8811 * bridge/mac/FrameMac.h: Two new spell checker functions from
8812 WebKit. (We will be able to delete the WebKit versions once we
8813 switch over to WebCore context menus.)
8814 * bridge/mac/FrameMac.mm:
8815 (WebCore::FrameMac::isSelectionMisspelled):
8816 (WebCore::core): Convert from NSArray of Strings to a Vector of
8818 (WebCore::FrameMac::guessesForMisspelledSelection):
8819 * loader/FrameLoader.cpp:
8820 (WebCore::FrameLoader::canHandleRequest):
8821 * loader/FrameLoader.h: Make canHandleRequest available through the
8823 * loader/FrameLoaderClient.h: canHandleRequest takes a
8824 ResourceRequest instead of an NSURLRequest.
8825 * loader/mac/FrameLoaderMac.mm:
8826 (WebCore::FrameLoader::continueAfterNavigationPolicy): Same
8827 * page/Frame.h: New spell checker functions moved to Frame. These
8828 should be moved some place better some day, but FrameMac currently
8829 seems to be the place to be for spell checker stuff.
8830 * platform/ContextMenu.cpp:
8831 (WebCore::ContextMenu::populate): Use new FrameLoader and spell
8832 checking functionality to get rid of two if (true) statements. Also
8833 add spelling guesses to the editing context menus.
8835 2006-11-27 Alexey Proskuryakov <ap@webkit.org>
8839 http://bugs.webkit.org/show_bug.cgi?id=11694
8840 XSLT output method does not default to HTML when the target document is HTML
8842 Test: fast/xsl/default-html.html
8844 * xml/XSLTProcessor.cpp:
8845 (WebCore::XSLTProcessor::transformToString): Make mimeType an input/output parameter,
8846 serving as a hint when the stylesheet doesn't specify the output method.
8847 (WebCore::XSLTProcessor::transformToFragment): Set mimeType to text/html if the target
8850 2006-11-27 Oliver Hunt <oliver@apple.com>
8854 Fixes a crash in SVG caused by an attempt to
8855 perform css overflow clipping by preventing
8856 the css overflow clip from being set in SVG.
8858 <rdar:/problems/4839568>
8860 * WebCore.xcodeproj/project.pbxproj:
8861 * rendering/RenderForeignObject.cpp:
8862 (WebCore::RenderForeignObject::RenderForeignObject):
8863 * rendering/RenderForeignObject.h:
8864 * rendering/RenderSVGBlock.cpp: Added.
8865 (WebCore::RenderSVGBlock::RenderSVGBlock):
8866 (WebCore::RenderSVGBlock::setStyle):
8867 * rendering/RenderSVGBlock.h: Added.
8868 * rendering/RenderSVGText.cpp:
8869 (WebCore::RenderSVGText::RenderSVGText):
8870 * rendering/RenderSVGText.h:
8872 2006-11-27 Anders Carlsson <acarlsson@apple.com>
8876 Add an explicit IntRect constructor that takes a FloatRect.
8878 * platform/graphics/IntRect.cpp:
8879 (WebCore::IntRect::IntRect):
8880 * platform/graphics/IntRect.h:
8882 2006-11-27 Ada Chan <adachan@apple.com>
8886 Moved WebCoreCache up to WebKit.
8889 * WebCore.xcodeproj/project.pbxproj:
8890 * bridge/mac/WebCoreCache.h: Removed.
8891 * bridge/mac/WebCoreCache.mm: Removed.
8893 2006-11-27 Anders Carlsson <acarlsson@apple.com>
8897 Move addMessageToConsole to Chrome.
8899 * bindings/js/kjs_events.cpp:
8900 (KJS::JSAbstractEventListener::handleEvent):
8901 * bindings/js/kjs_proxy.cpp:
8902 (WebCore::KJSProxy::evaluate):
8903 * bindings/js/kjs_window.cpp:
8904 (KJS::Window::isSafeScript):
8905 (KJS::ScheduledAction::execute):
8906 * bridge/mac/FrameMac.h:
8907 * bridge/mac/FrameMac.mm:
8908 * bridge/mac/WebCoreFrameBridge.h:
8910 (WebCore::Chrome::addMessageToConsole):
8912 * page/ChromeClient.h:
8915 2006-11-27 Adele Peterson <adele@apple.com>
8919 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8062
8920 Caret color in new text field should take background color and foreground color into consideration
8922 * editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret):
8923 Use the foreground color of the rootEditableElement to determine the caret color. This will work well for text controls in web pages (since the root is always the actual form control)
8924 as well as in editable WebViews, like in Mail, which will just pick up the color from the body element.
8926 2006-11-26 Simon Hausmann <hausmann@kde.org>
8930 http://bugs.webkit.org/show_bug.cgi?id=11693
8931 Fix the Qt build, adapt to various enum/class renamings.
8933 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
8934 (WebCore::KRenderingDeviceQt::createResource):
8935 (WebCore::KRenderingDeviceQt::createPaintServer):
8936 * kcanvas/device/qt/KRenderingDeviceQt.h:
8937 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp:
8938 (WebCore::SVGPaintServerLinearGradient::setup):
8939 * platform/graphics/svg/qt/SVGPaintServerQt.cpp:
8940 (WebCore::SVGPaintServer::renderPath):
8941 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp:
8943 * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp:
8944 (WebCore::SVGPaintServerSolid::setup):
8946 2006-11-24 Rob Buis <buis@kde.org>
8950 http://bugs.webkit.org/show_bug.cgi?id=11666
8951 .getScreenCTM() returns wrong values
8953 Take into account the local transform matrix too and
8954 so fix getScreenCTM/getCTM for <text>.
8956 * ksvg2/svg/SVGStyledTransformableElement.cpp:
8957 (SVGStyledTransformableElement::getCTM):
8958 (SVGStyledTransformableElement::getScreenCTM):
8959 * ksvg2/svg/SVGTextElement.cpp:
8960 (WebCore::SVGTextElement::getScreenCTM):
8961 (WebCore::SVGTextElement::getCTM):
8962 * ksvg2/svg/SVGTransformable.cpp:
8963 (WebCore::SVGTransformable::getCTM):
8964 (WebCore::SVGTransformable::getScreenCTM):
8965 * ksvg2/svg/SVGTransformable.h:
8967 2006-11-22 Rob Buis <buis@kde.org>
8971 http://bugs.webkit.org/show_bug.cgi?id=11661
8972 SVG: stroke not sensitive to mouse events (hit testing fails)
8974 Use mapAbsolutePointToLocal when hit-testing strokes.
8976 * rendering/RenderPath.cpp:
8977 (WebCore::RenderPath::fillContains):
8978 (WebCore::RenderPath::nodeAtPoint):
8980 2006-11-21 Anders Carlsson <acarlsson@apple.com>
8984 General SVG cleanup. Change some enums to match the style guidelines, use PLATFORM(CG) instead of PLATFORM(MAC).
8985 Remove config.h inluce from AffineTransform.h
8987 * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
8988 (WebCore::KRenderingDeviceQuartz::createPaintServer):
8989 (WebCore::KRenderingDeviceQuartz::createResource):
8990 * ksvg2/misc/KCanvasRenderingStyle.cpp:
8991 (WebCore::sharedSolidPaintServer):
8992 * ksvg2/svg/SVGFilterElement.cpp:
8993 (WebCore::SVGFilterElement::canvasResource):
8994 * ksvg2/svg/SVGLinearGradientElement.cpp:
8995 (WebCore::SVGLinearGradientElement::buildGradient):
8996 * ksvg2/svg/SVGLinearGradientElement.h:
8997 (WebCore::SVGLinearGradientElement::gradientType):
8998 * ksvg2/svg/SVGPatternElement.cpp:
8999 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
9000 (WebCore::SVGPatternElement::canvasResource):
9001 * ksvg2/svg/SVGRadialGradientElement.cpp:
9002 (WebCore::SVGRadialGradientElement::buildGradient):
9003 * ksvg2/svg/SVGRadialGradientElement.h:
9004 (WebCore::SVGRadialGradientElement::gradientType):
9005 * platform/graphics/AffineTransform.h:
9006 * platform/graphics/svg/SVGPaintServer.h:
9008 * platform/graphics/svg/SVGPaintServerGradient.cpp:
9009 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
9010 (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient):
9011 * platform/graphics/svg/SVGPaintServerGradient.h:
9012 * platform/graphics/svg/SVGPaintServerLinearGradient.h:
9013 (WebCore::SVGPaintServerLinearGradient::type):
9014 * platform/graphics/svg/SVGPaintServerPattern.h:
9015 (WebCore::SVGPaintServerPattern::type):
9016 * platform/graphics/svg/SVGPaintServerRadialGradient.h:
9017 (WebCore::SVGPaintServerRadialGradient::type):
9018 * platform/graphics/svg/SVGPaintServerSolid.h:
9019 (WebCore::SVGPaintServerSolid::type):
9020 * platform/graphics/svg/SVGResource.h:
9022 * platform/graphics/svg/cg/SVGPaintServerCg.cpp:
9023 (WebCore::SVGPaintServer::renderPath):
9024 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp:
9025 (WebCore::SVGPaintServerGradient::updateQuartzGradientCache):
9026 (WebCore::SVGPaintServerGradient::teardown):
9027 (WebCore::SVGPaintServerGradient::renderPath):
9028 (WebCore::SVGPaintServerGradient::setup):
9029 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp:
9030 (WebCore::SVGPaintServerPattern::setup):
9031 * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp:
9032 (WebCore::SVGPaintServerSolid::setup):
9033 * rendering/RenderPath.cpp:
9034 (WebCore::RenderPath::paint):
9035 * rendering/SVGInlineFlowBox.cpp:
9036 (WebCore::paintSVGInlineFlow):
9038 2006-11-21 Nikolas Zimmermann <zimmermann@kde.org>
9042 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11658
9044 Move KRenderingPaintServer* classes to the location
9045 of all other resources (platform/graphics/svg).
9047 Soon the whole platform/graphics/svg stuff will bemoved
9048 into ksvg2/ itself, as discussed with Darin.
9051 * WebCore.xcodeproj/project.pbxproj:
9052 * kcanvas/device/KRenderingDevice.h:
9053 * kcanvas/device/KRenderingPaintServer.h: Removed.
9054 * kcanvas/device/KRenderingPaintServerGradient.cpp: Removed.
9055 * kcanvas/device/KRenderingPaintServerGradient.h: Removed.
9056 * kcanvas/device/KRenderingPaintServerPattern.cpp: Removed.
9057 * kcanvas/device/KRenderingPaintServerPattern.h: Removed.
9058 * kcanvas/device/KRenderingPaintServerSolid.cpp: Removed.
9059 * kcanvas/device/KRenderingPaintServerSolid.h: Removed.
9060 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp: Removed.
9061 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h: Removed.
9062 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp: Removed.
9063 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h: Removed.
9064 * kcanvas/device/qt/KRenderingPaintServerQt.cpp: Removed.
9065 * kcanvas/device/qt/KRenderingPaintServerQt.h: Removed.
9066 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp: Removed.
9067 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h: Removed.
9068 * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
9069 * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
9070 (WebCore::KRenderingDeviceQuartz::createPaintServer):
9071 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
9072 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Removed.
9073 * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Removed.
9074 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h: Removed.
9075 * ksvg2/misc/KCanvasRenderingStyle.cpp:
9076 (WebCore::sharedSolidPaintServer):
9077 (WebCore::KSVGPainterFactory::fillPaintServer):
9078 (WebCore::KSVGPainterFactory::strokePaintServer):
9079 * ksvg2/misc/KCanvasRenderingStyle.h:
9080 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
9081 * ksvg2/svg/SVGFEOffsetElement.cpp:
9082 * ksvg2/svg/SVGGradientElement.cpp:
9083 (WebCore::SVGGradientElement::canvasResource):
9084 (WebCore::SVGGradientElement::resourceNotification):
9085 (WebCore::SVGGradientElement::rebuildStops):
9086 * ksvg2/svg/SVGGradientElement.h:
9087 * ksvg2/svg/SVGLinearGradientElement.cpp:
9088 (WebCore::SVGLinearGradientElement::buildGradient):
9089 * ksvg2/svg/SVGLinearGradientElement.h:
9090 (WebCore::SVGLinearGradientElement::gradientType):
9091 * ksvg2/svg/SVGPatternElement.cpp:
9092 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
9093 (WebCore::SVGPatternElement::canvasResource):
9094 * ksvg2/svg/SVGPatternElement.h:
9095 * ksvg2/svg/SVGRadialGradientElement.cpp:
9096 (WebCore::SVGRadialGradientElement::buildGradient):
9097 * ksvg2/svg/SVGRadialGradientElement.h:
9098 (WebCore::SVGRadialGradientElement::gradientType):
9099 * platform/graphics/svg/SVGPaintServer.cpp: Added.
9100 (WebCore::SVGPaintServer::SVGPaintServer):
9101 (WebCore::SVGPaintServer::~SVGPaintServer):
9102 (WebCore::SVGPaintServer::activeClient):
9103 (WebCore::SVGPaintServer::setActiveClient):
9104 (WebCore::SVGPaintServer::isPaintingText):
9105 (WebCore::SVGPaintServer::setPaintingText):
9106 (WebCore::operator<<):
9107 (WebCore::getPaintServerById):
9108 * platform/graphics/svg/SVGPaintServer.h: Added.
9110 (WebCore::SVGPaintServer::isPaintServer):
9111 * platform/graphics/svg/SVGPaintServerGradient.cpp: Added.
9112 (WebCore::compareStopOffset):
9113 (WebCore::operator<<):
9114 (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
9115 (WebCore::SVGPaintServerGradient::~SVGPaintServerGradient):
9116 (WebCore::SVGPaintServerGradient::gradientStops):
9117 (WebCore::SVGPaintServerGradient::setGradientStops):
9118 (WebCore::SVGPaintServerGradient::spreadMethod):
9119 (WebCore::SVGPaintServerGradient::setGradientSpreadMethod):
9120 (WebCore::SVGPaintServerGradient::boundingBoxMode):
9121 (WebCore::SVGPaintServerGradient::setBoundingBoxMode):
9122 (WebCore::SVGPaintServerGradient::gradientTransform):
9123 (WebCore::SVGPaintServerGradient::setGradientTransform):
9124 (WebCore::SVGPaintServerGradient::listener):
9125 (WebCore::SVGPaintServerGradient::setListener):
9126 (WebCore::SVGPaintServerGradient::externalRepresentation):
9127 * platform/graphics/svg/SVGPaintServerGradient.h: Added.
9129 (WebCore::SVGPaintServerGradient::):
9130 (WebCore::makeGradientStop):
9131 * platform/graphics/svg/SVGPaintServerLinearGradient.cpp: Added.
9132 (WebCore::SVGPaintServerLinearGradient::SVGPaintServerLinearGradient):
9133 (WebCore::SVGPaintServerLinearGradient::~SVGPaintServerLinearGradient):
9134 (WebCore::SVGPaintServerLinearGradient::gradientStart):
9135 (WebCore::SVGPaintServerLinearGradient::setGradientStart):
9136 (WebCore::SVGPaintServerLinearGradient::gradientEnd):
9137 (WebCore::SVGPaintServerLinearGradient::setGradientEnd):
9138 (WebCore::SVGPaintServerLinearGradient::externalRepresentation):
9139 * platform/graphics/svg/SVGPaintServerLinearGradient.h: Added.
9140 (WebCore::SVGPaintServerLinearGradient::type):
9141 * platform/graphics/svg/SVGPaintServerPattern.cpp: Added.
9142 (WebCore::SVGPaintServerPattern::SVGPaintServerPattern):
9143 (WebCore::SVGPaintServerPattern::~SVGPaintServerPattern):
9144 (WebCore::SVGPaintServerPattern::bbox):
9145 (WebCore::SVGPaintServerPattern::setBbox):
9146 (WebCore::SVGPaintServerPattern::boundingBoxMode):
9147 (WebCore::SVGPaintServerPattern::setBoundingBoxMode):
9148 (WebCore::SVGPaintServerPattern::tile):
9149 (WebCore::SVGPaintServerPattern::setTile):
9150 (WebCore::SVGPaintServerPattern::patternTransform):
9151 (WebCore::SVGPaintServerPattern::setPatternTransform):
9152 (WebCore::SVGPaintServerPattern::listener):
9153 (WebCore::SVGPaintServerPattern::setListener):
9154 (WebCore::SVGPaintServerPattern::externalRepresentation):
9155 * platform/graphics/svg/SVGPaintServerPattern.h: Added.
9156 (WebCore::SVGPaintServerPattern::type):
9157 * platform/graphics/svg/SVGPaintServerRadialGradient.cpp: Added.
9158 (WebCore::SVGPaintServerRadialGradient::SVGPaintServerRadialGradient):
9159 (WebCore::SVGPaintServerRadialGradient::~SVGPaintServerRadialGradient):
9160 (WebCore::SVGPaintServerRadialGradient::gradientCenter):
9161 (WebCore::SVGPaintServerRadialGradient::setGradientCenter):
9162 (WebCore::SVGPaintServerRadialGradient::gradientFocal):
9163 (WebCore::SVGPaintServerRadialGradient::setGradientFocal):
9164 (WebCore::SVGPaintServerRadialGradient::gradientRadius):
9165 (WebCore::SVGPaintServerRadialGradient::setGradientRadius):
9166 (WebCore::SVGPaintServerRadialGradient::externalRepresentation):
9167 * platform/graphics/svg/SVGPaintServerRadialGradient.h: Added.
9168 (WebCore::SVGPaintServerRadialGradient::type):
9169 * platform/graphics/svg/SVGPaintServerSolid.cpp: Added.
9170 (WebCore::SVGPaintServerSolid::SVGPaintServerSolid):
9171 (WebCore::SVGPaintServerSolid::~SVGPaintServerSolid):
9172 (WebCore::SVGPaintServerSolid::color):
9173 (WebCore::SVGPaintServerSolid::setColor):
9174 (WebCore::SVGPaintServerSolid::externalRepresentation):
9175 * platform/graphics/svg/SVGPaintServerSolid.h: Added.
9176 (WebCore::SVGPaintServerSolid::type):
9177 * platform/graphics/svg/SVGResource.cpp:
9178 * platform/graphics/svg/SVGResource.h:
9179 * platform/graphics/svg/SVGResourceClipper.cpp:
9180 * platform/graphics/svg/SVGResourceMarker.cpp:
9181 * platform/graphics/svg/SVGResourceMasker.cpp:
9182 * platform/graphics/svg/cg/SVGPaintServerCg.cpp: Added.
9183 (WebCore::SVGPaintServer::draw):
9184 (WebCore::SVGPaintServer::teardown):
9185 (WebCore::SVGPaintServer::renderPath):
9186 (WebCore::SVGPaintServer::strokePath):
9187 (WebCore::SVGPaintServer::clipToStrokePath):
9188 (WebCore::SVGPaintServer::fillPath):
9189 (WebCore::SVGPaintServer::clipToFillPath):
9190 * platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: Added.
9191 (WebCore::cgGradientCallback):
9192 (WebCore::CGShadingRefForLinearGradient):
9193 (WebCore::CGShadingRefForRadialGradient):
9194 (WebCore::SVGPaintServerGradient::invalidateCaches):
9195 (WebCore::SVGPaintServerGradient::updateQuartzGradientStopsCache):
9196 (WebCore::SVGPaintServerGradient::updateQuartzGradientCache):
9197 (WebCore::SVGPaintServerGradient::teardown):
9198 (WebCore::SVGPaintServerGradient::renderPath):
9199 (WebCore::SVGPaintServerGradient::setup):
9200 (WebCore::SVGPaintServerGradient::invalidate):
9201 * platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: Added.
9202 (WebCore::patternCallback):
9203 (WebCore::SVGPaintServerPattern::setup):
9204 (WebCore::SVGPaintServerPattern::teardown):
9205 * platform/graphics/svg/cg/SVGPaintServerSolidCg.cpp: Added.
9206 (WebCore::SVGPaintServerSolid::setup):
9207 * platform/graphics/svg/qt/SVGPaintServerGradientQt.cpp: Added.
9208 (WebCore::SVGPaintServerGradient::fillColorArray):
9209 * platform/graphics/svg/qt/SVGPaintServerLinearGradientQt.cpp: Added.
9210 (WebCore::SVGPaintServerLinearGradient::setup):
9211 * platform/graphics/svg/qt/SVGPaintServerPatternQt.cpp: Added.
9212 (WebCore::SVGPaintServerPattern::setup):
9213 * platform/graphics/svg/qt/SVGPaintServerQt.cpp: Added.
9214 (WebCore::SVGPaintServer::setPenProperties):
9215 (WebCore::SVGPaintServer::draw):
9216 (WebCore::SVGPaintServer::teardown):
9217 (WebCore::SVGPaintServer::renderPath):
9218 * platform/graphics/svg/qt/SVGPaintServerRadialGradientQt.cpp: Added.
9220 * platform/graphics/svg/qt/SVGPaintServerSolidQt.cpp: Added.
9221 (WebCore::SVGPaintServerSolid::setup):
9222 * rendering/RenderPath.cpp:
9223 (WebCore::RenderPath::paint):
9224 * rendering/SVGInlineFlowBox.cpp:
9225 (WebCore::paintSVGInlineFlow):
9226 * rendering/SVGRenderTreeAsText.cpp:
9227 (WebCore::writeStyle):
9228 (WebCore::writeRenderResources):
9230 2006-11-21 Alex Taylor <darwin@techvisual.co.nz>
9234 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11587
9236 Adds calculations for bottom right radius's position
9237 which was being drawn incorrectly.
9239 * rendering/RenderObject.cpp:
9240 (WebCore::RenderObject::paintBorder):
9242 2006-11-20 Rob Buis <buis@kde.org>
9246 http://bugs.webkit.org/show_bug.cgi?id=11519
9247 REGRESSION: Disabled file upload control doesn't have disabled appearance, failing fast/forms/file-input-disabled.html
9249 Transport disabled state from DOM element to the shadow
9252 * rendering/RenderFileUploadControl.cpp:
9253 (WebCore::RenderFileUploadControl::updateFromElement):
9254 * rendering/RenderTheme.h:
9256 2006-11-20 Anders Carlsson <acarlsson@apple.com>
9260 * loader/TextResourceDecoder.cpp:
9261 (WebCore::findXMLEncoding):
9262 Use CString instead of DeprecatedCString.
9264 * platform/CString.cpp:
9265 (WebCore::CString::find):
9266 * platform/CString.h:
9267 (WebCore::CString::data):
9268 Add find method, make data method inline.
9270 * platform/TextStream.cpp:
9271 * platform/TextStream.h:
9272 Remove DeprecatedCString functions.
9274 2006-11-20 Anders Carlsson <acarlsson@apple.com>
9278 Use CString instead of DeprecatedCString.
9280 * html/FormDataList.cpp:
9281 (WebCore::FormDataList::appendString):
9282 (WebCore::fixLineBreaks):
9283 (WebCore::FormDataList::appendFile):
9285 2006-11-20 Samuel Weinig <sam@webkit.org>
9289 Fix for http://bugs.webkit.org/show_bug.cgi?id=11656
9292 * WebCore.vcproj/WebCore/WebCore.vcproj:
9293 * bridge/win/ContextMenuClientWin.h:
9294 * bridge/win/EditorClientWin.h:
9295 * bridge/win/FrameWin.h:
9296 * platform/win/TemporaryLinkStubs.cpp:
9297 (WebCore::ContextMenu::show):
9298 (WebCore::ContextMenuClientWin::copyLinkToClipboard):
9299 (WebCore::ContextMenuClientWin::downloadURL):
9300 (WebCore::ContextMenuClientWin::copyImageToClipboard):
9301 (WebCore::ContextMenuClientWin::lookUpInDictionary):
9302 (WebCore::EditorClientWin::shouldInsertText):
9303 (WebCore::FrameLoader::reload):
9304 (WebCore::FrameWin::ignoreSpelling):
9305 (WebCore::FrameWin::learnSpelling):
9307 2006-11-20 Alexey Proskuryakov <ap@webkit.org>
9311 http://bugs.webkit.org/show_bug.cgi?id=10736
9312 XMLHttpRequest.responseXML should be null on error
9314 * dom/XMLTokenizer.cpp:
9315 (WebCore::XMLTokenizer::wellFormed):
9316 * dom/XMLTokenizer.h:
9317 (WebCore::Tokenizer::wellFormed):
9319 (WebCore::Document::Document):
9320 (WebCore::Document::implicitClose):
9322 (WebCore::Document::wellFormed):
9323 Tell whether XMLTokenizer saw an error. Always true (success) for HTML.
9325 * xml/xmlhttprequest.cpp:
9326 (WebCore::XMLHttpRequest::getResponseXML): Set the document to null if it's not well-formed.
9328 2006-11-20 Alexey Proskuryakov <ap@webkit.org>
9330 Reviewed by Sam Weinig.
9332 http://bugs.webkit.org/show_bug.cgi?id=11633
9333 Implement XMLDocument properties xmlEncoding, xmlVersion, xmlStandalone
9336 (WebCore::Document::Document):
9337 (WebCore::Document::setXMLVersion):
9338 (WebCore::Document::setXMLStandalone):
9340 (WebCore::Document::xmlEncoding):
9341 (WebCore::Document::xmlVersion):
9342 (WebCore::Document::xmlStandalone):
9343 (WebCore::Document::setXMLEncoding):
9345 * dom/XMLTokenizer.cpp:
9346 (WebCore::XMLTokenizer::startDocument):
9347 (WebCore::startDocumentHandler):
9348 (WebCore::XMLTokenizer::initializeParserContext):
9349 Added support for these properties, getting them from an libxml2 context.
9351 * html/HTMLDocument.cpp:
9352 (WebCore::HTMLDocument::HTMLDocument):
9353 HTMLDocument is the only kind of document that doesn't have xmlVersion default to "1.0".
9355 * bindings/scripts/CodeGeneratorJS.pm:
9356 * bindings/scripts/CodeGeneratorObjC.pm:
9357 Added WK_ucfirst to properly uppercase xmlVersion and xmlStandalone.
9359 2006-11-20 Nikolas Zimmermann <zimmermann@kde.org>
9365 * platform/qt/ContextMenuClientQt.cpp:
9366 (WebCore::ContextMenuClientQt::ref):
9367 (WebCore::ContextMenuClientQt::deref):
9368 (WebCore::ContextMenuClientQt::copyLinkToClipboard):
9369 (WebCore::ContextMenuClientQt::downloadURL):
9370 (WebCore::ContextMenuClientQt::copyImageToClipboard):
9371 (WebCore::ContextMenuClientQt::lookUpInDictionary):
9372 * platform/qt/ContextMenuClientQt.h:
9373 * platform/qt/ContextMenuQt.cpp:
9374 (WebCore::ContextMenu::appendItem):
9375 (WebCore::ContextMenu::show):
9376 (WebCore::ContextMenu::itemCount):
9377 (WebCore::ContextMenu::insertItem):
9378 * platform/qt/EditorClientQt.cpp:
9379 (WebCore::EditorClientQt::shouldInsertText):
9380 * platform/qt/EditorClientQt.h:
9381 * platform/qt/FrameQt.cpp:
9382 (WebCore::FrameQt::ignoreSpelling):
9383 (WebCore::FrameQt::learnSpelling):
9384 * platform/qt/FrameQt.h:
9385 * platform/qt/TemporaryLinkStubs.cpp:
9386 (FrameLoader::reload):
9388 2006-11-20 Samuel Weinig <sam@webkit.org>
9392 Fix for http://bugs.webkit.org/show_bug.cgi?id=11647
9395 * config.h: add #define NOMINMAX for windows build
9396 * platform/win/FontCacheWin.cpp:
9397 (WebCore::FontCache::createFontPlatformData):
9398 * platform/win/TemporaryLinkStubs.cpp: add definitions for
9400 (WebCore::aliasCursor):
9401 (WebCore::noDropCursor):
9402 (WebCore::progressCursor):
9404 2006-11-19 Beth Dakin <bdakin@apple.com>
9408 Implementation of actions for the new context menus.
9411 * WebCore.xcodeproj/project.pbxproj:
9412 * bridge/EditorClient.h: Declaration of shouldInsertText.
9413 * bridge/mac/FrameMac.h: Two new spelling functions.
9414 * bridge/mac/FrameMac.mm:
9415 (WebCore::FrameMac::ignoreSpelling):
9416 (WebCore::FrameMac::learnSpelling):
9417 * editing/Editor.cpp:
9418 (WebCore::Editor::shouldInsertText): Call into the client.
9420 * editing/EditorInsertAction.h: Added.
9421 (WebCore::): The WebCore equivalent of WebViewInsertAction. This is
9422 defined in its own header so that we can use it from Editor.h and
9423 EditorClient.h without having one of the above include the other.
9424 * page/ContextMenuClient.h: A few currently WebKit-implemented
9425 function needed for menu actions.
9426 * page/ContextMenuController.cpp:
9427 (WebCore::makeGoogleSearchURL):
9428 (WebCore::ContextMenuController::contextMenuActionSelected): The
9430 * page/ContextMenuController.h:
9431 * page/Frame.h: New pure-virtual spelling functions.
9432 * platform/ContextMenu.cpp:
9433 (WebCore::ContextMenu::controller): Get the controller from the
9435 * platform/ContextMenu.h:
9436 * platform/mac/ContextMenuMac.mm:
9438 forwardContextMenuAction:initWithContextMenuController:WebCore::]):
9439 Use the controller instead of the menu
9440 (-[MenuTarget WebCore::]):
9441 (-[MenuTarget setMenuController:WebCore::]):
9442 (-[MenuTarget forwardContextMenuAction:]):
9444 (ContextMenu::show):
9445 (ContextMenu::hide):
9447 2006-11-19 Simon Hausmann <hausmann@kde.org>
9451 http://bugs.webkit.org/show_bug.cgi?id=11649
9452 Fix CMake files for Qt-only build without KDE cmake files.
9453 Fix Qt/KDE build for the SVG support.
9454 Fix Qt-only build in the resource handler.
9457 * platform/graphics/svg/qt/SVGResourceFilterQt.cpp: Added.
9458 (WebCore::SVGResourceFilter::SVGResourceFilter):
9459 (WebCore::SVGResourceFilter::~SVGResourceFilter):
9460 (WebCore::SVGResourceFilter::prepareFilter):
9461 (WebCore::SVGResourceFilter::applyFilter):
9462 * platform/network/qt/ResourceHandleManager.cpp:
9463 (WebCore::ResourceHandleManager::cancel):
9464 (WebCore::ResourceHandleManager::slotData):
9465 (WebCore::ResourceHandleManager::slotMimetype):
9466 (WebCore::ResourceHandleManager::slotResult):
9467 (WebCore::ResourceHandleManager::deliverJobData):
9468 * platform/network/qt/ResourceHandleManager.h:
9469 * platform/network/qt/ResourceHandleQt.cpp:
9470 * platform/qt/CursorQt.cpp:
9471 (WebCore::noDropCursor):
9472 (WebCore::progressCursor):
9473 (WebCore::aliasCursor):
9475 2006-11-19 Mitz Pettel <mitz@webkit.org>
9479 - http://bugs.webkit.org/show_bug.cgi?id=11626
9480 Automate test for rdar://problem/4056100
9482 * manual-tests/delete-into-nested-block.html: Removed.
9484 2006-11-19 Nikolas Zimmermann <zimmermann@kde.org>
9488 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11596
9490 Split up KCanvasFilters & KCanvasFilterQuartz into several
9491 new classes (SVGFEBlend, SVGFEComposite...) and move them
9492 into platform/graphics/svg. This is still a temporary location,
9493 as discussed with Darin; the whole platform/graphics/svg directory
9494 will probably be moved into ksvg2/ in near future.
9496 This finally removes the duplicated enumerations in the svg filter
9497 classes and within kcanvas. ksvg2/ and platform/graphics/svg share
9498 their enums now. As KCanvasFilters is gone now, The kcanvas/ subdirectory
9502 * WebCore.xcodeproj/project.pbxproj:
9503 * bindings/scripts/CodeGeneratorJS.pm:
9504 * kcanvas/KCanvasFilters.cpp: Removed.
9505 * kcanvas/KCanvasFilters.h: Removed.
9506 * kcanvas/device/KRenderingDevice.h:
9507 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
9508 (WebCore::KRenderingDeviceQt::createFilterEffect):
9509 * kcanvas/device/qt/KRenderingDeviceQt.h:
9510 * kcanvas/device/quartz/KCanvasFilterQuartz.h: Removed.
9511 * kcanvas/device/quartz/KCanvasFilterQuartz.mm: Removed.
9512 * kcanvas/device/quartz/KCanvasItemQuartz.cpp:
9513 * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp:
9514 (WebCore::KRenderingDeviceQuartz::createResource):
9515 (WebCore::KRenderingDeviceQuartz::createFilterEffect):
9516 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
9517 * kcanvas/device/quartz/filters/WKArithmeticFilter.cikernel: Removed.
9518 * kcanvas/device/quartz/filters/WKArithmeticFilter.h: Removed.
9519 * kcanvas/device/quartz/filters/WKArithmeticFilter.m: Removed.
9520 * kcanvas/device/quartz/filters/WKComponentMergeFilter.cikernel: Removed.
9521 * kcanvas/device/quartz/filters/WKComponentMergeFilter.h: Removed.
9522 * kcanvas/device/quartz/filters/WKComponentMergeFilter.m: Removed.
9523 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.cikernel: Removed.
9524 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.h: Removed.
9525 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m: Removed.
9526 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.cikernel: Removed.
9527 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.h: Removed.
9528 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m: Removed.
9529 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.cikernel: Removed.
9530 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.h: Removed.
9531 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m: Removed.
9532 * kcanvas/device/quartz/filters/WKDistantLightFilter.cikernel: Removed.
9533 * kcanvas/device/quartz/filters/WKDistantLightFilter.h: Removed.
9534 * kcanvas/device/quartz/filters/WKDistantLightFilter.m: Removed.
9535 * kcanvas/device/quartz/filters/WKGammaTransferFilter.cikernel: Removed.
9536 * kcanvas/device/quartz/filters/WKGammaTransferFilter.h: Removed.
9537 * kcanvas/device/quartz/filters/WKGammaTransferFilter.m: Removed.
9538 * kcanvas/device/quartz/filters/WKIdentityTransferFilter.h: Removed.
9539 * kcanvas/device/quartz/filters/WKIdentityTransferFilter.m: Removed.
9540 * kcanvas/device/quartz/filters/WKLinearTransferFilter.cikernel: Removed.
9541 * kcanvas/device/quartz/filters/WKLinearTransferFilter.h: Removed.
9542 * kcanvas/device/quartz/filters/WKLinearTransferFilter.m: Removed.
9543 * kcanvas/device/quartz/filters/WKNormalMapFilter.cikernel: Removed.
9544 * kcanvas/device/quartz/filters/WKNormalMapFilter.h: Removed.
9545 * kcanvas/device/quartz/filters/WKNormalMapFilter.m: Removed.
9546 * kcanvas/device/quartz/filters/WKPointLightFilter.cikernel: Removed.
9547 * kcanvas/device/quartz/filters/WKPointLightFilter.h: Removed.
9548 * kcanvas/device/quartz/filters/WKPointLightFilter.m: Removed.
9549 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.cikernel: Removed.
9550 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.h: Removed.
9551 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m: Removed.
9552 * kcanvas/device/quartz/filters/WKSpotLightFilter.cikernel: Removed.
9553 * kcanvas/device/quartz/filters/WKSpotLightFilter.h: Removed.
9554 * kcanvas/device/quartz/filters/WKSpotLightFilter.m: Removed.
9555 * kcanvas/device/quartz/filters/WKTableTransferFilter.cikernel: Removed.
9556 * kcanvas/device/quartz/filters/WKTableTransferFilter.h: Removed.
9557 * kcanvas/device/quartz/filters/WKTableTransferFilter.m: Removed.
9558 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
9559 (WebCore::SVGComponentTransferFunctionElement::transferFunction):
9560 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
9561 * ksvg2/svg/SVGFEBlendElement.cpp:
9562 (WebCore::SVGFEBlendElement::filterEffect):
9563 * ksvg2/svg/SVGFEBlendElement.h:
9564 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
9565 (WebCore::SVGFEColorMatrixElement::filterEffect):
9566 * ksvg2/svg/SVGFEColorMatrixElement.h:
9567 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
9568 (WebCore::SVGFEComponentTransferElement::filterEffect):
9569 * ksvg2/svg/SVGFEComponentTransferElement.h:
9570 * ksvg2/svg/SVGFECompositeElement.cpp:
9571 (WebCore::SVGFECompositeElement::filterEffect):
9572 * ksvg2/svg/SVGFECompositeElement.h:
9573 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
9574 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
9575 (WebCore::SVGFEDiffuseLightingElement::updateLights):
9576 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
9577 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
9578 (WebCore::SVGFEDisplacementMapElement::stringToChannel):
9579 (WebCore::SVGFEDisplacementMapElement::filterEffect):
9580 * ksvg2/svg/SVGFEDisplacementMapElement.h:
9581 * ksvg2/svg/SVGFEDistantLightElement.cpp:
9582 (WebCore::SVGFEDistantLightElement::lightSource):
9583 * ksvg2/svg/SVGFEDistantLightElement.h:
9584 * ksvg2/svg/SVGFEFloodElement.cpp:
9585 (WebCore::SVGFEFloodElement::filterEffect):
9586 * ksvg2/svg/SVGFEFloodElement.h:
9587 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
9588 (WebCore::SVGFEGaussianBlurElement::filterEffect):
9589 * ksvg2/svg/SVGFEGaussianBlurElement.h:
9590 * ksvg2/svg/SVGFEImageElement.cpp:
9591 (WebCore::SVGFEImageElement::filterEffect):
9592 * ksvg2/svg/SVGFEImageElement.h:
9593 * ksvg2/svg/SVGFELightElement.h:
9594 * ksvg2/svg/SVGFEMergeElement.cpp:
9595 (WebCore::SVGFEMergeElement::filterEffect):
9596 * ksvg2/svg/SVGFEMergeElement.h:
9597 * ksvg2/svg/SVGFEOffsetElement.cpp:
9598 (WebCore::SVGFEOffsetElement::filterEffect):
9599 * ksvg2/svg/SVGFEOffsetElement.h:
9600 * ksvg2/svg/SVGFEPointLightElement.cpp:
9601 (WebCore::SVGFEPointLightElement::lightSource):
9602 * ksvg2/svg/SVGFEPointLightElement.h:
9603 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
9604 (WebCore::SVGFESpecularLightingElement::filterEffect):
9605 (WebCore::SVGFESpecularLightingElement::updateLights):
9606 * ksvg2/svg/SVGFESpecularLightingElement.h:
9607 * ksvg2/svg/SVGFESpotLightElement.cpp:
9608 (WebCore::SVGFESpotLightElement::lightSource):
9609 * ksvg2/svg/SVGFESpotLightElement.h:
9610 * ksvg2/svg/SVGFETileElement.cpp:
9611 (WebCore::SVGFETileElement::filterEffect):
9612 * ksvg2/svg/SVGFETileElement.h:
9613 * ksvg2/svg/SVGFETurbulenceElement.cpp:
9614 (WebCore::SVGFETurbulenceElement::filterEffect):
9615 * ksvg2/svg/SVGFETurbulenceElement.h:
9617 * ksvg2/svg/SVGFilterElement.cpp:
9618 (WebCore::SVGFilterElement::canvasResource):
9619 * ksvg2/svg/SVGFilterElement.h:
9620 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
9621 (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
9622 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
9623 * platform/graphics/FloatPoint3D.cpp: Added.
9624 (WebCore::FloatPoint3D::FloatPoint3D):
9625 (WebCore::FloatPoint3D::x):
9626 (WebCore::FloatPoint3D::setX):
9627 (WebCore::FloatPoint3D::y):
9628 (WebCore::FloatPoint3D::setY):
9629 (WebCore::FloatPoint3D::z):
9630 (WebCore::FloatPoint3D::setZ):
9631 (WebCore::FloatPoint3D::normalize):
9632 * platform/graphics/FloatPoint3D.h: Added.
9633 * platform/graphics/svg/SVGResourceFilter.cpp: Added.
9634 (WebCore::SVGResourceFilter::clearEffects):
9635 (WebCore::SVGResourceFilter::addFilterEffect):
9636 (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
9637 (WebCore::SVGResourceFilter::externalRepresentation):
9638 (WebCore::getFilterById):
9639 * platform/graphics/svg/SVGResourceFilter.h: Added.
9640 (WebCore::SVGResourceFilter::isFilter):
9641 (WebCore::SVGResourceFilter::filterBoundingBoxMode):
9642 (WebCore::SVGResourceFilter::setFilterBoundingBoxMode):
9643 (WebCore::SVGResourceFilter::effectBoundingBoxMode):
9644 (WebCore::SVGResourceFilter::setEffectBoundingBoxMode):
9645 (WebCore::SVGResourceFilter::filterRect):
9646 (WebCore::SVGResourceFilter::setFilterRect):
9647 * platform/graphics/svg/SVGResourceImage.h:
9648 * platform/graphics/svg/SVGResourceListener.h:
9649 (SVGResourceListener::SVGResourceListener):
9650 (SVGResourceListener::~SVGResourceListener):
9651 * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
9652 * platform/graphics/svg/cg/SVGResourceFilterCg.mm: Added.
9653 (WebCore::SVGResourceFilter::SVGResourceFilter):
9654 (WebCore::SVGResourceFilter::~SVGResourceFilter):
9655 (WebCore::SVGResourceFilter::prepareFilter):
9656 (WebCore::SVGResourceFilter::applyFilter):
9657 (WebCore::SVGResourceFilter::getCIFilterStack):
9658 (WebCore::SVGResourceFilter::imageForName):
9659 (WebCore::SVGResourceFilter::setImageForName):
9660 (WebCore::SVGResourceFilter::setOutputImage):
9661 (WebCore::alphaImageForImage):
9662 (WebCore::SVGResourceFilter::inputImage):
9663 * platform/graphics/svg/cg/SVGResourceMaskerCg.h: Removed.
9664 * platform/graphics/svg/cg/SVGResourceMaskerCg.mm:
9665 * platform/graphics/svg/filters/SVGDistantLightSource.h: Added.
9666 (WebCore::SVGDistantLightSource::SVGDistantLightSource):
9667 (WebCore::SVGDistantLightSource::azimuth):
9668 (WebCore::SVGDistantLightSource::elevation):
9669 * platform/graphics/svg/filters/SVGFEBlend.cpp: Added.
9670 (WebCore::SVGFEBlend::in2):
9671 (WebCore::SVGFEBlend::setIn2):
9672 (WebCore::SVGFEBlend::blendMode):
9673 (WebCore::SVGFEBlend::setBlendMode):
9674 (WebCore::operator<<):
9675 (WebCore::SVGFEBlend::externalRepresentation):
9676 * platform/graphics/svg/filters/SVGFEBlend.h: Added.
9678 * platform/graphics/svg/filters/SVGFEColorMatrix.cpp: Added.
9679 (WebCore::SVGFEColorMatrix::type):
9680 (WebCore::SVGFEColorMatrix::setType):
9681 (WebCore::SVGFEColorMatrix::values):
9682 (WebCore::SVGFEColorMatrix::setValues):
9683 (WebCore::operator<<):
9684 (WebCore::SVGFEColorMatrix::externalRepresentation):
9685 * platform/graphics/svg/filters/SVGFEColorMatrix.h: Added.
9687 * platform/graphics/svg/filters/SVGFEComponentTransfer.cpp: Added.
9688 (WebCore::SVGFEComponentTransfer::redFunction):
9689 (WebCore::SVGFEComponentTransfer::setRedFunction):
9690 (WebCore::SVGFEComponentTransfer::greenFunction):
9691 (WebCore::SVGFEComponentTransfer::setGreenFunction):
9692 (WebCore::SVGFEComponentTransfer::blueFunction):
9693 (WebCore::SVGFEComponentTransfer::setBlueFunction):
9694 (WebCore::SVGFEComponentTransfer::alphaFunction):
9695 (WebCore::SVGFEComponentTransfer::setAlphaFunction):
9696 (WebCore::operator<<):
9697 (WebCore::SVGFEComponentTransfer::externalRepresentation):
9698 * platform/graphics/svg/filters/SVGFEComponentTransfer.h: Added.
9700 (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
9701 * platform/graphics/svg/filters/SVGFEComposite.cpp: Added.
9702 (WebCore::SVGFEComposite::in2):
9703 (WebCore::SVGFEComposite::setIn2):
9704 (WebCore::SVGFEComposite::operation):
9705 (WebCore::SVGFEComposite::setOperation):
9706 (WebCore::SVGFEComposite::k1):
9707 (WebCore::SVGFEComposite::setK1):
9708 (WebCore::SVGFEComposite::k2):
9709 (WebCore::SVGFEComposite::setK2):
9710 (WebCore::SVGFEComposite::k3):
9711 (WebCore::SVGFEComposite::setK3):
9712 (WebCore::SVGFEComposite::k4):
9713 (WebCore::SVGFEComposite::setK4):
9714 (WebCore::SVGFEComposite::externalRepresentation):
9715 * platform/graphics/svg/filters/SVGFEComposite.h: Added.
9717 * platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: Added.
9718 (WebCore::SVGFEConvolveMatrix::kernelSize):
9719 (WebCore::SVGFEConvolveMatrix::setKernelSize):
9720 (WebCore::SVGFEConvolveMatrix::kernel):
9721 (WebCore::SVGFEConvolveMatrix::setKernel):
9722 (WebCore::SVGFEConvolveMatrix::divisor):
9723 (WebCore::SVGFEConvolveMatrix::setDivisor):
9724 (WebCore::SVGFEConvolveMatrix::bias):
9725 (WebCore::SVGFEConvolveMatrix::setBias):
9726 (WebCore::SVGFEConvolveMatrix::targetOffset):
9727 (WebCore::SVGFEConvolveMatrix::setTargetOffset):
9728 (WebCore::SVGFEConvolveMatrix::edgeMode):
9729 (WebCore::SVGFEConvolveMatrix::setEdgeMode):
9730 (WebCore::SVGFEConvolveMatrix::kernelUnitLength):
9731 (WebCore::SVGFEConvolveMatrix::setKernelUnitLength):
9732 (WebCore::SVGFEConvolveMatrix::preserveAlpha):
9733 (WebCore::SVGFEConvolveMatrix::setPreserveAlpha):
9734 (WebCore::operator<<):
9735 (WebCore::SVGFEConvolveMatrix::externalRepresentation):
9736 * platform/graphics/svg/filters/SVGFEConvolveMatrix.h: Added.
9738 * platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: Added.
9739 (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
9740 (WebCore::SVGFEDiffuseLighting::~SVGFEDiffuseLighting):
9741 (WebCore::SVGFEDiffuseLighting::lightingColor):
9742 (WebCore::SVGFEDiffuseLighting::setLightingColor):
9743 (WebCore::SVGFEDiffuseLighting::surfaceScale):
9744 (WebCore::SVGFEDiffuseLighting::setSurfaceScale):
9745 (WebCore::SVGFEDiffuseLighting::diffuseConstant):
9746 (WebCore::SVGFEDiffuseLighting::setDiffuseConstant):
9747 (WebCore::SVGFEDiffuseLighting::kernelUnitLengthX):
9748 (WebCore::SVGFEDiffuseLighting::setKernelUnitLengthX):
9749 (WebCore::SVGFEDiffuseLighting::kernelUnitLengthY):
9750 (WebCore::SVGFEDiffuseLighting::setKernelUnitLengthY):
9751 (WebCore::SVGFEDiffuseLighting::lightSource):
9752 (WebCore::SVGFEDiffuseLighting::setLightSource):
9753 (WebCore::SVGFEDiffuseLighting::externalRepresentation):
9754 * platform/graphics/svg/filters/SVGFEDiffuseLighting.h: Added.
9755 * platform/graphics/svg/filters/SVGFEDisplacementMap.cpp: Added.
9756 (WebCore::SVGFEDisplacementMap::SVGFEDisplacementMap):
9757 (WebCore::SVGFEDisplacementMap::in2):
9758 (WebCore::SVGFEDisplacementMap::setIn2):
9759 (WebCore::SVGFEDisplacementMap::xChannelSelector):
9760 (WebCore::SVGFEDisplacementMap::setXChannelSelector):
9761 (WebCore::SVGFEDisplacementMap::yChannelSelector):
9762 (WebCore::SVGFEDisplacementMap::setYChannelSelector):
9763 (WebCore::SVGFEDisplacementMap::scale):
9764 (WebCore::SVGFEDisplacementMap::setScale):
9765 (WebCore::operator<<):
9766 (WebCore::SVGFEDisplacementMap::externalRepresentation):
9767 * platform/graphics/svg/filters/SVGFEDisplacementMap.h: Added.
9769 * platform/graphics/svg/filters/SVGFEFlood.cpp: Added.
9770 (WebCore::SVGFEFlood::floodColor):
9771 (WebCore::SVGFEFlood::setFloodColor):
9772 (WebCore::SVGFEFlood::floodOpacity):
9773 (WebCore::SVGFEFlood::setFloodOpacity):
9774 (WebCore::SVGFEFlood::externalRepresentation):
9775 * platform/graphics/svg/filters/SVGFEFlood.h: Added.
9776 * platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: Added.
9777 (WebCore::SVGFEGaussianBlur::stdDeviationX):
9778 (WebCore::SVGFEGaussianBlur::setStdDeviationX):
9779 (WebCore::SVGFEGaussianBlur::stdDeviationY):
9780 (WebCore::SVGFEGaussianBlur::setStdDeviationY):
9781 (WebCore::SVGFEGaussianBlur::externalRepresentation):
9782 * platform/graphics/svg/filters/SVGFEGaussianBlur.h: Added.
9783 * platform/graphics/svg/filters/SVGFEImage.cpp: Added.
9784 (WebCore::SVGFEImage::SVGFEImage):
9785 (WebCore::SVGFEImage::~SVGFEImage):
9786 (WebCore::SVGFEImage::cachedImage):
9787 (WebCore::SVGFEImage::setCachedImage):
9788 (WebCore::SVGFEImage::externalRepresentation):
9789 * platform/graphics/svg/filters/SVGFEImage.h: Added.
9790 * platform/graphics/svg/filters/SVGFEMerge.cpp: Added.
9791 (WebCore::SVGFEMerge::mergeInputs):
9792 (WebCore::SVGFEMerge::setMergeInputs):
9793 (WebCore::SVGFEMerge::externalRepresentation):
9794 * platform/graphics/svg/filters/SVGFEMerge.h: Added.
9795 * platform/graphics/svg/filters/SVGFEMorphology.cpp: Added.
9796 (WebCore::SVGFEMorphology::morphologyOperator):
9797 (WebCore::SVGFEMorphology::setMorphologyOperator):
9798 (WebCore::SVGFEMorphology::radiusX):
9799 (WebCore::SVGFEMorphology::setRadiusX):
9800 (WebCore::SVGFEMorphology::radiusY):
9801 (WebCore::SVGFEMorphology::setRadiusY):
9802 (WebCore::operator<<):
9803 (WebCore::SVGFEMorphology::externalRepresentation):
9804 * platform/graphics/svg/filters/SVGFEMorphology.h: Added.
9806 * platform/graphics/svg/filters/SVGFEOffset.cpp: Added.
9807 (WebCore::SVGFEOffset::dx):
9808 (WebCore::SVGFEOffset::setDx):
9809 (WebCore::SVGFEOffset::dy):
9810 (WebCore::SVGFEOffset::setDy):
9811 (WebCore::SVGFEOffset::externalRepresentation):
9812 * platform/graphics/svg/filters/SVGFEOffset.h: Added.
9813 * platform/graphics/svg/filters/SVGFESpecularLighting.cpp: Added.
9814 (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
9815 (WebCore::SVGFESpecularLighting::~SVGFESpecularLighting):
9816 (WebCore::SVGFESpecularLighting::lightingColor):
9817 (WebCore::SVGFESpecularLighting::setLightingColor):
9818 (WebCore::SVGFESpecularLighting::surfaceScale):
9819 (WebCore::SVGFESpecularLighting::setSurfaceScale):
9820 (WebCore::SVGFESpecularLighting::specularConstant):
9821 (WebCore::SVGFESpecularLighting::setSpecularConstant):
9822 (WebCore::SVGFESpecularLighting::specularExponent):
9823 (WebCore::SVGFESpecularLighting::setSpecularExponent):
9824 (WebCore::SVGFESpecularLighting::kernelUnitLengthX):
9825 (WebCore::SVGFESpecularLighting::setKernelUnitLengthX):
9826 (WebCore::SVGFESpecularLighting::kernelUnitLengthY):
9827 (WebCore::SVGFESpecularLighting::setKernelUnitLengthY):
9828 (WebCore::SVGFESpecularLighting::lightSource):
9829 (WebCore::SVGFESpecularLighting::setLightSource):
9830 (WebCore::SVGFESpecularLighting::externalRepresentation):
9831 * platform/graphics/svg/filters/SVGFESpecularLighting.h: Added.
9832 * platform/graphics/svg/filters/SVGFETile.h: Added.
9833 * platform/graphics/svg/filters/SVGFETurbulence.cpp: Added.
9834 (WebCore::SVGFETurbulence::type):
9835 (WebCore::SVGFETurbulence::setType):
9836 (WebCore::SVGFETurbulence::baseFrequencyY):
9837 (WebCore::SVGFETurbulence::setBaseFrequencyY):
9838 (WebCore::SVGFETurbulence::baseFrequencyX):
9839 (WebCore::SVGFETurbulence::setBaseFrequencyX):
9840 (WebCore::SVGFETurbulence::seed):
9841 (WebCore::SVGFETurbulence::setSeed):
9842 (WebCore::SVGFETurbulence::numOctaves):
9843 (WebCore::SVGFETurbulence::setNumOctaves):
9844 (WebCore::SVGFETurbulence::stitchTiles):
9845 (WebCore::SVGFETurbulence::setStitchTiles):
9846 (WebCore::operator<<):
9847 (WebCore::SVGFETurbulence::externalRepresentation):
9848 * platform/graphics/svg/filters/SVGFETurbulence.h: Added.
9850 * platform/graphics/svg/filters/SVGFilterEffect.cpp: Added.
9851 (WebCore::SVGFilterEffect::subRegion):
9852 (WebCore::SVGFilterEffect::setSubRegion):
9853 (WebCore::SVGFilterEffect::in):
9854 (WebCore::SVGFilterEffect::setIn):
9855 (WebCore::SVGFilterEffect::result):
9856 (WebCore::SVGFilterEffect::setResult):
9857 (WebCore::SVGFilterEffect::externalRepresentation):
9858 (WebCore::operator<<):
9859 * platform/graphics/svg/filters/SVGFilterEffect.h: Added.
9861 (WebCore::SVGFilterEffect::SVGFilterEffect):
9862 (WebCore::SVGFilterEffect::~SVGFilterEffect):
9863 (WebCore::SVGFilterEffect::effectType):
9864 * platform/graphics/svg/filters/SVGLightSource.cpp: Added.
9865 (WebCore::operator<<):
9866 (WebCore::SVGPointLightSource::externalRepresentation):
9867 (WebCore::SVGSpotLightSource::externalRepresentation):
9868 (WebCore::SVGDistantLightSource::externalRepresentation):
9869 * platform/graphics/svg/filters/SVGLightSource.h: Added.
9871 (WebCore::SVGLightSource::SVGLightSource):
9872 (WebCore::SVGLightSource::~SVGLightSource):
9873 (WebCore::SVGLightSource::type):
9874 * platform/graphics/svg/filters/SVGPointLightSource.h: Added.
9875 (WebCore::SVGPointLightSource::SVGPointLightSource):
9876 (WebCore::SVGPointLightSource::position):
9877 * platform/graphics/svg/filters/SVGSpotLightSource.h: Added.
9878 (WebCore::SVGSpotLightSource::SVGSpotLightSource):
9879 (WebCore::SVGSpotLightSource::position):
9880 (WebCore::SVGSpotLightSource::direction):
9881 (WebCore::SVGSpotLightSource::specularExponent):
9882 (WebCore::SVGSpotLightSource::limitingConeAngle):
9883 * platform/graphics/svg/filters/cg/SVGFEBlendCg.mm: Added.
9884 (WebCore::SVGFEBlend::getCIFilter):
9885 * platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: Added.
9886 (WebCore::SVGFEColorMatrix::getCIFilter):
9887 * platform/graphics/svg/filters/cg/SVGFEComponentTransferCg.mm: Added.
9888 (WebCore::genImageFromTable):
9889 (WebCore::setParametersForComponentFunc):
9890 (WebCore::filterForComponentFunc):
9891 (WebCore::getFilterForFunc):
9892 (WebCore::SVGFEComponentTransfer::getFunctionFilter):
9893 (WebCore::SVGFEComponentTransfer::getCIFilter):
9894 * platform/graphics/svg/filters/cg/SVGFECompositeCg.mm: Added.
9895 (WebCore::SVGFEComposite::getCIFilter):
9896 * platform/graphics/svg/filters/cg/SVGFEDiffuseLightingCg.mm: Added.
9897 (WebCore::SVGFEDiffuseLighting::getCIFilter):
9898 * platform/graphics/svg/filters/cg/SVGFEDisplacementMapCg.mm: Added.
9899 (WebCore::SVGFEDisplacementMap::getCIFilter):
9900 * platform/graphics/svg/filters/cg/SVGFEFloodCg.mm: Added.
9901 (WebCore::SVGFEFlood::getCIFilter):
9902 * platform/graphics/svg/filters/cg/SVGFEGaussianBlurCg.mm: Added.
9903 (WebCore::SVGFEGaussianBlur::getCIFilter):
9904 * platform/graphics/svg/filters/cg/SVGFEHelpersCg.h: Added.
9905 * platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: Added.
9906 (WebCore::getVectorForChannel):
9908 (WebCore::getPointLightVectors):
9909 (WebCore::getLightVectors):
9910 (WebCore::getNormalMap):
9911 * platform/graphics/svg/filters/cg/SVGFEImageCg.mm: Added.
9912 (WebCore::SVGFEImage::getCIFilter):
9913 * platform/graphics/svg/filters/cg/SVGFEMergeCg.mm: Added.
9914 (WebCore::SVGFEMerge::getCIFilter):
9915 * platform/graphics/svg/filters/cg/SVGFEOffsetCg.mm: Added.
9916 (WebCore::SVGFEOffset::getCIFilter):
9917 * platform/graphics/svg/filters/cg/SVGFESpecularLightingCg.mm: Added.
9918 (WebCore::SVGFESpecularLighting::getCIFilter):
9919 * platform/graphics/svg/filters/cg/SVGFETileCg.mm: Added.
9920 (WebCore::SVGFETile::getCIFilter):
9921 * platform/graphics/svg/filters/cg/SVGFilterEffectCg.mm: Added.
9922 (WebCore::SVGFilterEffect::getCIFilter):
9923 * rendering/RenderPath.cpp:
9924 (WebCore::RenderPath::getAbsoluteRepaintRect):
9925 (WebCore::RenderPath::paint):
9926 * rendering/RenderSVGContainer.cpp:
9927 (WebCore::RenderSVGContainer::paint):
9928 (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
9929 * rendering/RenderSVGImage.cpp:
9930 (WebCore::RenderSVGImage::paint):
9931 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
9932 * rendering/SVGInlineFlowBox.cpp:
9933 (WebCore::paintSVGInlineFlow):
9935 2006-11-18 Rob Buis <buis@kde.org>
9939 http://bugs.webkit.org/show_bug.cgi?id=11321
9940 Element with :target pseudo-class still matched after fragment identifier change
9942 Make sure the page does a style recalculation and possible rendering
9943 when navigating back from a page with an anchor to a page without
9946 * loader/FrameLoader.cpp:
9947 (WebCore::FrameLoader::gotoAnchor):
9949 2006-11-18 Don Gibson <dgibson77@gmail.com>
9951 Reviewed by Sam Weinig.
9953 http://bugs.webkit.org/show_bug.cgi?id=11634:
9954 Fix segfault on startup for Windows build. Also fix segfault when
9956 Clean up some of the style of the patch that landed in r17816.
9958 * WebCore.vcproj/WebCore/WebCore.vcproj:
9959 * bridge/win/ChromeClientWin.h:
9960 (WebCore::ChromeClientWin::~ChromeClientWin):
9961 (WebCore::ChromeClientWin::ref):
9962 (WebCore::ChromeClientWin::deref):
9963 * bridge/win/ContextMenuClientWin.h:
9964 (WebCore::ContextMenuClientWin::~ContextMenuClientWin):
9965 (WebCore::ContextMenuClientWin::ref):
9966 (WebCore::ContextMenuClientWin::deref):
9967 * bridge/win/EditorClientWin.h:
9968 (WebCore::EditorClientWin::~EditorClientWin):
9969 (WebCore::EditorClientWin::ref):
9970 (WebCore::EditorClientWin::deref):
9971 * bridge/win/FrameWin.cpp:
9972 (WebCore::FrameWin::FrameWin):
9973 * bridge/win/FrameWin.h:
9975 * loader/win/FrameLoaderClientWin.h: Added.
9976 (WebCore::FrameLoaderClientWin::~FrameLoaderClientWin):
9977 (WebCore::FrameLoaderClientWin::ref):
9978 (WebCore::FrameLoaderClientWin::deref):
9979 * platform/win/TemporaryLinkStubs.cpp:
9980 (WebCore::ChromeClientWin::createWindow):
9981 (WebCore::ChromeClientWin::createModalDialog):
9982 (WebCore::EditorClientWin::selectWordBeforeMenuEvent):
9983 (WebCore::EditorClientWin::isEditable):
9984 (WebCore::EditorClientWin::shouldBeginEditing):
9985 (WebCore::EditorClientWin::shouldEndEditing):
9986 (WebCore::EditorClientWin::shouldApplyStyle):
9987 (WebCore::EditorClientWin::didBeginEditing):
9988 (WebCore::EditorClientWin::respondToChangedContents):
9989 (WebCore::EditorClientWin::didEndEditing):
9990 (WebCore::EditorClientWin::registerCommandForUndo):
9991 (WebCore::EditorClientWin::registerCommandForRedo):
9992 (WebCore::EditorClientWin::clearUndoRedoOperations):
9993 (WebCore::EditorClientWin::canUndo):
9994 (WebCore::EditorClientWin::canRedo):
9995 (WebCore::EditorClientWin::undo):
9996 (WebCore::EditorClientWin::redo):
9997 (WebCore::FrameLoader::createFrame):
9998 (WebCore::FrameLoader::createPlugin):
9999 (WebCore::FrameLoaderClientWin::hasWebView):
10000 (WebCore::FrameLoaderClientWin::hasFrameView):
10001 (WebCore::FrameLoaderClientWin::hasBackForwardList):
10002 (WebCore::FrameLoaderClientWin::resetBackForwardList):
10003 (WebCore::FrameLoaderClientWin::provisionalItemIsTarget):
10004 (WebCore::FrameLoaderClientWin::loadProvisionalItemFromPageCache):
10005 (WebCore::FrameLoaderClientWin::invalidateCurrentItemPageCache):
10006 (WebCore::FrameLoaderClientWin::privateBrowsingEnabled):
10007 (WebCore::FrameLoaderClientWin::makeDocumentView):
10008 (WebCore::FrameLoaderClientWin::makeRepresentation):
10009 (WebCore::FrameLoaderClientWin::forceLayout):
10010 (WebCore::FrameLoaderClientWin::forceLayoutForNonHTML):
10011 (WebCore::FrameLoaderClientWin::updateHistoryForCommit):
10012 (WebCore::FrameLoaderClientWin::updateHistoryForBackForwardNavigation):
10013 (WebCore::FrameLoaderClientWin::updateHistoryForReload):
10014 (WebCore::FrameLoaderClientWin::updateHistoryForStandardLoad):
10015 (WebCore::FrameLoaderClientWin::updateHistoryForInternalLoad):
10016 (WebCore::FrameLoaderClientWin::updateHistoryAfterClientRedirect):
10017 (WebCore::FrameLoaderClientWin::setCopiesOnScroll):
10018 (WebCore::FrameLoaderClientWin::tokenForLoadErrorReset):
10019 (WebCore::FrameLoaderClientWin::resetAfterLoadError):
10020 (WebCore::FrameLoaderClientWin::doNotResetAfterLoadError):
10021 (WebCore::FrameLoaderClientWin::willCloseDocument):
10022 (WebCore::FrameLoaderClientWin::detachedFromParent1):
10023 (WebCore::FrameLoaderClientWin::detachedFromParent2):
10024 (WebCore::FrameLoaderClientWin::detachedFromParent3):
10025 (WebCore::FrameLoaderClientWin::detachedFromParent4):
10026 (WebCore::FrameLoaderClientWin::loadedFromPageCache):
10027 (WebCore::FrameLoaderClientWin::dispatchDidHandleOnloadEvents):
10028 (WebCore::FrameLoaderClientWin::dispatchDidReceiveServerRedirectForProvisionalLoad):
10029 (WebCore::FrameLoaderClientWin::dispatchDidCancelClientRedirect):
10030 (WebCore::FrameLoaderClientWin::dispatchWillPerformClientRedirect):
10031 (WebCore::FrameLoaderClientWin::dispatchDidChangeLocationWithinPage):
10032 (WebCore::FrameLoaderClientWin::dispatchWillClose):
10033 (WebCore::FrameLoaderClientWin::dispatchDidReceiveIcon):
10034 (WebCore::FrameLoaderClientWin::dispatchDidStartProvisionalLoad):
10035 (WebCore::FrameLoaderClientWin::dispatchDidReceiveTitle):
10036 (WebCore::FrameLoaderClientWin::dispatchDidCommitLoad):
10037 (WebCore::FrameLoaderClientWin::dispatchDidFinishLoad):
10038 (WebCore::FrameLoaderClientWin::dispatchDidFirstLayout):
10039 (WebCore::FrameLoaderClientWin::dispatchShow):
10040 (WebCore::FrameLoaderClientWin::cancelPolicyCheck):
10041 (WebCore::FrameLoaderClientWin::dispatchWillSubmitForm):
10042 (WebCore::FrameLoaderClientWin::dispatchDidLoadMainResource):
10043 (WebCore::FrameLoaderClientWin::clearLoadingFromPageCache):
10044 (WebCore::FrameLoaderClientWin::isLoadingFromPageCache):
10045 (WebCore::FrameLoaderClientWin::revertToProvisionalState):
10046 (WebCore::FrameLoaderClientWin::clearUnarchivingState):
10047 (WebCore::FrameLoaderClientWin::progressStarted):
10048 (WebCore::FrameLoaderClientWin::progressCompleted):
10049 (WebCore::FrameLoaderClientWin::setMainFrameDocumentReady):
10050 (WebCore::FrameLoaderClientWin::willChangeTitle):
10051 (WebCore::FrameLoaderClientWin::didChangeTitle):
10052 (WebCore::FrameLoaderClientWin::finishedLoading):
10053 (WebCore::FrameLoaderClientWin::finalSetupForReplace):
10054 (WebCore::FrameLoaderClientWin::setDefersLoading):
10055 (WebCore::FrameLoaderClientWin::isArchiveLoadPending):
10056 (WebCore::FrameLoaderClientWin::cancelPendingArchiveLoad):
10057 (WebCore::FrameLoaderClientWin::clearArchivedResources):
10058 (WebCore::FrameLoaderClientWin::canShowMIMEType):
10059 (WebCore::FrameLoaderClientWin::representationExistsForURLScheme):
10060 (WebCore::FrameLoaderClientWin::generatedMIMETypeForURLScheme):
10061 (WebCore::FrameLoaderClientWin::frameLoadCompleted):
10062 (WebCore::FrameLoaderClientWin::restoreScrollPositionAndViewState):
10063 (WebCore::FrameLoaderClientWin::provisionalLoadStarted):
10064 (WebCore::FrameLoaderClientWin::shouldTreatURLAsSameAsCurrent):
10065 (WebCore::FrameLoaderClientWin::addHistoryItemForFragmentScroll):
10066 (WebCore::FrameLoaderClientWin::didFinishLoad):
10067 (WebCore::FrameLoaderClientWin::prepareForDataSourceReplacement):
10068 (WebCore::FrameLoaderClientWin::setTitle):
10069 (WebCore::FrameLoaderClientWin::userAgent):
10071 2006-11-18 Alexey Proskuryakov <ap@webkit.org>
10073 Reviewed by Rob (yay!).
10075 http://bugs.webkit.org/show_bug.cgi?id=11640
10076 XMLHttpRequest produces undefined:undefined HTTP authentication
10078 * bindings/js/JSXMLHttpRequest.cpp:
10079 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
10080 Treat undefined credentials as missing ones.
10082 2006-11-17 Lars Naesbye Christensen <lars@naesbye.dk>
10086 http://bugs.webkit.org/show_bug.cgi?id=11638
10087 [CSS 2.1+3] add support for alias, progress, no-drop and not-allowed cursor styles
10089 * Resources/aliasCursor.png: Added.
10090 * Resources/noDropCursor.png: Added.
10091 * Resources/progressCursor.png: Added.
10092 * WebCore.xcodeproj/project.pbxproj:
10093 * css/CSSComputedStyleDeclaration.cpp:
10094 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
10095 * css/CSSValueKeywords.in:
10096 * manual-tests/cursor.html:
10097 * page/EventHandler.cpp:
10098 (WebCore::selectCursor):
10099 * platform/Cursor.h:
10100 * platform/mac/CursorMac.mm:
10101 (WebCore::handCursor):
10102 (WebCore::aliasCursor):
10103 (WebCore::progressCursor):
10104 (WebCore::noDropCursor):
10105 * rendering/RenderStyle.h:
10108 2006-11-18 Steve Falkenburg <sfalken@apple.com>
10112 Properly adjust CFAbsoluteTime to time_t to fix date calculations.
10114 Compare lastModified w/ MAX_TIME_T when setting last modified date
10115 instead of comparing expiration against MAX_TIME_T.
10117 * platform/network/cf/ResourceResponseCFNet.cpp:
10118 (WebCore::getResourceResponse): Add kCFAbsoluteTimeIntervalSince1970 in assignment
10120 2006-11-17 Anders Carlsson <acarlsson@apple.com>
10124 More conversions from DeprecatedValueList to Vector and HashSet.
10126 * css/CSSValueList.cpp:
10127 (WebCore::CSSValueList::~CSSValueList):
10128 (WebCore::CSSValueList::append):
10129 (WebCore::CSSValueList::cssText):
10130 * css/CSSValueList.h:
10131 (WebCore::CSSValueList::length):
10132 (WebCore::CSSValueList::item):
10133 * dom/Document.cpp:
10134 (WebCore::Document::attachNodeIterator):
10135 (WebCore::Document::notifyBeforeNodeRemoval):
10137 * ksvg2/svg/SVGGradientElement.cpp:
10138 (WebCore::SVGGradientElement::notifyAttributeChange):
10139 * ksvg2/svg/SVGPatternElement.cpp:
10140 (WebCore::SVGPatternElement::notifyClientsToRepaint):
10141 * platform/graphics/svg/SVGResource.cpp:
10142 (WebCore::SVGResource::invalidate):
10143 (WebCore::SVGResource::addClient):
10144 * platform/graphics/svg/SVGResource.h:
10145 * rendering/RenderBlock.h:
10147 === Safari-521.31 ===
10149 2006-11-17 Timothy Hatcher <timothy@apple.com>
10151 Reviewed by Harrison.
10153 <rdar://problem/4796730> table deletion elements are serialized out if they are visible when innerHTML or a Web Archive is made
10155 Disable the delete button controller when cloning nodes, Mail does this before saving a draft.
10157 * dom/ContainerNode.cpp:
10158 (WebCore::ContainerNode::cloneChildNodes):
10159 * editing/markup.cpp:
10160 (WebCore::createFragmentFromNodes):
10162 2006-11-17 Justin Garcia <justin.garcia@apple.com>
10164 Reviewed by harrison
10166 <rdar://problem/4237467> REGRESSION: Pasting word from quoted text quotes the destination
10167 <rdar://problem/4017358> quoted text is wrong color, when pasted as quotation
10169 * editing/ReplaceSelectionCommand.cpp:
10170 (WebCore::isMailPasteAsQuotationNode): Added. Checks for the node
10171 that Mail wraps around an incoming fragment when it wants it to be pasted
10172 with quoting (no merging should be done).
10173 (WebCore::ReplaceSelectionCommand::removeNodePreservingChildren): Added
10174 this virtual method in order to adjust the nodes that ReplaceSelectionCommand
10176 (WebCore::ReplaceSelectionCommand::shouldMerge): Don't merge from content
10177 inside a Mail Paste as Quotation node. Allow merging from Mail blockquotes.
10178 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): When pasting into
10179 a Mail blockquote, we ignore the parts of the source document's default style
10180 that are overriden by styles from the Mail blockquote. This is necessary in order
10181 for text that's black (because black is the source document's default font color)
10182 to appear blue/green/whatever when it's pasted into a Mail blockquote.
10183 (WebCore::ReplaceSelectionCommand::handlePasteAsQuotationNode): Turn an inserted
10184 Mail Paste as Quotation node into a normal Mail blockquote. This will prevent
10185 a copied blockquote that was inserted into the document using Paste as Quotation
10186 from triggering Paste as Quotation behavior when it's pasted.
10187 (WebCore::ReplaceSelectionCommand::doApply): Call the new/altered methods.
10188 * editing/ReplaceSelectionCommand.h:
10189 * editing/markup.cpp:
10190 (WebCore::styleFromMatchedRulesForElement): Put this code into a subroutine.
10191 (WebCore::removeEnclosingMailBlockquoteStyle): Added.
10192 (WebCore::startMarkup): When wrapping text nodes in style spans, leave out
10193 styles that Mail blockquotes contribute, so that Mail blockquote styles can
10194 be differentiated from styles that the user has applied. When creating markup
10195 for elements, do the same thing.
10196 (WebCore::createMarkup): Call the new subroutine.
10198 2006-11-17 Rob Buis <buis@kde.org>
10202 http://bugs.webkit.org/show_bug.cgi?id=11635
10203 Bug 11635: Fix potential issue with non-xslt build
10205 Fix the issue and do style guideline corrections.
10207 * dom/ProcessingInstruction.cpp:
10208 (WebCore::ProcessingInstruction::checkStyleSheet):
10209 (WebCore::ProcessingInstruction::sheetLoaded):
10210 (WebCore::ProcessingInstruction::setCSSStyleSheet):
10211 (WebCore::ProcessingInstruction::setXSLStyleSheet):
10212 (WebCore::ProcessingInstruction::parseStyleSheet):
10214 2006-11-17 Timothy Hatcher <timothy@apple.com>
10216 Reviewed by Harrison.
10218 <rdar://problem/4843131> text entry is slow inside element that has the deletion rectangle around it
10220 Only disable/enable the delete button inside applyCommand() to prevent slowing down typing.
10221 This reintroduces <rdar://problem/4796657> table deletion outline does not always follow the table size as editing occurs inside
10223 * editing/EditCommand.cpp:
10224 (WebCore::EditCommand::apply):
10225 (WebCore::EditCommand::unapply):
10226 (WebCore::EditCommand::reapply):
10227 (WebCore::applyCommand):
10228 * editing/EditCommand.h:
10230 2006-11-17 Zack Rusin <zack@kde.org>
10232 Reviewed by Mitz. Landed by Niko.
10234 Making platform Qt/KDE compile and work after
10235 the latest api changes. Reported as
10236 http://bugs.webkit.org/show_bug.cgi?id=11617
10239 * page/qt/EventHandlerQt.cpp: Added.
10240 (WebCore::isKeyboardOptionTab):
10241 (WebCore::EventHandler::tabsToLinks):
10242 (WebCore::EventHandler::tabsToAllControls):
10243 (WebCore::EventHandler::freeClipboard):
10244 (WebCore::EventHandler::focusDocumentView):
10245 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
10246 (WebCore::EventHandler::passMouseDownEventToWidget):
10247 (WebCore::EventHandler::lastEventIsMouseUp):
10248 (WebCore::EventHandler::dragHysteresisExceeded):
10249 (WebCore::EventHandler::handleDrag):
10250 (WebCore::EventHandler::handleMouseUp):
10251 (WebCore::EventHandler::passSubframeEventToSubframe):
10252 (WebCore::EventHandler::passWheelEventToWidget):
10253 (WebCore::EventHandler::shouldDragAutoNode):
10254 (WebCore::EventHandler::dispatchDragSrcEvent):
10255 (WebCore::EventHandler::passMousePressEventToSubframe):
10256 (WebCore::EventHandler::passMouseMoveEventToSubframe):
10257 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
10258 (WebCore::EventHandler::passWheelEventToSubframe):
10259 (WebCore::EventHandler::passMousePressEventToScrollbar):
10260 * platform/ContextMenu.h:
10261 * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
10262 (WebCore::SVGResourceClipper::applyClip):
10263 * platform/qt/ContextMenuClientQt.cpp: Added.
10264 (WebCore::ContextMenuClientQt::addCustomContextMenuItems):
10265 (WebCore::ContextMenuClientQt::ref):
10266 (WebCore::ContextMenuClientQt::deref):
10267 * platform/qt/ContextMenuClientQt.h: Added.
10268 * platform/qt/ContextMenuQt.cpp: Added.
10269 (WebCore::ContextMenu::appendItem):
10270 (WebCore::ContextMenu::itemCount):
10271 (WebCore::ContextMenu::insertItem):
10272 (WebCore::ContextMenu::setPlatformMenuDescription):
10273 * platform/qt/EditorClientQt.cpp:
10274 (WebCore::EditorClientQt::selectWordBeforeMenuEvent):
10275 (WebCore::EditorClientQt::isEditable):
10276 (WebCore::EditorClientQt::registerCommandForUndo):
10277 (WebCore::EditorClientQt::registerCommandForRedo):
10278 (WebCore::EditorClientQt::clearUndoRedoOperations):
10279 (WebCore::EditorClientQt::canUndo):
10280 (WebCore::EditorClientQt::canRedo):
10281 (WebCore::EditorClientQt::undo):
10282 (WebCore::EditorClientQt::redo):
10283 * platform/qt/EditorClientQt.h:
10284 * platform/qt/ScrollViewCanvasQt.cpp:
10285 (WebCore::ScrollViewCanvasQt::mousePressEvent):
10286 * platform/qt/TemporaryLinkStubs.cpp:
10287 (FrameView::updateBorder):
10289 2006-11-17 David Harrison <harrison@apple.com>
10293 <rdar://problem/4799899> Frame::revealSelection() only scrolls the startContainer's layer
10295 Replace an assert with a fixme that refers to this bug.
10298 (WebCore::Frame::revealSelection):
10300 2006-11-16 Rob Buis <buis@kde.org>
10302 Reviewed and landed by Brady
10304 Fixes http://bugs.webkit.org/show_bug.cgi?id=11590 -
10305 REGRESSION (r17726-r17742): Wikipedia page intermittently loads but doesn't render
10306 Fix the regression by setting m_loadCompleted correctly.
10308 * css/CSSStyleSheet.cpp:
10309 (WebCore::CSSStyleSheet::checkLoaded):
10311 (WebCore::Node::sheetLoaded):
10312 * dom/ProcessingInstruction.cpp:
10313 (WebCore::ProcessingInstruction::sheetLoaded):
10314 * dom/ProcessingInstruction.h:
10315 * html/HTMLLinkElement.cpp:
10316 (WebCore::HTMLLinkElement::sheetLoaded):
10317 * html/HTMLLinkElement.h:
10318 * html/HTMLStyleElement.cpp:
10319 (WebCore::HTMLStyleElement::sheetLoaded):
10320 * html/HTMLStyleElement.h:
10322 2006-11-16 David Harrison <harrison@apple.com>
10326 <rdar://problem/4056100> REGRESSION (Tiger): Deleting top part of reply email leaves fails to clear text at end of message
10328 The problem was triggered by the fact that the parent div was changing both
10329 in position and in height. The renderer normally bifurcates its logic for
10330 x-position changes vs height changes.
10332 Call repaintDuringLayoutIfMoved() with old rect (incl. width and height) instead of just the old position.
10335 * manual-tests/delete-into-nested-block.html
10337 * rendering/RenderBlock.cpp:
10338 (WebCore::RenderBlock::layoutBlockChildren):
10339 (WebCore::RenderBlock::positionNewFloats):
10340 * rendering/RenderBox.cpp:
10341 (WebCore::RenderBox::repaintDuringLayoutIfMoved):
10342 * rendering/RenderBox.h:
10343 * rendering/RenderFlexibleBox.cpp:
10344 (WebCore::RenderFlexibleBox::placeChild):
10345 * rendering/RenderObject.cpp:
10346 (WebCore::RenderObject::repaintDuringLayoutIfMoved):
10347 * rendering/RenderObject.h:
10348 * rendering/RenderTableSection.cpp:
10349 (WebCore::RenderTableSection::layoutRows):
10351 2006-11-16 Adele Peterson <adele@apple.com>
10355 Slider cleanup. Let the theme set the size of the slider thumb.
10357 * rendering/RenderSlider.cpp:
10358 (WebCore::RenderSlider::setStyle): Moving the thumb's appearance adjustment to createThumbStyle.
10359 (WebCore::RenderSlider::createThumbStyle):
10360 (WebCore::RenderSlider::layout): Let the theme set the size of the thumb.
10361 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::adjustSliderThumbSize): Added.
10362 * rendering/RenderTheme.h: ditto.
10363 * rendering/RenderThemeMac.h: ditto.
10364 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::adjustSliderThumbSize): ditto.
10366 2006-11-15 Anders Carlsson <acarlsson@apple.com>
10370 Use Vector instead of DeprecatedValueList in a few places.
10372 * bindings/js/kjs_dom.cpp:
10373 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
10374 (KJS::DOMNamedNodesCollection::lengthGetter):
10375 (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
10376 * bindings/js/kjs_dom.h:
10377 * bindings/js/kjs_html.cpp:
10378 (KJS::JSHTMLDocument::namedItemGetter):
10379 (KJS::JSHTMLElement::classInfo):
10380 (KJS::JSHTMLElement::accessors):
10381 (KJS::JSHTMLCollection::getNamedItems):
10382 * bindings/objc/DOM.mm:
10383 * bridge/mac/FrameMac.mm:
10384 (WebCore::FrameMac::dashboardRegionsDictionary):
10385 * css/CSSStyleDeclaration.cpp:
10386 (WebCore::CSSStyleDeclaration::diff):
10387 * html/HTMLCollection.cpp:
10388 (WebCore::HTMLCollection::namedItems):
10389 * html/HTMLCollection.h:
10390 * kcanvas/KCanvasFilters.cpp:
10391 (WebCore::KCanvasFilter::externalRepresentation):
10392 * kcanvas/KCanvasFilters.h:
10393 (WebCore::KCanvasFEColorMatrix::values):
10394 (WebCore::KCanvasFEColorMatrix::setValues):
10395 (WebCore::KCanvasFEConvolveMatrix::kernel):
10396 (WebCore::KCanvasFEConvolveMatrix::setKernel):
10397 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
10398 (WebCore::KCanvasFilterQuartz::getCIFilterStack):
10399 (WebCore::KCanvasFEColorMatrixQuartz::getCIFilter):
10400 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
10401 (WebCore::SVGFEColorMatrixElement::filterEffect):
10402 * platform/graphics/svg/SVGResourceClipper.h:
10403 * platform/graphics/svg/cg/SVGResourceClipperCg.cpp:
10404 (WebCore::SVGResourceClipper::applyClip):
10405 * platform/network/FormData.h:
10406 * rendering/RenderPath.h:
10407 * rendering/SVGRenderTreeAsText.h:
10408 (WebCore::operator<<):
10410 2006-11-16 Anders Carlsson <acarlsson@apple.com>
10414 * editing/markup.cpp:
10415 (WebCore::createMarkup):
10416 Add null-checks for the frame, it might not exist for all documents.
10418 2006-11-16 Don Gibson <dgibson77@gmail.com>
10420 Reviewed and landed by ap.
10422 http://bugs.webkit.org/show_bug.cgi?id=11509:
10423 Windows build bustage.
10425 Also reorganizes WebCore.vcproj to add files whose absence wasn't
10426 causing compile errors, but which should have been there, and to
10427 make the include directory ordering (and contents) sane.
10428 Also reorganizes TemporaryLinkStubs.cpp to put headers and
10429 function groups in alphabetical order, and ensure that all functions
10430 in the file call notImplemented().
10432 * WebCore.vcproj/WebCore/WebCore.vcproj:
10433 * bridge/win/ChromeClientWin.h:
10434 (WebCore::ChromeClientWin::ref):
10435 (WebCore::ChromeClientWin::deref):
10436 * bridge/win/ContextMenuClientWin.h: Added.
10437 (WebCore::ContextMenuClientWin::~ContextMenuClientWin):
10438 (WebCore::ContextMenuClientWin::ref):
10439 (WebCore::ContextMenuClientWin::deref):
10440 * bridge/win/EditorClientWin.h:
10441 * bridge/win/FrameWin.cpp:
10442 (WebCore::FrameWin::~FrameWin):
10443 (WebCore::FrameWin::keyPress):
10444 * bridge/win/FrameWin.h:
10445 * bridge/win/PageWin.cpp: Removed.
10446 * editing/EditCommand.h:
10447 * loader/FormState.h:
10448 * loader/FrameLoader.h:
10449 * page/EventHandler.cpp:
10450 * platform/MimeTypeRegistry.cpp:
10451 (WebCore::initialiseSupportedImageMIMETypes):
10452 * platform/graphics/win/ImageWin.cpp:
10453 * platform/network/ResourceError.cpp:
10454 * platform/network/ResourceHandleInternal.h:
10455 * platform/network/win/ResourceHandleWin.cpp:
10456 (WebCore::ResourceHandle::onHandleCreated):
10457 (WebCore::ResourceHandle::onRequestRedirected):
10458 (WebCore::ResourceHandle::start):
10459 (WebCore::ResourceHandle::cancel):
10460 * platform/win/ScreenWin.cpp:
10461 (WebCore::monitorInfo):
10462 (WebCore::screenRect):
10463 (WebCore::screenAvailableRect):
10464 (WebCore::screenDepth):
10465 * platform/win/SoundWin.cpp: Added.
10466 (WebCore::systemBeep):
10467 * platform/win/TemporaryLinkStubs.cpp:
10468 (WebCore::CacheObjectExpiresTime):
10469 (WebCore::CheckCacheObjectStatus):
10470 (WebCore::CheckIfReloading):
10471 (WebCore::defaultLanguage):
10472 (WebCore::fileButtonChooseFileLabel):
10473 (WebCore::fileButtonNoFileSelectedLabel):
10474 (WebCore::findNextSentenceFromIndex):
10475 (WebCore::findNextWordFromIndex):
10476 (WebCore::findSentenceBoundary):
10477 (WebCore::findWordBoundary):
10478 (WebCore::focusRingColor):
10479 (WebCore::historyContains):
10480 (WebCore::inputElementAltText):
10481 (WebCore::IsResponseURLEqualToURL):
10482 (WebCore::cellCursor):
10483 (WebCore::contextMenuCursor):
10484 (WebCore::moveCursor):
10485 (WebCore::verticalTextCursor):
10486 (WebCore::refreshPlugins):
10487 (WebCore::resetButtonDefaultLabel):
10488 (WebCore::ResponseIsMultipart):
10489 (WebCore::ResponseMIMEType):
10490 (WebCore::ResponseURL):
10491 (WebCore::screenDepthPerComponent):
10492 (WebCore::screenIsMonochrome):
10493 (WebCore::searchableIndexIntroduction):
10494 (WebCore::ServeSynchronousRequest):
10495 (WebCore::setFocusRingColorChangeFunction):
10496 (WebCore::submitButtonDefaultLabel):
10497 (WebCore::CachedResource::setPlatformResponse):
10498 (WebCore::CachedResource::setAllData):
10499 (WebCore::ChromeClientWin::setWindowRect):
10500 (WebCore::ChromeClientWin::windowRect):
10501 (WebCore::ChromeClientWin::pageRect):
10502 (WebCore::ChromeClientWin::scaleFactor):
10503 (WebCore::ChromeClientWin::focus):
10504 (WebCore::ChromeClientWin::unfocus):
10505 (WebCore::ChromeClientWin::createWindow):
10506 (WebCore::ChromeClientWin::createModalDialog):
10507 (WebCore::ChromeClientWin::show):
10508 (WebCore::ChromeClientWin::canRunModal):
10509 (WebCore::ChromeClientWin::runModal):
10510 (WebCore::ChromeClientWin::setToolbarsVisible):
10511 (WebCore::ChromeClientWin::toolbarsVisible):
10512 (WebCore::ChromeClientWin::setStatusbarVisible):
10513 (WebCore::ChromeClientWin::statusbarVisible):
10514 (WebCore::ChromeClientWin::setScrollbarsVisible):
10515 (WebCore::ChromeClientWin::scrollbarsVisible):
10516 (WebCore::ChromeClientWin::setMenubarVisible):
10517 (WebCore::ChromeClientWin::menubarVisible):
10518 (WebCore::ChromeClientWin::setResizable):
10519 (WebCore::ContextMenu::appendItem):
10520 (WebCore::ContextMenuClientWin::addCustomContextMenuItems):
10521 (WebCore::DocumentLoader::setFrame):
10522 (WebCore::DocumentLoader::frameLoader):
10523 (WebCore::DocumentLoader::URL):
10524 (WebCore::DocumentLoader::isStopping):
10525 (WebCore::DocumentLoader::stopLoading):
10526 (WebCore::DocumentLoader::setLoading):
10527 (WebCore::DocumentLoader::updateLoading):
10528 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
10529 (WebCore::DocumentLoader::isLoadingInAPISense):
10530 (WebCore::DocumentLoader::stopRecordingResponses):
10531 (WebCore::EditorClientWin::shouldDeleteRange):
10532 (WebCore::EditorClientWin::shouldShowDeleteInterface):
10533 (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
10534 (WebCore::EditorClientWin::isGrammarCheckingEnabled):
10535 (WebCore::EditorClientWin::spellCheckerDocumentTag):
10536 (WebCore::EventHandler::focusDocumentView):
10537 (WebCore::EventHandler::handleDrag):
10538 (WebCore::EventHandler::handleMouseUp):
10539 (WebCore::EventHandler::lastEventIsMouseUp):
10540 (WebCore::EventHandler::passMousePressEventToSubframe):
10541 (WebCore::EventHandler::passMouseMoveEventToSubframe):
10542 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
10543 (WebCore::EventHandler::passWheelEventToSubframe):
10544 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
10545 (WebCore::EventHandler::passMousePressEventToScrollbar):
10546 (WebCore::EventHandler::shouldDragAutoNode):
10547 (WebCore::EventHandler::tabsToAllControls):
10548 (WebCore::EventHandler::tabsToLinks):
10549 (WebCore::Frame::setNeedsReapplyStyles):
10550 (WebCore::FrameLoader::didFirstLayout):
10551 (WebCore::FrameLoader::overrideMediaType):
10552 (WebCore::FrameLoader::createJavaAppletWidget):
10553 (WebCore::FrameLoader::redirectDataToPlugin):
10554 (WebCore::FrameLoader::getHistoryLength):
10555 (WebCore::FrameLoader::setTitle):
10556 (WebCore::FrameLoader::referrer):
10557 (WebCore::FrameLoader::saveDocumentState):
10558 (WebCore::FrameLoader::restoreDocumentState):
10559 (WebCore::FrameLoader::goBackOrForward):
10560 (WebCore::FrameLoader::historyURL):
10561 (WebCore::FrameLoader::urlSelected):
10562 (WebCore::FrameLoader::createFrame):
10563 (WebCore::FrameLoader::submitForm):
10564 (WebCore::FrameLoader::partClearedInBegin):
10565 (WebCore::FrameLoader::originalRequestURL):
10566 (WebCore::FrameLoader::canGoBackOrForward):
10567 (WebCore::FrameLoader::objectContentType):
10568 (WebCore::FrameLoader::createPlugin):
10569 (WebCore::FrameLoader::detachFromParent):
10570 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
10571 (WebCore::FrameView::updateBorder):
10572 (WebCore::FrameWin::bindingRootObject):
10573 (WebCore::FrameWin::canPaste):
10574 (WebCore::FrameWin::issuePasteAndMatchStyleCommand):
10575 (WebCore::FrameWin::markedTextRange):
10576 (WebCore::FrameWin::passSubframeEventToSubframe):
10577 (WebCore::FrameWin::lastEventIsMouseUp):
10578 (WebCore::FrameWin::addMessageToConsole):
10579 (WebCore::FrameWin::shouldChangeSelection):
10580 (WebCore::FrameWin::respondToChangedSelection):
10581 (WebCore::FrameWin::clearUndoRedoOperations):
10582 (WebCore::FrameWin::markMisspellingsInAdjacentWords):
10583 (WebCore::FrameWin::respondToChangedContents):
10584 (WebCore::GraphicsContext::addRoundedRectClip):
10585 (WebCore::GraphicsContext::setShadow):
10586 (WebCore::GraphicsContext::clearShadow):
10587 (WebCore::GraphicsContext::beginTransparencyLayer):
10588 (WebCore::GraphicsContext::endTransparencyLayer):
10589 (WebCore::GraphicsContext::clearRect):
10590 (WebCore::GraphicsContext::strokeRect):
10591 (WebCore::GraphicsContext::setLineWidth):
10592 (WebCore::GraphicsContext::setLineCap):
10593 (WebCore::GraphicsContext::setLineJoin):
10594 (WebCore::GraphicsContext::setMiterLimit):
10595 (WebCore::GraphicsContext::setAlpha):
10596 (WebCore::GraphicsContext::setCompositeOperation):
10597 (WebCore::GraphicsContext::clip):
10598 (WebCore::GraphicsContext::rotate):
10599 (WebCore::GraphicsContext::scale):
10600 (WebCore::Icon::Icon):
10601 (WebCore::Icon::~Icon):
10602 (WebCore::Icon::newIconForFile):
10603 (WebCore::Icon::paint):
10604 (WebCore::IconDatabase::isIconExpiredForIconURL):
10605 (WebCore::IconDatabase::hasEntryForIconURL):
10606 (WebCore::IconDatabase::sharedIconDatabase):
10607 (WebCore::IconDatabase::setIconURLForPageURL):
10608 (WebCore::IconDatabase::setIconDataForIconURL):
10609 (WebCore::Image::drawTiled):
10610 (WebCore::Image::getHBITMAP):
10611 (WebCore::Path::Path):
10612 (WebCore::Path::~Path):
10613 (WebCore::Path::contains):
10614 (WebCore::Path::translate):
10615 (WebCore::Path::boundingRect):
10616 (WebCore::Path::operator=):
10617 (WebCore::Path::clear):
10618 (WebCore::Path::moveTo):
10619 (WebCore::Path::addLineTo):
10620 (WebCore::Path::addQuadCurveTo):
10621 (WebCore::Path::addBezierCurveTo):
10622 (WebCore::Path::addArcTo):
10623 (WebCore::Path::closeSubpath):
10624 (WebCore::Path::addArc):
10625 (WebCore::Path::addRect):
10626 (WebCore::Path::addEllipse):
10627 (WebCore::Path::transform):
10628 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
10629 (WebCore::PlatformScrollbar::PlatformScrollbar):
10630 (WebCore::PlatformScrollbar::~PlatformScrollbar):
10631 (WebCore::PlatformScrollbar::width):
10632 (WebCore::PlatformScrollbar::height):
10633 (WebCore::PlatformScrollbar::setEnabled):
10634 (WebCore::PlatformScrollbar::paint):
10635 (WebCore::PlatformScrollbar::updateThumbPosition):
10636 (WebCore::PlatformScrollbar::updateThumbProportion):
10637 (WebCore::PlatformScrollbar::setRect):
10638 (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
10639 (WebCore::PlugInInfoStore::pluginCount):
10640 (WebCore::PlugInInfoStore::supportsMIMEType):
10641 (WebCore::PolicyCheck::PolicyCheck):
10642 (WebCore::PolicyCheck::clear):
10643 (WebCore::PolicyCheck::clearRequest):
10644 (WebCore::PolicyCheck::call):
10645 (WebCore::RenderThemeWin::systemFont):
10646 (WebCore::RenderThemeWin::paintMenuList):
10647 (WebCore::RenderThemeWin::adjustMenuListStyle):
10648 (WebCore::ResourceLoader::cancel):
10649 (WebCore::ScrollView::addChild):
10650 (WebCore::ScrollView::removeChild):
10651 (WebCore::ScrollView::scrollPointRecursively):
10652 (WebCore::ScrollView::inWindow):
10653 (WebCore::ScrollView::paint):
10654 (WebCore::ScrollView::wheelEvent):
10655 (WebCore::ScrollView::themeChanged):
10656 (WebCore::ScrollView::convertChildToSelf):
10657 (WebCore::ScrollView::convertSelfToChild):
10658 (WebCore::ScrollView::geometryChanged):
10659 (WebCore::ScrollView::scrollbarUnderMouse):
10660 (WebCore::ScrollView::setFrameGeometry):
10661 (WebCore::ScrollView::windowResizerRect):
10662 (WebCore::ScrollView::resizerOverlapsContent):
10663 (WebCore::TextField::selectAll):
10664 (WebCore::TextField::addSearchResult):
10665 (WebCore::TextField::selectionStart):
10666 (WebCore::TextField::hasSelectedText):
10667 (WebCore::TextField::selectedText):
10668 (WebCore::TextField::setAutoSaveName):
10669 (WebCore::TextField::checksDescendantsForFocus):
10670 (WebCore::TextField::setSelection):
10671 (WebCore::TextField::setMaxResults):
10672 (WebCore::TextField::edited):
10673 (WebCore::TextField::focusPolicy):
10674 (WebCore::TextField::TextField):
10675 (WebCore::TextField::~TextField):
10676 (WebCore::TextField::setFont):
10677 (WebCore::TextField::setAlignment):
10678 (WebCore::TextField::setWritingDirection):
10679 (WebCore::TextField::maxLength):
10680 (WebCore::TextField::setMaxLength):
10681 (WebCore::TextField::text):
10682 (WebCore::TextField::setText):
10683 (WebCore::TextField::cursorPosition):
10684 (WebCore::TextField::setCursorPosition):
10685 (WebCore::TextField::setEdited):
10686 (WebCore::TextField::setReadOnly):
10687 (WebCore::TextField::setPlaceholderString):
10688 (WebCore::TextField::setColors):
10689 (WebCore::TextField::sizeForCharacterWidth):
10690 (WebCore::TextField::baselinePosition):
10691 (WebCore::TextField::setLiveSearch):
10692 (WebCore::Widget::enableFlushDrawing):
10693 (WebCore::Widget::isEnabled):
10694 (WebCore::Widget::focusPolicy):
10695 (WebCore::Widget::disableFlushDrawing):
10696 (WebCore::Widget::removeFromParent):
10697 (WebCore::Widget::lockDrawingFocus):
10698 (WebCore::Widget::unlockDrawingFocus):
10699 (WebCore::Widget::capturingMouse):
10700 (WebCore::Widget::setCapturingMouse):
10701 (WebCore::Widget::capturingTarget):
10702 (WebCore::Widget::capturingChild):
10703 (WebCore::Widget::setCapturingChild):
10704 (WebCore::Widget::convertChildToSelf):
10705 (WebCore::Widget::convertSelfToChild):
10706 (WebCore::Widget::setParent):
10707 (WebCore::Widget::parent):
10708 (WebCore::Widget::setEnabled):
10709 (WebCore::Widget::paint):
10710 (WebCore::Widget::setIsSelected):
10711 (WebCore::Widget::invalidate):
10712 (WebCore::Widget::invalidateRect):
10713 * platform/win/WidgetWin.cpp:
10714 (WebCore::Widget::clearFocus):
10716 2006-11-16 Timothy Hatcher <timothy@apple.com>
10720 <rdar://problem/4796730> table deletion elements are serialized out if they are visible when innerHTML or a Web Archive is made
10722 * editing/markup.cpp:
10723 (WebCore::createMarkup): disable the delete button so it's elements are not serialized into the markup
10725 2006-11-16 George Staikos <staikos@kde.org>
10727 Rubberstamped by Maciej.
10729 Making the code valgrind clean.
10731 * rendering/RenderTableCell.cpp: initialize variable m_widthChanged
10732 (WebCore::RenderTableCell::RenderTableCell):
10733 * rendering/RenderTableCell.h: remove unused variable nWrap
10735 2006-11-16 David Harrison <harrison@apple.com>
10737 Reviewed by Darin and Tim.
10739 <rdar://problem/4799949> REGRESSION: Crash in FrameMac::eventMayStartDrag() by clicking on a page
10741 * page/mac/EventHandlerMac.mm:
10742 (WebCore::EventHandler::eventMayStartDrag):
10743 Add nil check of hitTest's result.innerNode().
10745 2006-11-16 Timothy Hatcher <timothy@apple.com>
10749 <rdar://problem/4836897> Deletion rectangle disappears when multiple list items are selected
10751 Consider the container of the selection range for deletion before asking enclosingNodeOfType().
10753 * editing/DeleteButtonController.cpp:
10754 (WebCore::enclosingDeletableElement):
10756 2006-11-16 Rob Buis <buis@kde.org>
10760 Removal of unused m_styleElement.
10763 (WebCore::Node::Node):
10764 (WebCore::Node::dump):
10766 (WebCore::Node::isLink): should be styleElement, a bug?
10768 2006-11-15 Adam Roben <aroben@apple.com>
10772 Rename the items in the ContextMenuAction enum so that they don't
10773 conflict with WebKit names.
10775 * WebCore.xcodeproj/project.pbxproj:
10776 * platform/ContextMenu.cpp:
10777 (WebCore::ContextMenu::populate):
10778 * platform/ContextMenu.h:
10780 (WebCore::ContextMenuItem::ContextMenuItem):
10782 2006-11-15 Adam Roben <aroben@apple.com>
10784 Reviewed by Anders.
10786 Change m_contextMenu to an OwnPtr.
10788 * WebCore.xcodeproj/project.pbxproj:
10789 * page/ContextMenuController.cpp:
10790 (WebCore::ContextMenuController::handleContextMenuEvent):
10791 * page/ContextMenuController.h:
10793 2006-11-15 Adam Roben <aroben@apple.com>
10795 Reviewed by Anders.
10797 Add new ContextMenuController and ContextMenuClient classes, and move
10798 context menu responsibilities from Chrome and ChromeClient to them.
10801 * WebCore.xcodeproj/project.pbxproj: Add new files to project, and
10802 alphabetize some others.
10803 * page/Chrome.cpp: Remove context menu-related code.
10804 * page/Chrome.h: Ditto.
10805 * page/ChromeClient.h:
10806 * page/ContextMenuClient.h: Added.
10807 * page/ContextMenuController.cpp: Added.
10808 (WebCore::ContextMenuController::ContextMenuController):
10809 (WebCore::ContextMenuController::~ContextMenuController):
10810 (WebCore::ContextMenuController::handleContextMenuEvent):
10811 (WebCore::ContextMenuController::contextMenuActionSelected):
10812 * page/ContextMenuController.h: Added.
10813 (WebCore::ContextMenuController::client):
10814 * page/Page.cpp: Every Page now has a ContextMenuController.
10815 (WebCore::Page::Page):
10816 * page/Page.h: Made m_dragCaretController and m_chrome objects instead
10817 of pointers to objects.
10818 (WebCore::Page::contextMenuController):
10819 * platform/ContextMenu.cpp:
10820 (WebCore::ContextMenu::populate): Removed the call to Chrome to ask the
10821 delegate to add its menu items, and moved the code from the static
10822 addDefaultItems function into this method.
10823 * platform/ContextMenu.h:
10824 (WebCore::ContextMenu::show): Added an empty method body since this
10825 method is now called from ContextMenuController (although no one calls
10826 into ContextMenuController yet, so it's OK for this to be empty).
10827 (WebCore::ContextMenu::hide): Ditto.
10829 2006-11-15 Anders Carlsson <acarlsson@apple.com>
10833 Add null checks on the node filter, they can be null if no filter was passed to the respective
10836 * bindings/js/JSNodeIteratorCustom.cpp:
10837 (WebCore::JSNodeIterator::mark):
10838 * bindings/js/JSTreeWalkerCustom.cpp:
10839 (WebCore::JSTreeWalker::mark):
10841 2006-11-15 Oliver Hunt <oliver@apple.com>
10843 Reviewed by Anders.
10845 Allow <embed> and <object> tags to include non-plugin
10846 content when plugins are disabled
10848 Fixes <rdar://problems/4839488>
10850 * html/HTMLEmbedElement.cpp:
10851 (WebCore::HTMLEmbedElement::rendererIsNeeded):
10852 * html/HTMLObjectElement.cpp:
10853 (WebCore::HTMLObjectElement::rendererIsNeeded):
10854 * loader/FrameLoader.cpp:
10855 (WebCore::FrameLoader::requestObject):
10857 2006-11-15 Adele Peterson <adele@apple.com>
10859 Build fix. Another type problem that I don't see locally.
10861 * rendering/RenderSlider.cpp: (WebCore::RenderSlider::setPositionFromValue):
10863 2006-11-15 Adele Peterson <adele@apple.com>
10867 Adding MathExtras header.
10869 * rendering/RenderSlider.cpp:
10871 2006-11-15 Timothy Hatcher <timothy@apple.com>
10873 Reviewed by Harrison.
10875 <rdar://problem/4832894> Crash deleting an element inside a list while deletion rectangle is visible (compareBoundaryPoints)
10877 * Disable and hide the deletion UI for each editing command. This prevents editing commands from being affected
10878 by the deletion UI elements we insert. The deletion UI is then shown after the editing commands are completely done.
10880 * Multiple calls to DeleteButtonController's disable() needed to be paired with the same number of enable() calls before
10881 the deletion UI is enabled again. This allows for nested editing commands to be called without thrashing the deletion UI.
10883 * Make sure the the renderers are currently reflecting the latest style changes, so call updateLayoutIgnorePendingStylesheets().
10885 * editing/DeleteButtonController.cpp:
10886 (WebCore::DeleteButtonController::DeleteButtonController):
10887 (WebCore::isDeletableElement):
10888 (WebCore::DeleteButtonController::respondToChangedSelection): check the enabled state
10889 (WebCore::DeleteButtonController::respondToChangedContents): check the enabled state
10890 (WebCore::DeleteButtonController::show): call isDeletableElement() to make sure the element is allowed
10891 (WebCore::DeleteButtonController::deleteTarget): check the enabled state
10892 * editing/DeleteButtonController.h:
10893 (WebCore::DeleteButtonController::disable):
10894 (WebCore::DeleteButtonController::enable):
10895 (WebCore::DeleteButtonController::enabled):
10896 * editing/EditCommand.cpp:
10897 (WebCore::EditCommand::apply): hide and disable the deletion UI, then show at the end
10898 (WebCore::EditCommand::unapply): ditto
10899 (WebCore::EditCommand::reapply): ditto
10901 2006-11-15 Adele Peterson <adele@apple.com>
10905 New implementation of slider control.
10907 * WebCore.xcodeproj/project.pbxproj: Removed DeprecatedSlider and Slider classes, added RenderSlider class.
10908 * rendering/DeprecatedSlider.cpp: Removed.
10909 * rendering/DeprecatedSlider.h: Removed.
10910 * platform/Slider.h: Removed.
10911 * platform/mac/SliderMac.mm: Removed.
10912 * platform/win/TemporaryLinkStubs.cpp:
10914 * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoElement for thumb, PseudoSliderThumb.
10915 * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Added code for "-webkit-slider-thumb".
10916 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::checkOneSelector):
10917 * rendering/RenderStyle.cpp:
10919 (WebCore::pseudoBit):
10920 * rendering/RenderStyle.h: (WebCore::RenderStyle::):
10922 * css/html4.css: Added style for input[type="range"] and input[type="range"]::-webkit-slider-thumb
10924 * html/HTMLInputElement.cpp:
10925 (WebCore::HTMLInputElement::createRenderer): Create RenderSlider for input type="range" elements.
10926 (WebCore::HTMLInputElement::defaultEventHandler): Allow the renderer to forward events, and set thumb position when click occurs on the track.
10928 * page/EventHandler.cpp: Added concept of a node that will capture all mouse events. This will be used by the slider thumb, so it can
10929 continue to capture mouse move events during the drag, even though those events aren't directly over the slider.
10930 (WebCore::EventHandler::EventHandler):
10931 (WebCore::EventHandler::setCapturingMouseEventsNode):
10932 (WebCore::EventHandler::dispatchMouseEvent): If the capturingMouseEventsNode is set, then dispatch all mouse events to that node.
10933 * page/EventHandler.h:
10935 * rendering/RenderSlider.cpp: Added.
10936 (WebCore::HTMLSliderThumbElement::isShadowNode):
10937 (WebCore::HTMLSliderThumbElement::shadowParentNode):
10938 (WebCore::HTMLSliderThumbElement::inDragMode): Keeps track of whether or not the thumb is in drag mode.
10939 (WebCore::HTMLSliderThumbElement::HTMLSliderThumbElement):
10940 (WebCore::HTMLSliderThumbElement::defaultEventHandler): Handles positioning of slider thumb during drag.
10941 (WebCore::RenderSlider::RenderSlider):
10942 (WebCore::RenderSlider::~RenderSlider):
10943 (WebCore::RenderSlider::baselinePosition):
10944 (WebCore::RenderSlider::calcMinMaxWidth):
10945 (WebCore::RenderSlider::setStyle):
10946 (WebCore::RenderSlider::createThumbStyle):
10947 (WebCore::RenderSlider::layout): Positions the thumb to be centered on the track.
10948 (WebCore::RenderSlider::updateFromElement):
10949 (WebCore::RenderSlider::mouseEventIsInThumb):
10950 (WebCore::RenderSlider::setValueForPosition):
10951 (WebCore::RenderSlider::setPositionFromValue):
10952 (WebCore::RenderSlider::positionForOffset):
10953 (WebCore::RenderSlider::valueChanged):
10954 (WebCore::RenderSlider::currentPosition):
10955 (WebCore::RenderSlider::setCurrentPosition):
10956 (WebCore::RenderSlider::trackSize):
10957 (WebCore::RenderSlider::forwardEvent):
10958 (WebCore::RenderSlider::inDragMode):
10959 * rendering/RenderSlider.h: Added.
10960 (WebCore::RenderSlider::renderName):
10962 * rendering/RenderTheme.cpp: Added drawing code for slider track and thumb.
10963 (WebCore::RenderTheme::adjustStyle):
10964 (WebCore::RenderTheme::paint):
10965 (WebCore::RenderTheme::paintBorderOnly):
10966 (WebCore::RenderTheme::paintDecorations):
10967 (WebCore::RenderTheme::adjustSliderTrackStyle):
10968 (WebCore::RenderTheme::adjustSliderThumbStyle):
10969 * rendering/RenderTheme.h:
10970 (WebCore::RenderTheme::paintSliderTrack):
10971 (WebCore::RenderTheme::paintSliderThumb):
10972 * rendering/RenderThemeMac.h:
10973 * rendering/RenderThemeMac.mm:
10974 (WebCore::RenderThemeMac::RenderThemeMac):
10975 (WebCore::TrackGradientInterpolate):
10976 (WebCore::RenderThemeMac::paintSliderTrack):
10977 (WebCore::RenderThemeMac::paintSliderThumb):
10978 (WebCore::RenderThemeMac::adjustSliderTrackStyle):
10979 (WebCore::RenderThemeMac::adjustSliderThumbStyle):
10981 2006-11-15 Beth Dakin <bdakin@apple.com>
10985 Oops! Forgot to add this!
10987 * platform/mac/ContextMenuMac.mm: Added.
10988 (-[MenuTarget forwardContextMenuAction:initWithContextMenu:WebCore::]):
10989 (-[MenuTarget WebCore::]):
10990 (-[MenuTarget setMenu:WebCore::]):
10991 (-[MenuTarget forwardContextMenuAction:]):
10993 (ContextMenu::appendItem):
10994 (ContextMenu::itemCount):
10995 (ContextMenu::insertItem):
10996 (ContextMenu::setPlatformMenuDescription):
10998 2006-11-15 Beth Dakin <bdakin@apple.com>
10999 & Adam Roben <aroben@apple.com>
11001 Reviewed by Adam and Beth.
11003 Initial cut at pushing Context Menus into WebCore. Nobody actually
11004 calls this code just yet.
11007 * WebCore.xcodeproj/project.pbxproj:
11009 (WebCore::Chrome::addCustomContextMenuItems): Use the chrome to
11010 call into addContextMenuItems on the UIDelegate.
11012 * page/ChromeClient.h:
11013 * platform/ContextMenu.cpp: Added.
11014 (WebCore::addDefaultItems):
11015 (WebCore::ContextMenu::populate):
11016 * platform/ContextMenu.h: Added.
11018 (WebCore::ContextMenuItem::ContextMenuItem):
11019 (WebCore::ContextMenu::ContextMenu):
11020 (WebCore::ContextMenu::hitTestResult):
11021 (WebCore::ContextMenu::platformMenuDescription):
11023 2006-11-15 Adele Peterson <adele@apple.com>
11027 - Fix for <rdar://problem/4780306> REGRESSION: clicking in textarea does not set selection at PunBB.org
11029 * css/html4.css: Removed "-webkit-user-select: ignore" for labels.
11031 2006-11-15 David Harrison <harrison@apple.com>
11035 <rdar://problem/4836034> REGRESSION: Hang while spell-checking (advanceToNextMisspelling)
11038 * manual-tests/keep_spelling_markers.html:
11039 Updated to include checking for this bug.
11041 * bridge/mac/FrameMac.mm:
11042 (WebCore::FrameMac::advanceToNextMisspelling):
11043 it.advance() even when current string is a single space.
11045 2006-11-15 Brady Eidson <beidson@apple.com>
11047 Reviewed by lamadio
11049 Backing out macro expansion
11051 * WebCore.xcodeproj/project.pbxproj:
11052 * html/HTMLElement.cpp:
11053 (WebCore::HTMLElement::isRecognizedTagName):
11054 * ksvg2/scripts/make_names.pl:
11056 2006-11-15 David Harrison <harrison@apple.com>
11060 <rdar://problem/4770453> VO not honoring secure edit fields in web pages
11062 The remaining problem was the password fields would return their contents
11063 even though they did not advertise that they could. Apparently, VoiceOver
11064 does not read the ads.
11066 * bridge/mac/WebCoreAXObject.mm:
11067 (isPasswordFieldElement):
11068 (-[WebCoreAXObject isPasswordField]):
11069 (-[WebCoreAXObject textMarkerForVisiblePosition:]):
11070 (-[WebCoreAXObject accessibilityAttributeValue:]):
11071 (-[WebCoreAXObject doAXStringForRange:]):
11073 2006-11-13 Lou Amadio <lamadio@apple.com>
11075 Reviewed by Darin Adler, Maciej Stachowiak
11077 Cleanup: Expanded macros in generated files
11079 * html/HTMLElement.cpp:
11080 (WebCore::HTMLElement::isRecognizedTagName):
11081 * ksvg2/scripts/make_names.pl:
11083 2006-11-16 Anders Carlsson <acarlsson@apple.com>
11087 Use Vector instead of DeprecatedPtrList.
11089 * editing/ApplyStyleCommand.cpp:
11090 (WebCore::ApplyStyleCommand::applyBlockStyle):
11091 * editing/BreakBlockquoteCommand.cpp:
11092 * rendering/RenderFlow.cpp:
11093 (WebCore::RenderFlow::paintOutline):
11095 2006-11-15 Adam Roben <aroben@apple.com>
11099 * page/EventHandler.h:
11101 2006-11-14 Beth Dakin <bdakin@apple.com>
11105 Move things off the bridge, and move sendContextMenuEvent() from
11106 EventHandlerMac to EventHandler.
11109 * WebCore.xcodeproj/project.pbxproj:
11110 * bridge/EditorClient.h:
11111 * bridge/mac/WebCoreFrameBridge.h:
11112 * editing/Editor.cpp:
11113 (WebCore::Editor::selectWordBeforeMenuEvent):
11114 (WebCore::Editor::clientIsEditable):
11115 * editing/Editor.h:
11116 * page/EventHandler.cpp:
11117 (WebCore::EventHandler::sendContextMenuEvent):
11118 * page/EventHandler.h:
11119 * page/mac/EventHandlerMac.mm:
11121 2006-11-14 Timothy Hatcher <timothy@apple.com>
11123 Reviewed by Harrison.
11125 <rdar://problem/4766635> Safari should never follow links in editable areas (add a WebKitEditableLinkNeverLive option)
11127 Adds an EditableLinkNeverLive setting that will make links in editable areas always dead.
11129 * bridge/mac/WebCoreSettings.mm:
11130 (-[WebCoreSettings setEditableLinkBehavior:]):
11131 * html/HTMLAnchorElement.cpp:
11132 (WebCore::HTMLAnchorElement::defaultEventHandler):
11133 (WebCore::HTMLAnchorElement::setActive):
11134 (WebCore::HTMLAnchorElement::isLiveLink):
11135 * page/FrameView.cpp:
11136 (WebCore::selectCursor):
11138 (WebCore::Settings::):
11140 2006-11-14 Mark Rowe <bdash@webkit.org>
11142 Reviewed by Oliver.
11146 * bindings/scripts/CodeGenerator.pm:
11148 2006-11-14 Anders Carlsson <acarlsson@apple.com>
11150 Turns out I wasn't forcing DWARF on the world at all,
11151 it's now the default!
11153 * WebCore.xcodeproj/project.pbxproj:
11155 2006-11-14 Anders Carlsson <acarlsson@apple.com>
11157 I must stop trying to force DWARF on the world.
11159 * WebCore.xcodeproj/project.pbxproj:
11161 2006-11-13 Justin Garcia <justin.garcia@apple.com>
11163 Reviewed by harrison
11165 <rdar://problem/4806874>
11166 Missing background image after paste
11168 * editing/markup.cpp:
11169 (WebCore::createMarkup): If the body is fully selected, add a
11170 div with its CSS properties to the markup. Migrated a use of
11171 enclosingBlockFlowElement to enclosingBlock to fix an infinite
11172 loop when pasting <div><input></div>.
11174 2006-11-14 Anders Carlsson <acarlsson@apple.com>
11178 Add Undo/Redo to execCommand.
11180 * editing/Editor.cpp:
11181 (WebCore::execRedo):
11182 (WebCore::execUndo):
11183 (WebCore::canRedo):
11184 (WebCore::canUndo):
11185 (WebCore::CommandEntry::):
11187 2006-11-14 Darin Adler <darin@apple.com>
11189 Reviewed by Anders.
11191 - created EventHandler class, moved event handling code from both
11192 Frame and FrameView in there
11194 - added ScrollTypes.h header so you can include the scroller-related
11195 enums without all of Scrollbar.h
11197 * page/EventHandler.cpp: Added.
11198 * page/EventHandler.h: Added.
11199 * page/mac/EventHandlerMac.mm: Added.
11201 * platform/ScrollBarMode.h: Removed.
11202 * platform/ScrollTypes.h: Added.
11205 * WebCore.xcodeproj/project.pbxproj:
11206 * bridge/mac/FrameMac.h:
11207 * bridge/mac/FrameMac.mm:
11208 (WebCore::FrameMac::FrameMac):
11209 (WebCore::FrameMac::~FrameMac):
11210 (WebCore::FrameMac::bridgeForWidget):
11211 (WebCore::FrameMac::imageFromRect):
11212 * bridge/mac/FrameViewMac.mm:
11213 * bridge/mac/WebCoreFrameBridge.mm:
11214 (-[WebCoreFrameBridge scrollOverflowInDirection:granularity:]):
11215 (-[WebCoreFrameBridge nextKeyView]):
11216 (-[WebCoreFrameBridge previousKeyView]):
11217 (-[WebCoreFrameBridge nextKeyViewInsideWebFrameViews]):
11218 (-[WebCoreFrameBridge previousKeyViewInsideWebFrameViews]):
11219 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
11220 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
11221 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
11222 (-[WebCoreFrameBridge concludeDragForDraggingInfo:]):
11223 (-[WebCoreFrameBridge dragSourceMovedTo:]):
11224 (-[WebCoreFrameBridge dragSourceEndedAt:operation:]):
11225 * dom/Document.cpp:
11226 (WebCore::Document::hoveredNodeDetached):
11228 * dom/EventTargetNode.cpp:
11229 (WebCore::EventTargetNode::defaultEventHandler):
11230 * editing/SelectionController.cpp:
11231 (WebCore::SelectionController::SelectionController):
11232 * editing/SelectionController.h:
11233 (WebCore::SelectionController::setCaretBlinkingSuspended):
11234 (WebCore::SelectionController::isCaretBlinkingSuspended):
11235 * html/HTMLAnchorElement.cpp:
11236 (WebCore::HTMLAnchorElement::isKeyboardFocusable):
11237 * html/HTMLFrameElementBase.cpp:
11238 (WebCore::HTMLFrameElementBase::setFocus):
11239 * html/HTMLFrameElementBase.h:
11240 * html/HTMLGenericFormElement.cpp:
11241 (WebCore::HTMLGenericFormElement::isKeyboardFocusable):
11242 * html/HTMLInputElement.cpp:
11243 (WebCore::HTMLInputElement::defaultEventHandler):
11244 * html/HTMLSelectElement.cpp:
11245 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
11246 * loader/FrameLoader.cpp:
11247 (WebCore::FrameLoader::clear):
11248 (WebCore::FrameLoader::open):
11251 (WebCore::Frame::caretBlinkTimerFired):
11252 (WebCore::Frame::frameForWidget):
11253 (WebCore::Frame::eventHandler):
11254 (WebCore::Frame::setProhibitsScrolling):
11255 (WebCore::FramePrivate::FramePrivate):
11257 * page/FramePrivate.h:
11258 * page/FrameView.cpp:
11259 (WebCore::FrameViewPrivate::FrameViewPrivate):
11260 (WebCore::FrameViewPrivate::reset):
11261 (WebCore::FrameView::FrameView):
11262 (WebCore::FrameView::~FrameView):
11263 (WebCore::FrameView::clear):
11264 (WebCore::FrameView::adjustViewSize):
11265 (WebCore::FrameView::addRepaintInfo):
11266 (WebCore::FrameView::layout):
11267 (WebCore::FrameView::scrollPointRecursively):
11268 (WebCore::FrameView::setContentsPos):
11269 (WebCore::FrameView::scheduleRelayoutOfSubtree):
11270 (WebCore::FrameView::scheduleEvent):
11271 (WebCore::FrameView::updateOverflowStatus):
11272 (WebCore::FrameView::dispatchScheduledEvents):
11273 (WebCore::FrameView::windowClipRectForLayer):
11274 (WebCore::FrameView::handleMouseMoveEvent):
11275 (WebCore::FrameView::handleMouseReleaseEvent):
11276 * page/FrameView.h:
11277 * page/PageState.cpp:
11278 (WebCore::PageState::PageState):
11279 (WebCore::PageState::restore):
11280 * page/PageState.h:
11281 * platform/ScrollBar.h:
11282 * platform/ScrollView.h:
11283 * platform/mac/ClipboardMac.mm:
11284 * platform/mac/PopupMenuMac.mm:
11285 (WebCore::PopupMenu::show):
11286 * platform/mac/SliderMac.mm:
11287 (-[WebCoreSlider becomeFirstResponder]):
11288 (-[WebCoreSlider nextKeyView]):
11289 (-[WebCoreSlider previousKeyView]):
11290 (-[WebCoreSlider canBecomeKeyView]):
11291 (Slider::focusPolicy):
11292 * platform/mac/WebCoreTextField.mm:
11293 (-[WebCoreTextFieldController textView:shouldHandleEvent:]):
11294 (-[WebCoreTextFieldController setHasFocus:]):
11295 (-[WebCoreSearchField nextKeyView]):
11296 (-[WebCoreSearchField previousKeyView]):
11297 (-[WebCoreSearchFieldCell _addStringToRecentSearches:]):
11298 * platform/mac/WidgetMac.mm:
11299 (WebCore::Widget::hasFocus):
11300 (WebCore::Widget::clearFocus):
11301 * rendering/RenderFrameSet.cpp:
11302 (WebCore::RenderFrameSet::setResizing):
11303 * rendering/RenderLayer.cpp:
11304 (WebCore::RenderLayer::autoscroll):
11305 (WebCore::RenderLayer::resize):
11306 (WebCore::RenderLayer::updateOverflowStatus):
11307 * rendering/RenderLayer.h:
11308 * rendering/RenderListBox.cpp:
11309 (WebCore::RenderListBox::autoscroll):
11310 * rendering/RenderObject.cpp:
11311 (WebCore::RenderObject::draggableNode):
11312 (WebCore::RenderObject::destroy):
11313 * rendering/RenderObject.h:
11314 (WebCore::RenderObject::RepaintInfo::RepaintInfo):
11315 * rendering/RenderPartObject.cpp:
11316 (WebCore::RenderPartObject::viewCleared):
11318 2006-11-14 Anders Carlsson <acarlsson@apple.com>
11322 Let the editor client handle undo/redo.
11325 * WebCore.xcodeproj/project.pbxproj:
11326 * bridge/EditorClient.h:
11327 * bridge/mac/FrameMac.h:
11328 * bridge/mac/FrameMac.mm:
11329 (WebCore::FrameMac::canUndo):
11330 (WebCore::FrameMac::canRedo):
11331 * bridge/mac/WebCoreEditCommand.h: Removed.
11332 * bridge/mac/WebCoreEditCommand.mm: Removed.
11333 * bridge/mac/WebCoreFrameBridge.h:
11334 * bridge/mac/WebCoreFrameBridge.mm:
11335 * editing/Editor.cpp:
11336 (WebCore::Editor::appliedEditing):
11337 (WebCore::Editor::unappliedEditing):
11338 (WebCore::Editor::reappliedEditing):
11339 * editing/JSEditor.cpp:
11340 * loader/FrameLoader.cpp:
11341 (WebCore::FrameLoader::closeURL):
11344 * rendering/RenderTextControl.cpp:
11345 (WebCore::RenderTextControl::updateFromElement):
11347 2006-11-14 Nikolas Zimmermann <zimmermann@kde.org>
11349 Reviewed and landed by Brady
11351 Fix Qt/Linux build.
11354 * loader/qt/FrameLoaderQt.cpp:
11355 (WebCore::FrameLoader::submitForm):
11356 * platform/network/qt/ResourceHandleManager.cpp:
11357 (WebCore::ResourceHandleManager::add):
11358 * platform/qt/FrameQtClient.cpp:
11359 (WebCore::FrameQtClientDefault::submitForm):
11360 * platform/qt/FrameQtClient.h:
11362 2006-11-14 Brady Eidson <beidson@apple.com>
11366 Cleanup of my patch last night and merging with aroben-style changes from this morning
11367 (More ref-counted FormData stuff)
11369 * html/HTMLFormElement.cpp:
11370 (WebCore::HTMLFormElement::submit):
11371 * loader/FrameLoader.cpp:
11372 (WebCore::FrameLoader::submitForm):
11373 * platform/network/ResourceHandle.cpp:
11374 (WebCore::ResourceHandle::postData):
11375 * platform/network/ResourceHandle.h:
11376 * platform/network/cf/FormDataStreamCFNet.cpp:
11377 (WebCore::setHTTPBody):
11378 * platform/network/mac/FormDataStreamMac.h:
11379 * platform/network/mac/FormDataStreamMac.mm:
11380 (WebCore::getStreamFormDatas):
11381 (WebCore::formCreate):
11382 (WebCore::formFinalize):
11383 (WebCore::setHTTPBody):
11384 (WebCore::httpBodyFromStream):
11385 * platform/network/mac/ResourceRequestMac.mm:
11386 (WebCore::getResourceRequest):
11388 2006-11-14 Rob Buis <buis@kde.org>
11392 http://bugs.webkit.org/show_bug.cgi?id=11575
11393 Bug 11575: REGRESSION: WebCore crash in CSSParser/HTMLTokenizer
11395 Test: fast/css/css-imports.html
11397 * css/CSSImportRule.cpp:
11398 (WebCore::CSSImportRule::insertedIntoParent):
11399 Fix the crash by testing for null pointer.
11401 2006-11-14 Alexey Proskuryakov <ap@webkit.org>
11405 Test for http://bugs.webkit.org/show_bug.cgi?id=3387
11406 Redundant keydown, keypress, keyup events sent for arrow keys
11408 * manual-tests/arrow-key-events.html: Added.
11410 2006-11-14 Darin Adler <darin@apple.com>
11414 Fix up usages of FormData within CFNet loader code.
11416 * platform/network/ResourceRequest.h:
11417 (WebCore::ResourceRequest::httpBody):
11418 * platform/network/cf/FormDataStreamCFNet.cpp:
11419 (WebCore::getStreamFormDatas): Store RefPtr<FormData>s in the
11420 streamFormDatas HashMap.
11421 (WebCore::formCreate):
11422 (WebCore::formFinalize): Removed delete because the remove() will deref
11423 and delete if necessary.
11424 (WebCore::setHTTPBody): Changed parameter to PassRefPtr.
11425 (WebCore::httpBodyFromStream):
11426 * platform/network/cf/FormDataStreamCFNet.h: Fix declarations.
11427 * platform/network/cf/ResourceRequestCFNet.cpp:
11428 (WebCore::getResourceRequest):
11430 2006-11-14 Greg Jackson <gjspanner@gmail.com>
11434 Preserves any pre-existing value for WEBCORE_NAVIGATOR_PLATFORM
11435 rather than overriding it based on platform detection.
11437 * bindings/js/kjs_navigator.cpp:
11439 2006-11-13 Brady Eidson <beidson@apple.com>
11443 Made FormData Shared, and pass it around as such.
11445 * WebCore.xcodeproj/project.pbxproj: Reordered some items
11446 * html/HTMLFormElement.cpp:
11447 (WebCore::HTMLFormElement::formData):
11448 (WebCore::HTMLFormElement::submit):
11449 * html/HTMLFormElement.h:
11450 * loader/FrameLoader.cpp:
11451 (WebCore::FormSubmission::FormSubmission):
11452 (WebCore::FrameLoader::submitForm):
11453 * loader/FrameLoader.h:
11454 * loader/mac/FrameLoaderMac.mm:
11455 (WebCore::FrameLoader::post):
11456 (WebCore::FrameLoader::loadResourceSynchronously):
11457 * loader/mac/SubresourceLoaderMac.mm:
11458 (WebCore::SubresourceLoader::create):
11459 * platform/network/FormData.h: Made FormData shared
11460 * platform/network/ResourceHandle.h:
11461 * platform/network/ResourceHandle.cpp:
11462 (WebCore::ResourceHandle::postData):
11463 * platform/network/ResourceRequest.h:
11464 (WebCore::ResourceRequest::httpBody):
11465 (WebCore::ResourceRequest::setHTTPBody):
11466 * platform/network/mac/ResourceRequestMac.mm:
11467 (WebCore::getResourceRequest):
11468 (WebCore::nsURLRequest):
11470 * platform/network/mac/FormDataStreamMac.h:
11471 * platform/network/mac/FormDataStreamMac.mm:
11472 (WebCore::getStreamFormDatas): Hash Streams to RefPtr<FormData>s
11473 (WebCore::formCreate):
11474 (WebCore::formFinalize):
11475 (WebCore::setHTTPBody):
11476 (WebCore::httpBodyFromStream):
11478 * xml/xmlhttprequest.cpp:
11479 (WebCore::XMLHttpRequest::send):
11481 2006-11-13 Justin Garcia <justin.garcia@apple.com>
11483 Reviewed by harrison
11485 <rdar://problem/4828264>
11486 In Mail, a crash occurs at WebCore::Selection::toRange() when selecting this web content (http://www.cnet.com/)
11488 The start of the selection is in an editable area, and the end is in an
11489 input field inside that editable area. The code that should pull the end
11490 of such a selection outside the input field didn't escape shadow nodes,
11491 it would leave a dangling end, causing the crash in toRange.
11493 * editing/Selection.cpp:
11494 (WebCore::Selection::adjustForEditableContent): Added an ASSERT and a fixup
11495 to prevent crashes like this in future Release builds.
11496 * editing/htmlediting.cpp:
11497 (WebCore::firstEditablePositionAfterPositionInRoot): Let this function
11498 escape shadow nodes. We might eventually push this code down into
11499 next/previous{VisuallyDistinct}Canditate.
11500 (WebCore::lastEditablePositionBeforePositionInRoot): Ditto.
11502 2006-11-13 Justin Garcia <justin.garcia@apple.com>
11506 * editing/DeleteSelectionCommand.cpp:
11507 (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor):
11508 * editing/Editor.cpp:
11509 (WebCore::Editor::appliedEditing):
11510 * editing/Editor.h:
11511 (WebCore::Editor::setRemovedAnchor): Pass a PassRefPtr.
11513 2006-11-10 Justin Garcia <justin.garcia@apple.com>
11517 <rdar://problem/4820026>
11518 copy/paste of news.google.com yields text from hidden select element options
11520 We were adding descendants of unrendered select elements.
11522 * editing/markup.cpp:
11523 (WebCore::createMarkup): Don't traverse into nodes without renderers, unless
11524 they are grandfathered in by a rendered select element.
11526 2006-11-12 Simon Hausmann <hausmann@kde.org>
11528 Reviewed by Sam Weinig.
11530 Fix Qt build. Missing AbstractShared implementation.
11531 http://bugs.webkit.org/show_bug.cgi?id=11581
11533 * loader/qt/FrameLoaderClientQt.cpp:
11534 (WebCore::FrameLoaderClientQt::ref):
11535 (WebCore::FrameLoaderClientQt::deref):
11536 * loader/qt/FrameLoaderClientQt.h:
11537 * platform/qt/ChromeClientQt.cpp:
11538 (WebCore::ChromeClientQt::ref):
11539 (WebCore::ChromeClientQt::deref):
11540 * platform/qt/ChromeClientQt.h:
11541 * platform/qt/EditorClientQt.cpp:
11542 (WebCore::EditorClientQt::ref):
11543 (WebCore::EditorClientQt::deref):
11544 * platform/qt/EditorClientQt.h:
11546 2006-11-13 Mark Rowe <bdash@webkit.org>
11550 Fix some Linux/Gdk build issues noted by Alp Toker.
11552 * Projects/gdk/webcore-gdk.bkl:
11553 * WebCoreSources.bkl:
11554 * platform/graphics/gdk/ImageGdk.cpp:
11555 (WebCore::Image::loadPlatformResource):
11557 2006-11-12 Brady Eidson <beidson@apple.com>
11561 Logging channel plumbing for future work
11563 * platform/Logging.cpp:
11565 * platform/Logging.h:
11566 * platform/mac/LoggingMac.mm:
11567 (WebCore::InitializeLoggingChannelsIfNecessary):
11569 2006-11-12 Mark Rowe <bdash@webkit.org>
11573 Linux/Gdk compilation fixes, and bakefile cleanups. Based on patches by
11576 * Projects/gdk/webcore-gdk.bkl:
11577 * WebCoreSources.bkl:
11578 * page/PageState.cpp:
11579 * platform/gdk/ChromeClientGdk.h:
11580 (WebCore::ChromeClientGdk::ref):
11581 (WebCore::ChromeClientGdk::deref):
11582 * platform/gdk/FrameGdk.cpp:
11583 (WebCore::FrameGdkClientDefault::openURL):
11584 (WebCore::FrameGdkClientDefault::didReceiveData):
11585 (WebCore::FrameGdkClientDefault::receivedAllData):
11586 (WebCore::FrameGdk::FrameGdk):
11587 (WebCore::FrameGdk::~FrameGdk):
11588 * platform/gdk/FrameGdk.h:
11589 * platform/gdk/KeyEventGdk.cpp:
11590 (WebCore::keyIdentifierForGdkKeyCode):
11591 * platform/gdk/ScreenClientGdk.h: Removed.
11592 * platform/gdk/TemporaryLinkStubs.cpp:
11593 (FrameGdk::canPaste):
11594 (FrameGdk::originalRequestURL):
11595 (TextField::TextField):
11596 * platform/network/gdk/ResourceHandleManager.cpp:
11597 (WebCore::ResourceHandleManager::downloadTimerCallback):
11598 (WebCore::ResourceHandleManager::add):
11599 (WebCore::ResourceHandleManager::cancel):
11600 * webcore-base.bkl:
11602 2006-11-11 Geoffrey Garen <ggaren@apple.com>
11604 Reviewed by Maciej Stachowiak.
11606 - Fixed loader crash by clarifying ownership of WebKit client objects.
11607 WebCore objects own their WebKit clients, and ref and deref through
11608 virtual methods, leaving WebKit free to use whatever client / reference-counting
11609 implementation it likes.
11612 * WebCore.xcodeproj/project.pbxproj:
11613 * bridge/EditorClient.h: Fixed up function prototypes for style.
11614 * loader/FrameLoader.cpp: Removed detachFrameLoader, since its real purpose
11615 was to implement an alternative ownership model.
11616 (WebCore::FrameLoader::~FrameLoader): Removed empty destructor.
11617 (WebCore::FrameLoader::setClient): This function now takes ownership
11618 (WebCore::FrameLoader::client):
11619 * loader/FrameLoader.h:
11620 * loader/FrameLoaderClient.h:
11621 * page/ChromeClient.h:
11622 * platform/AbstractShared.h: Added. This is the virtual function-based refcounting
11623 complement to Shared.
11624 (WebCore::AbstractShared::~AbstractShared):
11626 2006-11-11 George Staikos <staikos@kde.org>
11628 Reviewed by Maciej.
11630 Fix uninitialized variable.
11632 * rendering/RenderStyle.h:
11634 2006-11-11 Nikolas Zimmermann <zimmermann@kde.org>
11636 Reviewed/landed by Adam.
11638 Complete cleanup of the CMakeLists.txt.
11639 Now all files to be built are sorted in alphabetic order.
11641 General style cleanup, remove all tabs etc.
11645 2006-11-11 Geoffrey Garen <ggaren@apple.com>
11647 Reviewed by Maciej Stachowiak.
11649 Added missing initializer to ResourceRequest -- fixes some loader crashes
11650 due to assuming a request always has a non-null httpMethod.
11652 * platform/network/ResourceRequest.h:
11653 (WebCore::ResourceRequest::ResourceRequest):
11655 2006-11-11 Brady Eidson <beidson@apple.com>
11661 * loader/FrameLoaderClient.h:
11663 2006-11-11 Darin Adler <darin@apple.com>
11665 - attempt to fix Qt build
11667 * platform/qt/CursorQt.cpp:
11668 (WebCore::verticalTextCursor): Added. Just returns pointer cursor.
11669 (WebCore::cellCursor): Ditto.
11670 (WebCore::contextMenuCursor): Ditto.
11672 2006-11-11 Rob Buis <buis@kde.org>
11676 http://bugs.webkit.org/show_bug.cgi?id=10893
11677 InsertRule can not handle @import statements
11679 Allow @import as part of a css rule.
11681 * css/CSSGrammar.y:
11682 * css/CSSImportRule.cpp:
11683 (WebCore::CSSImportRule::insertedIntoParent):
11684 * css/CSSStyleSheet.cpp:
11685 (WebCore::CSSStyleSheet::CSSStyleSheet):
11686 (WebCore::CSSStyleSheet::checkLoaded):
11687 * css/CSSStyleSheet.h:
11688 (WebCore::CSSStyleSheet::loadCompleted):
11690 2006-11-11 Alexey Proskuryakov <ap@webkit.org>
11692 Attempt to fix Qt build.
11694 * CMakeLists.txt: PathQt.cpp is in graphics/qt now.
11696 2006-11-11 Lars Naesbye Christensen <lars@naesbye.dk>
11698 Tortured by Sam Weinig, Tim H., Maciej, Mitz and Alexey :-)
11700 [CSS 3] support for vertical-text, cell and context-menu cursors
11701 http://bugs.webkit.org/show_bug.cgi?id=11494
11703 * Resources/cellCursor.png: Added.
11704 * Resources/contextMenuCursor.png: Added.
11705 * Resources/verticalTextCursor.png: Added.
11706 * WebCore.xcodeproj/project.pbxproj:
11707 * css/CSSComputedStyleDeclaration.cpp:
11708 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
11709 * css/CSSValueKeywords.in:
11710 * manual-tests/cursor.html:
11711 * page/FrameView.cpp:
11712 (WebCore::selectCursor):
11713 * platform/Cursor.h:
11714 * platform/mac/CursorMac.mm:
11715 (WebCore::verticalTextCursor):
11716 (WebCore::cellCursor):
11717 (WebCore::contextMenuCursor):
11718 * rendering/RenderStyle.h:
11721 2006-11-11 Nikolas Zimmermann <zimmermann@kde.org>
11723 Reviewed by aroben and ap, landed by ap.
11725 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11468
11727 Group graphics related files in platform/graphics.
11728 Move certain files from certain subdirectories
11729 into platform/graphics/{win,mac,cg,gdk,qt}
11732 * WebCore.xcodeproj/project.pbxproj:
11733 * platform/AffineTransform.cpp: Removed.
11734 * platform/AffineTransform.h: Removed.
11735 * platform/Color.cpp: Removed.
11736 * platform/Color.h: Removed.
11737 * platform/FloatPoint.cpp: Removed.
11738 * platform/FloatPoint.h: Removed.
11739 * platform/FloatRect.cpp: Removed.
11740 * platform/FloatRect.h: Removed.
11741 * platform/FloatSize.cpp: Removed.
11742 * platform/FloatSize.h: Removed.
11743 * platform/Icon.h: Removed.
11744 * platform/Image.cpp: Removed.
11745 * platform/Image.h: Removed.
11746 * platform/ImageSource.h: Removed.
11747 * platform/IntPoint.h: Removed.
11748 * platform/IntRect.cpp: Removed.
11749 * platform/IntRect.h: Removed.
11750 * platform/IntSize.h: Removed.
11751 * platform/IntSizeHash.h: Removed.
11752 * platform/Path.cpp: Removed.
11753 * platform/Path.h: Removed.
11754 * platform/Pen.cpp: Removed.
11755 * platform/Pen.h: Removed.
11756 * platform/cairo/AffineTransformCairo.cpp: Removed.
11757 * platform/cairo/GraphicsContextCairo.cpp: Removed.
11758 * platform/cairo/ImageCairo.cpp: Removed.
11759 * platform/cairo/ImageSourceCairo.cpp: Removed.
11760 * platform/cairo/cairo/AUTHORS: Removed.
11761 * platform/cairo/cairo/COPYING: Removed.
11762 * platform/cairo/cairo/COPYING-LGPL-2.1: Removed.
11763 * platform/cairo/cairo/COPYING-MPL-1.1: Removed.
11764 * platform/cairo/cairo/INSTALL: Removed.
11765 * platform/cairo/cairo/NEWS: Removed.
11766 * platform/cairo/cairo/README: Removed.
11767 * platform/cairo/cairo/TODO: Removed.
11768 * platform/cairo/cairo/src/Makefile.in: Removed.
11769 * platform/cairo/cairo/src/cairo-arc-private.h: Removed.
11770 * platform/cairo/cairo/src/cairo-arc.c: Removed.
11771 * platform/cairo/cairo/src/cairo-array.c: Removed.
11772 * platform/cairo/cairo/src/cairo-atsui-font.c: Removed.
11773 * platform/cairo/cairo/src/cairo-atsui.h: Removed.
11774 * platform/cairo/cairo/src/cairo-beos-surface.cpp: Removed.
11775 * platform/cairo/cairo/src/cairo-beos.h: Removed.
11776 * platform/cairo/cairo/src/cairo-cache-private.h: Removed.
11777 * platform/cairo/cairo/src/cairo-cache.c: Removed.
11778 * platform/cairo/cairo/src/cairo-clip-private.h: Removed.
11779 * platform/cairo/cairo/src/cairo-clip.c: Removed.
11780 * platform/cairo/cairo/src/cairo-color.c: Removed.
11781 * platform/cairo/cairo/src/cairo-debug.c: Removed.
11782 * platform/cairo/cairo/src/cairo-debug.h: Removed.
11783 * platform/cairo/cairo/src/cairo-directfb-surface.c: Removed.
11784 * platform/cairo/cairo/src/cairo-directfb.h: Removed.
11785 * platform/cairo/cairo/src/cairo-features.h: Removed.
11786 * platform/cairo/cairo/src/cairo-features.h.in: Removed.
11787 * platform/cairo/cairo/src/cairo-fixed.c: Removed.
11788 * platform/cairo/cairo/src/cairo-font-options.c: Removed.
11789 * platform/cairo/cairo/src/cairo-font-subset-private.h: Removed.
11790 * platform/cairo/cairo/src/cairo-font-subset.c: Removed.
11791 * platform/cairo/cairo/src/cairo-font.c: Removed.
11792 * platform/cairo/cairo/src/cairo-ft-font.c: Removed.
11793 * platform/cairo/cairo/src/cairo-ft-private.h: Removed.
11794 * platform/cairo/cairo/src/cairo-ft.h: Removed.
11795 * platform/cairo/cairo/src/cairo-glitz-surface.c: Removed.
11796 * platform/cairo/cairo/src/cairo-glitz.h: Removed.
11797 * platform/cairo/cairo/src/cairo-gstate-private.h: Removed.
11798 * platform/cairo/cairo/src/cairo-gstate.c: Removed.
11799 * platform/cairo/cairo/src/cairo-hash-private.h: Removed.
11800 * platform/cairo/cairo/src/cairo-hash.c: Removed.
11801 * platform/cairo/cairo/src/cairo-hull.c: Removed.
11802 * platform/cairo/cairo/src/cairo-image-surface.c: Removed.
11803 * platform/cairo/cairo/src/cairo-matrix.c: Removed.
11804 * platform/cairo/cairo/src/cairo-meta-surface-private.h: Removed.
11805 * platform/cairo/cairo/src/cairo-meta-surface.c: Removed.
11806 * platform/cairo/cairo/src/cairo-output-stream.c: Removed.
11807 * platform/cairo/cairo/src/cairo-paginated-surface-private.h: Removed.
11808 * platform/cairo/cairo/src/cairo-paginated-surface.c: Removed.
11809 * platform/cairo/cairo/src/cairo-path-bounds.c: Removed.
11810 * platform/cairo/cairo/src/cairo-path-data-private.h: Removed.
11811 * platform/cairo/cairo/src/cairo-path-data.c: Removed.
11812 * platform/cairo/cairo/src/cairo-path-fill.c: Removed.
11813 * platform/cairo/cairo/src/cairo-path-fixed-private.h: Removed.
11814 * platform/cairo/cairo/src/cairo-path-stroke.c: Removed.
11815 * platform/cairo/cairo/src/cairo-path.c: Removed.
11816 * platform/cairo/cairo/src/cairo-pattern.c: Removed.
11817 * platform/cairo/cairo/src/cairo-pdf-surface.c: Removed.
11818 * platform/cairo/cairo/src/cairo-pdf.h: Removed.
11819 * platform/cairo/cairo/src/cairo-pen.c: Removed.
11820 * platform/cairo/cairo/src/cairo-platform.h: Removed.
11821 * platform/cairo/cairo/src/cairo-png.c: Removed.
11822 * platform/cairo/cairo/src/cairo-polygon.c: Removed.
11823 * platform/cairo/cairo/src/cairo-private.h: Removed.
11824 * platform/cairo/cairo/src/cairo-ps-surface.c: Removed.
11825 * platform/cairo/cairo/src/cairo-ps.h: Removed.
11826 * platform/cairo/cairo/src/cairo-quartz-private.h: Removed.
11827 * platform/cairo/cairo/src/cairo-quartz-surface.c: Removed.
11828 * platform/cairo/cairo/src/cairo-quartz.h: Removed.
11829 * platform/cairo/cairo/src/cairo-quartz2-surface.c: Removed.
11830 * platform/cairo/cairo/src/cairo-quartz2.h: Removed.
11831 * platform/cairo/cairo/src/cairo-region.c: Removed.
11832 * platform/cairo/cairo/src/cairo-scaled-font.c: Removed.
11833 * platform/cairo/cairo/src/cairo-slope.c: Removed.
11834 * platform/cairo/cairo/src/cairo-spline.c: Removed.
11835 * platform/cairo/cairo/src/cairo-stroke-style.c: Removed.
11836 * platform/cairo/cairo/src/cairo-surface-fallback-private.h: Removed.
11837 * platform/cairo/cairo/src/cairo-surface-fallback.c: Removed.
11838 * platform/cairo/cairo/src/cairo-surface.c: Removed.
11839 * platform/cairo/cairo/src/cairo-svg-surface.c: Removed.
11840 * platform/cairo/cairo/src/cairo-svg.h: Removed.
11841 * platform/cairo/cairo/src/cairo-traps.c: Removed.
11842 * platform/cairo/cairo/src/cairo-unicode.c: Removed.
11843 * platform/cairo/cairo/src/cairo-wideint.c: Removed.
11844 * platform/cairo/cairo/src/cairo-wideint.h: Removed.
11845 * platform/cairo/cairo/src/cairo-win32-font.c: Removed.
11846 * platform/cairo/cairo/src/cairo-win32-private.h: Removed.
11847 * platform/cairo/cairo/src/cairo-win32-surface.c: Removed.
11848 * platform/cairo/cairo/src/cairo-win32.h: Removed.
11849 * platform/cairo/cairo/src/cairo-xcb-surface.c: Removed.
11850 * platform/cairo/cairo/src/cairo-xcb-xrender.h: Removed.
11851 * platform/cairo/cairo/src/cairo-xcb.h: Removed.
11852 * platform/cairo/cairo/src/cairo-xlib-private.h: Removed.
11853 * platform/cairo/cairo/src/cairo-xlib-screen.c: Removed.
11854 * platform/cairo/cairo/src/cairo-xlib-surface.c: Removed.
11855 * platform/cairo/cairo/src/cairo-xlib-test.h: Removed.
11856 * platform/cairo/cairo/src/cairo-xlib-xrender.h: Removed.
11857 * platform/cairo/cairo/src/cairo-xlib.h: Removed.
11858 * platform/cairo/cairo/src/cairo.c: Removed.
11859 * platform/cairo/cairo/src/cairo.h: Removed.
11860 * platform/cairo/cairo/src/cairoint.h: Removed.
11861 * platform/cairo/cairo/src/test-fallback-surface.c: Removed.
11862 * platform/cairo/cairo/src/test-fallback-surface.h: Removed.
11863 * platform/cairo/cairo/src/test-meta-surface.c: Removed.
11864 * platform/cairo/cairo/src/test-meta-surface.h: Removed.
11865 * platform/cairo/cairo/src/test-paginated-surface.c: Removed.
11866 * platform/cairo/cairo/src/test-paginated-surface.h: Removed.
11867 * platform/cairo/pixman/AUTHORS: Removed.
11868 * platform/cairo/pixman/COPYING: Removed.
11869 * platform/cairo/pixman/README: Removed.
11870 * platform/cairo/pixman/src/Makefile.in: Removed.
11871 * platform/cairo/pixman/src/fbcompose.c: Removed.
11872 * platform/cairo/pixman/src/fbedge.c: Removed.
11873 * platform/cairo/pixman/src/fbedgeimp.h: Removed.
11874 * platform/cairo/pixman/src/fbmmx.c: Removed.
11875 * platform/cairo/pixman/src/fbmmx.h: Removed.
11876 * platform/cairo/pixman/src/fbpict.c: Removed.
11877 * platform/cairo/pixman/src/fbpict.h: Removed.
11878 * platform/cairo/pixman/src/fbtrap.c: Removed.
11879 * platform/cairo/pixman/src/icblt.c: Removed.
11880 * platform/cairo/pixman/src/icbltone.c: Removed.
11881 * platform/cairo/pixman/src/iccolor.c: Removed.
11882 * platform/cairo/pixman/src/icformat.c: Removed.
11883 * platform/cairo/pixman/src/icimage.c: Removed.
11884 * platform/cairo/pixman/src/icimage.h: Removed.
11885 * platform/cairo/pixman/src/icint.h: Removed.
11886 * platform/cairo/pixman/src/icpixels.c: Removed.
11887 * platform/cairo/pixman/src/icrect.c: Removed.
11888 * platform/cairo/pixman/src/icrop.h: Removed.
11889 * platform/cairo/pixman/src/icstipple.c: Removed.
11890 * platform/cairo/pixman/src/ictransform.c: Removed.
11891 * platform/cairo/pixman/src/ictrap.c: Removed.
11892 * platform/cairo/pixman/src/ictri.c: Removed.
11893 * platform/cairo/pixman/src/icutil.c: Removed.
11894 * platform/cairo/pixman/src/pixman-remap.h: Removed.
11895 * platform/cairo/pixman/src/pixman-xserver-compat.h: Removed.
11896 * platform/cairo/pixman/src/pixman.h: Removed.
11897 * platform/cairo/pixman/src/pixregion.c: Removed.
11898 * platform/cairo/pixman/src/pixregionint.h: Removed.
11899 * platform/cairo/pixman/src/renderedge.c: Removed.
11900 * platform/cairo/pixman/src/renderedge.h: Removed.
11901 * platform/cairo/pixman/src/slim_internal.h: Removed.
11902 * platform/cairo/rgb24-hacks.txt: Removed.
11903 * platform/cairo/scale-removal.txt: Removed.
11904 * platform/cg/AffineTransformCG.cpp: Removed.
11905 * platform/cg/FloatPointCG.cpp: Removed.
11906 * platform/cg/FloatRectCG.cpp: Removed.
11907 * platform/cg/FloatSizeCG.cpp: Removed.
11908 * platform/cg/GraphicsContextCG.cpp: Removed.
11909 * platform/cg/GraphicsContextPlatformPrivate.h: Removed.
11910 * platform/cg/ImageCG.cpp: Removed.
11911 * platform/cg/ImageSourceCG.cpp: Removed.
11912 * platform/cg/IntPointCG.cpp: Removed.
11913 * platform/cg/IntRectCG.cpp: Removed.
11914 * platform/cg/IntSizeCG.cpp: Removed.
11915 * platform/cg/PDFDocumentImage.cpp: Removed.
11916 * platform/cg/PDFDocumentImage.h: Removed.
11917 * platform/cg/PathCG.cpp: Removed.
11918 * platform/gdk/ImageGdk.cpp: Removed.
11919 * platform/mac/ColorMac.mm: Removed.
11920 * platform/mac/FloatPointMac.mm: Removed.
11921 * platform/mac/FloatRectMac.mm: Removed.
11922 * platform/mac/FloatSizeMac.mm: Removed.
11923 * platform/mac/GraphicsContextMac.mm:
11924 * platform/mac/IconMac.mm: Removed.
11925 * platform/mac/ImageMac.mm: Removed.
11926 * platform/mac/IntPointMac.mm: Removed.
11927 * platform/mac/IntRectMac.mm: Removed.
11928 * platform/mac/IntSizeMac.mm: Removed.
11929 * platform/qt/AffineTransformQt.cpp: Removed.
11930 * platform/qt/ColorQt.cpp: Removed.
11931 * platform/qt/FloatPointQt.cpp: Removed.
11932 * platform/qt/FloatRectQt.cpp: Removed.
11933 * platform/qt/IconQt.cpp: Removed.
11934 * platform/qt/ImageQt.cpp: Removed.
11935 * platform/qt/ImageSourceQt.cpp: Removed.
11936 * platform/qt/IntPointQt.cpp: Removed.
11937 * platform/qt/IntRectQt.cpp: Removed.
11938 * platform/qt/IntSizeQt.cpp: Removed.
11939 * platform/qt/PathQt.cpp: Removed.
11940 * platform/win/ImageWin.cpp: Removed.
11941 * platform/win/IntPointWin.cpp: Removed.
11942 * platform/win/IntRectWin.cpp: Removed.
11943 * platform/win/IntSizeWin.cpp: Removed.
11945 2006-11-11 Graham Dennis <graham.dennis@gmail.com>
11949 A layout test was added when this bug was fixed, so none needed now.
11952 REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
11953 http://bugs.webkit.org/show_bug.cgi?id=11570
11955 * rendering/RenderStyle.h:
11956 (WebCore::RenderStyle::isSpace): Removed.
11957 * rendering/RenderText.cpp:
11958 (WebCore::isSpace): Added.
11959 (WebCore::RenderText::calcMinMaxWidth): Use inline function instead of polluting RenderStyle.
11961 2006-11-11 Graham Dennis <graham.dennis@gmail.com>
11965 REGRESSION (r16122): min/max widths incorrectly calculated for contentEditable text
11966 http://bugs.webkit.org/show_bug.cgi?id=11570
11968 * rendering/RenderStyle.h:
11969 (WebCore::RenderStyle::isSpace): Added.
11970 * rendering/RenderText.cpp:
11971 (WebCore::RenderText::calcMinMaxWidth): For the purposes of calculating the line widths,
11972 treat non-breaking spaces the same as normal spaces if -webkit-nbsp-mode is 'space'
11974 2006-11-10 Zalan Bujtas <zalan.bujtas@nokia.com>
11976 Reviewed by Maciej.
11978 Added basic types for symbian platform.
11979 http://bugs.webkit.org/show_bug.cgi?id=11540
11982 * platform/AtomicString.h:
11983 (WebCore::AtomicString::AtomicString):
11984 (WebCore::AtomicString::operator TPtrC):
11985 * platform/DeprecatedString.cpp:
11986 (WebCore::initializeHandleNodeBlock):
11987 * platform/DeprecatedString.h: char _internalBuffer has to be in front of
11988 the bitfields as Codewarrior (3.2.5 build 461) compiler cannot cope with
11989 bitfields and breaks byte aligment
11990 * platform/FloatPoint.h:
11991 * platform/FloatRect.h:
11992 * platform/IntPoint.h:
11993 * platform/IntRect.h:
11994 * platform/IntSize.h:
11995 * platform/PlatformString.h:
11996 (WebCore::String::operator TPtrC):
11997 (WebCore::String::des):
11998 * platform/StringImpl.h:
11999 * platform/symbian/DeprecatedStringSymbian.cpp: Added.
12000 (WebCore::DeprecatedString::setBufferFromDes):
12001 (WebCore::DeprecatedString::fromDes):
12002 (WebCore::DeprecatedString::des):
12003 (WebCore::DeprecatedString::des8):
12004 * platform/symbian/FloatPointSymbian.cpp: Added.
12005 (WebCore::FloatPoint::FloatPoint):
12006 (WebCore::FloatPoint::operator TPoint):
12007 * platform/symbian/FloatRectSymbian.cpp: Added.
12008 (WebCore::FloatRect::FloatRect):
12009 (WebCore::FloatRect::operator TRect):
12010 (WebCore::FloatRect::rect):
12011 * platform/symbian/IntPointSymbian.cpp: Added.
12012 (WebCore::IntPoint::IntPoint):
12013 (WebCore::IntPoint::operator TPoint):
12014 * platform/symbian/IntRectSymbian.cpp: Added.
12015 (WebCore::IntRect::IntRect):
12016 (WebCore::IntRect::operator TRect):
12017 (WebCore::IntRect::Rect):
12018 * platform/symbian/IntSizeSymbian.cpp: Added.
12019 (WebCore::IntSize::IntSize):
12020 (WebCore::IntSize::operator TSize):
12021 * platform/symbian/StringImplSymbian.cpp: Added.
12022 (WebCore::StringImpl::StringImpl):
12023 (WebCore::StringImpl::des):
12024 * platform/symbian/StringSymbian.cpp: Added.
12025 (WebCore::String::String):
12027 2006-11-10 Zack Rusin <zack@kde.org>
12029 Reviewed by Anders.
12031 Adjust to the changes Brady made in the Qt code.
12033 * loader/qt/FrameLoaderClientQt.cpp:
12034 (WebCore::FrameLoaderClientQt::dispatchDidReceiveIcon):
12035 * loader/qt/FrameLoaderClientQt.h:
12037 2006-11-10 Justin Garcia <justin.garcia@apple.com>
12039 Reviewed by harrison
12041 <rdar://problem/4069359>
12042 Deleting hyperlink text, then typing uses link typing style but loses the link itself
12044 The removed anchor element needs to stick around temporarily, in the same way
12045 that the typing style hangs off the caret until the user moves it. Also text
12046 insertion around anchors didn't match TextEdit.
12048 * editing/DeleteSelectionCommand.cpp:
12049 (WebCore::DeleteSelectionCommand::saveFullySelectedAnchor): Added.
12050 (WebCore::DeleteSelectionCommand::doApply): Call saveFullySelectedAnchor.
12051 * editing/DeleteSelectionCommand.h:
12052 * editing/EditCommand.cpp:
12053 (WebCore::EditCommand::apply): Clear the removed anchor after any top level
12054 editing command that doesn't preserve the typing style (matches TextEdit).
12055 * editing/Editor.cpp:
12056 (WebCore::Editor::appliedEditing): Added a fixme: we shouldn't call
12057 setSelection with a message telling it to clear the typing style
12058 (and the saved anchor) here. Save/restore the saved anchor because of this.
12059 * editing/Editor.h:
12060 (WebCore::Editor::removedAnchor): Getter.
12061 (WebCore::Editor::setRemovedAnchor): Setter.
12062 * editing/InsertTextCommand.cpp:
12063 (WebCore::InsertTextCommand::prepareForTextInsertion): Insert the saved anchor
12065 * editing/SelectionController.cpp:
12066 (WebCore::SelectionController::setSelection): Clear the removed anchor whenever
12067 we make a selection change that clears the typing style.
12068 (WebCore::SelectionController::nodeWillBeRemoved): Removed an old outdated FIXME.
12069 * editing/htmlediting.cpp:
12070 (WebCore::positionAvoidingSpecialElementBoundary): Cleaned up and
12071 made some changes to match TextEdit's behavior. First, insert content
12072 inside the anchor when the caret is after it, unless the caret is at the
12073 end of the document, or if the caret is before it and at the start of a
12076 === Safari-521.30 ===
12078 2006-11-10 Timothy Hatcher <timothy@apple.com>
12082 Check for BHIDDEN in isVisible() also.
12084 * rendering/RenderStyle.h:
12085 (WebCore::BorderValue::isVisible):
12087 2006-11-10 Timothy Hatcher <timothy@apple.com>
12091 <rdar://problem/4821423> element deletion UI appears for Mail blockquote and others with less than three visible borders
12093 Added a new function to BorderValue called isVisible(). This checks nonZero() and !isTransparent().
12095 * editing/DeleteButtonController.cpp:
12096 (WebCore::isDeletableElement):
12097 * rendering/RenderStyle.h:
12098 (WebCore::BorderValue::isVisible):
12100 2006-11-10 Adam Roben <aroben@apple.com>
12102 Rubberstamped by Anders.
12104 Back out some accidentally-committed changes from r17711.
12107 (WebCore::Frame::command):
12108 (WebCore::FramePrivate::FramePrivate):
12110 * page/FramePrivate.h:
12112 2006-11-10 Anders Carlsson <acarlsson@apple.com>
12116 Add more commands, make toggleBold and toggleItalic executable commands.
12119 * editing/Editor.cpp:
12120 (WebCore::execCopy):
12121 (WebCore::execCut):
12122 (WebCore::execDelete):
12123 (WebCore::execForwardDelete):
12124 (WebCore::execPaste):
12125 (WebCore::execSelectAll):
12126 (WebCore::execToggleBold):
12127 (WebCore::execToggleItalic):
12128 (WebCore::enabled):
12129 (WebCore::canPaste):
12130 (WebCore::hasEditableSelection):
12131 (WebCore::hasEditableRangeSelection):
12132 (WebCore::hasRangeSelection):
12133 (WebCore::hasRichlyEditableSelection):
12134 (WebCore::CommandEntry::):
12135 * editing/Editor.h:
12137 2006-11-10 Anders Carlsson <acarlsson@apple.com>
12139 Reviewed by Maciej, Geoff.
12141 Added an execCommand method to Editor. The idea is that this should replace the CommandByName object. Get rid of
12142 the alterCurrentSelection method in the bridge. WebKit can just call execCommand directly.
12145 * bridge/mac/WebCoreFrameBridge.h:
12146 * bridge/mac/WebCoreFrameBridge.mm:
12147 * editing/Editor.cpp:
12148 (WebCore::execMoveBackward):
12149 (WebCore::execMoveBackwardAndModifySelection):
12150 (WebCore::execMoveDown):
12151 (WebCore::execMoveDownAndModifySelection):
12152 (WebCore::execMoveForward):
12153 (WebCore::execMoveForwardAndModifySelection):
12154 (WebCore::execMoveLeft):
12155 (WebCore::execMoveLeftAndModifySelection):
12156 (WebCore::execMoveRight):
12157 (WebCore::execMoveRightAndModifySelection):
12158 (WebCore::execMoveToBeginningOfDocument):
12159 (WebCore::execMoveToBeginningOfDocumentAndModifySelection):
12160 (WebCore::execMoveToBeginningOfSentence):
12161 (WebCore::execMoveToBeginningOfSentenceAndModifySelection):
12162 (WebCore::execMoveToBeginningOfLine):
12163 (WebCore::execMoveToBeginningOfLineAndModifySelection):
12164 (WebCore::execMoveToBeginningOfParagraph):
12165 (WebCore::execMoveToBeginningOfParagraphAndModifySelection):
12166 (WebCore::execMoveToEndOfDocument):
12167 (WebCore::execMoveToEndOfDocumentAndModifySelection):
12168 (WebCore::execMoveToEndOfSentence):
12169 (WebCore::execMoveToEndOfSentenceAndModifySelection):
12170 (WebCore::execMoveToEndOfLine):
12171 (WebCore::execMoveToEndOfLineAndModifySelection):
12172 (WebCore::execMoveToEndOfParagraph):
12173 (WebCore::execMoveToEndOfParagraphAndModifySelection):
12174 (WebCore::execMoveParagraphBackwardAndModifySelection):
12175 (WebCore::execMoveParagraphForwardAndModifySelection):
12176 (WebCore::execMoveUp):
12177 (WebCore::execMoveUpAndModifySelection):
12178 (WebCore::execMoveWordBackward):
12179 (WebCore::execMoveWordBackwardAndModifySelection):
12180 (WebCore::execMoveWordForward):
12181 (WebCore::execMoveWordForwardAndModifySelection):
12182 (WebCore::execMoveWordLeft):
12183 (WebCore::execMoveWordLeftAndModifySelection):
12184 (WebCore::execMoveWordRight):
12185 (WebCore::execMoveWordRightAndModifySelection):
12186 (WebCore::enabledAnySelection):
12187 (WebCore::createCommandMap):
12188 (WebCore::CommandEntry::):
12189 (WebCore::Editor::execCommand):
12190 * editing/Editor.h:
12192 2006-11-10 Brady Eidson <beidson@apple.com>
12196 Took out WebIconDatabaseBridge and made WebKit call IconDatabase directly
12199 * WebCore.xcodeproj/project.pbxproj:
12200 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed.
12201 * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed.
12202 * loader/FrameLoaderClient.h:
12203 * loader/icon/IconDatabase.cpp:
12204 (WebCore::IconDatabase::sharedIconDatabase):
12205 (WebCore::IconDatabase::~IconDatabase):
12206 * loader/icon/IconDatabase.h:
12207 (WebCore::IconDatabase::isPrivateBrowsingEnabled):
12208 (WebCore::IconDatabase::enabled):
12209 * loader/icon/IconLoader.cpp:
12210 (WebCore::IconLoader::finishLoading):
12211 * loader/mac/FrameLoaderMac.mm:
12213 2006-11-10 Zack Rusin <zack@kde.org>
12215 Reviewed and landed by Anders.
12217 Adjust platform Qt/KDE code to the recent loader
12221 * loader/DocumentLoader.h:
12222 * loader/FrameLoader.cpp:
12223 (WebCore::FrameLoader::createEmptyDocument):
12224 * loader/FrameLoader.h:
12225 * loader/FrameLoaderClient.h:
12226 * loader/qt/DocumentLoaderQt.cpp: Added.
12227 (WebCore::canonicalizedTitle):
12228 (WebCore::DocumentLoader::DocumentLoader):
12229 (WebCore::DocumentLoader::frameLoader):
12230 (WebCore::DocumentLoader::~DocumentLoader):
12231 (WebCore::DocumentLoader::URL):
12232 (WebCore::DocumentLoader::unreachableURL):
12233 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
12234 (WebCore::DocumentLoader::isStopping):
12235 (WebCore::DocumentLoader::clearErrors):
12236 (WebCore::DocumentLoader::stopLoading):
12237 (WebCore::DocumentLoader::setupForReplace):
12238 (WebCore::DocumentLoader::commitIfReady):
12239 (WebCore::DocumentLoader::finishedLoading):
12240 (WebCore::DocumentLoader::setCommitted):
12241 (WebCore::DocumentLoader::isCommitted):
12242 (WebCore::DocumentLoader::setLoading):
12243 (WebCore::DocumentLoader::isLoading):
12244 (WebCore::DocumentLoader::doesProgressiveLoad):
12245 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
12246 (WebCore::DocumentLoader::updateLoading):
12247 (WebCore::DocumentLoader::setFrame):
12248 (WebCore::DocumentLoader::attachToFrame):
12249 (WebCore::DocumentLoader::detachFromFrame):
12250 (WebCore::DocumentLoader::prepareForLoadStart):
12251 (WebCore::DocumentLoader::loadingStartedTime):
12252 (WebCore::DocumentLoader::setIsClientRedirect):
12253 (WebCore::DocumentLoader::isClientRedirect):
12254 (WebCore::DocumentLoader::setPrimaryLoadComplete):
12255 (WebCore::DocumentLoader::isLoadingInAPISense):
12256 (WebCore::DocumentLoader::stopRecordingResponses):
12257 (WebCore::DocumentLoader::title):
12258 (WebCore::DocumentLoader::triggeringAction):
12259 (WebCore::DocumentLoader::setTriggeringAction):
12260 (WebCore::DocumentLoader::setOverrideEncoding):
12261 (WebCore::DocumentLoader::overrideEncoding):
12262 (WebCore::DocumentLoader::setTitle):
12263 (WebCore::DocumentLoader::URLForHistory):
12264 * loader/qt/FrameLoaderClientQt.cpp: Added.
12265 (WebCore::FrameLoaderClientQt::FrameLoaderClientQt):
12266 (WebCore::FrameLoaderClientQt::~FrameLoaderClientQt):
12267 (WebCore::FrameLoaderClientQt::detachFrameLoader):
12268 (WebCore::FrameLoaderClientQt::hasWebView):
12269 (WebCore::FrameLoaderClientQt::hasFrameView):
12270 (WebCore::FrameLoaderClientQt::hasBackForwardList):
12271 (WebCore::FrameLoaderClientQt::resetBackForwardList):
12272 (WebCore::FrameLoaderClientQt::provisionalItemIsTarget):
12273 (WebCore::FrameLoaderClientQt::loadProvisionalItemFromPageCache):
12274 (WebCore::FrameLoaderClientQt::invalidateCurrentItemPageCache):
12275 (WebCore::FrameLoaderClientQt::privateBrowsingEnabled):
12276 (WebCore::FrameLoaderClientQt::makeDocumentView):
12277 (WebCore::FrameLoaderClientQt::makeRepresentation):
12278 (WebCore::FrameLoaderClientQt::forceLayout):
12279 (WebCore::FrameLoaderClientQt::forceLayoutForNonHTML):
12280 (WebCore::FrameLoaderClientQt::updateHistoryForCommit):
12281 (WebCore::FrameLoaderClientQt::updateHistoryForBackForwardNavigation):
12282 (WebCore::FrameLoaderClientQt::updateHistoryForReload):
12283 (WebCore::FrameLoaderClientQt::updateHistoryForStandardLoad):
12284 (WebCore::FrameLoaderClientQt::updateHistoryForInternalLoad):
12285 (WebCore::FrameLoaderClientQt::updateHistoryAfterClientRedirect):
12286 (WebCore::FrameLoaderClientQt::setCopiesOnScroll):
12287 (WebCore::FrameLoaderClientQt::tokenForLoadErrorReset):
12288 (WebCore::FrameLoaderClientQt::resetAfterLoadError):
12289 (WebCore::FrameLoaderClientQt::doNotResetAfterLoadError):
12290 (WebCore::FrameLoaderClientQt::willCloseDocument):
12291 (WebCore::FrameLoaderClientQt::detachedFromParent1):
12292 (WebCore::FrameLoaderClientQt::detachedFromParent2):
12293 (WebCore::FrameLoaderClientQt::detachedFromParent3):
12294 (WebCore::FrameLoaderClientQt::detachedFromParent4):
12295 (WebCore::FrameLoaderClientQt::loadedFromPageCache):
12296 (WebCore::FrameLoaderClientQt::dispatchDidHandleOnloadEvents):
12297 (WebCore::FrameLoaderClientQt::dispatchDidReceiveServerRedirectForProvisionalLoad):
12298 (WebCore::FrameLoaderClientQt::dispatchDidCancelClientRedirect):
12299 (WebCore::FrameLoaderClientQt::dispatchWillPerformClientRedirect):
12300 (WebCore::FrameLoaderClientQt::dispatchDidChangeLocationWithinPage):
12301 (WebCore::FrameLoaderClientQt::dispatchWillClose):
12302 (WebCore::FrameLoaderClientQt::dispatchDidStartProvisionalLoad):
12303 (WebCore::FrameLoaderClientQt::dispatchDidReceiveTitle):
12304 (WebCore::FrameLoaderClientQt::dispatchDidCommitLoad):
12305 (WebCore::FrameLoaderClientQt::dispatchDidFinishLoad):
12306 (WebCore::FrameLoaderClientQt::dispatchDidFirstLayout):
12307 (WebCore::FrameLoaderClientQt::dispatchShow):
12308 (WebCore::FrameLoaderClientQt::cancelPolicyCheck):
12309 (WebCore::FrameLoaderClientQt::dispatchWillSubmitForm):
12310 (WebCore::FrameLoaderClientQt::dispatchDidLoadMainResource):
12311 (WebCore::FrameLoaderClientQt::clearLoadingFromPageCache):
12312 (WebCore::FrameLoaderClientQt::isLoadingFromPageCache):
12313 (WebCore::FrameLoaderClientQt::revertToProvisionalState):
12314 (WebCore::FrameLoaderClientQt::clearUnarchivingState):
12315 (WebCore::FrameLoaderClientQt::progressStarted):
12316 (WebCore::FrameLoaderClientQt::progressCompleted):
12317 (WebCore::FrameLoaderClientQt::setMainFrameDocumentReady):
12318 (WebCore::FrameLoaderClientQt::willChangeTitle):
12319 (WebCore::FrameLoaderClientQt::didChangeTitle):
12320 (WebCore::FrameLoaderClientQt::finishedLoading):
12321 (WebCore::FrameLoaderClientQt::finalSetupForReplace):
12322 (WebCore::FrameLoaderClientQt::setDefersLoading):
12323 (WebCore::FrameLoaderClientQt::isArchiveLoadPending):
12324 (WebCore::FrameLoaderClientQt::cancelPendingArchiveLoad):
12325 (WebCore::FrameLoaderClientQt::clearArchivedResources):
12326 (WebCore::FrameLoaderClientQt::canShowMIMEType):
12327 (WebCore::FrameLoaderClientQt::representationExistsForURLScheme):
12328 (WebCore::FrameLoaderClientQt::generatedMIMETypeForURLScheme):
12329 (WebCore::FrameLoaderClientQt::frameLoadCompleted):
12330 (WebCore::FrameLoaderClientQt::restoreScrollPositionAndViewState):
12331 (WebCore::FrameLoaderClientQt::provisionalLoadStarted):
12332 (WebCore::FrameLoaderClientQt::shouldTreatURLAsSameAsCurrent):
12333 (WebCore::FrameLoaderClientQt::addHistoryItemForFragmentScroll):
12334 (WebCore::FrameLoaderClientQt::didFinishLoad):
12335 (WebCore::FrameLoaderClientQt::prepareForDataSourceReplacement):
12336 (WebCore::FrameLoaderClientQt::setTitle):
12337 (WebCore::FrameLoaderClientQt::userAgent):
12338 * loader/qt/FrameLoaderClientQt.h: Added.
12339 * loader/qt/FrameLoaderQt.cpp:
12340 (WebCore::FrameLoader::submitForm):
12341 (WebCore::FrameLoader::overrideMediaType):
12342 (WebCore::FrameLoader::getHistoryLength):
12343 (WebCore::FrameLoader::referrer):
12344 (WebCore::FrameLoader::detachFromParent):
12345 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
12346 (WebCore::FrameLoader::goBackOrForward):
12347 (WebCore::FrameLoader::historyURL):
12348 (WebCore::FrameLoader::didFirstLayout):
12349 (WebCore::FrameLoader::canGoBackOrForward):
12350 (WebCore::FrameLoader::partClearedInBegin):
12351 (WebCore::FrameLoader::saveDocumentState):
12352 (WebCore::FrameLoader::restoreDocumentState):
12353 (WebCore::FrameLoader::didChangeTitle):
12354 (WebCore::FrameLoader::redirectDataToPlugin):
12355 (WebCore::PolicyCheck::PolicyCheck):
12356 (WebCore::PolicyCheck::clear):
12357 (WebCore::PolicyCheck::set):
12358 (WebCore::PolicyCheck::call):
12359 (WebCore::PolicyCheck::clearRequest):
12360 * loader/qt/NavigationActionQt.cpp: Added.
12361 (WebCore::navigationType):
12362 (WebCore::NavigationAction::NavigationAction):
12363 * loader/qt/ResourceLoaderQt.cpp: Added.
12364 (WebCore::ResourceLoader::ResourceLoader):
12365 (WebCore::ResourceLoader::~ResourceLoader):
12366 (WebCore::ResourceLoader::setDefersLoading):
12367 (WebCore::ResourceLoader::cancel):
12368 (WebCore::ResourceLoader::loadsBlocked):
12369 * platform/MimeTypeRegistry.cpp:
12370 (WebCore::initialiseSupportedImageMIMETypes):
12371 * platform/network/qt/ResourceHandleManager.cpp:
12372 (WebCore::ResourceHandleManager::slotResult):
12373 (WebCore::ResourceHandleManager::cancel):
12374 * platform/qt/ChromeClientQt.cpp: Added.
12375 (WebCore::rootWindowForFrame):
12376 (WebCore::ChromeClientQt::ChromeClientQt):
12377 (WebCore::ChromeClientQt::~ChromeClientQt):
12378 (WebCore::ChromeClientQt::setWindowRect):
12379 (WebCore::ChromeClientQt::windowRect):
12380 (WebCore::ChromeClientQt::pageRect):
12381 (WebCore::ChromeClientQt::scaleFactor):
12382 (WebCore::ChromeClientQt::focus):
12383 (WebCore::ChromeClientQt::unfocus):
12384 (WebCore::ChromeClientQt::createWindow):
12385 (WebCore::ChromeClientQt::createModalDialog):
12386 (WebCore::ChromeClientQt::show):
12387 (WebCore::ChromeClientQt::canRunModal):
12388 (WebCore::ChromeClientQt::runModal):
12389 (WebCore::ChromeClientQt::setToolbarsVisible):
12390 (WebCore::ChromeClientQt::toolbarsVisible):
12391 (WebCore::ChromeClientQt::setStatusbarVisible):
12392 (WebCore::ChromeClientQt::statusbarVisible):
12393 (WebCore::ChromeClientQt::setScrollbarsVisible):
12394 (WebCore::ChromeClientQt::scrollbarsVisible):
12395 (WebCore::ChromeClientQt::setMenubarVisible):
12396 (WebCore::ChromeClientQt::menubarVisible):
12397 (WebCore::ChromeClientQt::setResizable):
12398 * platform/qt/ChromeClientQt.h: Added.
12399 * platform/qt/EditorClientQt.cpp:
12400 (WebCore::EditorClientQt::shouldBeginEditing):
12401 (WebCore::EditorClientQt::shouldEndEditing):
12402 (WebCore::EditorClientQt::shouldApplyStyle):
12403 (WebCore::EditorClientQt::didBeginEditing):
12404 (WebCore::EditorClientQt::respondToChangedContents):
12405 (WebCore::EditorClientQt::didEndEditing):
12406 * platform/qt/EditorClientQt.h:
12407 * platform/qt/FrameQt.cpp:
12408 (WebCore::FrameQt::FrameQt):
12409 (WebCore::FrameQt::~FrameQt):
12410 (WebCore::FrameQt::keyEvent):
12411 * platform/qt/FrameQt.h:
12412 * platform/qt/FrameQtClient.cpp:
12413 (WebCore::FrameQtClientDefault::openURL):
12414 (WebCore::FrameQtClientDefault::didReceiveData):
12415 (WebCore::FrameQtClientDefault::receivedAllData):
12416 * platform/qt/ImageQt.cpp:
12417 * platform/qt/MimeTypeRegistryQt.cpp: Added.
12418 (WebCore::getMIMETypeForUTI):
12419 (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
12420 * platform/qt/PageQt.cpp:
12421 * platform/qt/PlatformKeyboardEventQt.cpp:
12422 (WebCore::keyIdentifierForQtKeyCode):
12423 * platform/qt/ScreenQt.cpp:
12424 * platform/qt/TemporaryLinkStubs.cpp:
12425 (WebCore::TextField::TextField):
12426 (WebCore::screenDepth):
12427 (WebCore::screenDepthPerComponent):
12428 (WebCore::screenIsMonochrome):
12429 (WebCore::screenRect):
12430 (WebCore::screenAvailableRect):
12432 2006-11-10 Brady Eidson <beidson@apple.com>
12436 http://bugs.webkit.org/show_bug.cgi?id=11554
12437 Fix the above bug (in didFinishLoading) and also another potential bug in didFailWithError
12438 in case the icon load fails after some data has been received.
12440 * loader/icon/IconLoader.cpp:
12441 (WebCore::IconLoader::didFailWithError): Clear the buffer so half-an-image isn't commited to the DB
12442 on error. Also, as a loader re-factoring sanity check, added an assertion
12443 (WebCore::IconLoader::didFinishLoading): If an icon loader resulted in an error-response, the icon
12444 is already committed to the DB. Skip doing that step twice.
12446 2006-11-09 Oliver Hunt <oliver@apple.com>
12450 Pulled MIME type handling out of WebFrameBridge and added
12451 a general C++ class to store/query MIME info
12452 Added an Obj-C bridge to provide WebKit with access to the
12453 MimeTypeRegistry for non-Obj-C++ classes.
12456 * WebCore.xcodeproj/project.pbxproj:
12457 * bridge/mac/WebCoreFrameBridge.h:
12458 * bridge/mac/WebCoreFrameBridge.mm:
12459 * bridge/mac/WebMimeTypeRegistryBridge.h: Added.
12460 * bridge/mac/WebMimeTypeRegistryBridge.mm: Added.
12461 (+[WebMimeTypeRegistryBridge supportsImageWithMIMEType:]):
12462 (+[WebMimeTypeRegistryBridge supportsNonImageWithMIMEType:]):
12463 (+[WebMimeTypeRegistryBridge supportedNonImageMIMETypes]):
12464 (+[WebMimeTypeRegistryBridge supportedImageMIMETypes]):
12465 (+[WebMimeTypeRegistryBridge supportedImageResourceMIMETypes]):
12466 * platform/Image.cpp:
12467 (WebCore::Image::supportsType):
12468 * platform/Image.h:
12469 * platform/MimeTypeRegistry.cpp: Added.
12470 (WebCore::initialiseSupportedImageMIMETypes):
12471 (WebCore::initialiseSupportedNonImageMimeTypes):
12472 (WebCore::initialiseMimeTypeRegistry):
12473 (WebCore::MimeTypeRegistry::isSupportedImageMIMEType):
12474 (WebCore::MimeTypeRegistry::isSupportedImageResourceMIMEType):
12475 (WebCore::MimeTypeRegistry::isSupportedNonImageMIMEType):
12476 (WebCore::MimeTypeRegistry::getSupportedImageMIMETypes):
12477 (WebCore::MimeTypeRegistry::getSupportedImageResourceMIMETypes):
12478 (WebCore::MimeTypeRegistry::getSupportedNonImageMIMETypes):
12479 * platform/MimeTypeRegistry.h: Added.
12480 * platform/mac/ImageMac.mm:
12481 * platform/mac/MimeTypeRegistryMac.mm: Added.
12482 (WebCore::getMIMETypeForUTI):
12483 (WebCore::MimeTypeRegistry::getMIMETypeForExtension):
12485 2006-11-09 Maciej Stachowiak <mjs@apple.com>
12487 Reviewed by Oliver.
12489 - rename String::sprintf and DeprecatedString::sprintf to ...::format to avoid needlessly tweaking a search
12490 for insecure functions. Neither of these has risk of buffer overruns since they calculate the buffer size
12491 for you and use vsnprintf.
12493 * bindings/js/kjs_window.cpp:
12494 (KJS::Window::isSafeScript):
12495 * css/cssparser.cpp:
12496 (WebCore::CSSParser::parseColorFromValue):
12497 * dom/StyledElement.cpp:
12498 (WebCore::StyledElement::addCSSColor):
12499 * dom/XMLTokenizer.cpp:
12500 (WebCore::XMLTokenizer::handleError):
12501 * ksvg2/css/SVGCSSParser.cpp:
12502 (WebCore::CSSParser::parseSVGPaint):
12503 (WebCore::CSSParser::parseSVGColor):
12504 * ksvg2/svg/SVGPathSegArc.h:
12505 (WebCore::SVGPathSegArcAbs::toString):
12506 (WebCore::SVGPathSegArcRel::toString):
12507 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
12508 (WebCore::SVGPathSegCurvetoCubicAbs::toString):
12509 (WebCore::SVGPathSegCurvetoCubicRel::toString):
12510 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
12511 (WebCore::SVGPathSegCurvetoCubicSmoothAbs::toString):
12512 (WebCore::SVGPathSegCurvetoCubicSmoothRel::toString):
12513 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
12514 (WebCore::SVGPathSegCurvetoQuadraticAbs::toString):
12515 (WebCore::SVGPathSegCurvetoQuadraticRel::toString):
12516 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
12517 (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::toString):
12518 (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::toString):
12519 * ksvg2/svg/SVGPathSegLineto.h:
12520 (WebCore::SVGPathSegLinetoAbs::toString):
12521 (WebCore::SVGPathSegLinetoRel::toString):
12522 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
12523 (WebCore::SVGPathSegLinetoHorizontalAbs::toString):
12524 (WebCore::SVGPathSegLinetoHorizontalRel::toString):
12525 * ksvg2/svg/SVGPathSegLinetoVertical.h:
12526 (WebCore::SVGPathSegLinetoVerticalAbs::toString):
12527 (WebCore::SVGPathSegLinetoVerticalRel::toString):
12528 * ksvg2/svg/SVGPathSegMoveto.h:
12529 (WebCore::SVGPathSegMovetoAbs::toString):
12530 (WebCore::SVGPathSegMovetoRel::toString):
12531 * ksvg2/svg/SVGPolyElement.cpp:
12532 (WebCore::SVGPolyElement::notifyAttributeChange):
12533 * ksvg2/svg/SVGUseElement.cpp:
12534 (WebCore::SVGUseElement::closeRenderer):
12535 * loader/icon/IconDatabase.cpp:
12536 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
12537 * loader/icon/SQLDatabase.cpp:
12538 (WebCore::SQLDatabase::setSynchronous):
12539 * platform/Color.cpp:
12540 (WebCore::Color::name):
12541 * platform/DeprecatedString.cpp:
12542 (WebCore::DeprecatedString::setNum):
12543 (WebCore::DeprecatedString::format):
12544 * platform/DeprecatedString.h:
12545 * platform/PlatformString.h:
12546 * platform/String.cpp:
12547 (WebCore::String::format):
12548 (WebCore::String::number):
12549 * platform/mac/KeyEventMac.mm:
12550 (WebCore::keyIdentifierForKeyEvent):
12551 * platform/win/KeyEventWin.cpp:
12552 (WebCore::keyIdentifierForWindowsKeyCode):
12553 * rendering/RenderListMarker.cpp:
12554 (WebCore::RenderListMarker::calcMinMaxWidth):
12556 2006-11-09 Maciej Stachowiak <mjs@apple.com>
12558 Reviewed by Anders.
12560 - fixed "Regression: Can't log into gmail.com"
12561 - fixed "iBench doesn't report results - tests run but no number is recorded"
12563 * platform/network/cf/FormDataStreamCFNet.cpp:
12564 (WebCore::setHTTPBody): Removed extra ! character.
12566 2006-11-09 Beth Dakin <bdakin@apple.com>
12570 Fix for <rdar://problem/4805409> REGRESSION: Reproducible crash in
12571 WebCore::RenderBlock::skipWhitespace
12573 Note that this will still crash on Debug builds because it will hit
12574 an assertion failure in editing. (One of the reasons there is no
12575 layout test along with this fix.) There is definitely some editing
12576 wackiness happening. See http://bugs.webkit.org/show_bug.cgi?
12577 id=10144 for updates on the assertion failure bug.
12579 * rendering/RootInlineBox.cpp:
12580 (WebCore::RootInlineBox::childRemoved): It is possible for a
12581 prevRootBox and its prevRootBox to share a lineBreakObj. So instead
12582 of just clearing the lineBreakObj of the prevRootBox, cycle through
12583 all prevRootBoxs with the same lineBreakObj.
12585 2006-11-09 Adam Roben <aroben@apple.com>
12589 Fix the change in behavior I caused in r17680 with my build fix.
12591 * rendering/RenderObject.cpp:
12592 (WebCore::RenderObject::maxTopMargin):
12593 (WebCore::RenderObject::maxBottomMargin):
12595 2006-11-09 Anders Carlsson <acarlsson@apple.com>
12597 Reviewed by Adam, Oliver.
12599 Move more functions to Editor.
12601 * bridge/EditorClient.h:
12602 * bridge/mac/FrameMac.h:
12603 * bridge/mac/FrameMac.mm:
12604 * bridge/mac/WebCoreFrameBridge.h:
12605 * editing/EditCommand.cpp:
12606 (WebCore::EditCommand::apply):
12607 (WebCore::EditCommand::unapply):
12608 (WebCore::EditCommand::reapply):
12609 * editing/Editor.cpp:
12610 (WebCore::Editor::respondToChangedContents):
12611 (WebCore::dispatchEditableContentChangedEvents):
12612 (WebCore::Editor::appliedEditing):
12613 (WebCore::Editor::unappliedEditing):
12614 (WebCore::Editor::reappliedEditing):
12615 * editing/Editor.h:
12616 * editing/TypingCommand.cpp:
12617 (WebCore::TypingCommand::typingAddedToOpenCommand):
12621 2006-11-09 Darin Adler <darin@apple.com>
12623 * rendering/RenderObject.h: Oops! Fixed accidentally checked-in ifdef.
12625 2006-11-09 Alice Liu <alice.liu@apple.com>
12627 Reviewed by Beth Dakin.
12629 Fixed <rdar://problem/4808720> Hamachi test tool crashes Safari in WebCore::HTMLTableSectionElement::deleteRow
12630 All existing layout tests pass
12632 * html/HTMLTableElement.cpp:
12633 (WebCore::HTMLTableElement::deleteRow):
12634 check lastSection before deleting row
12636 2006-11-09 Darin Adler <darin@apple.com>
12638 - improved version of last night's build fix (should not do using namespace in a header)
12640 * rendering/RenderObject.h:
12641 * rendering/RenderObject.cpp:
12642 (WebCore::RenderObject::maxTopMargin):
12643 (WebCore::RenderObject::maxBottomMargin):
12645 2006-11-08 Maciej Stachowiak <mjs@apple.com>
12649 - added ResourceError class and didFailWithError client method
12651 * WebCore.xcodeproj/project.pbxproj:
12652 * loader/icon/IconLoader.cpp:
12653 (WebCore::IconLoader::didFailWithError):
12654 (WebCore::IconLoader::didFinishLoading):
12655 * loader/icon/IconLoader.h:
12656 * loader/loader.cpp:
12657 (WebCore::Loader::receivedAllData):
12658 (WebCore::Loader::didFailWithError):
12660 * loader/mac/SubresourceLoaderMac.mm:
12661 (WebCore::SubresourceLoader::didFail):
12662 (WebCore::SubresourceLoader::didCancel):
12663 * platform/cf/RetainPtr.h:
12665 (WebCore::adoptCFReference):
12666 (WebCore::RetainPtr::RetainPtr):
12667 (WebCore::::adopt):
12668 * platform/network/ResourceError.cpp: Added.
12669 * platform/network/ResourceError.h: Added.
12670 (WebCore::ResourceError::ResourceError):
12671 (WebCore::ResourceError::domain):
12672 (WebCore::ResourceError::errorCode):
12673 (WebCore::ResourceError::failingURL):
12674 (WebCore::ResourceError::localizedDescription):
12675 (WebCore::ResourceError::unpackPlatformErrorIfNeeded):
12676 * platform/network/ResourceHandle.cpp:
12677 * platform/network/ResourceHandle.h:
12678 * platform/network/ResourceHandleClient.h:
12679 (WebCore::ResourceHandleClient::didFailWithError):
12680 * platform/network/cf/ResourceHandleCFNet.cpp:
12681 (WebCore::didFail):
12682 (WebCore::ResourceHandle::cancel):
12683 * platform/network/mac/ResourceErrorMac.mm: Added.
12684 (-[NSError WebCore]):
12685 * platform/network/mac/ResourceHandleMac.mm:
12686 (WebCore::ResourceHandle::reportError):
12687 * xml/xmlhttprequest.cpp:
12688 (WebCore::XMLHttpRequest::didFailWithError):
12689 (WebCore::XMLHttpRequest::didFinishLoading):
12690 * xml/xmlhttprequest.h:
12692 2006-11-08 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
12694 Reviewed by Maciej.
12698 * platform/gdk/ChromeClientGdk.h:
12699 (WebCore::ChromeClientGdk::~ChromeClientGdk):
12700 * platform/gdk/CursorGdk.cpp:
12701 (WebCore::Cursor::Cursor):
12702 (WebCore::moveCursor):
12703 * platform/gdk/FrameGdk.cpp:
12704 (WebCore::FrameGdk::FrameGdk):
12705 (WebCore::FrameGdk::submitForm):
12706 (WebCore::FrameGdk::urlSelected):
12707 * platform/gdk/PageGdk.cpp:
12708 * platform/gdk/ScreenClientGdk.h: Added.
12709 (WebCore::ScreenClientGdk::~ScreenClientGdk):
12710 * platform/gdk/ScreenGdk.cpp:
12711 (WebCore::ScreenClientGdk::depth):
12712 (WebCore::ScreenClientGdk::depthPerComponent):
12713 (WebCore::ScreenClientGdk::isMonochrome):
12714 (WebCore::ScreenClientGdk::rect):
12715 (WebCore::ScreenClientGdk::usableRect):
12716 * platform/gdk/TemporaryLinkStubs.cpp:
12717 (FrameGdk::historyURL):
12718 (ChromeClientGdk::windowRect):
12719 (ChromeClientGdk::setWindowRect):
12720 (ChromeClientGdk::pageRect):
12721 (ChromeClientGdk::scaleFactor):
12722 (ChromeClientGdk::focus):
12723 (ChromeClientGdk::unfocus):
12724 (ChromeClientGdk::createWindow):
12725 (ChromeClientGdk::createModalDialog):
12726 (ChromeClientGdk::show):
12727 (ChromeClientGdk::canRunModal):
12728 (ChromeClientGdk::runModal):
12729 (ChromeClientGdk::setToolbarsVisible):
12730 (ChromeClientGdk::toolbarsVisible):
12731 (ChromeClientGdk::setStatusbarVisible):
12732 (ChromeClientGdk::statusbarVisible):
12733 (ChromeClientGdk::setScrollbarsVisible):
12734 (ChromeClientGdk::scrollbarsVisible):
12735 (ChromeClientGdk::setMenubarVisible):
12736 (ChromeClientGdk::menubarVisible):
12737 (ChromeClientGdk::setResizable):
12738 * platform/network/ResourceHandleInternal.h:
12739 (WebCore::ResourceHandleInternal::client):
12740 * platform/network/gdk/ResourceHandleManager.cpp:
12741 (WebCore::writeCallback):
12742 (WebCore::ResourceHandleManager::downloadTimerCallback):
12743 (WebCore::ResourceHandleManager::remove):
12745 2006-11-08 Adam Roben <aroben@apple.com>
12749 * rendering/RenderObject.h:
12750 (WebCore::RenderObject::maxTopMargin):
12751 (WebCore::RenderObject::maxBottomMargin):
12753 2006-11-08 Geoffrey Garen <ggaren@apple.com>
12755 Reviewed by Anders Carlsson.
12757 Made Screen a good platform citizen by removing its reference to Page. This
12758 made a class unnecessary, so all screen fuctions are stand-alone now.
12760 * bindings/js/kjs_window.cpp: Removed unnecessary subtractions
12761 when computing the screen's available dimensions.
12763 2006-11-08 Sam Weinig <sam.weinig@gmail.com>
12767 Fix for http://bugs.webkit.org/show_bug.cgi?id=11506
12768 Cleanup RenderObject
12770 * rendering/RenderObject.cpp:
12771 (WebCore::RenderObject::operator delete):
12772 (WebCore::RenderObject::createObject):
12773 (WebCore::RenderObjectCounter::~RenderObjectCounter):
12774 (WebCore::RenderObject::RenderObject):
12775 (WebCore::RenderObject::isDescendantOf):
12776 (WebCore::RenderObject::isRoot):
12777 (WebCore::RenderObject::addChild):
12778 (WebCore::RenderObject::removeChildNode):
12779 (WebCore::RenderObject::removeChild):
12780 (WebCore::RenderObject::appendChildNode):
12781 (WebCore::RenderObject::insertChildNode):
12782 (WebCore::RenderObject::nextInPreOrder):
12783 (WebCore::RenderObject::nextInPreOrderAfterChildren):
12784 (WebCore::RenderObject::previousInPreOrder):
12785 (WebCore::RenderObject::isEditable):
12786 (WebCore::RenderObject::nextEditable):
12787 (WebCore::RenderObject::previousEditable):
12788 (WebCore::RenderObject::firstLeafChild):
12789 (WebCore::RenderObject::lastLeafChild):
12790 (WebCore::RenderObject::addLayers):
12791 (WebCore::RenderObject::removeLayers):
12792 (WebCore::RenderObject::moveLayers):
12793 (WebCore::RenderObject::findNextLayer):
12794 (WebCore::RenderObject::enclosingLayer):
12795 (WebCore::RenderObject::updateFirstLetter):
12796 (WebCore::RenderObject::offsetParent):
12797 (WebCore::RenderObject::scroll):
12798 (WebCore::RenderObject::hasStaticX):
12799 (WebCore::RenderObject::setNeedsLayout):
12800 (WebCore::RenderObject::setChildNeedsLayout):
12801 (WebCore::RenderObject::markContainingBlocksForLayout):
12802 (WebCore::RenderObject::containingBlock):
12803 (WebCore::RenderObject::containingBlockWidth):
12804 (WebCore::RenderObject::containingBlockHeight):
12805 (WebCore::RenderObject::mustRepaintBackgroundOrBorder):
12806 (WebCore::RenderObject::drawBorderArc):
12807 (WebCore::RenderObject::drawBorder):
12808 (WebCore::RenderObject::paintBorderImage):
12809 (WebCore::RenderObject::paintBorder):
12810 (WebCore::RenderObject::absoluteRects):
12811 (WebCore::RenderObject::addPDFURLRect):
12812 (WebCore::RenderObject::addFocusRingRects):
12813 (WebCore::RenderObject::paintOutline):
12814 (WebCore::RenderObject::repaint):
12815 (WebCore::RenderObject::repaintRectangle):
12816 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
12817 (WebCore::RenderObject::repaintObjectsBeforeLayout):
12818 (WebCore::RenderObject::getAbsoluteRepaintRectWithOutline):
12819 (WebCore::RenderObject::information):
12820 (WebCore::RenderObject::dump):
12821 (WebCore::selectStartNode):
12822 (WebCore::RenderObject::shouldSelect):
12823 (WebCore::RenderObject::draggableNode):
12824 (WebCore::RenderObject::createAnonymousBlock):
12825 (WebCore::RenderObject::handleDynamicFloatPositionChange):
12826 (WebCore::RenderObject::setStyle):
12827 (WebCore::RenderObject::setStyleInternal):
12828 (WebCore::RenderObject::updateBackgroundImages):
12829 (WebCore::RenderObject::absolutePosition):
12830 (WebCore::RenderObject::caretRect):
12831 (WebCore::RenderObject::paddingTop):
12832 (WebCore::RenderObject::paddingBottom):
12833 (WebCore::RenderObject::paddingLeft):
12834 (WebCore::RenderObject::paddingRight):
12835 (WebCore::RenderObject::tabWidth):
12836 (WebCore::RenderObject::container):
12837 (WebCore::RenderObject::removeFromObjectLists):
12838 (WebCore::RenderObject::destroy):
12839 (WebCore::RenderObject::arenaDelete):
12840 (WebCore::RenderObject::hitTest):
12841 (WebCore::RenderObject::setInnerNode):
12842 (WebCore::RenderObject::nodeAtPoint):
12843 (WebCore::RenderObject::verticalPositionHint):
12844 (WebCore::RenderObject::getVerticalPosition):
12845 (WebCore::RenderObject::lineHeight):
12846 (WebCore::RenderObject::invalidateVerticalPositions):
12847 (WebCore::RenderObject::recalcMinMaxWidths):
12848 (WebCore::RenderObject::scheduleRelayout):
12849 (WebCore::RenderObject::setInlineBoxWrapper):
12850 (WebCore::RenderObject::firstLineStyle):
12851 (WebCore::RenderObject::getPseudoStyle):
12852 (WebCore::RenderObject::getTextDecorationColors):
12853 (WebCore::RenderObject::addDashboardRegions):
12854 (WebCore::RenderObject::collectDashboardRegions):
12855 (WebCore::RenderObject::avoidsFloats):
12856 (WebCore::RenderObject::findCounter):
12857 (WebCore::RenderObject::backslashAsCurrencySymbol):
12858 (WebCore::RenderObject::imageChanged):
12859 (WebCore::RenderObject::previousOffset):
12860 (WebCore::RenderObject::nextOffset):
12861 (WebCore::RenderObject::inlineBox):
12862 * rendering/RenderObject.h:
12864 (WebCore::RenderObject::renderName):
12865 (WebCore::RenderObject::parent):
12866 (WebCore::RenderObject::previousSibling):
12867 (WebCore::RenderObject::nextSibling):
12868 (WebCore::RenderObject::firstChild):
12869 (WebCore::RenderObject::lastChild):
12870 (WebCore::RenderObject::getOverflowClipRect):
12871 (WebCore::RenderObject::getClipRect):
12872 (WebCore::RenderObject::getBaselineOfFirstLineBox):
12873 (WebCore::RenderObject::setEdited):
12874 (WebCore::RenderObject::setStaticX):
12875 (WebCore::RenderObject::setStaticY):
12876 (WebCore::RenderObject::setPreviousSibling):
12877 (WebCore::RenderObject::setNextSibling):
12878 (WebCore::RenderObject::setParent):
12879 (WebCore::RenderObject::isInlineBlockOrInlineTable):
12880 (WebCore::RenderObject::isRenderView):
12881 (WebCore::RenderObject::childrenInline):
12882 (WebCore::RenderObject::setChildrenInline):
12883 (WebCore::RenderObject::isAnonymousBlock):
12884 (WebCore::RenderObject::isDragging):
12885 (WebCore::RenderObject::needsLayout):
12886 (WebCore::RenderObject::setMinMaxKnown):
12887 (WebCore::RenderObject::setNeedsLayoutAndMinMaxRecalc):
12888 (WebCore::RenderObject::setPositioned):
12889 (WebCore::RenderObject::setRelPositioned):
12890 (WebCore::RenderObject::setFloating):
12891 (WebCore::RenderObject::setInline):
12892 (WebCore::RenderObject::setShouldPaintBackgroundOrBorder):
12893 (WebCore::RenderObject::setReplaced):
12894 (WebCore::RenderObject::PaintInfo::PaintInfo):
12895 (WebCore::RenderObject::paintBackgroundExtended):
12896 (WebCore::RenderObject::calcWidth):
12897 (WebCore::RenderObject::updateFromElement):
12898 (WebCore::RenderObject::RepaintInfo::RepaintInfo):
12899 (WebCore::RenderObject::setOverrideSize):
12900 (WebCore::RenderObject::setPos):
12901 (WebCore::RenderObject::setWidth):
12902 (WebCore::RenderObject::setHeight):
12903 (WebCore::RenderObject::absolutePositionForContent):
12904 (WebCore::RenderObject::overflowHeight):
12905 (WebCore::RenderObject::overflowWidth):
12906 (WebCore::RenderObject::setOverflowHeight):
12907 (WebCore::RenderObject::setOverflowWidth):
12908 (WebCore::RenderObject::overflowLeft):
12909 (WebCore::RenderObject::overflowTop):
12910 (WebCore::RenderObject::overflowRect):
12911 (WebCore::RenderObject::stopAutoscroll):
12912 (WebCore::RenderObject::collapsedMarginTop):
12913 (WebCore::RenderObject::collapsedMarginBottom):
12914 (WebCore::RenderObject::maxTopMargin):
12915 (WebCore::RenderObject::maxBottomMargin):
12916 (WebCore::RenderObject::):
12917 (WebCore::RenderObject::setTable):
12918 (WebCore::RenderObject::isFloatingOrPositioned):
12919 (WebCore::RenderObject::containsFloat):
12920 (WebCore::RenderObject::setSelectionState):
12921 (WebCore::RenderObject::SelectionInfo::SelectionInfo):
12922 (WebCore::RenderObject::lowestPosition):
12923 (WebCore::RenderObject::rightmostPosition):
12924 (WebCore::RenderObject::leftmostPosition):
12925 (WebCore::RenderObject::calcVerticalMargins):
12926 (WebCore::RenderObject::font):
12928 2006-11-08 Darin Adler <darin@apple.com>
12930 Reviewed by Anders.
12932 - added event parameters to focus-related functions so we can
12933 implement the "option-tab to all links" behavior without relying
12934 on a global "current event" -- also makes it work with DOM events
12936 * page/Frame.h: Removed unneeded includes. Moved some functions
12937 that were misplaced into the appropriate sections.
12939 (WebCore::Frame::doTextFieldCommandFromEvent): Changed parameter from
12940 PlatformKeyboardEvent to the DOM keyboard event class.
12941 (WebCore::Frame::tabsToLinks): Added event parameter.
12942 (WebCore::Frame::tabsToAllControls): Ditto.
12943 (WebCore::scanForForm): Fixed code that incorrectly assumes
12944 that an iframe is an HTMLFrameElement (no longer true since Geoff
12945 changed the class hierarchy a bit).
12946 (WebCore::Frame::hitTestResultAtPoint): Ditto.
12948 * bridge/mac/FrameMac.h: Removed unneeded includes. Moved some functions
12949 that were misplaced into the appropriate sections.
12950 * bridge/mac/FrameMac.mm:
12951 (WebCore::selectorForKeyEvent): Changed to use a DOM event instead of
12952 a PlatformKeyboardEvent.
12953 (WebCore::FrameMac::nextKeyViewInFrame): Changed to use currentKeyboardEvent()
12954 and pass event into next/previousFocusNode.
12955 (WebCore::FrameMac::currentKeyboardEvent): Added. Creates a DOM event from
12956 the AppKit current event, if it's a keyboard event. Really just a hack that's
12957 needed to preserve some code we can remove once we deal with the last NSView-
12958 based form control.
12959 (WebCore::isKeyboardOptionTab): Added.
12960 (WebCore::FrameMac::tabsToLinks): Added event parameter, used to check if the
12961 option (alt) key is down.
12962 (WebCore::FrameMac::tabsToAllControls): Ditto.
12963 (WebCore::FrameMac::keyEvent): Changed call to prepareForUserAction() to just
12964 call resetMultipleFormSubmissionProtection() explicitly instead.
12965 (WebCore::FrameMac::mouseDown): Ditto.
12967 * bridge/mac/WebCoreAXObject.mm:
12968 (-[WebCoreAXObject accessibilityDescription]): Fixed code that incorrectly
12969 assumes that an iframe is an HTMLFrameElement (no longer true since Geoff
12970 changed the class hierarchy a bit).
12971 (-[WebCoreAXObject accessibilityPerformAction:]): Changed call to
12972 prepareForUserAction() to call resetMultipleFormSubmissionProtection()
12973 explicitly instead.
12975 * page/FrameView.h:
12976 * page/FrameView.cpp:
12977 (WebCore::FrameView::advanceFocus): Changed function to take an
12978 event parameter, and decide the direction based on the shift key
12979 modifier instead of a passed-in boolean.
12982 * dom/Document.cpp:
12983 (WebCore::Document::nextFocusNode): Added event parameter.
12984 (WebCore::Document::previousFocusNode): Ditto.
12987 (WebCore::Node::isKeyboardFocusable): Ditto.
12988 * html/HTMLAnchorElement.h:
12989 * html/HTMLAnchorElement.cpp:
12990 (WebCore::HTMLAnchorElement::isKeyboardFocusable): Ditto.
12991 * html/HTMLGenericFormElement.h:
12992 * html/HTMLGenericFormElement.cpp:
12993 (WebCore::HTMLGenericFormElement::isKeyboardFocusable): Ditto.
12994 * html/HTMLInputElement.h:
12995 * html/HTMLInputElement.cpp:
12996 (WebCore::HTMLInputElement::isKeyboardFocusable): Ditto.
12997 (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
12998 * html/HTMLSelectElement.h:
12999 * html/HTMLSelectElement.cpp:
13000 (WebCore::HTMLSelectElement::isKeyboardFocusable): Ditto.
13001 * html/HTMLTextAreaElement.h:
13002 * html/HTMLTextAreaElement.cpp:
13003 (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Ditto.
13005 * dom/EventTargetNode.cpp:
13006 (WebCore::EventTargetNode::defaultEventHandler): Pass event to the
13007 advanceFocus function.
13009 * platform/TextField.h:
13010 * platform/mac/TextFieldMac.mm: Removed the non-search field code.
13012 * platform/mac/WebCoreTextField.h:
13013 * platform/mac/WebCoreTextField.mm: Removed the non-search field code.
13014 (-[WebCoreTextFieldController controlTextDidChange:]): Removed the
13015 call to FrameMac::handleKeyboardOptionTabInView, which is no longer
13016 needed since the default handler in HTMLInputElement takes care of
13019 * platform/mac/SliderMac.mm:
13020 (-[WebCoreSlider canBecomeKeyView]): Changed to use currentKeyboardEvent()
13021 and pass event into tabsToAllControls.
13022 (Slider::focusPolicy): Ditto.
13024 * rendering/RenderLineEdit.cpp:
13025 (WebCore::RenderLineEdit::RenderLineEdit): Removed the non-search field code.
13026 (WebCore::RenderLineEdit::updateFromElement): Ditto.
13028 2006-11-08 Brady Eidson <beidson@apple.com>
13030 Reviewed by Dave Harrison, Oliver, and Darin
13031 (oh my! where was superkevin on this one?)
13033 <rdar://problem/4816196> "Xcode Help" crashes in WebCore::DocumentLoader::setPrimaryLoadComplete(bool)
13035 More "free nil checking" we lost in the transition from ObjC to C++
13037 * loader/mac/FrameLoaderMac.mm:
13038 (WebCore::FrameLoader::startLoading): Null check m_provisionalDocumentLoader and bail early.
13039 (WebCore::FrameLoader::checkLoadCompleteForThisFrame): Ditto
13041 2006-11-08 Anders Carlsson <acarlsson@apple.com>
13045 Move more code into editor.
13048 * bridge/EditorClient.h:
13049 * bridge/mac/FrameMac.h:
13050 * bridge/mac/FrameMac.mm:
13051 * bridge/mac/WebCoreFrameBridge.h:
13052 * dom/Document.cpp:
13053 (WebCore::Document::relinquishesEditingFocus):
13054 (WebCore::Document::acceptsEditingFocus):
13055 (WebCore::Document::didBeginEditing):
13056 (WebCore::Document::didEndEditing):
13057 * editing/Editor.cpp:
13058 (WebCore::Editor::indent):
13059 (WebCore::Editor::outdent):
13060 * editing/Editor.h:
13064 2006-11-08 Beth Dakin <bdakin@apple.com>
13068 Add ability to HitTestResult to ask if the inner non-shared node is
13071 * WebCore.exp: Export HitTestResult::isContentEditable()
13072 * rendering/HitTestResult.cpp:
13073 (WebCore::HitTestResult::isContentEditable):
13074 * rendering/HitTestResult.h:
13076 2006-11-08 Anders Carlsson <acarlsson@apple.com>
13080 * WebCore.xcodeproj/project.pbxproj:
13081 Add DOMCSSStyleDeclarationInternal.h to the "Copy Generated Headers" build phase.
13083 2006-11-08 Timothy Hatcher <timothy@apple.com>
13087 <rdar://problem/4713280> Would like to get an array of bounding rects rather than just the union of them for a DOMRange
13088 <rdar://problem/4804317> Would like SPI to get bounding box for a DOM range without having to change the selection
13090 Added lineBoxRects and boundingBox to Range and DOMRange. These methods correspond to the DOMNode methods.
13092 * bindings/objc/DOM.mm:
13094 (-[DOMNode lineBoxRects]):
13095 (-[DOMRange boundingBox]):
13096 (-[DOMRange lineBoxRects]):
13097 * bindings/objc/DOMPrivate.h:
13099 (WebCore::Range::boundingBox):
13100 (WebCore::Range::addLineBoxRects):
13102 * rendering/RenderContainer.cpp:
13103 (WebCore::RenderContainer::addLineBoxRects):
13104 * rendering/RenderContainer.h:
13105 * rendering/RenderObject.cpp:
13106 (WebCore::RenderObject::addLineBoxRects):
13107 * rendering/RenderObject.h:
13108 * rendering/RenderText.cpp:
13109 (WebCore::RenderText::addLineBoxRects):
13110 * rendering/RenderText.h:
13112 2006-11-08 Anders Carlsson <acarlsson@apple.com>
13114 Reviewed by Oliver.
13116 Move methods from the bridge and frame into editor.
13119 * bridge/EditorClient.h:
13120 * bridge/mac/WebCoreFrameBridge.h:
13121 * bridge/mac/WebCoreFrameBridge.mm:
13122 * editing/Editor.cpp:
13123 (WebCore::Editor::removeFormattingAndStyle):
13124 (WebCore::Editor::applyStyle):
13125 (WebCore::Editor::applyParagraphStyle):
13126 (WebCore::Editor::applyStyleToSelection):
13127 (WebCore::Editor::applyParagraphStyleToSelection):
13128 (WebCore::Editor::toggleBold):
13129 (WebCore::Editor::toggleItalic):
13130 (WebCore::Editor::selectionStartHasStyle):
13131 * editing/Editor.h:
13132 * editing/JSEditor.cpp:
13136 2006-11-08 Geoffrey Garen <ggaren@apple.com>
13140 Fixed regression in fast/events/objc-event-api. DumpRenderTree expects to
13141 be able to dispatch user events even when off-screen, so we have to support
13142 off-screen windows when handling mouse events.
13144 * platform/Screen.h:
13145 * platform/mac/PlatformMouseEventMac.mm:
13146 (WebCore::globalPoint): Grab the best screen instead of the screen you're
13147 on, since you might be off-screen.
13148 * platform/mac/ScreenMac.mm:
13149 (WebCore::screenForWindow):
13151 2006-11-08 Darin Adler <darin@apple.com>
13153 - fix bug caused by last-minute change to my check-in last night
13154 that is causing layout tests to hang
13156 * dom/Document.cpp: (WebCore::Document::completeURL): Added comments.
13157 * loader/FrameLoader.cpp: (WebCore::FrameLoader::submitForm): Turn
13158 a null string into an empty string before calling completeURL.
13160 2006-11-08 Brady Eidson <beidson@apple.com>
13164 If the request has already been aborted, bail out of didFinishLoading()
13165 immediately. This prevents state change notifications that aren't
13168 * xml/xmlhttprequest.cpp:
13169 (WebCore::XMLHttpRequest::didFinishLoading):
13171 2006-11-08 Darin Adler <darin@apple.com>
13173 - another attempt to fix Qt build
13175 * loader/qt/FrameLoaderQt.cpp: Added missing include of FrameLoader.h.
13177 2006-11-08 Darin Adler <darin@apple.com>
13181 - stray bits of my FrameLoader patch that I left out by accident
13183 * loader/FrameLoader.cpp:
13184 (WebCore::FrameLoader::createWindow): Use m_outgoingReferrer instead of outgoingReferrer()
13185 inside the FrameLoader class.
13186 (WebCore::FrameLoader::requestFrame): Use less DeprecatedString.
13187 (WebCore::FrameLoader::clear): Stop the redirection timer.
13188 (WebCore::FrameLoader::receivedFirstData): Added an early return instead of nesting the
13189 entire function in an if statement. Use less DeprecatedString.
13190 (WebCore::FrameLoader::scheduleLocationChange): Fix backwards ? : operator.
13191 (WebCore::FrameLoader::scheduleRefresh): Ditto.
13192 (WebCore::FrameLoader::urlSelected): Use m_outgoingReferrer instead of outgoingReferrer()
13193 inside the FrameLoader class.
13194 * loader/mac/FrameLoaderMac.mm:
13195 (WebCore::FrameLoader::load): Ditto.
13196 (WebCore::FrameLoader::loadResourceSynchronously): Ditto.
13198 2006-11-07 Beth Dakin <bdakin@apple.com>
13202 Another go at fix for <rdar://problem/4820814> A crash occurs at
13203 WebCore::HitTestResult::spellingToolTip() when mousing down on
13204 iframe at www.macsurfer.com
13206 The fix from yesterday caused a layout test regression which
13207 exposed an existing bug. The existing bug was that we allowed text
13208 nodes to stay in the head tag, but other browsers move them to the
13209 body. The previous fix also caused a performance regression, which
13210 was seemingly easy to fix by moving the new clause in
13211 HTMLParser::handleError() to be below the HTMLElement case.
13213 * html/HTMLDocument.cpp:
13214 (WebCore::HTMLDocument::childAllowed): Don't allow comment nodes to
13215 be the child of the document.
13216 * html/HTMLHeadElement.cpp:
13217 (WebCore::HTMLHeadElement::childAllowed): Do not allow non-
13218 whitespace text nodes to be children of the head.
13219 * html/HTMLHeadElement.h:
13220 * html/HTMLParser.cpp:
13221 (WebCore::HTMLParser::handleError): Error case for comment nodes.
13222 * page/FrameView.cpp:
13223 (WebCore::FrameView::handleMousePressEvent): Safety-net null check
13224 for the original crash.
13226 2006-11-07 Darin Adler <darin@apple.com>
13228 - another attempt to fix Qt build
13230 * loader/icon/IconLoader.h: Added missing include.
13232 2006-11-06 Geoffrey Garen <ggaren@apple.com>
13234 Reviewed by Tim Hatcher.
13236 Removed ScreenClient. It was highly unpopular, risking my midterm re-election.
13238 None of Screen's responsibilities require up-calls to WebKit or delegates,
13239 so WebCore can handle it all.
13241 Moved Screen back from page/ to platform/ because it's a platform
13244 Merged scaling and flipping functions into 'toUserSpace' and 'toDeviceSpace',
13245 since the two were always used together.
13247 Changed pixel depth queries to query the deepest screen. Darin mentioned
13248 that it might have been a feature, not a bug, to use the main/menubar screen
13249 regardless of the screen you were on. For scaling and flipping that's not
13250 the case, but for querying pixel depth I think it is. You want to know
13251 about the highest pixel depth your content may display on.
13256 * WebCore.xcodeproj/project.pbxproj:
13258 (WebCore::Page::Page):
13260 * page/Screen.cpp: Removed.
13261 * page/Screen.h: Removed.
13262 * page/ScreenClient.h: Removed.
13263 * platform/mac/PlatformMouseEventMac.mm:
13264 (WebCore::globalPoint):
13265 * platform/mac/ScreenMac.mm:
13267 (WebCore::bestScreen):
13268 (WebCore::Screen::depth):
13269 (WebCore::Screen::depthPerComponent):
13270 (WebCore::Screen::isMonochrome):
13271 (WebCore::Screen::rect):
13272 (WebCore::Screen::usableRect):
13273 (WebCore::toUserSpace):
13274 (WebCore::toDeviceSpace):
13276 2006-11-07 Darin Adler <darin@apple.com>
13278 - try to fix Qt build
13280 * CMakeLists.txt: Updated for some file changes.
13281 * WebCoreSources.bkl: Ditto.
13283 2006-11-07 Darin Adler <darin@apple.com>
13287 - moved loader code from Frame/FrameMac to FrameLoader
13290 * WebCore.xcodeproj/project.pbxproj:
13291 * bindings/js/JSXSLTProcessor.h:
13292 * bindings/js/kjs_events.cpp:
13293 (KJS::JSLazyEventListener::parseCode):
13294 * bindings/js/kjs_html.cpp:
13295 (KJS::JSHTMLDocument::putValueProperty):
13296 * bindings/js/kjs_navigator.cpp:
13297 (KJS::Navigator::getValueProperty):
13298 * bindings/js/kjs_proxy.cpp:
13299 (WebCore::KJSProxy::initScriptIfNeeded):
13300 * bindings/js/kjs_window.cpp:
13301 (KJS::Screen::Screen):
13302 (KJS::createNewWindow):
13303 (KJS::Window::getValueProperty):
13304 (KJS::Window::put):
13305 (KJS::Window::isSafeScript):
13306 (KJS::WindowFunc::callAsFunction):
13307 (KJS::ScheduledAction::execute):
13308 (KJS::Location::getValueProperty):
13309 (KJS::Location::put):
13310 (KJS::Location::toString):
13311 (KJS::LocationFunc::callAsFunction):
13312 (KJS::History::getValueProperty):
13313 (KJS::HistoryFunc::callAsFunction):
13314 * bindings/objc/DOM.mm:
13315 (+[DOMNode _nodeWith:WebCore::]):
13316 * bridge/mac/FrameMac.h:
13317 * bridge/mac/FrameMac.mm:
13318 (WebCore::FrameMac::~FrameMac):
13319 (WebCore::FrameMac::setView):
13320 (WebCore::FrameMac::setStatusBarText):
13321 * bridge/mac/WebCoreFrameBridge.h:
13322 * bridge/mac/WebCoreFrameBridge.mm:
13323 (-[WebCoreFrameBridge close]):
13324 (-[WebCoreFrameBridge addData:]):
13325 (-[WebCoreFrameBridge createFrameViewWithNSView:marginWidth:marginHeight:]):
13326 (-[WebCoreFrameBridge reapplyStylesForDeviceType:]):
13327 (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
13328 (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
13329 (-[WebCoreFrameBridge baseURL]):
13330 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
13331 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]):
13332 (-[WebCoreFrameBridge canProvideDocumentSource]):
13333 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
13334 * css/cssparser.cpp:
13335 (WebCore::CSSParser::parseContent):
13336 * dom/DOMImplementation.cpp:
13337 (WebCore::DOMImplementation::createDocument):
13338 (WebCore::DOMImplementation::createHTMLDocument):
13339 * dom/DOMImplementation.h:
13340 * dom/Document.cpp:
13341 (WebCore::Document::readyState):
13342 (WebCore::Document::updateTitle):
13343 (WebCore::Document::open):
13344 (WebCore::Document::close):
13345 (WebCore::Document::implicitClose):
13346 (WebCore::Document::processHttpEquiv):
13347 (WebCore::Document::referrer):
13348 (WebCore::Document::finishedParsing):
13349 * dom/ProcessingInstruction.cpp:
13350 (WebCore::ProcessingInstruction::checkStyleSheet):
13351 * dom/XMLTokenizer.cpp:
13352 (WebCore::XMLTokenizer::endElementNs):
13353 (WebCore::ignorableWhitespaceHandler):
13354 (WebCore::XMLTokenizer::notifyFinished):
13355 * editing/TextIterator.cpp:
13356 (WebCore::TextIterator::rangeFromLocationAndLength):
13357 * html/HTMLAnchorElement.cpp:
13358 (WebCore::HTMLAnchorElement::defaultEventHandler):
13359 * html/HTMLBaseElement.cpp:
13360 (WebCore::HTMLBaseElement::process):
13361 * html/HTMLDocument.cpp:
13362 (WebCore::HTMLDocument::lastModified):
13363 * html/HTMLFormElement.cpp:
13364 (WebCore::HTMLFormElement::formData):
13365 (WebCore::HTMLFormElement::submit):
13366 * html/HTMLFrameElementBase.cpp:
13367 (WebCore::HTMLFrameElementBase::isURLAllowed):
13368 (WebCore::HTMLFrameElementBase::openURL):
13369 (WebCore::HTMLFrameElementBase::willRemove):
13370 * html/HTMLInputElement.cpp:
13371 (WebCore::HTMLInputElement::setValueFromRenderer):
13372 * html/HTMLLinkElement.cpp:
13373 (WebCore::HTMLLinkElement::process):
13374 * html/HTMLParser.cpp:
13375 (WebCore::HTMLParser::handleError):
13376 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
13377 * html/HTMLPreElement.idl:
13378 * html/HTMLScriptElement.cpp:
13379 (WebCore::HTMLScriptElement::parseMappedAttribute):
13380 (WebCore::HTMLScriptElement::insertedIntoDocument):
13381 * html/HTMLTokenizer.cpp:
13382 (WebCore::HTMLTokenizer::scriptExecution):
13383 (WebCore::HTMLTokenizer::parseTag):
13384 (WebCore::HTMLTokenizer::write):
13385 (WebCore::HTMLTokenizer::stopParsing):
13386 (WebCore::HTMLTokenizer::timerFired):
13387 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
13388 (WebCore::KCanvasFilterQuartz::prepareFilter):
13389 * ksvg2/svg/SVGAElement.cpp:
13390 (WebCore::SVGAElement::defaultEventHandler):
13391 * ksvg2/svg/SVGElement.cpp:
13392 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
13393 * loader/DocLoader.cpp:
13394 (WebCore::DocLoader::setLoadInProgress):
13395 * loader/FrameLoader.cpp:
13396 (WebCore::FormSubmission::FormSubmission):
13397 (WebCore::ScheduledRedirection::):
13398 (WebCore::ScheduledRedirection::ScheduledRedirection):
13399 (WebCore::cancelAll):
13400 (WebCore::getString):
13401 (WebCore::isBackForwardLoadType):
13402 (WebCore::numRequests):
13403 (WebCore::FrameLoader::FrameLoader):
13404 (WebCore::FrameLoader::~FrameLoader):
13405 (WebCore::FrameLoader::createWindow):
13406 (WebCore::FrameLoader::changeLocation):
13407 (WebCore::FrameLoader::urlSelected):
13408 (WebCore::FrameLoader::requestFrame):
13409 (WebCore::FrameLoader::loadSubframe):
13410 (WebCore::FrameLoader::submitFormAgain):
13411 (WebCore::FrameLoader::submitForm):
13412 (WebCore::FrameLoader::stopLoading):
13413 (WebCore::FrameLoader::stop):
13414 (WebCore::FrameLoader::closeURL):
13415 (WebCore::FrameLoader::cancelRedirection):
13416 (WebCore::FrameLoader::iconURL):
13417 (WebCore::FrameLoader::didOpenURL):
13418 (WebCore::FrameLoader::didExplicitOpen):
13419 (WebCore::FrameLoader::replaceContentsWithScriptResult):
13420 (WebCore::FrameLoader::executeScript):
13421 (WebCore::FrameLoader::cancelAndClear):
13422 (WebCore::FrameLoader::clear):
13423 (WebCore::FrameLoader::receivedFirstData):
13424 (WebCore::FrameLoader::responseMIMEType):
13425 (WebCore::FrameLoader::setResponseMIMEType):
13426 (WebCore::FrameLoader::begin):
13427 (WebCore::FrameLoader::write):
13428 (WebCore::FrameLoader::end):
13429 (WebCore::FrameLoader::endIfNotLoading):
13430 (WebCore::FrameLoader::startIconLoader):
13431 (WebCore::FrameLoader::commitIconURLToIconDatabase):
13432 (WebCore::FrameLoader::gotoAnchor):
13433 (WebCore::FrameLoader::finishedParsing):
13434 (WebCore::FrameLoader::loadDone):
13435 (WebCore::FrameLoader::checkCompleted):
13436 (WebCore::FrameLoader::checkEmitLoadEvent):
13437 (WebCore::FrameLoader::baseURL):
13438 (WebCore::FrameLoader::baseTarget):
13439 (WebCore::FrameLoader::completeURL):
13440 (WebCore::FrameLoader::scheduleRedirection):
13441 (WebCore::FrameLoader::scheduleLocationChange):
13442 (WebCore::FrameLoader::scheduleRefresh):
13443 (WebCore::FrameLoader::isScheduledLocationChangePending):
13444 (WebCore::FrameLoader::scheduleHistoryNavigation):
13445 (WebCore::FrameLoader::redirectionTimerFired):
13446 (WebCore::FrameLoader::encoding):
13447 (WebCore::FrameLoader::requestObject):
13448 (WebCore::FrameLoader::shouldUsePlugin):
13449 (WebCore::FrameLoader::loadPlugin):
13450 (WebCore::FrameLoader::clearRecordedFormValues):
13451 (WebCore::FrameLoader::recordFormValue):
13452 (WebCore::FrameLoader::parentCompleted):
13453 (WebCore::FrameLoader::outgoingReferrer):
13454 (WebCore::FrameLoader::lastModified):
13455 (WebCore::FrameLoader::opener):
13456 (WebCore::FrameLoader::setOpener):
13457 (WebCore::FrameLoader::openedByJavaScript):
13458 (WebCore::FrameLoader::setOpenedByJavaScript):
13459 (WebCore::FrameLoader::handleFallbackContent):
13460 (WebCore::FrameLoader::provisionalLoadStarted):
13461 (WebCore::FrameLoader::userGestureHint):
13462 (WebCore::FrameLoader::didNotOpenURL):
13463 (WebCore::FrameLoader::resetMultipleFormSubmissionProtection):
13464 (WebCore::FrameLoader::setEncoding):
13465 (WebCore::FrameLoader::addData):
13466 (WebCore::FrameLoader::canCachePage):
13467 (WebCore::FrameLoader::updatePolicyBaseURL):
13468 (WebCore::FrameLoader::setPolicyBaseURL):
13469 (WebCore::FrameLoader::scrollToAnchor):
13470 (WebCore::FrameLoader::isComplete):
13471 (WebCore::FrameLoader::isLoadingMainResource):
13472 (WebCore::FrameLoader::url):
13473 (WebCore::FrameLoader::startRedirectionTimer):
13474 (WebCore::FrameLoader::stopRedirectionTimer):
13475 (WebCore::FrameLoader::updateBaseURLForEmptyDocument):
13476 (WebCore::FrameLoader::completed):
13477 (WebCore::FrameLoader::started):
13478 (WebCore::FrameLoader::containsPlugins):
13479 (WebCore::FrameLoader::prepareForLoadStart):
13480 (WebCore::FrameLoader::setupForReplace):
13481 (WebCore::FrameLoader::setupForReplaceByMIMEType):
13482 (WebCore::FrameLoader::finalSetupForReplace):
13483 (WebCore::FrameLoader::load):
13484 (WebCore::FrameLoader::canTarget):
13485 (WebCore::FrameLoader::stopLoadingPlugIns):
13486 (WebCore::FrameLoader::stopLoadingSubresources):
13487 (WebCore::FrameLoader::stopLoadingSubframes):
13488 (WebCore::FrameLoader::stopAllLoaders):
13489 (WebCore::FrameLoader::cancelMainResourceLoad):
13490 (WebCore::FrameLoader::cancelPendingArchiveLoad):
13491 (WebCore::FrameLoader::activeDocumentLoader):
13492 (WebCore::FrameLoader::addPlugInStreamLoader):
13493 (WebCore::FrameLoader::removePlugInStreamLoader):
13494 (WebCore::FrameLoader::hasMainResourceLoader):
13495 (WebCore::FrameLoader::isLoadingSubresources):
13496 (WebCore::FrameLoader::isLoadingPlugIns):
13497 (WebCore::FrameLoader::isLoading):
13498 (WebCore::FrameLoader::addSubresourceLoader):
13499 (WebCore::FrameLoader::removeSubresourceLoader):
13500 (WebCore::FrameLoader::releaseMainResourceLoader):
13501 (WebCore::FrameLoader::setDocumentLoader):
13502 (WebCore::FrameLoader::documentLoader):
13503 (WebCore::FrameLoader::setPolicyDocumentLoader):
13504 (WebCore::FrameLoader::provisionalDocumentLoader):
13505 (WebCore::FrameLoader::setProvisionalDocumentLoader):
13506 (WebCore::FrameLoader::state):
13507 (WebCore::FrameLoader::timeOfLastCompletedLoad):
13508 (WebCore::FrameLoader::setState):
13509 (WebCore::FrameLoader::clearProvisionalLoad):
13510 (WebCore::FrameLoader::markLoadComplete):
13511 (WebCore::FrameLoader::commitProvisionalLoad):
13512 (WebCore::FrameLoader::privateBrowsingEnabled):
13513 (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
13514 (WebCore::FrameLoader::clientRedirected):
13515 (WebCore::FrameLoader::shouldReload):
13516 (WebCore::FrameLoader::closeOldDataSources):
13517 (WebCore::FrameLoader::open):
13518 (WebCore::FrameLoader::isStopping):
13519 (WebCore::FrameLoader::finishedLoading):
13520 (WebCore::FrameLoader::URL):
13521 (WebCore::FrameLoader::isArchiveLoadPending):
13522 (WebCore::FrameLoader::isHostedByObjectElement):
13523 (WebCore::FrameLoader::isLoadingMainFrame):
13524 (WebCore::FrameLoader::canShowMIMEType):
13525 (WebCore::FrameLoader::representationExistsForURLScheme):
13526 (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
13527 (WebCore::FrameLoader::cancelContentPolicyCheck):
13528 (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
13529 (WebCore::FrameLoader::finishedLoadingDocument):
13530 (WebCore::FrameLoader::isReplacing):
13531 (WebCore::FrameLoader::setReplacing):
13532 (WebCore::FrameLoader::revertToProvisional):
13533 (WebCore::FrameLoader::subframeIsLoading):
13534 (WebCore::FrameLoader::willChangeTitle):
13535 (WebCore::FrameLoader::loadType):
13536 (WebCore::FrameLoader::stopPolicyCheck):
13537 (WebCore::FrameLoader::continueAfterContentPolicy):
13538 (WebCore::FrameLoader::continueAfterWillSubmitForm):
13539 (WebCore::FrameLoader::didFirstLayout):
13540 (WebCore::FrameLoader::frameLoadCompleted):
13541 (WebCore::FrameLoader::firstLayoutDone):
13542 (WebCore::FrameLoader::isQuickRedirectComing):
13543 (WebCore::FrameLoader::closeDocument):
13544 (WebCore::FrameLoader::detachChildren):
13545 (WebCore::FrameLoader::checkLoadComplete):
13546 (WebCore::FrameLoader::numPendingOrLoadingRequests):
13547 (WebCore::FrameLoader::setClient):
13548 (WebCore::FrameLoader::client):
13549 (WebCore::FrameLoader::userAgent):
13550 (WebCore::FrameLoader::createEmptyDocument):
13551 (WebCore::FrameLoader::tokenizerProcessedData):
13552 (WebCore::FrameLoader::didTellBridgeAboutLoad):
13553 (WebCore::FrameLoader::haveToldBridgeAboutLoad):
13554 (WebCore::FrameLoader::handledOnloadEvents):
13555 (WebCore::FrameLoader::frameDetached):
13556 (WebCore::FrameLoader::setTitle):
13557 (WebCore::FrameLoaderClient::~FrameLoaderClient):
13558 * loader/FrameLoader.h:
13560 * loader/FrameLoaderClient.h:
13561 * loader/PluginDocument.cpp:
13562 (WebCore::PluginTokenizer::createDocumentStructure):
13563 (WebCore::PluginTokenizer::writeRawData):
13564 * loader/ResourceLoader.h:
13565 * loader/TextResourceDecoder.cpp:
13566 (WebCore::TextResourceDecoder::checkForHeadCharset):
13567 * loader/icon/IconLoader.cpp:
13568 (WebCore::IconLoader::startLoading):
13569 (WebCore::IconLoader::finishLoading):
13570 * loader/loader.cpp:
13571 (WebCore::Loader::didReceiveResponse):
13572 * loader/mac/DocumentLoaderMac.mm:
13573 (WebCore::DocumentLoader::~DocumentLoader):
13574 (WebCore::DocumentLoader::stopLoading):
13575 (WebCore::DocumentLoader::finishedLoading):
13576 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
13577 (WebCore::DocumentLoader::setPrimaryLoadComplete):
13578 * loader/mac/FrameLoaderMac.mm:
13579 (WebCore::FrameLoader::load):
13580 (WebCore::FrameLoader::startLoading):
13581 (WebCore::FrameLoader::cancelMainResourceLoad):
13582 (WebCore::FrameLoader::receivedMainResourceError):
13583 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
13584 (WebCore::FrameLoader::commitProvisionalLoad):
13585 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
13586 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
13587 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
13588 (WebCore::FrameLoader::detachFromParent):
13589 (WebCore::FrameLoader::addExtraFieldsToRequest):
13590 (WebCore::FrameLoader::loadResourceSynchronously):
13591 (WebCore::FrameLoader::createFrame):
13592 (WebCore::FrameLoader::objectContentType):
13593 (WebCore::nsArray):
13594 (WebCore::FrameLoader::createPlugin):
13595 (WebCore::FrameLoader::redirectDataToPlugin):
13596 (WebCore::FrameLoader::createJavaAppletWidget):
13597 (WebCore::FrameLoader::partClearedInBegin):
13598 (WebCore::FrameLoader::saveDocumentState):
13599 (WebCore::FrameLoader::restoreDocumentState):
13600 (WebCore::FrameLoader::overrideMediaType):
13601 (WebCore::FrameLoader::mainResourceData):
13602 (WebCore::FrameLoader::canGoBackOrForward):
13603 (WebCore::FrameLoader::originalRequestURL):
13604 (WebCore::FrameLoader::getHistoryLength):
13605 (WebCore::FrameLoader::goBackOrForward):
13606 (WebCore::FrameLoader::historyURL):
13607 (WebCore::FrameLoader::didFinishLoad):
13608 * loader/mac/LoaderFunctionsMac.mm:
13609 (WebCore::ServeSynchronousRequest):
13610 (WebCore::CheckCacheObjectStatus):
13611 * loader/mac/ResourceLoaderMac.mm:
13612 (WebCore::ResourceLoader::cancel):
13613 * loader/mac/SubresourceLoaderMac.mm:
13614 (WebCore::SubresourceLoader::create):
13615 * loader/qt/FrameLoaderQt.cpp: Added.
13616 (WebCore::FrameLoader::submitForm):
13617 (WebCore::FrameLoader::urlSelected):
13618 (WebCore::FrameLoader::setTitle):
13619 (WebCore::FrameLoader::createFrame):
13620 (WebCore::FrameLoader::objectContentType):
13621 (WebCore::FrameLoader::createPlugin):
13622 (WebCore::FrameLoader::createJavaAppletWidget):
13623 (WebCore::FrameLoader::originalRequestURL):
13624 * page/DOMWindow.cpp:
13625 (WebCore::DOMWindow::document):
13627 (WebCore::Frame::~Frame):
13628 (WebCore::Frame::reparseConfiguration):
13629 (WebCore::Frame::shouldDragAutoNode):
13630 (WebCore::Frame::prepareForUserAction):
13631 (WebCore::FramePrivate::FramePrivate):
13632 (WebCore::FramePrivate::~FramePrivate):
13634 * page/FramePrivate.h:
13635 * page/FrameView.cpp:
13636 (WebCore::FrameView::layout):
13637 (WebCore::FrameView::mediaType):
13638 * page/FrameView.h:
13639 * page/PageState.cpp:
13640 (WebCore::PageState::PageState):
13641 (WebCore::PageState::restoreJavaScriptState):
13642 * platform/mac/CookieJar.mm:
13643 (WebCore::setCookies):
13644 * platform/mac/TextCodecMac.cpp:
13645 * platform/mac/WebFontCache.mm:
13646 (+[WebFontCache fontWithFamily:traits:size:]):
13647 * platform/network/cf/ResourceHandleCFNet.cpp:
13648 (WebCore::ResourceHandle::start):
13649 * platform/network/mac/ResourceHandleMac.mm:
13650 (WebCore::ResourceHandle::start):
13651 * platform/qt/FrameQt.cpp:
13652 * platform/qt/FrameQt.h:
13653 * rendering/RenderApplet.cpp:
13654 (WebCore::RenderApplet::createWidgetIfNecessary):
13655 * rendering/RenderBlock.h:
13656 * rendering/RenderPartObject.cpp:
13657 (WebCore::isURLAllowed):
13658 (WebCore::RenderPartObject::updateWidget):
13659 * xml/DOMParser.cpp:
13660 (WebCore::DOMParser::parseFromString):
13661 * xml/XSLTProcessor.cpp:
13662 (WebCore::XSLTProcessor::createDocumentFromSource):
13663 * xml/xmlhttprequest.cpp:
13664 (WebCore::XMLHttpRequest::getResponseXML):
13666 2006-11-07 Anders Carlsson <acarlsson@apple.com>
13670 Get rid of some duplicate editing enums. Also rename EAlter to EAlteration.
13672 * bridge/mac/FrameMac.mm:
13673 (WebCore::FrameMac::registerCommandForUndoOrRedo):
13674 * bridge/mac/WebCoreFrameBridge.h:
13675 * bridge/mac/WebCoreFrameBridge.mm:
13676 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
13677 (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::direction:SelectionController::granularity:]):
13678 (-[WebCoreFrameBridge alterCurrentSelection:SelectionController::verticalDistance:]):
13679 (-[WebCoreFrameBridge selectionGranularity]):
13680 (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
13681 (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
13682 (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
13683 (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
13684 (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
13685 * editing/SelectionController.cpp:
13686 (WebCore::SelectionController::setModifyBias):
13687 (WebCore::SelectionController::modify):
13688 * editing/SelectionController.h:
13689 (WebCore::SelectionController::):
13690 * editing/TextGranularity.h:
13692 2006-11-07 Brady Eidson <beidson@apple.com>
13696 Changed the check for "top level frame" to something much more valid
13699 (WebCore::Frame::endIfNotLoading):
13701 2006-11-07 Beth Dakin <bdakin@apple.com>
13703 Reviewed by Hyatt (yesterday).
13705 Here is part of my patch from yesterday that is safe to roll back
13706 in. It will make the BuildBot happy.
13708 * rendering/HitTestResult.cpp:
13709 (WebCore::HitTestResult::spellingToolTip): Null-check
13710 m_innerNonSharedNode.
13712 2006-11-07 Darin Adler <darin@apple.com>
13714 * loader/icon/IconLoader.cpp: (WebCore::IconLoader::didReceiveResponse):
13715 Comment grammar fix.
13717 2006-11-07 Darin Adler <darin@apple.com>
13719 Rolled out change for <rdar://problem/4820814>.
13721 Beth's planning on landing a new change for it soon, but in the mean time
13722 we need layout tests succeeding again.
13724 2006-11-07 Darin Adler <darin@apple.com>
13728 - fix <rdar://problem/4752069> 9A274: World of Warcraft Launcher
13729 crashes on launch in WebCore::ResourceLoader::start
13731 No layout test, because this depends on cached icons, although there's
13732 perhaps a way to write a test for it with some further ingenuity.
13734 * loader/icon/IconLoader.h: Make IconLoader inherit from Noncopyable
13735 to make explicit the fact that it can't be successfully copied.
13736 Remove notifyIconChanged function and put the contents in the caller.
13737 This eliminates the need for IconLoaderMac.mm. Added finishedLoading
13738 and clearLoadingState functions to share code. Removed m_url, since the
13739 resource handle already stores the URL. Renamed m_resourceLoader to
13740 m_handle to reflect the class's name change. Removed the 4096-byte
13741 inline buffer from m_data, since the malloc savings is not sufficient
13742 to offset the additional memory use. Removed m_httpStatusCode because
13743 we can instead cancel the load when we get a status code that reflects
13744 failure. Added m_loadIsInProgress boolean because we need to detect
13745 loads that complete during the ResourceHandle::create function call.
13747 * loader/icon/IconLoader.cpp:
13748 (WebCore::IconLoader::IconLoader): Initialize m_loadIsInProgress.
13749 Don't initialize m_httpStatusCode.
13750 (WebCore::IconLoader::~IconLoader): Updated for name change.
13751 (WebCore::IconLoader::startLoading): Added code to use the
13752 m_loadIsInProgress flag to detect if the load completed while inside
13753 the ResourceHandle::create function. Removed code to set m_url.
13754 (WebCore::IconLoader::stopLoading): Call clearLoadingState to share
13756 (WebCore::IconLoader::didReceiveResponse): Kill the ResourceHandle
13757 and finish loading if the HTTP status code indicates failure.
13758 (WebCore::IconLoader::didReceiveData): Removed assertion that checks
13759 the ResourceHandle, since we can't do that any more.
13760 (WebCore::IconLoader::didFinishLoading): Changed to call finishLoading
13761 so we can share code with the new didReceiveResponse code path.
13762 (WebCore::IconLoader::finishLoading): Moved code here from the
13763 didFinishLoading callback. Pass a URL when calling
13764 commitIconURLToIconDatabase. Call notifyIconChanged directly here
13765 instead of using a separate function. Call clearLoadingState to
13766 share more code with stopLoading.
13767 (WebCore::IconLoader::clearLoadingState): Added.
13769 * loader/mac/IconLoaderMac.mm: Removed.
13770 * WebCore.xcodeproj/project.pbxproj: Removed IconLoaderMac.mm.
13772 2006-11-06 David Harrison <harrison@apple.com>
13776 <rdar://problem/4714993> REGRESSION: After replacing a misspelled word in a sentence, the selected word wraps down to next line (10428)
13778 * editing/pasteboard/3976872-expected.txt:
13779 * editing/pasteboard/4076267-2-expected.txt:
13780 * editing/pasteboard/4076267-3-expected.txt:
13781 * editing/pasteboard/4076267-expected.txt:
13782 * editing/pasteboard/8145-1-expected.txt:
13783 * editing/pasteboard/paste-empty-startcontainer-expected.txt: Removed.
13784 * editing/pasteboard/paste-match-style-001-expected.txt:
13785 * editing/pasteboard/paste-match-style-002-expected.txt:
13786 * editing/pasteboard/paste-text-019-expected.txt:
13787 * editing/pasteboard/pasting-tabs-expected.txt:
13788 Updated because pasting text with no newlines does not use intermediate div.
13790 * editing/markup.cpp:
13791 (WebCore::fillContainerFromString):
13792 First parameter is now a Container so a fragment can be passed.
13794 (WebCore::createFragmentFromText):
13795 A string with no newlines gets added inline, rather than being put into a paragraph.
13797 2006-11-06 Beth Dakin <bdakin@apple.com>
13801 Fix for <rdar://problem/4820814> A crash occurs at
13802 WebCore::HitTestResult::spellingToolTip() when mousing down on
13803 iframe at www.macsurfer.com
13805 The bug here is that the source of the iframe is only a comment,
13806 and we were not properly constructing the frame because it was
13807 sort-of empty but not.
13809 * html/HTMLDocument.cpp:
13810 (WebCore::HTMLDocument::childAllowed): newChild is NOT allowed if
13811 it is a comment node.
13812 * html/HTMLParser.cpp:
13813 (WebCore::HTMLParser::handleError): if n is a comment node and
13814 there is no head, we create a head, insert in the document, and add
13815 the comment node as a child. This is what Firefox does too.
13816 * page/FrameView.cpp:
13817 (WebCore::FrameView::handleMousePressEvent): Safe-guard for the
13818 fix. It is possible to get a mouse event without a target node, so
13819 we null check it. (Of course, in the case of this bug, it should
13820 not have been null, but it is a good thing to check for anyway.
13821 * rendering/HitTestResult.cpp:
13822 (WebCore::HitTestResult::spellingToolTip): Null-check
13823 m_innerNonSharedNode.
13825 2006-11-06 Justin Garcia <justin.garcia@apple.com>
13827 Reviewed by harrison
13829 <rdar://problem/4641880>
13830 Setting bullets to existing text grabs subsequent paragraph
13832 When a selection ends at the start of a paragraph, we rarely paint
13833 the selection gap before that paragraph, because there often is no gap.
13834 In a case like this, it's not obvious to the user that the selection
13835 ends "inside" that paragraph, so it would be confusing if
13836 InsertUn{Ordered}List and Indent/Outdent operated on that paragraph.
13838 * editing/FormatBlockCommand.cpp:
13839 (WebCore::FormatBlockCommand::doApply): Moved the check for editability of
13840 the selection to a more appropriate place. Change the endingSelection
13841 if it ends at the start of a paragraph.
13842 * editing/IndentOutdentCommand.cpp:
13843 (WebCore::IndentOutdentCommand::doApply): Ditto.
13844 * editing/InsertListCommand.cpp:
13845 (WebCore::InsertListCommand::doApply): Ditto.
13847 2006-11-06 Brady Eidson <beidson@apple.com>
13851 <rdar://problem/4822911> - ASSERTION was a little overzealous.
13852 Toned it down a bit.
13854 * xml/xmlhttprequest.cpp:
13855 (WebCore::XMLHttpRequest::didFinishLoading): Toned down assertion
13857 2006-11-06 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
13859 Reviewed by Maciej.
13861 Linux\Gdk build fixes.
13863 * loader/icon/IconDatabase.cpp:
13864 * loader/icon/SQLStatement.h:
13865 * platform/gdk/ChromeClientGdk.h: Added.
13866 (WebCore::ChromeClientGdk::~ChromeClientGdk):
13867 * platform/gdk/CursorGdk.cpp:
13868 (WebCore::pointerCursor):
13869 * platform/gdk/FrameGdk.cpp:
13870 (WebCore::doScroll):
13871 (WebCore::FrameGdk::FrameGdk):
13872 (WebCore::FrameGdk::submitForm):
13873 (WebCore::FrameGdk::urlSelected):
13874 (WebCore::FrameGdk::openURL):
13875 (WebCore::FrameGdk::handleGdkEvent):
13876 * platform/gdk/FrameGdk.h:
13877 (WebCore::FrameGdk::client):
13878 * platform/gdk/RenderPopupMenuGdk.cpp:
13879 (WebCore::PopupMenu::updateFromElement):
13880 * platform/gdk/ScreenGdk.cpp:
13881 * platform/gdk/TemporaryLinkStubs.cpp:
13882 (Slider::focusPolicy):
13883 (WebCore::ServeSynchronousRequest):
13884 (FrameGdk::goBackOrForward):
13885 (FrameGdk::getHistoryLength):
13886 (FrameGdk::historyURL):
13887 (ChromeClientGdk::canRunModal):
13888 (ChromeClientGdk::runModal):
13889 (WebCore::systemBeep):
13890 (WebCore::CachedResource::setPlatformResponse):
13892 (ResourceLoader::loadsBlocked):
13893 (IconLoader::notifyIconChanged):
13894 * platform/network/gdk/ResourceHandleManager.cpp:
13895 (WebCore::writeCallback):
13896 (WebCore::ResourceHandleManager::downloadTimerCallback):
13897 (WebCore::ResourceHandleManager::remove):
13898 (WebCore::ResourceHandleManager::add):
13900 2006-11-06 Geoffrey Garen <ggaren@apple.com>
13904 * WebCore.xcodeproj/project.pbxproj:
13906 2006-11-06 Geoffrey Garen <ggaren@apple.com>
13908 Reviewed by Maciej, Anders, Darin.
13910 Removed the Page bridge. Beefed up Chrome. Added Screen and ScreenClient.
13911 Fixed a minor where WebCore would always assume it was displayed on the
13912 monitor containing the menubar. window.open and window.showModalDialog
13913 are now cross-platform.
13915 Layout tests, manual-tests/show-modal-dialog, and manual-tests/
13916 window-open-features-parsing all pass. I verified the new screen functionality
13917 by running in DRT, and checking whether WebCore knew it was off-screen.
13919 Some refactoring remains, as all were not pleased by this design. I see
13920 in my future another patch.
13922 * bindings/js/kjs_window.cpp: Screen is now a stand-alone object with a
13923 client, to encapsulate asking the platform questions about the screen occupied by
13924 the page. (Previously, we always assumed we were on screen 0, which was a bug.)
13925 * bridge/mac/WebCoreFrameBridge.mm:
13926 (createMouseEventFromDraggingInfo): Reversed argument order, to match other
13928 (-[WebCoreFrameBridge dragSourceMovedTo:]): ditto
13929 (-[WebCoreFrameBridge dragSourceEndedAt:operation:]): ditto
13930 * bridge/mac/WebCoreFrameNamespaces.h: Removed. Dead Code.
13931 * bridge/mac/WebCoreFrameNamespaces.mm: Removed. Dead Code.
13932 * bridge/mac/WebCorePageBridge.h: Removed. Dead Code.
13933 * bridge/mac/WebCorePageBridge.mm: Removed. Dead Code.
13934 * manual-tests/window-open-features-parsing.html: Updated for accuracy.
13935 (In this case, neither size nor position is specified, so you should
13936 get the default window size and position.)
13937 * page/Screen.cpp: Added. Includes screen-related helper functions used
13938 in WebCore and WebKit.
13939 * platform/PlatformMouseEvent.h: Exported common code so it doesn't have
13940 to be duplicated. Renamed "position" to "point" since both were used,
13941 and "point" seemed clearer.
13942 * platform/Screen.h: Removed. Dead Code.
13943 * platform/mac/LoggingMac.mm: Added. Moved code here from WebCorePageBridge
13946 2006-11-06 Graham Dennis <graham.dennis@gmail.com>
13948 Reviewed by Tim Hatcher.
13950 Part of patch for http://bugs.webkit.org/show_bug.cgi?id=11323
13951 Link dragging behaviour does not obey WebKitEditableLinkBehavior WebPref
13953 No layout tests added as this must be tested manually by the test
13954 WebCore/manual-tests/contenteditable-link.html
13956 * WebCore.exp: Exported HitTestResult::isLiveLink().
13957 * html/HTMLAnchorElement.cpp:
13958 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
13959 (WebCore::HTMLAnchorElement::defaultEventHandler):
13960 (WebCore::HTMLAnchorElement::isLiveLink):
13961 * html/HTMLAnchorElement.h: added m_wasShiftKeyDownOnMouseDown variable
13962 to track shift key status.
13963 * manual-tests/contenteditable-link.html: Added description about link
13964 dragging behaviour.
13965 * rendering/HitTestResult.cpp:
13966 (WebCore::HitTestResult::isLiveLink): Added.
13967 * rendering/HitTestResult.h:
13969 2006-11-06 Brady Eidson <beidson@apple.com>
13973 Fixes <rdar://problem/4812674> and http://bugs.webkit.org/show_bug.cgi?id=11530
13974 For now, we have to not load favicons when we have no Document - linking directly
13975 to PDFs being the common case
13977 * loader/icon/IconLoader.cpp:
13978 (WebCore::IconLoader::startLoading): Check for the document and return if none
13980 2006-11-06 Brady Eidson <beidson@apple.com>
13982 Reviewed by Dave Harrison
13984 <rdar://problem/4801066>
13985 Added a critical null frameLoader() check
13987 * loader/mac/MainResourceLoaderMac.mm:
13988 (WebCore::MainResourceLoader::loadNow):
13990 2006-11-06 David Harrison <harrison@apple.com>
13994 <rdar://problem/4813973> Pressing delete key to remove empty quoted line leaves cursor mis-positioned
13997 * editing/deleting/delete-br-012.html
13999 * editing/DeleteSelectionCommand.cpp:
14000 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
14001 Update m_endingPosition when preventing merge.
14002 Also removed setting of m_mergeBlocksAfterDelete when this function returns true, because is is not checked in this case.
14004 2006-11-06 Mark Rowe <bdash@webkit.org>
14006 Reviewed by Maciej.
14008 http://bugs.webkit.org/show_bug.cgi?id=11526
14009 Bug 11526: REGRESSION(r17610): Layout test failure in svg/custom/create-metadata-element.svg
14011 Update DOMNode::toString to always use className rather than preferring nodeName.
14013 * bindings/js/kjs_dom.cpp:
14014 (KJS::DOMNode::toString): Match the format returned by valueOf.
14016 2006-11-06 Oliver Hunt <oliver@apple.com>
14018 Reviewed by Maciej.
14020 Fix RTL text in SVG to have correct positioning
14022 * rendering/SVGRootInlineBox.cpp:
14023 (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
14025 2006-11-06 Alexey Proskuryakov <ap@webkit.org>
14027 Reviewed by Maciej.
14029 http://bugs.webkit.org/show_bug.cgi?id=11517
14030 REGRESSION: Flash clicks/interactivity not working properly
14032 * bridge/mac/FrameMac.mm:
14033 (WebCore::FrameMac::handleMouseMoveEvent):
14034 (WebCore::FrameMac::handleMouseReleaseEvent):
14035 Restore parts of event dispatching that were removed when fixing
14036 bug 7323 - just bypass those for subframes.
14038 2006-11-05 Darin Adler <darin@apple.com>
14040 - quick attempt to fix the no-SVG build
14042 * platform/graphics/svg/SVGResource.cpp:
14043 * platform/graphics/svg/SVGResource.h:
14044 * platform/graphics/svg/SVGResourceClipper.cpp:
14045 * platform/graphics/svg/SVGResourceClipper.h:
14046 * platform/graphics/svg/SVGResourceImage.h:
14047 * platform/graphics/svg/SVGResourceMarker.cpp:
14048 * platform/graphics/svg/SVGResourceMarker.h:
14049 * platform/graphics/svg/SVGResourceMasker.cpp:
14050 * platform/graphics/svg/SVGResourceMasker.h:
14051 * platform/graphics/svg/cg/SVGResourceMaskerCg.h:
14052 * platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
14053 * platform/graphics/svg/qt/SVGResourceImageQt.cpp:
14054 * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp:
14055 Added #ifdef SVG_SUPPORT to these files.
14057 2006-11-05 MorganL <morganl.webkit@yahoo.com>
14059 Reviewed & landed by Maciej.
14061 Fixes http://bugs.webkit.org/show_bug.cgi?id=11265
14063 * platform/win/ResourceLoaderWin.cpp:
14064 (WebCore::transferJobStatusCallback):
14065 (WebCore::ResourceLoader::start):
14067 2006-11-04 Maciej Stachowiak <mjs@apple.com>
14069 Reviewed by Oliver.
14071 - moved FormData and FormDataStream to platform/network directory
14073 * WebCore.xcodeproj/project.pbxproj:
14074 * bridge/mac/WebCoreFrameBridge.mm:
14075 * loader/FormData.cpp: Removed.
14076 * loader/FormData.h: Removed.
14077 * loader/mac/FormDataStream.h: Removed.
14078 * loader/mac/FormDataStream.m: Removed.
14079 * loader/mac/FrameLoaderMac.mm:
14080 * loader/mac/SubresourceLoaderMac.mm:
14081 * platform/network/mac/FormDataStreamMac.h: Added.
14082 * platform/network/mac/FormDataStreamMac.mm: Added.
14083 * platform/network/mac/ResourceRequestMac.mm:
14085 2006-11-05 Steve Falkenburg <sfalken@apple.com>
14089 * loader/DocumentLoader.h:
14090 * platform/win/ScreenWin.cpp:
14092 2006-11-05 Darin Adler <darin@apple.com>
14096 - more preparation for splitting up Frame into sub-pieces
14097 - removed unnecessary includes from Frame.h
14099 * page/Frame.h: Removed unneeded includes and forward declarations.
14100 Added additional forward declarations. Removed the constant
14101 NoXPosForVerticalArrowNavigation, now moved inside SelectionController.
14102 Created sections of functions to be moved into Chrome, Editor,
14103 EventHandler, FrameLoader, SelectionController, and the Platform
14104 directory, as well as marking one function for deletion.
14106 * page/FramePrivate.h: Removed the definition of the constructor and
14107 destructor and removed unnecessary includes.
14109 * page/FrameView.h: Removed unneeded forward declarations and friend
14110 declarations. Created a section of functions and data to be moved into
14113 * bridge/mac/FrameMac.h: Removed unneeded forward declarations.
14114 Created sections of functions and data to be moved into Chrome,
14115 Editor, EventHandler, FrameLoader, and the Platform directory.
14117 * bridge/mac/WebCoreFrameBridge.h: Removed obsolete comment.
14118 Removed unused methods areScrollbarsVisible,
14119 nextValidKeyViewOutsideWebFrameViews, and fileWrapperForURL:.
14122 (WebCore::Frame::begin): Added an overload, so Frame.h doesn't have
14123 to include KURL.h just for the KURL default constructor.
14124 (WebCore::FramePrivate::FramePrivate): Moved here from FramePrivate.h.
14125 (WebCore::FramePrivate::~FramePrivate): Ditto.
14127 * page/FrameView.cpp: Removed unused scrollbarMoved and scrollingSelf
14128 booleans, scrollbarMoved and cleared funcitons.
14129 (WebCore::FrameView::clear): Moved the code from the cleared
14131 (WebCore::FrameView::scrollTo): Removed code to set scrollingSelf.
14133 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac): Updated
14134 for changes to header.
14136 * editing/SelectionController.cpp:
14137 (WebCore::SelectionController::setSelection):
14138 (WebCore::SelectionController::xPosForVerticalArrowNavigation):
14139 Moved NoXPosForVerticalArrowNavigation into this file.
14141 * bindings/js/kjs_events.cpp:
14142 * bindings/js/kjs_html.cpp:
14143 * bindings/js/kjs_window.cpp:
14144 * bridge/mac/WebCoreAXObject.mm:
14145 * bridge/mac/WebCoreFrameBridge.mm:
14146 * css/cssstyleselector.cpp:
14147 * dom/Document.cpp:
14149 * dom/EventTargetNode.cpp:
14150 * dom/MouseRelatedEvent.cpp:
14151 * dom/XMLTokenizer.cpp:
14152 * html/HTMLBaseElement.cpp:
14153 * html/HTMLDocument.cpp:
14154 * html/HTMLEmbedElement.cpp:
14155 * html/HTMLFrameElementBase.cpp:
14156 * html/HTMLGenericFormElement.cpp:
14157 * html/HTMLObjectElement.cpp:
14158 * html/HTMLTokenizer.cpp:
14159 * loader/mac/FrameLoaderMac.mm:
14160 * page/PageState.cpp:
14161 * rendering/RenderApplet.cpp:
14162 * rendering/RenderBlock.cpp:
14163 * rendering/RenderLayer.cpp:
14164 * rendering/RenderObject.cpp:
14165 * rendering/RenderPartObject.cpp:
14166 * rendering/RenderTreeAsText.cpp:
14167 * xml/XSLTProcessor.cpp:
14168 Added includes as needed to keep compiling, since there are fewer
14169 includes in Frame.h.
14171 2006-11-05 Alexey Proskuryakov <ap@nypop.com>
14173 Reviewed by Dave Harrison.
14175 http://bugs.webkit.org/show_bug.cgi?id=11402
14176 REGRESSION: onChange does not work anymore for 1st item in popup
14178 * html/HTMLSelectElement.cpp:
14179 (WebCore::HTMLSelectElement::HTMLSelectElement):
14180 (WebCore::HTMLSelectElement::reset):
14181 Set m_lastOnChangeIndex to -1.
14183 2006-11-04 Darin Adler <darin@apple.com>
14185 Reviewed by Anders.
14187 - fix http://bugs.webkit.org/show_bug.cgi?id=11453
14188 REGRESSION: Status bar always shows cancelled opening the page
14190 * platform/network/mac/ResourceHandleMac.mm:
14191 (WebCore::ResourceHandle::~ResourceHandle): Removed call to cancel.
14192 Since the subresource owns the resource handle, there's no need to cancel.
14193 This arrangement is only temporary, anyway, since Maciej will soon change
14194 things so that the subresource loader uses the resource handle and the
14195 resource handle doesn't know anything about the subresource loader.
14197 2006-11-04 Darin Adler <darin@apple.com>
14199 Reviewed by Maciej.
14201 - converted more of the loader machinery to work with cross-platform
14202 data structures instead of Macintosh-specific ones
14204 converted most uses of NSURL to KURL and NSEvent to DOM Event in
14207 moved download function out of FrameLoader.h to avoid reference to
14210 added DOM Event parameters to various functions so that the handlers
14211 can use the DOM Event instead of the global "current NSEvent";
14212 includes Frame::submitForm, HTMLFormElement::prepareSubmit,
14213 HTMLFormElement::submit, FrameLoader::load
14215 moved the setMainFrame call that hands ownership to the Page
14216 into one of the Frame constructors, and removed it from all
14219 removed const from Event parameter to the urlSelected function
14220 (we rarely use const with DOM elements)
14222 removed some redundant includes and declarations from various
14225 removed NSURL parameter from userAgent function -- if we need it we
14226 can add it back, but converting from NSURL to KURL and back is
14227 inefficient enough that it's best to have it out for now (since it's
14228 been unused for years) -- if we add it back, we can choose an
14229 appropriate parameter type that's always inexpensive to pass
14231 did some basic cleanup in the IconLoader class, including removing
14232 an unnecessary loop that added icon data a byte at a time
14234 renamed safeLoad to load, since it's no different from the other
14235 FrameLoader load functions, safety-wise
14237 fixed some code that was trying to distinguish null frame name from
14238 empty string frame name -- both should be handled the same, but callers
14239 were doing it by checking for empty and turning it into null (in a way
14240 that was causing extra round trips between NSString and WebCore::String)
14242 corrected all uses of "get" and "post" to be uppercase "GET" and "POST"
14243 and got rid of case-insensitive compares of methods
14246 * WebCore.xcodeproj/project.pbxproj:
14247 * bindings/js/kjs_navigator.cpp:
14248 (KJS::Navigator::getValueProperty):
14249 * bridge/mac/FrameMac.h:
14250 * bridge/mac/FrameMac.mm:
14251 (WebCore::FrameMac::submitForm):
14252 (WebCore::FrameMac::urlSelected):
14253 (WebCore::FrameMac::userAgent):
14254 * bridge/mac/FrameViewMac.mm:
14255 * bridge/mac/WebCoreAXObject.mm:
14256 (-[WebCoreAXObject rendererForView:]):
14257 * bridge/mac/WebCorePageBridge.h:
14258 * bridge/mac/WebCorePageBridge.mm:
14259 * bridge/mac/WebCoreSettings.mm:
14260 * bridge/win/FrameWin.cpp:
14261 (WebCore::FrameWin::urlSelected):
14262 (WebCore::FrameWin::submitForm):
14263 * bridge/win/FrameWin.h:
14264 * dom/MouseRelatedEvent.cpp:
14265 * dom/MouseRelatedEvent.h:
14267 (WebCore::UIEvent::~UIEvent):
14269 * dom/UIEventWithKeyState.h:
14270 * dom/XMLTokenizer.cpp:
14271 (WebCore::openFunc):
14272 * html/HTMLAnchorElement.cpp:
14273 (WebCore::HTMLAnchorElement::defaultEventHandler):
14274 * html/HTMLButtonElement.cpp:
14275 (WebCore::HTMLButtonElement::defaultEventHandler):
14276 * html/HTMLFormElement.cpp:
14277 (WebCore::HTMLFormElement::submitClick):
14278 (WebCore::HTMLFormElement::prepareSubmit):
14279 (WebCore::HTMLFormElement::submit):
14280 * html/HTMLFormElement.h:
14281 * html/HTMLInputElement.cpp:
14282 (WebCore::HTMLInputElement::defaultEventHandler):
14283 * html/HTMLSelectElement.cpp:
14284 (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
14285 * loader/DocumentLoader.h:
14286 * loader/FrameLoader.h:
14287 * loader/FrameLoaderClient.h:
14288 * loader/NavigationAction.h:
14289 (WebCore::NavigationAction::event):
14290 * loader/icon/IconLoader.cpp:
14291 (WebCore::IconLoader::create):
14292 (WebCore::IconLoader::startLoading):
14293 (WebCore::IconLoader::didReceiveData):
14294 (WebCore::IconLoader::didFinishLoading):
14295 * loader/icon/IconLoader.h:
14296 * loader/loader.cpp:
14297 * loader/mac/DocumentLoaderMac.mm:
14298 (WebCore::DocumentLoader::URL):
14299 (WebCore::DocumentLoader::unreachableURL):
14300 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
14301 (WebCore::DocumentLoader::URLForHistory):
14302 * loader/mac/FrameLoaderMac.mm:
14303 (WebCore::FrameLoader::load):
14304 (WebCore::FrameLoader::willSendRequest):
14305 (WebCore::FrameLoader::clientRedirected):
14306 (WebCore::FrameLoader::shouldReload):
14307 (WebCore::FrameLoader::notifyIconChanged):
14308 (WebCore::FrameLoader::URL):
14309 (WebCore::FrameLoader::reloadAllowingStaleData):
14310 (WebCore::FrameLoader::reload):
14311 (WebCore::FrameLoader::didChangeTitle):
14312 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
14313 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
14314 (WebCore::FrameLoader::post):
14315 (WebCore::FrameLoader::addExtraFieldsToRequest):
14316 (WebCore::FrameLoader::loadResourceSynchronously):
14317 * loader/mac/IconLoaderMac.mm:
14318 (WebCore::IconLoader::notifyIconChanged):
14319 * loader/mac/LoaderFunctionsMac.mm:
14320 * loader/mac/MainResourceLoaderMac.mm:
14321 (WebCore::shouldLoadAsEmptyDocument):
14322 (WebCore::MainResourceLoader::continueAfterContentPolicy):
14323 * loader/mac/NavigationActionMac.mm:
14324 (WebCore::navigationType):
14325 (WebCore::NavigationAction::NavigationAction):
14326 * loader/mac/ResourceLoaderMac.mm:
14327 * loader/mac/SubresourceLoaderMac.mm:
14329 (WebCore::Frame::Frame):
14330 (WebCore::Frame::urlSelected):
14331 (WebCore::Frame::submitFormAgain):
14332 (WebCore::Frame::submitForm):
14333 (WebCore::Frame::endIfNotLoading):
14334 (WebCore::Frame::hitTestResultAtPoint):
14336 * page/FramePrivate.h:
14337 * platform/gdk/FrameGdk.cpp:
14338 (WebCore::FrameGdk::FrameGdk):
14339 (WebCore::FrameGdk::submitForm):
14340 (WebCore::FrameGdk::urlSelected):
14341 * platform/gdk/FrameGdk.h:
14342 * platform/mac/TextFieldMac.mm:
14343 * platform/network/HTTPHeaderMap.h:
14344 * platform/network/ResourceHandle.h:
14345 * platform/network/ResourceHandleClient.h:
14346 * platform/network/ResourceHandleInternal.h:
14347 * platform/network/mac/ResourceHandleMac.mm:
14348 * platform/network/mac/ResourceResponseMac.h:
14349 * platform/network/mac/ResourceResponseMac.mm:
14350 (-[NSURLResponse WebCore]):
14351 * platform/network/win/ResourceHandleWin.cpp:
14352 * platform/qt/FrameQt.cpp:
14353 (WebCore::FrameQt::submitForm):
14354 (WebCore::FrameQt::urlSelected):
14355 * platform/qt/FrameQt.h:
14356 * rendering/RenderLineEdit.cpp:
14357 (WebCore::RenderLineEdit::returnPressed):
14358 * xml/XSLTProcessor.cpp:
14359 (WebCore::docLoaderFunc):
14360 * xml/xmlhttprequest.cpp:
14362 2006-11-03 Maciej Stachowiak <mjs@apple.com>
14366 - replaced receivedRedirect with new willSendRequest delegate
14367 - removed most mac-specific loader functions
14368 - use ResourceResponse more in loader code
14370 * WebCore.xcodeproj/project.pbxproj: Add new files.
14371 * bridge/mac/WebCoreFrameBridge.mm:
14372 (-[WebCoreFrameBridge getData:andResponse:forURL:]): Adapted
14373 for CachedResource method renames.
14374 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
14376 * loader/CachedCSSStyleSheet.cpp:
14377 (WebCore::CachedCSSStyleSheet::checkNotify): simplified
14378 based on ResourceResponse
14379 * loader/CachedImage.cpp:
14380 (WebCore::CachedImage::createImage): adapt for ResourceResponse
14381 * loader/CachedResource.cpp:
14382 (WebCore::CachedResource::CachedResource): store a ResourceResponse;
14383 platform response is now called platformResponse and expiration date
14385 (WebCore::CachedResource::~CachedResource): ditto
14386 (WebCore::CachedResource::isExpired): ditto
14387 * loader/CachedResource.h:
14388 (WebCore::CachedResource::platformResponse): ditto
14389 (WebCore::CachedResource::setResponse): ditto
14390 (WebCore::CachedResource::canDelete): ditto
14391 * loader/LoaderFunctions.h:
14392 * loader/loader.cpp:
14393 (WebCore::Loader::receivedResponse): Adjusted for renames.
14394 (WebCore::Loader::didReceiveResponse): Store whole ResourceResponse
14395 in the CachedResource.
14397 * loader/mac/FormDataStream.h:
14398 * loader/mac/FormDataStream.m:
14399 (WebCore::getStreamFormDatas): Rearranged things so it's
14400 possible to get a FormData back out of a form data stream.
14401 (WebCore::formCreate): ditto
14402 (WebCore::formFinalize): ditto
14403 (WebCore::httpBodyFromStream): ditto
14404 * loader/mac/ImageDocumentMac.mm:
14405 (WebCore::finishImageLoad): s/response/platformResponse/
14406 * loader/mac/LoaderFunctionsMac.mm:
14407 (WebCore::CheckCacheObjectStatus): ditto
14408 (WebCore::CachedResource::setPlatformResponse): ditto
14409 * loader/mac/SubresourceLoaderMac.mm:
14410 (WebCore::SubresourceLoader::willSendRequest): send redirect
14411 to client appropriately
14412 * platform/network/ResourceHandle.h:
14413 * platform/network/ResourceHandleClient.h:
14414 (WebCore::ResourceHandleClient::willSendRequest): new entry
14415 point for SubresourceLoader, dispatch to client.
14416 * platform/network/ResourceRequest.h:
14417 (WebCore::ResourceRequest::allowHTTPCookies): implemented
14418 (WebCore::ResourceRequest::setAllowHTTPCookies): ditto
14419 * platform/network/ResourceResponse.h:
14420 (WebCore::ResourceResponse::ResourceResponse): initialize expiration
14422 * platform/network/cf/FormDataStreamCFNet.cpp: Added.
14423 (WebCore::getStreamFormDatas): Added this, ported from NSURL version.
14424 (WebCore::openNextStream): ditto
14425 (WebCore::formCreate): ditto
14426 (WebCore::formFinalize): ditto
14427 (WebCore::formCanRead): ditto
14428 (WebCore::formEventCallback): ditto
14429 (WebCore::setHTTPBody): ditto
14430 (WebCore::httpBodyFromStream): ditto
14431 * platform/network/cf/FormDataStreamCFNet.h: Added.
14432 * platform/network/cf/ResourceHandleCFNet.cpp:
14433 (WebCore::willSendRequest): implemented
14434 (WebCore::ResourceHandle::start): use new ResourceRequest stuff
14435 * platform/network/cf/ResourceResponseCFNet.cpp:
14436 (WebCore::getResourceResponse): do nothing for a null response
14437 * platform/network/mac/ResourceHandleMac.mm:
14438 (WebCore::ResourceHandle::willSendRequest): Implemented; dispatch to client.
14439 * platform/network/mac/ResourceRequestMac.h: Added.
14440 * platform/network/mac/ResourceRequestMac.mm: Added.
14441 (WebCore::getResourceRequest): Added way to convert an NSURLRequest
14442 to a ResourceRequest.
14443 (WebCore::nsURLRequest): Opposite of the above.
14444 * platform/network/cf/ResourceRequestCFNet.h: Added.
14445 * platform/network/cf/ResourceRequestCFNet.cpp: Added.
14446 (WebCore::getResourceRequest): Added way to convert an CFURLRequest
14447 to a ResourceRequest.
14448 (WebCore::cfURLRequest): Opposite of the above.
14449 * xml/xmlhttprequest.cpp:
14450 (WebCore::XMLHttpRequest::willSendRequest): Renamed from receivedRedirect,
14452 * xml/xmlhttprequest.h:
14454 2006-11-04 Darin Adler <darin@apple.com>
14456 Change suggested by Mitz.
14458 - fix http://bugs.webkit.org/show_bug.cgi?id=11514
14459 REGRESSION (r17438): Repro crash when opening a web archive
14461 * bridge/mac/WebCorePageState.mm:
14462 (-[WebCorePageState dealloc]): Add null check.
14463 (-[WebCorePageState finalize]): Ditto.
14465 2006-11-04 Bertrand Guiheneuf <guiheneuf@gmail.com>
14467 Reviewed by Maciej, tweaked and landed by Alexey (using a patch by Don Gibson).
14469 http://bugs.webkit.org/show_bug.cgi?id=11433
14470 Fixes to get WebKit to run on Windows; implemented AffineTransformCairo.
14472 * WebCore.vcproj/WebCore/WebCore.vcproj:
14473 Added platform/graphics platform/network and platform/network/win to headers search paths
14474 Created platform/graphics and platform/network filters in hierarchy
14475 Moved GraphicsContext and GraphicsTypes to their respective filters
14476 Added EditorClient.h
14477 Added FrameLoader* files in loader/
14478 Added HitTest* files in rendering/
14479 Added Editor.* files in editing/
14480 Added DeleteButton.* and DeleteButtonController.* in editing/
14482 * bridge/win/ChromeClientWin.h: Added.
14483 (WebCore::ChromeClientWin::~ChromeClientWin):
14484 * bridge/win/EditorClientWin.h: Added.
14485 (WebCore::EditorClientWin::~EditorClientWin):
14487 * bridge/win/FrameWin.cpp:
14488 (WebCore::FrameWin::FrameWin):
14489 (WebCore::FrameWin::urlSelected):
14490 (WebCore::FrameWin::submitForm):
14491 (WebCore::FrameWin::createNewWindow):
14492 * bridge/win/FrameWin.h:
14493 Added EditorClient parameter to constructor
14494 Replace usage of FrameLoadRequest::m_request with FrameLoadRequest::resourceRequest()
14495 Removed openURL() and openURLRequest from class definition
14497 * bridge/win/PageWin.cpp:
14498 * platform/AffineTransform.h:
14499 * platform/cairo/AffineTransformCairo.cpp: Added.
14500 (WebCore::AffineTransform::AffineTransform):
14501 (WebCore::AffineTransform::setMatrix):
14502 (WebCore::AffineTransform::map):
14503 (WebCore::AffineTransform::mapRect):
14504 (WebCore::AffineTransform::isIdentity):
14505 (WebCore::AffineTransform::m11):
14506 (WebCore::AffineTransform::m12):
14507 (WebCore::AffineTransform::m21):
14508 (WebCore::AffineTransform::m22):
14509 (WebCore::AffineTransform::dx):
14510 (WebCore::AffineTransform::dy):
14511 (WebCore::AffineTransform::reset):
14512 (WebCore::AffineTransform::scale):
14513 (WebCore::AffineTransform::rotate):
14514 (WebCore::AffineTransform::translate):
14515 (WebCore::AffineTransform::shear):
14516 (WebCore::AffineTransform::det):
14517 (WebCore::AffineTransform::invert):
14518 (WebCore::AffineTransform::operator cairo_matrix_t):
14519 (WebCore::AffineTransform::operator== ):
14520 (WebCore::AffineTransform::operator*= ):
14521 (WebCore::AffineTransform::operator* ):
14522 * platform/cairo/GraphicsContextCairo.cpp:
14523 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
14524 * platform/network/win/ResourceHandleWin.cpp:
14525 (WebCore::ResourceHandle::onHandleCreated):
14526 (WebCore::ResourceHandle::start):
14527 (WebCore::ResourceHandle::fileLoadTimer):
14528 (WebCore::ResourceHandle::cancel):
14529 * platform/win/TemporaryLinkStubs.cpp:
14530 (WebCore::FrameWin::goBackOrForward):
14531 (WebCore::FrameWin::getHistoryLength):
14532 (WebCore::FrameWin::historyURL):
14533 (WebCore::ServeSynchronousRequest):
14534 (WebCore::ChromeClientWin::canRunModal):
14535 (WebCore::ChromeClientWin::runModal):
14536 (WebCore::EditorClientWin::shouldDeleteRange):
14537 (WebCore::EditorClientWin::shouldShowDeleteInterface):
14538 (WebCore::EditorClientWin::isContinuousSpellCheckingEnabled):
14539 (WebCore::EditorClientWin::isGrammarCheckingEnabled):
14540 (WebCore::EditorClientWin::spellCheckerDocumentTag):
14541 (WebCore::Path::transform):
14542 (WebCore::PopupMenu::updateFromElement):
14543 (WebCore::ResourceLoader::loadsBlocked):
14544 (WebCore::systemBeep):
14545 * rendering/RenderThemeWin.cpp:
14546 (WebCore::RenderThemeWin::paintButton):
14547 (WebCore::RenderThemeWin::paintTextField):
14549 2006-11-04 Alexey Proskuryakov <ap@nypop.com>
14551 Reviewed by Maciej.
14553 http://bugs.webkit.org/show_bug.cgi?id=11448
14554 ⟨ and ⟩ entities are mapped to the incorrect Unicode codepoint
14556 * html/HTMLEntityNames.gperf: Use canonical Unicode equivalents for these characters.
14558 2006-11-03 Mark Rowe <bdash@webkit.org>
14560 Reviewed by Oliver.
14562 Update Windows and Qt project files for file removals in r17585.
14565 * WebCore.vcproj/WebCore/WebCore.vcproj:
14567 2006-11-03 Zack Rusin <zack@kde.org>
14569 Reviewed by Maciej.
14571 The patch fixes text field drawing on the Qt platform.
14573 * platform/qt/RenderThemeQt.cpp:
14574 (WebCore::RenderThemeQt::paintTextField): Use the style to correctly
14575 render the text field
14577 2006-11-03 Oliver Hunt <oliver@apple.com>
14581 Correct incorrect call to SetCursor
14583 * rendering/RenderFrameSet.cpp:
14584 (WebCore::RenderFrameSet::userResize):
14586 2006-11-03 Adele Peterson <adele@apple.com>
14588 Reviewed by Oliver.
14590 Removed DeprecatedRenderSelect and ListBox classes.
14592 * WebCore.xcodeproj/project.pbxproj:
14594 * html/HTMLOptionElement.h:
14595 * html/HTMLSelectElement.cpp:
14596 (WebCore::HTMLSelectElement::recalcStyle):
14597 (WebCore::HTMLSelectElement::isKeyboardFocusable):
14598 (WebCore::HTMLSelectElement::isMouseFocusable):
14599 (WebCore::HTMLSelectElement::createRenderer):
14600 (WebCore::HTMLSelectElement::setRecalcListItems):
14601 (WebCore::HTMLSelectElement::notifyOptionSelected):
14602 (WebCore::HTMLSelectElement::defaultEventHandler):
14603 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
14604 (WebCore::HTMLSelectElement::updateListBoxSelection):
14605 * html/HTMLSelectElement.h:
14606 * platform/ListBox.h: Removed.
14607 * platform/mac/FontCacheMac.mm:
14608 * platform/mac/ListBoxMac.mm: Removed.
14609 * platform/win/TemporaryLinkStubs.cpp:
14610 * rendering/DeprecatedRenderSelect.cpp: Removed.
14611 * rendering/DeprecatedRenderSelect.h: Removed.
14613 2006-11-03 Maciej Stachowiak <mjs@apple.com>
14615 Not reviewed, fix for accidental commit.
14617 - rolled back more of the accidentall commit that I forgot.
14619 * platform/network/mac/ResourceRequestMac.h: Removed.
14620 * platform/network/mac/ResourceRequestMac.mm: Removed.
14622 2006-11-03 Maciej Stachowiak <mjs@apple.com>
14624 Not reviewed, fix for accidental commit.
14626 - roll back some network changes accidentally committed with a previous patch.
14628 * WebCore.xcodeproj/project.pbxproj:
14629 * bridge/mac/WebCoreFrameBridge.mm:
14630 (-[WebCoreFrameBridge getData:andResponse:forURL:]):
14631 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
14632 * loader/CachedCSSStyleSheet.cpp:
14633 (WebCore::CachedCSSStyleSheet::checkNotify):
14634 * loader/CachedImage.cpp:
14635 (WebCore::CachedImage::createImage):
14636 * loader/CachedResource.cpp:
14637 (WebCore::CachedResource::CachedResource):
14638 (WebCore::CachedResource::~CachedResource):
14639 (WebCore::CachedResource::setExpireDate):
14640 (WebCore::CachedResource::isExpired):
14641 * loader/CachedResource.h:
14642 (WebCore::CachedResource::response):
14643 * loader/LoaderFunctions.h:
14644 * loader/loader.cpp:
14645 (WebCore::Loader::receivedResponse):
14646 (WebCore::Loader::didReceivedResponse):
14648 * loader/mac/FormDataStream.h:
14649 * loader/mac/FormDataStream.m:
14650 (WebCore::formCreate):
14651 (WebCore::formFinalize):
14652 * loader/mac/ImageDocumentMac.mm:
14653 (WebCore::finishImageLoad):
14654 * loader/mac/LoaderFunctionsMac.mm:
14655 (WebCore::CheckCacheObjectStatus):
14656 (WebCore::CachedResource::setResponse):
14657 * loader/mac/SubresourceLoaderMac.mm:
14658 (WebCore::SubresourceLoader::willSendRequest):
14659 * platform/network/ResourceHandle.h:
14660 * platform/network/ResourceHandleClient.h:
14661 (WebCore::ResourceHandleClient::receivedRedirect):
14662 * platform/network/ResourceRequest.h:
14663 * platform/network/ResourceResponse.h:
14664 (WebCore::ResourceResponse::ResourceResponse):
14665 * platform/network/mac/ResourceHandleMac.mm:
14666 (WebCore::ResourceHandle::redirectedToURL):
14667 * xml/xmlhttprequest.cpp:
14668 (WebCore::XMLHttpRequest::receivedRedirect):
14669 * xml/xmlhttprequest.h:
14671 2006-11-03 Anders Carlsson <acarlsson@apple.com>
14673 Rubber-stamped by Oliver.
14675 Remove these, they have been merged with SVGRenderTreeAsText.
14677 * rendering/SVGRenderAsText.cpp: Removed.
14678 * rendering/SVGRenderAsText.h: Removed.
14680 2006-11-03 Anders Carlsson <acarlsson@apple.com>
14684 * platform/network/cf/ResourceHandleCFNet.cpp:
14685 (WebCore::willSendRequest):
14687 2006-11-02 Geoffrey Garen <ggaren@apple.com>
14689 Reviewed by Darin, Beth.
14691 First cut at factoring Page's UIDelegate-related functions into Chrome
14696 * bridge/mac/PageMac.mm: Removed platform-specific constructor, added
14697 setBridge method to replace it.
14698 (WebCore::Page::setBridge):
14700 * bridge/mac/WebCorePageBridge.h: Simplified some things based on the fact
14701 that WebCorePageBridge.h doesn't need to be included by ObjC-only files,
14702 and, now that it uses PassRefPtr, can't be.
14704 * page/Chrome.cpp: Added. Code copied and converted to c++ from WebCorePageBridge.mm.
14707 (WebCore::Page::dragCaretController): Made this function non-const so that
14708 m_dragCaretController doesn't have to be mutable.
14710 2006-11-03 Alexey Proskuryakov <ap@nypop.com>
14714 http://bugs.webkit.org/show_bug.cgi?id=7323
14715 REGRESSION (10.4.4): ondrag* events don't fire on page in a frame
14717 * bridge/mac/FrameMac.h: Moved drag source information to a static variable
14718 in FrameMac.mm. There can be only one drag active at any moment, and having
14719 this information here was making sharing this information between
14722 * bridge/mac/FrameMac.mm:
14723 (WebCore::FrameMac::FrameMac): Initialize sharedDragInfo.
14724 (WebCore::FrameMac::freeClipboard):
14725 (WebCore::FrameMac::dragHysteresisExceeded):
14726 (WebCore::FrameMac::handleMouseMoveEvent):
14727 (WebCore::FrameMac::handleMouseReleaseEvent):
14728 (WebCore::FrameMac::mouseDown):
14729 (WebCore::FrameMac::dragSourceMovedTo):
14730 (WebCore::FrameMac::dragSourceEndedAt):
14731 (WebCore::FrameMac::dispatchDragSrcEvent):
14732 Access drag source info via sharedDragInfo - this fixes drag source even dispatching.
14733 Also removed some old code that was forwarding mouse events to subviews to make
14734 HTML editing work in subframes.
14736 * page/FrameView.cpp:
14737 (WebCore::FrameView::updateDragAndDrop):
14738 (WebCore::FrameView::cancelDragAndDrop):
14739 (WebCore::FrameView::performDragAndDrop):
14740 Forward events to subframes for dispatching - this fixes drag target events.
14742 2006-11-03 Zack Rusin <zack@kde.org>
14748 * platform/qt/LoaderFunctionsQt.cpp:
14749 (WebCore::CachedResource::setPlatformResponse): Renamed from setResponse
14751 2006-11-01 Zack Rusin <zack@kde.org>
14753 Reviewed by Maciej.
14755 Moving the word/sentence seperators into a file of their own
14756 and implementing findWordBoundary.
14759 * platform/qt/TemporaryLinkStubs.cpp:
14760 * platform/qt/TextBoundaries.cpp: Added.
14761 (WebCore::findNextSentenceFromIndex):
14762 (WebCore::findSentenceBoundary):
14763 (WebCore::findNextWordFromIndex):
14764 (WebCore::findWordBoundary):
14766 2006-11-03 Zack Rusin <zack@kde.org>
14768 Reviewed by Maciej.
14770 Compile on both KDE and Qt platforms
14772 * CMakeLists.txt: add zlib explicitly
14773 * platform/network/qt/ResourceHandleManager.cpp:
14774 (WebCore::ResourceHandleManager::self):
14775 (WebCore::QtJob::QtJob):
14776 (WebCore::QtJob::timerEvent): Integrate both implementations
14777 so that moc can parse it
14778 (WebCore::ResourceHandleManager::deliverJobData):
14779 (WebCore::ResourceHandleManager::remove):
14780 * platform/network/qt/ResourceHandleManager.h:
14782 2006-11-03 Maciej Stachowiak <mjs@apple.com>
14784 No review, suggested by Mitz.
14786 - fix a #if to be #ifdef
14788 * platform/graphics/svg/cg/SVGResourceImageCg.cpp:
14790 2006-11-03 Zack Rusin <zack@kde.org>
14792 Reviewed and landed by Maciej.
14794 Compile on the Qt platform.
14796 * ksvg2/misc/KCanvasRenderingStyle.h:
14797 * platform/qt/RenderThemeQt.cpp:
14798 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
14800 2006-11-03 Zack Rusin <zack@kde.org>
14802 Reviewed by Hyatt. Landed by Maciej.
14804 Adding setPlatformPen/setPlatformFont/setPlatformFillColor
14805 to graphics context to be able to set consistant state
14806 on the platform specific painter without having to change
14807 fill/stroke/font on every operation. This fixes color/stroke/fill
14808 and font handling in the Qt port.
14810 * platform/graphics/GraphicsContext.cpp:
14811 (WebCore::GraphicsContext::setFont):
14812 (WebCore::GraphicsContext::setPen):
14813 (WebCore::GraphicsContext::setFillColor):
14814 (WebCore::GraphicsContext::setPlatformPen):
14815 (WebCore::GraphicsContext::setPlatformFillColor):
14816 (WebCore::GraphicsContext::setPlatformFont):
14817 * platform/graphics/GraphicsContext.h:
14818 * platform/qt/GraphicsContextQt.cpp:
14819 (WebCore::toQtCompositionMode):
14820 (WebCore::toQtLineCap):
14821 (WebCore::toQtLineJoin):
14822 (WebCore::toQPenStyle):
14823 (WebCore::penToQPen):
14824 (WebCore::TransparencyLayer::TransparencyLayer):
14825 (WebCore::GraphicsContext::addRoundedRectClip):
14826 (WebCore::GraphicsContext::setPlatformFont):
14827 (WebCore::GraphicsContext::setPlatformPen):
14828 (WebCore::GraphicsContext::setPlatformFillColor):
14829 * platform/qt/ScrollViewCanvasQt.cpp:
14830 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
14831 (WebCore::ScrollViewCanvasQt::paintEvent):
14832 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
14833 * platform/qt/ScrollViewCanvasQt.h:
14835 2006-11-02 Adele Peterson <adele@apple.com>
14837 Reviewed by Anders.
14839 - Fix for http://bugs.webkit.org/show_bug.cgi?id=9581
14840 REGRESSION: The new NativeTextArea scrolls to the top when the control is unfocused.
14842 Test: fast/forms/textarea-no-scroll-on-blur.html
14844 * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::forwardEvent):
14845 On blur, only scroll back to the start for text fields.
14847 2006-11-02 Anders Carlsson <acarlsson@apple.com>
14851 * rendering/RenderFileUploadControl.cpp:
14852 (WebCore::RenderFileUploadControl::paintObject):
14854 2006-11-02 Anders Carlsson <acarlsson@apple.com>
14858 * page/FramePrivate.h:
14859 (WebCore::FramePrivate::FramePrivate):
14861 2006-11-02 Kevin Ollivier <kevino@theolliviers.com>
14863 Reviewed by Geoff, landed by Anders.
14865 Fix dependency problems caused when running move-js-headers.sh
14867 * move-js-headers.sh:
14868 Use cp -p instead of just cp so that the modification time
14869 of the original files are used.
14871 2006-11-02 Adam Roben <aroben@apple.com>
14873 Reviewed by Tim H, landed by Anders.
14875 Fixes http://bugs.webkit.org/show_bug.cgi?id=10840
14876 REGRESSION: Shadow of file upload button is clipped
14878 * rendering/RenderFileUploadControl.cpp:
14879 (WebCore::RenderFileUploadControl::paintObject): Add 2px to the clip
14880 height to keep from clipping in the shadow
14882 2006-11-02 Eike Preuss <mail@eikepreuss.de>
14884 Reviewed by Maciej, landed by Anders.
14886 * platform/qt/ScrollViewQt.cpp: Fix translation of coordinates between
14887 content and window. ScrollViewQt already receives correct content
14888 coordinates from QScrollArea.
14889 (WebCore::ScrollView::contentsToWindow):
14890 (WebCore::ScrollView::windowToContents):
14892 2006-11-02 Simon Hausmann <hausmann@kde.org>
14894 Reviewed by Maciej, landed by Anders
14896 * CMakeLists.txt: Make linkage against KDE libraries conditional
14897 * platform/network/qt/ResourceHandleManager.cpp: Added a simple
14898 Qt base resource handler that supports only requests to the
14899 local filesystem. Used when compiling without KDE support.
14900 ResourceHandleManager.cpp/h are to be split up into ResourceHandleManagerKDE
14901 and ResourceHandleManagerQt in the future, as well as QtJob.cpp/h.
14902 (WebCore::QtJob::QtJob):
14903 (WebCore::QtJob::timerEvent):
14904 (WebCore::ResourceHandleManager::ResourceHandleManager):
14905 (WebCore::ResourceHandleManager::~ResourceHandleManager):
14906 (WebCore::ResourceHandleManager::self):
14907 (WebCore::ResourceHandleManager::remove):
14908 (WebCore::ResourceHandleManager::add):
14909 (WebCore::ResourceHandleManager::cancel):
14910 (WebCore::ResourceHandleManager::deliverJobData):
14911 * platform/network/qt/ResourceHandleManager.h:
14912 * platform/qt/FrameQtClient.cpp:
14913 (WebCore::FrameQtClientDefault::runJavaScriptAlert):
14914 (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
14915 (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
14916 * platform/qt/LoaderFunctionsQt.cpp: Use the Qt messagebox and
14917 input dialog functions when compiling without KDE support
14918 (WebCore::ServeSynchronousRequest):
14920 2006-11-02 David Carson <dacarson@gmail.com>
14922 Reviewed by Geoff, landed by Anders.
14924 Fix for: http://bugs.webkit.org/show_bug.cgi?id=11471
14925 Initializing variable in constructor.
14927 * page/FramePrivate.h:
14928 (WebCore::FramePrivate::FramePrivate):
14930 2006-11-02 Anders Carlsson <acarlsson@apple.com>
14934 Use CFMutableURLRequestRef instead of CFHTTPMessageRef since not all URL requests are http requests.
14936 * platform/network/cf/ResourceHandleCFNet.cpp:
14937 (WebCore::addHeadersFromHashMap):
14938 Don't set all headers at once since that clears any previous headers set.
14940 (WebCore::ResourceHandle::start):
14942 2006-11-02 Adele Peterson <adele@apple.com>
14944 Reviewed by Mitz and Geoff.
14947 <rdar://problem/4650271> REGRESSION(NativeTextArea): Textareas don't get scrollbars when text gets too big for content area (10105)
14948 <rdar://problem/4650813> REGRESSION(tiger-leopard): typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
14949 <rdar://problem/4658779> REGRESSION: Text selection is weird in textareas in Trac wiki editing pages
14951 Test: fast/forms/textarea-scrollbar.html
14953 To avoid some of our flexbox bugs for textareas, we're moving the text controls back to RenderBlock. This should make them
14954 a lot more stable. In the future, when we've worked out more of the flexbox kinks, we may want to consider moving them back.
14956 * rendering/RenderTextControl.h: Convert text controls back to RenderBlock instead of RenderFlexibleBox.
14957 * rendering/RenderTextControl.cpp:
14958 (WebCore::RenderTextControl::RenderTextControl):
14959 (WebCore::RenderTextControl::setStyle):
14960 (WebCore::RenderTextControl::createDivStyle):
14961 (WebCore::RenderTextControl::updateFromElement):
14962 (WebCore::RenderTextControl::calcHeight):
14963 (WebCore::RenderTextControl::baselinePosition):
14964 (WebCore::RenderTextControl::nodeAtPoint):
14965 (WebCore::RenderTextControl::layout): Set the inner div's height explicitly before doing a normal layout.
14966 (WebCore::RenderTextControl::scrollWidth):
14967 (WebCore::RenderTextControl::scrollHeight):
14968 (WebCore::RenderTextControl::scrollLeft):
14969 (WebCore::RenderTextControl::scrollTop):
14971 * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout): Make subtree layout optimization work for textareas.
14973 2006-11-02 John Sullivan <sullivan@apple.com>
14975 Reviewed by Geoff Garen
14977 * editing/Selection.cpp:
14978 (WebCore::Selection::showTreeForThis):
14979 this debugging method now displays start offset and end offset, at Darin's suggestion
14981 2006-11-01 Justin Garcia <justin.garcia@apple.com>
14985 <rdar://problem/4062865>
14986 Copy/paste of a select element fails to include the options
14988 * editing/SelectionController.cpp:
14989 (WebCore::SelectionController::modify): Added paragraphBoundary.
14990 * editing/htmlediting.cpp:
14991 (WebCore::canHaveChildrenForEditing): Added checks for input elements
14992 and textareas. Insertion operations would fail when performed just
14993 before/after one of these elements b/c the content would be put inside
14995 (WebCore::enclosingNodeWithTag): Fixed a problem when calling these in non
14996 editable content, and made the code to stop at an root faster (don't check
14997 isDescendantOf on every iteration).
14998 (WebCore::enclosingNodeOfType): Ditto.
14999 (WebCore::enclosingList): Ditto.
15000 (WebCore::enclosingListChild): Ditto. Added a FIXME, this function seems
15001 inappropriately named.
15002 * editing/markup.cpp:
15003 (WebCore::startMarkup): Use the text node's value instead of its rendered
15004 content for text nodes inside select elements. One might also turn off
15005 annotation when createMarkup enters a select element, but createMarkup
15006 is iterative, not recursive, so doing so would be complicated.
15007 (WebCore::createMarkup): Add markup for unrendered nodes if they are
15008 descendants of a select element.
15009 * editing/visible_units.cpp:
15010 (WebCore::startOfParagraph): Migrate to isBlock/enclosingBlock. Fixes bug
15011 where various replaced elements can't be copied when they are the only
15013 (WebCore::endOfParagraph): Ditto.
15015 2006-11-01 Oliver Hunt <oliver@apple.com>
15019 Converting more or kcanvas/quartz from Obj-C to C++
15021 compatibility fixes
15023 * WebCore.xcodeproj/project.pbxproj:
15024 * kcanvas/device/KRenderingPaintServer.h:
15025 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.cpp: Added.
15026 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
15027 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm: Removed.
15028 * kcanvas/device/quartz/KRenderingPaintServerQuartz.cpp: Added.
15029 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm: Removed.
15030 * kcanvas/device/quartz/QuartzSupport.h:
15031 * ksvg2/css/SVGCSSStyleSelector.cpp:
15032 * ksvg2/misc/KCanvasRenderingStyle.h:
15033 * ksvg2/scripts/cssmakeprops:
15034 * ksvg2/scripts/cssmakevalues:
15035 * ksvg2/scripts/make_names.pl:
15036 * ksvg2/svg/SVGAnimateColorElement.cpp:
15037 * ksvg2/svg/SVGAnimateTransformElement.cpp:
15038 * ksvg2/svg/SVGAnimationElement.cpp:
15039 * ksvg2/svg/SVGMaskElement.cpp:
15040 * ksvg2/svg/SVGPatternElement.cpp:
15041 * ksvg2/svg/svgpathparser.cpp:
15042 * platform/Path.cpp:
15043 * platform/graphics/svg/SVGResourceImage.h:
15044 * rendering/RenderPath.cpp:
15045 * rendering/SVGRenderAsText.cpp:
15047 2006-11-02 Mitz Pettel <mitz@webkit.org>
15051 - Fix a regression from r17521: painting of and crash caused by tables
15052 with collapsed borders
15054 * rendering/RenderTable.cpp:
15055 (WebCore::RenderTable::paint): Changed 'paintInfo' to 'info'. Prior to
15056 r17521, 'paintInfo' was the local variable. Now 'info' is the local variable
15057 and 'paintInfo' is the parameter, which we were accidently modifying.
15059 2006-11-01 Adele Peterson <adele@apple.com>
15063 - Fix for http://bugs.webkit.org/show_bug.cgi?id=11277
15064 REGRESSION: Incomplete repaint of overflow areas when deleting
15066 Restrict the repaint rect for overflow blocks after the height has been fully computed.
15067 Also, adjust the repaint rect coordinates for the scroll offset.
15069 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock):
15070 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren):
15072 2006-11-01 Sam Weinig <sam.weinig@gmail.com>
15076 Fix for http://bugs.webkit.org/show_bug.cgi?id=11474
15077 Rename the "p" member variable of the PaintInfo struct to "context"
15079 - Renames the 'p' and 'r' member variables of the PaintInfo struct to
15080 'context' and 'rect' respectively.
15082 - Assorted surrounding cleanups.
15084 * rendering/EllipsisBox.cpp:
15085 (WebCore::EllipsisBox::paint):
15086 * rendering/EllipsisBox.h:
15087 * rendering/InlineBox.cpp:
15088 (WebCore::InlineBox::paint):
15089 * rendering/InlineFlowBox.cpp:
15090 (WebCore::InlineFlowBox::paint):
15091 (WebCore::InlineFlowBox::paintBackground):
15092 (WebCore::InlineFlowBox::paintBackgroundAndBorder):
15093 (WebCore::InlineFlowBox::paintDecorations):
15094 * rendering/InlineFlowBox.h:
15095 * rendering/InlineRunBox.h:
15096 * rendering/InlineTextBox.cpp:
15097 (WebCore::InlineTextBox::paint):
15098 * rendering/InlineTextBox.h:
15099 * rendering/RenderBlock.cpp:
15100 (WebCore::RenderBlock::paint):
15101 (WebCore::RenderBlock::paintChildren):
15102 (WebCore::RenderBlock::paintCaret):
15103 (WebCore::RenderBlock::paintObject):
15104 (WebCore::RenderBlock::paintFloats):
15105 (WebCore::RenderBlock::paintEllipsisBoxes):
15106 (WebCore::RenderBlock::paintSelection):
15107 (WebCore::RenderBlock::fillSelectionGaps):
15108 (WebCore::RenderBlock::fillInlineSelectionGaps):
15109 (WebCore::RenderBlock::fillBlockSelectionGaps):
15110 (WebCore::RenderBlock::fillHorizontalSelectionGap):
15111 (WebCore::RenderBlock::fillVerticalSelectionGap):
15112 (WebCore::RenderBlock::fillLeftSelectionGap):
15113 (WebCore::RenderBlock::fillRightSelectionGap):
15114 * rendering/RenderBox.cpp:
15115 (WebCore::RenderBox::paint):
15116 (WebCore::RenderBox::paintRootBoxDecorations):
15117 (WebCore::RenderBox::paintBoxDecorations):
15118 * rendering/RenderBox.h:
15119 * rendering/RenderButton.cpp:
15120 (WebCore::RenderButton::paintObject):
15121 * rendering/RenderFieldset.cpp:
15122 (WebCore::RenderFieldset::paintBoxDecorations):
15123 * rendering/RenderFileUploadControl.cpp:
15124 (WebCore::RenderFileUploadControl::paintObject):
15125 * rendering/RenderFlow.cpp:
15126 (WebCore::RenderFlow::continuationBefore):
15127 (WebCore::RenderFlow::addChildWithContinuation):
15128 (WebCore::RenderFlow::addChild):
15129 (WebCore::RenderFlow::attachLineBox):
15130 (WebCore::RenderFlow::destroy):
15131 (WebCore::RenderFlow::dirtyLinesFromChangedChild):
15132 (WebCore::RenderFlow::dirtyLineBoxes):
15133 (WebCore::RenderFlow::createInlineBox):
15134 (WebCore::RenderFlow::paintLines):
15135 (WebCore::RenderFlow::getAbsoluteRepaintRect):
15136 (WebCore::RenderFlow::lowestPosition):
15137 (WebCore::RenderFlow::rightmostPosition):
15138 (WebCore::RenderFlow::leftmostPosition):
15139 (WebCore::RenderFlow::caretRect):
15140 (WebCore::RenderFlow::addFocusRingRects):
15141 (WebCore::RenderFlow::paintOutline):
15142 (WebCore::RenderFlow::paintOutlineForLine):
15143 * rendering/RenderForeignObject.cpp:
15144 (WebCore::RenderForeignObject::paint):
15145 * rendering/RenderHTMLCanvas.cpp:
15146 (WebCore::RenderHTMLCanvas::paint):
15147 * rendering/RenderImage.cpp:
15148 (WebCore::RenderImage::paint):
15149 * rendering/RenderLayer.cpp:
15150 (WebCore::RenderLayer::paintLayer):
15151 * rendering/RenderListBox.cpp:
15152 (WebCore::RenderListBox::paintObject):
15153 (WebCore::RenderListBox::paintScrollbar):
15154 (WebCore::RenderListBox::paintItemForeground):
15155 (WebCore::RenderListBox::paintItemBackground):
15156 * rendering/RenderListMarker.cpp:
15157 (WebCore::RenderListMarker::paint):
15158 * rendering/RenderMenuList.cpp:
15159 (WebCore::RenderMenuList::paintObject):
15160 * rendering/RenderObject.cpp:
15161 (WebCore::RenderObject::paint):
15162 * rendering/RenderObject.h:
15163 (WebCore::RenderObject::PaintInfo::PaintInfo):
15164 (WebCore::RenderObject::paintBoxDecorations):
15165 (WebCore::RenderObject::paintingRootForChildren):
15166 (WebCore::RenderObject::shouldPaintWithinRoot):
15167 (WebCore::RenderObject::printBoxDecorations):
15168 * rendering/RenderPath.cpp:
15169 (WebCore::RenderPath::paint):
15170 * rendering/RenderReplaced.cpp:
15171 (WebCore::RenderReplaced::shouldPaint):
15172 * rendering/RenderSVGContainer.cpp:
15173 (WebCore::RenderSVGContainer::paint):
15174 * rendering/RenderSVGContainer.h:
15175 * rendering/RenderSVGImage.cpp:
15176 (WebCore::RenderSVGImage::paint):
15177 * rendering/RenderSVGText.cpp:
15178 (WebCore::RenderSVGText::paint):
15179 * rendering/RenderSVGText.h:
15180 (WebCore::RenderSVGText::renderName):
15181 * rendering/RenderTable.cpp:
15182 (WebCore::RenderTable::paint):
15183 (WebCore::RenderTable::paintBoxDecorations):
15184 * rendering/RenderTable.h:
15185 * rendering/RenderTableCell.cpp:
15186 (WebCore::RenderTableCell::paint):
15187 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
15188 (WebCore::RenderTableCell::paintBoxDecorations):
15189 * rendering/RenderTableCell.h:
15190 * rendering/RenderTableRow.cpp:
15191 (WebCore::RenderTableRow::paint):
15192 * rendering/RenderTableRow.h:
15193 * rendering/RenderTableSection.cpp:
15194 (WebCore::RenderTableSection::paint):
15195 * rendering/RenderTableSection.h:
15196 (WebCore::RenderTableSection::getBaseline):
15197 (WebCore::RenderTableSection::setNeedCellRecalc):
15198 * rendering/RenderText.h:
15199 (WebCore::RenderText::renderName):
15200 (WebCore::RenderText::paint):
15201 (WebCore::RenderText::element):
15202 * rendering/RenderTheme.cpp:
15203 (WebCore::RenderTheme::paint):
15204 (WebCore::RenderTheme::paintBorderOnly):
15205 (WebCore::RenderTheme::paintDecorations):
15206 * rendering/RenderTheme.h:
15207 (WebCore::RenderTheme::RenderTheme):
15208 (WebCore::RenderTheme::~RenderTheme):
15209 (WebCore::RenderTheme::controlSupportsTints):
15210 (WebCore::RenderTheme::adjustRepaintRect):
15211 (WebCore::RenderTheme::themeChanged):
15212 (WebCore::RenderTheme::supportsHover):
15213 (WebCore::RenderTheme::paintCheckbox):
15214 (WebCore::RenderTheme::setCheckboxSize):
15215 (WebCore::RenderTheme::paintRadio):
15216 (WebCore::RenderTheme::setRadioSize):
15217 (WebCore::RenderTheme::paintButton):
15218 (WebCore::RenderTheme::setButtonSize):
15219 (WebCore::RenderTheme::paintTextField):
15220 (WebCore::RenderTheme::paintTextArea):
15221 (WebCore::RenderTheme::paintMenuList):
15222 (WebCore::RenderTheme::paintMenuListButton):
15223 * rendering/RenderThemeMac.mm:
15224 (WebCore::RenderThemeMac::paintCheckbox):
15225 (WebCore::RenderThemeMac::paintRadio):
15226 (WebCore::RenderThemeMac::paintButton):
15227 (WebCore::RenderThemeMac::paintTextField):
15228 (WebCore::RenderThemeMac::paintTextArea):
15229 (WebCore::RenderThemeMac::paintMenuList):
15230 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
15231 (WebCore::RenderThemeMac::paintMenuListButton):
15232 * rendering/RenderView.cpp:
15233 (WebCore::RenderView::paint):
15234 (WebCore::RenderView::paintBoxDecorations):
15235 * rendering/RenderView.h:
15236 * rendering/RenderWidget.cpp:
15237 (WebCore::RenderWidget::paint):
15238 * rendering/RenderWidget.h:
15239 (WebCore::RenderWidget::isWidget):
15240 * rendering/RootInlineBox.cpp:
15241 (WebCore::RootInlineBox::paintEllipsisBox):
15242 (WebCore::RootInlineBox::paintCustomHighlight):
15243 (WebCore::RootInlineBox::paint):
15244 (WebCore::RootInlineBox::fillLineSelectionGap):
15245 * rendering/RootInlineBox.h:
15246 * rendering/SVGInlineFlowBox.cpp:
15247 (WebCore::paintSVGInlineFlow):
15249 2006-11-01 Anders Carlsson <acarlsson@apple.com>
15251 Reviewed by Oliver, Brady.
15253 * platform/network/ResourceResponse.h:
15254 (WebCore::ResourceResponse::setLastModifiedDate):
15255 (WebCore::ResourceResponse::lastModifiedDate):
15256 Add getters and setters for last modified dadte.
15258 * platform/network/cf/ResourceResponseCFNet.cpp:
15259 (WebCore::getResourceResponse):
15260 Fetch the last modified date. Add correct offset to expired date.
15262 2006-11-01 David Kilzer <ddkilzer@kilzer.net>
15266 Added missing "break;" statement in switch statement from r17493.
15268 Bug 11442: [CSS 3] support for cursor: all-scroll
15269 http://bugs.webkit.org/show_bug.cgi?id=11442
15271 * css/CSSComputedStyleDeclaration.cpp:
15272 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
15274 2006-10-31 Mitz Pettel <mitz@webkit.org>
15276 Reviewed by Maciej.
15278 - fix image dragging
15280 This is covered by editing/selection/drag-to-contenteditable-iframe.html
15282 * rendering/HitTestResult.cpp:
15283 (WebCore::HitTestResult::altDisplayString): Changed imageTag to imgTag, for
15285 (WebCore::HitTestResult::absoluteImageURL): Ditto.
15287 2006-10-31 Beth Dakin <bdakin@apple.com>
15289 Reviewed by Maciej.
15291 This adds the back-end of the remaining WebElementDictionary
15292 functions into HitTestResult.
15295 * rendering/HitTestResult.cpp:
15296 (WebCore::HitTestResult::title):
15297 (WebCore::displayString): This is nearly identical to the
15298 displayString() defined in DOMInternal.mm except that it returns a
15299 String instead of an NSString. The old code path used the
15300 DOMInternal method, so I made a new one here for the new code path.
15301 (WebCore::HitTestResult::altDisplayString):
15302 (WebCore::HitTestResult::image):
15303 (WebCore::HitTestResult::absoluteImageURL):
15304 (WebCore::HitTestResult::absoluteLinkURL):
15305 (WebCore::HitTestResult::titleDisplayString):
15306 (WebCore::HitTestResult::textContent):
15307 * rendering/HitTestResult.h:
15309 2006-10-31 John Sullivan <sullivan@apple.com>
15311 * bridge/mac/FrameMac.mm:
15312 (WebCore::FrameMac::markMisspellings):
15313 Tiger build fix: added an #ifndef BUILDING_ON_TIGER where one was needed.
15315 2006-10-31 John Sullivan <sullivan@apple.com>
15319 - fixed <rdar://problem/4804627> ToolTips do not appear for grammar suggestions
15321 The foundation of this was in my last checkin. This checkin is all about displaying
15322 the correct string in the toolTip.
15324 * dom/DocumentMarker.h:
15325 New description field in this struct.
15327 * bridge/mac/FrameMac.mm:
15328 (WebCore::FrameMac::advanceToNextMisspelling):
15329 When adding a grammar marker, supply the appropriate description. Also, added a comment
15330 about the remaining work to make grammar checking return sensible answers.
15331 (WebCore::FrameMac::markMisspellings):
15332 ditto (yes, still needs some refactoring to minimize duplicated code)
15335 * dom/Document.cpp:
15336 (WebCore::Document::addMarker):
15337 Now takes an optional description string
15338 (WebCore::Document::markerContainingPoint):
15339 New function, returns a pointer to the (first) marker of the specified type whose rect
15340 contains the specified point, or 0 if none.
15342 * rendering/HitTestResult.cpp:
15343 (WebCore::HitTestResult::spellingToolTip):
15344 Replaced hardwired string placeholder implementation with code that uses markerContainingPoint
15345 and gets the description from the marker.
15347 2006-10-31 Geoffrey Garen <ggaren@apple.com>
15349 Reviewed by Maciej.
15351 Fixed crash resulting from Darin's last patch to remove BrowserExtension.
15353 * loader/mac/FrameLoaderMac.mm:
15354 (WebCore::FrameLoader::createWindow):
15355 * manual-tests/window-open-features-parsing.html: Updated for clarity.
15357 2006-10-31 Geoffrey Garen <ggaren@apple.com>
15361 Moved some Editing code from WebKit, the bridge, and WebCore::Frame down
15362 to WebCore::Editor.
15366 Renamed "may*" to "can*" because "can" is more accurate (these functions
15367 aren't just about permission) and it matches WebKit.
15369 (WebCore::FrameMac::handleMouseMoveEvent): Directly test for dragging in a
15370 password field. Now that WebCore fully implements canCopy(), it doesn't just
15371 mean "the selection is not in a password field" anymore.
15372 (-[WebCoreFrameBridge _shouldAllowAccessFrom:]): Removed this #ifed-out code.
15373 The fact that it's not called anymore may represent a security issue, but I
15374 don't see how commented-out code will help reveal the issue, and the
15375 bridge is going away, anyway.
15376 * editing/SelectionController.h: Changed selection() calls to references
15377 to m_sel, to match the rest of the file.
15379 2006-10-31 Justin Garcia <justin.garcia@apple.com>
15381 Reviewed by harrison
15383 <rdar://problem/4711063>
15384 Pasting 10K lines into Mail/Blot takes ~7sec, in TextEdit it takes ~1.5sec
15386 * editing/ReplaceSelectionCommand.cpp:
15387 (WebCore::ReplacementFragment::ReplacementFragment): Don't do the test
15388 insertion and plain text string creation unless we need the string
15389 for a BeforeTextInserted event handler or for a plain text only region.
15390 (WebCore::ReplacementFragment::removeInterchangeNodes): Added, moved
15391 code here from ReplacementFragment's constructor.
15392 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Added a
15394 * editing/ReplaceSelectionCommand.h:
15396 2006-10-31 Ada Chan <adachan@apple.com>
15400 Correct forward declarations of the HitTestRequest struct.
15402 * rendering/EllipsisBox.h:
15403 * rendering/InlineBox.h:
15404 * rendering/InlineFlowBox.h:
15405 * rendering/RenderLayer.h:
15406 * rendering/RenderObject.h:
15408 2006-10-31 John Sullivan <sullivan@apple.com>
15410 Reviewed by Beth and Adam
15412 Support for displaying tooltips for bad grammar. Currently this always displays the same tooltip;
15413 next I'll make it use a string that's relevant for a specific grammar error.
15416 export symbol for spellingToolTip function
15418 * rendering/HitTestResult.h:
15419 * rendering/HitTestResult.cpp:
15420 (WebCore::HitTestResult::spellingToolTip):
15421 new function, returns the string to be used in a tool tip that describes the questionable grammar
15423 * rendering/InlineTextBox.h:
15424 * rendering/InlineTextBox.cpp:
15425 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
15426 now takes a style and font, needed to compute the rect representing the range containing
15427 questionable grammar. Computes the rect and associates it with the marker.
15428 (WebCore::InlineTextBox::paintDocumentMarkers):
15429 Pass in the style and font now needed by paintSpellingOrGrammarMarker
15431 2006-10-31 Adele Peterson <adele@apple.com>
15433 Removed commented out variable from last checkin.
15435 * html/HTMLSelectElement.cpp:
15436 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
15438 2006-10-31 Brady Eidson <beidson@apple.com>
15440 Build fix (unused variable in release builds)
15442 * html/HTMLSelectElement.cpp:
15443 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
15445 2006-10-31 Adele Peterson <adele@apple.com>
15449 - Fix for http://bugs.webkit.org/show_bug.cgi?id=11127 NativeListBox: arrow and drag selection should pivot around one list item
15450 and http://bugs.webkit.org/show_bug.cgi?id=11173 REGRESSION (NativeListBox): Shift-clicking items in list box doesn't expand the current selection
15451 and http://bugs.webkit.org/show_bug.cgi?id=11417 REGRESSION: onchange does not fire for list-style select elements
15454 * LayoutTests/fast/forms/listbox-selection.html
15455 * LayoutTests/fast/forms/listbox-onchange.html
15457 * html/HTMLSelectElement.h: Added m_selectedListIndexBase and m_selectedListIndexExtent to track indices for the active selection in progress.
15458 Added 2 vectors to cache selection state. One is kept so that the previous selection state can be restored as the active selection grows and shrinks.
15459 And one for onChange, that is updated after onChange is fired.
15460 Added m_activeSelectionState to keep track of whether the current drag selection is selecting or deselecting.
15462 * html/HTMLSelectElement.cpp:
15463 (WebCore::HTMLSelectElement::HTMLSelectElement): Initialized new variables.
15464 (WebCore::HTMLSelectElement::setSelectedIndex): If needed, initialize m_selectedListIndexBase and m_selectedListIndexExtent.
15465 (WebCore::HTMLSelectElement::dispatchBlurEvent): Only fire the onChange event here for menu lists.
15466 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updates base and extent variables for mouse and key events.
15467 (WebCore::HTMLSelectElement::setBase): Added. Also caches the selection state.
15468 (WebCore::HTMLSelectElement::setExtent): Added.
15469 (WebCore::HTMLSelectElement::updateListBoxSelection): Added.
15470 (WebCore::HTMLSelectElement::listBoxOnChange): Added.
15472 * rendering/RenderListBox.cpp:
15473 (WebCore::RenderListBox::updateFromElement): Only scroll to reveal the first index if both the first and last indices aren't visible.
15474 (WebCore::RenderListBox::listIndexAtOffset): Added. Replaces optionAtPoint, which is no longer used.
15475 (WebCore::RenderListBox::autoscroll): Now sets the selection using the select's base and extent.
15476 (WebCore::RenderListBox::stopAutoscroll): Added. Tells the select element to fire onChange. This is needed because the autoscroll can end from a mouseUp
15477 outside of the list box, and the select element won't get a mouseUp event directly. But the frame will stop the autoscroll at that point, and now we can
15478 notify the select element from here.
15479 (WebCore::RenderListBox::scrollToRevealElementAtListIndex): Checks new listIndexIsVisible method.
15480 (WebCore::RenderListBox::listIndexIsVisible): Added.
15481 (WebCore::RenderListBox::valueChanged): Removed unnecessary printf.
15483 * page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Added rendererIsBeingDestroyed argument, so when the renderer calls this during destruction,
15484 we don't try to use the pointer to that renderer to call stopAutoscroll. This is done so a renderer that's still alive has a chance to do some cleanup after autoscroll.
15485 * rendering/RenderListBox.h: (WebCore::RenderListBox::shouldAutoscroll): Always returns true now, since we're also updating selection from the autoscroll timer.
15486 * rendering/RenderObject.h: (WebCore::RenderObject::stopAutoscroll): Added.
15487 * rendering/RenderObject.cpp: (WebCore::RenderObject::destroy): Calls stopAutoscrollTimer with rendererIsBeingDestroyed argument.
15489 2006-10-31 Beth Dakin <bdakin@apple.com>
15491 Forgot to check this in a minute ago. Oops!! Thanks Mitz!
15493 * rendering/HitTestRequest.h: Added.
15494 (WebCore::HitTestRequest::HitTestRequest):
15496 2006-10-31 Beth Dakin <bdakin@apple.com>
15498 Reviewed by Maciej.
15500 Fix for http://bugs.webkit.org/show_bug.cgi?id=11461 HitTestResult
15501 should be split into HitTestRequest and HitTestResult
15503 This patch creates a new struct called HitTestRequest that holds
15504 the three boolean values (readonly, active, and mouseMove) that
15505 were formerly a part of HitTestResult. All hitTest() and
15506 nodeAtPoint() functions now take a HitTestRequest in addition to
15510 * WebCore.xcodeproj/project.pbxproj:
15511 * bridge/mac/FrameMac.mm:
15512 (WebCore::FrameMac::eventMayStartDrag):
15513 (WebCore::FrameMac::handleMouseMoveEvent):
15514 * bridge/mac/WebCoreAXObject.mm:
15515 (-[WebCoreAXObject doAXTextMarkerForPosition:]):
15516 (-[WebCoreAXObject accessibilityHitTest:]):
15517 * dom/Document.cpp:
15518 (WebCore::Document::elementFromPoint):
15519 (WebCore::Document::prepareMouseEvent):
15520 * editing/SelectionController.cpp:
15521 (WebCore::SelectionController::contains):
15523 (WebCore::Frame::hitTestResultAtPoint):
15524 * page/FrameView.cpp:
15525 (WebCore::FrameView::handleWheelEvent):
15526 * rendering/EllipsisBox.cpp:
15527 (WebCore::EllipsisBox::nodeAtPoint):
15528 * rendering/EllipsisBox.h:
15529 * rendering/HitTestResult.cpp:
15530 (WebCore::HitTestResult::HitTestResult):
15531 (WebCore::HitTestResult::operator=):
15532 * rendering/HitTestResult.h:
15533 * rendering/InlineBox.cpp:
15534 (WebCore::InlineBox::nodeAtPoint):
15535 * rendering/InlineBox.h:
15536 * rendering/InlineFlowBox.cpp:
15537 (WebCore::InlineFlowBox::nodeAtPoint):
15538 * rendering/InlineFlowBox.h:
15539 * rendering/InlineTextBox.cpp:
15540 (WebCore::InlineTextBox::nodeAtPoint):
15541 * rendering/InlineTextBox.h:
15542 * rendering/RenderBlock.cpp:
15543 (WebCore::RenderBlock::nodeAtPoint):
15544 * rendering/RenderBlock.h:
15545 * rendering/RenderBox.cpp:
15546 (WebCore::RenderBox::nodeAtPoint):
15547 * rendering/RenderBox.h:
15548 * rendering/RenderFlow.cpp:
15549 (WebCore::RenderFlow::hitTestLines):
15550 * rendering/RenderFlow.h:
15551 * rendering/RenderForeignObject.cpp:
15552 (WebCore::RenderForeignObject::nodeAtPoint):
15553 * rendering/RenderForeignObject.h:
15554 * rendering/RenderFrameSet.cpp:
15555 (WebCore::RenderFrameSet::nodeAtPoint):
15556 * rendering/RenderFrameSet.h:
15557 * rendering/RenderImage.cpp:
15558 (WebCore::RenderImage::nodeAtPoint):
15559 * rendering/RenderImage.h:
15560 * rendering/RenderInline.cpp:
15561 (WebCore::RenderInline::nodeAtPoint):
15562 * rendering/RenderInline.h:
15563 * rendering/RenderLayer.cpp:
15564 (WebCore::RenderLayer::autoscroll):
15565 (WebCore::RenderLayer::hitTest):
15566 (WebCore::RenderLayer::hitTestLayer):
15567 (WebCore::RenderLayer::updateHoverActiveState):
15568 * rendering/RenderLayer.h:
15569 * rendering/RenderObject.cpp:
15570 (WebCore::RenderObject::hitTest):
15571 (WebCore::RenderObject::nodeAtPoint):
15572 * rendering/RenderObject.h:
15573 * rendering/RenderPath.cpp:
15574 (WebCore::RenderPath::nodeAtPoint):
15575 * rendering/RenderPath.h:
15576 * rendering/RenderSVGImage.cpp:
15577 (WebCore::RenderSVGImage::nodeAtPoint):
15578 * rendering/RenderSVGImage.h:
15579 * rendering/RenderSVGText.cpp:
15580 (WebCore::RenderSVGText::nodeAtPoint):
15581 * rendering/RenderSVGText.h:
15582 * rendering/RenderTableRow.cpp:
15583 (WebCore::RenderTableRow::nodeAtPoint):
15584 * rendering/RenderTableRow.h:
15585 * rendering/RenderTableSection.cpp:
15586 (WebCore::RenderTableSection::nodeAtPoint):
15587 * rendering/RenderTableSection.h:
15588 * rendering/RenderText.h:
15589 (WebCore::RenderText::nodeAtPoint):
15590 * rendering/RenderTextControl.cpp:
15591 (WebCore::RenderTextControl::nodeAtPoint):
15592 * rendering/RenderTextControl.h:
15593 * rendering/RootInlineBox.cpp:
15594 (WebCore::RootInlineBox::nodeAtPoint):
15595 * rendering/RootInlineBox.h:
15597 2006-10-31 Lars Naesbye Christensen <lars@naesbye.dk>
15599 Reviewed by Maciej.
15601 Bug 11442: [CSS 3] support for cursor: all-scroll
15602 http://bugs.webkit.org/show_bug.cgi?id=11442
15604 * css/CSSComputedStyleDeclaration.cpp:
15605 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
15606 * css/CSSValueKeywords.in:
15607 * css/cssparser.cpp:
15608 (WebCore::CSSParser::parseValue):
15609 * page/FrameView.cpp:
15610 (WebCore::selectCursor):
15611 * rendering/RenderStyle.h:
15613 2006-10-31 Oliver Hunt <oliver@apple.com>
15617 Converting Obj-C++ to C++ in kcanvas
15619 * WebCore.xcodeproj/project.pbxproj:
15620 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
15621 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
15622 * kcanvas/device/quartz/KCanvasItemQuartz.cpp: Added.
15623 * kcanvas/device/quartz/KCanvasItemQuartz.mm: Removed.
15624 * kcanvas/device/quartz/KRenderingDeviceQuartz.cpp: Added.
15625 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
15626 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: Removed.
15627 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
15628 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
15629 * kcanvas/device/quartz/QuartzSupport.cpp: Added.
15630 * kcanvas/device/quartz/QuartzSupport.h:
15631 * kcanvas/device/quartz/QuartzSupport.mm: Removed.
15632 * platform/graphics/svg/cg/SVGResourceClipperCg.cpp: Added.
15633 (WebCore::SVGResourceClipper::applyClip):
15634 * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Removed.
15635 * platform/graphics/svg/cg/SVGResourceImageCg.cpp: Added.
15636 * platform/graphics/svg/cg/SVGResourceImageCg.mm: Removed.
15638 2006-10-31 Justin Garcia <justin.garcia@apple.com>
15640 Reviewed by harrison
15642 <rdar://problem/4808375>
15643 REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) [11460}
15645 Completely back out r17276 because of performance issues.
15647 * editing/TextIterator.cpp:
15648 (WebCore::TextIterator::TextIterator):
15649 (WebCore::TextIterator::advance):
15650 (WebCore::TextIterator::handleTextNode):
15651 (WebCore::TextIterator::handleTextBox):
15652 (WebCore::TextIterator::handleReplacedElement):
15653 (WebCore::TextIterator::handleNonTextNode):
15654 (WebCore::TextIterator::exitNode):
15655 (WebCore::TextIterator::emitCharacter):
15656 (WebCore::TextIterator::range):
15657 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
15658 (WebCore::SimplifiedBackwardsTextIterator::advance):
15659 (WebCore::SimplifiedBackwardsTextIterator::handleTextNode):
15660 (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement):
15661 (WebCore::SimplifiedBackwardsTextIterator::emitCharacter):
15662 (WebCore::SimplifiedBackwardsTextIterator::emitNewline):
15663 (WebCore::SimplifiedBackwardsTextIterator::range):
15664 (WebCore::CharacterIterator::range):
15665 (WebCore::TextIterator::rangeFromLocationAndLength):
15666 * editing/TextIterator.h:
15667 (WebCore::TextIterator::atEnd):
15668 (WebCore::SimplifiedBackwardsTextIterator::atEnd):
15670 2006-10-31 Darin Adler <darin@apple.com>
15674 - got "action dictionary" code out of FrameLoader,
15675 replacing with a class called NavigationAction
15677 * loader/DocumentLoader.h: Changed m_triggeringAction to a NavigationAction.
15678 * loader/mac/DocumentLoaderMac.mm:
15679 (WebCore::DocumentLoader::triggeringAction): Ditto.
15680 (WebCore::DocumentLoader::setTriggeringAction): Ditto.
15682 * loader/FrameLoader.h: Changed action parameters to NavigationAction.
15684 * loader/FrameLoaderClient.h: Changed action parameters to NavigationAction.
15685 Removed elementForEvent.
15686 * loader/mac/FrameLoaderMac.mm:
15687 (WebCore::FrameLoader::load): Ditto.
15688 (WebCore::FrameLoader::reload): Ditto.
15689 (WebCore::FrameLoader::checkNewWindowPolicy): Ditto.
15690 (WebCore::FrameLoader::checkNavigationPolicy): Ditto.
15691 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy): Ditto.
15692 (WebCore::FrameLoader::post): Ditto.
15694 * loader/NavigationAction.h: Added.
15695 * loader/NavigationAction.cpp: Added.
15696 * loader/mac/NavigationActionMac.mm: Added.
15698 * loader/mac/MainResourceLoaderMac.mm: Fixed copyright.
15700 * WebCore.xcodeproj/project.pbxproj: Updated for new files.
15701 * WebCore.exp: Updated.
15703 2006-10-31 Steve Falkenburg <sfalken@apple.com>
15709 * platform/win/CookieJarWin.cpp:
15710 (WebCore::cookies):
15712 2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
15714 Reviewed by Maciej. Landed by Adam.
15716 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11463
15718 Move KCanvasTreeDebug into rendering, named as SVGRenderTreeAsText.*,
15719 as dicussed with Dave. Also kill the outdated DESIGN document.
15722 * WebCore.xcodeproj/project.pbxproj:
15723 * kcanvas/DESIGN: Removed.
15724 * kcanvas/KCanvasFilters.cpp:
15725 * kcanvas/KCanvasTreeDebug.cpp: Moved to rendering/SVGRenderTreeAsText
15726 * kcanvas/KCanvasTreeDebug.h: Ditto.
15727 * kcanvas/device/KRenderingPaintServerGradient.cpp:
15728 * kcanvas/device/KRenderingPaintServerPattern.cpp:
15729 * kcanvas/device/KRenderingPaintServerSolid.cpp:
15730 * platform/graphics/svg/SVGResourceClipper.cpp:
15731 * rendering/RenderTreeAsText.cpp:
15732 * rendering/SVGRenderTreeAsText.cpp: Added.
15733 * rendering/SVGRenderTreeAsText.h: Added.
15734 (WebCore::operator<<):
15736 2006-10-31 MorganL <morganl.webkit@yahoo.com>
15738 Reviewed by Maciej.
15740 Fixes http://bugs.webkit.org/show_bug.cgi?id=11286
15741 Includes some CRLF -> LF fixups.
15743 * platform/win/CookieJarWin.cpp:
15744 (WebCore::cookies):
15746 2006-10-31 Adam Roben <aroben@apple.com>
15750 Fix some incorrect forward declarations.
15752 * loader/FrameLoader.h:
15755 2006-10-31 Darin Adler <darin@apple.com>
15757 * WebCore.xcodeproj/project.pbxproj: Change GraphicsTypes.h to a private header to
15758 try to fix the build on the buildbot.
15760 2006-10-31 Darin Adler <darin@apple.com>
15762 * bridge/mac/FrameMac.mm:
15763 (WebCore::FrameMac::advanceToNextMisspelling): Build fix for release Tiger builds.
15764 (WebCore::FrameMac::markMisspellings): Ditto.
15766 2006-10-31 John Sullivan <sullivan@apple.com>
15768 * bridge/mac/FrameMac.mm:
15769 (WebCore::FrameMac::advanceToNextMisspelling):
15770 build fix: needed #ifndef BUILDING_ON_TIGER in one more place
15772 2006-10-30 John Sullivan <sullivan@apple.com>
15774 Reviewed by Adam Roben
15776 - fixes <rdar://problem/4804614> Bad grammar ranges are not visibly marked
15778 This patch introduces much of the guts of grammar checking, though still not enough to actually
15779 check grammar sensibly, due to:
15781 <rdar://problem/4811175> Many false reports of bad grammar appear, caused by insufficient
15782 context passed to grammar checker
15784 * platform/Logging.h:
15785 * platform/Logging.cpp:
15786 new log channel SpellingAndGrammar
15788 * bridge/mac/WebCorePageBridge.mm:
15789 (initializeLoggingChannelsIfNecessary):
15790 initialize new log channel
15792 * bridge/mac/FrameMac.mm:
15793 (WebCore::FrameMac::advanceToNextMisspelling):
15794 Compute bad grammar range when computing misspelling range. Find first detailed grammar range from the
15795 set NSSpellChecker determines. Compare it with misspelling range to see which is earliest (or shortest
15796 in the event of a tie), and do further processing with that one (select range; create marker that
15797 causes range to be visibly marked with a funky underline; update spelling panel appropriately).
15798 (WebCore::FrameMac::markMisspellings):
15799 More or less the same types of changes as in advanceToNextMisspelling The loops are structured just
15800 differently enough to make sharing code between these two functions a little tricky, so I decided to
15801 save that for a later patch.
15803 (WebCore::FrameMac::respondToChangedSelection):
15804 remove grammar markers when we remove spelling markers
15806 2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
15810 Fix Qt/Linux build with older gcc3.3.4.
15812 * bindings/js/kjs_window.cpp:
15813 (KJS::WindowFunc::callAsFunction):
15815 2006-10-31 Zack Rusin <zack@kde.org>
15819 Fix the Qt build after last nights changes.
15821 * WebCore/platform/qt/FrameQt.cpp:
15822 * WebCore/platform/qt/EditorClientQt.h:
15823 * WebCore/platform/qt/EditorClientQt.cpp:
15824 * WebCore/platform/graphics/svg/qt/SVGResourceImageQt.cpp:
15825 * WebCore/platform/graphics/svg/qt/SVGResourceClipperQt.cpp:
15826 * WebCore/CMakeLists.txt:
15827 * WebCore/kcanvas/device/qt/KRenderingDeviceQt.cpp:
15828 * WebKitQt/QtLauncher/CMakeLists.txt:
15829 * WebKitQt/WebKitPart/CMakeLists.txt:
15831 2006-10-30 Darin Adler <darin@apple.com>
15833 Reviewed by Anders.
15835 - remove BrowserExtension
15837 * WebCore.vcproj/WebCore/WebCore.vcproj:
15838 * WebCore.xcodeproj/project.pbxproj:
15839 * bindings/js/kjs_window.cpp:
15840 (KJS::createNewWindow):
15841 (KJS::WindowFunc::callAsFunction):
15842 * bridge/BrowserExtension.h: Removed.
15843 * bridge/mac/BrowserExtensionMac.h: Removed.
15844 * bridge/mac/BrowserExtensionMac.mm: Removed.
15845 * bridge/mac/FrameMac.mm:
15846 (WebCore::FrameMac::FrameMac):
15847 (WebCore::FrameMac::submitForm):
15848 (WebCore::FrameMac::urlSelected):
15849 * bridge/win/BrowserExtensionWin.cpp: Removed.
15850 * bridge/win/BrowserExtensionWin.h: Removed.
15851 * bridge/win/FrameWin.cpp:
15852 (WebCore::FrameWin::FrameWin):
15853 * loader/FrameLoader.cpp:
15854 (WebCore::FrameLoader::createWindow):
15855 * loader/FrameLoader.h:
15856 * loader/icon/IconLoader.cpp:
15857 * loader/mac/FrameLoaderMac.mm:
15858 (WebCore::FrameLoader::safeLoad):
15859 (WebCore::FrameLoader::load):
15860 (WebCore::FrameLoader::createWindow):
15862 (WebCore::Frame::urlSelected):
15863 (WebCore::Frame::requestFrame):
15864 (WebCore::Frame::submitForm):
15865 (WebCore::Frame::scheduleHistoryNavigation):
15866 (WebCore::Frame::redirectionTimerFired):
15868 * page/FrameLoadRequest.h:
15869 (WebCore::FrameLoadRequest::FrameLoadRequest):
15870 (WebCore::FrameLoadRequest::isEmpty):
15871 (WebCore::FrameLoadRequest::resourceRequest):
15872 (WebCore::FrameLoadRequest::frameName):
15873 (WebCore::FrameLoadRequest::setFrameName):
15874 * page/FramePrivate.h:
15875 (WebCore::FramePrivate::FramePrivate):
15876 (WebCore::FramePrivate::~FramePrivate):
15877 * platform/gdk/BrowserExtensionGdk.h: Removed.
15878 * platform/gdk/FrameGdk.cpp:
15879 (WebCore::FrameGdk::FrameGdk):
15880 * platform/gdk/TemporaryLinkStubs.cpp:
15881 * platform/network/ResourceRequest.h:
15882 (WebCore::ResourceRequest::isEmpty):
15884 2006-10-31 Nikolas Zimmermann <zimmermann@kde.org>
15886 Reviewed by Oliver.
15888 Modified from original due to earlier reversion
15890 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11436
15892 Better SVG integration in WebKit, Part I.
15894 The patch is mostly about creating a new platform/graphics directory, and
15895 moving the kcanvas resources (clipper/masker/marker) there (in svg budir),
15896 with a new name (KCanvasClipper -> SVGResourceClipper). Also fix several ownership
15897 issues, by using ref counting (the SVG classes now store RefPtrs to the resources).
15899 KCanvasFilters is still left in kcanvas/ subdirectory, to be converted in a next patch.
15900 All details of the patch, and upcoming patches can be found in the bug report.
15903 * WebCore.xcodeproj/project.pbxproj:
15904 * graphics/svg/SVGResource.cpp: Removed.
15905 * graphics/svg/SVGResourceClipper.cpp: Removed.
15906 * graphics/svg/SVGResourceClipper.h: Removed.
15907 * graphics/svg/SVGResourceImage.h: Removed.
15908 * graphics/svg/SVGResourceListener.h: Removed.
15909 * graphics/svg/SVGResourceMarker.cpp: Removed.
15910 * graphics/svg/SVGResourceMarker.h: Removed.
15911 * graphics/svg/SVGResourceMasker.cpp: Removed.
15912 * graphics/svg/SVGResourceMasker.h: Removed.
15913 * kcanvas/KCanvasClipper.cpp: Removed.
15914 * kcanvas/KCanvasClipper.h: Removed.
15915 * kcanvas/KCanvasCreator.cpp: Removed.
15916 * kcanvas/KCanvasCreator.h: Removed.
15917 * kcanvas/KCanvasFilters.cpp:
15918 (WebCore::getFilterById):
15919 * kcanvas/KCanvasFilters.h:
15920 * kcanvas/KCanvasImage.h: Removed.
15921 * kcanvas/KCanvasMarker.cpp: Removed.
15922 * kcanvas/KCanvasMarker.h: Removed.
15923 * kcanvas/KCanvasMasker.cpp: Removed.
15924 * kcanvas/KCanvasMasker.h: Removed.
15925 * kcanvas/KCanvasResource.cpp: Removed.
15926 * kcanvas/KCanvasResource.h: Removed.
15927 * kcanvas/KCanvasResourceListener.h: Removed.
15928 * kcanvas/KCanvasTreeDebug.cpp:
15929 (WebCore::writeRenderResources):
15930 * kcanvas/device/KRenderingDevice.h:
15931 * kcanvas/device/KRenderingPaintServer.h:
15932 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
15933 * kcanvas/device/KRenderingPaintServerGradient.cpp:
15934 (WebCore::KRenderingPaintServerGradient::listener):
15935 (WebCore::KRenderingPaintServerGradient::setListener):
15936 * kcanvas/device/KRenderingPaintServerGradient.h:
15937 * kcanvas/device/KRenderingPaintServerPattern.cpp:
15938 (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
15939 (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
15940 (WebCore::KRenderingPaintServerPattern::tile):
15941 (WebCore::KRenderingPaintServerPattern::setTile):
15942 (WebCore::KRenderingPaintServerPattern::listener):
15943 (WebCore::KRenderingPaintServerPattern::setListener):
15944 * kcanvas/device/KRenderingPaintServerPattern.h:
15945 * kcanvas/device/KRenderingPaintServerSolid.h:
15946 * kcanvas/device/qt/KCanvasClipperQt.cpp: Removed.
15947 * kcanvas/device/qt/KCanvasClipperQt.h:
15948 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
15949 (WebCore::KRenderingDeviceQt::contextForImage):
15950 (WebCore::KRenderingDeviceQt::createResource):
15951 (WebCore::KRenderingDeviceQt::createPaintServer):
15952 * kcanvas/device/qt/KRenderingDeviceQt.h:
15953 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
15954 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
15955 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
15956 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
15957 * kcanvas/device/qt/RenderPathQt.h: Removed.
15958 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
15959 (WebCore::KCanvasFilterQuartz::getCIFilterStack):
15960 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
15961 * kcanvas/device/quartz/KCanvasMaskerQuartz.h: Removed.
15962 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm: Removed.
15963 * kcanvas/device/quartz/KCanvasResourcesQuartz.h: Removed.
15964 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm: Removed.
15965 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
15966 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
15967 (WebCore::KRenderingDeviceQuartz::contextForImage):
15968 (WebCore::KRenderingDeviceQuartz::createPaintServer):
15969 (WebCore::KRenderingDeviceQuartz::createResource):
15970 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
15971 (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
15972 (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
15973 (WebCore::KRenderingPaintServerGradientQuartz::setup):
15974 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
15975 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
15976 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
15977 (WebCore::patternCallback):
15978 (WebCore::KRenderingPaintServerPatternQuartz::setup):
15979 * kcanvas/device/quartz/QuartzSupport.mm:
15980 * ksvg2/misc/KCanvasRenderingStyle.cpp:
15981 (WebCore::sharedSolidPaintServer):
15982 * ksvg2/svg/SVGClipPathElement.cpp:
15983 (WebCore::SVGClipPathElement::SVGClipPathElement):
15984 (WebCore::SVGClipPathElement::~SVGClipPathElement):
15985 (WebCore::SVGClipPathElement::canvasResource):
15986 * ksvg2/svg/SVGClipPathElement.h:
15987 * ksvg2/svg/SVGFEImageElement.cpp:
15988 * ksvg2/svg/SVGFilterElement.cpp:
15989 (WebCore::SVGFilterElement::SVGFilterElement):
15990 (WebCore::SVGFilterElement::~SVGFilterElement):
15991 (WebCore::SVGFilterElement::canvasResource):
15992 * ksvg2/svg/SVGFilterElement.h:
15993 * ksvg2/svg/SVGGradientElement.cpp:
15994 (WebCore::SVGGradientElement::SVGGradientElement):
15995 (WebCore::SVGGradientElement::~SVGGradientElement):
15996 (WebCore::SVGGradientElement::canvasResource):
15997 (WebCore::SVGGradientElement::resourceNotification):
15998 * ksvg2/svg/SVGGradientElement.h:
15999 * ksvg2/svg/SVGImageElement.cpp:
16000 * ksvg2/svg/SVGLinearGradientElement.cpp:
16001 (WebCore::SVGLinearGradientElement::buildGradient):
16002 * ksvg2/svg/SVGLinearGradientElement.h:
16003 * ksvg2/svg/SVGMarkerElement.cpp:
16004 (WebCore::SVGMarkerElement::SVGMarkerElement):
16005 (WebCore::SVGMarkerElement::~SVGMarkerElement):
16006 (WebCore::SVGMarkerElement::canvasResource):
16007 * ksvg2/svg/SVGMarkerElement.h:
16008 * ksvg2/svg/SVGMaskElement.cpp:
16009 (WebCore::SVGMaskElement::SVGMaskElement):
16010 (WebCore::SVGMaskElement::~SVGMaskElement):
16011 (WebCore::SVGMaskElement::drawMaskerContent):
16012 (WebCore::SVGMaskElement::canvasResource):
16013 * ksvg2/svg/SVGMaskElement.h:
16014 * ksvg2/svg/SVGPatternElement.cpp:
16015 (WebCore::SVGPatternElement::SVGPatternElement):
16016 (WebCore::SVGPatternElement::~SVGPatternElement):
16017 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
16018 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
16019 (WebCore::SVGPatternElement::canvasResource):
16020 * ksvg2/svg/SVGPatternElement.h:
16021 * ksvg2/svg/SVGRadialGradientElement.cpp:
16022 (WebCore::SVGRadialGradientElement::buildGradient):
16023 * ksvg2/svg/SVGRadialGradientElement.h:
16024 * ksvg2/svg/SVGStyledElement.h:
16025 (WebCore::SVGStyledElement::canvasResource):
16026 * platform/GraphicsContext.cpp: Removed.
16027 * platform/GraphicsContext.h: Removed.
16028 * platform/GraphicsTypes.cpp: Removed.
16029 * platform/GraphicsTypes.h: Removed.
16030 * platform/graphics/GraphicsContext.cpp:
16031 (WebCore::GraphicsContextState::GraphicsContextState):
16032 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
16033 (WebCore::GraphicsContext::createGraphicsContextPrivate):
16034 (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
16035 (WebCore::GraphicsContext::save):
16036 (WebCore::GraphicsContext::restore):
16037 (WebCore::GraphicsContext::font):
16038 (WebCore::GraphicsContext::setFont):
16039 (WebCore::GraphicsContext::pen):
16040 (WebCore::GraphicsContext::setPen):
16041 (WebCore::GraphicsContext::setFillColor):
16042 (WebCore::GraphicsContext::fillColor):
16043 (WebCore::GraphicsContext::updatingControlTints):
16044 (WebCore::GraphicsContext::setUpdatingControlTints):
16045 (WebCore::GraphicsContext::setPaintingDisabled):
16046 (WebCore::GraphicsContext::paintingDisabled):
16047 (WebCore::GraphicsContext::drawImage):
16048 (WebCore::GraphicsContext::drawText):
16049 (WebCore::GraphicsContext::drawHighlightForText):
16050 (WebCore::GraphicsContext::initFocusRing):
16051 (WebCore::GraphicsContext::clearFocusRing):
16052 (WebCore::GraphicsContext::focusRingBoundingRect):
16053 (WebCore::GraphicsContext::addFocusRingRect):
16054 (WebCore::GraphicsContext::focusRingWidth):
16055 (WebCore::GraphicsContext::focusRingOffset):
16056 (WebCore::GraphicsContext::focusRingRects):
16057 (WebCore::GraphicsContext::drawTiledImage):
16058 * platform/graphics/GraphicsContext.h:
16059 * platform/graphics/GraphicsTypes.cpp:
16061 (WebCore::parseCompositeOperator):
16062 (WebCore::compositeOperatorName):
16063 (WebCore::parseLineCap):
16064 (WebCore::lineCapName):
16065 (WebCore::parseLineJoin):
16066 (WebCore::lineJoinName):
16067 * platform/graphics/GraphicsTypes.h:
16069 * platform/graphics/svg/SVGResource.cpp: Added.
16070 (WebCore::SVGResource::SVGResource):
16071 (WebCore::SVGResource::~SVGResource):
16072 (WebCore::SVGResource::invalidate):
16073 (WebCore::SVGResource::addClient):
16074 (WebCore::SVGResource::clients):
16075 (WebCore::SVGResource::idInRegistry):
16076 (WebCore::SVGResource::setIdInRegistry):
16077 (WebCore::SVGResource::externalRepresentation):
16078 (WebCore::getResourceById):
16079 (WebCore::getPaintServerById):
16080 (WebCore::operator<<):
16081 * platform/graphics/svg/SVGResource.h: Added.
16083 (WebCore::SVGResource::isPaintServer):
16084 (WebCore::SVGResource::isFilter):
16085 (WebCore::SVGResource::isClipper):
16086 (WebCore::SVGResource::isMarker):
16087 (WebCore::SVGResource::isMasker):
16088 (WebCore::SVGResourceListener::~SVGResourceListener):
16089 * platform/graphics/svg/SVGResourceClipper.cpp: Added.
16090 (WebCore::SVGResourceClipper::SVGResourceClipper):
16091 (WebCore::SVGResourceClipper::~SVGResourceClipper):
16092 (WebCore::SVGResourceClipper::resetClipData):
16093 (WebCore::SVGResourceClipper::addClipData):
16094 (WebCore::SVGResourceClipper::clipData):
16095 (WebCore::SVGResourceClipper::externalRepresentation):
16096 (WebCore::operator<<):
16097 (WebCore::getClipperById):
16098 * platform/graphics/svg/SVGResourceClipper.h: Added.
16099 (WebCore::ClipDataList::addPath):
16100 (WebCore::SVGResourceClipper::isClipper):
16101 * platform/graphics/svg/SVGResourceImage.h: Added.
16102 * platform/graphics/svg/SVGResourceMarker.cpp: Added.
16103 (WebCore::SVGResourceMarker::SVGResourceMarker):
16104 (WebCore::SVGResourceMarker::~SVGResourceMarker):
16105 (WebCore::SVGResourceMarker::setMarker):
16106 (WebCore::SVGResourceMarker::setRef):
16107 (WebCore::SVGResourceMarker::draw):
16108 (WebCore::SVGResourceMarker::externalRepresentation):
16109 (WebCore::getMarkerById):
16110 * platform/graphics/svg/SVGResourceMarker.h: Added.
16111 (WebCore::SVGResourceMarker::refX):
16112 (WebCore::SVGResourceMarker::refY):
16113 (WebCore::SVGResourceMarker::setAngle):
16114 (WebCore::SVGResourceMarker::setAutoAngle):
16115 (WebCore::SVGResourceMarker::angle):
16116 (WebCore::SVGResourceMarker::setUseStrokeWidth):
16117 (WebCore::SVGResourceMarker::useStrokeWidth):
16118 (WebCore::SVGResourceMarker::isMarker):
16119 * platform/graphics/svg/SVGResourceMasker.cpp: Added.
16120 (WebCore::SVGResourceMasker::SVGResourceMasker):
16121 (WebCore::SVGResourceMasker::~SVGResourceMasker):
16122 (WebCore::SVGResourceMasker::setMask):
16123 (WebCore::SVGResourceMasker::mask):
16124 (WebCore::SVGResourceMasker::externalRepresentation):
16125 (WebCore::getMaskerById):
16126 * platform/graphics/svg/SVGResourceMasker.h: Added.
16127 (WebCore::SVGResourceMasker::isMasker):
16128 * platform/graphics/svg/cg/SVGResourceClipperCg.mm: Added.
16129 (WebCore::SVGResourceClipper::applyClip):
16130 * platform/graphics/svg/cg/SVGResourceImageCg.mm: Added.
16131 (WebCore::SVGResourceImage::SVGResourceImage):
16132 (WebCore::SVGResourceImage::~SVGResourceImage):
16133 (WebCore::SVGResourceImage::init):
16134 (WebCore::SVGResourceImage::size):
16135 (WebCore::SVGResourceImage::cgLayer):
16136 (WebCore::SVGResourceImage::setCGLayer):
16137 * platform/graphics/svg/cg/SVGResourceMaskerCg.mm: Added.
16138 (WebCore::applyLuminanceToAlphaFilter):
16139 (WebCore::applyExpandAlphatoGrayscaleFilter):
16140 (WebCore::transformImageIntoGrayscaleMask):
16141 (WebCore::SVGResourceMasker::applyMask):
16142 * platform/graphics/svg/qt/SVGResourceClipperQt.cpp: Added.
16143 (WebCore::SVGResourceClipper::applyClip):
16144 * platform/graphics/svg/qt/SVGResourceImageQt.cpp: Added.
16145 (WebCore::SVGResourceImage::init):
16146 (WebCore::SVGResourceImage::size):
16147 * platform/graphics/svg/qt/SVGResourceMaskerQt.cpp: Added.
16148 (WebCore::SVGResourceMasker::applyMask):
16149 * platform/qt/GraphicsContextQt.cpp:
16150 * rendering/RenderPath.cpp:
16151 (WebCore::RenderPath::paint):
16152 (WebCore::DrawMarkersData::DrawMarkersData):
16153 (WebCore::RenderPath::drawMarkersIfNeeded):
16154 * rendering/RenderSVGContainer.cpp:
16155 (WebCore::RenderSVGContainer::paint):
16156 * rendering/RenderSVGImage.cpp:
16157 (WebCore::RenderSVGImage::paint):
16158 * rendering/SVGInlineFlowBox.cpp:
16159 (WebCore::paintSVGInlineFlow):
16161 2006-10-30 John Sullivan <sullivan@apple.com>
16165 - minor cleanup to make future patches clearer
16167 * bridge/mac/FrameMac.mm:
16168 (WebCore::FrameMac::advanceToNextMisspelling):
16169 renamed misspelling to misspellingNSRange for clarity; changed > 0 test to == 0 test
16170 with "continue" to better match structure of similar code in markMisspellings; a few
16171 other style tweaks.
16173 (WebCore::FrameMac::markMisspellings):
16174 renamed misspelling to misspellingNSRange for clarity; removed unnecessary braces around
16175 a block just after a break and outdented accordingly.
16177 2006-10-30 John Sullivan <sullivan@apple.com>
16179 Reviewed by Geoff Garen
16181 WebCore part of change to push the code that updates the spelling panel
16182 into WebCore, in preparation for some grammar-checking stuff.
16184 * bridge/mac/FrameMac.h:
16185 * bridge/mac/FrameMac.mm:
16186 (WebCore::FrameMac::advanceToNextMisspelling):
16187 no more return value for this method, and update the spelling panel with
16188 the misspelled word here rather than in the WebKit callers.
16190 2006-10-30 Oliver Hunt <oliver@apple.com>
16192 Reviewed by Anders.
16194 Roll out last patch
16198 * WebCore.xcodeproj/project.pbxproj:
16199 * graphics/svg/SVGResource.cpp:
16200 * graphics/svg/SVGResourceClipper.cpp:
16201 * graphics/svg/SVGResourceClipper.h:
16202 * graphics/svg/SVGResourceImage.h:
16203 * graphics/svg/SVGResourceListener.h:
16204 * graphics/svg/SVGResourceMarker.cpp:
16205 * graphics/svg/SVGResourceMarker.h:
16206 * graphics/svg/SVGResourceMasker.cpp:
16207 * graphics/svg/SVGResourceMasker.h:
16208 * kcanvas/KCanvasClipper.cpp: Added.
16209 (WebCore::operator<<):
16210 (WebCore::KCanvasClipper::KCanvasClipper):
16211 (WebCore::KCanvasClipper::~KCanvasClipper):
16212 (WebCore::KCanvasClipper::resetClipData):
16213 (WebCore::KCanvasClipper::addClipData):
16214 (WebCore::KCanvasClipper::clipData):
16215 (WebCore::KCanvasClipper::externalRepresentation):
16216 (WebCore::getClipperById):
16217 * kcanvas/KCanvasClipper.h: Added.
16218 (WebCore::KCClipData::windRule):
16219 (WebCore::KCClipDataList::KCClipDataList):
16220 (WebCore::KCClipDataList::addPath):
16221 (WebCore::KCanvasClipper::isClipper):
16222 * kcanvas/KCanvasFilters.cpp:
16223 (WebCore::getFilterById):
16224 * kcanvas/KCanvasFilters.h:
16225 * kcanvas/KCanvasImage.h: Added.
16226 (WebCore::KCanvasImage::KCanvasImage):
16227 (WebCore::KCanvasImage::~KCanvasImage):
16228 * kcanvas/KCanvasMarker.cpp: Added.
16229 (WebCore::KCanvasMarker::KCanvasMarker):
16230 (WebCore::KCanvasMarker::~KCanvasMarker):
16231 (WebCore::KCanvasMarker::setMarker):
16232 (WebCore::KCanvasMarker::setRef):
16233 (WebCore::KCanvasMarker::refX):
16234 (WebCore::KCanvasMarker::refY):
16235 (WebCore::KCanvasMarker::setAngle):
16236 (WebCore::KCanvasMarker::angle):
16237 (WebCore::KCanvasMarker::setAutoAngle):
16238 (WebCore::KCanvasMarker::setUseStrokeWidth):
16239 (WebCore::KCanvasMarker::useStrokeWidth):
16240 (WebCore::KCanvasMarker::draw):
16241 (WebCore::KCanvasMarker::externalRepresentation):
16242 (WebCore::getMarkerById):
16243 * kcanvas/KCanvasMarker.h: Added.
16244 (WebCore::KCanvasMarker::isMarker):
16245 * kcanvas/KCanvasMasker.cpp: Added.
16246 (WebCore::KCanvasMasker::KCanvasMasker):
16247 (WebCore::KCanvasMasker::~KCanvasMasker):
16248 (WebCore::KCanvasMasker::setMask):
16249 (WebCore::KCanvasMasker::externalRepresentation):
16250 (WebCore::getMaskerById):
16251 * kcanvas/KCanvasMasker.h: Added.
16252 (WebCore::KCanvasMasker::isMasker):
16253 (WebCore::KCanvasMasker::mask):
16254 * kcanvas/KCanvasResource.cpp: Added.
16255 (WebCore::operator<<):
16256 (WebCore::KCanvasResource::KCanvasResource):
16257 (WebCore::KCanvasResource::~KCanvasResource):
16258 (WebCore::KCanvasResource::addClient):
16259 (WebCore::KCanvasResource::clients):
16260 (WebCore::KCanvasResource::invalidate):
16261 (WebCore::KCanvasResource::idInRegistry):
16262 (WebCore::KCanvasResource::setIdInRegistry):
16263 (WebCore::KCanvasResource::externalRepresentation):
16264 (WebCore::getResourceById):
16265 (WebCore::getPaintServerById):
16266 * kcanvas/KCanvasResource.h:
16268 (WebCore::KCanvasResource::isPaintServer):
16269 (WebCore::KCanvasResource::isFilter):
16270 (WebCore::KCanvasResource::isClipper):
16271 (WebCore::KCanvasResource::isMarker):
16272 (WebCore::KCanvasResource::isMasker):
16273 * kcanvas/KCanvasResourceListener.h: Added.
16274 (KCanvasResourceListener::KCanvasResourceListener):
16275 (KCanvasResourceListener::~KCanvasResourceListener):
16276 * kcanvas/KCanvasTreeDebug.cpp:
16277 (WebCore::writeRenderResources):
16278 * kcanvas/device/KRenderingDevice.h:
16279 * kcanvas/device/KRenderingPaintServer.h:
16280 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
16281 (WebCore::KRenderingPaintServer::idInRegistry):
16282 (WebCore::KRenderingPaintServer::setIdInRegistry):
16283 * kcanvas/device/KRenderingPaintServerGradient.cpp:
16284 (WebCore::KRenderingPaintServerGradient::listener):
16285 (WebCore::KRenderingPaintServerGradient::setListener):
16286 * kcanvas/device/KRenderingPaintServerGradient.h:
16287 * kcanvas/device/KRenderingPaintServerPattern.cpp:
16288 (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
16289 (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
16290 (WebCore::KRenderingPaintServerPattern::tile):
16291 (WebCore::KRenderingPaintServerPattern::setTile):
16292 (WebCore::KRenderingPaintServerPattern::listener):
16293 (WebCore::KRenderingPaintServerPattern::setListener):
16294 * kcanvas/device/KRenderingPaintServerPattern.h:
16295 * kcanvas/device/KRenderingPaintServerSolid.h:
16296 * kcanvas/device/qt/KCanvasClipperQt.cpp:
16297 (WebCore::KCanvasClipperQt::applyClip):
16298 * kcanvas/device/qt/KCanvasClipperQt.h:
16299 (WebCore::KCanvasClipperQt::KCanvasClipperQt):
16300 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
16301 (WebCore::KRenderingDeviceQt::contextForImage):
16302 (WebCore::KRenderingDeviceQt::createResource):
16303 (WebCore::KRenderingDeviceQt::createPaintServer):
16304 * kcanvas/device/qt/KRenderingDeviceQt.h:
16305 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
16306 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
16307 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
16308 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
16309 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
16310 (WebCore::KCanvasFilterQuartz::getCIFilterStack):
16311 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
16312 * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
16313 (WebCore::KCanvasMaskerQuartz::KCanvasMaskerQuartz):
16314 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
16315 (WebCore::applyLuminanceToAlphaFilter):
16316 (WebCore::applyExpandAlphatoGrayscaleFilter):
16317 (WebCore::transformImageIntoGrayscaleMask):
16318 (WebCore::KCanvasMaskerQuartz::applyMask):
16319 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
16320 (WebCore::KCanvasClipperQuartz::KCanvasClipperQuartz):
16321 (WebCore::KCanvasImageQuartz::KCanvasImageQuartz):
16322 (WebCore::KCanvasImageQuartz::init):
16323 (WebCore::KCanvasImageQuartz::size):
16324 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
16325 (WebCore::KCanvasClipperQuartz::applyClip):
16326 (WebCore::KCanvasImageQuartz::~KCanvasImageQuartz):
16327 (WebCore::KCanvasImageQuartz::cgLayer):
16328 (WebCore::KCanvasImageQuartz::setCGLayer):
16329 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
16330 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
16331 (WebCore::KRenderingDeviceQuartz::contextForImage):
16332 (WebCore::KRenderingDeviceQuartz::createPaintServer):
16333 (WebCore::KRenderingDeviceQuartz::createResource):
16334 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
16335 (WebCore::KRenderingPaintServerGradientQuartz::KRenderingPaintServerGradientQuartz):
16336 (WebCore::KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz):
16337 (WebCore::KRenderingPaintServerGradientQuartz::setup):
16338 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
16339 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
16340 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
16341 (WebCore::patternCallback):
16342 (WebCore::KRenderingPaintServerPatternQuartz::setup):
16343 * kcanvas/device/quartz/QuartzSupport.mm:
16344 * ksvg2/misc/KCanvasRenderingStyle.cpp:
16345 (WebCore::sharedSolidPaintServer):
16346 * ksvg2/svg/SVGClipPathElement.cpp:
16347 (WebCore::SVGClipPathElement::SVGClipPathElement):
16348 (WebCore::SVGClipPathElement::~SVGClipPathElement):
16349 (WebCore::SVGClipPathElement::canvasResource):
16350 * ksvg2/svg/SVGClipPathElement.h:
16351 * ksvg2/svg/SVGFEImageElement.cpp:
16352 * ksvg2/svg/SVGFilterElement.cpp:
16353 (WebCore::SVGFilterElement::SVGFilterElement):
16354 (WebCore::SVGFilterElement::~SVGFilterElement):
16355 (WebCore::SVGFilterElement::canvasResource):
16356 * ksvg2/svg/SVGFilterElement.h:
16357 * ksvg2/svg/SVGGradientElement.cpp:
16358 (WebCore::SVGGradientElement::SVGGradientElement):
16359 (WebCore::SVGGradientElement::~SVGGradientElement):
16360 (WebCore::SVGGradientElement::canvasResource):
16361 (WebCore::SVGGradientElement::resourceNotification):
16362 * ksvg2/svg/SVGGradientElement.h:
16363 * ksvg2/svg/SVGImageElement.cpp:
16364 * ksvg2/svg/SVGLinearGradientElement.cpp:
16365 (WebCore::SVGLinearGradientElement::buildGradient):
16366 * ksvg2/svg/SVGLinearGradientElement.h:
16367 * ksvg2/svg/SVGMarkerElement.cpp:
16368 (WebCore::SVGMarkerElement::SVGMarkerElement):
16369 (WebCore::SVGMarkerElement::~SVGMarkerElement):
16370 (WebCore::SVGMarkerElement::canvasResource):
16371 * ksvg2/svg/SVGMarkerElement.h:
16372 * ksvg2/svg/SVGMaskElement.cpp:
16373 (WebCore::SVGMaskElement::SVGMaskElement):
16374 (WebCore::SVGMaskElement::~SVGMaskElement):
16375 (WebCore::SVGMaskElement::drawMaskerContent):
16376 (WebCore::SVGMaskElement::canvasResource):
16377 * ksvg2/svg/SVGMaskElement.h:
16378 * ksvg2/svg/SVGPatternElement.cpp:
16379 (WebCore::SVGPatternElement::SVGPatternElement):
16380 (WebCore::SVGPatternElement::~SVGPatternElement):
16381 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
16382 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
16383 (WebCore::SVGPatternElement::canvasResource):
16384 * ksvg2/svg/SVGPatternElement.h:
16385 * ksvg2/svg/SVGRadialGradientElement.cpp:
16386 (WebCore::SVGRadialGradientElement::buildGradient):
16387 * ksvg2/svg/SVGRadialGradientElement.h:
16388 * ksvg2/svg/SVGStyledElement.h:
16389 (WebCore::SVGStyledElement::canvasResource):
16390 * platform/GraphicsContext.cpp: Added.
16391 (WebCore::GraphicsContextState::GraphicsContextState):
16392 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
16393 (WebCore::GraphicsContext::createGraphicsContextPrivate):
16394 (WebCore::GraphicsContext::destroyGraphicsContextPrivate):
16395 (WebCore::GraphicsContext::save):
16396 (WebCore::GraphicsContext::restore):
16397 (WebCore::GraphicsContext::font):
16398 (WebCore::GraphicsContext::setFont):
16399 (WebCore::GraphicsContext::pen):
16400 (WebCore::GraphicsContext::setPen):
16401 (WebCore::GraphicsContext::setFillColor):
16402 (WebCore::GraphicsContext::fillColor):
16403 (WebCore::GraphicsContext::updatingControlTints):
16404 (WebCore::GraphicsContext::setUpdatingControlTints):
16405 (WebCore::GraphicsContext::setPaintingDisabled):
16406 (WebCore::GraphicsContext::paintingDisabled):
16407 (WebCore::GraphicsContext::drawImage):
16408 (WebCore::GraphicsContext::drawText):
16409 (WebCore::GraphicsContext::drawHighlightForText):
16410 (WebCore::GraphicsContext::initFocusRing):
16411 (WebCore::GraphicsContext::clearFocusRing):
16412 (WebCore::GraphicsContext::focusRingBoundingRect):
16413 (WebCore::GraphicsContext::addFocusRingRect):
16414 (WebCore::GraphicsContext::focusRingWidth):
16415 (WebCore::GraphicsContext::focusRingOffset):
16416 (WebCore::GraphicsContext::focusRingRects):
16417 (WebCore::GraphicsContext::drawTiledImage):
16418 * platform/GraphicsContext.h: Added.
16419 * platform/GraphicsTypes.cpp: Added.
16421 (WebCore::parseCompositeOperator):
16422 (WebCore::compositeOperatorName):
16423 (WebCore::parseLineCap):
16424 (WebCore::lineCapName):
16425 (WebCore::parseLineJoin):
16426 (WebCore::lineJoinName):
16427 * platform/GraphicsTypes.h: Added.
16429 * platform/graphics/GraphicsContext.cpp:
16430 * platform/graphics/GraphicsContext.h:
16431 * platform/graphics/GraphicsTypes.cpp:
16432 * platform/graphics/GraphicsTypes.h:
16433 * platform/qt/GraphicsContextQt.cpp:
16434 * rendering/RenderPath.cpp:
16435 (WebCore::RenderPath::paint):
16436 (WebCore::DrawMarkersData::DrawMarkersData):
16437 (WebCore::RenderPath::drawMarkersIfNeeded):
16438 * rendering/RenderSVGContainer.cpp:
16439 (WebCore::RenderSVGContainer::paint):
16440 * rendering/RenderSVGImage.cpp:
16441 (WebCore::RenderSVGImage::paint):
16442 * rendering/SVGInlineFlowBox.cpp:
16443 (WebCore::paintSVGInlineFlow):
16445 2006-10-30 John Sullivan <sullivan@apple.com>
16447 Reviewed by Geoff Garen.
16449 Moved spelling-related methods from bridge to EditorClient. Added one not-yet-used
16450 grammar-related method.
16452 * bridge/EditorClient.h:
16453 declare isContinuousSpellCheckingEnabled(), spellCheckerDocumentTag(), and new
16454 isGrammarCheckingEnabled()
16456 * bridge/mac/WebCoreFrameBridge.h:
16457 removed bridge equivalents
16459 * bridge/mac/FrameMac.mm:
16460 (WebCore::FrameMac::advanceToNextMisspelling):
16461 convert bridge-using code to editor()->client()-using code
16462 (WebCore::FrameMac::markMisspellingsInAdjacentWords):
16464 (WebCore::FrameMac::markMisspellings):
16466 (WebCore::FrameMac::respondToChangedSelection):
16469 * editing/Editor.h:
16470 * editing/Editor.cpp:
16471 (WebCore::Editor::client):
16472 new method, returns EditorClient pointer. In an ideal world all the code that needed to
16473 access the EditorClient would be in Editor.cpp, and we wouldn't need this accessor.
16474 But for now it's too tricky to extricate the spelling-related code from FrameMac.mm.
16476 2006-10-30 Geoffrey Garen <ggaren@apple.com>
16480 Removed a number of editing and selection methods from the bridge.
16482 I moved cross-platform editing and selection code into Editor and
16483 SelectionController, respecitvely.
16485 I moved ObjC and AppKit stuff up into WebKit, so I ended up exporting
16486 everything + the kitchen sink.
16488 Specific comments below for interesting things.
16490 * bindings/objc/DOMInternal.h: Moved exception handling helper methods into
16491 a new file so that WebKit can use them, too. Added a helper method for
16492 handling exceptions when selecting a Range.
16493 * bridge/mac/FrameMac.h: Moved attributedString creation and helper functions into
16494 WebKit, since they have to do with creating an NSAttributedString for API
16495 consumption, and not much to do with general Frame functionality.
16496 * editing/Editor.h: Moved lastEditCommand tracking (at least the data,
16497 for now) into the Editor. Eventually, the Frame will not have to notify
16498 the Editor of what the lastEditCommand was, since the Editor will perform
16500 * editing/SelectionController.h: The code here is just stuff moved from the bridge.
16501 * editing/SelectionController.cpp:
16502 (WebCore::SelectionController::setSelectedRange): We now explicitly check from DOM exceptions
16503 and return them. The bridge method to select a DOM range did this implicitly,
16504 since all ObjC DOM operations handle DOM exceptions by throwing them as
16506 * editing/TextAffinity.h: Added helper functions for conversion to NSSelectionAffinity.
16507 The two enumerations are numerically identical, but that's an implementation
16508 detail of TextAffinity that clients shouldn't be required to know about.
16510 2006-10-30 Timothy Hatcher <timothy@apple.com>
16512 Rolling out the following change because this crash:
16513 <rdar://problem/4806705> REGRESSION: Crash occurs at WebCore::Font::lineSpacing() when loading site (http://www.photoplusexpo.com/ppe/index.jsp)
16515 And this regression:
16516 <rdar://problem/4728514> REGRESSION: Safari applies the wrong font to BODY element at http://www.apple.com/downloads/dashboard/
16518 2006-09-06 David Harrison <harrison@apple.com>
16520 Reviewed and tweaked by Tim H.
16522 <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation
16524 If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
16525 to trigger a search that will include auto activation. No PLT or iBench perf impact.
16526 No layout tests affected. Not testable in an automated way that will work on all systems.
16528 * platform/mac/WebFontCache.mm:
16529 (+[WebFontCache fontWithFamily:traits:size:]):
16531 2006-10-30 Justin Garcia <justin.garcia@apple.com>
16533 Reviewed by harrison
16535 <rdar://problem/4808375>
16536 REGRESSION: TextIterator slowed down, affecting Find on Page & Copy (etc.) (11460)
16538 * editing/TextIterator.cpp:
16539 (WebCore::TextIterator::exitNode): Only create VisiblePositions
16540 when we're going to use them to create a range for an emitted character.
16541 We should further speed TextIterators up by avoiding creating VisiblePositions
16542 for TIs that are only used for the characters they emit (like the one that
16545 2006-10-30 Sam Weinig <sam.weinig@gmail.com>
16549 Fix for http://bugs.webkit.org/show_bug.cgi?id=11441
16550 More rendering code cleaning
16552 * WebCore.xcodeproj/project.pbxproj:
16553 * rendering/RenderApplet.cpp:
16554 (WebCore::RenderApplet::RenderApplet):
16555 (WebCore::RenderApplet::createWidgetIfNecessary):
16556 * rendering/RenderApplet.h:
16557 * rendering/RenderArena.cpp:
16559 (WebCore::RenderArena::RenderArena):
16560 (WebCore::RenderArena::allocate):
16561 (WebCore::RenderArena::free):
16562 * rendering/RenderArena.h:
16563 * rendering/RenderBR.cpp:
16564 (WebCore::RenderBR::RenderBR):
16565 (WebCore::RenderBR::baselinePosition):
16566 (WebCore::RenderBR::lineHeight):
16567 (WebCore::RenderBR::setStyle):
16568 (WebCore::RenderBR::caretMinOffset):
16569 (WebCore::RenderBR::positionForCoordinates):
16570 (WebCore::RenderBR::inlineBox):
16571 * rendering/RenderBR.h:
16572 * rendering/RenderBlock.cpp:
16573 * rendering/RenderBlock.h:
16574 (WebCore::RenderBlock::maxTopMargin):
16575 (WebCore::RenderBlock::maxBottomMargin):
16576 (WebCore::RenderBlock::initMaxMarginValues):
16577 (WebCore::RenderBlock::containsFloats):
16578 (WebCore::RenderBlock::setHasMarkupTruncation):
16579 (WebCore::RenderBlock::BlockSelectionInfo::BlockSelectionInfo):
16580 (WebCore::RenderBlock::BlockSelectionInfo::block):
16581 (WebCore::RenderBlock::BlockSelectionInfo::state):
16582 (WebCore::RenderBlock::FloatingObject::FloatingObject):
16583 (WebCore::RenderBlock::CompactInfo::clear):
16584 * rendering/RenderButton.cpp:
16585 (WebCore::RenderButton::removeChild):
16586 (WebCore::RenderButton::paintObject):
16587 * rendering/RenderButton.h:
16588 (WebCore::RenderButton::renderName):
16589 (WebCore::RenderButton::removeLeftoverAnonymousBoxes):
16590 * rendering/RenderContainer.cpp:
16591 (WebCore::RenderContainer::RenderContainer):
16592 * rendering/RenderContainer.h:
16593 (WebCore::RenderContainer::firstChild):
16594 (WebCore::RenderContainer::lastChild):
16595 (WebCore::RenderContainer::calcMinMaxWidth):
16596 * rendering/RenderCounter.cpp:
16597 (WebCore::RenderCounter::RenderCounter):
16598 (WebCore::toRoman):
16599 (WebCore::toHebrew):
16600 (WebCore::RenderCounter::calcMinMaxWidth):
16601 * rendering/RenderCounter.h:
16602 * rendering/RenderFieldset.cpp:
16603 (WebCore::RenderFieldset::paintBoxDecorations):
16604 (WebCore::RenderFieldset::paintBorderMinusLegend):
16605 (WebCore::RenderFieldset::setStyle):
16606 * rendering/RenderFileUploadControl.cpp:
16607 (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
16608 (WebCore::RenderFileUploadControl::setStyle):
16609 (WebCore::RenderFileUploadControl::paintObject):
16610 (WebCore::RenderFileUploadControl::calcMinMaxWidth):
16611 * rendering/RenderFileUploadControl.h:
16612 (WebCore::RenderFileUploadControl::renderName):
16613 * rendering/RenderFlexibleBox.h:
16614 * rendering/RenderFlow.cpp:
16615 * rendering/RenderFlow.h:
16616 * rendering/RenderForeignObject.cpp:
16617 (WebCore::RenderForeignObject::RenderForeignObject):
16618 (WebCore::RenderForeignObject::paint):
16619 (WebCore::RenderForeignObject::computeAbsoluteRepaintRect):
16620 (WebCore::RenderForeignObject::layout):
16621 (WebCore::RenderForeignObject::nodeAtPoint):
16622 * rendering/RenderForeignObject.h:
16623 (WebCore::RenderForeignObject::renderName):
16624 * rendering/RenderFormElement.cpp:
16625 (WebCore::RenderFormElement::setStyle):
16626 (WebCore::RenderFormElement::layout):
16627 (WebCore::RenderFormElement::textAlignment):
16628 * rendering/RenderFormElement.h:
16629 * rendering/RenderFrame.cpp:
16630 * rendering/RenderFrame.h:
16631 (WebCore::RenderFrame::element):
16632 * rendering/RenderFrameSet.cpp:
16633 * rendering/RenderFrameSet.h:
16634 (WebCore::RenderFrameSet::element):
16635 * rendering/RenderHTMLCanvas.cpp:
16636 (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
16637 (WebCore::RenderHTMLCanvas::paint):
16638 * rendering/RenderHTMLCanvas.h:
16639 (WebCore::RenderHTMLCanvas::renderName):
16640 * rendering/RenderImage.cpp:
16641 (WebCore::RenderImage::RenderImage):
16642 (WebCore::RenderImage::setStyle):
16643 (WebCore::RenderImage::setContentObject):
16644 (WebCore::RenderImage::setCachedImage):
16645 (WebCore::RenderImage::imageChanged):
16646 (WebCore::RenderImage::paint):
16647 (WebCore::RenderImage::layout):
16648 (WebCore::RenderImage::updateAltText):
16649 * rendering/RenderImage.h:
16650 (WebCore::RenderImage::element):
16651 * rendering/RenderInline.cpp:
16652 (WebCore::RenderInline::RenderInline):
16653 (WebCore::RenderInline::~RenderInline):
16654 (WebCore::RenderInline::setStyle):
16655 (WebCore::RenderInline::addChildToFlow):
16656 (WebCore::RenderInline::cloneInline):
16657 (WebCore::RenderInline::splitInlines):
16658 (WebCore::RenderInline::splitFlow):
16659 (WebCore::RenderInline::paint):
16660 (WebCore::RenderInline::absoluteRects):
16661 (WebCore::RenderInline::calcMinMaxWidth):
16662 (WebCore::RenderInline::requiresLayer):
16663 (WebCore::RenderInline::width):
16664 (WebCore::RenderInline::height):
16665 (WebCore::RenderInline::renderName):
16666 (WebCore::RenderInline::nodeAtPoint):
16667 (WebCore::RenderInline::positionForCoordinates):
16668 * rendering/RenderInline.h:
16669 (WebCore::RenderInline::layout):
16670 * rendering/RenderLayer.cpp:
16671 * rendering/RenderLayer.h:
16672 (WebCore::ClipRects::ClipRects):
16673 (WebCore::RenderLayer::nextSibling):
16674 (WebCore::RenderLayer::root):
16675 (WebCore::RenderLayer::setPos):
16676 (WebCore::RenderLayer::height):
16677 (WebCore::RenderLayer::relativePositionOffset):
16678 * rendering/RenderLineEdit.cpp:
16679 (WebCore::RenderLineEdit::setStyle):
16680 (WebCore::RenderLineEdit::updateFromElement):
16681 (WebCore::RenderLineEdit::selectionStart):
16682 (WebCore::RenderLineEdit::selectionEnd):
16683 (WebCore::RenderLineEdit::setSelectionStart):
16684 (WebCore::RenderLineEdit::setSelectionEnd):
16685 (WebCore::RenderLineEdit::setSelectionRange):
16686 * rendering/RenderLineEdit.h:
16687 * rendering/RenderListBox.cpp:
16688 * rendering/RenderListBox.h:
16689 (WebCore::RenderListBox::renderName):
16690 * rendering/RenderListItem.cpp:
16691 (WebCore::RenderListItem::setStyle):
16692 (WebCore::getParentOfFirstLineBox):
16693 (WebCore::RenderListItem::updateMarkerLocation):
16694 (WebCore::RenderListItem::positionListMarker):
16695 (WebCore::RenderListItem::paint):
16696 * rendering/RenderListItem.h:
16697 * rendering/RenderListMarker.cpp:
16698 * rendering/RenderListMarker.h:
16699 (WebCore::RenderListMarker::renderName):
16700 (WebCore::RenderListMarker::isListMarker):
16702 2006-10-30 Timothy Hatcher <timothy@apple.com>
16706 <rdar://problem/4478625> Basic table editing and culling
16708 Refined the criteria for deletable elements, rely on the renderer more.
16709 Corrected the interface positioning for elements that have borders.
16711 * editing/DeleteButtonController.cpp:
16712 (WebCore::isDeletableElement):
16713 (WebCore::DeleteButtonController::show):
16715 2006-10-30 Darin Adler <darin@apple.com>
16719 * loader/ResourceLoader.h: Added header guard.
16721 2006-10-31 Darin Adler <darin@apple.com>
16725 - fix FrameLoader files so they can be built on non-Mac platforms
16727 * page/FramePrivate.h:
16728 (WebCore::FramePrivate::FramePrivate): Added code to create the frame loader.
16729 (WebCore::FramePrivate::~FramePrivate): Added code to delete the frame loader.
16732 * page/Page.cpp: (WebCore::Page::setDefersLoading): Removed the
16733 #if PLATFORM(MAC) that Adam added as a stop-gap when I did this wrong
16736 * bridge/mac/FrameMac.mm:
16737 (WebCore::FrameMac::FrameMac): Removed code to create the frame loader.
16738 (WebCore::FrameMac::~FrameMac): Removed code to delete the frame loader.
16740 * loader/FrameLoader.h: Changed import to include, added #if PLATFORM(MAC)
16741 around the PolicyCheck definition.
16743 * loader/FormState.cpp: Changed import to include.
16744 * loader/FrameLoader.cpp: Ditto.
16745 * loader/MainResourceLoader.h: Ditto.
16747 * loader/FrameLoaderTypes.h: Added a header guard.
16749 * loader/NetscapePlugInStreamLoader.h: Changed import to include.
16750 Added #if PLATFORM(MAC) around Mac-specific details.
16751 * loader/SubresourceLoader.h: Ditto.
16753 * page/Frame.cpp: (WebCore::Frame::loader): Updated name of loader to
16754 m_loader from m_frameLoader.
16756 * CMakeLists.txt: Updated.
16757 * WebCoreSources.bkl: Updated.
16759 2006-10-30 Nikolas Zimmermann <zimmermann@kde.org>
16761 Reviewed and landed by Anders.
16763 Patch by Zack rusin to fix:
16764 http://bugs.webkit.org/show_bug.cgi?id=11429
16768 * platform/qt/FrameQtClient.cpp:
16769 (WebCore::FrameQtClientDefault::openURL):
16771 2006-10-30 Zach Rusin <zack@kde.org>
16773 Reviewed and landed by Anders.
16775 * platform/network/qt/ResourceHandleQt.cpp:
16776 (WebCore::ResourceHandle::receivedResponse):
16777 * platform/qt/FrameQtClient.cpp:
16778 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
16779 * platform/qt/LoaderFunctionsQt.cpp:
16780 (WebCore::ServeSynchronousRequest):
16783 2006-10-30 Simon Hausmann <hausmann@kde.org>
16785 Reviewed and landed by Anders.
16788 * platform/qt/FrameQtClient.cpp: ResourceLoaderClient ->
16789 ResourceHandleClient
16791 2006-10-30 Darin Adler <darin@apple.com>
16793 Reviewed by John Sullivan.
16795 - work toward removing Objective-C data types from FrameLoader.h:
16796 removed NSDate, NSString, WebCorePageState, WebCoreResourceLoader,
16797 and WebCoreResourceHandle
16798 - moved bodyBackgroundColor function from Frame to WebFrame in WebKit
16800 * page/PageState.h:
16801 * page/PageState.cpp: Added, C++ class with much of what WebCorePageState had.
16803 * bridge/mac/FrameMac.h: Removed uneeeded declarations and bodyBackgroundColor().
16804 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::startRedirectionTimer): Use a
16805 double for the date instead of an NSDate.
16807 * bridge/mac/WebCoreFrameBridge.h:
16808 * bridge/mac/WebCoreFrameBridge.mm: Removed invalidatePageCache and
16809 saveDocumentToPageCache methods.
16811 * bridge/mac/WebCorePageState.h:
16812 * bridge/mac/WebCorePageState.mm: Removed most of the class and turned it into
16813 an Objective-C wrapper for PageState.
16815 * loader/FrameLoader.h: Removed unused Objective-C types, eliminated use of
16816 NSDate and WebCorePageState.
16817 * loader/FrameLoaderClient.h: Changed NSDate to double.
16818 * loader/mac/FrameLoaderMac.mm:
16819 (WebCore::FrameLoader::receivedMainResourceError): Moved call to setInPageCache
16820 here that used to be in invalidateCurrentItemPageCache on the WebKit side.
16821 (WebCore::FrameLoader::clientRedirected): Changed NSDate to double for date.
16822 (WebCore::FrameLoader::open): Moved one of the open functions that was part of
16823 commitProvisionalLoad inside the commitProvisionalLoad function, so that it can
16824 extract the parameters from the response. Changed the open function that takes
16825 a PageState to use the new C++ PageState.
16826 (WebCore::FrameLoader::commitProvisionalLoad): Added the code from the open
16827 function; tightened up logic, removing a few cases that could never happen, as
16828 well as the unused reload boolean.
16830 * ForwardingHeaders/kjs/property_map.h: Added.
16832 * WebCore.exp: Updated.
16833 * WebCore.xcodeproj/project.pbxproj: Updated.
16835 2006-10-29 Maciej Stachowiak <mjs@apple.com>
16837 Reviewed by Anders.
16839 - added ResourceResponse class and didReceiveResponse delegate call
16841 * WebCore.xcodeproj/project.pbxproj: Added new files.
16842 * bridge/mac/WebCoreFrameBridge.h: Removed no longer needed
16843 expiresTimeForResponse: method.
16844 * dom/XMLTokenizer.cpp:
16845 (WebCore::openFunc): Updated to use ResourceResponse.
16846 * loader/FrameLoader.h: Update loadResourceSynchronously to
16847 use ResourceResponse.
16848 * loader/LoaderFunctions.h:
16849 * loader/icon/IconLoader.cpp:
16850 (IconLoader::didReceiveResponse): Updated from receivedResponse
16851 and made cross-platform.
16852 * loader/icon/IconLoader.h: updated for above change
16853 * loader/loader.cpp:
16854 (WebCore::Loader::receivedResponse): reduced to just saving
16855 the PlatformResponse (ideally we'd phase out use of this).
16856 (WebCore::Loader::didReceivedResponse): most of the ReceivedResponse
16859 * loader/mac/FrameLoaderMac.mm:
16860 (WebCore::FrameLoader::loadResourceSynchronously): Return results
16861 as ResourceResponse.
16862 * loader/mac/IconLoaderMac.mm: remove receivedResponse.
16863 * loader/mac/LoaderFunctionsMac.mm:
16864 (WebCore::ServeSynchronousRequest): take ResourceResponse as
16866 * platform/network/ResourceHandle.cpp:
16867 * platform/network/ResourceHandle.h: Remove calls for
16868 broken out response pieces.
16869 * platform/network/ResourceHandleClient.h:
16870 (WebCore::ResourceHandleClient::didReceiveResponse): New
16872 * platform/network/ResourceHandleInternal.h:
16873 (WebCore::ResourceHandleInternal::ResourceHandleInternal): Remove
16874 storage of response bits, we're not gonna return them
16875 seprately any more.
16876 * platform/network/ResourceResponse.h: Added.
16877 (WebCore::ResourceResponse::ResourceResponse): Freshly
16878 implemented. Same for below.
16879 (WebCore::ResourceResponse::url):
16880 (WebCore::ResourceResponse::mimeType):
16881 (WebCore::ResourceResponse::expectedContentLength):
16882 (WebCore::ResourceResponse::textEncodingName):
16883 (WebCore::ResourceResponse::suggestedFilename):
16884 (WebCore::ResourceResponse::httpStatusCode):
16885 (WebCore::ResourceResponse::setHTTPStatusCode):
16886 (WebCore::ResourceResponse::httpHeaderField):
16887 (WebCore::ResourceResponse::httpHeaderFields):
16888 (WebCore::ResourceResponse::isMultipart):
16889 (WebCore::ResourceResponse::setExpirationDate):
16890 (WebCore::ResourceResponse::expirationDate):
16891 * platform/network/cf/ResourceHandleCFNet.cpp:
16892 (WebCore::didReceiveResponse): Send didReceiveResponse
16894 * platform/network/cf/ResourceResponseCFNet.h: Added.
16895 * platform/network/cf/ResourceResponseCFNet.mm: Added.
16896 (getResourceResponse): Helper function to get a ResourceResponse
16897 from CFURLResponseRef.
16898 * platform/network/mac/ResourceHandleMac.mm:
16899 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
16900 Don't bother cleaning up fields we no longer have.
16901 (WebCore::ResourceHandle::receivedResponse): Send
16902 didReceiveResponse client method.
16903 * platform/network/mac/ResourceResponseMac.h: Added.
16904 * platform/network/mac/ResourceResponseMac.mm: Added.
16905 (getResourceResponse): Helper function to get a ResourceResponse
16906 from an NSURLResponse*.
16907 * rendering/HitTestResult.cpp:
16908 * xml/XSLTProcessor.cpp:
16909 (WebCore::docLoaderFunc): Prepare for use of ResourceResponse.
16910 * xml/xmlhttprequest.cpp:
16911 (WebCore::XMLHttpRequest::getResponseText): Store http response
16912 info in the form of a ResourceResponse, change all methods to
16914 (WebCore::XMLHttpRequest::getResponseXML):
16915 (WebCore::XMLHttpRequest::XMLHttpRequest):
16916 (WebCore::XMLHttpRequest::open):
16917 (WebCore::XMLHttpRequest::send):
16918 (WebCore::XMLHttpRequest::getAllResponseHeaders):
16919 (WebCore::XMLHttpRequest::getResponseHeader):
16920 (WebCore::XMLHttpRequest::getStatus):
16921 (WebCore::XMLHttpRequest::getStatusText):
16922 (WebCore::XMLHttpRequest::processSyncLoadResults):
16923 (WebCore::XMLHttpRequest::didFinishLoading):
16924 (WebCore::XMLHttpRequest::didReceiveResponse):
16925 (WebCore::XMLHttpRequest::didReceiveData):
16926 * xml/xmlhttprequest.h:
16928 2006-10-29 Darin Adler <darin@apple.com>
16932 * loader/DocumentLoader.h: Add declarations so this compiles without ObjC.
16933 * loader/NetscapePlugInStreamLoader.h: Ditto.
16934 * loader/ResourceLoader.h: Ditto.
16936 2006-10-29 Darin Adler <darin@apple.com>
16938 - one last name change -- WebFormState.h to FormState.h
16939 - added more empty placeholder platform-independent files
16940 for currently-Mac-specific loader classes
16942 * loader/FormState.cpp: Updated include.
16943 * loader/FrameLoader.cpp: Updated include.
16944 * loader/mac/FrameLoaderMac.mm: Updated include.
16946 * loader/WebFormState.h: Removed.
16947 * loader/FormState.h: Added.
16949 * loader/DocumentLoader.cpp: Added.
16950 * loader/MainResourceLoader.cpp: Added.
16951 * loader/NetscapePlugInStreamLoader.cpp: Added.
16952 * loader/ResourceLoader.cpp: Added.
16953 * loader/SubresourceLoader.cpp: Added.
16955 * WebCore.xcodeproj/project.pbxproj: Updated for changes above.
16957 2006-10-29 Darin Adler <darin@apple.com>
16959 - did the do-webcore-rename renames, including a number of changes
16960 to the names of loader files (and WebResourceLoader -> ResourceLoader),
16961 jScript() to scriptProxy(), jScriptEnabled() to javaScriptEnabled(),
16962 and improvements to the names of decoder classes and their source
16963 files (Decoder -> TextResourceDecoder, StreamingTextDecoder -> TextCodec)
16967 * WebCore.vcproj/WebCore/WebCore.vcproj:
16968 * WebCore.xcodeproj/project.pbxproj:
16969 * WebCoreSources.bkl:
16970 * bindings/js/kjs_binding.cpp:
16971 (KJS::ScriptInterpreter::updateDOMNodeDocument):
16972 * bindings/js/kjs_events.cpp:
16973 (KJS::JSAbstractEventListener::handleEvent):
16974 (KJS::JSLazyEventListener::parseCode):
16975 * bindings/js/kjs_html.cpp:
16976 (KJS::JSHTMLElement::implementsCall):
16977 * bindings/js/kjs_traversal.cpp:
16978 (KJS::JSNodeFilterCondition::acceptNode):
16979 * bindings/js/kjs_window.cpp:
16980 (KJS::Window::interpreter):
16981 (KJS::Window::retrieveWindow):
16982 (KJS::Window::retrieve):
16983 (KJS::ScheduledAction::execute):
16984 * bindings/objc/DOMInternal.mm:
16985 (-[WebScriptObject _initializeScriptDOMNodeImp]):
16986 * bridge/mac/FrameMac.mm:
16987 (WebCore::FrameMac::executionContextForDOM):
16988 (WebCore::FrameMac::bindingRootObject):
16989 (WebCore::FrameMac::windowScriptObject):
16990 (WebCore::FrameMac::windowScriptNPObject):
16991 (WebCore::FrameMac::partClearedInBegin):
16992 * bridge/mac/WebCoreEncodings.mm:
16993 * bridge/mac/WebCoreFrameBridge.mm:
16994 (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]):
16995 (-[WebCoreFrameBridge stringWithData:]):
16996 (-[WebCoreFrameBridge executionContextForView:]):
16997 * bridge/win/FrameWin.cpp:
16998 * dom/Document.cpp:
16999 (WebCore::Document::inputEncoding):
17000 (WebCore::Document::setCharset):
17001 (WebCore::Document::createHTMLEventListener):
17002 (WebCore::Document::setDecoder):
17004 (WebCore::Document::decoder):
17005 * dom/EventTargetNode.cpp:
17006 (WebCore::EventTargetNode::dispatchGenericEvent):
17007 * html/HTMLParser.cpp:
17008 (WebCore::HTMLParser::noscriptCreateErrorCheck):
17009 (WebCore::HTMLParser::canvasCreateErrorCheck):
17010 (WebCore::HTMLParser::isInline):
17011 * html/HTMLPlugInElement.cpp:
17012 (WebCore::HTMLPlugInElement::createNPObject):
17013 * html/HTMLScriptElement.cpp:
17014 (WebCore::HTMLScriptElement::evaluateScript):
17015 * html/HTMLTokenizer.cpp:
17016 (WebCore::HTMLTokenizer::parseTag):
17017 (WebCore::HTMLTokenizer::processToken):
17018 * ksvg2/misc/SVGDocumentExtensions.cpp:
17019 (WebCore::SVGDocumentExtensions::createSVGEventListener):
17020 * loader/CachedCSSStyleSheet.cpp:
17021 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
17022 (WebCore::CachedCSSStyleSheet::setEncoding):
17023 * loader/CachedCSSStyleSheet.h:
17024 * loader/CachedXBLDocument.cpp:
17025 (WebCore::CachedXBLDocument::CachedXBLDocument):
17026 (WebCore::CachedXBLDocument::setEncoding):
17027 * loader/CachedXBLDocument.h:
17028 * loader/CachedXSLStyleSheet.cpp:
17029 (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
17030 (WebCore::CachedXSLStyleSheet::setEncoding):
17031 * loader/CachedXSLStyleSheet.h:
17032 * loader/Decoder.cpp: Removed.
17033 * loader/Decoder.h: Removed.
17034 * loader/FrameLoader.cpp:
17035 * loader/FrameLoader.h:
17036 * loader/FrameLoaderClient.h:
17037 * loader/MainResourceLoader.h: Added.
17038 * loader/NetscapePlugInStreamLoader.h: Added.
17039 * loader/Request.h:
17040 (WebCore::Request::cachedResource):
17041 * loader/ResourceLoader.h: Added.
17042 * loader/SubresourceLoader.h: Added.
17043 * loader/TextResourceDecoder.cpp: Added.
17044 (WebCore::TextResourceDecoder::determineContentType):
17045 (WebCore::TextResourceDecoder::defaultEncoding):
17046 (WebCore::TextResourceDecoder::TextResourceDecoder):
17047 (WebCore::TextResourceDecoder::~TextResourceDecoder):
17048 (WebCore::TextResourceDecoder::setEncoding):
17049 (WebCore::TextResourceDecoder::checkForBOM):
17050 (WebCore::TextResourceDecoder::checkForCSSCharset):
17051 (WebCore::TextResourceDecoder::checkForHeadCharset):
17052 (WebCore::TextResourceDecoder::detectJapaneseEncoding):
17053 (WebCore::TextResourceDecoder::decode):
17054 (WebCore::TextResourceDecoder::flush):
17055 * loader/TextResourceDecoder.h: Added.
17056 * loader/WebDocumentLoader.h: Removed.
17057 * loader/WebLoader.h: Removed.
17058 * loader/WebMainResourceLoader.h: Removed.
17059 * loader/WebNetscapePlugInStreamLoader.h: Removed.
17060 * loader/WebSubresourceLoader.h: Removed.
17061 * loader/loader.cpp:
17062 (WebCore::Loader::servePendingRequests):
17063 (WebCore::Loader::receivedAllData):
17064 (WebCore::Loader::receivedResponse):
17065 (WebCore::Loader::didReceiveData):
17066 (WebCore::Loader::cancelRequests):
17067 (WebCore::Loader::jobForRequest):
17068 * loader/mac/DocumentLoaderMac.mm:
17069 * loader/mac/FormDataStream.m: Added.
17070 * loader/mac/FrameLoaderMac.mm:
17071 (WebCore::FrameLoader::cancelPendingArchiveLoad):
17072 (WebCore::FrameLoader::addPlugInStreamLoader):
17073 (WebCore::FrameLoader::removePlugInStreamLoader):
17074 (WebCore::FrameLoader::addSubresourceLoader):
17075 (WebCore::FrameLoader::removeSubresourceLoader):
17076 (WebCore::FrameLoader::willSendRequest):
17077 (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
17078 (WebCore::FrameLoader::didCancelAuthenticationChallenge):
17079 (WebCore::FrameLoader::didReceiveResponse):
17080 (WebCore::FrameLoader::didReceiveData):
17081 (WebCore::FrameLoader::didFinishLoad):
17082 (WebCore::FrameLoader::didFailToLoad):
17083 (WebCore::FrameLoader::open):
17084 (WebCore::FrameLoader::willUseArchive):
17085 (WebCore::FrameLoader::isArchiveLoadPending):
17086 * loader/mac/ImageDocumentMac.mm:
17087 * loader/mac/LoaderFunctionsMac.mm:
17088 (WebCore::CheckCacheObjectStatus):
17089 * loader/mac/MainResourceLoaderMac.mm:
17090 (WebCore::MainResourceLoader::MainResourceLoader):
17091 (WebCore::MainResourceLoader::releaseDelegate):
17092 (WebCore::MainResourceLoader::didCancel):
17093 (WebCore::MainResourceLoader::addData):
17094 (WebCore::MainResourceLoader::willSendRequest):
17095 (WebCore::MainResourceLoader::continueAfterContentPolicy):
17096 (WebCore::MainResourceLoader::didReceiveData):
17097 (WebCore::MainResourceLoader::didFinishLoading):
17098 (WebCore::MainResourceLoader::setDefersLoading):
17099 * loader/mac/NetscapePlugInStreamLoaderMac.mm:
17100 (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
17101 (WebCore::NetscapePlugInStreamLoader::releaseResources):
17102 (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
17103 (WebCore::NetscapePlugInStreamLoader::didReceiveData):
17104 (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
17105 (WebCore::NetscapePlugInStreamLoader::didFail):
17106 (WebCore::NetscapePlugInStreamLoader::didCancel):
17107 * loader/mac/ResourceLoaderMac.mm:
17108 (WebCore::ResourceLoader::ResourceLoader):
17109 (WebCore::ResourceLoader::~ResourceLoader):
17110 (WebCore::ResourceLoader::releaseResources):
17111 (WebCore::ResourceLoader::load):
17112 (WebCore::ResourceLoader::setDefersLoading):
17113 (WebCore::ResourceLoader::frameLoader):
17114 (WebCore::ResourceLoader::addData):
17115 (WebCore::ResourceLoader::resourceData):
17116 (WebCore::ResourceLoader::clearResourceData):
17117 (WebCore::ResourceLoader::willSendRequest):
17118 (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
17119 (WebCore::ResourceLoader::didCancelAuthenticationChallenge):
17120 (WebCore::ResourceLoader::didReceiveResponse):
17121 (WebCore::ResourceLoader::didReceiveData):
17122 (WebCore::ResourceLoader::willStopBufferingData):
17123 (WebCore::ResourceLoader::didFinishLoading):
17124 (WebCore::ResourceLoader::didFinishLoadingOnePart):
17125 (WebCore::ResourceLoader::didFail):
17126 (WebCore::ResourceLoader::willCacheResponse):
17127 (WebCore::ResourceLoader::didCancel):
17128 (WebCore::ResourceLoader::cancel):
17129 (WebCore::ResourceLoader::setIdentifier):
17130 (WebCore::ResourceLoader::response):
17131 (WebCore::ResourceLoader::inConnectionCallback):
17132 (WebCore::ResourceLoader::cancelledError):
17133 (WebCore::ResourceLoader::receivedCredential):
17134 (WebCore::ResourceLoader::receivedRequestToContinueWithoutCredential):
17135 (WebCore::ResourceLoader::receivedCancellation):
17136 (WebCore::ResourceLoader::delegate):
17137 (WebCore::ResourceLoader::releaseDelegate):
17138 (-[WebCoreResourceLoaderAsDelegate initWithLoader:]):
17139 * loader/mac/SubresourceLoaderMac.mm:
17140 (WebCore::SubresourceLoader::SubresourceLoader):
17141 (WebCore::SubresourceLoader::willSendRequest):
17142 (WebCore::SubresourceLoader::didReceiveResponse):
17143 (WebCore::SubresourceLoader::didReceiveData):
17144 (WebCore::SubresourceLoader::didFinishLoading):
17145 (WebCore::SubresourceLoader::didFail):
17146 (WebCore::SubresourceLoader::didCancel):
17147 * loader/mac/WebFormDataStream.h: Removed.
17148 * loader/mac/WebFormDataStream.m: Removed.
17150 (WebCore::Frame::javaScriptEnabled):
17151 (WebCore::Frame::scriptProxy):
17152 (WebCore::Frame::executeScript):
17153 (WebCore::Frame::write):
17154 (WebCore::Frame::userGestureHint):
17155 (WebCore::Frame::saveInterpreterBuiltins):
17156 (WebCore::Frame::restoreInterpreterBuiltins):
17157 (WebCore::Frame::backslashAsCurrencySymbol):
17159 * page/FramePrivate.h:
17160 * platform/StreamingTextDecoder.cpp: Removed.
17161 * platform/StreamingTextDecoder.h: Removed.
17162 * platform/StreamingTextDecoderICU.cpp: Removed.
17163 * platform/StreamingTextDecoderICU.h: Removed.
17164 * platform/TextCodec.cpp: Added.
17165 * platform/TextCodec.h: Added.
17166 * platform/TextCodecICU.cpp: Added.
17167 * platform/TextCodecICU.h: Added.
17168 * platform/TextCodecLatin1.h:
17169 * platform/TextCodecUTF16.h:
17170 * platform/TextDecoder.h:
17171 * platform/TextEncoding.cpp:
17172 * platform/TextEncodingRegistry.cpp:
17173 * platform/image-decoders/jpeg/jmorecfg.h:
17174 * platform/mac/StreamingTextDecoderMac.cpp: Removed.
17175 * platform/mac/StreamingTextDecoderMac.h: Removed.
17176 * platform/mac/TextCodecMac.cpp: Added.
17177 * platform/mac/TextCodecMac.h: Added.
17178 * platform/network/ResourceHandleInternal.h:
17179 * platform/network/mac/ResourceHandleMac.mm:
17180 * platform/qt/FrameQt.cpp:
17181 (WebCore::FrameQt::bindingRootObject):
17182 * platform/qt/LoaderFunctionsQt.cpp:
17183 (WebCore::CheckCacheObjectStatus):
17184 * rendering/RenderObject.cpp:
17185 (WebCore::RenderObject::backslashAsCurrencySymbol):
17186 * xml/XSLTProcessor.cpp:
17187 (WebCore::XSLTProcessor::createDocumentFromSource):
17188 * xml/xmlhttprequest.cpp:
17189 (WebCore::XMLHttpRequest::didReceiveData):
17190 * xml/xmlhttprequest.h:
17192 2006-10-29 Darin Adler <darin@apple.com>
17194 Rubber stamped by Adam (kinda).
17196 - add Mac suffixes and correct filenames inside loader/mac
17198 * WebCore.xcodeproj/project.pbxproj: Updated for changes below.
17200 * loader/mac/FrameLoader.mm: Removed.
17201 * loader/mac/WebDocumentLoader.mm: Removed.
17202 * loader/mac/WebLoader.mm: Removed.
17203 * loader/mac/WebMainResourceLoader.mm: Removed.
17204 * loader/mac/WebNetscapePlugInStreamLoader.mm: Removed.
17205 * loader/mac/WebSubresourceLoader.mm: Removed.
17207 * loader/mac/FrameLoaderMac.mm: Added.
17208 * loader/mac/DocumentLoaderMac.mm: Added.
17209 * loader/mac/ResourceLoaderMac.mm: Added.
17210 * loader/mac/MainResourceLoaderMac.mm: Added.
17211 * loader/mac/WebNetscapePlugInStreamLoaderMac.mm: Added.
17212 * loader/mac/SubresourceLoaderMac.mm: Removed.
17214 2006-10-29 Darin Adler <darin@apple.com>
17218 - moving towards use of FrameLoader cross-platform; get FrameLoader.h
17219 and FrameLoader.cpp mostly ready
17221 * WebCore.xcodeproj/project.pbxproj: Added FrameLoader.cpp and
17222 FormState.cpp. Removed WebFormState.mm.
17224 * loader/FrameLoader.h: Put in lots of #if statements to see if we can
17225 get this header compiling on non-Mac.
17226 * loader/FrameLoader.cpp: Added. Has non-Mac-specific bits of FrameLoader.
17227 * loader/mac/FrameLoader.mm: Moved some non-Mac-specific bits out.
17229 * loader/FrameLoaderClient.h: Added some ifdefs.
17230 * loader/WebDocumentLoader.h: Ditto.
17231 * loader/WebLoader.h: Ditto.
17232 * loader/WebMainResourceLoader.h: Ditto.
17234 * loader/mac/WebDocumentLoader.mm:
17235 (WebCore::DocumentLoader::isLoadingInAPISense):
17236 Rewrote to work without bridge, partly to remove the need for ObjC
17237 bridge type in the header, and also because we're tearing down the bridge.
17239 * loader/mac/WebMainResourceLoader.mm:
17240 (WebCore::MainResourceLoader::MainResourceLoader): Removed unused
17241 m_contentLength and m_bytesReceived.
17242 (WebCore::MainResourceLoader::didReceiveResponse): Ditto.
17243 (WebCore::MainResourceLoader::didReceiveData): Ditto.
17245 * bridge/mac/WebCoreFrameBridge.h: Removed doneProcessingData.
17246 * bridge/mac/WebCoreFrameBridge.mm: Ditto.
17248 * loader/mac/FormState.mm: Removed.
17249 * loader/FormState.cpp: Added.
17251 2006-10-29 Darin Adler <darin@apple.com>
17253 Rubber stamped by Adam.
17255 - moving towards use of FrameLoader cross-platform; move the headers
17256 for the Mac loader from loader/mac into loader, in preparation for
17257 making them useful on non-Mac
17259 * WebCore.xcodeproj/project.pbxproj:
17261 * loader/mac/FrameLoader.h: Removed.
17262 * loader/mac/WebDocumentLoader.h: Removed.
17263 * loader/mac/WebFormState.h: Removed.
17264 * loader/mac/WebLoader.h: Removed.
17265 * loader/mac/WebMainResourceLoader.h: Removed.
17266 * loader/mac/WebNetscapePlugInStreamLoader.h: Removed.
17267 * loader/mac/WebSubresourceLoader.h: Removed.
17269 * loader/FrameLoader.h: Added.
17270 * loader/WebDocumentLoader.h: Added.
17271 * loader/WebFormState.h: Added.
17272 * loader/WebLoader.h: Added.
17273 * loader/WebMainResourceLoader.h: Added.
17274 * loader/WebNetscapePlugInStreamLoader.h: Added.
17275 * loader/WebSubresourceLoader.h: Added.
17277 2006-10-29 Adam Roben <aroben@apple.com>
17281 Finish Darin's clean up of the use of __APPLE__ in WebCore, begun in
17284 * platform/DeprecatedString.h:
17286 2006-10-29 Beth Dakin <bdakin@apple.com>
17288 Rubber stamped by Geoff.
17290 This is a followup to my HitTestResult checkin. Most of the
17291 HitTestResult local variables in the code were named i or info for
17292 when the class was named NodeInfo. This patch renames all of these
17293 local variables to result.
17295 * dom/Document.cpp:
17296 (WebCore::Document::prepareMouseEvent):
17297 * html/HTMLAreaElement.cpp:
17298 (WebCore::HTMLAreaElement::mapMouseEvent):
17299 * html/HTMLMapElement.cpp:
17300 (WebCore::HTMLMapElement::mapMouseEvent):
17301 * rendering/EllipsisBox.cpp:
17302 (WebCore::EllipsisBox::nodeAtPoint):
17303 * rendering/EllipsisBox.h:
17304 * rendering/InlineBox.cpp:
17305 (WebCore::InlineBox::nodeAtPoint):
17306 * rendering/InlineFlowBox.cpp:
17307 (WebCore::InlineFlowBox::nodeAtPoint):
17308 * rendering/InlineTextBox.cpp:
17309 (WebCore::InlineTextBox::nodeAtPoint):
17310 * rendering/RenderBlock.cpp:
17311 (WebCore::RenderBlock::isPointInScrollbar):
17312 (WebCore::RenderBlock::nodeAtPoint):
17313 * rendering/RenderBlock.h:
17314 * rendering/RenderBox.cpp:
17315 (WebCore::RenderBox::nodeAtPoint):
17316 * rendering/RenderBox.h:
17317 * rendering/RenderFlow.cpp:
17318 (WebCore::RenderFlow::hitTestLines):
17319 * rendering/RenderFlow.h:
17320 * rendering/RenderForeignObject.cpp:
17321 (WebCore::RenderForeignObject::nodeAtPoint):
17322 * rendering/RenderFrameSet.cpp:
17323 (WebCore::RenderFrameSet::nodeAtPoint):
17324 * rendering/RenderImage.cpp:
17325 (WebCore::RenderImage::nodeAtPoint):
17326 * rendering/RenderInline.cpp:
17327 (WebCore::RenderInline::nodeAtPoint):
17328 * rendering/RenderInline.h:
17329 * rendering/RenderLayer.cpp:
17330 (WebCore::RenderLayer::autoscroll):
17331 (WebCore::RenderLayer::hitTest):
17332 (WebCore::RenderLayer::hitTestLayer):
17333 (WebCore::RenderLayer::updateHoverActiveState):
17334 * rendering/RenderListBox.cpp:
17335 (WebCore::RenderListBox::isPointInScrollbar):
17336 * rendering/RenderObject.cpp:
17337 (WebCore::RenderObject::hitTest):
17338 (WebCore::RenderObject::setInnerNode):
17339 (WebCore::RenderObject::nodeAtPoint):
17340 * rendering/RenderObject.h:
17341 * rendering/RenderPath.cpp:
17342 (WebCore::RenderPath::nodeAtPoint):
17343 * rendering/RenderSVGImage.cpp:
17344 (WebCore::RenderSVGImage::nodeAtPoint):
17345 * rendering/RenderSVGText.cpp:
17346 (WebCore::RenderSVGText::nodeAtPoint):
17347 * rendering/RenderTableRow.cpp:
17348 (WebCore::RenderTableRow::nodeAtPoint):
17349 * rendering/RenderTableRow.h:
17350 * rendering/RenderTableSection.cpp:
17351 (WebCore::RenderTableSection::nodeAtPoint):
17352 * rendering/RenderTableSection.h:
17353 * rendering/RenderTextControl.cpp:
17354 (WebCore::RenderTextControl::nodeAtPoint):
17355 * rendering/RootInlineBox.cpp:
17356 (WebCore::RootInlineBox::nodeAtPoint):
17357 * rendering/RootInlineBox.h:
17359 2006-10-29 Adam Roben <aroben@apple.com>
17363 * page/Page.cpp: Forgot to wrap the actual definition of
17364 setDefersLoading() in PLATFORM(MAC).
17365 * platform/PlatformWheelEvent.h: Fix up preprocessor directives.
17367 2006-10-29 Adam Roben <aroben@apple.com>
17371 Move all FrameLoader-related code in Page.{cpp,h} within #if
17372 PLATFORM(MAC), since this class currently only exists on Mac.
17377 2006-10-29 Geoffrey Garen <ggaren@apple.com>
17381 * platform/PlatformString.h:
17382 (WebCore::String::operator NSString*):
17384 2006-10-29 Geoffrey Garen <ggaren@apple.com>
17386 Rolled out accidental commit.
17388 * platform/AtomicString.h:
17389 (WebCore::AtomicString::AtomicString):
17390 (WebCore::AtomicString::operator NSString*):
17392 2006-10-29 Geoffrey Garen <ggaren@apple.com>
17396 Rolled out change to map NULL Strings to nil NSStrings because it caused
17397 even more AppKit crashes. Maybe we should remove the NSString * operator
17398 entirely, since its use is not straight-forward, and require callers to
17399 specify explicitly whether they tolerate NULL.
17401 * platform/AtomicString.h:
17402 * platform/PlatformString.h:
17403 (WebCore::String::operator NSString*):
17404 * platform/mac/TextFieldMac.mm:
17405 (-[NSSearchFieldCell _addStringToRecentSearches:]):
17407 2006-10-29 Darin Adler <darin@apple.com>
17411 - fixed storage leak showing up on the buildbot
17413 * loader/mac/WebSubresourceLoader.mm: (WebCore::SubresourceLoader::create):
17414 Release the NSURLRequest after passing it to load. Also clean up logic a bit.
17416 2006-10-29 Darin Adler <darin@apple.com>
17418 Rubber stamped by Adam.
17420 - renamed WebFrameLoaderClient to match the class name inside it
17422 * loader/mac/WebFrameLoaderClient.h: Removed.
17423 * loader/FrameLoaderClient.h: Moved it here.
17425 * WebCore.xcodeproj/project.pbxproj: Updated project.
17427 * bridge/mac/FrameMac.mm: Updated includes.
17428 * bridge/mac/WebCoreFrameBridge.mm: Ditto.
17429 * loader/mac/FrameLoader.mm: Ditto.
17430 * loader/mac/WebLoader.h: Ditto.
17432 2006-10-29 Darin Adler <darin@apple.com>
17436 - fix crash visible on buildbot and also when running the test
17437 anchor-image-scrolled-x-y.html under libgmalloc
17439 * loader/mac/WebSubresourceLoader.h: Renamed m_loader to m_handle
17440 now that the class is named ResourceHandle.
17441 * loader/mac/WebSubresourceLoader.mm: Renaming, plus:
17442 (WebCore::SubresourceLoader::didFinishLoading): Get the handle into
17443 a local RefPtr before calling finishJobAndHandle, since we might get
17444 cancelled inside that function, so we should not rely on m_handle to
17445 keep the ResourceHandle alive.
17446 (WebCore::SubresourceLoader::didFail): Ditto.
17447 (WebCore::SubresourceLoader::didCancel): Ditto.
17449 2006-10-29 Maciej Stachowiak <mjs@apple.com>
17453 * platform/network/mac/ResourceHandleMac.mm:
17455 2006-10-29 Maciej Stachowiak <mjs@apple.com>
17457 Rubber stamped by Darin.
17459 - renamed ResourceLoader to ResourceHandle (and same for related classes)
17462 * Projects/gdk/webcore-gdk.bkl:
17463 * WebCore.vcproj/WebCore/WebCore.vcproj:
17464 * WebCore.xcodeproj/project.pbxproj:
17465 * WebCoreSources.bkl:
17466 * bridge/mac/FrameMac.mm:
17467 * bridge/win/FrameWin.cpp:
17468 * dom/XMLTokenizer.cpp:
17469 * loader/Cache.cpp:
17470 * loader/CachedResource.h:
17471 * loader/LoaderFunctions.h:
17472 * loader/icon/IconLoader.cpp:
17473 (IconLoader::startLoading):
17474 (IconLoader::didReceiveData):
17475 (IconLoader::didFinishLoading):
17476 * loader/icon/IconLoader.h:
17477 * loader/loader.cpp:
17478 (WebCore::Loader::servePendingRequests):
17479 (WebCore::Loader::receivedAllData):
17480 (WebCore::Loader::receivedResponse):
17481 (WebCore::Loader::didReceiveData):
17482 (WebCore::Loader::cancelRequests):
17483 (WebCore::Loader::jobForRequest):
17485 * loader/mac/IconLoaderMac.mm:
17486 (IconLoader::receivedResponse):
17487 * loader/mac/LoaderFunctionsMac.mm:
17488 * loader/mac/WebLoader.h:
17489 * loader/mac/WebSubresourceLoader.h:
17490 * loader/mac/WebSubresourceLoader.mm:
17491 (WebCore::SubresourceLoader::SubresourceLoader):
17492 (WebCore::SubresourceLoader::create):
17493 * platform/gdk/FrameGdk.cpp:
17494 (WebCore::FrameGdkClientDefault::FrameGdkClientDefault):
17495 (WebCore::FrameGdkClientDefault::openURL):
17496 (WebCore::FrameGdkClientDefault::submitForm):
17497 (WebCore::FrameGdkClientDefault::receivedResponse):
17498 (WebCore::FrameGdkClientDefault::didReceiveData):
17499 (WebCore::FrameGdkClientDefault::receivedAllData):
17500 * platform/gdk/FrameGdk.h:
17501 * platform/gdk/TemporaryLinkStubs.cpp:
17502 (WebCore::ServeSynchronousRequest):
17503 (WebCore::ResourceHandle::assembleResponseHeaders):
17504 (WebCore::ResourceHandle::retrieveCharset):
17505 * platform/network/ResourceHandle.cpp: Added.
17506 (WebCore::ResourceHandle::ResourceHandle):
17507 (WebCore::ResourceHandle::create):
17508 (WebCore::ResourceHandle::isErrorPage):
17509 (WebCore::ResourceHandle::error):
17510 (WebCore::ResourceHandle::setError):
17511 (WebCore::ResourceHandle::responseEncoding):
17512 (WebCore::ResourceHandle::responseHTTPHeadersAsString):
17513 (WebCore::ResourceHandle::kill):
17514 (WebCore::ResourceHandle::requestHeaders):
17515 (WebCore::ResourceHandle::url):
17516 (WebCore::ResourceHandle::postData):
17517 (WebCore::ResourceHandle::method):
17518 (WebCore::ResourceHandle::client):
17519 * platform/network/ResourceHandle.h: Added.
17520 (WebCore::ResourceHandle::getInternal):
17521 * platform/network/ResourceHandleClient.h: Added.
17522 (WebCore::ResourceHandleClient::~ResourceHandleClient):
17523 (WebCore::ResourceHandleClient::didReceiveData):
17524 (WebCore::ResourceHandleClient::didFinishLoading):
17525 (WebCore::ResourceHandleClient::receivedRedirect):
17526 (WebCore::ResourceHandleClient::receivedResponse):
17527 (WebCore::ResourceHandleClient::receivedAllData):
17528 * platform/network/ResourceHandleInternal.h: Added.
17529 (WebCore::ResourceHandleInternal::ResourceHandleInternal):
17530 * platform/network/ResourceLoader.cpp: Removed.
17531 * platform/network/ResourceLoader.h: Removed.
17532 * platform/network/ResourceLoaderClient.h: Removed.
17533 * platform/network/ResourceLoaderInternal.h: Removed.
17534 * platform/network/cf/ResourceHandleCFNet.cpp: Added.
17535 (WebCore::willSendRequest):
17536 (WebCore::didReceiveResponse):
17537 (WebCore::didReceiveData):
17538 (WebCore::didFinishLoading):
17539 (WebCore::didFail):
17540 (WebCore::willCacheResponse):
17541 (WebCore::didReceiveChallenge):
17542 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
17543 (WebCore::ResourceHandle::~ResourceHandle):
17544 (WebCore::ResourceHandle::start):
17545 (WebCore::ResourceHandle::cancel):
17546 * platform/network/cf/ResourceLoaderCFNet.cpp: Removed.
17547 * platform/network/gdk/ResourceHandleCurl.cpp: Added.
17548 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
17549 (WebCore::ResourceHandle::~ResourceHandle):
17550 (WebCore::ResourceHandle::start):
17551 (WebCore::ResourceHandle::cancel):
17552 * platform/network/gdk/ResourceHandleManager.cpp: Added.
17553 (WebCore::ResourceHandleManager::ResourceHandleManager):
17554 (WebCore::ResourceHandleManager::get):
17555 (WebCore::ResourceHandleManager::useSimpleTransfer):
17556 (WebCore::writeCallback):
17557 (WebCore::ResourceHandleManager::downloadTimerCallback):
17558 (WebCore::ResourceHandleManager::remove):
17559 (WebCore::ResourceHandleManager::add):
17560 (WebCore::ResourceHandleManager::cancel):
17561 * platform/network/gdk/ResourceHandleManager.h: Added.
17562 * platform/network/gdk/ResourceLoaderCurl.cpp: Removed.
17563 * platform/network/gdk/ResourceLoaderManager.cpp: Removed.
17564 * platform/network/gdk/ResourceLoaderManager.h: Removed.
17565 * platform/network/mac/ResourceHandleMac.mm: Added.
17566 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
17567 (WebCore::ResourceHandle::~ResourceHandle):
17568 (WebCore::ResourceHandle::start):
17569 (WebCore::ResourceHandle::assembleResponseHeaders):
17570 (WebCore::ResourceHandle::retrieveResponseEncoding):
17571 (WebCore::ResourceHandle::receivedResponse):
17572 (WebCore::ResourceHandle::cancel):
17573 (WebCore::ResourceHandle::redirectedToURL):
17574 (WebCore::ResourceHandle::addData):
17575 (WebCore::ResourceHandle::finishJobAndHandle):
17576 (WebCore::ResourceHandle::reportError):
17577 * platform/network/mac/ResourceLoaderMac.mm: Removed.
17578 * platform/network/qt/ResourceHandleManager.cpp: Added.
17579 (WebCore::ResourceHandleManager::ResourceHandleManager):
17580 (WebCore::ResourceHandleManager::~ResourceHandleManager):
17581 (WebCore::ResourceHandleManager::self):
17582 (WebCore::ResourceHandleManager::slotData):
17583 (WebCore::ResourceHandleManager::slotMimetype):
17584 (WebCore::ResourceHandleManager::slotResult):
17585 (WebCore::ResourceHandleManager::remove):
17586 (WebCore::ResourceHandleManager::add):
17587 (WebCore::ResourceHandleManager::cancel):
17588 * platform/network/qt/ResourceHandleManager.h: Added.
17589 * platform/network/qt/ResourceHandleQt.cpp: Added.
17590 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
17591 (WebCore::ResourceHandle::~ResourceHandle):
17592 (WebCore::ResourceHandle::start):
17593 (WebCore::ResourceHandle::cancel):
17594 (WebCore::ResourceHandle::assembleResponseHeaders):
17595 (WebCore::ResourceHandle::retrieveResponseEncoding):
17596 (WebCore::ResourceHandle::receivedResponse):
17597 (WebCore::ResourceHandle::extractCharsetFromHeaders):
17598 * platform/network/qt/ResourceLoaderManager.cpp: Removed.
17599 * platform/network/qt/ResourceLoaderManager.h: Removed.
17600 * platform/network/qt/ResourceLoaderQt.cpp: Removed.
17601 * platform/network/win/ResourceHandleWin.cpp: Added.
17603 (WebCore::addToOutstandingJobs):
17604 (WebCore::lookupResourceHandle):
17605 (WebCore::ResourceHandleWndProc):
17606 (WebCore::initializeOffScreenResourceHandleWindow):
17607 (WebCore::ResourceHandleInternal::~ResourceHandleInternal):
17608 (WebCore::ResourceHandle::~ResourceHandle):
17609 (WebCore::ResourceHandle::onHandleCreated):
17610 (WebCore::ResourceHandle::onRequestRedirected):
17611 (WebCore::ResourceHandle::onRequestComplete):
17612 (WebCore::ResourceHandle::start):
17613 (WebCore::ResourceHandle::fileLoadTimer):
17614 (WebCore::ResourceHandle::cancel):
17615 (WebCore::ResourceHandle::setHasReceivedResponse):
17616 (WebCore::ResourceHandle::hasReceivedResponse):
17617 * platform/network/win/ResourceHandleWin.h: Added.
17618 * platform/network/win/ResourceLoaderWin.cpp: Removed.
17619 * platform/network/win/ResourceLoaderWin.h: Removed.
17620 * platform/qt/FrameQt.cpp:
17621 * platform/qt/FrameQtClient.cpp:
17622 (WebCore::FrameQtClientDefault::openURL):
17623 (WebCore::FrameQtClientDefault::submitForm):
17624 (WebCore::FrameQtClientDefault::receivedResponse):
17625 (WebCore::FrameQtClientDefault::didReceiveData):
17626 (WebCore::FrameQtClientDefault::receivedAllData):
17627 * platform/qt/FrameQtClient.h:
17628 * platform/win/TemporaryLinkStubs.cpp:
17629 (WebCore::ResourceHandle::assembleResponseHeaders):
17630 (WebCore::ResourceHandle::retrieveResponseEncoding):
17631 (WebCore::ServeSynchronousRequest):
17632 * xml/XSLTProcessor.cpp:
17633 * xml/xmlhttprequest.cpp:
17634 (WebCore::XMLHttpRequest::send):
17635 (WebCore::XMLHttpRequest::didFinishLoading):
17636 (WebCore::XMLHttpRequest::receivedRedirect):
17637 (WebCore::XMLHttpRequest::didReceiveData):
17638 * xml/xmlhttprequest.h:
17640 t2006-10-29 Darin Adler <darin@apple.com>
17642 Reviewed by Maciej.
17644 - eliminate use of NSArray to carry form data around
17647 * WebCore.xcodeproj/project.pbxproj:
17648 * bridge/mac/FormDataMac.h: Removed.
17649 * bridge/mac/FormDataMac.mm: Removed.
17650 * bridge/mac/FrameMac.h:
17651 * bridge/mac/WebCoreFrameBridge.h:
17652 * bridge/mac/WebCoreFrameBridge.mm:
17653 * html/HTMLFormElement.cpp:
17654 (WebCore::HTMLFormElement::submit):
17655 * loader/FormData.h:
17656 (WebCore::FormData::isEmpty):
17657 * loader/mac/FrameLoader.h:
17658 * loader/mac/FrameLoader.mm:
17659 (WebCore::FrameLoader::load):
17660 (WebCore::FrameLoader::post):
17661 (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
17662 (WebCore::FrameLoader::loadResourceSynchronously):
17663 * loader/mac/LoaderFunctionsMac.mm:
17664 (WebCore::ServeSynchronousRequest):
17665 * loader/mac/WebFormDataStream.h:
17666 * loader/mac/WebFormDataStream.m:
17667 (WebCore::pairRetain):
17668 (WebCore::pairRelease):
17669 (WebCore::pairEqual):
17670 (WebCore::pairHash):
17671 (WebCore::closeCurrentStream):
17672 (WebCore::scheduleWithPair):
17673 (WebCore::advanceCurrentStream):
17674 (WebCore::openNextStream):
17675 (WebCore::formCreate):
17676 (WebCore::formFinalize):
17677 (WebCore::formOpen):
17678 (WebCore::formRead):
17679 (WebCore::formCanRead):
17680 (WebCore::formClose):
17681 (WebCore::formSchedule):
17682 (WebCore::formUnschedule):
17683 (WebCore::formEventCallback):
17684 (WebCore::setHTTPBody):
17685 * loader/mac/WebSubresourceLoader.h:
17686 * loader/mac/WebSubresourceLoader.mm:
17687 (WebCore::SubresourceLoader::create):
17688 * platform/network/mac/ResourceLoaderMac.mm:
17690 2006-10-29 Maciej Stachowiak <mjs@apple.com>
17694 - create SubresourceLoader with a ResourceRequest, not broken out request bits
17696 * loader/mac/WebSubresourceLoader.h:
17697 * loader/mac/WebSubresourceLoader.mm:
17698 (WebCore::SubresourceLoader::create):
17699 * platform/network/mac/ResourceLoaderMac.mm:
17700 (WebCore::ResourceLoader::start):
17702 2006-10-29 Maciej Stachowiak <mjs@apple.com>
17706 - removed ObjC glue between ResourceLoader and SubresourceLoader, then now talk to each other directly
17708 Removed WebCoreResourceLoader, WebCoreResourceHandle and WebCoreResourceLoaderImp
17710 * WebCore.xcodeproj/project.pbxproj:
17711 * bridge/mac/WebCoreFrameBridge.h:
17712 * loader/mac/FrameLoader.h:
17713 * loader/mac/FrameLoader.mm:
17714 * loader/mac/LoaderFunctionsMac.mm:
17715 * loader/mac/WebLoader.h:
17716 * loader/mac/WebSubresourceLoader.h:
17717 * loader/mac/WebSubresourceLoader.mm:
17718 (WebCore::SubresourceLoader::SubresourceLoader):
17719 (WebCore::SubresourceLoader::create):
17720 (WebCore::SubresourceLoader::willSendRequest):
17721 (WebCore::SubresourceLoader::didReceiveResponse):
17722 (WebCore::SubresourceLoader::didReceiveData):
17723 (WebCore::SubresourceLoader::didFinishLoading):
17724 (WebCore::SubresourceLoader::didFail):
17725 (WebCore::SubresourceLoader::didCancel):
17726 * platform/network/ResourceLoader.h:
17727 * platform/network/ResourceLoaderInternal.h:
17728 * platform/network/mac/ResourceLoaderMac.mm:
17729 (WebCore::ResourceLoader::~ResourceLoader):
17730 (WebCore::ResourceLoader::start):
17731 (WebCore::ResourceLoader::receivedResponse):
17732 (WebCore::ResourceLoader::cancel):
17733 (WebCore::ResourceLoader::redirectedToURL):
17734 (WebCore::ResourceLoader::addData):
17735 (WebCore::ResourceLoader::finishJobAndHandle):
17736 (WebCore::ResourceLoader::reportError):
17737 * platform/network/mac/WebCoreResourceLoader.h: Removed.
17738 * platform/network/mac/WebCoreResourceLoaderImp.h: Removed.
17739 * platform/network/mac/WebCoreResourceLoaderImp.mm: Removed.
17741 2006-10-28 Darin Adler <darin@apple.com>
17743 Reviewed by Maciej.
17745 - eliminated the use of Objective-C for the policy decider
17746 machinery, obviating the need for WebPolicyDecider,
17747 WebCoreFrameLoaderAsDelegate, and
17748 WebCoreMainResourceLoaderAsPolicyDelegate
17750 - grouped the state related to policy decisions into a PolicyCheck
17751 class to simplify the FrameLoader logic
17753 - removed six methods from the bridge, reducing FrameLoader's use of
17754 the bridge to a single method
17756 - changed form state to always use HashMap instead of NSDictionary
17758 - moved the defersLoading flag from WebView to WebCore::Page
17759 and changed code to consistently call it defersLoading rather
17760 than defersCallbacks
17762 - updated for rename of PassRefPtr::release to releaseRef
17763 - replaced all uses of __APPLE__ with appropriate PLATFORM defines
17764 - cleaned up kjs_binding.h a bit
17765 - cleaned up FrameMac.h a bit
17767 * loader/mac/WebPolicyDecider.h: Removed.
17768 * loader/mac/WebPolicyDecider.mm: Removed.
17769 * WebCore.xcodeproj/project.pbxproj: Updated for removal.
17772 * bindings/js/kjs_binding.cpp:
17773 (KJS::ScriptInterpreter::ScriptInterpreter):
17774 (KJS::ScriptInterpreter::wasRunByUserGesture):
17775 * bindings/js/kjs_binding.h:
17776 (KJS::ScriptInterpreter::setCurrentEvent):
17777 (KJS::ScriptInterpreter::setInlineCode):
17778 (KJS::ScriptInterpreter::setProcessingTimerCallback):
17779 (KJS::ScriptInterpreter::getCurrentEvent):
17780 (KJS::cacheDOMObject):
17781 (KJS::DOMExceptionTranslator::DOMExceptionTranslator):
17782 * bridge/AXObjectCache.h:
17783 * bridge/mac/BrowserExtensionMac.mm:
17784 (WebCore::BrowserExtensionMac::createNewWindow):
17785 * bridge/mac/FrameMac.h:
17786 * bridge/mac/FrameMac.mm:
17787 (WebCore::FrameMac::loadRequest):
17788 (WebCore::FrameMac::submitForm):
17789 (WebCore::FrameMac::urlSelected):
17790 (WebCore::FrameMac::userAgent):
17791 (WebCore::FrameMac::passMouseDownEventToWidget):
17792 (WebCore::FrameMac::handleMouseMoveEvent):
17793 * bridge/mac/PageMac.mm:
17794 (WebCore::Page::Page):
17795 * bridge/mac/WebCoreEditCommand.mm:
17796 * bridge/mac/WebCoreFrameBridge.h:
17797 * bridge/mac/WebCoreFrameBridge.mm:
17798 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
17799 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
17800 * css/CSSComputedStyleDeclaration.cpp:
17802 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
17803 * css/CSSPrimitiveValue.cpp:
17804 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
17805 (WebCore::CSSPrimitiveValue::cleanup):
17806 (WebCore::CSSPrimitiveValue::cssText):
17807 * css/CSSPrimitiveValue.h:
17808 (WebCore::CSSPrimitiveValue::):
17809 * css/CSSValueList.cpp:
17810 (WebCore::CSSValueList::append):
17811 * css/cssparser.cpp:
17812 (WebCore::CSSParser::parseValue):
17814 * css/cssstyleselector.cpp:
17815 (WebCore::CSSStyleSelector::applyProperty):
17816 * dom/Document.cpp:
17817 (WebCore::Document::Document):
17818 (WebCore::Document::updateSelection):
17819 (WebCore::Document::implicitClose):
17820 (WebCore::Document::setFocusNode):
17822 * editing/ReplaceSelectionCommand.h:
17823 * html/HTMLParser.cpp:
17824 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
17825 * loader/mac/FrameLoader.h:
17826 (WebCore::PolicyCheck::request):
17827 * loader/mac/FrameLoader.mm:
17828 (WebCore::FrameLoader::~FrameLoader):
17829 (WebCore::FrameLoader::safeLoad):
17830 (WebCore::FrameLoader::load):
17831 (WebCore::FrameLoader::open):
17832 (WebCore::FrameLoader::stopLoading):
17833 (WebCore::setAllDefersLoading):
17834 (WebCore::FrameLoader::setDefersLoading):
17835 (WebCore::FrameLoader::willSendRequest):
17836 (WebCore::FrameLoader::receivedMainResourceError):
17837 (WebCore::FrameLoader::callContinueFragmentScrollAfterNavigationPolicy):
17838 (WebCore::FrameLoader::commitProvisionalLoad):
17839 (WebCore::FrameLoader::checkNavigationPolicy):
17840 (WebCore::FrameLoader::checkContentPolicy):
17841 (WebCore::FrameLoader::cancelContentPolicyCheck):
17842 (WebCore::FrameLoader::stopPolicyCheck):
17843 (WebCore::FrameLoader::checkNewWindowPolicy):
17844 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
17845 (WebCore::FrameLoader::continueAfterNavigationPolicy):
17846 (WebCore::FrameLoader::continueAfterContentPolicy):
17847 (WebCore::FrameLoader::continueAfterWillSubmitForm):
17848 (WebCore::FrameLoader::callContinueLoadAfterNavigationPolicy):
17849 (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
17850 (WebCore::FrameLoader::closeDocument):
17851 (WebCore::FrameLoader::transitionToCommitted):
17852 (WebCore::FrameLoader::callContinueLoadAfterNewWindowPolicy):
17853 (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
17854 (WebCore::FrameLoader::post):
17855 (WebCore::FrameLoader::detachFromParent):
17856 (WebCore::FrameLoader::addExtraFieldsToRequest):
17857 (WebCore::PolicyCheck::PolicyCheck):
17858 (WebCore::PolicyCheck::clear):
17859 (WebCore::PolicyCheck::set):
17860 (WebCore::PolicyCheck::call):
17861 (WebCore::PolicyCheck::dropRequest):
17862 (WebCore::FrameLoaderClient::~FrameLoaderClient):
17863 * loader/mac/WebFormState.h:
17864 * loader/mac/WebFormState.mm:
17865 * loader/mac/WebFrameLoaderClient.h:
17866 * loader/mac/WebLoader.h:
17867 (WebCore::WebResourceLoader::defersLoading):
17868 * loader/mac/WebLoader.mm:
17869 (WebCore::WebResourceLoader::WebResourceLoader):
17870 (WebCore::WebResourceLoader::load):
17871 (WebCore::WebResourceLoader::setDefersLoading):
17872 * loader/mac/WebMainResourceLoader.h:
17873 * loader/mac/WebMainResourceLoader.mm:
17874 (WebCore::MainResourceLoader::MainResourceLoader):
17875 (WebCore::MainResourceLoader::releaseDelegate):
17876 (WebCore::MainResourceLoader::didCancel):
17877 (WebCore::MainResourceLoader::callContinueAfterNavigationPolicy):
17878 (WebCore::MainResourceLoader::continueAfterNavigationPolicy):
17879 (WebCore::MainResourceLoader::willSendRequest):
17880 (WebCore::MainResourceLoader::callContinueAfterContentPolicy):
17881 (WebCore::MainResourceLoader::continueAfterContentPolicy):
17882 (WebCore::MainResourceLoader::didReceiveResponse):
17883 (WebCore::MainResourceLoader::didReceiveData):
17884 (WebCore::MainResourceLoader::didFinishLoading):
17885 (WebCore::MainResourceLoader::didFail):
17886 (WebCore::MainResourceLoader::loadNow):
17887 (WebCore::MainResourceLoader::load):
17888 (WebCore::MainResourceLoader::setDefersLoading):
17890 (WebCore::Frame::paint):
17891 * page/FrameView.cpp:
17892 (WebCore::FrameView::layout):
17893 * page/FrameView.h:
17895 (WebCore::Page::setDefersLoading):
17897 (WebCore::Page::defersLoading):
17898 * platform/DeprecatedString.h:
17899 * platform/DeprecatedStringList.h:
17900 * platform/FontFallbackList.h:
17901 * platform/PlatformKeyboardEvent.h:
17902 * platform/PlatformMouseEvent.h:
17903 * platform/PlatformWheelEvent.h:
17904 * platform/mac/ClipboardMac.h:
17905 * platform/mac/ClipboardMac.mm:
17906 (WebCore::ClipboardMac::setDragImage):
17907 (WebCore::ClipboardMac::dragNSImage):
17908 (WebCore::ClipboardMac::sourceOperation):
17909 (WebCore::ClipboardMac::destinationOperation):
17910 * rendering/RenderObject.cpp:
17911 (WebCore::RenderObject::setStyle):
17912 * rendering/break_lines.cpp:
17913 (WebCore::nextBreakablePosition):
17915 2006-10-28 Adam Roben <aroben@apple.com>
17917 Reviewed by Maciej.
17919 Fix layout tests that broke after r17399. Mitz discovered that the
17920 failures were caused by HitTestResult::m_point being uninitialized
17921 much of the time. HitTestResults are now always constructed with a
17922 point, and RenderLayer::hitTest and RenderLayer::hitTestLayer use that
17923 point instead of being passed one explicitly.
17925 * WebCore.exp: Change constructor symbol.
17926 * bridge/mac/FrameMac.mm:
17927 (WebCore::FrameMac::eventMayStartDrag): Update to new constructor and
17929 (WebCore::FrameMac::handleMouseMoveEvent): Ditto.
17930 * bridge/mac/WebCoreAXObject.mm:
17931 (-[WebCoreAXObject doAXTextMarkerForPosition:]): Ditto.
17932 (-[WebCoreAXObject accessibilityHitTest:]): Ditto.
17933 * dom/Document.cpp:
17934 (WebCore::Document::elementFromPoint): Ditto.
17935 (WebCore::Document::prepareMouseEvent): Ditto.
17937 (WebCore::Frame::isPointInsideSelection): Ditto.
17938 (WebCore::Frame::hitTestResultAtPoint): Ditto.
17939 * page/FrameView.cpp:
17940 (WebCore::FrameView::handleWheelEvent): Ditto.
17941 * rendering/HitTestResult.cpp:
17942 (WebCore::HitTestResult::HitTestResult): Initalize m_point with the
17944 * rendering/HitTestResult.h: Update constructor declaration.
17945 * rendering/RenderLayer.cpp:
17946 (WebCore::RenderLayer::autoscroll): Update to new constructor and
17948 (WebCore::RenderLayer::hitTest): Use the IntPoint stored in the
17949 HitTestResult instead of being passed one.
17950 (WebCore::RenderLayer::hitTestLayer): Ditto.
17951 * rendering/RenderLayer.h: Update declarations.
17953 2006-10-28 Nikolas Zimmermann <zimmermann@kde.org>
17955 Reviewed by Anders.
17957 Fix Qt/Linux build.
17960 * platform/qt/FrameQtClient.cpp:
17961 (WebCore::numRequests):
17962 (WebCore::FrameQtClientDefault::numPendingOrLoadingRequests):
17963 * platform/qt/PopupMenuQt.cpp:
17964 (WebCore::PopupMenu::updateFromElement):
17966 2006-10-28 David Carson <dacarson@gmail.com>
17968 Tweaked by Sam. Reviewed by Brady.
17970 Fix for: http://bugs.webkit.org/show_bug.cgi?id=11437
17971 Initialize m_modifyBiasSet to false, as it sometimes gets
17972 used before it has been initalized.
17974 * editing/SelectionController.cpp:
17975 (WebCore::SelectionController::SelectionController):
17977 2006-10-28 Beth Dakin <bdakin@apple.com>
17981 This is the WebCore half of pushing elementAtPoint and the backend
17982 of WebElementDictionary into WebCore. Most of the changes below are
17983 to accommodate one of the following:
17985 -NodeInfo is now a stand-alone class called HitTestResult.
17986 Previously it was defined in RenderObject.h, but not for
17987 any particular reason. The WebElementDictionary
17988 functionality that was pushed into WebCore has been pushed
17989 specifically into the this class. In fact,
17990 WebElementDictionary now keeps a HitTestResult as a member
17993 -The enumeration AccessPolicy is now called
17994 ClipboardAccessPolicy and is defined in its own header. It
17995 was previously defined in ClipboardMac.h, but is now
17996 defined independently to avoid including ClipboardMac.h
17997 from within FrameMac.h since FrameMac.h is now included in
17998 WebElementDictionary.m in WebKit.
18000 -Element now has a virtual target() for the sake of
18001 NodeInfo::targetFrame()
18003 * WebCore.exp: Several WebCore functions are newly called from
18004 WebKit, so they have been added here.
18005 * WebCore.xcodeproj/project.pbxproj:
18006 * bindings/objc/DOM.mm: Must include Image.h because of adjustments
18008 * bridge/mac/FrameMac.h: Adjust to HitTestResult changes.
18009 * bridge/mac/FrameMac.mm:
18010 (WebCore::FrameMac::freeClipboard): Adjust to ClipboardAccessPolicy
18011 and HitTestResult changes.
18012 (WebCore::FrameMac::eventMayStartDrag): Same.
18013 (WebCore::FrameMac::handleMouseMoveEvent): Same.
18014 (WebCore::FrameMac::dispatchCPPEvent): Same.
18015 (WebCore::FrameMac::mayDHTMLCut): Same.
18016 (WebCore::FrameMac::mayDHTMLCopy): Same.
18017 (WebCore::FrameMac::mayDHTMLPaste): Same.
18018 (WebCore::FrameMac::tryDHTMLCut): Same
18019 (WebCore::FrameMac::tryDHTMLCopy): Same.
18020 (WebCore::FrameMac::tryDHTMLPaste): Same.
18021 * bridge/mac/WebCoreAXObject.mm:
18022 (-[WebCoreAXObject doAXTextMarkerForPosition:]): Adjust to
18023 HitTestResult changes.
18024 (-[WebCoreAXObject accessibilityHitTest:]): Same.
18025 * bridge/mac/WebCoreFrameBridge.h: Same.
18026 * bridge/mac/WebCoreFrameBridge.mm:
18027 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]): Adjust for
18028 ClipboardAccessPolicy changes.
18029 (-[WebCoreFrameBridge dragExitedWithDraggingInfo:]): Same.
18030 (-[WebCoreFrameBridge concludeDragForDraggingInfo:]): Same.
18031 * dom/Document.cpp:
18032 (WebCore::Document::elementFromPoint): Adjust for HitTestResult
18034 (WebCore::Document::prepareMouseEvent): Same.
18036 (WebCore::Element::target): Now has a virtual target()
18037 * html/HTMLAnchorElement.h: Same.
18038 * html/HTMLAreaElement.cpp:
18039 (WebCore::HTMLAreaElement::mapMouseEvent): Adjust for HitTestResult
18041 * html/HTMLAreaElement.h: Virtual target()
18042 * html/HTMLBaseElement.h:
18043 (WebCore::HTMLBaseElement::target): Same.
18044 * html/HTMLFormElement.h: Same.
18045 * html/HTMLLinkElement.h: Same.
18046 * html/HTMLMapElement.cpp:
18047 (WebCore::HTMLMapElement::mapMouseEvent): Adjust for HitTestResult
18049 * html/HTMLMapElement.h: Same.
18051 (WebCore::Frame::isPointInsideSelection): Same.
18052 (WebCore::Frame::hitTestResultAtPoint): Same.
18053 * page/Frame.h: Same.
18054 * page/FrameView.cpp:
18055 (WebCore::FrameView::handleWheelEvent): Same.
18056 * platform/mac/ClipboardAccessPolicy.h: Added.
18058 * platform/mac/ClipboardMac.h: Remove definition of AccessPolicy,
18059 include ClipboardAccessPolicy.h, and rename AccessPolicy to
18060 ClipboardAccessPolicy.
18061 * platform/mac/ClipboardMac.mm: Rename ClipboardAccessPolicy.
18062 (WebCore::ClipboardMac::ClipboardMac):
18063 (WebCore::ClipboardMac::setAccessPolicy):
18064 (WebCore::ClipboardMac::clearData):
18065 (WebCore::ClipboardMac::clearAllData):
18066 (WebCore::ClipboardMac::getData):
18067 (WebCore::ClipboardMac::setData):
18068 (WebCore::ClipboardMac::types):
18069 (WebCore::ClipboardMac::setDragImage):
18070 (WebCore::ClipboardMac::setDropEffect):
18071 (WebCore::ClipboardMac::setEffectAllowed):
18072 * rendering/EllipsisBox.cpp:
18073 (WebCore::EllipsisBox::nodeAtPoint): Adjust for HitTestResult
18075 * rendering/EllipsisBox.h:
18076 * rendering/HitTestResult.cpp: Added.
18077 (WebCore::HitTestResult::HitTestResult):
18078 (WebCore::HitTestResult::~HitTestResult):
18079 (WebCore::HitTestResult::operator=):
18080 (WebCore::HitTestResult::setInnerNode):
18081 (WebCore::HitTestResult::setInnerNonSharedNode):
18082 (WebCore::HitTestResult::setURLElement):
18083 (WebCore::HitTestResult::setScrollbar):
18084 (WebCore::HitTestResult::targetFrame):
18085 (WebCore::HitTestResult::boundingBox):
18086 (WebCore::HitTestResult::isSelected):
18087 (WebCore::HitTestResult::title):
18088 * rendering/HitTestResult.h: Added.
18089 (WebCore::HitTestResult::readonly):
18090 (WebCore::HitTestResult::active):
18091 (WebCore::HitTestResult::mouseMove):
18092 (WebCore::HitTestResult::innerNode):
18093 (WebCore::HitTestResult::innerNonSharedNode):
18094 (WebCore::HitTestResult::point):
18095 (WebCore::HitTestResult::URLElement):
18096 (WebCore::HitTestResult::scrollbar):
18097 (WebCore::HitTestResult::setPoint):
18098 (WebCore::HitTestResult::setReadonly):
18099 (WebCore::HitTestResult::setActive):
18100 (WebCore::HitTestResult::setMouseMove):
18101 * rendering/InlineBox.cpp:
18102 (WebCore::InlineBox::nodeAtPoint): Adjust to HitTestResult changes.
18103 * rendering/InlineBox.h: Same.
18104 * rendering/InlineFlowBox.cpp:
18105 (WebCore::InlineFlowBox::nodeAtPoint): Same.
18106 * rendering/InlineFlowBox.h: Same.
18107 * rendering/InlineTextBox.cpp:
18108 (WebCore::InlineTextBox::nodeAtPoint): Same.
18109 * rendering/InlineTextBox.h: Same.
18110 * rendering/RenderBlock.cpp:
18111 (WebCore::RenderBlock::isPointInScrollbar): Same.
18112 (WebCore::RenderBlock::nodeAtPoint): Same.
18113 * rendering/RenderBlock.h: Same.
18114 * rendering/RenderBox.cpp:
18115 (WebCore::RenderBox::nodeAtPoint): Same.
18116 * rendering/RenderBox.h: Same.
18117 * rendering/RenderFlow.cpp:
18118 (WebCore::RenderFlow::hitTestLines): Same.
18119 * rendering/RenderFlow.h: Same.
18120 * rendering/RenderForeignObject.cpp:
18121 (WebCore::RenderForeignObject::nodeAtPoint): Same.
18122 * rendering/RenderForeignObject.h: Same.
18123 * rendering/RenderFrameSet.cpp:
18124 (WebCore::RenderFrameSet::nodeAtPoint): Same.
18125 * rendering/RenderFrameSet.h: Same.
18126 * rendering/RenderImage.cpp:
18127 (WebCore::RenderImage::nodeAtPoint): Same.
18128 * rendering/RenderImage.h: Same.
18129 * rendering/RenderInline.cpp:
18130 (WebCore::RenderInline::nodeAtPoint): Same.
18131 * rendering/RenderInline.h: Same.
18132 * rendering/RenderLayer.cpp:
18133 (WebCore::RenderLayer::autoscroll): Same.
18134 (WebCore::RenderLayer::hitTest): Same.
18135 (WebCore::RenderLayer::hitTestLayer): Same.
18136 (WebCore::RenderLayer::updateHoverActiveState): Same.
18137 * rendering/RenderLayer.h: Same.
18138 * rendering/RenderListBox.cpp:
18139 (WebCore::RenderListBox::isPointInScrollbar): Same.
18140 * rendering/RenderListBox.h: Same.
18141 * rendering/RenderObject.cpp:
18142 (WebCore::RenderObject::hitTest): Same.
18143 (WebCore::RenderObject::setInnerNode): Same.
18144 (WebCore::RenderObject::nodeAtPoint): Same.
18145 * rendering/RenderObject.h: Remove NodeInfo class and forward
18146 declare HitTestResult.
18147 * rendering/RenderPath.cpp:
18148 (WebCore::RenderPath::nodeAtPoint): Adjust to HitTestResult
18150 * rendering/RenderPath.h: Same.
18151 * rendering/RenderSVGImage.cpp:
18152 (WebCore::RenderSVGImage::nodeAtPoint): Same.
18153 * rendering/RenderSVGImage.h: Same
18154 * rendering/RenderSVGText.cpp:
18155 (WebCore::RenderSVGText::nodeAtPoint): Same.
18156 * rendering/RenderSVGText.h: Same.
18157 * rendering/RenderTableRow.cpp:
18158 (WebCore::RenderTableRow::nodeAtPoint): Same.
18159 * rendering/RenderTableRow.h: Same.
18160 * rendering/RenderTableSection.cpp:
18161 (WebCore::RenderTableSection::nodeAtPoint): Same.
18162 * rendering/RenderTableSection.h: Same.
18163 * rendering/RenderText.h: Same.
18164 (WebCore::RenderText::nodeAtPoint): Same.
18165 * rendering/RenderTextControl.cpp:
18166 (WebCore::RenderTextControl::nodeAtPoint): Same.
18167 * rendering/RenderTextControl.h: Same.
18168 * rendering/RootInlineBox.cpp:
18169 (WebCore::RootInlineBox::nodeAtPoint): Same.
18170 * rendering/RootInlineBox.h: Same.
18172 2006-10-27 Maciej Stachowiak <mjs@apple.com>
18174 Reviewed by Anders.
18176 - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=11212, later we will address the performance
18177 impact of fixing it again.
18179 * bridge/mac/FrameMac.mm:
18180 (WebCore::FrameMac::clear):
18182 2006-10-27 Maciej Stachowiak <mjs@apple.com>
18184 Reviewed by John & Adam.
18186 - assorted speedups to fix perf regression from fixing correctness regression
18188 * WebCore.exp: exported new methods.
18189 * WebCore.xcodeproj/project.pbxproj: Added CachedResourceMac.mm
18190 * bridge/mac/WebCoreFrameBridge.h:
18191 * bridge/mac/WebCoreFrameBridge.mm:
18192 * loader/CachedResource.cpp: Removed now obsolete getCFURL.
18193 * loader/CachedResource.h:
18194 * loader/mac/CachedResourceMac.mm: Added.
18195 (WebCore::CachedResource::getNSURLRequest): New method; the NSURLRequest is
18196 now cached in the CachedObject.
18197 * loader/mac/FrameLoader.h:
18198 * loader/mac/FrameLoader.mm:
18199 (WebCore::FrameLoader::loadedResourceFromMemoryCache): New method - lets
18200 the WebKit side do faster dispatch for clients that implement the fast path delegate.
18201 * loader/mac/LoaderFunctionsMac.mm:
18202 (WebCore::CheckCacheObjectStatus): Instead of calling several FrameLoader methods,
18203 just call loadedResourceFromMemoryCache.
18204 * loader/mac/WebFrameLoaderClient.h:
18206 2006-10-27 Oliver Hunt <oliver@apple.com>
18208 Reviewed by Maciej.
18212 * dom/Document.cpp:
18213 (WebCore::Document::referrer):
18215 2006-10-27 Geoffrey Garen <ggaren@apple.com>
18217 Reviewed by Maciej.
18219 Moved some WebCoreFrameBridge functions into FrameLoader.
18221 I had to make FrameLoader.h capable of compiling in C++-only source files
18222 by adding some forward declarations and __OBJC__ #ifdefs.
18225 * bridge/mac/FrameMac.h:
18226 * bridge/mac/FrameMac.mm:
18227 (WebCore::FrameMac::createEmptyDocument):
18228 (WebCore::FrameMac::tokenizerProcessedData):
18229 * bridge/mac/WebCoreFrameBridge.h:
18230 * bridge/mac/WebCoreFrameBridge.mm:
18231 * dom/Document.cpp:
18232 (WebCore::Document::processHttpEquiv):
18233 (WebCore::Document::referrer):
18234 * loader/LoaderFunctions.h:
18235 * loader/mac/FrameLoader.h:
18236 * loader/mac/FrameLoader.mm:
18237 (WebCore::numRequests):
18238 (WebCore::FrameLoader::numPendingOrLoadingRequests):
18239 (WebCore::FrameLoader::isReloading):
18240 (WebCore::FrameLoader::referrer):
18241 (WebCore::FrameLoader::loadEmptyDocumentSynchronously):
18242 (WebCore::FrameLoader::startLoadingResource):
18243 * loader/mac/LoaderFunctionsMac.mm:
18244 (WebCore::CheckIfReloading):
18246 * page/FrameTree.cpp:
18247 (WebCore::FrameTree::isDescendantOf):
18248 (WebCore::FrameTree::traverseNext):
18249 * page/FrameTree.h:
18250 * platform/network/mac/ResourceLoaderMac.mm:
18251 (WebCore::ResourceLoader::start):
18253 2006-10-27 Timothy Hatcher <timothy@apple.com>
18257 <rdar://problem/4478625> HTML Editing: Basic table editing and culling
18259 Expanded the Deletion UI to lists, positioned block element and block elementss with borders.
18261 * editing/DeleteButtonController.cpp:
18262 (WebCore::isDeletableElement):
18263 (WebCore::enclosingDeletableElement):
18264 (WebCore::DeleteButtonController::respondToChangedSelection):
18266 2006-10-27 John Sullivan <sullivan@apple.com>
18268 Reviewed by Kevin Decker
18270 Some more grammar-checking plumbing. No additional grammar jokes will have been made by the time
18271 you haven't not finished reading this.
18273 * rendering/InlineTextBox.h:
18274 * rendering/InlineTextBox.cpp:
18275 (WebCore::InlineTextBox::paint):
18276 Updated for changed signature of paintDocumentMarkers, which causes grammar markers to be
18278 (WebCore::InlineTextBox::paintDocumentMarkers):
18279 Renamed from paintAllMarkersOfType; now takes a bool for whether background or foreground
18280 markers should be painted, instead of a marker type. This avoids walking the collection of
18281 markers multiple times back to back. Now handles grammar markers.
18283 2006-10-27 Timothy Hatcher <timothy@apple.com>
18287 Renamed Copy Files to Copy Generated Headers.
18288 Copy 4 DOM*Internal.h headers.
18290 * WebCore.xcodeproj/project.pbxproj:
18291 * bindings/scripts/CodeGeneratorObjC.pm:
18293 2006-10-27 John Sullivan <sullivan@apple.com>
18298 exported symbol for FrameMac->advanceToNextSpelling()
18300 * bridge/mac/WebCoreFrameBridge.h:
18301 * bridge/mac/WebCoreFrameBridge.mm:
18302 removed advanceToNextMisspelling callers. Clients in WebKit must now call FrameMac directly.
18304 2006-10-27 Justin Garcia <justin.garcia@apple.com>
18306 Reviewed by harrison
18308 <http://bugs.webkit.org/show_bug.cgi?id=11423>
18309 REGRESSION: First newline missing from textarea's value
18311 The regression is that foo, return, bar in a textarea serializes as 'foobar'.
18313 Before my change in r17223, return (an InsertLineBreak) would insert a '\n'
18314 (the line break) then a br to prevent the '\n' from collapsing, since the
18315 insertion is being done at the end of a block (the textarea's shadow div). Then,
18316 inserting "bar" would displace the br, and "foo\nbar" would serialize as "foo\nbar".
18317 After my change in r17223, InsertLineBreak would insert a br then a '\n' (reversed
18318 the order). Then inserting "bar" would displace the '\n' and "foo"<br>"bar" would
18319 serialize as "foobar" because when serializing RenderTextControl intentionally asks
18320 textContent to not convert brs to newlines. It seems to think that the only brs in
18321 the shadow div will be placeholders or collapsed.
18323 We could remove this assumption, but, for consistancy's sake, I changed InsertLineBreak
18324 to insert two '\n's when at the end of a block in white-space:pre text. This alone
18325 would have fixed the bug, but introduced a new one, because foo, return, bar would
18326 produce "foo\nbar\n" which would serialize as "foo\nbar\n" (even though the second
18327 '\n' is collapsed, because of 9661). So, then I changed placeholder displacement to
18328 displace a '\n' if it's acting as a placeholder. A "placeholder" is now defined as
18329 a br or '\n' that will collapse (become superfluous) when content is inserted just
18332 * editing/CompositeEditCommand.cpp:
18333 (WebCore::CompositeEditCommand::removePlaceholderAt): Renamed. Remove
18334 a br or '\n' if content inserted just before it will cause it to collapse.
18335 * editing/CompositeEditCommand.h:
18336 * editing/InsertLineBreakCommand.cpp:
18337 (WebCore::InsertLineBreakCommand::doApply): Insert the same type of node
18338 to prevent a collapse as was used for the line break. Fixed comments.
18339 * editing/InsertTextCommand.cpp:
18340 (WebCore::InsertTextCommand::input): Call the renamed function.
18342 2006-10-27 Geoffrey Garen <ggaren@apple.com>
18346 Fixed semantic inaccuracy in String::operator NSString *(), where a NULL
18347 String became an empty NSString *, instead of nil. This will become important
18348 as we start using this conversion more.
18350 Added work-around for AppKit crash that semantic accuracy revealed.
18352 No testcase because I don't think there's a way to reflect this change
18355 * platform/PlatformString.h:
18356 (WebCore::String::operator NSString*):
18357 * platform/mac/TextFieldMac.mm:
18358 (-[NSSearchFieldCell _addStringToRecentSearches:]):
18360 2006-10-27 David Harrison <harrison@apple.com>
18362 Reviewed by Maciej,
18364 <rdar://problem/4003820> Expose blockquotes in AXAttributedStringForTextMarkerRange
18366 * bridge/mac/WebCoreAXObject.mm:
18368 Calculate and return the blockquote level of the element.
18370 (AXAttributeStringSetBlockquoteLevel):
18371 Add, if non-zero, or clear the block quote level attribute.
18373 (AXAttributedStringAppendText):
18374 Send AXAttributeStringSetBlockquoteLevel.
18376 2006-10-27 Darin Adler <darin@apple.com>
18378 - fix one error in the Qt build
18380 * platform/qt/GraphicsContextQt.cpp:
18381 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
18384 2006-10-27 Darin Adler <darin@apple.com>
18386 Reviewed by Maciej.
18388 * WebCore.exp: Export more symbols needed by WebKit.
18390 2006-10-26 Geoffrey Garen <ggaren@apple.com>
18392 Reviewed by the Baroness Esmeralda Von Scratch N' Purr XIV.
18394 Fixed layout test crash. Oops.
18396 * loader/mac/WebDocumentLoader.mm:
18397 (WebCore::canonicalizedTitle):
18399 2006-10-26 John Sullivan <sullivan@apple.com>
18403 - fixed <rdar://problem/4806064> Repro crash in FrameMac::loadRequest following iTunes music store link from salon.com
18405 This restores some of the nil-handling that was implicit before some of the code was converted from
18406 Objective-C to C++.
18408 * bridge/mac/FrameMac.mm:
18409 (WebCore::FrameMac::loadRequest):
18410 handle nil FrameMac
18412 * bridge/mac/WebCoreFrameBridge.mm:
18413 (-[WebCoreFrameBridge canTargetLoadInFrame:]):
18416 2006-10-26 Geoffrey Garen <ggaren@apple.com>
18418 Reviewed by Darin, Maciej.
18420 Removed many uses of NSString *.
18421 Moved a few methods from WebCoreFrameBridge to FrameLoader, replacing
18422 stringByCollapsingNonPrintingCharacters with a c++ equivalent.
18424 PLT says no performance regression.
18427 * bridge/mac/WebCoreFrameBridge.mm:
18428 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
18429 * loader/mac/FrameLoader.h:
18430 * loader/mac/FrameLoader.mm:
18431 (WebCore::FrameLoader::setupForReplaceByMIMEType):
18432 (WebCore::FrameLoader::load):
18433 (WebCore::FrameLoader::canShowMIMEType):
18434 (WebCore::FrameLoader::representationExistsForURLScheme):
18435 (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
18436 (WebCore::FrameLoader::checkContentPolicy):
18437 (WebCore::FrameLoader::reloadAllowingStaleData):
18438 (WebCore::FrameLoader::invalidatePendingPolicyDecision):
18439 (WebCore::FrameLoader::checkNewWindowPolicy):
18440 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
18441 (WebCore::FrameLoader::transitionToCommitted):
18442 (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
18443 (WebCore::FrameLoader::post):
18444 * loader/mac/WebDocumentLoader.h:
18445 * loader/mac/WebDocumentLoader.mm:
18446 (WebCore::DocumentLoader::doesProgressiveLoad):
18447 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
18448 (WebCore::DocumentLoader::title):
18449 (WebCore::DocumentLoader::setOverrideEncoding):
18450 (WebCore::DocumentLoader::overrideEncoding):
18451 (WebCore::DocumentLoader::setTitle):
18452 * loader/mac/WebFrameLoaderClient.h:
18453 * loader/mac/WebMainResourceLoader.mm:
18454 (WebCore::MainResourceLoader::continueAfterContentPolicy):
18456 2006-10-26 Timothy Hatcher <timothy@apple.com>
18460 <rdar://problem/4796941> Table deletion outline is misplaced at nytimes.com
18462 The main table at nytimes.com has a fixed width of 874px, but the table ends
18463 up overflowing to 963px. We now use overflowWidth() and overflowHeight() to correct
18464 this. The other bug was a missing top and left of 0px on the container element,
18465 causing the deletion UI to sometimes be offset below the table.
18467 Now check for the element's renderer at the beginning of show() and
18468 return early if it is null.
18470 * editing/DeleteButtonController.cpp:
18471 (WebCore::DeleteButtonController::updateOutlineStyle):
18472 (WebCore::DeleteButtonController::show):
18474 2006-10-26 Anders Carlsson <acarlsson@apple.com>
18478 * html/CanvasRenderingContext2D.cpp:
18479 Include MathExtras.h
18481 2006-10-26 John Sullivan <sullivan@apple.com>
18483 Reviewed by Anders.
18485 Some changes to support new grammar checking code in WebKit.
18488 added mangled symbol for Document->removeMarkers() so I can call it from WebKit
18490 * WebCore.xcodeproj/project.pbxproj:
18491 Made Document.h and DocumentMarker.h private so I can include them from WebKit.
18492 Made HTMLCollection.h private because Document.h uses it.
18494 * bridge/mac/WebCoreFrameBridge.h:
18495 * bridge/mac/WebCoreFrameBridge.mm:
18496 removed unmarkAllMisspellings(); WebKit now calls through to the Document directly
18498 2006-10-26 Anders Carlsson <acarlsson@apple.com>
18502 Add reverseFind to String and use it instead of findRev.
18503 Use CString instead of DeprecatedCString in one place.
18505 * html/HTMLFormElement.cpp:
18506 (WebCore::HTMLFormElement::formData):
18507 * ksvg2/svg/SVGURIReference.cpp:
18508 (WebCore::SVGURIReference::getTarget):
18509 * loader/Decoder.cpp:
18510 (WebCore::Decoder::checkForCSSCharset):
18511 * platform/PlatformString.h:
18512 (WebCore::String::reverseFind):
18513 * platform/StringImpl.cpp:
18514 (WebCore::StringImpl::reverseFind):
18515 * platform/StringImpl.h:
18517 2006-10-26 John Sullivan <sullivan@apple.com>
18521 More plumbing for grammar checking. Still no grammars is checked.
18523 * dom/DocumentMarker.h:
18524 (WebCore::DocumentMarker::):
18525 added Grammar to enum of marker types; removed explicit enum values; removed unnecessary "enum"
18527 * platform/GraphicsContext.h:
18528 renamed method drawLineForMisspelling to drawLineForMisspellingOrBadGrammar;
18529 now takes a bool parameter for whether it represents bad grammar or a misspelling
18531 * platform/mac/GraphicsContextMac.mm:
18532 (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
18533 Renamed from drawLineForMisspelling; uses green dot instead of red dot for grammar case. Changed
18534 an existing "assert" to "ASSERT".
18536 * rendering/InlineTextBox.h:
18537 renamed function paintSpellingMarker to paintSpellingOrGrammarMarker;
18539 * rendering/InlineTextBox.cpp:
18540 (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
18541 Renamed from paintSpellingMarker; now takes a bool parameter for whether it represents
18542 bad grammar or a misspelling
18543 (WebCore::InlineTextBox::paintAllMarkersOfType):
18544 now handles markers of type Grammar
18546 === Safari-521.29 ===
18548 2006-10-26 Sam Weinig <sam.weinig@gmail.com>
18552 Fix for http://bugs.webkit.org/show_bug.cgi?id=11424
18553 Cleanup rendering code
18555 - Assorted code cleanup.
18557 * rendering/AutoTableLayout.cpp:
18558 * rendering/AutoTableLayout.h:
18559 (WebCore::AutoTableLayout::totalPercent):
18560 * rendering/CounterListItem.h:
18561 * rendering/CounterNode.cpp:
18562 * rendering/CounterNode.h:
18563 (WebCore::CounterNode::~CounterNode):
18564 (WebCore::CounterNode::isReset):
18565 * rendering/CounterResetNode.cpp:
18566 * rendering/CounterResetNode.h:
18567 * rendering/DataRef.h:
18568 (WebCore::DataRef::DataRef):
18569 * rendering/DeprecatedRenderSelect.h:
18570 * rendering/DeprecatedSlider.cpp:
18571 * rendering/DeprecatedSlider.h:
18572 * rendering/EllipsisBox.cpp:
18573 * rendering/EllipsisBox.h:
18574 (WebCore::EllipsisBox::EllipsisBox):
18575 * rendering/FixedTableLayout.cpp:
18576 * rendering/FixedTableLayout.h:
18577 * rendering/GapRects.h:
18578 * rendering/InlineBox.cpp:
18579 * rendering/InlineBox.h:
18580 (WebCore::InlineBox::InlineBox):
18581 (WebCore::InlineBox::setConstructed):
18582 (WebCore::InlineBox::clearTruncation):
18583 (WebCore::InlineBox::markDirty):
18584 * rendering/InlineFlowBox.cpp:
18585 * rendering/InlineFlowBox.h:
18586 (WebCore::InlineFlowBox::InlineFlowBox):
18587 (WebCore::InlineFlowBox::setConstructed):
18588 (WebCore::InlineFlowBox::setEdges):
18589 (WebCore::InlineFlowBox::setVerticalOverflowPositions):
18590 (WebCore::InlineFlowBox::setVerticalSelectionPositions):
18591 * rendering/InlineRunBox.h:
18592 (WebCore::InlineRunBox::paintBackgroundAndBorder):
18593 (WebCore::InlineRunBox::paintDecorations):
18594 * rendering/InlineTextBox.cpp:
18595 * rendering/InlineTextBox.h:
18596 (WebCore::InlineTextBox::InlineTextBox):
18597 (WebCore::InlineTextBox::end):
18598 (WebCore::InlineTextBox::textObject):
18599 * rendering/Length.h:
18600 (WebCore::Length::Length):
18601 * rendering/ListMarkerBox.cpp:
18602 * rendering/ListMarkerBox.h:
18603 * rendering/RenderPartObject.h:
18604 * rendering/RootInlineBox.cpp:
18605 * rendering/RootInlineBox.h:
18606 * rendering/SVGInlineFlowBox.cpp:
18607 * rendering/SVGInlineFlowBox.h:
18608 (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
18609 * rendering/SVGRootInlineBox.cpp:
18610 * rendering/SVGRootInlineBox.h:
18611 (WebCore::SVGRootInlineBox::SVGRootInlineBox):
18612 * rendering/TableLayout.h:
18613 (WebCore::TableLayout::TableLayout):
18614 (WebCore::TableLayout::~TableLayout):
18615 * rendering/bidi.h:
18616 (WebCore::BidiStatus::BidiStatus):
18617 (WebCore::BidiRun::BidiRun):
18618 * rendering/break_lines.h:
18620 2006-10-26 Justin Garcia <justin.garcia@apple.com>
18624 <http://bugs.webkit.org/show_bug.cgi?id=11329>
18625 Gmail Editor: Can't remove styling applied to selection after clicking "Remove Formatting" toolbar icon.
18627 * editing/Editor.cpp:
18628 (WebCore::Editor::removeFormattingAndStyle): Moved from JSEditor.
18629 Wrapped the plain text fragment in a style span with the document
18630 default style so that it will appear unstyled regardless of where
18631 it is inserted. Could have also inserted the plain text fragment
18632 and then applied the document default style to it, but there is not
18633 yet any redundant style prevention in ApplyStyleCommand, so this
18635 * editing/Editor.h:
18636 * editing/JSEditor.cpp:
18638 2006-10-26 Oliver Hunt <oliver@apple.com>
18640 Reviewed by Anders.
18641 Fixes <rdar://problem/4800518> -- needed to update existing
18642 canvas path elements when transforms are performed on the
18645 * html/CanvasRenderingContext2D.cpp:
18646 (WebCore::CanvasRenderingContext2D::scale):
18647 (WebCore::CanvasRenderingContext2D::rotate):
18648 (WebCore::CanvasRenderingContext2D::translate):
18650 2006-10-26 Nikolas Zimmermann <zimmermann@kde.org>
18654 Fix Qt/Linux build.
18656 * platform/network/qt/ResourceLoaderManager.cpp:
18657 (WebCore::ResourceLoaderManager::slotData):
18658 (WebCore::ResourceLoaderManager::slotMimetype):
18659 (WebCore::ResourceLoaderManager::remove):
18660 (WebCore::ResourceLoaderManager::add):
18661 * platform/network/qt/ResourceLoaderQt.cpp:
18662 (WebCore::ResourceLoader::receivedResponse):
18663 * platform/qt/FrameQtClient.cpp:
18664 (WebCore::FrameQtClientDefault::openURL):
18665 * platform/qt/LoaderFunctionsQt.cpp:
18666 (WebCore::ServeSynchronousRequest):
18668 2006-10-26 Adam Roben <aroben@apple.com>
18672 Fix: <rdar://problem/3951815> add "type-to-select" feature for list
18673 boxes (<select> elements)
18674 Fix: http://bugs.webkit.org/show_bug.cgi?id=9764 New popup menus
18675 should have type-ahead selection without popping up menu
18677 * WebCore.xcodeproj/project.pbxproj: Version wars.
18678 * html/HTMLSelectElement.h: Add new instance variables for type-ahead
18680 * html/HTMLSelectElement.cpp:
18681 (WebCore::HTMLSelectElement::HTMLSelectElement): Initialize new
18682 instance variables.
18683 (WebCore::HTMLSelectElement::defaultEventHandler): Perform type-ahead
18684 find on printable character presses.
18685 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Remove
18686 redundant check that the listIndex has changed (setSelectedIndex does
18687 this for us), and fix indentation.
18688 (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Change an if
18690 (WebCore::stripLeadingWhiteSpace): Helper function for typeAheadFind()
18691 to strip leading whitespace (including non-breaking spaces) from a
18693 (WebCore::HTMLSelectElement::typeAheadFind): New method to perform
18695 * platform/PopupMenu.h: Added new updateFromElement() method to be
18696 called from RenderMenuList::updateFromElement().
18697 * platform/mac/PopupMenuMac.mm:
18698 (WebCore::PopupMenu::updateFromElement): While we are using
18699 NSPopUpButtonCell for our popups, this method can stay empty.
18700 * rendering/RenderListBox.cpp:
18701 (WebCore::RenderListBox::updateFromElement): Scroll to reveal the first
18703 * rendering/RenderMenuList.cpp:
18704 (WebCore::RenderMenuList::updateFromElement): Tell the popup to update
18707 2006-10-26 Darin Adler <darin@apple.com>
18709 Reviewed by Anders.
18711 - fix http://bugs.webkit.org/show_bug.cgi?id=11360
18712 editing/pasteboard/copy-paste-bidi intermittently fails due to disappearance of anonymous RenderBlock
18714 * editing/ReplaceSelectionCommand.cpp:
18715 (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
18716 Use two vectors instead of a hash map: more efficient, deterministic. There was no
18717 reason to use a hash table.
18719 2006-10-26 Maciej Stachowiak <mjs@apple.com>
18721 Reviewed by Anders.
18723 - .5% speed improvement by avoiding excess CFURLRef allocation
18725 * loader/CachedResource.cpp:
18726 (WebCore::CachedResource::getCFURL): New method. For Mac only (for now), cache the CFURL
18727 here for later reuse.
18728 * loader/CachedResource.h:
18729 * loader/mac/LoaderFunctionsMac.mm:
18730 (WebCore::CheckCacheObjectStatus): Use the cached CFURL, don't make a whole new one.
18732 2006-10-25 Darin Adler <darin@apple.com>
18734 Reviewed by Anders.
18736 - removed 55 methods from WebCoreFrameBridge
18737 - changed callers to use Frame directly instead
18738 - put FrameLoaderTypes.h types into the WebCore namespace
18739 - first steps to get FrameLoader.h ready for cross-platform duty
18742 * WebCore.xcodeproj/project.pbxproj:
18743 * bridge/mac/BrowserExtensionMac.mm:
18744 (WebCore::BrowserExtensionMac::createNewWindow):
18745 * bridge/mac/FrameMac.h:
18746 * bridge/mac/FrameMac.mm:
18747 (WebCore::FrameMac::loadRequest):
18748 (WebCore::FrameMac::startRedirectionTimer):
18749 (WebCore::FrameMac::stopRedirectionTimer):
18750 (WebCore::FrameMac::passSubframeEventToSubframe):
18751 (WebCore::FrameMac::handledOnloadEvents):
18752 (WebCore::FrameMac::isLoadTypeReload):
18753 * bridge/mac/WebCoreFrameBridge.h:
18754 * bridge/mac/WebCoreFrameBridge.mm:
18755 (-[WebCoreFrameBridge executionContextForView:]):
18756 (updateRenderingForBindings):
18757 (-[WebCoreFrameBridge canTargetLoadInFrame:]):
18758 (-[WebCoreFrameBridge forceLayoutAdjustingViewSize:]):
18759 (-[WebCoreFrameBridge forceLayoutWithMinimumPageWidth:maximumPageWidth:adjustingViewSize:]):
18760 (-[WebCoreFrameBridge installInFrame:]):
18761 (-[WebCoreFrameBridge numPendingOrLoadingRequests]):
18762 (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
18763 (-[WebCoreFrameBridge baseWritingDirectionForSelectionStart]):
18764 (-[WebCoreFrameBridge dragOperationForDraggingInfo:]):
18765 (stringByCollapsingNonPrintingCharacters):
18766 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
18767 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
18768 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
18769 * loader/FrameLoaderTypes.h:
18770 * loader/mac/FrameLoader.h:
18771 * loader/mac/FrameLoader.mm:
18772 (WebCore::FrameLoader::FrameLoader):
18773 (WebCore::FrameLoader::setupForReplace):
18774 (WebCore::FrameLoader::load):
18775 (WebCore::FrameLoader::activeDocumentLoader):
18776 (WebCore::FrameLoader::state):
18777 (WebCore::FrameLoader::setState):
18778 (WebCore::FrameLoader::clearProvisionalLoad):
18779 (WebCore::FrameLoader::markLoadComplete):
18780 (WebCore::FrameLoader::commitProvisionalLoad):
18781 (WebCore::FrameLoader::receivedMainResourceError):
18782 (WebCore::FrameLoader::handleFallbackContent):
18783 (WebCore::FrameLoader::isLoadingMainFrame):
18784 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
18785 (WebCore::FrameLoader::continueAfterNavigationPolicy):
18786 (WebCore::FrameLoader::continueAfterWillSubmitForm):
18787 (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
18788 (WebCore::FrameLoader::transitionToCommitted):
18789 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
18790 (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
18791 (-[WebCoreFrameLoaderAsDelegate continueAfterNewWindowPolicy:]):
18792 (-[WebCoreFrameLoaderAsDelegate continueAfterNavigationPolicy:]):
18793 (-[WebCoreFrameLoaderAsDelegate continueAfterWillSubmitForm:]):
18794 * loader/mac/ImageDocumentMac.mm:
18795 (WebCore::finishImageLoad):
18796 * loader/mac/WebDocumentLoader.mm:
18797 (WebCore::DocumentLoader::isLoadingInAPISense):
18798 * loader/mac/WebMainResourceLoader.h:
18799 * loader/mac/WebMainResourceLoader.mm:
18800 (WebCore::MainResourceLoader::continueAfterContentPolicy):
18801 (-[WebCoreMainResourceLoaderAsPolicyDelegate continueAfterContentPolicy:]):
18802 * loader/mac/WebSubresourceLoader.mm:
18803 (-[WebCoreSubresourceHandle initWithLoader:]):
18804 * platform/mac/ListBoxMac.mm:
18805 (-[WebCoreTableView keyDown:]):
18806 (-[WebCoreTableView keyUp:]):
18807 * platform/mac/WebCoreTextField.mm:
18808 (-[WebCoreTextFieldController textView:shouldHandleEvent:]):
18810 2006-10-25 Steve Falkenburg <sfalken@apple.com>
18817 (WebCore::Frame::adjustPageHeight):
18819 (WebCore::Frame::setupRootForPrinting):
18820 (WebCore::Frame::computePageRects):
18822 2006-10-25 Anders Carlsson <acarlsson@apple.com>
18826 <rdar://problem/4799088>
18827 REGRESSION: Translation widget fails to convert data and reports a "Data unavailable" error.
18829 * loader/mac/WebSubresourceLoader.h:
18830 * loader/mac/WebSubresourceLoader.mm:
18831 (-[WebCoreSubresourceHandle initWithLoader:]):
18832 Set the HTTP method before the HTTP body.
18834 2006-10-25 Geoffrey Garen <ggaren@apple.com>
18838 Renamed WebFrameLoader to FrameLoader, to match class name.
18840 * WebCore.xcodeproj/project.pbxproj:
18841 * bridge/mac/FrameMac.mm:
18842 * bridge/mac/WebCoreFrameBridge.mm:
18843 * loader/mac/FrameLoader.mm: Added.
18844 * loader/mac/IconLoaderMac.mm:
18845 * loader/mac/WebDocumentLoader.mm:
18846 * loader/mac/WebFrameLoader.h: Removed.
18847 * loader/mac/WebFrameLoader.mm: Removed.
18848 * loader/mac/WebLoader.mm:
18849 * loader/mac/WebMainResourceLoader.mm:
18850 * loader/mac/WebNetscapePlugInStreamLoader.mm:
18851 * loader/mac/WebSubresourceLoader.mm:
18853 2006-10-25 Darin Adler <darin@apple.com>
18857 * WebCore.xcodeproj/project.pbxproj: Mark bridge/mac/WebCoreResourceLoader.h as private.
18859 2006-10-25 David Smith <catfish.man@gmail.com>
18863 Fixed REGRESSION (r17280): Repro crash when clicking a link with target="_blank"
18864 http://bugs.webkit.org/show_bug.cgi?id=11411
18866 * bridge/mac/WebCoreFrameBridge.mm:
18867 (-[WebCoreFrameBridge canTargetLoadInFrame:]): Check that the target has a frame before using it.
18869 2006-10-25 Maciej Stachowiak <mjs@apple.com>
18871 Rubber stamped by Mitz.
18873 - moved some files that are essentially part of the ResourceLoader implementation to platform/network/mac
18875 * WebCore.xcodeproj/project.pbxproj:
18876 * bridge/mac/WebCoreResourceLoader.h: Moved to platform/network/mac.
18877 * bridge/mac/WebCoreResourceLoaderImp.h: Moved to platform/network/mac.
18878 * bridge/mac/WebCoreResourceLoaderImp.mm: Moved to platform/network/mac.
18880 2006-10-25 Maciej Stachowiak <mjs@apple.com>
18882 Rubber stamped by Mark.
18884 - remove no longer existing symbol that was breaking linking
18888 2006-10-25 Maciej Stachowiak <mjs@apple.com>
18892 - fixed "REGRESSION: Activity window doesn't always list all files until refresh"
18893 http://bugs.webkit.org/show_bug.cgi?id=11212
18895 I couldn't figure out how to write a test case.
18897 * bindings/js/kjs_window.cpp:
18898 (KJS::Window::clear): Avoid crashing if already detached.
18899 * bridge/mac/FrameMac.h:
18900 * bridge/mac/FrameMac.mm:
18901 (WebCore::FrameMac::clear): Change prototype to make this a proper
18902 overload for Frame::clear once again(!).
18904 2006-10-24 Darin Adler <darin@apple.com>
18906 Reviewed by Anders.
18908 - converted WebFrameLoaderClient to C++
18909 - renamed frame->frameLoader() function to frame->loader()
18910 - renamed [bridge impl] to [bridge _frame]
18911 - removed some bridge methods
18913 * WebCore.exp: Added more exports.
18914 * WebCore.xcodeproj/project.pbxproj: Made FrameTree.h private instead of project-internal
18915 so it can be used in WebKit.
18917 * bridge/mac/BrowserExtensionMac.mm:
18918 (WebCore::BrowserExtensionMac::createNewWindow):
18919 * bridge/mac/FrameMac.mm:
18920 (WebCore::FrameMac::createFrame):
18921 (WebCore::FrameMac::didFirstLayout):
18922 * bridge/mac/WebCoreAXObject.mm:
18923 (-[WebCoreAXObject rendererForView:]):
18924 * bridge/mac/WebCoreFrameBridge.h:
18925 * bridge/mac/WebCoreFrameBridge.mm:
18926 (-[WebCoreFrameBridge _shouldAllowAccessFrom:]):
18927 (-[WebCoreFrameBridge canTargetLoadInFrame:]):
18928 (-[WebCoreFrameBridge setOpener:]):
18929 (-[WebCoreFrameBridge getData:andResponse:forURL:]):
18930 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
18931 (-[WebCoreFrameBridge setTitle:]):
18932 (-[WebCoreFrameBridge originalRequestURL]):
18933 (-[WebCoreFrameBridge isLoadTypeReload]):
18934 (-[WebCoreFrameBridge frameDetached]):
18935 (-[WebCoreFrameBridge tokenizerProcessedData]):
18936 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
18937 (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
18938 (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
18939 (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
18940 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
18941 (-[WebCoreFrameBridge incomingReferrer]):
18942 (-[WebCoreFrameBridge isReloading]):
18943 (-[WebCoreFrameBridge handledOnloadEvents]):
18944 (-[WebCoreFrameBridge mainResourceURLResponse]):
18945 (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
18946 (-[WebCoreFrameBridge _frame]):
18947 (-[WebCoreFrameBridge executionContextForView:]):
18948 * bridge/mac/WebCorePageBridge.mm:
18949 (-[WebCorePageBridge setMainFrame:]):
18950 * dom/Position.cpp:
18951 (WebCore::Position::upstream):
18952 * loader/mac/IconLoaderMac.mm:
18953 (IconLoader::notifyIconChanged):
18954 * loader/mac/WebDocumentLoader.mm:
18955 (WebCore::DocumentLoader::frameLoader):
18956 (WebCore::DocumentLoader::stopLoading):
18957 (WebCore::DocumentLoader::finishedLoading):
18958 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
18959 * loader/mac/WebFormState.mm:
18960 (WebCore::FormState::FormState):
18961 * loader/mac/WebFrameLoader.h:
18962 * loader/mac/WebFrameLoader.mm:
18963 (WebCore::FrameLoader::~FrameLoader):
18964 (WebCore::FrameLoader::prepareForLoadStart):
18965 (WebCore::FrameLoader::finalSetupForReplace):
18966 (WebCore::FrameLoader::safeLoad):
18967 (WebCore::FrameLoader::load):
18968 (WebCore::FrameLoader::startLoading):
18969 (WebCore::FrameLoader::stopLoadingSubframes):
18970 (WebCore::FrameLoader::stopLoading):
18971 (WebCore::FrameLoader::cancelPendingArchiveLoad):
18972 (WebCore::FrameLoader::defersCallbacksChanged):
18973 (WebCore::FrameLoader::setDefersCallbacks):
18974 (WebCore::FrameLoader::setDocumentLoader):
18975 (WebCore::FrameLoader::provisionalLoadStarted):
18976 (WebCore::FrameLoader::clearProvisionalLoad):
18977 (WebCore::FrameLoader::identifierForInitialRequest):
18978 (WebCore::FrameLoader::willSendRequest):
18979 (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
18980 (WebCore::FrameLoader::didCancelAuthenticationChallenge):
18981 (WebCore::FrameLoader::didReceiveResponse):
18982 (WebCore::FrameLoader::didReceiveData):
18983 (WebCore::FrameLoader::didFinishLoad):
18984 (WebCore::FrameLoader::didFailToLoad):
18985 (WebCore::FrameLoader::privateBrowsingEnabled):
18986 (WebCore::FrameLoader::receivedMainResourceError):
18987 (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
18988 (WebCore::FrameLoader::clientRedirected):
18989 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
18990 (WebCore::FrameLoader::closeOldDataSources):
18991 (WebCore::FrameLoader::opened):
18992 (WebCore::FrameLoader::commitProvisionalLoad):
18993 (WebCore::FrameLoader::download):
18994 (WebCore::FrameLoader::finishedLoading):
18995 (WebCore::FrameLoader::notifyIconChanged):
18996 (WebCore::FrameLoader::cancelledError):
18997 (WebCore::FrameLoader::fileDoesNotExistError):
18998 (WebCore::FrameLoader::willUseArchive):
18999 (WebCore::FrameLoader::isArchiveLoadPending):
19000 (WebCore::FrameLoader::handleUnimplementablePolicy):
19001 (WebCore::FrameLoader::cannotShowMIMEType):
19002 (WebCore::FrameLoader::interruptionForPolicyChangeError):
19003 (WebCore::FrameLoader::canShowMIMEType):
19004 (WebCore::FrameLoader::representationExistsForURLScheme):
19005 (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
19006 (WebCore::FrameLoader::checkContentPolicy):
19007 (WebCore::FrameLoader::reloadAllowingStaleData):
19008 (WebCore::FrameLoader::reload):
19009 (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
19010 (WebCore::FrameLoader::finishedLoadingDocument):
19011 (WebCore::FrameLoader::committedLoad):
19012 (WebCore::FrameLoader::revertToProvisional):
19013 (WebCore::FrameLoader::setMainDocumentError):
19014 (WebCore::FrameLoader::mainReceivedCompleteError):
19015 (WebCore::FrameLoader::subframeIsLoading):
19016 (WebCore::FrameLoader::willChangeTitle):
19017 (WebCore::FrameLoader::didChangeTitle):
19018 (WebCore::FrameLoader::checkNewWindowPolicy):
19019 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
19020 (WebCore::FrameLoader::checkNavigationPolicy):
19021 (WebCore::FrameLoader::continueAfterNavigationPolicy):
19022 (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
19023 (WebCore::FrameLoader::didFirstLayout):
19024 (WebCore::FrameLoader::frameLoadCompleted):
19025 (WebCore::FrameLoader::transitionToCommitted):
19026 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
19027 (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
19028 (WebCore::FrameLoader::sendRemainingDelegateMessages):
19029 (WebCore::FrameLoader::requestFromDelegate):
19030 (WebCore::FrameLoader::post):
19031 (WebCore::FrameLoader::detachChildren):
19032 (WebCore::FrameLoader::detachFromParent):
19033 (WebCore::FrameLoader::addExtraFieldsToRequest):
19034 (WebCore::FrameLoader::actionInformation):
19035 (WebCore::FrameLoader::checkLoadComplete):
19036 (WebCore::FrameLoader::setClient):
19037 (WebCore::FrameLoader::client):
19038 (WebCore::FrameLoaderClient::~FrameLoaderClient):
19039 * loader/mac/WebFrameLoaderClient.h:
19040 * loader/mac/WebLoader.mm:
19041 (WebCore::WebResourceLoader::frameLoader):
19042 * loader/mac/WebSubresourceLoader.mm:
19043 (-[WebCoreSubresourceHandle initWithLoader:]):
19045 (WebCore::Frame::loader):
19047 * platform/mac/SliderMac.mm:
19048 (Slider::focusPolicy):
19050 2006-10-24 Darin Adler <darin@apple.com>
19052 Rubber stamped by Anders.
19054 - get rid of the assertion firing while running the layout tests
19056 This does not fix the real problem, which is that we need to map offsets within
19057 possibly-text-transformed text in the render tree to DOM tree offsets and vice
19058 versa -- but it gets the tests running again.
19060 * dom/Position.cpp: (WebCore::Position::upstream): Commented out the assertion.
19062 2006-10-24 Maciej Stachowiak <mjs@apple.com>
19064 Reviewed by Oliver.
19066 - more ResourceLoader cleanup
19067 - moved HTTPHeaderMap out of ResourceRequest class, so ResourceResponse will be able to use it too
19068 - took out attempts to suppress setting of "HEAD" and "GET" methods, since underlying bugs are now fixed
19070 * loader/LoaderFunctions.h:
19071 * loader/mac/LoaderFunctionsMac.mm:
19072 (WebCore::ServeSynchronousRequest):
19073 * loader/mac/WebSubresourceLoader.mm:
19074 (-[WebCoreSubresourceHandle initWithLoader:]):
19075 * platform/network/HTTPHeaderMap.h: Added.
19076 * platform/network/ResourceLoader.cpp:
19077 (WebCore::ResourceLoader::requestHeaders):
19078 * platform/network/ResourceLoader.h:
19079 * platform/network/ResourceRequest.h:
19080 * platform/network/cf/ResourceLoaderCFNet.cpp:
19081 (WebCore::addHeadersFromHashMap):
19082 * xml/xmlhttprequest.cpp:
19083 (WebCore::XMLHttpRequest::send):
19084 * xml/xmlhttprequest.h:
19086 2006-10-24 Justin Garcia <justin.garcia@apple.com>
19090 <http://bugs.webkit.org/show_bug.cgi?id=10993>
19091 GMail Editor: Caret doesn't always position itself after list marker
19093 List creation uses moveParagraphs to push content into list items.
19094 moveParagraphs uses a TextIterator to restore selections after moves.
19095 Some characters emitted by the TextIterator had bad ranges associated
19096 with them. rangeFromLocationAndLength would skip past the range it
19097 should have used when asked for ranges of length 0.
19099 * editing/TextIterator.cpp:
19100 (WebCore::TextIterator::TextIterator): No longer need to initialize a
19101 removed member variable.
19102 (WebCore::TextIterator::advance): An extra newline is emitted when leaving
19103 some blocks. Use the same range for this newline as for the first newline.
19104 We should remove this code and just emit two '\n's.
19105 (WebCore::TextIterator::handleTextNode): Setup m_range.
19106 (WebCore::TextIterator::handleTextBox): Ditto.
19107 (WebCore::TextIterator::handleReplacedElement): Ditto.
19108 (WebCore::TextIterator::handleNonTextNode): Ditto.
19109 (WebCore::TextIterator::exitNode): Use an m_range from the last VisiblePosition
19110 in the block we're leaving to that VP after that one.
19111 (WebCore::TextIterator::emitCharacter): This function now takes in the start
19112 and the end of the range associated with the emited character, and sets up m_range.
19113 (WebCore::TextIterator::range): Return m_range. If it is null (we are atEnd),
19114 return the end of the range used to create the iterator, as a convenience to
19115 callers that use call range() on an iterator that is atEnd.
19116 (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
19117 Same as the changes made to TextIterator's constructor.
19118 (WebCore::SimplifiedBackwardsTextIterator::advance): Use a null m_range instead of
19119 a null m_positionNode to signal that we're finished.
19120 (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Ditto.
19121 (WebCore::SimplifiedBackwardsTextIterator::handleReplacedElement): Similar to changes
19122 made to TextIterator.
19123 (WebCore::SimplifiedBackwardsTextIterator::emitCharacter): Ditto.
19124 (WebCore::SimplifiedBackwardsTextIterator::emitNewline): Simplified.
19125 (WebCore::SimplifiedBackwardsTextIterator::range): Similar to the changes made to
19126 TextIterator::range.
19127 (WebCore::CharacterIterator::range): This function assumed that an iterator's
19128 range() was safe to modify.
19129 (WebCore::TextIterator::rangeFromLocationAndLength):
19130 If the range we're looking for starts in the current chunk, this function assumed
19131 that if the chunk started in a text node, it would end in the same text node. This
19132 is no longer the case.
19133 If the range we're looking for starts in the middle of the current chunk, I assume
19134 that the chunk is inside a text node, because those are the only chunks with length
19135 greater than one at the moment.
19136 If the range we're looking for is a zero length range that starts/ends at the end of the
19137 current chunk, we used to return the start of the next chunk, but that's wrong and
19138 is what caused this bug.
19139 * editing/TextIterator.h:
19140 (WebCore::TextIterator::atEnd): The iterator is atEnd when m_range is null.
19141 (WebCore::SimplifiedBackwardsTextIterator::atEnd):
19142 * editing/visible_units.cpp:
19143 (WebCore::previousBoundary): Cleaned up by using a convenience function.
19144 (WebCore::nextBoundary): Ditto.
19146 2006-10-24 Anders Carlsson <acarlsson@apple.com>
19148 Reviewed by Maciej.
19150 * platform/network/mac/ResourceLoaderMac.mm:
19151 (WebCore::ResourceLoader::start):
19152 Don't retain the header dictionary.
19154 2006-10-24 Geoffrey Garen <ggaren@apple.com>
19156 Reviewed by Anders.
19158 Fixed http://bugs.webkit.org/show_bug.cgi?id=11404
19159 REGRESSION: Reproducible assertion failure in Shared<WebCore::StringImpl>::ref()
19160 running svg/custom/svg/custom/gradient-attr-update.svg
19162 SVGRenderStyle wasn't ref-ing the shared objects it held onto. Oops.
19164 * ksvg2/css/SVGRenderStyle.h:
19165 * ksvg2/css/SVGRenderStyleDefs.h:
19167 2006-10-24 Anders Carlsson <acarlsson@apple.com>
19171 * platform/network/ResourceRequest.h:
19172 (WebCore::ResourceRequest::ResourceRequest):
19173 Set the http method to "GET" in the constructor that takes a String.
19175 2006-10-24 Sam Weinig <sam.weinig@gmail.com>
19179 Move kcanvas/Render* and kcanvas/SVG* to rendering/Render*
19180 and rendering/SVG* respectively. Fix Xcode project and
19181 CMakeLists.txt to account for the moves.
19184 * WebCore.xcodeproj/project.pbxproj:
19185 * kcanvas/RenderForeignObject.cpp: Removed.
19186 * kcanvas/RenderForeignObject.h: Removed.
19187 * kcanvas/RenderPath.cpp: Removed.
19188 * kcanvas/RenderPath.h: Removed.
19189 * kcanvas/RenderSVGContainer.cpp: Removed.
19190 * kcanvas/RenderSVGContainer.h: Removed.
19191 * kcanvas/RenderSVGImage.cpp: Removed.
19192 * kcanvas/RenderSVGImage.h: Removed.
19193 * kcanvas/RenderSVGInline.cpp: Removed.
19194 * kcanvas/RenderSVGInline.h: Removed.
19195 * kcanvas/RenderSVGInlineText.cpp: Removed.
19196 * kcanvas/RenderSVGInlineText.h: Removed.
19197 * kcanvas/RenderSVGTSpan.cpp: Removed.
19198 * kcanvas/RenderSVGTSpan.h: Removed.
19199 * kcanvas/RenderSVGText.cpp: Removed.
19200 * kcanvas/RenderSVGText.h: Removed.
19201 * kcanvas/SVGInlineFlowBox.cpp: Removed.
19202 * kcanvas/SVGInlineFlowBox.h: Removed.
19203 * kcanvas/SVGRootInlineBox.cpp: Removed.
19204 * kcanvas/SVGRootInlineBox.h: Removed.
19206 2006-10-24 Geoffrey Garen <ggaren@apple.com>
19208 Rolling back in, now fixed:
19210 Nixed a few more redundant loading functions in Frame. Did my best to update
19211 the non-Mac builds.
19213 * bridge/mac/FrameMac.h:
19214 * bridge/mac/FrameMac.mm:
19215 (WebCore::FrameMac::urlSelected): Kept always 'true' argument for userGesture
19216 always 'true', because changing it broke the world, and testing seems to
19217 indicate that the one caller that might have passed 'false' didn't need to.
19219 (WebCore::Frame::requestFrame):
19220 (WebCore::Frame::frameLoader):
19221 (WebCore::Frame::redirectionTimerFired):
19223 * platform/gdk/FrameGdk.cpp:
19224 * platform/gdk/FrameGdk.h:
19225 * platform/gdk/TemporaryLinkStubs.cpp:
19226 (FrameGdk::issueCopyCommand):
19227 * platform/qt/FrameQt.cpp:
19228 * platform/qt/FrameQt.h:
19229 * platform/win/TemporaryLinkStubs.cpp:
19230 (WebCore::FrameWin::shouldInterruptJavaScript):
19231 (WebCore::FrameWin::issueCopyCommand):
19233 2006-10-24 Anders Carlsson <acarlsson@apple.com>
19235 Fix the build (Update for changes to ResourceLoader)
19237 * platform/network/cf/ResourceLoaderCFNet.cpp:
19238 (WebCore::addHeadersFromHashMap):
19239 (WebCore::ResourceLoader::start):
19240 (WebCore::ResourceLoader::cancel):
19242 2006-10-24 Sam Weinig <sam.weinig@gmail.com>
19246 Change #includes using <kcanvas/*.h> to use "*.h" instead
19247 to prepare for moving the kcanvas files.
19249 * kcanvas/RenderSVGContainer.h:
19250 * ksvg2/svg/SVGAElement.cpp:
19251 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
19252 * ksvg2/svg/SVGFETileElement.cpp:
19253 * ksvg2/svg/SVGStyledLocatableElement.cpp:
19254 * ksvg2/svg/SVGStyledTransformableElement.cpp:
19256 2006-10-24 Maciej Stachowiak <mjs@apple.com>
19260 - More movement towards the final network API.
19262 Changed ResourceLoader::create to take a ResurceRequest and start
19263 the load. Removed methods relating to setting request
19264 headers. Removed methods relating to metaData. Added some more
19265 convenience methods to ResourceRequest.
19267 * dom/XMLTokenizer.cpp:
19268 (WebCore::openFunc):
19269 * loader/LoaderFunctions.h:
19270 * loader/icon/IconLoader.cpp:
19271 (IconLoader::startLoading):
19272 (IconLoader::didFinishLoading):
19273 * loader/icon/IconLoader.h:
19274 * loader/loader.cpp:
19275 (WebCore::Loader::servePendingRequests):
19276 * loader/mac/LoaderFunctionsMac.mm:
19277 (WebCore::ServeSynchronousRequest):
19278 * platform/gdk/FrameGdk.cpp:
19279 (WebCore::FrameGdkClientDefault::openURL):
19280 (WebCore::FrameGdkClientDefault::submitForm):
19281 * platform/network/ResourceLoader.cpp:
19282 (WebCore::ResourceLoader::ResourceLoader):
19283 (WebCore::ResourceLoader::create):
19284 (WebCore::ResourceLoader::responseHTTPHeadersAsString):
19285 (WebCore::ResourceLoader::url):
19286 (WebCore::ResourceLoader::postData):
19287 (WebCore::ResourceLoader::method):
19288 (WebCore::ResourceLoader::client):
19289 * platform/network/ResourceLoader.h:
19290 * platform/network/ResourceLoaderInternal.h:
19291 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
19292 * platform/network/ResourceRequest.h:
19293 (WebCore::ResourceRequest::ResourceRequest):
19294 (WebCore::ResourceRequest::httpAccept):
19295 (WebCore::ResourceRequest::setHTTPAccept):
19296 (WebCore::ResourceRequest::addHTTPHeaderFields):
19297 * platform/network/mac/ResourceLoaderMac.mm:
19298 (WebCore::ResourceLoader::start):
19299 (WebCore::ResourceLoader::receivedResponse):
19300 * platform/qt/FrameQtClient.cpp:
19301 (WebCore::FrameQtClientDefault::openURL):
19302 (WebCore::FrameQtClientDefault::submitForm):
19303 * platform/win/TemporaryLinkStubs.cpp:
19304 (WebCore::ResourceLoader::retrieveResponseEncoding):
19305 * xml/XSLTProcessor.cpp:
19306 (WebCore::docLoaderFunc):
19307 * xml/xmlhttprequest.cpp:
19308 (WebCore::XMLHttpRequest::send):
19309 (WebCore::XMLHttpRequest::didFinishLoading):
19310 (WebCore::XMLHttpRequest::didReceiveData):
19311 * xml/xmlhttprequest.h:
19313 2006-10-24 Anders Carlsson <acarlsson@apple.com>
19317 * loader/FormData.cpp:
19318 (WebCore::FormData::FormData):
19319 * loader/FormData.h:
19320 (WebCore::FormData::FormData):
19321 Add new constructor that takes a void* and a size.
19323 2006-10-24 Geoffrey Garen <ggaren@apple.com>
19325 Rolling out my last change because it broke the world.
19327 * bridge/mac/FrameMac.h:
19328 * bridge/mac/FrameMac.mm:
19329 (WebCore::FrameMac::openURL):
19330 (WebCore::FrameMac::openURLRequest):
19331 (WebCore::FrameMac::urlSelected):
19333 (WebCore::Frame::openURL):
19334 (WebCore::Frame::frameLoader):
19335 (WebCore::Frame::requestFrame):
19336 (WebCore::Frame::redirectionTimerFired):
19338 * platform/gdk/FrameGdk.cpp:
19339 (WebCore::FrameGdk::openURL):
19340 * platform/gdk/FrameGdk.h:
19341 * platform/gdk/TemporaryLinkStubs.cpp:
19342 * platform/qt/FrameQt.cpp:
19343 (WebCore::FrameQt::openURL):
19344 (WebCore::FrameQt::openURLRequest):
19345 * platform/qt/FrameQt.h:
19346 * platform/win/TemporaryLinkStubs.cpp:
19347 (WebCore::FrameWin::openURL):
19348 (WebCore::FrameWin::openURLRequest):
19350 2006-10-24 Nikolas Zimmermann <zimmermann@kde.org>
19354 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11396
19356 Kill KRenderingFillPainter/KRenderingStrokePainter. Those are not needed
19357 anymore, since kcanvas/ksvg2 are tightly integrated. No LayoutTests fixed
19361 * WebCore.xcodeproj/project.pbxproj:
19362 * kcanvas/KCanvasTreeDebug.cpp:
19363 (WebCore::operator<<):
19364 (WebCore::writeStyle):
19365 * kcanvas/RenderPath.cpp:
19366 (WebCore::RenderPath::fillContains):
19367 * kcanvas/device/KRenderingFillPainter.cpp:
19368 * kcanvas/device/KRenderingFillPainter.h:
19369 * kcanvas/device/KRenderingStrokePainter.cpp:
19370 * kcanvas/device/KRenderingStrokePainter.h:
19371 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
19372 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
19373 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
19374 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
19375 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
19376 (WebCore::KRenderingPaintServerQt::setPenProperties):
19377 * kcanvas/device/qt/KRenderingPaintServerQt.h:
19378 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
19379 (WebCore::KRenderingPaintServerSolidQt::setup):
19380 * kcanvas/device/qt/RenderPathQt.cpp:
19381 (WebCore::getPathStroke):
19382 (WebCore::RenderPath::strokeBBox):
19383 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
19384 (WebCore::RenderPath::strokeBBox):
19385 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
19386 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
19387 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
19388 (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
19389 (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
19390 * kcanvas/device/quartz/QuartzSupport.h:
19391 (WebCore::CGLineCapFromKC):
19392 (WebCore::CGLineJoinFromKC):
19393 * kcanvas/device/quartz/QuartzSupport.mm:
19394 (WebCore::applyStrokeStyleToContext):
19395 (WebCore::strokeBoundingBox):
19396 * ksvg2/css/SVGCSSStyleSelector.cpp:
19397 (WebCore::CSSStyleSelector::applySVGProperty):
19398 * ksvg2/css/SVGRenderStyle.h:
19399 (WebCore::SVGRenderStyle::InheritedFlags::):
19400 * ksvg2/css/SVGRenderStyleDefs.h:
19401 * ksvg2/misc/KCanvasRenderingStyle.cpp:
19402 (WebCore::KSVGPainterFactory::dashArrayFromRenderingStyle):
19403 * ksvg2/misc/KCanvasRenderingStyle.h:
19404 * ksvg2/svg/SVGFEImageElement.cpp:
19406 2006-10-24 Geoffrey Garen <ggaren@apple.com>
19408 Reviewed by Anders.
19410 Nixed a few more redundant loading functions in Frame. Did my best to update
19411 the non-Mac builds.
19413 * bridge/mac/FrameMac.h:
19414 * bridge/mac/FrameMac.mm:
19415 (WebCore::FrameMac::urlSelected): Changed always 'true' argument for userGesture
19416 to actually check for a user gesture. New callers rely on this behavior,
19417 and it seems like the previous behavior must have been a bug.
19419 (WebCore::Frame::requestFrame):
19420 (WebCore::Frame::frameLoader):
19421 (WebCore::Frame::redirectionTimerFired):
19423 * platform/gdk/FrameGdk.cpp:
19424 * platform/gdk/FrameGdk.h:
19425 * platform/gdk/TemporaryLinkStubs.cpp:
19426 (FrameGdk::issueCopyCommand):
19427 * platform/qt/FrameQt.cpp:
19428 * platform/qt/FrameQt.h:
19429 * platform/win/TemporaryLinkStubs.cpp:
19430 (WebCore::FrameWin::shouldInterruptJavaScript):
19431 (WebCore::FrameWin::issueCopyCommand):
19433 2006-10-24 Nikolas Zimmermann <zimmermann@kde.org>
19435 Reviewed by Maciej.
19437 Fix Qt/Linux build.
19439 - Remove BrowserExtensionQt, move it's methods to Page/FrameQt.
19440 - Fix CMakeLists.txt to include platform/network.
19443 * platform/qt/BrowserExtensionQt.cpp: Removed.
19444 * platform/qt/BrowserExtensionQt.h: Removed.
19445 * platform/qt/FrameQt.cpp:
19446 (WebCore::FrameQt::FrameQt):
19447 (WebCore::FrameQt::createNewWindow):
19448 (WebCore::FrameQt::goBackOrForward):
19449 (WebCore::FrameQt::historyURL):
19450 (WebCore::FrameQt::getHistoryLength):
19451 * platform/qt/FrameQt.h:
19452 * platform/qt/PageQt.cpp:
19453 (WebCore::Page::canRunModal):
19454 (WebCore::Page::canRunModalNow):
19455 (WebCore::Page::runModal):
19457 2006-10-24 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
19461 Fix for http://bugs.webkit.org/show_bug.cgi?id=11314
19462 Fix build when XSLT_SUPPORT is not defined
19464 Fix unconditional use of XSLT support.
19466 * dom/XMLTokenizer.cpp:
19467 (WebCore::XMLTokenizer::end):
19469 2006-10-24 Simon Hausmann <hausmann@kde.org>
19473 * CMakeLists.txt: Added project name to kde4_automoc macro, as
19474 required by the latest KDE4 cmake module.
19476 2006-10-24 Mitz Pettel <mitz@webkit.org>
19480 - fix http://bugs.webkit.org/show_bug.cgi?id=11394
19481 HTMLViewSourceDocuments are leaking
19483 * html/HTMLViewSourceDocument.h: Changed RefPtr to plain pointer to avoid
19486 2006-10-23 Geoffrey Garen <ggaren@apple.com>
19490 Removed one of Frame's redundant urlSelected methods.
19492 * bridge/mac/FrameMac.h:
19493 * bridge/mac/FrameMac.mm:
19494 (WebCore::FrameMac::urlSelected):
19496 * html/HTMLAnchorElement.cpp:
19497 (WebCore::HTMLAnchorElement::defaultEventHandler): Changed DeprecatedString
19498 to String because the former is deprecated and its performance is irrelevant
19499 here. Added call to completeURL because Frame no longer does it for us.
19500 Having the call here also improves clarity about the element's behavior.
19501 * ksvg2/svg/SVGAElement.cpp:
19502 (WebCore::SVGAElement::defaultEventHandler): ditto. Also removed bizarre
19503 irrelevent NULL checks on ownerDocument() because I couldn't help myself.
19505 (WebCore::Frame::changeLocation):
19506 (WebCore::Frame::urlSelected):
19508 * platform/network/ResourceRequest.h: Removed explicit keyword on constructor
19509 because we want to be able to use these constructors instead of helper functions
19510 mimicking their behavior sprinkled across different classes.
19511 (WebCore::ResourceRequest::ResourceRequest):
19513 2006-10-24 Brady Eidson <beidson@apple.com>
19517 Moved FrameLoader from WebCoreFrameBridge to Frame. Frame.h/cpp have generic accessors to the FrameLoader itself
19518 and creation/deletion is currently managed in FrameMac.mm
19520 Besides explicitly commented-upon methods, most of the touched code simply changes to get the FrameLoader from the
19521 frame instead of the bridge.
19523 The method [WebCoreFrameBridge frameLoader] remains but only for WebKit's use - No new WebCore code should make
19524 use of it as its days are numbered!
19526 * bridge/mac/FrameMac.mm:
19527 (WebCore::FrameMac::FrameMac): Create the FrameLoader
19528 (WebCore::FrameMac::~FrameMac): Nuke it
19529 (WebCore::FrameMac::loadRequest):
19531 * bridge/mac/WebCoreFrameBridge.h: No longer holds an m_frameLoader
19532 * bridge/mac/WebCoreFrameBridge.mm:
19533 (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]): No longer creates the FrameLoader
19534 (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]): Ditto
19535 (-[WebCoreFrameBridge clearFrame]): No longer tears down the FrameLoader
19536 (-[WebCoreFrameBridge setFrameLoaderClient:]):
19537 (-[WebCoreFrameBridge frameLoader]):
19538 (-[WebCoreFrameBridge setTitle:]):
19539 (-[WebCoreFrameBridge didFirstLayout]):
19540 (-[WebCoreFrameBridge notifyIconChanged:]):
19541 (-[WebCoreFrameBridge originalRequestURL]):
19542 (-[WebCoreFrameBridge isLoadTypeReload]):
19543 (-[WebCoreFrameBridge frameDetached]):
19544 (-[WebCoreFrameBridge tokenizerProcessedData]):
19545 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
19546 (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
19547 (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
19548 (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
19549 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
19550 (-[WebCoreFrameBridge incomingReferrer]):
19551 (-[WebCoreFrameBridge isReloading]):
19552 (-[WebCoreFrameBridge handledOnloadEvents]):
19553 (-[WebCoreFrameBridge mainResourceURLResponse]):
19554 (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
19556 * loader/mac/WebDocumentLoader.mm:
19557 (WebCore::DocumentLoader::frameLoader):
19559 * loader/mac/WebFrameLoader.mm:
19560 (WebCore::FrameLoader::load):
19561 (WebCore::FrameLoader::stopLoadingSubframes):
19562 (WebCore::FrameLoader::defersCallbacksChanged):
19563 (WebCore::FrameLoader::setState):
19564 (WebCore::FrameLoader::closeOldDataSources):
19565 (WebCore::FrameLoader::subframeIsLoading):
19566 (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
19567 (WebCore::FrameLoader::post):
19568 (WebCore::FrameLoader::detachChildren):
19569 (WebCore::FrameLoader::checkLoadComplete):
19571 * loader/mac/WebLoader.mm:
19572 (WebCore::WebResourceLoader::frameLoader):
19574 * loader/mac/WebSubresourceLoader.mm:
19575 (-[WebCoreSubresourceHandle initWithLoader:]):
19578 (WebCore::Frame::frameLoader):
19580 * page/FramePrivate.h:
19581 (WebCore::FramePrivate::FramePrivate):
19583 2006-10-24 Darin Adler <darin@apple.com>
19585 Reviewed by Maciej.
19587 - fixed two crashes in layout tests I just introduced
19589 * loader/mac/WebFrameLoader.mm:
19590 (WebCore::FrameLoader::load): Add null check.
19591 (WebCore::FrameLoader::setState): Ditto.
19593 2006-10-23 Darin Adler <darin@apple.com>
19597 - converted WebDocumentLoader to C++
19600 * bridge/mac/WebCoreFrameBridge.mm:
19601 (-[WebCoreFrameBridge setTitle:]):
19602 (-[WebCoreFrameBridge originalRequestURL]):
19603 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
19604 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
19605 (-[WebCoreFrameBridge incomingReferrer]):
19606 (-[WebCoreFrameBridge isReloading]):
19607 (-[WebCoreFrameBridge mainResourceURLResponse]):
19608 * loader/mac/WebDocumentLoader.h:
19609 * loader/mac/WebDocumentLoader.mm:
19610 (WebCore::DocumentLoader::DocumentLoader):
19611 (WebCore::DocumentLoader::frameLoader):
19612 (WebCore::DocumentLoader::~DocumentLoader):
19613 (WebCore::DocumentLoader::setMainResourceData):
19614 (WebCore::DocumentLoader::mainResourceData):
19615 (WebCore::DocumentLoader::originalRequest):
19616 (WebCore::DocumentLoader::originalRequestCopy):
19617 (WebCore::DocumentLoader::request):
19618 (WebCore::DocumentLoader::initialRequest):
19619 (WebCore::DocumentLoader::actualRequest):
19620 (WebCore::DocumentLoader::URL):
19621 (WebCore::DocumentLoader::unreachableURL):
19622 (WebCore::DocumentLoader::replaceRequestURLForAnchorScroll):
19623 (WebCore::DocumentLoader::setRequest):
19624 (WebCore::DocumentLoader::setResponse):
19625 (WebCore::DocumentLoader::isStopping):
19626 (WebCore::DocumentLoader::bridge):
19627 (WebCore::DocumentLoader::setMainDocumentError):
19628 (WebCore::DocumentLoader::mainDocumentError):
19629 (WebCore::DocumentLoader::clearErrors):
19630 (WebCore::DocumentLoader::mainReceivedError):
19631 (WebCore::DocumentLoader::stopLoading):
19632 (WebCore::DocumentLoader::setupForReplace):
19633 (WebCore::DocumentLoader::commitIfReady):
19634 (WebCore::DocumentLoader::finishedLoading):
19635 (WebCore::DocumentLoader::setCommitted):
19636 (WebCore::DocumentLoader::isCommitted):
19637 (WebCore::DocumentLoader::setLoading):
19638 (WebCore::DocumentLoader::isLoading):
19639 (WebCore::DocumentLoader::commitLoad):
19640 (WebCore::DocumentLoader::doesProgressiveLoad):
19641 (WebCore::DocumentLoader::receivedData):
19642 (WebCore::DocumentLoader::setupForReplaceByMIMEType):
19643 (WebCore::DocumentLoader::updateLoading):
19644 (WebCore::DocumentLoader::response):
19645 (WebCore::DocumentLoader::setFrame):
19646 (WebCore::DocumentLoader::attachToFrame):
19647 (WebCore::DocumentLoader::detachFromFrame):
19648 (WebCore::DocumentLoader::prepareForLoadStart):
19649 (WebCore::DocumentLoader::loadingStartedTime):
19650 (WebCore::DocumentLoader::setIsClientRedirect):
19651 (WebCore::DocumentLoader::isClientRedirect):
19652 (WebCore::DocumentLoader::setPrimaryLoadComplete):
19653 (WebCore::DocumentLoader::isLoadingInAPISense):
19654 (WebCore::DocumentLoader::addResponse):
19655 (WebCore::DocumentLoader::stopRecordingResponses):
19656 (WebCore::DocumentLoader::title):
19657 (WebCore::DocumentLoader::setLastCheckedRequest):
19658 (WebCore::DocumentLoader::lastCheckedRequest):
19659 (WebCore::DocumentLoader::triggeringAction):
19660 (WebCore::DocumentLoader::setTriggeringAction):
19661 (WebCore::DocumentLoader::responses):
19662 (WebCore::DocumentLoader::setOverrideEncoding):
19663 (WebCore::DocumentLoader::overrideEncoding):
19664 (WebCore::DocumentLoader::setTitle):
19665 (WebCore::DocumentLoader::URLForHistory):
19666 * loader/mac/WebFrameLoader.h:
19667 * loader/mac/WebFrameLoader.mm:
19668 (WebCore::FrameLoader::setupForReplaceByMIMEType):
19669 (WebCore::FrameLoader::finalSetupForReplace):
19670 (WebCore::FrameLoader::safeLoad):
19671 (WebCore::FrameLoader::load):
19672 (WebCore::FrameLoader::startLoading):
19673 (WebCore::FrameLoader::stopLoading):
19674 (WebCore::FrameLoader::activeDocumentLoader):
19675 (WebCore::FrameLoader::addPlugInStreamLoader):
19676 (WebCore::FrameLoader::removePlugInStreamLoader):
19677 (WebCore::FrameLoader::addSubresourceLoader):
19678 (WebCore::FrameLoader::removeSubresourceLoader):
19679 (WebCore::FrameLoader::setDocumentLoader):
19680 (WebCore::FrameLoader::documentLoader):
19681 (WebCore::FrameLoader::setPolicyDocumentLoader):
19682 (WebCore::FrameLoader::provisionalDocumentLoader):
19683 (WebCore::FrameLoader::setProvisionalDocumentLoader):
19684 (WebCore::FrameLoader::setState):
19685 (WebCore::FrameLoader::clearProvisionalLoad):
19686 (WebCore::FrameLoader::commitProvisionalLoad):
19687 (WebCore::FrameLoader::didReceiveResponse):
19688 (WebCore::FrameLoader::originalRequest):
19689 (WebCore::FrameLoader::receivedMainResourceError):
19690 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
19691 (WebCore::FrameLoader::opened):
19692 (WebCore::FrameLoader::initialRequest):
19693 (WebCore::FrameLoader::receivedData):
19694 (WebCore::FrameLoader::setRequest):
19695 (WebCore::FrameLoader::isStopping):
19696 (WebCore::FrameLoader::setResponse):
19697 (WebCore::FrameLoader::mainReceivedError):
19698 (WebCore::FrameLoader::finishedLoading):
19699 (WebCore::FrameLoader::notifyIconChanged):
19700 (WebCore::FrameLoader::URL):
19701 (WebCore::FrameLoader::checkContentPolicy):
19702 (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
19703 (WebCore::FrameLoader::reloadAllowingStaleData):
19704 (WebCore::FrameLoader::reload):
19705 (WebCore::FrameLoader::finishedLoadingDocument):
19706 (WebCore::FrameLoader::committedLoad):
19707 (WebCore::FrameLoader::revertToProvisional):
19708 (WebCore::FrameLoader::setMainDocumentError):
19709 (WebCore::FrameLoader::mainReceivedCompleteError):
19710 (WebCore::FrameLoader::subframeIsLoading):
19711 (WebCore::FrameLoader::willChangeTitle):
19712 (WebCore::FrameLoader::didChangeTitle):
19713 (WebCore::FrameLoader::checkNavigationPolicy):
19714 (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
19715 (WebCore::FrameLoader::transitionToCommitted):
19716 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
19717 (WebCore::FrameLoader::detachFromParent):
19718 * loader/mac/WebFrameLoaderClient.h:
19720 2006-10-23 Brady Eidson <beidson@apple.com>
19722 Lovingly reviewed by Maciej
19724 Moved loadURL and postURL logic out of WebCoreFrameBridge to FrameMac::loadRequest
19725 This is a big step towards moving FrameLoader out of the Bridge into Frame/Mac itself
19727 * bridge/mac/BrowserExtensionMac.mm:
19728 (WebCore::BrowserExtensionMac::createNewWindow): Use FrameMac::loadRequest
19730 * bridge/mac/FrameMac.mm:
19731 (WebCore::FrameMac::loadRequest): loadURL and postURL logic moved from WebCoreFrameBridge to here
19733 * bridge/mac/WebCoreFrameBridge.h: Nuked loadURL and postURL
19734 * bridge/mac/WebCoreFrameBridge.mm: Ditto
19735 * loader/mac/WebFrameLoader.mm:
19736 (-[WebFrameLoader safeLoadURL:]): Use FrameMac::loadRequest
19738 2006-10-23 Geoffrey Garen <ggaren@apple.com>
19742 Inside Frame, moved the plethora of load() and stopLoading() functions next
19743 to each other to facilitate merging and crying.
19745 * bridge/mac/FrameMac.h:
19746 * bridge/mac/FrameMac.mm:
19747 (WebCore::FrameMac::loadRequest):
19748 (WebCore::FrameMac::submitForm):
19749 (WebCore::FrameMac::openURL):
19750 (WebCore::FrameMac::openURLRequest):
19751 (WebCore::FrameMac::urlSelected):
19752 (WebCore::FrameMac::openURLFromPageCache):
19753 (WebCore::FrameMac::createFrame):
19755 (WebCore::Frame::openURL):
19756 (WebCore::Frame::changeLocation):
19757 (WebCore::Frame::urlSelected):
19758 (WebCore::Frame::requestFrame):
19759 (WebCore::Frame::loadSubframe):
19760 (WebCore::Frame::submitFormAgain):
19761 (WebCore::Frame::submitForm):
19762 (WebCore::Frame::stop):
19763 (WebCore::Frame::closeURL):
19764 (WebCore::Frame::cancelRedirection):
19765 (WebCore::Frame::iconURL):
19766 (WebCore::Frame::didOpenURL):
19767 (WebCore::Frame::didExplicitOpen):
19770 2006-10-23 Geoffrey Garen <ggaren@apple.com>
19774 Moved our plethora of load() and stopLoading() functions next to each other
19775 to facilitate merging and laughter.
19777 * loader/mac/WebFrameLoader.h:
19778 * loader/mac/WebFrameLoader.mm:
19779 (WebCore::cancelAll):
19780 (WebCore::FrameLoader::prepareForLoadStart):
19781 (WebCore::FrameLoader::setupForReplace):
19782 (WebCore::FrameLoader::setupForReplaceByMIMEType):
19783 (WebCore::FrameLoader::finalSetupForReplace):
19784 (WebCore::FrameLoader::safeLoad):
19785 (WebCore::FrameLoader::load):
19786 (WebCore::FrameLoader::startLoadingMainResource):
19787 (WebCore::FrameLoader::startLoading):
19788 (WebCore::FrameLoader::stopLoadingPlugIns):
19789 (WebCore::FrameLoader::stopLoadingSubresources):
19790 (WebCore::FrameLoader::stopLoading):
19791 (WebCore::FrameLoader::stopLoadingSubframes):
19792 (WebCore::FrameLoader::cancelMainResourceLoad):
19793 (WebCore::FrameLoader::cancelPendingArchiveLoad):
19794 (WebCore::FrameLoader::removeSubresourceLoader):
19795 (WebCore::FrameLoader::mainResourceData):
19796 (WebCore::FrameLoader::releaseMainResourceLoader):
19798 2006-10-23 Darin Adler <darin@apple.com>
19800 Reviewed by Maciej.
19802 - converted WebFrameLoader to C++
19804 * WebCore.exp: Added many new entry points for WebKit.
19805 * WebCore.xcodeproj/project.pbxproj: Made more files private (SPI).
19807 * bridge/mac/WebCoreFrameBridge.h:
19808 * bridge/mac/WebCoreFrameBridge.mm:
19809 (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]):
19810 (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]):
19811 (-[WebCoreFrameBridge dealloc]):
19812 (-[WebCoreFrameBridge close]):
19813 (-[WebCoreFrameBridge clearFrame]):
19814 (-[WebCoreFrameBridge setFrameLoaderClient:]):
19815 (-[WebCoreFrameBridge frameLoader]):
19816 (-[WebCoreFrameBridge setTitle:]):
19817 (-[WebCoreFrameBridge didFirstLayout]):
19818 (-[WebCoreFrameBridge notifyIconChanged:]):
19819 (-[WebCoreFrameBridge originalRequestURL]):
19820 (-[WebCoreFrameBridge isLoadTypeReload]):
19821 (-[WebCoreFrameBridge frameDetached]):
19822 (-[WebCoreFrameBridge tokenizerProcessedData]):
19823 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
19824 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
19825 (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
19826 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
19827 (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
19828 (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
19829 (-[WebCoreFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
19830 (-[WebCoreFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
19831 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
19832 (-[WebCoreFrameBridge incomingReferrer]):
19833 (-[WebCoreFrameBridge isReloading]):
19834 (-[WebCoreFrameBridge handledOnloadEvents]):
19835 (-[WebCoreFrameBridge mainResourceURLResponse]):
19836 (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
19837 * loader/mac/WebDocumentLoader.h:
19838 * loader/mac/WebDocumentLoader.mm:
19839 (-[WebDocumentLoader frameLoader]):
19840 (-[WebDocumentLoader dealloc]):
19841 (-[WebDocumentLoader mainResourceData]):
19842 (-[WebDocumentLoader setRequest:]):
19843 (-[WebDocumentLoader bridge]):
19844 (-[WebDocumentLoader setMainDocumentError:]):
19845 (-[WebDocumentLoader mainReceivedError:complete:]):
19846 (-[WebDocumentLoader stopLoading]):
19847 (-[WebDocumentLoader setupForReplace]):
19848 (-[WebDocumentLoader commitIfReady]):
19849 (-[WebDocumentLoader finishedLoading]):
19850 (-[WebDocumentLoader commitLoadWithData:]):
19851 (-[WebDocumentLoader doesProgressiveLoadWithMIMEType:]):
19852 (-[WebDocumentLoader setupForReplaceByMIMEType:]):
19853 (-[WebDocumentLoader updateLoading]):
19854 (-[WebDocumentLoader setFrame:]):
19855 (-[WebDocumentLoader attachToFrame]):
19856 (-[WebDocumentLoader detachFromFrame]):
19857 (-[WebDocumentLoader prepareForLoadStart]):
19858 (-[WebDocumentLoader setPrimaryLoadComplete:]):
19859 (-[WebDocumentLoader isLoadingInAPISense]):
19860 (-[WebDocumentLoader setTitle:]):
19861 * loader/mac/WebFrameLoader.h:
19862 (WebCore::FrameLoader::frame):
19863 * loader/mac/WebFrameLoader.mm:
19864 (WebCore::FrameLoader::FrameLoader):
19865 (WebCore::FrameLoader::~FrameLoader):
19866 (WebCore::FrameLoader::activeDocumentLoader):
19867 (WebCore::FrameLoader::addPlugInStreamLoader):
19868 (WebCore::FrameLoader::removePlugInStreamLoader):
19869 (WebCore::FrameLoader::defersCallbacksChanged):
19870 (WebCore::FrameLoader::defersCallbacks):
19871 (WebCore::setAllDefersCallbacks):
19872 (WebCore::FrameLoader::setDefersCallbacks):
19873 (WebCore::cancelAll):
19874 (WebCore::FrameLoader::stopLoadingPlugIns):
19875 (WebCore::FrameLoader::isLoadingMainResource):
19876 (WebCore::FrameLoader::isLoadingSubresources):
19877 (WebCore::FrameLoader::isLoadingPlugIns):
19878 (WebCore::FrameLoader::isLoading):
19879 (WebCore::FrameLoader::stopLoadingSubresources):
19880 (WebCore::FrameLoader::addSubresourceLoader):
19881 (WebCore::FrameLoader::removeSubresourceLoader):
19882 (WebCore::FrameLoader::mainResourceData):
19883 (WebCore::FrameLoader::releaseMainResourceLoader):
19884 (WebCore::FrameLoader::cancelMainResourceLoad):
19885 (WebCore::FrameLoader::startLoadingMainResource):
19886 (WebCore::FrameLoader::stopLoading):
19887 (WebCore::FrameLoader::setDocumentLoader):
19888 (WebCore::FrameLoader::documentLoader):
19889 (WebCore::FrameLoader::setPolicyDocumentLoader):
19890 (WebCore::FrameLoader::provisionalDocumentLoader):
19891 (WebCore::FrameLoader::setProvisionalDocumentLoader):
19892 (WebCore::FrameLoader::state):
19893 (WebCore::FrameLoader::timeOfLastCompletedLoad):
19894 (WebCore::FrameLoader::provisionalLoadStarted):
19895 (WebCore::FrameLoader::setState):
19896 (WebCore::FrameLoader::clearProvisionalLoad):
19897 (WebCore::FrameLoader::markLoadComplete):
19898 (WebCore::FrameLoader::commitProvisionalLoad):
19899 (WebCore::FrameLoader::stopLoadingSubframes):
19900 (WebCore::FrameLoader::startLoading):
19901 (WebCore::FrameLoader::setupForReplace):
19902 (WebCore::FrameLoader::identifierForInitialRequest):
19903 (WebCore::FrameLoader::willSendRequest):
19904 (WebCore::FrameLoader::didReceiveAuthenticationChallenge):
19905 (WebCore::FrameLoader::didCancelAuthenticationChallenge):
19906 (WebCore::FrameLoader::didReceiveResponse):
19907 (WebCore::FrameLoader::didReceiveData):
19908 (WebCore::FrameLoader::didFinishLoad):
19909 (WebCore::FrameLoader::didFailToLoad):
19910 (WebCore::FrameLoader::privateBrowsingEnabled):
19911 (WebCore::FrameLoader::originalRequest):
19912 (WebCore::FrameLoader::receivedMainResourceError):
19913 (WebCore::FrameLoader::clientRedirectCancelledOrFinished):
19914 (WebCore::FrameLoader::clientRedirected):
19915 (WebCore::FrameLoader::shouldReload):
19916 (WebCore::FrameLoader::load):
19917 (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy):
19918 (WebCore::FrameLoader::closeOldDataSources):
19919 (WebCore::FrameLoader::opened):
19920 (WebCore::FrameLoader::initialRequest):
19921 (WebCore::FrameLoader::receivedData):
19922 (WebCore::FrameLoader::setRequest):
19923 (WebCore::FrameLoader::download):
19924 (WebCore::FrameLoader::bridge):
19925 (WebCore::FrameLoader::handleFallbackContent):
19926 (WebCore::FrameLoader::isStopping):
19927 (WebCore::FrameLoader::setupForReplaceByMIMEType):
19928 (WebCore::FrameLoader::setResponse):
19929 (WebCore::FrameLoader::mainReceivedError):
19930 (WebCore::FrameLoader::finishedLoading):
19931 (WebCore::FrameLoader::notifyIconChanged):
19932 (WebCore::FrameLoader::URL):
19933 (WebCore::FrameLoader::cancelledError):
19934 (WebCore::FrameLoader::fileDoesNotExistError):
19935 (WebCore::FrameLoader::willUseArchive):
19936 (WebCore::FrameLoader::isArchiveLoadPending):
19937 (WebCore::FrameLoader::cancelPendingArchiveLoad):
19938 (WebCore::FrameLoader::handleUnimplementablePolicy):
19939 (WebCore::FrameLoader::cannotShowMIMEType):
19940 (WebCore::FrameLoader::interruptionForPolicyChangeError):
19941 (WebCore::FrameLoader::isHostedByObjectElement):
19942 (WebCore::FrameLoader::isLoadingMainFrame):
19943 (WebCore::FrameLoader::canShowMIMEType):
19944 (WebCore::FrameLoader::representationExistsForURLScheme):
19945 (WebCore::FrameLoader::generatedMIMETypeForURLScheme):
19946 (WebCore::FrameLoader::checkNavigationPolicy):
19947 (WebCore::FrameLoader::checkContentPolicy):
19948 (WebCore::FrameLoader::cancelContentPolicyCheck):
19949 (WebCore::FrameLoader::shouldReloadToHandleUnreachableURL):
19950 (WebCore::FrameLoader::reloadAllowingStaleData):
19951 (WebCore::FrameLoader::reload):
19952 (WebCore::FrameLoader::didReceiveServerRedirectForProvisionalLoadForFrame):
19953 (WebCore::FrameLoader::finishedLoadingDocument):
19954 (WebCore::FrameLoader::committedLoad):
19955 (WebCore::FrameLoader::isReplacing):
19956 (WebCore::FrameLoader::setReplacing):
19957 (WebCore::FrameLoader::revertToProvisional):
19958 (WebCore::FrameLoader::setMainDocumentError):
19959 (WebCore::FrameLoader::mainReceivedCompleteError):
19960 (WebCore::FrameLoader::finalSetupForReplace):
19961 (WebCore::FrameLoader::prepareForLoadStart):
19962 (WebCore::FrameLoader::subframeIsLoading):
19963 (WebCore::FrameLoader::willChangeTitle):
19964 (WebCore::FrameLoader::didChangeTitle):
19965 (WebCore::FrameLoader::loadType):
19966 (WebCore::FrameLoader::invalidatePendingPolicyDecision):
19967 (WebCore::FrameLoader::checkNewWindowPolicy):
19968 (WebCore::FrameLoader::continueAfterNewWindowPolicy):
19969 (WebCore::FrameLoader::continueAfterNavigationPolicy):
19970 (WebCore::FrameLoader::continueAfterWillSubmitForm):
19971 (WebCore::FrameLoader::continueLoadRequestAfterNavigationPolicy):
19972 (WebCore::FrameLoader::didFirstLayout):
19973 (WebCore::FrameLoader::frameLoadCompleted):
19974 (WebCore::FrameLoader::firstLayoutDone):
19975 (WebCore::FrameLoader::isQuickRedirectComing):
19976 (WebCore::FrameLoader::transitionToCommitted):
19977 (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
19978 (WebCore::FrameLoader::continueLoadRequestAfterNewWindowPolicy):
19979 (WebCore::FrameLoader::sendRemainingDelegateMessages):
19980 (WebCore::FrameLoader::requestFromDelegate):
19981 (WebCore::FrameLoader::post):
19982 (WebCore::FrameLoader::detachChildren):
19983 (WebCore::FrameLoader::detachFromParent):
19984 (WebCore::FrameLoader::addExtraFieldsToRequest):
19985 (WebCore::FrameLoader::safeLoad):
19986 (WebCore::FrameLoader::actionInformation):
19987 (WebCore::FrameLoader::checkLoadComplete):
19988 (WebCore::FrameLoader::setFrameLoaderClient):
19989 (WebCore::FrameLoader::client):
19990 (WebCore::FrameLoader::asDelegate):
19991 (-[WebCoreFrameLoaderAsDelegate initWithLoader:]):
19992 (-[WebCoreFrameLoaderAsDelegate detachFromLoader]):
19993 (-[WebCoreFrameLoaderAsDelegate continueFragmentScrollAfterNavigationPolicy:formState:]):
19994 (-[WebCoreFrameLoaderAsDelegate continueAfterNewWindowPolicy:]):
19995 (-[WebCoreFrameLoaderAsDelegate continueAfterNavigationPolicy:]):
19996 (-[WebCoreFrameLoaderAsDelegate continueAfterWillSubmitForm:]):
19997 (-[WebCoreFrameLoaderAsDelegate continueLoadRequestAfterNavigationPolicy:formState:]):
19998 (-[WebCoreFrameLoaderAsDelegate continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
19999 * loader/mac/WebLoader.h:
20000 (WebCore::WebResourceLoader::identifier):
20001 (WebCore::WebResourceLoader::reachedTerminalState):
20002 (WebCore::WebResourceLoader::cancelled):
20003 * loader/mac/WebLoader.mm:
20004 (WebCore::WebResourceLoader::WebResourceLoader):
20005 (WebCore::WebResourceLoader::releaseResources):
20006 (WebCore::WebResourceLoader::load):
20007 (WebCore::WebResourceLoader::frameLoader):
20008 (WebCore::WebResourceLoader::willSendRequest):
20009 (WebCore::WebResourceLoader::didReceiveAuthenticationChallenge):
20010 (WebCore::WebResourceLoader::didCancelAuthenticationChallenge):
20011 (WebCore::WebResourceLoader::didReceiveResponse):
20012 (WebCore::WebResourceLoader::didReceiveData):
20013 (WebCore::WebResourceLoader::didFinishLoading):
20014 (WebCore::WebResourceLoader::didFinishLoadingOnePart):
20015 (WebCore::WebResourceLoader::didFail):
20016 (WebCore::WebResourceLoader::willCacheResponse):
20017 (WebCore::WebResourceLoader::didCancel):
20018 (WebCore::WebResourceLoader::cancel):
20019 (WebCore::WebResourceLoader::cancelledError):
20020 (WebCore::WebResourceLoader::delegate):
20021 * loader/mac/WebMainResourceLoader.h:
20022 * loader/mac/WebMainResourceLoader.mm:
20023 (WebCore::MainResourceLoader::MainResourceLoader):
20024 (WebCore::MainResourceLoader::create):
20025 (WebCore::MainResourceLoader::receivedError):
20026 (WebCore::MainResourceLoader::didCancel):
20027 (WebCore::MainResourceLoader::interruptionForPolicyChangeError):
20028 (WebCore::MainResourceLoader::isPostOrRedirectAfterPost):
20029 (WebCore::MainResourceLoader::addData):
20030 (WebCore::MainResourceLoader::willSendRequest):
20031 (WebCore::MainResourceLoader::continueAfterContentPolicy):
20032 (WebCore::MainResourceLoader::didReceiveResponse):
20033 (WebCore::MainResourceLoader::didReceiveData):
20034 (WebCore::MainResourceLoader::didFinishLoading):
20035 (WebCore::MainResourceLoader::didFail):
20036 (WebCore::MainResourceLoader::loadNow):
20037 (WebCore::MainResourceLoader::policyDelegate):
20038 * loader/mac/WebNetscapePlugInStreamLoader.h:
20039 * loader/mac/WebNetscapePlugInStreamLoader.mm:
20040 (WebCore::NetscapePlugInStreamLoader::NetscapePlugInStreamLoader):
20041 (WebCore::NetscapePlugInStreamLoader::create):
20042 (WebCore::NetscapePlugInStreamLoader::didReceiveResponse):
20043 (WebCore::NetscapePlugInStreamLoader::didFinishLoading):
20044 (WebCore::NetscapePlugInStreamLoader::didFail):
20045 (WebCore::NetscapePlugInStreamLoader::didCancel):
20046 * loader/mac/WebSubresourceLoader.h:
20047 * loader/mac/WebSubresourceLoader.mm:
20048 (-[WebCoreSubresourceHandle initWithLoader:]):
20050 2006-10-23 Geoffrey Garen <ggaren@apple.com>
20052 Reviewed by Bradee.
20054 Shrunk BrowserExtension in preparation for its imminent death, moving page-
20055 level operations to Page and frame-level operations to Frame.
20057 Removed bizarre Mac(this) syntax inside virtual FrameMac member functions,
20058 because 'this' is guaranteed by the compiler to be a FrameMac*.
20060 * bindings/js/kjs_window.cpp: Added NULL checks for m_frame in places
20061 where it can be NULL.
20062 * bindings/js/kjs_window.cpp:
20063 (KJS::canShowModalDialog):
20064 (KJS::canShowModalDialogNow):
20065 (KJS::showModalDialog):
20066 (KJS::History::getValueProperty):
20067 (KJS::HistoryFunc::callAsFunction):
20068 * bridge/BrowserExtension.h:
20069 (WebCore::BrowserExtension::~BrowserExtension):
20070 * bridge/mac/BrowserExtensionMac.h:
20071 * bridge/mac/BrowserExtensionMac.mm:
20072 (WebCore::BrowserExtensionMac::createNewWindow):
20073 * bridge/mac/FrameMac.h:
20074 * bridge/mac/FrameMac.mm:
20075 (WebCore::FrameMac::frameDetached):
20076 (WebCore::FrameMac::unfocusWindow):
20077 (WebCore::FrameMac::bridgeForWidget):
20078 (WebCore::FrameMac::documentViewForNode):
20079 (WebCore::FrameMac::passSubframeEventToSubframe):
20080 (WebCore::Frame::setNeedsReapplyStyles):
20081 (WebCore::FrameMac::customHighlightLineRect):
20082 (WebCore::FrameMac::paintCustomHighlight):
20083 (WebCore::FrameMac::getHistoryLength):
20084 (WebCore::FrameMac::goBackOrForward):
20085 (WebCore::FrameMac::historyURL):
20086 * bridge/mac/PageMac.mm:
20087 (WebCore::Page::canRunModal):
20088 (WebCore::Page::canRunModalNow):
20089 (WebCore::Page::runModal):
20090 * bridge/mac/WebCoreFrameBridge.h:
20091 * bridge/mac/WebCorePageBridge.h:
20092 * bridge/win/BrowserExtensionWin.h:
20094 (WebCore::Frame::scheduleHistoryNavigation):
20095 (WebCore::Frame::redirectionTimerFired):
20099 2006-10-23 Justin Garcia <justin.garcia@apple.com>
20103 <http://bugs.webkit.org/show_bug.cgi?id=11334>
20104 Writely Editor: Placing caret in a list "highlights" both Numbered List and Bulleted List toolbar icons
20106 * WebCore.xcodeproj/project.pbxproj:
20107 * editing/Editor.cpp:
20108 (WebCore::Editor::selectionUnorderedListState): Added.
20109 (WebCore::Editor::selectionOrderedListState): Added.
20110 * editing/Editor.h:
20111 * editing/JSEditor.cpp:
20115 2006-10-23 John Sullivan <sullivan@apple.com>
20119 * WebCore.xcodeproj/project.pbxproj:
20120 Include WebCorePrefix.h in Xcode project for convenience and for consistency with WebKit
20122 2006-10-23 Sam Weinig <sam.weinig@gmail.com>
20126 Patch for http://bugs.webkit.org/show_bug.cgi?id=11291
20127 PNG as cursor image format instead of TIFF
20129 Original patch by Lars Naesbye Christensen (lars@naesbye.dk)
20131 - Convert cursor images from TIFF to PNG.
20133 * Resources/eastResizeCursor.png: Added.
20134 * Resources/eastResizeCursor.tiff: Removed.
20135 * Resources/eastWestResizeCursor.png: Added.
20136 * Resources/eastWestResizeCursor.tiff: Removed.
20137 * Resources/helpCursor.png: Added.
20138 * Resources/helpCursor.tiff: Removed.
20139 * Resources/linkCursor.png: Added.
20140 * Resources/linkCursor.tiff: Removed.
20141 * Resources/moveCursor.png: Added.
20142 * Resources/moveCursor.tiff: Removed.
20143 * Resources/northEastResizeCursor.png: Added.
20144 * Resources/northEastResizeCursor.tiff: Removed.
20145 * Resources/northEastSouthWestResizeCursor.png: Added.
20146 * Resources/northEastSouthWestResizeCursor.tiff: Removed.
20147 * Resources/northResizeCursor.png: Added.
20148 * Resources/northResizeCursor.tiff: Removed.
20149 * Resources/northSouthResizeCursor.png: Added.
20150 * Resources/northSouthResizeCursor.tiff: Removed.
20151 * Resources/northWestResizeCursor.png: Added.
20152 * Resources/northWestResizeCursor.tiff: Removed.
20153 * Resources/northWestSouthEastResizeCursor.png: Added.
20154 * Resources/northWestSouthEastResizeCursor.tiff: Removed.
20155 * Resources/southEastResizeCursor.png: Added.
20156 * Resources/southEastResizeCursor.tiff: Removed.
20157 * Resources/southResizeCursor.png: Added.
20158 * Resources/southResizeCursor.tiff: Removed.
20159 * Resources/southWestResizeCursor.png: Added.
20160 * Resources/southWestResizeCursor.tiff: Removed.
20161 * Resources/waitCursor.png: Added.
20162 * Resources/waitCursor.tiff: Removed.
20163 * Resources/westResizeCursor.png: Added.
20164 * Resources/westResizeCursor.tiff: Removed.
20165 * WebCore.xcodeproj/project.pbxproj:
20166 * platform/mac/CursorMac.mm:
20167 (WebCore::leakNamedCursor):
20169 2006-10-23 Maciej Stachowiak <mjs@apple.com>
20171 - fixed build from last change.
20173 * bridge/mac/FrameMac.h:
20174 * bridge/mac/FrameMac.mm:
20175 (WebCore::FrameMac::loadRequest):
20176 (WebCore::FrameMac::openURL):
20178 2006-10-23 Adam Roben <aroben@apple.com>
20182 Move border-radius rule for <select>s into RenderThemeMac, as this is
20183 really a platform-specific look.
20186 * rendering/RenderThemeMac.mm:
20187 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
20189 2006-10-23 Maciej Stachowiak <mjs@apple.com>
20193 - moved things around so loadURL:... is only called from one place
20195 * bridge/mac/FrameMac.h:
20196 * bridge/mac/FrameMac.mm:
20197 (WebCore::FrameMac::frameDetached):
20198 (WebCore::FrameMac::loadRequest):
20199 (WebCore::FrameMac::submitForm):
20200 (WebCore::FrameMac::openURL):
20201 (WebCore::FrameMac::openURLRequest):
20202 (WebCore::FrameMac::urlSelected):
20204 2006-10-23 Justin Garcia <justin.garcia@apple.com>
20208 <http://bugs.webkit.org/show_bug.cgi?id=11333>
20209 Writely Editor: After inserting a HR element, pressing return key creates a copy of this HR element in the document
20211 Added special cases in InsertLineBreakCommand for inserting before
20212 and after tables and horizontal rules. Also, perform InsertLineBreak
20213 instead of InsertParagraphSeparator at these positions.
20215 * editing/InsertLineBreakCommand.cpp:
20216 (WebCore::InsertLineBreakCommand::doApply): Use the canonical form
20217 of the caret position when we check for the new special cases because
20218 we know that we canonicalize VisiblePositions to those positions.
20219 Added code to handle inserting before/after tables and horizontal rules.
20220 Fixed a bug when inserting at the end of a block (it checked for a collapse
20221 of the inserted br by looking for the absence of a br, but the line break
20222 might have been a '\n' in white-space:pre text). Removed unused LOGs.
20223 * editing/InsertParagraphSeparatorCommand.cpp:
20224 (WebCore::InsertParagraphSeparatorCommand::doApply): Perform an
20225 InsertLineBreakCommand when before/after a table or a horizontal rule
20226 so that we don't have to maintain two pieces of special case code.
20227 Migrated to enclosingBlock.
20228 * editing/htmlediting.cpp: Added a FIXME.
20229 * editing/visible_units.cpp:
20230 (WebCore::startOfParagraph): Added a workaround for 8622.
20232 2006-10-23 Adam Roben <aroben@apple.com>
20236 Make popups a little more flexible.
20238 * platform/PopupMenu.h:
20240 2006-10-23 Sam Weinig <sam.weinig@gmail.com>
20244 Cleanup CodeGeneratorJS.pm
20246 * bindings/scripts/CodeGeneratorJS.pm:
20248 2006-10-23 Adam Roben <aroben@apple.com>
20250 Rubberstamped by Brady.
20252 * loader/icon/IconLoader.h: Changed angle-brackets to quotes for
20253 #include of ResourceLoader.h, since it's a WebCore header.
20255 2006-10-23 Darin Adler <darin@apple.com>
20257 - fixed mistake that was preventing any loading from happening
20259 * platform/network/ResourceLoaderClient.h: (WebCore::ResourceLoaderClient::didReceiveData):
20260 Changed parameter back to int. Perhaps we want to move to "long long" consistently, but
20261 I'll leave that up to Maciej.
20263 2006-10-23 Maciej Stachowiak <mjs@apple.com>
20265 Reviewed by Anders.
20267 - start converting ResourceLoaderClient to new API
20269 Did the bits I could do without introducing new types:
20271 - renamed receivedData to didReceiveData
20272 - renamed version of receivedAllData that doesn't pass any data to didFinishLoading
20274 * bridge/mac/WebCoreResourceLoaderImp.mm:
20275 (-[WebCoreResourceLoaderImp addData:]):
20276 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
20277 * loader/icon/IconLoader.cpp:
20278 (IconLoader::didReceiveData):
20279 (IconLoader::didFinishLoading):
20280 * loader/icon/IconLoader.h:
20281 * loader/loader.cpp:
20282 (WebCore::Loader::didReceiveData):
20284 * platform/gdk/FrameGdk.cpp:
20285 (WebCore::FrameGdkClientDefault::didReceiveData):
20286 * platform/gdk/FrameGdk.h:
20287 * platform/network/ResourceLoaderClient.h:
20288 (WebCore::ResourceLoaderClient::didReceiveData):
20289 (WebCore::ResourceLoaderClient::didFinishLoading):
20290 (WebCore::ResourceLoaderClient::receivedResponse):
20291 * platform/network/cf/ResourceLoaderCFNet.cpp:
20292 (WebCore::didReceiveData):
20293 (WebCore::didFinishLoading):
20294 (WebCore::didFail):
20295 (WebCore::ResourceLoader::cancel):
20296 * platform/network/gdk/ResourceLoaderManager.cpp:
20297 (WebCore::writeCallback):
20298 (WebCore::ResourceLoaderManager::downloadTimerCallback):
20299 (WebCore::ResourceLoaderManager::remove):
20300 * platform/network/qt/ResourceLoaderManager.cpp:
20301 (WebCore::ResourceLoaderManager::slotData):
20302 (WebCore::ResourceLoaderManager::remove):
20303 * platform/network/win/ResourceLoaderWin.cpp:
20304 (WebCore::ResourceLoader::onRequestComplete):
20305 (WebCore::ResourceLoader::fileLoadTimer):
20306 (WebCore::ResourceLoader::cancel):
20307 * platform/qt/FrameQtClient.cpp:
20308 (WebCore::FrameQtClientDefault::didReceiveData):
20309 * platform/qt/FrameQtClient.h:
20310 * xml/xmlhttprequest.cpp:
20311 (WebCore::XMLHttpRequest::processSyncLoadResults):
20312 (WebCore::XMLHttpRequest::didFinishLoading):
20313 (WebCore::XMLHttpRequest::didReceiveData):
20314 * xml/xmlhttprequest.h:
20316 2006-10-23 Maciej Stachowiak <mjs@apple.com>
20318 Rubber stamped by Anders.
20320 - marked files executable
20322 * ksvg2/scripts/csscssmakeprops:
20323 * ksvg2/scripts/csscssmakevalues:
20325 2006-10-22 Maciej Stachowiak <mjs@apple.com>
20327 Reviewed by Anders.
20329 - moved ResourceLoader and related files to platform/network
20330 in preparation for building out this API.
20332 I tried to update all the build systems but I'm not sure they are
20335 * page/ResourceRequest.h: Moved to platform/network.
20336 * platform/ResourceLoader.cpp: Moved to platform/network.
20337 * platform/ResourceLoader.h: Moved to platform/network.
20338 * platform/ResourceLoaderClient.h: Moved to platform/network.
20339 * platform/ResourceLoaderInternal.h: Moved to platform/network.
20340 * platform/cf/ResourceLoaderCFNet.cpp: Moved to platform/network/cf.
20341 * platform/gdk/ResourceLoaderCurl.cpp: Moved to platform/network/gdk.
20342 * platform/gdk/ResourceLoaderManager.cpp: Moved to platform/network/gdk.
20343 * platform/gdk/ResourceLoaderManager.h: Moved to platform/network/gdk.
20344 * platform/mac/ResourceLoaderMac.mm: Moved to platform/network/mac.
20345 * platform/qt/ResourceLoaderManager.cpp: Moved to platform/network/qt.
20346 * platform/qt/ResourceLoaderManager.h: Moved to platform/network/qt.
20347 * platform/qt/ResourceLoaderQt.cpp: Moved to platform/network/qt.
20348 * platform/win/ResourceLoaderWin.cpp: Moved to platform/network/win.
20349 * platform/win/ResourceLoaderWin.h: Moved to platform/network/win.
20350 * webcore-base.bkl: Updated for new paths.
20351 * CMakeLists.txt: ditto
20352 * Projects/gdk/webcore-gdk.bkl: ditto
20353 * WebCore.xcodeproj/project.pbxproj: ditto
20354 * WebCoreSources.bkl: ditto
20356 2006-10-22 Sam Weinig <sam.weinig@gmail.com>
20360 - Add DOMHTMLFormElementPrivate.h to the project.
20362 * WebCore.xcodeproj/project.pbxproj:
20363 * bindings/objc/DOMPrivate.h:
20365 2006-10-22 Darin Adler <darin@apple.com>
20367 - another try at fixing Qt
20369 * CMakeLists.txt: Added DeleteButton.cpp and DeleteButtonController.cpp.
20371 - and fix a couple warnings while I'm at it
20373 * platform/image-decoders/ImageDecoder.h: (WebCore::RGBA32Buffer::setRGBA):
20374 Don't do unsigned *= float.
20376 * rendering/break_lines.cpp: (WebCore::nextBreakablePosition): Move unused variable
20377 inside #if so it's consistent.
20379 2006-10-21 Darin Adler <darin@apple.com>
20383 * platform/qt/EditorClientQt.cpp:
20384 (WebCore::EditorClientQt::shouldShowDeleteInterface):
20385 * platform/qt/EditorClientQt.h:
20386 * platform/qt/FrameQt.cpp:
20388 2006-10-21 Darin Adler <darin@apple.com>
20392 - convert WebLoader and its 3 subclasses to C++ (this time with a leak fixed)
20394 Renamed WebLoader to WebCore::WebResourceLoader (should be ResourceLoader, but
20395 there's currently another class with that name).
20396 Renamed WebMainResourceLoader to WebCore::MainResourceLoader.
20397 Renamed WebSubresourceLoader to WebCore::SubresourceLoader.
20398 Renamed WebNetscapePlugInStreamLoader to WebCore::NetscapePlugInStreamLoader.
20400 Converted the classes to C++ and added Objective-C delegates to forward from
20401 API that still requires Objective-C.
20403 Did not yet rename the source files.
20405 * WebCore.exp: Removed WebLoader, WebNetscapePlugInStreamLoader, and WebSubresourceLoader
20406 classes. Added 5 functions from the WebResourceLoader and NetscapePlugInStreamLoader
20409 * WebCore.xcodeproj/project.pbxproj: Made RetainPtr.h a private header instead of project.
20411 * platform/cf/RetainPtr.h: Put into the WebCore namespace rather than the WTF namespace.
20413 * loader/mac/WebLoader.h:
20414 * loader/mac/WebLoader.mm:
20415 * loader/mac/WebMainResourceLoader.h:
20416 * loader/mac/WebMainResourceLoader.mm:
20417 * loader/mac/WebNetscapePlugInStreamLoader.h:
20418 * loader/mac/WebNetscapePlugInStreamLoader.mm:
20419 * loader/mac/WebSubresourceLoader.h:
20420 * loader/mac/WebSubresourceLoader.mm:
20423 * bridge/mac/WebCoreFrameBridge.mm:
20424 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
20425 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
20426 * loader/mac/WebFrameLoader.h:
20427 * loader/mac/WebFrameLoader.mm:
20428 (isCaseInsensitiveEqual):
20429 (isBackForwardLoadType):
20430 (-[WebFrameLoader dealloc]):
20431 (-[WebFrameLoader addPlugInStreamLoader:]):
20432 (-[WebFrameLoader removePlugInStreamLoader:]):
20433 (-[WebFrameLoader setDefersCallbacks:]):
20434 (-[WebFrameLoader stopLoadingPlugIns]):
20435 (-[WebFrameLoader isLoadingMainResource]):
20436 (-[WebFrameLoader isLoadingSubresources]):
20437 (-[WebFrameLoader isLoadingPlugIns]):
20438 (-[WebFrameLoader stopLoadingSubresources]):
20439 (-[WebFrameLoader addSubresourceLoader:]):
20440 (-[WebFrameLoader removeSubresourceLoader:]):
20441 (-[WebFrameLoader mainResourceData]):
20442 (-[WebFrameLoader releaseMainResourceLoader]):
20443 (-[WebFrameLoader cancelMainResourceLoad]):
20444 (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
20445 (-[WebFrameLoader stopLoadingWithError:]):
20446 (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
20447 (-[WebFrameLoader archiveLoadPendingForLoader:]):
20448 (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
20449 * loader/mac/WebFrameLoaderClient.h:
20450 Call the new C++ API.
20452 2006-10-21 Adam Roben <aroben@apple.com>
20454 Reviewed by Anders.
20458 * platform/PopupMenu.h:
20460 2006-10-21 Darin Adler <darin@apple.com>
20462 * editing/DeleteButtonController.cpp: (WebCore::enclosingDeletableTable):
20463 Oops, edited this before landing it and introduced a null-deref! This fixes it.
20465 2006-10-21 Darin Adler <darin@apple.com>
20467 Reviewed by Anders.
20469 - fix http://bugs.webkit.org/show_bug.cgi?id=11379
20470 assertion failure seen in editing tests (in new DeleteButtonController)
20472 I cleaned up the relationship between the Frame, Editor, EditorClient, and
20473 DeleteButtonController a bit while also making the simple change to fix the
20476 * bridge/mac/FrameMac.h: Change EditorClient parameter to a PassRefPtr since we take ownership.
20477 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::FrameMac):
20479 * page/Frame.h: Change EditorClient parameter to a PassRefPtr since we take ownership.
20481 (WebCore::Frame::Frame): Ditto.
20482 (WebCore::Frame::appliedEditing): Removed unneeded parameter to the respondToChangedContents
20483 function, and moved it to Editor rather than right on the DeleteButtonController.
20484 (WebCore::Frame::unappliedEditing): Ditto.
20485 (WebCore::Frame::reappliedEditing): Ditto.
20486 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): More of the same.
20488 * editing/DeleteButtonController.h:
20489 * editing/DeleteButtonController.cpp:
20490 (WebCore::DeleteButtonController::DeleteButtonController): Replaced Editor* with a Frame*.
20491 The general pattern is that we always use the Frame* as the frame identifier. See FrameTree,
20493 (WebCore::enclosingDeletableTable): Added. Helper function used by the respondToChangedSelection
20494 function. Includes an additional check for whether the container is contentEditable, which
20495 was missing from the old version. This prevents the assertion failure. Also added a check that
20496 the table itself is editable.
20497 (WebCore::DeleteButtonController::respondToChangedSelection): Rewrote to use the helper.
20498 (WebCore::DeleteButtonController::respondToChangedContents): Removed the unnecessary
20499 selection parameter. No need to pass in the state of the frame since we can get it if we need it.
20500 (WebCore::DeleteButtonController::show): Updated to use frame pointer rather than editor pointer.
20502 * editing/Editor.cpp: Fixed formatting. Even the temporary placeholder functions should be
20503 formatted on multiple lines as usual.
20504 (WebCore::Editor::respondToChangedSelection): Added. Forwards to the delete button controller.
20505 (WebCore::Editor::respondToChangedContents): Ditto.
20506 (WebCore::Editor::Editor): Changed EditorClient parameter to a PassRefPtr since we take ownership.
20508 * editing/Editor.h: Changed the DeleteButtonController to use an OwnPtr instead of being
20509 defined inline to decouple so that we don't have to include DeleteButtonController.h. That way
20510 changes to DeleteButtonController.h cause very little to recompile.
20512 * editing/SelectionController.cpp: (WebCore::SelectionController::setSelection):
20513 Updated to call the editor instead of the delete button controller for the selection change.
20515 2006-10-21 Anders Carlsson <acarlsson@apple.com>
20519 * loader/mac/LoaderFunctionsMac.mm:
20520 (WebCore::ServeSynchronousRequest):
20521 * platform/mac/ResourceLoaderMac.mm:
20522 (WebCore::ResourceLoader::start):
20523 Don't leak the header dictionary.
20525 2006-10-21 Darin Adler <darin@apple.com>
20529 - http://bugs.webkit.org/show_bug.cgi?id=11376
20530 build scripts should invoke make with "-j" option for multiple processors
20532 * WebCore.xcodeproj/project.pbxproj: Pass -j `sysctl -n hw.ncpu` to make.
20534 2006-10-21 Timothy Hatcher <timothy@apple.com>
20538 <rdar://problem/4478625> HTML Editing: Basic table editing and culling
20540 Initial implementaltion of table deletion user interface:
20541 * Interface shows up on the nearest table containing the entire selection.
20542 * Shows a Dashboard style close button in the top left corner.
20543 * Shows a 60% opaque black outline around the table.
20544 * Adds a new EditorClient function shouldShowDeleteInterface.
20546 Also adds a new constructor CachedImage and setter functions on
20547 HTMLImageElement and HTMLImageLoader allowing an Image object to be set
20548 and image element in the page. This change also paves the way to allow an
20549 NSImage setter on DOMHTMLImageElement.
20551 * Resources/deleteButton.tiff: Added.
20552 * Resources/deleteButtonPressed.tiff: Added.
20553 * WebCore.xcodeproj/project.pbxproj:
20554 * bridge/EditorClient.h:
20555 * editing/DeleteButton.cpp: Added.
20556 (WebCore::DeleteButton::DeleteButton):
20557 (WebCore::DeleteButton::defaultEventHandler): notify the controller to delete on click
20558 * editing/DeleteButton.h: Added.
20559 * editing/DeleteButtonController.cpp: Added.
20560 (WebCore::DeleteButtonController::DeleteButtonController):
20561 (WebCore::DeleteButtonController::respondToChangedSelection): move the interface to the new element, or hide
20562 (WebCore::DeleteButtonController::respondToChangedContents): call updateOutlineStyle
20563 (WebCore::DeleteButtonController::updateOutlineStyle): resize the outline if the table changed size
20564 (WebCore::DeleteButtonController::show): shows the interface on a new element
20565 (WebCore::DeleteButtonController::hide): hides the existing interface
20566 (WebCore::DeleteButtonController::deleteTarget): deletes the targeted element
20567 * editing/DeleteButtonController.h: Added.
20568 (WebCore::DeleteButtonController::target): getter for the current target
20569 * editing/Editor.cpp:
20570 (WebCore::Editor::shouldShowDeleteInterface): call the new shouldShowDeleteInterface client function
20571 (WebCore::Editor::Editor): remove the manual ref now that we use RefPtr for m_client
20572 (WebCore::Editor::~Editor): remove the manual deref now that we use RefPtr for m_client
20573 * editing/Editor.h:
20574 (WebCore::Editor::frame): new getter
20575 (WebCore::Editor::deleteButtonController): ditto
20576 * editing/SelectionController.cpp:
20577 (WebCore::SelectionController::setSelection): notify the DeleteButtonController about the new selection
20578 * html/HTMLImageElement.h:
20579 (WebCore::HTMLImageElement::setCachedImage): new setter that replaces the CachedImage
20580 * html/HTMLImageLoader.cpp:
20581 (WebCore::HTMLImageLoader::setImage): ditto
20582 * html/HTMLImageLoader.h:
20583 * loader/CachedImage.cpp:
20584 (WebCore::CachedImage::CachedImage): new constructor that takes an Image
20585 * loader/CachedImage.h: ditto
20587 (WebCore::Frame::selectionController): cleanup coding style
20588 (WebCore::Frame::editor): ditto
20589 (WebCore::Frame::command): ditto
20590 (WebCore::Frame::appliedEditing): tell the delete button outline to update
20591 (WebCore::Frame::unappliedEditing): ditto
20592 (WebCore::Frame::reappliedEditing): ditto
20593 * rendering/RenderTable.cpp:
20594 (WebCore::RenderTable::addChild): workaround until bug 11363 is fixed
20596 2006-10-21 Sam Weinig <sam.weinig@gmail.com>
20600 Cleanup bindings generation a little through re-factoring
20601 and general style cleanup.
20603 * bindings/scripts/CodeGenerator.pm:
20604 * bindings/scripts/CodeGeneratorJS.pm:
20605 * bindings/scripts/CodeGeneratorObjC.pm:
20607 2006-10-21 Nikolas Zimmermann <zimmermann@kde.org>
20611 Fix crashes on Qt/Linux. Offer a default EditorClient and pass it down to Frame ctor.
20614 * platform/qt/EditorClientQt.cpp: Added.
20615 (WebCore::EditorClientQt::shouldDeleteRange):
20616 * platform/qt/EditorClientQt.h: Added.
20617 (WebCore::EditorClientQt::~EditorClientQt):
20618 * platform/qt/FrameQt.cpp:
20619 (WebCore::FrameQt::FrameQt):
20620 * platform/qt/FrameQt.h:
20622 2006-10-21 Sam Weinig <sam.weinig@gmail.com>
20626 Fix for http://bugs.webkit.org/show_bug.cgi?id=11372
20627 Auto-generate a few more Objective-C DOM methods.
20629 - Auto-generate getMatchedCSSRules and getComputedStyle methods.
20631 * bindings/objc/DOMCSS.h:
20632 * bindings/objc/DOMCSS.mm:
20633 * bindings/objc/DOMExtensions.h:
20634 * bindings/objc/PublicDOMInterfaces.h:
20635 * bindings/scripts/CodeGeneratorObjC.pm:
20636 * dom/Document.idl:
20637 * page/DOMWindow.idl:
20639 2006-10-21 Nikolas Zimmermann <zimmermann@kde.org>
20641 Reviewed by aliu, landed by aliu.
20643 Fix Qt/Linux build.
20646 * platform/qt/FrameQt.cpp:
20647 (WebCore::FrameQt::FrameQt):
20648 * platform/qt/SoundQt.cpp: Added.
20649 (WebCore::systemBeep):
20651 2006-10-21 Nikolas Zimmermann <zimmermann@kde.org>
20653 Reviewed by Mitz, landed by ap.
20655 Fix obscure crashes in RenderTableSection on Rob's musicdb file.
20656 The problem was a missing layout() call on the frame view.
20657 Thanks go to Mitz Pettel for the initial hint!
20659 * platform/qt/ScrollViewCanvasQt.cpp:
20660 (WebCore::ScrollViewCanvasQt::paintEvent):
20662 2006-10-20 Steve Falkenburg <sfalken@apple.com>
20664 Reviewed by Anders.
20666 Send User-Agent on requests.
20667 Send custom request headers properly.
20669 * platform/cf/ResourceLoaderCFNet.cpp:
20670 (WebCore::addHeadersFromHashMap): Switch over to HashMap iteration from string parsing
20671 (WebCore::ResourceLoader::start): Send proper User-Agent, change call to add headers
20673 2006-10-20 Timothy Hatcher <timothy@apple.com>
20677 Fix some bad formatting.
20679 * css/cssstyleselector.cpp:
20680 (WebCore::CSSStyleSelector::checkOneSelector):
20682 2006-10-20 Darin Adler <darin@apple.com>
20686 - fixed <rdar://problem/4795716> REGRESSION: User names and passwords aren't being saved (.Mac, etc.) -- WebKit formState passing empty strings
20688 * loader/mac/WebFormState.mm: (WebCore::FormState::FormState): Fix typo -- need to pass "key"
20689 as the key, not the dictionary itself.
20691 2006-10-20 Alice Liu <alice.liu@apple.com>
20693 Reviewed by Maciej.
20695 This is the initial foundation for the EditingController class and
20696 everything else it needs to work. The idea is that the Frame has an
20697 EditingController object that it calls to handle editing commands, the
20698 most simple examples being copy/paste. This controller will handle
20699 these editing commands in WebCore, and only hand off to WebKit to call
20700 editing delegates (to the let the app intercept editing actions if it
20701 wants to). Thus we need a platform-specific client to which the
20702 EditingController hands off the delegate calls,
20703 WebCoreEditingControllerClient. On the WebCore side this is an
20704 abstract base class, and on the WebKit(Mac) side this is an ObjC++
20705 subclass, WebEditingControllerClient. How does the EditingController
20706 get a handle to its platform-specific client? In WebKit, the creator
20707 of a platform-specific Frame creates the client (which is ref-counted)
20708 and passes it down the chain of constructors until it gets back to the
20709 EditingController, which then refs it in its constructor and derefs in
20712 No Layout tests needed.
20714 * WebCore.xcodeproj/project.pbxproj:
20715 Added files and made DomRangeInternal.h and EditingClient.h private headers, necessary for WebKit to compile
20717 * bridge/EditorClient.h: Added.
20718 (WebCore::EditorClient::~EditorClient):
20720 * bridge/mac/FrameMac.h:
20721 Added an EditingClient to the constructor, to pass down to Frame constructor
20723 * bridge/mac/FrameMac.mm:
20724 (WebCore::FrameMac::FrameMac):
20725 Passed client down to Frame constructor
20727 * bridge/mac/WebCoreFrameBridge.h:
20728 Added an EditingClient to the constructor, to pass down to FrameMac constructor
20730 * bridge/mac/WebCoreFrameBridge.mm:
20731 (-[WebCoreFrameBridge initMainFrameWithPage:withEditorClient:]):
20732 (-[WebCoreFrameBridge initSubframeWithOwnerElement:withEditorClient:]):
20733 Passed client down to FrameMac constructor
20735 * editing/Editor.cpp: Added.
20736 Mostly stuf implementations of the following functions, except for a couple. These are all needed by cut, copy, paste, delete.
20737 (WebCore::generalPasteboard):
20738 (WebCore::Editor::canCopy):
20739 (WebCore::Editor::canCut):
20740 (WebCore::Editor::canDelete):
20741 (WebCore::Editor::canDeleteRange):
20742 (WebCore::Editor::canPaste):
20743 (WebCore::Editor::canSmartCopyOrDelete):
20744 (WebCore::Editor::deleteSelection):
20745 (WebCore::Editor::deleteSelectionWithSmartDelete):
20746 (WebCore::Editor::isSelectionRichlyEditable):
20747 (WebCore::Editor::pasteAsPlainTextWithPasteboard):
20748 (WebCore::Editor::pasteWithPasteboard):
20749 (WebCore::Editor::selectedRange):
20750 (WebCore::Editor::shouldDeleteRange):
20751 (WebCore::Editor::tryDHTMLCopy):
20752 (WebCore::Editor::tryDHTMLCut):
20753 (WebCore::Editor::tryDHTMLPaste):
20754 (WebCore::Editor::writeSelectionToPasteboard):
20755 (WebCore::Editor::Editor):
20756 (WebCore::Editor::~Editor):
20757 (WebCore::Editor::cut):
20758 (WebCore::Editor::copy):
20759 (WebCore::Editor::paste):
20760 (WebCore::Editor::performDelete):
20762 * editing/Editor.h: Added.
20765 Added an EditingClient to the constructor, to pass down to Editor constructor
20768 (WebCore::Frame::Frame):
20769 Passed down to Editor constructor
20770 (WebCore::Frame::editor):
20771 Accessor for Editor stored in FramePrivate
20773 * page/FramePrivate.h:
20774 (WebCore::FramePrivate::FramePrivate):
20775 Added an Editor object to the FramePrivate data
20777 * platform/Sound.h: Added.
20778 Made a platform-independent accessor to a beep function
20780 * platform/mac/SoundMac.mm: Added.
20781 (WebCore::systemBeep):
20782 calls mac system beep
20784 2006-10-20 David Hyatt <hyatt@apple.com>
20786 Make sure to support the "encoding" property on form elements for
20787 legacy compatibility.
20789 Reviewed by darin/john
20791 No test cases added. Not sure how to do a form submission of
20792 various encodings as a layout test.
20794 * html/HTMLFormElement.h:
20795 (WebCore::HTMLFormElement::encoding):
20796 (WebCore::HTMLFormElement::setEncoding):
20797 * html/HTMLFormElement.idl:
20799 2006-10-20 Nikolas Zimmermann <zimmermann@kde.org>
20801 Reviewed and by Anders.
20803 Fix warnings in JS generation by killing the whole isRefPtr logic,
20804 and just using WTF::getPtr as Sam Weinig suggested. Also kill some
20805 places using get() where getPtr() is cleaner - not for m_impl.get().
20807 * CMakeLists.txt: Tiny cleanup + add deps for CodeGenerator(JS).pm on all IDLs.
20808 * bindings/scripts/CodeGeneratorJS.pm:
20810 2006-10-20 Darin Adler <darin@apple.com>
20812 - rolled out my loader change; caused world leak and possibly a plug-in crash
20814 2006-10-20 Anders Carlsson <acarlsson@apple.com>
20818 * loader/mac/LoaderFunctionsMac.mm:
20819 Autorelease the header NSDictionary.
20821 2006-10-20 Anders Carlsson <acarlsson@apple.com>
20825 * bindings/js/kjs_window.cpp:
20826 (KJS::Window::timerFired):
20827 Check if the timeout id is still in the table before trying to access it. If it isn't in the table
20828 it has been deleted inside of the execute method.
20830 2006-10-20 Anders Carlsson <acarlsson@apple.com>
20832 Reviewed by Darin and Geoff.
20834 Remove debugging output.
20835 * xml/xmlhttprequest.cpp:
20836 (WebCore::XMLHttpRequest::send):
20838 2006-10-20 David Harrison <harrison@apple.com>
20842 <rdar://problem/4792755> REGRESSON: Drag selecting is erratic
20844 No test because it would require autoscrolling, which is not available to layout tests.
20846 * rendering/RenderLayer.cpp:
20847 (WebCore::RenderLayer::autoscroll):
20848 Use hitTest() to find the correct node.
20850 (WebCore::RenderLayer::hitTest):
20851 Trivial source formatting.
20853 2006-10-20 Nikolas Zimmermann <zimmermann@kde.org>
20855 Reviewed and landed by Anders.
20857 Fix regression introduced during the ResourceLoader transition (Maciej's rewrite).
20859 * platform/qt/ResourceLoaderManager.cpp:
20860 (WebCore::ResourceLoaderManager::add):
20862 2006-10-20 Darin Adler <darin@apple.com>
20866 - convert WebLoader and its 3 subclasses to C++
20868 Renamed WebLoader to WebCore::WebResourceLoader (should be ResourceLoader, but
20869 there's currently another class with that name).
20870 Renamed WebMainResourceLoader to WebCore::MainResourceLoader.
20871 Renamed WebSubresourceLoader to WebCore::SubresourceLoader.
20872 Renamed WebNetscapePlugInStreamLoader to WebCore::NetscapePlugInStreamLoader.
20874 Converted the classes to C++ and added Objective-C delegates to forward from
20875 API that still requires Objective-C.
20877 Did not yet rename the source files.
20879 * WebCore.exp: Removed WebLoader, WebNetscapePlugInStreamLoader, and WebSubresourceLoader
20880 classes. Added 5 functions from the WebResourceLoader and NetscapePlugInStreamLoader
20883 * WebCore.xcodeproj/project.pbxproj: Made RetainPtr.h a private header instead of project.
20885 * platform/cf/RetainPtr.h: Put into the WebCore namespace rather than the WTF namespace.
20887 * loader/mac/WebLoader.h:
20888 * loader/mac/WebLoader.mm:
20889 * loader/mac/WebMainResourceLoader.h:
20890 * loader/mac/WebMainResourceLoader.mm:
20891 * loader/mac/WebNetscapePlugInStreamLoader.h:
20892 * loader/mac/WebNetscapePlugInStreamLoader.mm:
20893 * loader/mac/WebSubresourceLoader.h:
20894 * loader/mac/WebSubresourceLoader.mm:
20897 * bridge/mac/WebCoreFrameBridge.mm:
20898 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
20899 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
20900 * loader/mac/WebFrameLoader.h:
20901 * loader/mac/WebFrameLoader.mm:
20902 (isCaseInsensitiveEqual):
20903 (isBackForwardLoadType):
20904 (-[WebFrameLoader dealloc]):
20905 (-[WebFrameLoader addPlugInStreamLoader:]):
20906 (-[WebFrameLoader removePlugInStreamLoader:]):
20907 (-[WebFrameLoader setDefersCallbacks:]):
20908 (-[WebFrameLoader stopLoadingPlugIns]):
20909 (-[WebFrameLoader isLoadingMainResource]):
20910 (-[WebFrameLoader isLoadingSubresources]):
20911 (-[WebFrameLoader isLoadingPlugIns]):
20912 (-[WebFrameLoader stopLoadingSubresources]):
20913 (-[WebFrameLoader addSubresourceLoader:]):
20914 (-[WebFrameLoader removeSubresourceLoader:]):
20915 (-[WebFrameLoader mainResourceData]):
20916 (-[WebFrameLoader releaseMainResourceLoader]):
20917 (-[WebFrameLoader cancelMainResourceLoad]):
20918 (-[WebFrameLoader startLoadingMainResourceWithRequest:identifier:]):
20919 (-[WebFrameLoader stopLoadingWithError:]):
20920 (-[WebFrameLoader willUseArchiveForRequest:originalURL:loader:]):
20921 (-[WebFrameLoader archiveLoadPendingForLoader:]):
20922 (-[WebFrameLoader cancelPendingArchiveLoadForLoader:]):
20923 * loader/mac/WebFrameLoaderClient.h:
20924 Call the new C++ API.
20926 2006-10-20 Nikolas Zimmermann <zimmermann@kde.org>
20928 Reviewed and landed by Anders.
20930 Offer a way for WebKitPart to be able to detect when
20931 the webpage has been completly loaded (including subresources).
20933 Also fix Qt/Linux build by removing PopupMenu.cpp from CMakeLists.txt
20934 and removing some functions from PopupMenuQt.cpp, and alter FrameQt.cpp.
20937 * platform/qt/FrameQt.cpp:
20938 (WebCore::FrameQt::submitForm):
20939 (WebCore::FrameQt::client):
20940 * platform/qt/FrameQt.h:
20941 * platform/qt/FrameQtClient.cpp:
20942 (WebCore::FrameQtClientDefault::setFrame):
20943 (WebCore::FrameQtClientDefault::openURL):
20944 (WebCore::FrameQtClientDefault::submitForm):
20945 (WebCore::FrameQtClientDefault::checkLoaded):
20946 (WebCore::FrameQtClientDefault::traverseNextFrameStayWithin):
20947 (WebCore::FrameQtClientDefault::numPendingOrLoadingRequests):
20948 (WebCore::FrameQtClientDefault::receivedAllData):
20949 * platform/qt/FrameQtClient.h:
20950 * platform/qt/LoaderFunctionsQt.cpp:
20951 (WebCore::CheckCacheObjectStatus):
20952 * platform/qt/PopupMenuQt.cpp:
20953 * platform/qt/ResourceLoaderManager.cpp:
20954 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
20955 (WebCore::ResourceLoaderManager::slotResult):
20956 (WebCore::ResourceLoaderManager::add):
20957 * platform/qt/ResourceLoaderManager.h:
20958 * platform/qt/ResourceLoaderQt.cpp:
20959 (WebCore::ResourceLoader::start):
20961 2006-10-20 Steve Falkenburg <sfalken@apple.com>
20965 Fix compiler warnings
20967 * platform/ResourceLoaderClient.h:
20969 2006-10-20 Sam Weinig <sam.weinig@gmail.com>
20973 Win32 build fix and cleanup.
20975 * WebCore.vcproj/WebCore/WebCore.vcproj:
20976 * bridge/win/FrameWin.cpp:
20977 (WebCore::FrameWin::FrameWin):
20978 (WebCore::FrameWin::submitForm):
20979 * page/ResourceRequest.h:
20980 (WebCore::ResourceRequest::addHTTPHeaderField):
20981 * platform/win/TemporaryLinkStubs.cpp:
20982 (WebCore::Slider::~Slider):
20983 (WebCore::Slider::setMinValue):
20984 (WebCore::searchableIndexIntroduction):
20985 (WebCore::findNextSentenceFromIndex):
20986 (WebCore::findSentenceBoundary):
20987 (WebCore::findNextWordFromIndex):
20988 (WebCore::FrameWin::getObjectInstanceForWidget):
20989 (WebCore::FrameWin::getEmbedInstanceForWidget):
20990 (WebCore::FrameWin::runJavaScriptPrompt):
20991 (WebCore::FrameWin::restoreDocumentState):
20992 (WebCore::FrameWin::partClearedInBegin):
20993 (WebCore::FrameWin::createEmptyDocument):
20994 (WebCore::FrameWin::overrideMediaType):
20995 (WebCore::FrameWin::markedTextRange):
20996 (WebCore::FrameWin::passSubframeEventToSubframe):
20997 (WebCore::FrameWin::lastEventIsMouseUp):
20998 (WebCore::FrameWin::addMessageToConsole):
20999 (WebCore::FrameWin::shouldChangeSelection):
21000 (WebCore::FrameWin::respondToChangedSelection):
21001 (WebCore::FrameWin::createFrame):
21002 (WebCore::FrameWin::saveDocumentState):
21003 (WebCore::FrameWin::clearUndoRedoOperations):
21004 (WebCore::FrameWin::incomingReferrer):
21005 (WebCore::FrameWin::markMisspellingsInAdjacentWords):
21006 (WebCore::FrameWin::respondToChangedContents):
21007 (WebCore::FrameWin::handledOnloadEvents):
21008 (WebCore::FrameWin::createPlugin):
21009 (WebCore::FrameWin::objectContentType):
21010 (WebCore::screenDepthPerComponent):
21011 (WebCore::screenIsMonochrome):
21012 (WebCore::historyContains):
21013 (WebCore::submitButtonDefaultLabel):
21014 (WebCore::inputElementAltText):
21015 (WebCore::resetButtonDefaultLabel):
21016 (WebCore::fileButtonChooseFileLabel):
21017 (WebCore::fileButtonNoFileSelectedLabel):
21018 (WebCore::defaultLanguage):
21019 (WebCore::findWordBoundary):
21020 (WebCore::PlugInInfoStore::createPluginInfoForPluginAtIndex):
21021 (WebCore::PlugInInfoStore::supportsMIMEType):
21022 (WebCore::refreshPlugins):
21023 (WebCore::ResourceLoader::assembleResponseHeaders):
21024 (WebCore::ResourceLoader::retrieveResponseEncoding):
21025 (WebCore::ResourceLoader::startHTTPRequest):
21026 (WebCore::TextField::TextField):
21027 (WebCore::focusRingColor):
21028 (WebCore::setFocusRingColorChangeFunction):
21029 (WebCore::PopupMenu::~PopupMenu):
21030 (WebCore::PopupMenu::hide):
21032 2006-10-20 Rob Buis <buis@kde.org>
21036 http://bugs.webkit.org/show_bug.cgi?id=11303
21037 Path::transform() should be implemented on Qt build
21039 Use QPainterPath API to implement Path::transform.
21040 This fixes svg/custom/clip-path-with-transform.svg on
21043 * platform/qt/PathQt.cpp:
21044 (WebCore::Path::transform):
21046 2006-10-20 Rob Buis <buis@kde.org>
21050 http://bugs.webkit.org/show_bug.cgi?id=11217
21051 Cleanup svg coding style
21053 Cleanup coding style in svg clipping and painting classes.
21055 * ksvg2/svg/SVGClipPathElement.cpp:
21056 (WebCore::SVGClipPathElement::parseMappedAttribute):
21057 (WebCore::SVGClipPathElement::canvasResource):
21058 * ksvg2/svg/SVGClipPathElement.h:
21059 * ksvg2/svg/SVGMarkerElement.cpp:
21060 (WebCore::SVGMarkerElement::SVGMarkerElement):
21061 (WebCore::SVGMarkerElement::parseMappedAttribute):
21062 (WebCore::SVGMarkerElement::setOrientToAngle):
21063 (WebCore::SVGMarkerElement::canvasResource):
21064 * ksvg2/svg/SVGMarkerElement.h:
21065 (WebCore::SVGMarkerElement::rendererIsNeeded):
21066 * ksvg2/svg/SVGMaskElement.cpp:
21067 (WebCore::SVGMaskElement::SVGMaskElement):
21068 (WebCore::SVGMaskElement::parseMappedAttribute):
21069 (WebCore::SVGMaskElement::drawMaskerContent):
21070 (WebCore::SVGMaskElement::canvasResource):
21071 * ksvg2/svg/SVGMaskElement.h:
21072 (WebCore::SVGMaskElement::rendererIsNeeded):
21073 * ksvg2/svg/SVGPaint.cpp:
21074 (WebCore::SVGPaint::setPaint):
21075 (WebCore::SVGPaint::cssText):
21076 * ksvg2/svg/SVGPaint.h:
21078 2006-10-20 David Hyatt <hyatt@apple.com>
21080 Make sure to do the code that checks the repeatInterval before the timer has been
21083 Reviewed by andersca
21085 * bindings/js/kjs_window.cpp:
21086 (KJS::DOMWindowTimer::setNestingLevel):
21087 (KJS::Window::timerFired):
21088 (KJS::DOMWindowTimer::fired):
21089 * platform/Timer.h:
21091 2006-10-20 David Hyatt <hyatt@apple.com>
21093 Honor tiny timer intervals for JS timeouts as they are nested until a cutoff point is reached.
21094 At that point clamp to 10ms to prevent excessive CPU usage.
21098 * bindings/js/kjs_window.cpp:
21099 (KJS::DOMWindowTimer::DOMWindowTimer):
21100 (KJS::DOMWindowTimer::nestingLevel):
21101 (KJS::Window::installTimeout):
21102 (KJS::Window::pauseTimeouts):
21103 (KJS::Window::resumeTimeouts):
21104 (KJS::DOMWindowTimer::fired):
21105 * platform/Timer.h:
21106 (WebCore::TimerBase::startRepeating):
21107 (WebCore::TimerBase::startOneShot):
21108 (WebCore::TimerBase::repeatInterval):
21109 (WebCore::TimerBase::augmentRepeatInterval):
21110 (WebCore::TimerBase::inHeap):
21111 (WebCore::Timer::Timer):
21112 (WebCore::Timer::fired):
21114 2006-10-20 Steve Falkenburg <sfalken@apple.com>
21118 * ksvg2/svg/SVGAElement.cpp:
21119 (WebCore::SVGAElement::defaultEventHandler):
21121 2006-10-19 Steve Falkenburg <sfalken@apple.com>
21125 Use GetKeyState rather than GetAsyncKeyState since we're
21126 calling in these cases in direct response to an event, and want the
21127 key state associated with that event.
21129 Pass triggering event to url selection method.
21131 * bridge/mac/FrameMac.h: Add triggeringEvent parameter
21132 * bridge/mac/FrameMac.mm:
21133 (WebCore::FrameMac::urlSelected): Add triggeringEvent parameter
21134 * bridge/win/FrameWin.cpp:
21135 (WebCore::FrameWin::urlSelected): Add triggeringEvent parameter
21136 * bridge/win/FrameWin.h: Add triggeringEvent parameter
21137 * html/HTMLAnchorElement.cpp:
21138 (WebCore::HTMLAnchorElement::defaultEventHandler): Pass triggering event to URL selection method
21140 (WebCore::Frame::changeLocation): Add 0 as triggeringEvent
21141 (WebCore::Frame::urlSelected): Pass through triggeringEvent
21142 * page/Frame.h: Add triggeringEvent parameter to urlSelected methods
21143 * platform/win/KeyEventWin.cpp:
21144 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): Use GetKeyState instead of GetAsyncKeyState
21145 * platform/win/MouseEventWin.cpp: Use GetKeyState instead of GetAsyncKeyState
21146 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
21148 2006-10-19 David Hyatt <hyatt@apple.com>
21150 Correct typos from changing "flush" to "prune" using automated search/replace.
21152 Change the cache heuristic for flushing to allow a higher watermark before initiating an
21153 aggressive prune. This ensures that small cache sizes are no worse in terms of performance
21154 than the old buggy cache.
21156 Make sizes unsigned instead of ints in the cache's APIs and member variables.
21158 * loader/Cache.cpp:
21159 (WebCore::Cache::prune):
21160 (WebCore::Cache::setMaximumSize):
21162 (WebCore::Cache::maximumSize):
21164 2006-10-19 Anders Carlsson <acarlsson@apple.com>
21166 Reviewed by Daddy Hyatt.
21168 Use a real hash map for the headers.
21170 * loader/LoaderFunctions.h:
21171 * loader/mac/LoaderFunctionsMac.mm:
21172 (WebCore::ServeSynchronousRequest):
21173 * platform/ResourceLoader.cpp:
21174 (WebCore::ResourceLoader::setRequestHeaders):
21175 (WebCore::ResourceLoader::requestHeaders):
21176 * platform/ResourceLoader.h:
21177 * platform/ResourceLoaderInternal.h:
21178 * platform/mac/ResourceLoaderMac.mm:
21179 (WebCore::ResourceLoader::start):
21180 * xml/xmlhttprequest.cpp:
21181 (WebCore::XMLHttpRequest::open):
21182 (WebCore::XMLHttpRequest::send):
21183 (WebCore::XMLHttpRequest::setRequestHeader):
21184 (WebCore::XMLHttpRequest::getRequestHeader):
21185 * xml/xmlhttprequest.h:
21187 2006-10-19 Adam Roben <aroben@apple.com>
21191 Pippity-poppity popup tweaks.
21193 * WebCore.xcodeproj/project.pbxproj: Removed PopupMenu.cpp from project.
21194 * html/HTMLSelectElement.cpp:
21195 (WebCore::HTMLSelectElement::setSelectedIndex): Only fire onChange if
21196 requested and the new index is actually different than the old one.
21197 * platform/IntPoint.h: Added another casting operator.
21198 * platform/PopupMenu.cpp: Removed. The code in here, while
21199 platform-independent, was only useful for the NSPopUpButtonCell
21200 implementation of popup menus, so I've moved it to PopupMenuMac.mm.
21201 * platform/PopupMenu.h: Moved the definition of PopupMenu::create into
21202 the header since it's fairly simple. Made some more methods private now
21203 that we don't have subclasses and virtual methods anymore.
21204 (WebCore::PopupMenu::create):
21205 (WebCore::PopupMenu::menuList):
21206 (WebCore::PopupMenu::itemHeight):
21207 (WebCore::PopupMenu::windowRect):
21208 (WebCore::PopupMenu::listIndexAtPoint):
21209 (WebCore::PopupMenu::focusedIndex):
21210 (WebCore::PopupMenu::setWasClicked):
21211 (WebCore::PopupMenu::wasClicked):
21212 (WebCore::PopupMenu::setScrollOffset):
21213 (WebCore::PopupMenu::scrollOffset):
21214 (WebCore::PopupMenu::wheelDelta):
21215 * platform/mac/PopupMenuMac.mm: Added the code from PopupMenu.cpp.
21216 (WebCore::PopupMenu::populate): Call our own clear() method to clear
21218 * platform/win/IntPointWin.cpp: New casting operator.
21219 (WebCore::IntPoint::IntPoint):
21220 (WebCore::IntPoint::operator POINTS):
21222 2006-10-19 Adam Roben <aroben@apple.com>
21226 Cleaning up Document::nextFocusNode and Document::previousFocusNode.
21228 * dom/Document.cpp:
21229 (WebCore::Document::nextFocusNode):
21230 (WebCore::Document::previousFocusNode):
21232 2006-10-19 Maciej Stachowiak <mjs@apple.com>
21236 - implement new ResourceRequest API and fix up code as appropriate
21238 * bindings/js/kjs_window.cpp:
21239 (KJS::createNewWindow):
21240 (KJS::WindowFunc::callAsFunction):
21241 * bridge/mac/BrowserExtensionMac.mm:
21242 (WebCore::BrowserExtensionMac::createNewWindow):
21243 * bridge/mac/FrameMac.mm:
21244 (WebCore::FrameMac::submitForm):
21245 (WebCore::FrameMac::openURLRequest):
21246 (WebCore::FrameMac::urlSelected):
21247 * bridge/mac/WebCoreFrameBridge.mm:
21248 (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]):
21249 * dom/DOMImplementation.cpp:
21250 (WebCore::addString):
21251 (WebCore::isSVG10Feature):
21252 (WebCore::isSVG11Feature):
21254 * editing/CommandByName.cpp:
21255 * editing/JSEditor.cpp:
21257 (WebCore::Frame::changeLocation):
21258 (WebCore::Frame::urlSelected):
21259 (WebCore::Frame::requestFrame):
21260 (WebCore::Frame::submitForm):
21262 * page/FramePrivate.h:
21263 * page/ResourceRequest.h:
21265 (WebCore::ResourceRequest::ResourceRequest):
21266 (WebCore::ResourceRequest::cachePolicy):
21267 (WebCore::ResourceRequest::setCachePolicy):
21268 (WebCore::ResourceRequest::timeoutInterval):
21269 (WebCore::ResourceRequest::setTimeoutInterval):
21270 (WebCore::ResourceRequest::mainDocumentURL):
21271 (WebCore::ResourceRequest::setMainDocumentURL):
21272 (WebCore::ResourceRequest::httpMethod):
21273 (WebCore::ResourceRequest::setHTTPMethod):
21274 (WebCore::ResourceRequest::httpHeaderField):
21275 (WebCore::ResourceRequest::setHTTPHeaderField):
21276 (WebCore::ResourceRequest::httpContentType):
21277 (WebCore::ResourceRequest::setHTTPContentType):
21278 (WebCore::ResourceRequest::httpReferrer):
21279 (WebCore::ResourceRequest::setHTTPReferrer):
21280 (WebCore::ResourceRequest::httpUserAgent):
21281 (WebCore::ResourceRequest::setHTTPUserAgent):
21282 (WebCore::ResourceRequest::httpBody):
21283 (WebCore::ResourceRequest::setHTTPBody):
21284 (WebCore::ResourceRequest::addHTTPHeaderField):
21285 * platform/FontCache.cpp:
21286 (WebCore::computeHash):
21287 * platform/StringHash.h:
21289 * platform/StringImpl.cpp:
21290 (WebCore::equalIgnoringCase):
21291 * rendering/RenderPartObject.cpp:
21292 (WebCore::RenderPartObject::updateWidget):
21294 2006-10-19 Justin Garcia <justin.garcia@apple.com>
21298 <rdar://problem/4447885>
21299 API: WebView should have a method something like incrementLeftMarginBy: or indentBy:
21301 Fixed indent/outdent to only increment the left margin, to match other browsers.
21302 Used blockquote class="webkit-indent-blockquote" to do this. Mail can now
21303 implement indent/outdent by customizing the appearance of these blockquotes,
21304 instead of using a new API.
21306 * css/html4.css: Added margin: 0 0 0 40px for webkit-indent-blockquotes.
21307 * editing/IndentOutdentCommand.cpp:
21308 (WebCore::indentBlockquoteString): Added.
21309 (WebCore::createIndentBlockquoteElement): Added.
21310 (WebCore::isIndentBlockquote): Added.
21311 (WebCore::isListOrBlockquote): Added.
21312 (WebCore::IndentOutdentCommand::IndentOutdentCommand):
21313 (WebCore::IndentOutdentCommand::prepareBlockquoteLevelForInsertion): Fixed
21314 a bug in the code that added an extra br if the placeholder collapsed upon insertion.
21315 Used the new indentBlockquote checks and enclosing element getters.
21316 (WebCore::IndentOutdentCommand::indentRegion): Ditto.
21317 (WebCore::IndentOutdentCommand::outdentParagraph): Ditto. Cleaned up the
21318 logic to pull the selection out of a list a bit.
21319 * editing/htmlediting.cpp:
21320 (WebCore::enclosingNodeOfType): Added this generic enclosing element getter.
21321 * editing/htmlediting.h:
21323 2006-10-19 Timothy Hatcher <timothy@apple.com>
21325 Rolling out the this change since it caused a bad regression:
21326 <rdar://problem/4788524> REGRESSION: Incomplete repaint of text area when deleting (11277)
21328 2006-10-12 Adele Peterson <adele@apple.com>
21330 Reviewed by Dave Harrison.
21332 - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
21334 * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
21335 Make subtree layouts work for textareas as well as text fields.
21337 2006-10-19 Nikolas Zimmermann <zimmermann@kde.org>
21339 Reviewed and landed by Anders.
21341 Fix Qt/Linux build.
21345 * platform/qt/BrowserExtensionQt.cpp:
21346 * platform/qt/BrowserExtensionQt.h:
21347 * platform/qt/CursorQt.cpp:
21348 (WebCore::pointerCursor):
21349 * platform/qt/LoaderFunctionsQt.cpp:
21350 (WebCore::NumberOfPendingOrLoadingRequests):
21351 (WebCore::CheckCacheObjectStatus):
21352 * platform/qt/ResourceLoaderQt.cpp:
21353 (WebCore::ResourceLoader::retrieveResponseEncoding):
21354 (WebCore::ResourceLoader::receivedResponse):
21356 2006-10-19 Sam Weinig <sam.weinig@gmail.com>
21362 * bridge/win/FrameWin.cpp:
21363 * bridge/win/FrameWin.h:
21364 * platform/win/TemporaryLinkStubs.cpp:
21365 (WebCore::ResourceLoader::retrieveResponseEncoding):
21367 2006-10-19 Alexey Proskuryakov <ap@nypop.com>
21371 http://bugs.webkit.org/show_bug.cgi?id=11141
21372 REGRESSION(r16681-r16691): CSS '@import' doesn't respect HTML Base element
21374 Undo one misguided change made in bug 11011 - stop setting inline stylesheet's href
21375 to document URL. This matches WinIE and partially matches Firefox - although the latter
21376 reports the href as if it were inherited, it still doesn't use it when resolving URIs in
21379 Test: http/tests/uri/css-href.php
21381 * html/HTMLStyleElement.cpp:
21382 (WebCore::HTMLStyleElement::childrenChanged):
21383 * ksvg2/svg/SVGStyleElement.cpp:
21384 (WebCore::SVGStyleElement::childrenChanged):
21386 2006-10-19 Anders Carlsson <acarlsson@apple.com>
21388 * loader/Cache.cpp:
21389 Get rid of #include "loader.h", Cache.h already includes this and it breaks on operating systems
21390 with case-sensitive file systems.
21392 2006-10-19 Anders Carlsson <acarlsson@apple.com>
21394 Reviewed by Maciej, Brady.
21396 Remove "charset" from the ResourceLoader metadata map and use
21397 a getter function instead. Also, rename charset to encoding in a couple of places.
21399 * loader/CachedCSSStyleSheet.cpp:
21400 (WebCore::CachedCSSStyleSheet::setEncoding):
21401 * loader/CachedCSSStyleSheet.h:
21402 * loader/CachedResource.h:
21403 (WebCore::CachedResource::setEncoding):
21404 * loader/CachedScript.cpp:
21405 (WebCore::CachedScript::setEncoding):
21406 * loader/CachedScript.h:
21407 * loader/CachedXBLDocument.cpp:
21408 (WebCore::CachedXBLDocument::setEncoding):
21409 * loader/CachedXBLDocument.h:
21410 * loader/CachedXSLStyleSheet.cpp:
21411 (WebCore::CachedXSLStyleSheet::setEncoding):
21412 * loader/CachedXSLStyleSheet.h:
21413 * loader/loader.cpp:
21414 (WebCore::Loader::receivedResponse):
21415 * platform/ResourceLoader.cpp:
21416 (WebCore::ResourceLoader::responseEncoding):
21417 (WebCore::ResourceLoader::queryMetaData):
21418 * platform/ResourceLoader.h:
21419 * platform/ResourceLoaderInternal.h:
21420 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
21421 * platform/mac/ResourceLoaderMac.mm:
21422 (WebCore::ResourceLoader::retrieveResponseEncoding):
21423 (WebCore::ResourceLoader::receivedResponse):
21424 * xml/xmlhttprequest.cpp:
21425 (WebCore::XMLHttpRequest::receivedData):
21427 2006-10-19 David Hyatt <hyatt@apple.com>
21429 Rewrite of the WebCore memory cache. The following changes have been made (along with many more):
21431 (1) Referenced objects are now also cached.
21433 (2) Pruning of the cache will occur once the cache is both full and in addition
21434 more than half full with unreferenced objects.
21436 (3) The prune is much more aggressive now, since referenced objects are counted when
21437 pruning. The cache will therefore often prune out every unreferenced object if lots of
21438 windows/tabs are open.
21440 (4) Consolidated the request methods for various types of resources to go through a single
21441 requestResource bottleneck function.
21443 (5) deref on CachedResource is no longer virtual, since the implementation in every subclass was
21446 (6) Changed "object" to "resource" everywhere.
21448 (7) The Cache is now an actual object, obtained via cache().
21450 (8) Fixed bugs with the autoload images preference so that it would really work properly when disabled
21453 (9) Tweaked ImageDocuments to set up the status properly for the CachedResource that they use.
21455 (10) Fixed the LRU-SP algorithm so that the LRU aspect really kicks in (by leaving the live objects
21456 in the LRU lists). Also fixed a bug with the "-SP" part of the algorithm where the access count was
21457 being incorrectly weighted too much due to a math error.
21459 (11) Fixed a bug where the old cache could grow without bound because it didn't know anything about
21460 the size of referenced resources.
21462 Reviewed by Maciej, bradee-oh
21464 * bridge/mac/WebCoreCache.mm:
21465 (+[WebCoreCache statistics]):
21466 (+[WebCoreCache empty]):
21467 (+[WebCoreCache setDisabled:]):
21468 * bridge/mac/WebCoreFrameBridge.mm:
21469 (-[WebCoreFrameBridge initMainFrameWithPage:]):
21470 (-[WebCoreFrameBridge getData:andResponse:forURL:]):
21471 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]):
21472 * css/CSSImageValue.cpp:
21473 (WebCore::CSSImageValue::image):
21474 * dom/XMLTokenizer.cpp:
21475 (WebCore::openFunc):
21476 * html/HTMLImageLoader.cpp:
21477 (WebCore::HTMLImageLoader::updateFromElement):
21478 * loader/Cache.cpp:
21480 (WebCore::Cache::Cache):
21481 (WebCore::createResource):
21482 (WebCore::Cache::requestResource):
21483 (WebCore::Cache::resourceForURL):
21484 (WebCore::Cache::prune):
21485 (WebCore::Cache::setMaximumSize):
21486 (WebCore::Cache::remove):
21487 (WebCore::Cache::addDocLoader):
21488 (WebCore::Cache::removeDocLoader):
21489 (WebCore::fastLog2):
21490 (WebCore::Cache::lruListFor):
21491 (WebCore::Cache::removeFromLRUList):
21492 (WebCore::Cache::insertInLRUList):
21493 (WebCore::Cache::resourceAccessed):
21494 (WebCore::Cache::adjustSize):
21495 (WebCore::Cache::getStatistics):
21496 (WebCore::Cache::setDisabled):
21498 (WebCore::LRUList::LRUList):
21499 (WebCore::Cache::loader):
21500 (WebCore::Cache::maximumSize):
21501 (WebCore::Cache::disabled):
21502 (WebCore::Cache::addToLiveObjectSize):
21503 (WebCore::Cache::removeFromLiveObjectSize):
21504 (WebCore::Cache::TypeStatistic::TypeStatistic):
21505 * loader/CachedCSSStyleSheet.cpp:
21506 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
21507 * loader/CachedCSSStyleSheet.h:
21508 * loader/CachedImage.cpp:
21509 (WebCore::CachedImage::CachedImage):
21510 (WebCore::CachedImage::~CachedImage):
21511 (WebCore::brokenImage):
21512 (WebCore::nullImage):
21513 (WebCore::CachedImage::image):
21514 (WebCore::CachedImage::data):
21515 * loader/CachedImage.h:
21516 (WebCore::CachedImage::stillNeedsLoad):
21517 * loader/CachedResource.cpp:
21518 (WebCore::CachedResource::CachedResource):
21519 (WebCore::CachedResource::~CachedResource):
21520 (WebCore::CachedResource::finish):
21521 (WebCore::CachedResource::setExpireDate):
21522 (WebCore::CachedResource::isExpired):
21523 (WebCore::CachedResource::setRequest):
21524 (WebCore::CachedResource::ref):
21525 (WebCore::CachedResource::deref):
21526 (WebCore::CachedResource::setSize):
21527 * loader/CachedResource.h:
21528 (WebCore::CachedResource::):
21529 (WebCore::CachedResource::setCharset):
21530 (WebCore::CachedResource::url):
21531 (WebCore::CachedResource::type):
21532 (WebCore::CachedResource::referenced):
21533 (WebCore::CachedResource::count):
21534 (WebCore::CachedResource::status):
21535 (WebCore::CachedResource::size):
21536 (WebCore::CachedResource::isLoaded):
21537 (WebCore::CachedResource::setLoading):
21538 (WebCore::CachedResource::isImage):
21539 (WebCore::CachedResource::accessCount):
21540 (WebCore::CachedResource::increaseAccessCount):
21541 (WebCore::CachedResource::setInCache):
21542 (WebCore::CachedResource::inCache):
21543 (WebCore::CachedResource::cachePolicy):
21544 (WebCore::CachedResource::response):
21545 (WebCore::CachedResource::allData):
21546 (WebCore::CachedResource::canDelete):
21547 (WebCore::CachedResource::schedule):
21548 (WebCore::CachedResource::accept):
21549 (WebCore::CachedResource::setAccept):
21550 * loader/CachedScript.cpp:
21551 (WebCore::CachedScript::CachedScript):
21552 * loader/CachedScript.h:
21553 * loader/CachedXBLDocument.cpp:
21554 * loader/CachedXBLDocument.h:
21555 * loader/CachedXSLStyleSheet.cpp:
21556 (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet):
21557 * loader/CachedXSLStyleSheet.h:
21558 * loader/DocLoader.cpp:
21559 (WebCore::DocLoader::DocLoader):
21560 (WebCore::DocLoader::~DocLoader):
21561 (WebCore::DocLoader::checkForReload):
21562 (WebCore::DocLoader::requestImage):
21563 (WebCore::DocLoader::requestCSSStyleSheet):
21564 (WebCore::DocLoader::requestScript):
21565 (WebCore::DocLoader::requestXSLStyleSheet):
21566 (WebCore::DocLoader::requestXBLDocument):
21567 (WebCore::DocLoader::requestResource):
21568 (WebCore::DocLoader::setAutoLoadImages):
21569 (WebCore::DocLoader::removeCachedResource):
21570 * loader/DocLoader.h:
21571 (WebCore::DocLoader::cachedResource):
21572 (WebCore::DocLoader::allCachedResources):
21573 (WebCore::DocLoader::autoLoadImages):
21574 (WebCore::DocLoader::cachePolicy):
21575 (WebCore::DocLoader::expireDate):
21576 (WebCore::DocLoader::frame):
21577 (WebCore::DocLoader::doc):
21578 (WebCore::DocLoader::loadInProgress):
21579 * loader/ImageDocument.cpp:
21580 (WebCore::ImageTokenizer::finish):
21581 * loader/loader.cpp:
21582 (WebCore::Loader::receivedAllData):
21583 (WebCore::Loader::cancelRequests):
21584 * loader/mac/LoaderFunctionsMac.mm:
21585 (WebCore::NumberOfPendingOrLoadingRequests):
21586 (WebCore::CheckCacheObjectStatus):
21588 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
21589 (WebCore::Frame::Frame):
21590 (WebCore::Frame::stopLoading):
21591 (WebCore::Frame::setAutoLoadImages):
21592 (WebCore::Frame::autoLoadImages):
21593 (WebCore::Frame::begin):
21594 (WebCore::Frame::checkCompleted):
21595 (WebCore::Frame::reparseConfiguration):
21597 * xml/XSLTProcessor.cpp:
21598 (WebCore::docLoaderFunc):
21599 * xml/xmlhttprequest.cpp:
21600 (WebCore::XMLHttpRequest::send):
21602 2006-10-18 Maciej Stachowiak <mjs@apple.com>
21606 - remove vestiges of KXMLCore name (former name of WTF).
21610 2006-10-18 Geoffrey Garen <ggaren@apple.com>
21614 Fixed http://bugs.webkit.org/show_bug.cgi?id=11222
21616 Some global JS objects lacked references to their property hashtables,
21617 so for-in enumeration didn't work. I added the references, and then removed
21618 a few bogus properties from the tables. The bogus ones got in there through
21621 We should come up with some solution to these hand-written bindings bugs.
21622 Maybe we could use a script to autogenerate them or something.
21624 * bindings/js/kjs_window.cpp:
21626 (KJS::History::getValueProperty):
21628 2006-10-18 Adam Roben <aroben@apple.com>
21632 Change Shift-Tab to generate keyIdentifier U+000009 (Tab) instead of
21633 U+000019 (Backtab). This matches our windowsKeyCode for this key
21636 * platform/mac/KeyEventMac.mm:
21637 (WebCore::keyIdentifierForKeyEvent):
21639 2006-10-18 Steve Falkenburg <sfalken@apple.com>
21641 Reviewed by Adam, Brady.
21645 * platform/cf/ResourceLoaderCFNet.cpp:
21646 (WebCore::didFinishLoading):
21647 (WebCore::didFail):
21648 (WebCore::didReceiveChallenge):
21649 (WebCore::runLoaderThread):
21650 (WebCore::ResourceLoader::start):
21651 (WebCore::ResourceLoader::cancel):
21653 2006-10-18 Timothy Hatcher <timothy@apple.com>
21657 <rdar://problem/4752138> Manipulating popup in HTML page crashed Xcode
21659 - Store the Mac popup button cell as a RetainPtr to prevent GC collection.
21660 - Convert more ObjC local statics and member variables to use RetainPtr.
21661 - Convert more CFRetain/CFRelease to HardRetain/HardRelease.
21663 * bindings/objc/DOM.mm:
21664 (ObjCNodeFilterCondition::ObjCNodeFilterCondition): use HardRetain and not CFRetain
21665 (ObjCNodeFilterCondition::~ObjCNodeFilterCondition): use HardRelease and not CFRelease
21666 * bridge/mac/AXObjectCacheMac.mm:
21667 (WebCore::AXObjectCache::~AXObjectCache): use HardRelease and not CFRelease
21668 (WebCore::AXObjectCache::get): use HardRetain and not CFRetain
21669 (WebCore::AXObjectCache::remove): use HardRelease and not CFRelease
21670 * bridge/mac/WebCoreFrameBridge.mm:
21671 (+[WebCoreFrameBridge supportedImageResourceMIMETypes]): use RetainPtr
21672 (+[WebCoreFrameBridge supportedImageMIMETypes]): ditto
21673 * bridge/mac/WebCoreIconDatabaseBridge.mm:
21674 (+[WebCoreIconDatabaseBridge sharedInstance]): use RetainPtr
21675 * platform/PopupMenu.h: renamed popup to m_popup and switched to RetainPtr<NSPopUpButtonCell>
21676 * platform/cf/RetainPtr.h:
21677 (WTF::::operator): implement a missing operator= template function
21678 * platform/mac/PopupMenuMac.mm:
21679 (WebCore::PopupMenu::PopupMenu): remove nil initialization
21680 (WebCore::PopupMenu::~PopupMenu): use .get(), remove release message and rename to m_popup
21681 (WebCore::PopupMenu::clear): use .get() when sending a message and rename to m_popup
21682 (WebCore::PopupMenu::populate): ditto
21683 (WebCore::PopupMenu::show): ditto
21684 (WebCore::PopupMenu::hide): ditto
21685 (WebCore::PopupMenu::addSeparator): ditto
21686 (WebCore::PopupMenu::addGroupLabel): ditto
21687 (WebCore::PopupMenu::addOption): ditto
21689 2006-10-18 Geoffrey Garen <ggaren@apple.com>
21693 Fixed <rdar://problem/3673233> JavaScript timers do not fire if controls
21694 are tracking or menus are down (run loop modes)
21696 I spent a few hours trying to write an automated test, but DRT doesn't
21697 seem to support it. Manual tests attached to related bugs.
21699 * bridge/mac/FrameMac.mm:
21700 (WebCore::FrameMac::passMouseDownEventToWidget):
21701 * platform/mac/SharedTimerMac.cpp:
21702 (WebCore::setSharedTimerFireTime):
21704 2006-10-18 Sam Weinig <sam.weinig@gmail.com>
21706 Reviewed by Maciej.
21708 More Win32 buildfix.
21710 * bridge/win/FrameWin.h:
21712 2006-10-18 Sam Weinig <sam.weinig@gmail.com>
21718 * bridge/win/BrowserExtensionWin.cpp:
21719 (WebCore::BrowserExtensionWin::BrowserExtensionWin):
21720 (WebCore::BrowserExtensionWin::createNewWindow):
21721 * bridge/win/BrowserExtensionWin.h:
21722 * bridge/win/FrameWin.cpp:
21723 (WebCore::FrameWin::createNewWindow):
21724 * bridge/win/FrameWin.h:
21725 * platform/win/CursorWin.cpp:
21726 * platform/win/TemporaryLinkStubs.cpp:
21727 (Image::getHBITMAP):
21729 2006-10-18 Justin Garcia <justin.garcia@apple.com>
21731 Reviewed by harrison
21733 <rdar://problem/4784823>
21734 GMail Editor: Hang occurs when removing list styling on text in a rich text message
21736 List removal moves the contents of every list item out of the list it's
21737 in. When the code tried to move the contents of an empty list item (an li
21738 with no child nodes, not even a placeholder br), moveParagraph didn't prune
21739 the li, like it would if the li had a placeholder inside it. So the list
21740 removal code went into an infinite loop, continually attempting to de-list
21741 an empty list item.
21743 * editing/CompositeEditCommand.cpp:
21744 (WebCore::CompositeEditCommand::moveParagraphs): If the selection
21745 to move was empty and in an empty block that doesn't require a
21746 placeholder to prop itself open (like a bordered div or an li),
21747 remove it during the move.
21749 2006-10-18 Adele Peterson <adele@apple.com>
21753 - Fixed http://bugs.webkit.org/show_bug.cgi?id=11343
21754 REGRESSION (r16975): fast/events/objc-event-api is failing
21756 When I moved the autoscroll code from FrameMac to Frame, I mistakingly changed the order of
21757 a call to invalidateClick. This change moves it back to the sequence that existed before. This allows
21758 the click count to get properly reset during a selection.
21760 * page/Frame.cpp: (WebCore::Frame::handleMouseMoveEvent):
21762 2006-10-17 Geoffrey Garen <ggaren@apple.com>
21764 Reviewed by Anders.
21766 Factored common scaling code into a helper function.
21768 * platform/mac/ScreenMac.mm:
21770 (WebCore::scaleScreenRectToPageCoordinates):
21771 (WebCore::scalePageRectToScreenCoordinates):
21773 2006-10-17 Steve Falkenburg <sfalken@apple.com>
21777 * bridge/win/BrowserExtensionWin.cpp:
21778 (WebCore::BrowserExtensionWin::createNewWindow):
21779 * bridge/win/BrowserExtensionWin.h:
21780 * bridge/win/FrameWin.cpp:
21781 (WebCore::FrameWin::createNewWindow):
21782 * bridge/win/FrameWin.h:
21783 * platform/gdk/BrowserExtensionGdk.h:
21784 * platform/gdk/TemporaryLinkStubs.cpp:
21785 (BrowserExtensionGdk::createNewWindow):
21786 * platform/qt/BrowserExtensionQt.cpp:
21787 (WebCore::BrowserExtensionQt::createNewWindow):
21788 * platform/qt/BrowserExtensionQt.h:
21790 2006-10-17 Geoffrey Garen <ggaren@apple.com>
21792 Reviewed by Anders.
21794 Renamed WindowArgs to WindowFeatures, and moved it into its own header.
21795 ("Features" is the term of art in IE documentation. "Args" is pirate
21798 * WebCore.xcodeproj/project.pbxproj:
21799 * bindings/js/kjs_window.cpp:
21800 (KJS::createNewWindow):
21801 (KJS::showModalDialog):
21802 (KJS::setWindowFeature):
21803 (KJS::parseWindowFeatures):
21804 (KJS::constrainToVisible):
21805 (KJS::WindowFunc::callAsFunction):
21806 * bridge/BrowserExtension.h:
21807 * bridge/WindowFeatures.h: Added.
21808 * bridge/mac/BrowserExtensionMac.h:
21809 * bridge/mac/BrowserExtensionMac.mm:
21810 (WebCore::BrowserExtensionMac::createNewWindow):
21812 2006-10-17 Sam Weinig <sam.weinig@gmail.com>
21816 Patch for http://bugs.webkit.org/show_bug.cgi?id=11268
21817 Implement the Objective-C DOM bindings for SVGNumber, SVGRect, and SVGPoint
21819 - Adds implementation for DOMSVGNumber, DOMSVGRect, and DOMSVGPoint.
21821 - Moves the contents of ksvg/bindings/js/ to bindings/js/.
21823 - Moves SVGZoomEvent.idl from ksvg/svg/ to ksvg/events/.
21825 - Adds isSVGColor() and isSVGPaint() methods to StyleBase, matching
21826 the other CSSValue classing, and allowing the bindings to allocate
21829 - Removes #ifdefs around the getBBox() method in SVGLocatable.idl allowing
21830 generation for Objective-C.
21832 - Assorted style cleanups.
21834 * DerivedSources.make:
21835 * WebCore.xcodeproj/project.pbxproj:
21836 * bindings/objc/DOMCSS.mm:
21837 (+[DOMCSSValue _CSSValueWith:WebCore::]):
21838 * bindings/objc/DOMEvents.mm:
21839 (+[DOMEvent _eventWith:WebCore::]):
21840 * bindings/objc/DOMSVG.h:
21841 * bindings/objc/DOMSVGNumber.mm:
21842 (-[DOMSVGNumber dealloc]):
21843 (-[DOMSVGNumber finalize]):
21844 (-[DOMSVGNumber value]):
21845 (-[DOMSVGNumber setValue:]):
21846 (-[DOMSVGNumber _SVGNumber]):
21847 (-[DOMSVGNumber _initWithFloat:]):
21848 (+[DOMSVGNumber _SVGNumberWith:]):
21849 * bindings/objc/DOMSVGPoint.mm:
21850 (-[DOMSVGPoint dealloc]):
21851 (-[DOMSVGPoint finalize]):
21852 (-[DOMSVGPoint x]):
21853 (-[DOMSVGPoint setX:]):
21854 (-[DOMSVGPoint y]):
21855 (-[DOMSVGPoint setY:]):
21856 (-[DOMSVGPoint WebCore::]):
21857 (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
21858 (+[DOMSVGPoint _SVGPointWith:WebCore::]):
21859 * bindings/objc/DOMSVGRect.mm:
21860 (-[DOMSVGRect dealloc]):
21861 (-[DOMSVGRect finalize]):
21863 (-[DOMSVGRect setX:]):
21865 (-[DOMSVGRect setY:]):
21866 (-[DOMSVGRect width]):
21867 (-[DOMSVGRect setWidth:]):
21868 (-[DOMSVGRect height]):
21869 (-[DOMSVGRect setHeight:]):
21870 (-[DOMSVGRect WebCore::]):
21871 (-[DOMSVGRect _initWithFloatRect:WebCore::]):
21872 (+[DOMSVGRect _SVGRectWith:WebCore::]):
21873 * bindings/scripts/CodeGeneratorObjC.pm:
21875 (WebCore::StyleBase::isSVGColor):
21876 (WebCore::StyleBase::isSVGPaint):
21877 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Removed.
21878 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Removed.
21879 * ksvg2/bindings/js/JSSVGNumber.cpp: Removed.
21880 * ksvg2/bindings/js/JSSVGNumber.h: Removed.
21881 * ksvg2/bindings/js/JSSVGPoint.cpp: Removed.
21882 * ksvg2/bindings/js/JSSVGPoint.h: Removed.
21883 * ksvg2/bindings/js/JSSVGRect.cpp: Removed.
21884 * ksvg2/bindings/js/JSSVGRect.h: Removed.
21885 * ksvg2/svg/SVGColor.h:
21886 (WebCore::SVGColor::isSVGColor):
21887 * ksvg2/svg/SVGFECompositeElement.idl:
21888 * ksvg2/svg/SVGFEFloodElement.idl:
21889 * ksvg2/svg/SVGLocatable.idl:
21890 * ksvg2/svg/SVGMarkerElement.idl:
21891 * ksvg2/svg/SVGPaint.h:
21892 (WebCore::SVGPaint::isSVGPaint):
21893 * ksvg2/svg/SVGRectElement.idl:
21894 * ksvg2/svg/SVGZoomEvent.idl: Removed.
21896 2006-10-17 David Hyatt <hyatt@apple.com>
21898 Prepare for the elimination of the RenderLayer for <html> elements. The layer is still present,
21899 but this patch makes everything work without a root layer being around.
21903 * rendering/RenderBlock.cpp:
21904 (WebCore::RenderBlock::paint):
21905 (WebCore::RenderBlock::paintChildren):
21906 (WebCore::RenderBlock::nodeAtPoint):
21907 * rendering/RenderLayer.cpp:
21908 (WebCore::frameVisibleRect):
21909 (WebCore::RenderLayer::hitTest):
21910 (WebCore::RenderLayer::hitTestLayer):
21911 (WebCore::RenderLayer::intersectsDamageRect):
21912 * rendering/RenderObject.cpp:
21913 (WebCore::RenderObject::setInnerNode):
21914 * rendering/RenderView.cpp:
21915 (WebCore::RenderView::paint):
21917 2006-10-17 David Hyatt <hyatt@apple.com>
21919 Back out my previous patch to the WebCore memory cache.
21921 * loader/Cache.cpp:
21922 (WebCore::Cache::flush):
21923 (WebCore::Cache::setSize):
21924 (WebCore::Cache::getLRUListFor):
21925 (WebCore::Cache::removeFromLRUList):
21926 (WebCore::Cache::insertInLRUList):
21928 * loader/CachedCSSStyleSheet.cpp:
21929 (WebCore::CachedCSSStyleSheet::deref):
21930 * loader/CachedCSSStyleSheet.h:
21931 * loader/CachedImage.cpp:
21932 (WebCore::CachedImage::deref):
21933 * loader/CachedImage.h:
21934 * loader/CachedResource.cpp:
21935 (WebCore::CachedResource::setRequest):
21936 (WebCore::CachedResource::deref):
21937 * loader/CachedResource.h:
21938 (WebCore::CachedResource::allowInLRUList):
21939 * loader/CachedScript.cpp:
21940 (WebCore::CachedScript::deref):
21941 * loader/CachedScript.h:
21942 * loader/CachedXBLDocument.cpp:
21943 (WebCore::CachedXBLDocument::deref):
21944 * loader/CachedXBLDocument.h:
21945 * loader/CachedXSLStyleSheet.cpp:
21946 (WebCore::CachedXSLStyleSheet::deref):
21947 * loader/CachedXSLStyleSheet.h:
21949 2006-10-17 Oliver Hunt <oliver@apple.com>
21951 Reviewed by Anders.
21953 Make north and east resize cursors use correct image
21955 * platform/win/CursorWin.cpp:
21956 (WebCore::eastResizeCursor):
21957 (WebCore::northResizeCursor):
21959 2006-10-17 Oliver Hunt <oliver@apple.com>
21963 Various cursor fixes
21965 * page/FrameView.cpp:
21966 (WebCore::FrameView::handleMouseMoveEvent):
21967 * platform/Cursor.h:
21968 * platform/mac/CursorMac.mm:
21969 (WebCore::pointerCursor):
21970 * platform/win/CursorWin.cpp:
21971 (WebCore::supportsAlphaCursors):
21972 (WebCore::Cursor::Cursor):
21973 (WebCore::Cursor::~Cursor):
21974 (WebCore::pointerCursor):
21976 2006-10-17 Justin Garcia <justin.garcia@apple.com>
21978 Reviewed by harrison
21980 <rdar://problem/4776665>
21981 REGRESSION: In Mail, caret is visible when the message body isn't focused
21984 (WebCore::Frame::paintCaret): If a caret blink timer is ever on in error
21985 (like when the frame that contains the caret isn't focused) then we don't
21986 want to paint the caret. We should eventually move to using a single bool
21987 for caret painting.
21989 2006-10-17 Justin Garcia <justin.garcia@apple.com>
21991 Reviewed by harrison
21993 <rdar://problem/4774354>
21994 REGRESSION: In Gmail, caret reappears when dragging a selection over some text in the message body
21996 Functions call recomputCaretRect to see if the caret rect has changed,
21997 and, if it has, they invalidate (repaint) it. recomputeCaretRect was
21998 returning false if the caret turned into a range selection or was blown
22001 * editing/SelectionController.cpp:
22002 (WebCore::SelectionController::recomputeCaretRect): Don't early return if
22003 !isCaret(). Obtain the FrameView* using the m_frame pointer, because m_sel
22006 2006-10-17 Geoffrey Garen <ggaren@apple.com>
22010 BrowserExtension cleanup.
22012 - Removed unnecessary #include of BrowserExtension in Frame.h, added
22013 #includes to compensate in other files.
22015 - Removed unused versions of createNewWindow.
22017 * bindings/js/kjs_window.cpp:
22018 * bridge/BrowserExtension.h:
22019 * bridge/mac/BrowserExtensionMac.h:
22020 * bridge/mac/BrowserExtensionMac.mm:
22021 (WebCore::BrowserExtensionMac::createNewWindow):
22022 * bridge/mac/WebCoreFrameBridge.mm:
22023 * html/HTMLFormElement.cpp:
22024 * loader/mac/LoaderFunctionsMac.mm:
22026 * page/FramePrivate.h:
22028 2006-10-15 Geoffrey Garen <ggaren@apple.com>
22032 - Fixed "FIXME: Violates Liskov Substitution principle."
22034 IFRAME was never a true subclass of FRAME, since they disagreed on a
22035 number of behaviors, which, confusingly, IFRAME just overrode and contradicted.
22037 The fix here is to factor out things common to IFRAME and FRAME into a
22038 common base class, HTMLFrameElementBase.
22040 I also changed some " *" to "* " and added #includes in files that implicitly
22041 assumed that HTMLIFrameElement.h #included HTMLFrameElement.h.
22043 2006-10-16 Justin Garcia <justin.garcia@apple.com>
22045 Reviewed by sullivan
22047 <rdar://problem/4776765>
22048 REGRESSION: Caret's ghost left behind after inserting a paragraph separator (11237)
22050 We set m_needsLayout to false and call caretRect() in the hopes that it will give us
22051 the old caret rect. It in fact corrects the caret rect for an offset that it
22052 believes is due to scrolling but which is actually due to a change in selection
22053 without an accompanying layout. So it returns the new caret rect regardless of
22054 what m_needsLayout is set to.
22056 * editing/SelectionController.cpp:
22057 (WebCore::repaintRectForCaret): Moved the code from caretRepaintRect that
22058 adds a one pixel slop to this new function.
22059 (WebCore::SelectionController::caretRepaintRect): Moved this code to
22060 repaintRectForCaret.
22061 (WebCore::SelectionController::recomputeCaretRect): Compare the old
22062 caret rect to the new one that's computed with a fresh layout. If
22063 they are different, invalidate both repaint rects.
22065 2006-10-17 David Harrison <harrison@apple.com>
22069 <rdar://problem/4770453> VO not honoring secure edit fields in web pages
22071 * bridge/mac/WebCoreAXObject.mm:
22072 (-[WebCoreAXObject isPasswordField]):
22073 New. Checks for input with inputType() of PASSWORD.
22075 (-[WebCoreAXObject subrole]):
22076 Returns NSAccessibilitySecureTextFieldSubrole if [self isPasswordField].
22078 (-[WebCoreAXObject roleDescription]):
22079 Pass [self subrole] instead of nil when calling NSAccessibilityRoleDescription.
22081 (-[WebCoreAXObject value]):
22082 Return nil if [self isPasswordField].
22084 (-[WebCoreAXObject accessibilityAttributeNames]):
22085 Return generic attributes if [self isPasswordField].
22087 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
22088 Return empty array if [self isPasswordField].
22090 2006-10-17 David Hyatt <hyatt@apple.com>
22092 Fix "flash to white' problem on yahoo.com as it finishes loading. Refine the FOUC suppression
22093 code so that it will only run if the body still has no renderer.
22095 * dom/Document.cpp:
22096 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
22098 2006-10-17 David Hyatt <hyatt@apple.com>
22100 Fix a bug where the WebCore memory cache could grow without bound during extended browsing
22105 * loader/Cache.cpp:
22106 (WebCore::Cache::flush):
22107 (WebCore::Cache::setSize):
22108 (WebCore::Cache::getLRUListFor):
22109 (WebCore::Cache::removeFromLRUList):
22110 (WebCore::Cache::insertInLRUList):
22112 * loader/CachedCSSStyleSheet.cpp:
22113 * loader/CachedCSSStyleSheet.h:
22114 * loader/CachedImage.cpp:
22115 * loader/CachedImage.h:
22116 * loader/CachedResource.cpp:
22117 (WebCore::CachedResource::setRequest):
22118 (WebCore::CachedResource::deref):
22119 * loader/CachedResource.h:
22120 (WebCore::CachedResource::allowInLRUList):
22121 * loader/CachedScript.cpp:
22122 * loader/CachedScript.h:
22123 * loader/CachedXBLDocument.cpp:
22124 * loader/CachedXBLDocument.h:
22125 * loader/CachedXSLStyleSheet.cpp:
22126 * loader/CachedXSLStyleSheet.h:
22128 2006-10-13 Justin Garcia <justin.garcia@apple.com>
22130 Reviewed by harrison
22132 <rdar://problem/3655385>
22133 Editing: -indent: method unimplemented
22135 Added Frame and bridge methods.
22137 * bridge/mac/WebCoreFrameBridge.h:
22138 * bridge/mac/WebCoreFrameBridge.mm:
22139 (-[WebCoreFrameBridge indent]):
22140 (-[WebCoreFrameBridge outdent]):
22142 (WebCore::Frame::indent):
22143 (WebCore::Frame::outdent):
22146 2006-10-16 Adam Roben <aroben@apple.com>
22150 More menulist cleanup/tweaking.
22152 * html/HTMLSelectElement.cpp:
22153 (WebCore::HTMLSelectElement::setSelectedIndex): Renamed 'index'
22154 parameter to 'optionIndex' for clarity.
22155 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Skip over
22156 items that are not enabled <option> elements when using arrow keys, and
22157 make sure we pass an option index to setSelectedIndex.
22158 * platform/PopupMenu.h:
22159 (WebCore::PopupMenu::setWasClicked): Specify default argument.
22160 * rendering/RenderMenuList.cpp:
22161 (WebCore::RenderMenuList::setTextFromOption): Strip whitespace from
22162 option text before setting the control text so that options within
22163 <optgroup>s don't appear indented in the actual control.
22165 2006-10-16 Sam Weinig <sam.weinig@gmail.com>
22171 * WebCore.vcproj/WebCore/WebCore.vcproj:
22172 * bridge/win/BrowserExtensionWin.cpp:
22173 (WebCore::BrowserExtensionWin::createNewWindow):
22174 * bridge/win/FrameWin.cpp:
22175 (WebCore::FrameWin::urlSelected):
22176 (WebCore::FrameWin::submitForm):
22177 (WebCore::FrameWin::createNewWindow):
22178 * bridge/win/FrameWin.h:
22179 * loader/loader.cpp:
22180 (WebCore::Loader::receivedResponse):
22181 * platform/win/GraphicsContextWin.cpp:
22182 (WebCore::GraphicsContext::getWindowsContext):
22183 (WebCore::GraphicsContext::releaseWindowsContext):
22184 * platform/win/TemporaryLinkStubs.cpp:
22185 (FrameWin::openURLRequest):
22186 (WebCore::ServeSynchronousRequest):
22187 (WebCore::CheckIfReloading):
22188 (WebCore::IsResponseURLEqualToURL):
22189 (WebCore::ResponseMIMEType):
22190 (WebCore::ResponseIsMultipart):
22191 (WebCore::CacheObjectExpiresTime):
22192 (CachedResource::setResponse):
22193 (CachedResource::setAllData):
22194 * rendering/RenderThemeWin.cpp:
22195 (WebCore::doneDrawing):
22196 (WebCore::RenderThemeWin::paintButton):
22197 (WebCore::RenderThemeWin::paintTextField):
22199 2006-10-16 David Hyatt <hyatt@apple.com>
22201 Fix for bug 9347, positioned elements have the wrong containing block. This is a change from CSS2 to
22202 CSS2.1. In the absence of any other enclosing positioned elements, the containing block for a positioned
22203 element is the initial containing block (our RenderView).
22207 Test cases added to fast/block/positioning for quirks and strict modes.
22209 * rendering/RenderBlock.cpp:
22210 (WebCore::RenderBlock::lowestPosition):
22211 (WebCore::RenderBlock::rightmostPosition):
22212 (WebCore::RenderBlock::leftmostPosition):
22213 * rendering/RenderBox.cpp:
22214 (WebCore::RenderBox::containingBlockHeightForPositioned):
22215 (WebCore::RenderBox::calcAbsoluteVertical):
22216 * rendering/RenderObject.cpp:
22217 (WebCore::RenderObject::containingBlock):
22218 (WebCore::RenderObject::container):
22220 2006-10-15 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
22222 Reviewed by Anders.
22224 Misc Gdk/Linux build fixes.
22226 * platform/gdk/BrowserExtensionGdk.h:
22227 * platform/gdk/FrameGdk.cpp:
22228 (WebCore::FrameGdk::submitForm):
22229 (WebCore::FrameGdk::urlSelected):
22230 * platform/gdk/FrameGdk.h:
22231 * platform/gdk/RenderPopupMenuGdk.cpp:
22232 (WebCore::PopupMenu::PopupMenu):
22233 (WebCore::PopupMenu::~PopupMenu):
22234 (WebCore::PopupMenu::clear):
22235 (WebCore::PopupMenu::populate):
22236 (WebCore::PopupMenu::show):
22237 (WebCore::PopupMenu::hide):
22238 (WebCore::PopupMenu::addSeparator):
22239 (WebCore::PopupMenu::addGroupLabel):
22240 (WebCore::PopupMenu::addOption):
22241 * platform/gdk/RenderPopupMenuGdk.h:
22242 * platform/gdk/RenderThemeGdk.cpp:
22243 * platform/gdk/RenderThemeGdk.h:
22244 (WebCore::RenderThemeGdk::RenderThemeGdk):
22245 * platform/gdk/TemporaryLinkStubs.cpp:
22246 (BrowserExtensionGdk::createNewWindow):
22247 (BrowserExtensionGdk::BrowserExtensionGdk):
22248 (BrowserExtensionGdk::setTypedIconURL):
22249 (BrowserExtensionGdk::setIconURL):
22250 (BrowserExtensionGdk::getHistoryLength):
22251 (WebCore::CheckIfReloading):
22252 (WebCore::CacheObjectExpiresTime):
22253 (WebCore::ResponseURL):
22254 (WebCore::IsResponseURLEqualToURL):
22255 (WebCore::ResponseIsMultipart):
22256 (WebCore::ResponseMIMEType):
22257 (WebCore::CachedResource::setResponse):
22258 (WebCore::CachedResource::setAllData):
22259 (FileChooser::disconnectUploadControl):
22260 * rendering/RenderTheme.h:
22261 * rendering/RenderThemeMac.h:
22263 2006-10-15 Sam Weinig <sam.weinig@gmail.com>
22267 Fix for http://bugs.webkit.org/show_bug.cgi?id=11294
22268 Add getModifierState method to KeyboardEvent
22270 * bindings/objc/DOMEvents.h:
22271 * bindings/objc/DOMEvents.mm:
22272 * bindings/objc/PublicDOMInterfaces.h:
22273 * dom/KeyboardEvent.cpp:
22274 (WebCore::KeyboardEvent::getModifierState):
22275 * dom/KeyboardEvent.h:
22276 * dom/KeyboardEvent.idl:
22278 2006-10-15 Nikolas Zimmermann <zimmermann@kde.org>
22280 Reviewed and landed by ap.
22282 Changed PlatformResponse handling for Qt. Don't just store
22283 a QString object containing the data but a new PlatformResponseQt struct
22284 containing data and url, and store it as pointer. This is compatible
22285 to the OS X handling and removes the Qt plaform specific hacks from
22286 CachedCSSStyleSheet, CachedResource & loader.
22288 Add new file LoaderFunctionsQt, similar to LoaderFunctionsMac, and move
22289 all methods from TemporaryLinkStubs related to loading in there, and implement
22290 some like ServeSynchronousRequest (yay for xslt handling!).
22293 * loader/CachedCSSStyleSheet.cpp:
22294 (WebCore::CachedCSSStyleSheet::checkNotify):
22295 * loader/CachedResource.h:
22296 (WebCore::CachedResource::CachedResource):
22297 * loader/loader.cpp:
22298 (WebCore::Loader::receivedResponse):
22299 * platform/ResourceLoaderClient.h:
22300 * platform/ResourceLoaderInternal.h:
22301 * platform/qt/FrameQt.cpp:
22302 (WebCore::FrameQt::~FrameQt):
22303 (WebCore::FrameQt::createEmptyDocument):
22304 * platform/qt/FrameQt.h:
22305 (WebCore::QtFrame):
22306 * platform/qt/FrameQtClient.cpp:
22307 (WebCore::FrameQtClientDefault::setFrame):
22308 (WebCore::FrameQtClientDefault::openURL):
22309 (WebCore::FrameQtClientDefault::loadFinished):
22310 (WebCore::FrameQtClientDefault::receivedAllData):
22311 * platform/qt/FrameQtClient.h:
22312 * platform/qt/LoaderFunctionsQt.cpp: Added.
22313 (WebCore::ServeSynchronousRequest):
22314 (WebCore::NumberOfPendingOrLoadingRequests):
22315 (WebCore::CheckIfReloading):
22316 (WebCore::CheckCacheObjectStatus):
22317 (WebCore::IsResponseURLEqualToURL):
22318 (WebCore::ResponseURL):
22319 (WebCore::ResponseMIMEType):
22320 (WebCore::ResponseIsMultipart):
22321 (WebCore::CacheObjectExpiresTime):
22322 (WebCore::CachedResource::setResponse):
22323 (WebCore::CachedResource::setAllData):
22324 * platform/qt/ResourceLoaderManager.cpp:
22325 (WebCore::ResourceLoaderManager::remove):
22326 * platform/qt/ResourceLoaderQt.cpp:
22327 (WebCore::ResourceLoader::~ResourceLoader):
22328 (WebCore::ResourceLoader::start):
22329 (WebCore::ResourceLoader::assembleResponseHeaders):
22330 (WebCore::ResourceLoader::receivedResponse):
22331 * platform/qt/TemporaryLinkStubs.cpp:
22333 2006-10-14 Rob Buis <buis@kde.org>
22337 http://bugs.webkit.org/show_bug.cgi?id=11217
22338 Cleanup svg coding style
22340 Cleanup coding style in svg basic datastructure classes.
22342 * ksvg2/svg/SVGAngle.cpp:
22343 (WebCore::SVGAngle::valueAsString):
22344 (WebCore::SVGAngle::context):
22345 (WebCore::SVGAngle::setContext):
22346 * ksvg2/svg/SVGAngle.h:
22347 * ksvg2/svg/SVGColor.cpp:
22348 * ksvg2/svg/SVGColor.h:
22349 * ksvg2/svg/SVGElement.cpp:
22350 (WebCore::SVGElement::ownerSVGElement):
22351 (WebCore::SVGElement::viewportElement):
22352 (WebCore::SVGElement::parseMappedAttribute):
22353 (WebCore::SVGElement::childShouldCreateRenderer):
22354 * ksvg2/svg/SVGElement.h:
22355 (WebCore::svg_dynamic_cast):
22356 * ksvg2/svg/SVGFitToViewBox.cpp:
22357 (WebCore::SVGFitToViewBox::parseViewBox):
22358 * ksvg2/svg/SVGFitToViewBox.h:
22359 * ksvg2/svg/SVGLangSpace.cpp:
22360 (WebCore::SVGLangSpace::parseMappedAttribute):
22361 * ksvg2/svg/SVGLangSpace.h:
22362 * ksvg2/svg/SVGLength.cpp:
22363 (WebCore::SVGLength::SVGLength):
22364 (WebCore::SVGLength::setValueAsString):
22365 (WebCore::SVGLength::dpi):
22366 (WebCore::SVGLength::updateValue):
22367 (WebCore::SVGLength::updateValueInSpecifiedUnits):
22368 (WebCore::SVGLength::context):
22369 (WebCore::SVGLength::setContext):
22370 * ksvg2/svg/SVGLength.h:
22371 * ksvg2/svg/SVGLengthList.cpp:
22372 * ksvg2/svg/SVGLengthList.h:
22373 * ksvg2/svg/SVGLocatable.cpp:
22374 (WebCore::SVGLocatable::nearestViewportElement):
22375 (WebCore::SVGLocatable::farthestViewportElement):
22376 (WebCore::SVGLocatable::getBBox):
22377 (WebCore::SVGLocatable::getCTM):
22378 (WebCore::SVGLocatable::getScreenCTM):
22379 * ksvg2/svg/SVGNumberList.cpp:
22380 * ksvg2/svg/SVGNumberList.h:
22381 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
22382 (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
22383 (WebCore::SVGPreserveAspectRatio::getCTM):
22384 * ksvg2/svg/SVGPreserveAspectRatio.h:
22385 * ksvg2/svg/SVGStringList.cpp:
22386 (WebCore::SVGStringList::reset):
22387 * ksvg2/svg/SVGStringList.h:
22388 * ksvg2/svg/SVGStylable.cpp:
22389 * ksvg2/svg/SVGStylable.h:
22390 * ksvg2/svg/SVGTests.cpp:
22391 (WebCore::SVGTests::requiredFeatures):
22392 (WebCore::SVGTests::requiredExtensions):
22393 (WebCore::SVGTests::systemLanguage):
22394 (WebCore::SVGTests::isValid):
22395 (WebCore::SVGTests::parseMappedAttribute):
22396 * ksvg2/svg/SVGTests.h:
22397 * ksvg2/svg/SVGTransformable.cpp:
22398 (WebCore::SVGTransformable::parseTransformAttribute):
22399 * ksvg2/svg/SVGTransformable.h:
22400 * ksvg2/svg/SVGURIReference.cpp:
22401 (WebCore::SVGURIReference::parseMappedAttribute):
22402 * ksvg2/svg/SVGZoomAndPan.cpp:
22403 (WebCore::SVGZoomAndPan::parseMappedAttribute):
22404 * ksvg2/svg/SVGZoomAndPan.h:
22406 2006-10-15 Nikolas Zimmermann <zimmermann@kde.org>
22408 Reviewed by Oliver.
22410 Implement some functions in FrameQt / ScrollViewQt.
22412 Added comments what needs to be done in quite some places,
22413 marked some functions as no-ops.
22416 * platform/qt/FrameQt.cpp:
22417 (WebCore::FrameQt::FrameQt):
22418 (WebCore::FrameQt::runJavaScriptConfirm):
22419 (WebCore::FrameQt::locationbarVisible):
22420 (WebCore::FrameQt::createFrame):
22421 (WebCore::FrameQt::passSubframeEventToSubframe):
22422 (WebCore::FrameQt::menubarVisible):
22423 (WebCore::FrameQt::personalbarVisible):
22424 (WebCore::FrameQt::statusbarVisible):
22425 (WebCore::FrameQt::toolbarVisible):
22426 (WebCore::FrameQt::markedTextRange):
22427 (WebCore::FrameQt::lastEventIsMouseUp):
22428 (WebCore::FrameQt::openURLRequest):
22429 (WebCore::FrameQt::scheduleClose):
22430 (WebCore::FrameQt::unfocusWindow):
22431 (WebCore::FrameQt::focusWindow):
22432 (WebCore::FrameQt::overrideMediaType):
22433 (WebCore::FrameQt::runJavaScriptPrompt):
22434 (WebCore::FrameQt::bindingRootObject):
22435 (WebCore::FrameQt::addPluginRootObject):
22436 (WebCore::FrameQt::registerCommandForUndo):
22437 (WebCore::FrameQt::registerCommandForRedo):
22438 (WebCore::FrameQt::clearUndoRedoOperations):
22439 (WebCore::FrameQt::respondToChangedSelection):
22440 (WebCore::FrameQt::respondToChangedContents):
22441 (WebCore::FrameQt::shouldChangeSelection):
22442 (WebCore::FrameQt::canGoBackOrForward):
22443 (WebCore::FrameQt::canPaste):
22444 (WebCore::FrameQt::canRedo):
22445 (WebCore::FrameQt::canUndo):
22446 * platform/qt/FrameQt.h:
22447 * platform/qt/FrameQtClient.cpp:
22448 (WebCore::FrameQtClientDefault::runJavaScriptAlert):
22449 (WebCore::FrameQtClientDefault::runJavaScriptConfirm):
22450 (WebCore::FrameQtClientDefault::runJavaScriptPrompt):
22451 (WebCore::FrameQtClientDefault::menubarVisible):
22452 (WebCore::FrameQtClientDefault::toolbarVisible):
22453 (WebCore::FrameQtClientDefault::statusbarVisible):
22454 (WebCore::FrameQtClientDefault::personalbarVisible):
22455 (WebCore::FrameQtClientDefault::locationbarVisible):
22456 * platform/qt/FrameQtClient.h:
22457 * platform/qt/ImageSourceQt.cpp:
22458 * platform/qt/RenderThemeQt.cpp:
22459 * platform/qt/ScrollViewQt.cpp:
22460 (WebCore::ScrollView::scrollPointRecursively):
22461 * platform/qt/TemporaryLinkStubs.cpp:
22462 (WebCore::CachedResource::setResponse):
22463 (WebCore::CachedResource::setAllData):
22465 2006-10-14 David Harrison <harrison@apple.com>
22469 <rdar://problem/4775213> REGRESSION: Can't from tab from last link on the page to URL address field
22470 <rdar://problem/4783926> REGRESSION: Typing tab key enters no text
22472 The problem is that EventTargetNode::defaultEventHandler() calls event->setDefaultHandled() regardless
22473 of whether frame->view()->advanceFocus() actually changed the focus.
22475 Trivial fix is to preventDefault() only if advanceFocus() returns true.
22477 * No test is possible because DumpRenderTree sets the WebView preference to
22478 tab to links, and that preference cannot be changed dynamically after
22479 the webview is initialized. Also, the "tab from last link" is not testable
22480 because DumpRenderTree uses the WebView for the whole window, so tabs can't
22481 shift focus out of the WebView regardless.
22483 * dom/EventTargetNode.cpp:
22484 (WebCore::EventTargetNode::defaultEventHandler):
22486 2006-10-14 Nikolas Zimmermann <zimmermann@kde.org>
22490 Fix Qt/Linux build & some little fixes:
22492 - Adapt to Maciej's FrameLoadRequest changes.
22493 - Fix response handling - don't try to compare with '0' - for us it's a non-ptr QString object.
22494 - Actually call setAllData from loader/loader.cpp (David Carson forgot that in his last commit)
22495 - Fix CacheObjectExpiresTime/ResponseIsMultipart signature.
22497 * loader/CachedCSSStyleSheet.cpp:
22498 (WebCore::CachedCSSStyleSheet::checkNotify):
22499 * loader/CachedResource.h:
22500 (WebCore::CachedResource::CachedResource):
22501 * loader/loader.cpp:
22502 (WebCore::Loader::receivedAllData):
22503 (WebCore::Loader::receivedResponse):
22504 * platform/qt/BrowserExtensionQt.cpp:
22505 (WebCore::BrowserExtensionQt::createNewWindow):
22506 * platform/qt/BrowserExtensionQt.h:
22507 * platform/qt/FrameQt.cpp:
22508 (WebCore::FrameQt::submitForm):
22509 (WebCore::FrameQt::urlSelected):
22510 (WebCore::FrameQt::openURLRequest):
22511 * platform/qt/FrameQt.h:
22512 * platform/qt/GraphicsContextQt.cpp:
22513 (WebCore::GraphicsContext::setURLForRect):
22514 * platform/qt/TemporaryLinkStubs.cpp:
22515 (WebCore::CacheObjectExpiresTime):
22516 (WebCore::ResponseIsMultipart):
22517 (WebCore::CachedResource::setResponse):
22518 (WebCore::CachedResource::setAllData):
22520 2006-10-14 David Carson <dacarson@gmail.com>
22522 Reviewed by Maciej.
22524 Fix: http://bugs.webkit.org/show_bug.cgi?id=11257
22525 Removed Mac platform dependance, changed WebCore functions to
22526 use PlatformResponse/PlatformData rather than NSURLResponse/
22529 * loader/CachedCSSStyleSheet.cpp:
22530 (WebCore::CachedCSSStyleSheet::checkNotify):
22531 * loader/CachedImage.cpp:
22532 (WebCore::CachedImage::createImage):
22533 * loader/CachedResource.cpp:
22534 (WebCore::CachedResource::~CachedResource):
22535 * loader/CachedResource.h:
22536 (WebCore::CachedResource::CachedResource):
22537 (WebCore::CachedResource::response):
22538 (WebCore::CachedResource::allData):
22539 * loader/LoaderFunctions.h:
22540 * loader/loader.cpp:
22541 (WebCore::Loader::receivedResponse):
22542 * loader/mac/LoaderFunctionsMac.mm:
22543 (WebCore::ResponseMIMEType):
22544 (WebCore::ResponseIsMultipart):
22545 (WebCore::CacheObjectExpiresTime):
22546 (WebCore::CachedResource::setResponse):
22547 (WebCore::CachedResource::setAllData):
22548 * platform/qt/TemporaryLinkStubs.cpp:
22549 (WebCore::CacheObjectExpiresTime):
22550 (WebCore::ResponseIsMultipart):
22551 (WebCore::ResponseMIMEType):
22552 (WebCore::CachedResource::setResponse):
22553 (WebCore::CachedResource::setAllData):
22554 * platform/win/TemporaryLinkStubs.cpp:
22555 (WebCore::CacheObjectExpiresTime):
22556 (WebCore::ResponseIsMultipart):
22557 (WebCore::ResponseMIMEType):
22558 (WebCore::CachedResource::setResponse):
22559 (WebCore::CachedResource::setAllData):
22561 2006-10-14 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
22563 Reviewed by Maciej.
22565 Fix GDK build by defining FrameGdkClient() constructor as non-virtual.
22566 Pure virtual classes require non-pure destructor, who knew.
22568 Make CURL networking dependent on USE(CURL) instead of PLATFORM(GDK),
22569 so that other platforms can also use CURL, if they wish.
22571 Silence compiler warning about unused variable in SharedTimerLinux.cpp
22573 * platform/ResourceLoaderInternal.h:
22574 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
22575 * platform/gdk/FrameGdk.h:
22576 (WebCore::FrameGdkClient::~FrameGdkClient):
22577 * platform/gdk/ResourceLoaderManager.cpp:
22578 (WebCore::ResourceLoaderManager::downloadTimerCallback):
22579 * platform/gdk/SharedTimerLinux.cpp:
22580 (WebCore::stopSharedTimer):
22582 2006-10-13 Beth Dakin <bdakin@apple.com>
22586 Build fix from my last check-in. Make hasOutlineAnnotation() non-
22587 inline so that we don't have to include Document.h in
22589 Doing so causes a build failure in WebKit, and it probably isn't a
22592 * rendering/RenderObject.cpp:
22593 (WebCore::RenderObject::hasOutlineAnnotation):
22594 * rendering/RenderObject.h:
22595 (WebCore::RenderObject::hasOutline):
22597 2006-10-13 Beth Dakin <bdakin@apple.com>
22599 Patch written mostly by Ken Kraisler, but also by me.
22603 Fix for http://bugs.webkit.org/show_bug.cgi?id=10216 and <rdar://
22604 problem/3391162> PDF created by printing should have live
22607 * platform/GraphicsContext.cpp:
22608 (WebCore::GraphicsContext::focusRingBoundingRect):
22609 * platform/GraphicsContext.h:
22610 * platform/cairo/GraphicsContextCairo.cpp:
22611 (WebCore::GraphicsContext::setURLForRect):
22612 * platform/cg/GraphicsContextCG.cpp:
22613 (WebCore::GraphicsContext::setURLForRect): Implement method to add
22614 URL link to PDF document.
22615 * rendering/InlineFlowBox.cpp:
22616 (WebCore::InlineFlowBox::paint): Ask hasOutline() instead of
22617 querying the outline width
22618 * rendering/RenderBlock.cpp:
22619 (WebCore::RenderBlock::paintObject): Same as above.
22620 * rendering/RenderFlow.cpp:
22621 (WebCore::RenderFlow::paintLines): Call the new paintOutline()
22622 (WebCore::RenderFlow::paintOutline): Take care of focus ring and
22623 pdf url rects, and outline painting.
22624 * rendering/RenderFlow.h:
22625 * rendering/RenderObject.cpp:
22626 (WebCore::RenderObject::addPDFURLRect): Declaration to apply a PDF
22627 link to a rectanglular region.
22628 (WebCore::RenderObject::paintOutline): Take care of pdf rects as
22629 well as focus ring painting.
22630 * rendering/RenderObject.h:
22631 (WebCore::RenderObject::hasOutlineAnnotation): Returns true is the
22632 element is a link and we are printing.
22633 (WebCore::RenderObject::hasOutline): Returns true is the style has
22634 an outline and hasOutlineAnnotation() is true.
22635 * rendering/RenderStyle.h:
22636 (WebCore::RenderStyle::hasOutline): Returns true if outlineWidth is
22637 greater than 0 and outlineStyle is greater than BHIDDEN.
22639 2006-10-13 Justin Garcia <justin.garcia@apple.com>
22641 Reviewed by ggaren and harrison
22643 <rdar://problem/4744008>
22644 9A270: Mail crashes when I try to paste large items from Safari
22646 * editing/ReplaceSelectionCommand.cpp:
22647 (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
22648 Even though we put nodes in the hash map in pre-order, they don't necessary
22649 come out of the iterator that way. If a node is a redundant style span
22650 and one of its pruned ancestors comes off the hash map after it, and that
22651 ancestor is a redundant style span or font tag, we will try to remove it
22652 even though it has already been removed and we'll crash.
22653 The test case added with the fix depends on our hash map implementation
22654 because it requires that a particular redundant style span come out of
22655 the iterator before its parent. So, it may eventually not provide
22656 coverage for the fix.
22658 2006-10-13 Maciej Stachowiak <mjs@apple.com>
22662 - split FrameLoadRequest off from ResourceRequest - it's a ResourceRequest plus frame name plus lockHistory bool
22664 * WebCore.xcodeproj/project.pbxproj:
22665 * bindings/js/kjs_window.cpp:
22666 (KJS::createNewWindow):
22667 (KJS::WindowFunc::callAsFunction):
22668 * bridge/BrowserExtension.h:
22669 * bridge/mac/BrowserExtensionMac.h:
22670 * bridge/mac/BrowserExtensionMac.mm:
22671 (WebCore::BrowserExtensionMac::createNewWindow):
22672 * bridge/mac/FrameMac.h:
22673 * bridge/mac/FrameMac.mm:
22674 (WebCore::FrameMac::submitForm):
22675 (WebCore::FrameMac::openURLRequest):
22676 (WebCore::FrameMac::urlSelected):
22677 * bridge/win/BrowserExtensionWin.h:
22679 (WebCore::Frame::changeLocation):
22680 (WebCore::Frame::urlSelected):
22681 (WebCore::Frame::requestFrame):
22682 (WebCore::Frame::submitForm):
22684 * page/FrameLoadRequest.h: Added.
22685 (WebCore::FrameLoadRequest::FrameLoadRequest):
22686 (WebCore::FrameLoadRequest::lockHistory):
22687 (WebCore::FrameLoadRequest::setLockHistory):
22688 * page/ResourceRequest.h:
22689 (WebCore::ResourceRequest::ResourceRequest):
22691 2006-10-13 John Sullivan <sullivan@apple.com>
22695 * loader/mac/WebFrameLoader.mm:
22696 (-[WebFrameLoader loadDocumentLoader:]):
22697 Replace ASSERT(!policyDocumentLoader) with code that handles this case. This can
22698 happen when loading a page during a decidePolicyForNavigationAction callback.
22700 2006-10-13 Dave Hyatt <hyatt@apple.com>
22702 Transparency layer work.
22706 * platform/GraphicsContext.h:
22707 * platform/cg/GraphicsContextCG.cpp:
22708 (WebCore::GraphicsContext::beginTransparencyLayer):
22709 (WebCore::GraphicsContext::endTransparencyLayer):
22710 * platform/cg/GraphicsContextPlatformPrivate.h:
22711 (WebCore::GraphicsContextPlatformPrivate::beginTransparencyLayer):
22712 (WebCore::GraphicsContextPlatformPrivate::endTransparencyLayer):
22714 2006-10-13 Rob Buis <buis@kde.org>
22718 http://bugs.webkit.org/show_bug.cgi?id=11217
22719 Cleanup svg coding style
22721 Cleanup coding style in svg paint server classes.
22723 * ksvg2/svg/SVGGradientElement.cpp:
22724 (WebCore::SVGGradientElement::SVGGradientElement):
22725 (WebCore::SVGGradientElement::parseMappedAttribute):
22726 (WebCore::SVGGradientElement::notifyAttributeChange):
22727 (WebCore::SVGGradientElement::canvasResource):
22728 (WebCore::SVGGradientElement::rebuildStops):
22729 * ksvg2/svg/SVGGradientElement.h:
22730 * ksvg2/svg/SVGLinearGradientElement.cpp:
22731 (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
22732 (WebCore::SVGLinearGradientElement::parseMappedAttribute):
22733 (WebCore::SVGLinearGradientElement::buildGradient):
22734 * ksvg2/svg/SVGLinearGradientElement.h:
22735 * ksvg2/svg/SVGPatternElement.cpp:
22736 (WebCore::SVGPatternElement::SVGPatternElement):
22737 (WebCore::SVGPatternElement::parseMappedAttribute):
22738 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
22739 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
22740 (WebCore::SVGPatternElement::notifyClientsToRepaint):
22741 (WebCore::SVGPatternElement::notifyAttributeChange):
22742 (WebCore::SVGPatternElement::canvasResource):
22743 (WebCore::SVGPatternElement::getCTM):
22744 * ksvg2/svg/SVGPatternElement.h:
22745 (WebCore::SVGPatternElement::rendererIsNeeded):
22746 * ksvg2/svg/SVGRadialGradientElement.cpp:
22747 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
22748 (WebCore::SVGRadialGradientElement::parseMappedAttribute):
22749 (WebCore::SVGRadialGradientElement::buildGradient):
22750 * ksvg2/svg/SVGRadialGradientElement.h:
22751 * ksvg2/svg/SVGStopElement.cpp:
22752 (WebCore::SVGStopElement::SVGStopElement):
22753 (WebCore::SVGStopElement::parseMappedAttribute):
22754 * ksvg2/svg/SVGStopElement.h:
22756 2006-10-13 Geoffrey Garen <ggaren@apple.com>
22758 Reviewed by Darin, John.
22760 - Merged more frame and iframe code
22761 - Fixed a bug where iframes returned incorrect values for renderer-dependent
22762 properties during javascript: loads because they didn't have renderers at
22765 PLT insists this is a small performance win. Don't believe its lies.
22767 * bindings/js/kjs_html.cpp:
22768 (KJS::JSHTMLElement::frameGetter): Renamed frameWidth and frameHeight to
22769 width and height, for consistency with the rest of the DOM.
22770 * dom/ContainerNode.cpp:
22771 (WebCore::ContainerNode::queuePostAttachCallback): Added a post-attach callback
22772 queue that gets drained after the render tree is fully constructed. Currently,
22773 this is only used for frame loading.
22774 (WebCore::ContainerNode::attach):
22775 * dom/ContainerNode.h:
22776 * html/HTMLFrameElement.cpp:
22777 (WebCore::HTMLFrameElement::insertedIntoDocument): Removed frame loading from
22778 attach() because loading iframes during attach() causes a crash.
22779 Moved frame loading logic into insertedIntoDocument(). That's a more
22780 logical place for it because document insertion is what
22781 triggers frame loading. Made frame loading a post-attach callback, instead
22782 of an immediate action, to fix the incorrect values bug.
22783 (WebCore::HTMLFrameElement::attach): Added setWidget call that used to be
22784 in HTMLIFrameElement::attach. IFRAME requires this call. FRAME will soon
22785 require this call, once I remove the call from WebKit.
22786 (WebCore::HTMLFrameElement::setLocation):
22787 (WebCore::HTMLFrameElement::width):
22788 (WebCore::HTMLFrameElement::height):
22789 * html/HTMLFrameElement.h: Made openURL non-virtual to avoid the unnecessary
22790 killing of puppies.
22791 * html/HTMLIFrameElement.cpp: Merged code into HTMLFrameElement
22792 (WebCore::HTMLIFrameElement::rendererIsNeeded):
22793 (WebCore::HTMLIFrameElement::createRenderer):
22794 (WebCore::HTMLIFrameElement::insertedIntoDocument):
22795 (WebCore::HTMLIFrameElement::removedFromDocument):
22796 (WebCore::HTMLIFrameElement::attach):
22797 * page/FrameView.h: Removed unused method.
22799 2006-10-13 David Harrison <harrison@apple.com>
22801 Reviewed by Justin.
22803 <rdar://problem/4746860> Mail crash in WebCore::CSSMutableStyleDeclaration::merge(WebCore::CSSMutableStyleDeclaration*, bool)
22805 Tests added or changed:
22806 * editing/style/style-boundary-005.html: Added. Matches steps from bug.
22807 * editing/execCommand/hilitecolor-expected.txt: Updated (no empty Apple style spans).
22808 * editing/style/remove-underline-across-paragraph-in-bold-expected.txt: Updated (no empty Apple style spans).
22809 * editing/style/remove-underline-in-bold-expected.txt: Updated (no empty Apple style spans).
22810 * editing/style/typing-style-003-expected.txt: Updated (no empty Apple style spans).
22813 (WebCore::Text::splitText):
22816 * editing/ApplyStyleCommand.cpp:
22817 (WebCore::isUnstyledStyleSpan):
22818 Renamed from isEmptyStyleSpan.
22820 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
22821 Rename emptySpans local to unstyledSpans.
22823 (WebCore::dummySpanAncestorForNode):
22824 New. To locate Apple style span created when splitting a text node.
22826 (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
22827 Renamed from cleanUpEmptyStyleSpans. Algorithm changed to scan children
22828 of dummy span's parents, rather than traversing up from start and
22829 end locations. Old algorithm would miss empty spans in the bug case.
22831 (WebCore::ApplyStyleCommand::applyInlineStyle):
22832 Use dummySpanAncestorForNode() and cleanupUnstyledAppleStyleSpans().
22834 (WebCore::ApplyStyleCommand::removeCSSStyle):
22835 Renamed isEmptyStyleSpan() to isUnstyledStyleSpan().
22837 (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
22840 * editing/ApplyStyleCommand.h:
22841 Renamed cleanUpEmptyStyleSpans() to cleanupUnstyledAppleStyleSpans().
22843 * editing/ReplaceSelectionCommand.cpp:
22844 (WebCore::ReplaceSelectionCommand::removeRedundantStyles):
22845 Allow for Apple style span to be unstyled, because old email may have this in the DOM.
22846 Use !node->hasChildNodes() instead of !node->firstChild().
22848 * editing/SplitTextNodeCommand.cpp:
22849 (WebCore::SplitTextNodeCommand::doApply):
22852 * rendering/RenderTreeAsText.cpp:
22853 (WebCore::isEmptyOrUnstyledAppleStyleSpan):
22854 (WebCore::operator<<):
22855 Flag empty or unstyled AppleStyleSpa nbecause we never want to leave them in the DOM
22857 2006-10-13 Nikolas Zimmermann <zimmermann@kde.org>
22861 Fix Qt/Linux build after Adele's popup menu changes.
22864 * platform/qt/FileChooserQt.cpp:
22865 (WebCore::FileChooser::disconnectUploadControl):
22866 * platform/qt/PopupMenuQt.cpp: Added.
22867 (WebCore::PopupMenu::PopupMenu):
22868 (WebCore::PopupMenu::~PopupMenu):
22869 (WebCore::PopupMenu::clear):
22870 (WebCore::PopupMenu::populate):
22871 (WebCore::PopupMenu::show):
22872 (WebCore::PopupMenu::hide):
22873 (WebCore::PopupMenu::addSeparator):
22874 (WebCore::PopupMenu::addGroupLabel):
22875 (WebCore::PopupMenu::addOption):
22876 * platform/qt/RenderPopupMenuQt.cpp: Removed.
22877 * platform/qt/RenderPopupMenuQt.h: Removed.
22878 * platform/qt/RenderThemeQt.cpp:
22880 2006-10-13 Kevin McCullough <KMcCullough@apple.com>
22884 fixed build failure
22886 * WebCore.xcodeproj/project.pbxproj:
22887 * loader/mac/WebFrameLoader.mm:
22889 2006-10-13 Darin Adler <darin@apple.com>
22893 - converted WebFormState from Objective-C to C++
22895 * WebCore.exp: Added a new symbol, changed one symbol from C to C++.
22897 * WebCore.xcodeproj/project.pbxproj: Made lots of headers "private" instead of "project".
22898 Added UChar.h and FrameLoaderTypes.h.
22900 * loader/FrameLoaderTypes.h: Added. Has enums from WebFrameLoader.h.
22902 * loader/mac/WebFormState.h: Converted class to C++.
22903 * loader/mac/WebFormState.mm: Ditto.
22905 * loader/mac/WebFrameLoader.h:
22906 * loader/mac/WebFrameLoader.mm:
22907 (-[WebFrameLoader loadURL:referrer:loadType:target:triggeringEvent:form:formValues:]):
22908 (-[WebFrameLoader continueFragmentScrollAfterNavigationPolicy:formState:]):
22909 (-[WebFrameLoader _loadRequest:triggeringAction:loadType:formState:]):
22910 (-[WebFrameLoader invalidatePendingPolicyDecisionCallingDefaultAction:]):
22911 (-[WebFrameLoader checkNewWindowPolicyForRequest:action:frameName:formState:andCall:withSelector:]):
22912 (-[WebFrameLoader continueAfterNewWindowPolicy:]):
22913 (-[WebFrameLoader checkNavigationPolicyForRequest:documentLoader:formState:andCall:withSelector:]):
22914 (-[WebFrameLoader continueAfterNavigationPolicy:]):
22915 (-[WebFrameLoader continueLoadRequestAfterNavigationPolicy:formState:]):
22916 (-[WebFrameLoader loadDocumentLoader:withLoadType:formState:]):
22917 (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
22918 (-[WebFrameLoader postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
22919 Changed Objective-C WebFormState uses to C++ WebCore::FormState.
22921 2006-10-13 Adele Peterson <adele@apple.com>
22923 Reviewed by Maciej.
22925 - Fix for <rdar://problem/4768591> REGRESSION: List box selection color should just be a darker version of regular selection color
22927 * rendering/RenderListBox.cpp:
22928 (WebCore::RenderListBox::paintItemForeground):
22929 * rendering/RenderTheme.cpp:
22930 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
22931 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
22932 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
22933 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
22934 * rendering/RenderThemeMac.h:
22935 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::activeListBoxSelectionBackgroundColor):
22937 2006-10-13 Rob Buis <buis@kde.org>
22941 http://bugs.webkit.org/show_bug.cgi?id=11217
22942 Cleanup svg coding style
22944 Cleanup coding style in svg structure classes.
22946 * ksvg2/svg/SVGDefsElement.cpp:
22947 (WebCore::SVGDefsElement::SVGDefsElement):
22948 * ksvg2/svg/SVGDefsElement.h:
22949 * ksvg2/svg/SVGDescElement.cpp:
22950 (WebCore::SVGDescElement::SVGDescElement):
22951 * ksvg2/svg/SVGDescElement.h:
22952 * ksvg2/svg/SVGDocument.cpp:
22953 * ksvg2/svg/SVGDocument.h:
22954 * ksvg2/svg/SVGElementInstance.cpp:
22955 (WebCore::SVGElementInstance::SVGElementInstance):
22956 (WebCore::SVGElementInstance::correspondingElement):
22957 (WebCore::SVGElementInstance::correspondingUseElement):
22958 (WebCore::SVGElementInstance::parentNode):
22959 (WebCore::SVGElementInstance::childNodes):
22960 (WebCore::SVGElementInstance::previousSibling):
22961 (WebCore::SVGElementInstance::nextSibling):
22962 (WebCore::SVGElementInstance::firstChild):
22963 (WebCore::SVGElementInstance::lastChild):
22964 * ksvg2/svg/SVGElementInstance.h:
22965 * ksvg2/svg/SVGElementInstanceList.cpp:
22966 * ksvg2/svg/SVGElementInstanceList.h:
22967 * ksvg2/svg/SVGGElement.cpp:
22968 (WebCore::SVGGElement::SVGGElement):
22969 (WebCore::SVGGElement::parseMappedAttribute):
22970 (WebCore::SVGDummyElement::SVGDummyElement):
22971 * ksvg2/svg/SVGGElement.h:
22972 (WebCore::SVGGElement::rendererIsNeeded):
22973 * ksvg2/svg/SVGImageElement.cpp:
22974 (WebCore::SVGImageElement::createRenderer):
22975 * ksvg2/svg/SVGImageElement.h:
22976 * ksvg2/svg/SVGSVGElement.cpp:
22977 (WebCore::SVGSVGElement::SVGSVGElement):
22978 (WebCore::SVGSVGElement::pixelUnitToMillimeterX):
22979 (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
22980 (WebCore::SVGSVGElement::currentScale):
22981 (WebCore::SVGSVGElement::setCurrentScale):
22982 (WebCore::SVGSVGElement::currentTranslate):
22983 (WebCore::SVGSVGElement::parseMappedAttribute):
22984 (WebCore::SVGSVGElement::suspendRedraw):
22985 (WebCore::SVGSVGElement::unsuspendRedraw):
22986 (WebCore::SVGSVGElement::unsuspendRedrawAll):
22987 (WebCore::SVGSVGElement::forceRedraw):
22988 (WebCore::SVGSVGElement::getIntersectionList):
22989 (WebCore::SVGSVGElement::getEnclosureList):
22990 (WebCore::SVGSVGElement::checkIntersection):
22991 (WebCore::SVGSVGElement::checkEnclosure):
22992 (WebCore::SVGSVGElement::deselectAll):
22993 (WebCore::SVGSVGElement::createSVGLength):
22994 (WebCore::SVGSVGElement::createSVGAngle):
22995 (WebCore::SVGSVGElement::createSVGMatrix):
22996 (WebCore::SVGSVGElement::createSVGTransform):
22997 (WebCore::SVGSVGElement::createSVGTransformFromMatrix):
22998 (WebCore::SVGSVGElement::getCTM):
22999 (WebCore::SVGSVGElement::getScreenCTM):
23000 (WebCore::SVGSVGElement::setCurrentTime):
23001 * ksvg2/svg/SVGSVGElement.h:
23002 (WebCore::SVGSVGElement::rendererIsNeeded):
23003 * ksvg2/svg/SVGSwitchElement.cpp:
23004 (WebCore::SVGSwitchElement::SVGSwitchElement):
23005 (WebCore::SVGSwitchElement::childShouldCreateRenderer):
23006 * ksvg2/svg/SVGSwitchElement.h:
23007 (WebCore::SVGSwitchElement::rendererIsNeeded):
23008 * ksvg2/svg/SVGSymbolElement.cpp:
23009 (WebCore::SVGSymbolElement::SVGSymbolElement):
23010 (WebCore::SVGSymbolElement::parseMappedAttribute):
23011 * ksvg2/svg/SVGSymbolElement.h:
23012 (WebCore::SVGSymbolElement::shouldAttachChild):
23013 * ksvg2/svg/SVGTitleElement.cpp:
23014 (WebCore::SVGTitleElement::SVGTitleElement):
23015 * ksvg2/svg/SVGTitleElement.h:
23016 * ksvg2/svg/SVGUseElement.cpp:
23017 (WebCore::SVGUseElement::parseMappedAttribute):
23018 (WebCore::SVGUseElement::closeRenderer):
23019 * ksvg2/svg/SVGUseElement.h:
23020 (WebCore::SVGUseElement::rendererIsNeeded):
23022 2006-10-12 Adele Peterson <adele@apple.com>
23024 Reviewed by Anders.
23026 - Fix for http://bugs.webkit.org/show_bug.cgi?id=11172
23027 REGRESSION (NativeListBox): OPTION text paints over the edge of the select element at http://jobs.apple.com/
23029 Test: fast/forms/listbox-width-change.html
23031 * rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement):
23032 When the options change, call setNeedsLayoutAndMinMaxRecalc.
23034 2006-10-12 Maciej Stachowiak <mjs@apple.com>
23036 Reviewed by Oliver.
23038 - moved a bunch of WebFrameBridge code down to WebCoreFrameBridge, now that it no longer has any WebKit dependencies
23040 * WebCore.xcodeproj/project.pbxproj:
23041 * bridge/mac/WebCoreFrameBridge.h:
23042 * bridge/mac/WebCoreFrameBridge.mm:
23043 (stringByCollapsingNonPrintingCharacters):
23044 (-[WebCoreFrameBridge setTitle:]):
23045 (-[WebCoreFrameBridge didFirstLayout]):
23046 (-[WebCoreFrameBridge notifyIconChanged:]):
23047 (-[WebCoreFrameBridge originalRequestURL]):
23048 (-[WebCoreFrameBridge isLoadTypeReload]):
23049 (-[WebCoreFrameBridge frameDetached]):
23050 (-[WebCoreFrameBridge tokenizerProcessedData]):
23051 (-[WebCoreFrameBridge receivedData:textEncodingName:]):
23052 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:]):
23053 (-[WebCoreFrameBridge objectLoadedFromCacheWithURL:response:data:]):
23054 (-[WebCoreFrameBridge startLoadingResource:withMethod:URL:customHeaders:postData:]):
23055 (-[WebCoreFrameBridge reportClientRedirectToURL:delay:fireDate:lockHistory:isJavaScriptFormAction:]):
23056 (-[WebCoreFrameBridge reportClientRedirectCancelled:]):
23057 (-[WebCoreFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
23058 (-[WebCoreFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
23059 (-[WebCoreFrameBridge syncLoadResourceWithMethod:URL:customHeaders:postData:finalURL:responseHeaders:statusCode:]):
23060 (-[WebCoreFrameBridge incomingReferrer]):
23061 (-[WebCoreFrameBridge isReloading]):
23062 (-[WebCoreFrameBridge handledOnloadEvents]):
23063 (-[WebCoreFrameBridge mainResourceURLResponse]):
23064 (-[WebCoreFrameBridge loadEmptyDocumentSynchronously]):
23065 * loader/mac/LoaderNSURLExtras.h:
23066 * loader/mac/LoaderNSURLRequestExtras.h: Added.
23067 * loader/mac/LoaderNSURLRequestExtras.m: Added.
23068 (isConditionalRequest):
23070 * loader/mac/WebFrameLoader.mm:
23071 * loader/mac/WebSubresourceLoader.mm:
23073 2006-10-12 Adele Peterson <adele@apple.com>
23077 Renamed menuListIsDetaching to disconnectMenuList,
23078 uploadControlDetaching to disconnectUploadControl, and fileChooserDetachingSoon to disconnectFileChooser.
23079 These names match similar methods in WebCore a little better.
23081 * platform/FileChooser.h:
23082 * platform/PopupMenu.h: (WebCore::PopupMenu::disconnectMenuList):
23083 * platform/mac/FileChooserMac.mm: (-[OpenPanelController disconnectFileChooser]):
23084 (WebCore::FileChooser::disconnectUploadControl):
23085 * platform/win/TemporaryLinkStubs.cpp: (FileChooser::disconnectUploadControl):
23086 * rendering/RenderFileUploadControl.cpp: (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
23087 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList):
23089 2006-10-12 Adele Peterson <adele@apple.com>
23091 Reviewed by Maciej.
23093 WebCore part of fix for <rdar://problem/4450613> need a means to attach user data to any menu that is popuped up in HTML
23095 Added private delegate method for clients that want access to a PopupMenu's NSMenu.
23097 * bridge/mac/FrameMac.h:
23098 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::willPopupMenu):
23099 * bridge/mac/WebCoreFrameBridge.h:
23101 * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Calls willPopupMenu with the NSMenu about to be popped up.
23103 2006-10-12 Adele Peterson <adele@apple.com>
23107 - Fix for <rdar://problem/4707372>
23108 After timers fix, crash in -[NSMenu performActionForItemAtIndex:] after moving/detroying active popup menu
23110 * platform/PopupMenu.h: (WebCore::PopupMenu::menuListIsDetaching): Added. Zeros out the pointer to the menu list.
23111 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::~RenderMenuList): Calls menuListIsDetaching.
23112 * platform/mac/PopupMenuMac.mm: (WebCore::PopupMenu::show): Added a RefPtr to protect the PopupMenu while the NSMenu is up,
23113 in case the RenderMenuList goes away. Also, checks the pointer to the menu list immediately afterwards.
23115 2006-10-12 Nikolas Zimmermann <zimmermann@kde.org>
23117 Reviewed by Maciej.
23119 Trying to fix "DRT hangs on certain testcases" like fast/dom/Document/document-reopen.html
23120 document.open(); document.write(..); and NO document.close(). On the Qt platform this
23121 leaves a HTMLDocument which is still in parsing mode (parsing() always returns true).
23122 DRT waits forever, but m_frame->isComplete() is never true due the parsing mode problem.
23124 Hmpf, this took me nine hours to debug today.
23125 Result: Couldn't find the real fix, going for a workaround for now.
23127 540 minutes, 1 line of code changed after all -> 0,0019 lines per minute.
23129 * platform/qt/FrameQt.cpp:
23130 (WebCore::FrameQt::handledOnloadEvents): Call endIfNotLoading() manually.
23131 * platform/qt/FrameQtClient.cpp:
23132 (WebCore::FrameQtClientDefault::receivedData): Use write() again instead of addData().
23134 2006-10-12 Adam Roben <aroben@apple.com>
23138 Move popup menu code out of rendering/ and into platform/.
23139 RenderPopupMenu becomes PopupMenu, the
23140 RenderPopupMenuMac/RenderPopupMenuWin subclasses and all the associated
23141 virtual methods go away, RenderTheme gets to stop worrying about popup
23142 menus, PopupMenu becomes ref-counted, and everyone becomes happy.
23144 * WebCore.vcproj/WebCore/WebCore.vcproj: Move files within project.
23145 * WebCore.xcodeproj/project.pbxproj: Ditto.
23146 * html/HTMLSelectElement.cpp: Remove unnecessary #include.
23147 * platform/PopupMenu.cpp: Moved from rendering/RenderPopupMenu.cpp.
23148 Also renamed showPopup()/hidePopup() to show()/hide() to disambiguate
23149 from RenderMenuList::showPopup/hidePopup.
23150 (WebCore::PopupMenu::create): New static creation method to hand back a
23151 PassRefPtr<PopupMenu>.
23152 (WebCore::PopupMenu::addItems): This platform-independent method should
23153 be called by PopupMenu::populate when the platform-specific
23154 implementation is ready to receive the menu items. Fixed an ASSERT
23156 * platform/PopupMenu.h: Moved from rendering/RenderPopupMenu.h. No more
23157 need for virtual methods.
23158 (WebCore::PopupMenu::wasClicked):
23159 (WebCore::PopupMenu::setWasClicked):
23160 (WebCore::PopupMenu::popupHandle):
23161 * platform/mac/PopupMenuMac.mm: Moved from
23162 rendering/RenderPopupMenuMac.mm. Much renaming ensues.
23163 (WebCore::PopupMenu::PopupMenu):
23164 (WebCore::PopupMenu::~PopupMenu):
23165 (WebCore::PopupMenu::clear):
23166 (WebCore::PopupMenu::populate):
23167 (WebCore::PopupMenu::show):
23168 (WebCore::PopupMenu::hide):
23169 (WebCore::PopupMenu::addSeparator):
23170 (WebCore::PopupMenu::addGroupLabel): Since we don't have our own
23171 RenderStyle anymore, just pick up the style from our RenderMenuList.
23172 (WebCore::PopupMenu::addOption): Ditto.
23173 * platform/win/TemporaryLinkStubs.cpp: Rename-fest.
23174 (PopupMenu::PopupMenu):
23175 (PopupMenu::~PopupMenu):
23176 (PopupMenu::clear):
23177 (PopupMenu::populate):
23180 (PopupMenu::addSeparator):
23181 (PopupMenu::addGroupLabel):
23182 (PopupMenu::addOption):
23183 * rendering/RenderMenuList.cpp:
23184 (WebCore::RenderMenuList::~RenderMenuList):
23185 (WebCore::RenderMenuList::showPopup): Use nice new simple
23186 PopupMenu::create to make the popup.
23187 (WebCore::RenderMenuList::hidePopup):
23188 * rendering/RenderMenuList.h: Hold a RefPtr<PopupMenu> instead of a
23190 (WebCore::RenderMenuList::popup):
23191 * rendering/RenderPopupMenu.cpp: Removed.
23192 * rendering/RenderPopupMenu.h: Removed.
23193 * rendering/RenderPopupMenuMac.h: Removed.
23194 * rendering/RenderPopupMenuMac.mm: Removed.
23195 * rendering/RenderPopupMenuWin.h: Removed.
23196 * rendering/RenderTheme.cpp: Get rid of createPopupMenu() method.
23197 * rendering/RenderTheme.h: Ditto.
23198 * rendering/RenderThemeMac.h: Ditto.
23199 * rendering/RenderThemeMac.mm: Ditto.
23200 * rendering/RenderThemeWin.cpp: Ditto.
23201 * rendering/RenderThemeWin.h: Ditto.
23203 2006-10-12 Adele Peterson <adele@apple.com>
23205 Reviewed by Dave Harrison.
23207 - Fixed <rdar://problem/4650813> REGRESSION: typing in a textarea in Safari is extremely slow (sample shows focus ring drawing)
23209 * rendering/RenderObject.cpp: (WebCore::RenderObject::markContainingBlocksForLayout):
23210 Make subtree layouts work for textareas as well as text fields.
23212 2006-10-12 Nikolas Zimmermann <zimmermann@kde.org>
23214 Reviewed by MacDome.
23216 Finally found a way to remove our begin() trickery in FrameQt.
23217 The (probably misnamed) Frame::setEncoding() function automatically
23218 calls Frame::receivedFirstData() which calls being on the working
23219 url, which has been passed to didOpenUrl(). Took me some hours
23220 to figure out that the missing charset logic, forced us to do hacks.
23222 * platform/ResourceLoader.h:
23223 * platform/ResourceLoaderInternal.h:
23224 * platform/qt/FrameQt.cpp:
23225 (WebCore::FrameQt::tokenizerProcessedData):
23226 * platform/qt/FrameQt.h:
23227 * platform/qt/FrameQtClient.cpp:
23228 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
23229 (WebCore::FrameQtClientDefault::openURL):
23230 (WebCore::FrameQtClientDefault::submitForm):
23231 (WebCore::FrameQtClientDefault::receivedData):
23232 (WebCore::FrameQtClientDefault::receivedAllData):
23233 * platform/qt/FrameQtClient.h:
23234 * platform/qt/ResourceLoaderManager.cpp:
23235 (WebCore::ResourceLoaderManager::slotData):
23236 (WebCore::ResourceLoaderManager::slotMimetype):
23237 (WebCore::ResourceLoaderManager::slotResult):
23238 (WebCore::ResourceLoaderManager::remove):
23239 * platform/qt/ResourceLoaderQt.cpp:
23240 (WebCore::ResourceLoader::retrieveCharset):
23241 (WebCore::ResourceLoader::extractCharsetFromHeaders):
23243 2006-10-12 Adam Roben <aroben@apple.com>
23247 Bandaid-ing a null-dereference crash until a real fix is made.
23249 * page/FrameView.cpp:
23250 (WebCore::FrameView::windowClipRect):
23252 2006-10-12 Rob Buis <buis@kde.org>
23256 http://bugs.webkit.org/show_bug.cgi?id=11217
23257 Cleanup svg coding style
23259 Cleanup coding style in svg text classes.
23261 * ksvg2/svg/SVGTRefElement.cpp:
23262 (WebCore::SVGTRefElement::SVGTRefElement):
23263 (WebCore::SVGTRefElement::updateReferencedText):
23264 (WebCore::SVGTRefElement::parseMappedAttribute):
23265 (WebCore::SVGTRefElement::childShouldCreateRenderer):
23266 (WebCore::SVGTRefElement::createRenderer):
23267 * ksvg2/svg/SVGTRefElement.h:
23268 (WebCore::SVGTRefElement::rendererIsNeeded):
23269 * ksvg2/svg/SVGTSpanElement.cpp:
23270 (WebCore::SVGTSpanElement::SVGTSpanElement):
23271 (WebCore::SVGTSpanElement::childShouldCreateRenderer):
23272 (WebCore::SVGTSpanElement::createRenderer):
23273 * ksvg2/svg/SVGTSpanElement.h:
23274 (WebCore::SVGTSpanElement::rendererIsNeeded):
23275 * ksvg2/svg/SVGTextContentElement.cpp:
23276 (WebCore::SVGTextContentElement::SVGTextContentElement):
23277 (WebCore::SVGTextContentElement::parseMappedAttribute):
23278 * ksvg2/svg/SVGTextContentElement.h:
23279 * ksvg2/svg/SVGTextElement.cpp:
23280 (WebCore::SVGTextElement::SVGTextElement):
23281 (WebCore::SVGTextElement::localMatrix):
23282 (WebCore::SVGTextElement::parseMappedAttribute):
23283 (WebCore::SVGTextElement::updateLocalTransform):
23284 (WebCore::SVGTextElement::nearestViewportElement):
23285 (WebCore::SVGTextElement::farthestViewportElement):
23286 (WebCore::SVGTextElement::getScreenCTM):
23287 (WebCore::SVGTextElement::getCTM):
23288 (WebCore::SVGTextElement::createRenderer):
23289 (WebCore::SVGTextElement::childShouldCreateRenderer):
23290 * ksvg2/svg/SVGTextElement.h:
23291 (WebCore::SVGTextElement::getTransformToElement):
23292 (WebCore::SVGTextElement::rendererIsNeeded):
23293 * ksvg2/svg/SVGTextPositioningElement.cpp:
23294 (WebCore::SVGTextPositioningElement::SVGTextPositioningElement):
23295 (WebCore::SVGTextPositioningElement::parseMappedAttribute):
23296 * ksvg2/svg/SVGTextPositioningElement.h:
23298 2006-10-12 Nikolas Zimmermann <zimmermann@kde.org>
23300 Reviewed by Maciej.
23302 Specialization of alert() for DumpRenderTree - just log the output, don't show any message box.
23304 * platform/qt/FrameQt.cpp:
23305 (WebCore::FrameQt::runJavaScriptAlert): Move runJavaScriptAlert functionality to FrameQtClientDefault.
23306 * platform/qt/FrameQtClient.cpp:
23307 (WebCore::FrameQtClientDefault::runJavaScriptAlert):
23308 * platform/qt/FrameQtClient.h:
23310 2006-10-12 Maciej Stachowiak <mjs@apple.com>
23314 - move m_responseMIMEType out of ResourceRequest, where it doesn't belong
23316 * page/FramePrivate.h: Add m_responseMIMEType
23317 * page/ResourceRequest.h: Remove m_responseMIMEType
23319 (WebCore::Frame::setResponseMIMEType): added
23320 (WebCore::Frame::responseMIMEType): added
23321 (WebCore::Frame::begin): get MIME type from the right place
23322 (WebCore::Frame::write): ditto
23324 * bindings/js/kjs_window.cpp:
23325 (KJS::createNewWindow): updated to use new Frame methods
23326 (KJS::WindowFunc::callAsFunction): ditto
23327 * bridge/mac/WebCoreFrameBridge.mm:
23328 (-[WebCoreFrameBridge openURL:reload:contentType:refresh:lastModified:pageCache:]): ditto
23329 (-[WebCoreFrameBridge canProvideDocumentSource]): ditto
23330 * loader/PluginDocument.cpp:
23331 (WebCore::PluginTokenizer::createDocumentStructure): ditto
23333 2006-10-12 Maciej Stachowiak <mjs@apple.com>
23337 <rdar://problem/4774321> REGRESSION: "Can't find the server" error page contains unstyled text and missing image
23339 We really need some way to test loadHTMLString since it keeps breaking!
23341 * loader/mac/WebFrameLoader.mm:
23342 (-[WebFrameLoader commitProvisionalLoad:]): Set stuff up on the proper data source.
23344 2006-10-12 Nikolas Zimmermann <zimmermann@kde.org>
23348 Fix Qt/Linux build.
23351 * platform/qt/FileChooserQt.cpp:
23352 (WebCore::FileChooser::create):
23354 2006-10-12 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
23356 Reviewed by Maciej.
23358 Update Gdk\Linux build for recent changes, based on Qt code
23360 * platform/gdk/FrameGdk.cpp:
23361 (WebCore::FrameGdkClientDefault::FrameGdkClientDefault):
23362 (WebCore::FrameGdkClientDefault::~FrameGdkClientDefault):
23363 (WebCore::FrameGdkClientDefault::setFrame):
23364 (WebCore::FrameGdkClientDefault::openURL):
23365 (WebCore::FrameGdkClientDefault::submitForm):
23366 (WebCore::FrameGdkClientDefault::receivedResponse):
23367 (WebCore::FrameGdkClientDefault::receivedData):
23368 (WebCore::FrameGdkClientDefault::receivedAllData):
23369 (WebCore::FrameGdk::FrameGdk):
23370 (WebCore::FrameGdk::openURL):
23371 (WebCore::FrameGdk::submitForm):
23372 (WebCore::FrameGdk::urlSelected):
23373 * platform/gdk/FrameGdk.h:
23374 * platform/gdk/TemporaryLinkStubs.cpp:
23375 (FrameGdk::createJavaAppletWidget):
23376 (FileChooser::create):
23378 2006-10-12 Dave Hyatt <hyatt@apple.com>
23380 Patch to add more clipping retrieval functionality for widgets.
23385 Remove windowResizerRect. This is in the wrong place.
23387 * page/FrameView.cpp:
23388 (WebCore::FrameView::windowClipRect):
23389 (WebCore::FrameView::windowClipRectForLayer):
23390 Break out windowClipRect into helper functions that can be called separately (to make
23391 it easier for scrollbars in overflow sections and list boxes to get to an enclosing
23392 layer and get the right clip.
23394 * page/FrameView.h:
23395 Add the new windowClipRect helper methods.
23397 * platform/ScrollBar.h:
23398 Add a new interface to ScrollbarClient so that scrollbars can hand back proper
23399 clip rects for themselves depending on how they are used.
23401 * platform/ScrollView.h:
23402 Stub out methods for talking to a double buffer backing store on Win32.
23404 * platform/Widget.h:
23405 Add the ability to query for invalidation suppression.
23407 * rendering/RenderLayer.cpp:
23408 (WebCore::RenderLayer::windowClipRect):
23409 (WebCore::RenderLayer::paintOverflowControls):
23410 (WebCore::RenderLayer::calculateRects):
23411 (WebCore::RenderLayer::childrenClipRect):
23412 (WebCore::RenderLayer::selfClipRect):
23413 * rendering/RenderLayer.h:
23414 Enhance layers so that they can return either their foreground or background
23415 document clip rects. Make sure a layer scrollbar can return a proper clip.
23417 * rendering/RenderListBox.cpp:
23418 (WebCore::RenderListBox::windowClipRect):
23419 * rendering/RenderListBox.h:
23420 Make sure a list box scrollbar can return a proper clip.
23422 * rendering/RenderObject.cpp:
23423 (WebCore::RenderObject::enclosingLayer):
23424 * rendering/RenderObject.h:
23425 Make enclosingLayer const.
23427 2006-10-11 Darin Adler <darin@apple.com>
23431 - some changes to prepare for converting more code to C++
23433 * bridge/mac/WebCoreFrameBridge.h: Added import of <Cocoa/Cocoa.h> so this header is
23436 * bridge/mac/WebCoreViewFactory.h: Added forward declaration of the NSMenu class.
23437 Needed since the class is used in this header (for some work I have not landed yet).
23439 * loader/mac/LoaderNSURLExtras.h:
23440 * loader/mac/WebFormDataStream.h:
23441 Added extern "C" so this code can be used from C++.
23443 * loader/mac/LoaderNSURLExtras.m:
23444 * loader/mac/WebDataProtocol.mm:
23445 * loader/mac/WebDocumentLoader.mm:
23446 * loader/mac/WebFormDataStream.m:
23447 * loader/mac/WebLoader.mm:
23448 * loader/mac/WebMainResourceLoader.mm:
23449 * loader/mac/WebNetscapePlugInStreamLoader.mm:
23450 * loader/mac/WebPolicyDecider.mm:
23451 * loader/mac/WebSubresourceLoader.mm:
23452 Added missing includes of config.h.
23454 2006-10-11 John Sullivan <sullivan@apple.com>
23456 Darin wrote this code; we tested it; I give it the thumbs up.
23458 - fixed regression from svn revision 16982 that was generating the wrong Obj-C classes
23460 The hash table to look up an element class given a QualifiedName was
23461 not working at all.
23463 * dom/QualifiedName.h:
23464 (WebCore::QualifiedName::impl):
23465 Added. This new accessor method for impl is needed if we want to use
23466 a QualifiedName as a hash table key without doing the kind of specialization
23467 we do for String. Maybe later we can do the String thing.
23469 * bindings/objc/DOM.mm:
23470 (WebCore::addElementClass):
23471 Use QualifiedName.impl instead of the QualifiedName pointer itself.
23472 The QualifiedName pointer is *not* unique so almost nothing would be found
23473 in this hash table!
23474 (WebCore::elementClass):
23477 2006-10-11 Adam Roben <aroben@apple.com>
23479 Rubberstamped by Anders.
23481 Clean up FileChooser::create and Icon::newIconForFile.
23483 * WebCore.xcodeproj/project.pbxproj:
23484 * platform/mac/FileChooserMac.mm:
23485 (WebCore::FileChooser::create):
23486 * platform/mac/IconMac.mm:
23487 (WebCore::Icon::newIconForFile):
23489 2006-10-11 Oliver Hunt <oliver@apple.com>
23493 Fix for http://bugs.webkit.org/show_bug.cgi?id=11251
23494 Corrects canvas tag to not throw JS exception when drawing
23495 zero sized rects, arcs, etc
23497 * html/CanvasRenderingContext2D.cpp:
23498 (WebCore::CanvasRenderingContext2D::arcTo):
23499 (WebCore::CanvasRenderingContext2D::arc):
23500 (WebCore::CanvasRenderingContext2D::rect):
23501 (WebCore::CanvasRenderingContext2D::clearRect):
23502 (WebCore::CanvasRenderingContext2D::fillRect):
23503 (WebCore::CanvasRenderingContext2D::strokeRect):
23505 2006-10-11 Rob Buis <buis@kde.org>
23509 http://bugs.webkit.org/show_bug.cgi?id=11221
23510 REGRESSION: iExploder crash due to style="cursor: url()"
23512 Take better care of empty cursor lists.
23514 Test: fast/css/invalid-cursor-property-crash.html
23516 * css/cssparser.cpp:
23517 (WebCore::CSSParser::parseValue):
23519 2006-10-11 Adam Roben <aroben@apple.com>
23521 Fixing Windows for real this time.
23523 * platform/win/TemporaryLinkStubs.cpp:
23524 (FileChooser::create):
23526 2006-10-11 Adam Roben <aroben@apple.com>
23530 * platform/win/TemporaryLinkStubs.cpp:
23531 (FileChooser::create):
23533 2006-10-11 Antti Koivisto <koivisto@iki.fi>
23537 http://bugs.webkit.org/show_bug.cgi?id=4377
23539 Respect css visibility semantics for layers too
23541 * rendering/RenderContainer.cpp:
23542 (WebCore::RenderContainer::removeChildNode):
23543 (WebCore::RenderContainer::appendChildNode):
23544 (WebCore::RenderContainer::insertChildNode):
23545 * rendering/RenderLayer.cpp:
23546 (WebCore::RenderLayer::RenderLayer):
23547 (WebCore::RenderLayer::updateLayerPositions):
23548 (WebCore::RenderLayer::setHasVisibleContent):
23549 (WebCore::RenderLayer::dirtyVisibleContentStatus):
23550 (WebCore::RenderLayer::childVisibilityChanged):
23551 (WebCore::RenderLayer::dirtyVisibleDescendantStatus):
23552 (WebCore::RenderLayer::updateVisibilityStatus):
23553 (WebCore::RenderLayer::addChild):
23554 (WebCore::RenderLayer::removeChild):
23555 (WebCore::RenderLayer::updateZOrderLists):
23556 (WebCore::RenderLayer::collectLayers):
23557 * rendering/RenderLayer.h:
23558 (WebCore::RenderLayer::hasVisibleContent):
23559 * rendering/RenderObject.cpp:
23560 (WebCore::RenderObject::setStyle):
23562 2006-10-10 Maciej Stachowiak <mjs@apple.com>
23564 Reviewed by Oliver.
23566 - added RetainPtr, smart pointer for refcounted ObjC objects and CFTypes
23568 * WebCore.xcodeproj/project.pbxproj:
23569 * platform/cf/RetainPtr.h: Added.
23571 (WTF::RetainPtr::RetainPtr):
23572 (WTF::RetainPtr::~RetainPtr):
23573 (WTF::RetainPtr::get):
23574 (WTF::RetainPtr::operator*):
23575 (WTF::RetainPtr::operator->):
23576 (WTF::RetainPtr::operator!):
23577 (WTF::RetainPtr::operator UnspecifiedBoolType):
23583 (WTF::static_pointer_cast):
23584 (WTF::const_pointer_cast):
23587 - use it in WidgetMac so it gets tested in at least one place
23589 * platform/mac/WidgetMac.mm:
23590 (WebCore::Widget::Widget):
23591 (WebCore::Widget::~Widget):
23592 (WebCore::Widget::setEnabled):
23593 (WebCore::Widget::isEnabled):
23594 (WebCore::Widget::setCursor):
23595 (WebCore::Widget::getView):
23596 (WebCore::Widget::setView):
23597 (WebCore::Widget::getOuterView):
23599 2006-10-10 Brady Eidson <beidson@apple.com>
23601 Reviewed by Maciej.
23603 Moved WebFrameLoader from WebFrameBridge into WebCoreFrameBridge
23605 * bridge/mac/WebCoreFrameBridge.h:
23606 * bridge/mac/WebCoreFrameBridge.mm:
23607 (-[WebCoreFrameBridge initMainFrameWithPage:]):
23608 (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
23609 (-[WebCoreFrameBridge dealloc]):
23610 (-[WebCoreFrameBridge close]):
23611 (-[WebCoreFrameBridge setFrameLoaderClient:]):
23612 (-[WebCoreFrameBridge frameLoader]):
23613 * loader/mac/WebFrameLoader.h:
23614 * loader/mac/WebFrameLoader.mm:
23615 (-[WebFrameLoader initWithFrameBridge:]):
23616 (-[WebFrameLoader setFrameLoaderClient:]):
23618 2006-10-10 Adam Roben <aroben@apple.com>
23620 Reviewed by Oliver.
23622 Make FileChooser ref-counted.
23624 * platform/FileChooser.h:
23625 * platform/mac/FileChooserMac.mm:
23626 (WebCore::FileChooser::create):
23627 * rendering/RenderFileUploadControl.cpp:
23628 (WebCore::RenderFileUploadControl::RenderFileUploadControl):
23629 (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
23630 * rendering/RenderFileUploadControl.h:
23632 2006-10-10 Sam Weinig <sam.weinig@gmail.com>
23636 Patch for http://bugs.webkit.org/show_bug.cgi?id=11248
23637 Even More auto-generated Objective-C DOM bindings changes
23639 - Auto-generate DOMSVGPathElement.
23641 - Auto-generate the internal interfaces even for classes that have
23642 custom internal implementations. Change IDL property from ObjCNoInternal
23643 to ObjCCustomInternalImpl to indicate the change.
23645 - Add SVG classes to DOMNode and DOMEvent internal interfaces.
23647 - Add isSVGZoomEvent() method to Event class to match other Event subclasses
23648 and make DOM binding possible.
23650 - Assorted cleanups.
23652 * DerivedSources.make:
23653 * WebCore.xcodeproj/project.pbxproj:
23654 * bindings/objc/DOM.mm:
23655 (WebCore::addElementClass):
23656 (WebCore::createElementClassMap):
23657 (WebCore::elementClass):
23658 (-[DOMNode description]):
23659 (+[DOMNode _nodeWith:WebCore::]):
23660 (-[DOMNode addEventListener:listener:useCapture:]):
23661 (-[DOMNode removeEventListener:listener:useCapture:]):
23662 (-[DOMElement _NPObject]):
23663 (WebCore::ObjCEventListener::handleEvent):
23664 * bindings/objc/DOMEvents.mm:
23665 (+[DOMEvent _eventWith:WebCore::]):
23666 * bindings/objc/DOMInternal.h:
23667 * bindings/objc/DOMRGBColor.mm:
23668 (-[DOMRGBColor WebCore::]):
23669 * bindings/objc/DOMSVGPathSegInternal.h: Removed.
23670 * bindings/scripts/CodeGeneratorObjC.pm:
23672 * css/CSSValue.idl:
23673 * css/StyleSheet.idl:
23675 (WebCore::Event::isSVGZoomEvent):
23679 * ksvg2/events/SVGZoomEvent.cpp:
23680 (WebCore::SVGZoomEvent::isSVGZoomEvent):
23681 * ksvg2/events/SVGZoomEvent.h:
23682 * ksvg2/svg/SVGAnimatedAngle.idl:
23683 * ksvg2/svg/SVGCircleElement.idl:
23684 * ksvg2/svg/SVGClipPathElement.idl:
23685 * ksvg2/svg/SVGPathElement.idl:
23686 * ksvg2/svg/SVGPathSeg.idl:
23688 2006-10-10 Oliver Hunt <oliver@apple.com>
23690 rubber stamped by Anders.
23692 More buildbot bustage
23694 * kcanvas/SVGInlineFlowBox.cpp:
23695 (WebCore::placeBoxesVerticallyWithAbsBaseline):
23697 2006-10-10 Oliver Hunt <oliver@apple.com>
23704 * kcanvas/RenderSVGText.cpp:
23705 (WebCore::RenderSVGText::layout):
23706 * kcanvas/SVGInlineFlowBox.cpp:
23707 (WebCore::placePositionedBoxesHorizontally):
23708 (WebCore::placeBoxesVerticallyWithAbsBaseline):
23710 2006-10-10 Oliver Hunt <oliver@apple.com>
23714 Fixes bugs #6423, #6559, #10380 and #10839
23716 * WebCore.xcodeproj/project.pbxproj:
23719 (WebCore::Text::createRenderer):
23720 * kcanvas/RenderSVGInline.cpp: Added.
23721 (WebCore::RenderSVGInline::RenderSVGInline):
23722 (WebCore::RenderSVGInline::createInlineBox):
23723 * kcanvas/RenderSVGInline.h: Added.
23724 (WebCore::RenderSVGInline::renderName):
23725 (WebCore::RenderSVGInline::requiresLayer):
23726 * kcanvas/RenderSVGInlineText.cpp: Added.
23727 (WebCore::RenderSVGInlineText::RenderSVGInlineText):
23728 (WebCore::RenderSVGInlineText::absoluteRects):
23729 (WebCore::RenderSVGInlineText::selectionRect):
23730 * kcanvas/RenderSVGInlineText.h: Added.
23731 (WebCore::RenderSVGInlineText::renderName):
23732 (WebCore::RenderSVGInlineText::requiresLayer):
23733 * kcanvas/RenderSVGTSpan.cpp: Added.
23734 (WebCore::RenderSVGTSpan::RenderSVGTSpan):
23735 (WebCore::RenderSVGTSpan::absoluteRects):
23736 * kcanvas/RenderSVGTSpan.h: Added.
23737 (WebCore::RenderSVGTSpan::renderName):
23738 * kcanvas/RenderSVGText.cpp:
23739 (WebCore::RenderSVGText::RenderSVGText):
23740 (WebCore::RenderSVGText::computeAbsoluteRepaintRect):
23741 (WebCore::RenderSVGText::layout):
23742 (WebCore::RenderSVGText::createInlineBox):
23743 (WebCore::RenderSVGText::nodeAtPoint):
23744 (WebCore::RenderSVGText::absoluteRects):
23745 (WebCore::RenderSVGText::paint):
23746 (WebCore::RenderSVGText::relativeBBox):
23747 * kcanvas/RenderSVGText.h:
23748 (WebCore::RenderSVGText::renderName):
23749 * kcanvas/SVGInlineFlowBox.cpp: Added.
23750 (WebCore::SVGInlineFlowBox::paint):
23751 (WebCore::SVGInlineFlowBox::placeBoxesHorizontally):
23752 (WebCore::SVGInlineFlowBox::verticallyAlignBoxes):
23753 (WebCore::paintSVGInlineFlow):
23754 (WebCore::translateBox):
23755 (WebCore::placePositionedBoxesHorizontally):
23756 (WebCore::placeSVGFlowHorizontally):
23757 (WebCore::placeBoxesVerticallyWithAbsBaseline):
23758 (WebCore::placeSVGFlowVertically):
23759 * kcanvas/SVGInlineFlowBox.h: Added.
23760 (WebCore::SVGInlineFlowBox::SVGInlineFlowBox):
23761 * kcanvas/SVGRootInlineBox.cpp: Added.
23762 (WebCore::SVGRootInlineBox::paint):
23763 (WebCore::SVGRootInlineBox::placeBoxesHorizontally):
23764 (WebCore::SVGRootInlineBox::verticallyAlignBoxes):
23765 * kcanvas/SVGRootInlineBox.h: Added.
23766 (WebCore::SVGRootInlineBox::SVGRootInlineBox):
23767 * ksvg2/svg/SVGTRefElement.cpp:
23768 (SVGTRefElement::createRenderer):
23769 * ksvg2/svg/SVGTSpanElement.cpp:
23770 (SVGTSpanElement::createRenderer):
23771 * rendering/InlineFlowBox.h:
23773 2006-10-10 Adam Roben <aroben@apple.com>
23777 Improve popup menu behavior.
23779 * html/HTMLSelectElement.cpp:
23780 (WebCore::HTMLSelectElement::HTMLSelectElement): Cache
23781 m_lastOnChangeIndex so we know when to fire onChange.
23782 (WebCore::HTMLSelectElement::setSelectedIndex): Added parameter to
23783 specify whether we should fire onChange.
23784 (WebCore::HTMLSelectElement::dispatchBlurEvent): Fire onChange on blur.
23785 (WebCore::HTMLSelectElement::menuListDefaultEventHandler): Fire
23786 onChange when using the Enter key to change the selection.
23787 * html/HTMLSelectElement.h:
23788 * rendering/RenderMenuList.cpp:
23789 (WebCore::RenderMenuList::updateFromElement): Extract setText logic
23790 into its own method.
23791 (WebCore::RenderMenuList::setTextFromOption): New method.
23792 (WebCore::RenderMenuList::valueChanged): Let setSelectedIndex call
23793 onChange instead of calling it directly here.
23794 * rendering/RenderMenuList.h:
23796 2006-10-10 Adele Peterson <adele@apple.com>
23801 - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type=text>
23802 and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
23804 Moved autoscroll code to the Frame class
23806 * bridge/mac/FrameMac.h: Moved _mouseDownMayStartDrag and _mouseDownMayStartAutoscroll flags to the frame.
23807 * bridge/mac/FrameMac.mm: Use new getters and setters for drag and autoscroll flags. Moved autoscroll code to Frame::handleMouseMoveEvent.
23808 (WebCore::FrameMac::FrameMac):
23809 (WebCore::FrameMac::handleMousePressEvent):
23810 (WebCore::FrameMac::eventMayStartDrag):
23811 (WebCore::FrameMac::handleMouseMoveEvent):
23812 (WebCore::FrameMac::mouseDown):
23814 * bridge/mac/WebCoreFrameBridge.h: Removed handleAutoscrollForMouseDragged, which called over the bridge for AppKit to do autoscroll for us.
23815 Now we scroll our views in WebCore.
23818 (WebCore::Frame::handleMousePressEvent): Initialize the mouseDownMayStartAutoscroll flag.
23819 (WebCore::Frame::handleMouseMoveEvent): Now kicks off autoscroll if appropriate. Moved from FrameMac.
23820 (WebCore::Frame::updateSelectionForMouseDragOverPosition): Factored code out from handleMouseMoveEvent so we can update the selection from autoscroll too.
23821 (WebCore::Frame::mouseDownMayStartAutoscroll): Added.
23822 (WebCore::Frame::setMouseDownMayStartAutoscroll): Added.
23823 (WebCore::Frame::mouseDownMayStartDrag): Added.
23824 (WebCore::Frame::setMouseDownMayStartDrag): Added.
23825 (WebCore::Frame::autoscrollRenderer): Added
23826 (WebCore::Frame::setAutoscrollRenderer): Added.
23827 (WebCore::Frame::handleAutoscroll): Updated to use autoscrollRenderer getter and setter.
23828 (WebCore::Frame::autoscrollTimerFired): ditto.
23829 (WebCore::Frame::stopAutoscrollTimer): ditto.
23830 * page/Frame.h: Made autoscrollRenderer and stopAutoscrollTimer public, so the renderer being autoscrolled can kill the timer when it dies.
23832 * page/FramePrivate.h:
23833 (WebCore::FramePrivate::FramePrivate): Added mouseDownMayStartDrag and mouseDownMayStartAutoscroll flags. Moved from FrameMac.
23835 * page/FrameView.cpp: Store the current mouse position in window coordinates. The callers can convert to their own coordinate space.
23836 (WebCore::FrameView::handleMousePressEvent):
23837 (WebCore::FrameView::handleMouseDoubleClickEvent):
23838 (WebCore::FrameView::handleMouseMoveEvent):
23839 (WebCore::FrameView::handleMouseReleaseEvent):
23841 * rendering/RenderLayer.cpp:
23842 (WebCore::RenderLayer::autoscroll): Rewrote this to scroll recursively, and to scroll based on the mouse position (not the selection).
23843 We also need to update the selection here, since autoscroll can occur without a mouseMove event, and the selection needs to get reset as we scroll.
23845 * rendering/RenderListBox.cpp:
23846 (WebCore::RenderListBox::autoscroll): Convert the mouse coordinates to the right space.
23848 * rendering/RenderObject.cpp:
23849 (WebCore::RenderObject::shouldAutoscroll): Also return true if the renderer is a root (so we know to autoscroll views too)
23850 (WebCore::RenderObject::destroy): If this renderer is being autoscrolled, stop the frame's autoscroll timer.
23852 2006-10-10 Darin Adler <darin@apple.com>
23854 Rubber stamped by Maciej.
23856 - convert many of the loader source files to Objective-C++ to prepare
23857 to convert some of them to C++
23859 * WebCore.xcodeproj/project.pbxproj:
23860 * loader/mac/WebDataProtocol.m: Removed.
23861 * loader/mac/WebDocumentLoader.m: Removed.
23862 * loader/mac/WebFormState.m: Removed.
23863 * loader/mac/WebFrameLoader.m: Removed.
23864 * loader/mac/WebLoader.m: Removed.
23865 * loader/mac/WebMainResourceLoader.m: Removed.
23866 * loader/mac/WebNetscapePlugInStreamLoader.m: Removed.
23867 * loader/mac/WebPolicyDecider.m: Removed.
23868 * loader/mac/WebSubresourceLoader.m: Removed.
23869 * loader/mac/WebDataProtocol.mm: Added.
23870 * loader/mac/WebDocumentLoader.mm: Added.
23871 * loader/mac/WebFormState.mm: Added.
23872 * loader/mac/WebFrameLoader.mm: Added.
23873 * loader/mac/WebLoader.mm: Added.
23874 * loader/mac/WebMainResourceLoader.mm: Added.
23875 * loader/mac/WebNetscapePlugInStreamLoader.mm: Added.
23876 * loader/mac/WebPolicyDecider.mm: Added.
23877 * loader/mac/WebSubresourceLoader.mm: Added.
23879 2006-10-10 Maciej Stachowiak <mjs@apple.com>
23883 - fixed REGRESSION (r16960): crash on navigating to site
23884 http://www.zoominfo.com/Search/CompanyDetail.aspx?CompanyID=62948057&cs=QGDwILZIE
23886 * loader/mac/WebFrameLoader.m:
23887 (-[WebFrameLoader continueLoadRequestAfterNewWindowPolicy:frameName:formState:]):
23888 Add back a mistakenly removed retain.
23890 2006-10-10 Maciej Stachowiak <mjs@apple.com>
23892 - fixed release build
23894 * WebCore.xcodeproj/project.pbxproj:
23896 2006-10-10 Maciej Stachowiak <mjs@apple.com>
23898 Rubber stamped by Eric.
23900 - moved a big honkin' pile of code over from WebKit; made minimal needed changes to compile
23903 * WebCore.xcodeproj/project.pbxproj:
23904 * loader/mac/LoaderNSURLExtras.m: Added.
23905 * loader/mac/WebDataProtocol.m: Added.
23906 * loader/mac/WebDocumentLoader.m: Added.
23907 * loader/mac/WebFormDataStream.m: Added.
23908 * loader/mac/WebFrameLoader.m: Added.
23909 * loader/mac/WebLoader.m: Added.
23910 (-[NSURLProtocol didReceiveResponse:]):
23911 (-[NSURLProtocol didReceiveData:lengthReceived:allAtOnce:]):
23912 * loader/mac/WebMainResourceLoader.m: Added.
23913 (-[WebMainResourceLoader didReceiveResponse:]):
23914 * loader/mac/WebPolicyDecider.m: Added.
23915 * loader/mac/WebSubresourceLoader.h: Added.
23916 * loader/mac/WebSubresourceLoader.m: Added.
23918 2006-10-10 Maciej Stachowiak <mjs@apple.com>
23920 Reviewed by Oliver (sort of?)
23922 - WebCore part of moving down NSURL extras
23925 * platform/mac/WebCoreSystemInterface.h:
23926 * platform/mac/WebCoreSystemInterface.mm:
23928 2006-10-09 Rob Buis <buis@kde.org>
23932 http://bugs.webkit.org/show_bug.cgi?id=11217
23933 Cleanup svg coding style
23935 Cleanup coding style in svg animation classes.
23937 * ksvg2/svg/SVGAnimateColorElement.cpp:
23938 (WebCore::SVGAnimateColorElement::handleTimerEvent):
23939 * ksvg2/svg/SVGAnimateElement.cpp:
23940 (WebCore::SVGAnimateElement::SVGAnimateElement):
23941 (WebCore::SVGAnimateElement::handleTimerEvent):
23942 * ksvg2/svg/SVGAnimateTransformElement.cpp:
23943 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
23944 (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
23945 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
23946 (WebCore::SVGAnimateTransformElement::parseTransformValue):
23947 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
23948 (WebCore::SVGAnimateTransformElement::initialMatrix):
23949 (WebCore::SVGAnimateTransformElement::transformMatrix):
23950 * ksvg2/svg/SVGAnimateTransformElement.h:
23951 * ksvg2/svg/SVGAnimatedPathData.cpp:
23952 * ksvg2/svg/SVGAnimatedPathData.h:
23953 * ksvg2/svg/SVGAnimatedPoints.cpp:
23954 * ksvg2/svg/SVGAnimatedPoints.h:
23955 * ksvg2/svg/SVGAnimationElement.cpp:
23956 (WebCore::SVGAnimationElement::targetElement):
23958 2006-10-09 Maciej Stachowiak <mjs@apple.com>
23960 Reviewed by Oliver.
23962 - added isMainFrame and frameLoader to WebCoreFrameBridge for ease of future code motion
23964 * bridge/mac/WebCoreFrameBridge.h:
23965 * bridge/mac/WebCoreFrameBridge.mm:
23966 (-[WebCoreFrameBridge isMainFrame]):
23968 2006-10-09 Adam Roben <aroben@apple.com>
23970 Backing out accidental commit.
23973 (WebCore::Frame::finishedParsing):
23975 2006-10-09 Adam Roben <aroben@apple.com>
23979 Add ASSERTs to RefPtr to make sure we don't ref within a destructor, as
23980 this could cause recursive calls to the destructor. RefPtr now also
23981 inherits from Noncopyable.
23983 * dom/NodeFilter.h:
23985 * page/DOMWindow.h:
23987 (WebCore::Frame::finishedParsing):
23990 * platform/FontFallbackList.h:
23992 * platform/Shared.h:
23993 (WebCore::Shared::Shared):
23994 (WebCore::Shared::ref):
23995 (WebCore::Shared::deref):
23996 (WebCore::Shared::hasOneRef):
23997 (WebCore::Shared::refCount):
23998 * platform/StringImpl.h:
24000 2006-10-09 Oliver Hunt <ohunt@apple.com>
24002 Reviewed by Anders.
24006 * html/CanvasGradient.cpp:
24007 (WebCore::CanvasGradient::CanvasGradient):
24008 (WebCore::CanvasGradient::~CanvasGradient):
24009 (WebCore::CanvasGradient::addColorStop):
24010 * html/CanvasGradient.h:
24011 * html/CanvasPattern.cpp:
24012 (WebCore::CanvasPattern::CanvasPattern):
24013 (WebCore::CanvasPattern::~CanvasPattern):
24014 * html/CanvasPattern.h:
24015 * html/CanvasRenderingContext2D.cpp:
24016 (WebCore::CanvasRenderingContext2D::fill):
24017 (WebCore::CanvasRenderingContext2D::stroke):
24018 (WebCore::CanvasRenderingContext2D::fillRect):
24019 (WebCore::CanvasRenderingContext2D::setShadow):
24020 (WebCore::CanvasRenderingContext2D::applyShadow):
24021 (WebCore::CanvasRenderingContext2D::drawImage):
24022 (WebCore::CanvasRenderingContext2D::createPattern):
24023 (WebCore::CanvasRenderingContext2D::applyStrokePattern):
24024 (WebCore::CanvasRenderingContext2D::applyFillPattern):
24025 * html/CanvasRenderingContext2D.h:
24026 * html/CanvasStyle.cpp:
24027 (WebCore::CanvasStyle::applyStrokeColor):
24028 (WebCore::CanvasStyle::applyFillColor):
24029 * html/HTMLCanvasElement.cpp:
24030 (WebCore::HTMLCanvasElement::paint):
24031 (WebCore::HTMLCanvasElement::createDrawingContext):
24032 * html/HTMLCanvasElement.h:
24034 2006-10-09 Adam Roben <aroben@apple.com>
24036 Reviewed by Maciej.
24038 Fix a possible recursive destructor call.
24041 (WebCore::Frame::~Frame): Add a FIXME about cleaning up the destructor.
24042 (WebCore::Frame::finishedParsing): Don't create a protector RefPtr if
24043 we're already being destroyed.
24045 2006-10-09 Sam Weinig <sam.weinig@gmail.com>
24049 Patch for http://bugs.webkit.org/show_bug.cgi?id=11234
24050 Assorted Objective-C bindings changes
24052 - Auto-generate DOMSVGPathSegArcAbs, DOMSVGPathSegArcRel, DOMSVGPathSegClosePath,
24053 DOMSVGPathSegCurvetoCubicAbs, DOMSVGPathSegCurvetoCubicRel,
24054 DOMSVGPathSegCurvetoCubicSmoothAbs, DOMSVGPathSegCurvetoCubicSmoothRel,
24055 DOMSVGPathSegCurvetoQuadraticAbs, DOMSVGPathSegCurvetoQuadraticRel,
24056 DOMSVGPathSegCurvetoQuadraticSmoothAbs, DOMSVGPathSegCurvetoQuadraticSmoothRel,
24057 DOMSVGPathSegLinetoAbs, DOMSVGPathSegLinetoHorizontalAbs,
24058 DOMSVGPathSegLinetoHorizontalRel, DOMSVGPathSegLinetoRel,
24059 DOMSVGPathSegLinetoVerticalAbs, DOMSVGPathSegLinetoVerticalRel,
24060 DOMSVGPathSegMovetoAbs, DOMSVGPathSegMovetoRel and DOMSVGSVGElement.
24062 - Auto-generate absoluteImageURL method for DOMHTMLInputElement and
24063 DOMHTMLObjectElement.
24065 - Auto-generate the internal methods for classes with ivars (notably
24066 DOMNodeIterator and DOMTreeWalker)
24068 - Put more methods in the WebCore namespace and factor out the
24069 displayString method into DOMInternal.h as done by Darin in his
24070 patch for http://bugs.webkit.org/show_bug.cgi?id=11219.
24072 * DerivedSources.make:
24073 * WebCore.xcodeproj/project.pbxproj:
24074 * bindings/objc/DOM.mm:
24075 (-[DOMNode _initWithNode:WebCore::]):
24076 (+[DOMNode _nodeWith:WebCore::]):
24077 (-[DOMNode addEventListener:listener:useCapture:]):
24078 (-[DOMNode removeEventListener:listener:useCapture:]):
24079 (-[DOMNode dispatchEvent:]):
24080 (-[DOMElement _imageTIFFRepresentation]):
24081 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
24082 (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
24083 (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
24084 (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
24085 * bindings/objc/DOMCSS.mm:
24086 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
24087 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
24088 (-[DOMCSSRule _initWithCSSRule:WebCore::]):
24089 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
24090 (-[DOMCSSValue _initWithCSSValue:WebCore::]):
24091 (+[DOMCSSValue _CSSValueWith:WebCore::]):
24092 * bindings/objc/DOMEvents.mm:
24093 (-[DOMEvent _initWithEvent:WebCore::]):
24094 (+[DOMEvent _eventWith:WebCore::]):
24095 * bindings/objc/DOMExtensions.h:
24096 * bindings/objc/DOMHTML.mm:
24097 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
24098 * bindings/objc/DOMInternal.h:
24099 (-[DOMNodeFilter WebCore::]):
24100 * bindings/objc/DOMInternal.mm:
24101 (-[WebScriptObject _init]):
24102 (-[WebScriptObject _initializeScriptDOMNodeImp]):
24103 (WebCore::displayString):
24104 * bindings/objc/DOMObject.mm:
24105 (-[DOMObject dealloc]):
24106 (-[DOMObject finalize]):
24107 * bindings/objc/DOMRGBColor.mm:
24108 (-[DOMRGBColor dealloc]):
24109 (-[DOMRGBColor finalize]):
24110 (-[DOMRGBColor color]):
24111 (-[DOMRGBColor _initWithRGB:WebCore::]):
24112 (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
24113 * bindings/objc/DOMSVG.h:
24114 * bindings/objc/DOMSVGPathSegInternal.h: Added.
24115 * bindings/objc/DOMSVGPathSegInternal.mm: Added.
24116 (-[DOMSVGPathSeg WebCore::]):
24117 (-[DOMSVGPathSeg _initWithSVGPathSeg:WebCore::]):
24118 (+[DOMSVGPathSeg _SVGPathSegWith:WebCore::]):
24119 * bindings/objc/DOMXPath.mm:
24120 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
24121 (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
24122 * bindings/objc/PublicDOMInterfaces.h:
24123 * bindings/scripts/CodeGeneratorObjC.pm:
24124 * dom/NodeIterator.idl:
24125 * dom/TreeWalker.idl:
24126 * html/HTMLInputElement.idl:
24127 * html/HTMLObjectElement.idl:
24128 * ksvg2/svg/SVGDocument.idl:
24129 * ksvg2/svg/SVGElement.idl:
24130 * ksvg2/svg/SVGPathSeg.idl:
24131 * ksvg2/svg/SVGPathSegArcAbs.idl:
24132 * ksvg2/svg/SVGPathSegArcRel.idl:
24133 * ksvg2/svg/SVGPathSegClosePath.idl:
24134 * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl:
24135 * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl:
24136 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl:
24137 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl:
24138 * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl:
24139 * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl:
24140 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl:
24141 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl:
24142 * ksvg2/svg/SVGPathSegLinetoAbs.idl:
24143 * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl:
24144 * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl:
24145 * ksvg2/svg/SVGPathSegLinetoRel.idl:
24146 * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl:
24147 * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl:
24148 * ksvg2/svg/SVGPathSegMovetoAbs.idl:
24149 * ksvg2/svg/SVGPathSegMovetoRel.idl:
24151 2006-10-09 Don Gibson <dgibson77@gmail.com>
24153 Unreviewed build fix.
24155 Fix windows build bustage.
24157 * platform/win/TemporaryLinkStubs.cpp:
24159 2006-10-09 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
24163 Fix memory leaks discovered via valgrind. Gdk build fixes.
24165 * Projects/gdk/webcore-gdk.bkl:
24166 * make-generated-sources.sh:
24167 * platform/cairo/ImageCairo.cpp:
24168 (WebCore::Image::draw):
24169 * platform/gdk/FrameGdk.cpp:
24170 (WebCore::FrameGdk::handleGdkEvent):
24171 * platform/gdk/FrameGdk.h:
24172 * platform/gdk/PlatformScrollBar.h:
24173 (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
24174 (WebCore::PlatformScrollbar::verticalScrollbarWidth):
24176 2006-10-09 Nikolas Zimmermann <zimmermann@kde.org>
24180 Fix LayoutTests/fast/css/case-transform.html with Qt - the last crashing layout test.
24182 * platform/qt/GlyphMapQt.cpp: Handle UTF-16 characters properly
24183 (WebCore::GlyphMap::fillPage):
24185 2006-10-09 Nikolas Zimmermann <zimmermann@kde.org>
24187 Unreviewed build fix.
24189 Fix for Qt/Linux build, based on fixes to the Win32 build in r16928 and r16929.
24191 * platform/qt/FrameQt.cpp:
24192 (WebCore::FrameQt::createJavaAppletWidget):
24193 * platform/qt/FrameQt.h:
24194 * platform/qt/TemporaryLinkStubs.cpp:
24196 2006-10-09 Brady Eidson <beidson@apple.com>
24200 Tiny changes to help reorganize WebFrameLoader code in WebKit
24202 * bridge/mac/WebCoreIconDatabaseBridge.h: Added "createInstance"
24203 * bridge/mac/WebCoreIconDatabaseBridge.mm:
24204 (+[WebCoreIconDatabaseBridge sharedInstance]): Added, uses createInstance from WebKit side
24206 2006-10-09 Adam Roben <aroben@apple.com>
24210 Remove redundant call to Frame::cancelAndClear from ~Frame, since it's
24211 already called frome ~FrameMac.
24214 (WebCore::Frame::~Frame):
24216 2006-10-09 Anders Carlsson <acarlsson@apple.com>
24218 * bridge/win/FrameWin.h:
24219 Add function declaration.
24221 2006-10-09 Anders Carlsson <acarlsson@apple.com>
24223 * platform/win/TemporaryLinkStubs.cpp:
24224 (FrameWin::createJavaAppletWidget):
24225 Try fixing the Win32 build.
24227 2006-10-09 Anders Carlsson <acarlsson@apple.com>
24231 Move applet widget creation to Frame and get rid of JavaAppletWidget.
24232 * WebCore.xcodeproj/project.pbxproj:
24233 * bridge/JavaAppletWidget.h: Removed.
24234 * bridge/mac/FrameMac.h:
24235 * bridge/mac/FrameMac.mm:
24236 (WebCore::FrameMac::createJavaAppletWidget):
24237 * bridge/mac/JavaAppletWidget.mm: Removed.
24239 * rendering/RenderApplet.cpp:
24240 (WebCore::RenderApplet::createWidgetIfNecessary):
24242 2006-10-09 Mitz Pettel <mitz@webkit.org>
24246 - http://bugs.webkit.org/show_bug.cgi?id=11220
24247 Fix manual test for http://bugs.webkit.org/show_bug.cgi?id=8276
24249 Subversion does not support resource forks and HFS metadata, so
24250 the resources for this test need to be on a disk image.
24252 * manual-tests/plain-text-paste.html: Changed instructions to refer to the disk image.
24253 * manual-tests/resources/plain-text-paste.dmg: Added.
24254 * manual-tests/resources/plain-text-paste/._1.textClipping: Removed.
24255 * manual-tests/resources/plain-text-paste/._2.textClipping: Removed.
24256 * manual-tests/resources/plain-text-paste/._4.txt: Removed.
24257 * manual-tests/resources/plain-text-paste/._5.webloc: Removed.
24258 * manual-tests/resources/plain-text-paste/1.textClipping: Removed.
24259 * manual-tests/resources/plain-text-paste/2.textClipping: Removed.
24260 * manual-tests/resources/plain-text-paste/3.gif: Removed.
24261 * manual-tests/resources/plain-text-paste/4.txt: Removed.
24262 * manual-tests/resources/plain-text-paste/5.webloc: Removed.
24264 2006-10-09 Rob Buis <buis@kde.org>
24268 http://bugs.webkit.org/show_bug.cgi?id=11217
24269 Cleanup svg coding style
24271 Cleanup coding style in filter classes.
24273 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
24274 (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
24275 (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
24276 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
24277 * ksvg2/svg/SVGFEBlendElement.cpp:
24278 (WebCore::SVGFEBlendElement::SVGFEBlendElement):
24279 (WebCore::SVGFEBlendElement::parseMappedAttribute):
24280 (WebCore::SVGFEBlendElement::filterEffect):
24281 * ksvg2/svg/SVGFEBlendElement.h:
24282 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
24283 (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
24284 (WebCore::SVGFEColorMatrixElement::parseMappedAttribute):
24285 (WebCore::SVGFEColorMatrixElement::filterEffect):
24286 * ksvg2/svg/SVGFEColorMatrixElement.h:
24287 * ksvg2/svg/SVGFECompositeElement.cpp:
24288 (WebCore::SVGFECompositeElement::parseMappedAttribute):
24289 * ksvg2/svg/SVGFECompositeElement.h:
24290 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
24291 (WebCore::SVGFEDisplacementMapElement::stringToChannel):
24292 * ksvg2/svg/SVGFEDisplacementMapElement.h:
24293 * ksvg2/svg/SVGFEFloodElement.cpp:
24294 (WebCore::SVGFEFloodElement::filterEffect):
24295 * ksvg2/svg/SVGFEFuncAElement.cpp:
24296 (WebCore::SVGFEFuncAElement::SVGFEFuncAElement):
24297 * ksvg2/svg/SVGFEFuncBElement.cpp:
24298 (WebCore::SVGFEFuncBElement::SVGFEFuncBElement):
24299 * ksvg2/svg/SVGFEFuncGElement.cpp:
24300 (WebCore::SVGFEFuncGElement::SVGFEFuncGElement):
24301 * ksvg2/svg/SVGFEFuncRElement.cpp:
24302 (WebCore::SVGFEFuncRElement::SVGFEFuncRElement):
24303 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
24304 (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
24305 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
24306 (WebCore::SVGFEGaussianBlurElement::filterEffect):
24307 * ksvg2/svg/SVGFEGaussianBlurElement.h:
24308 * ksvg2/svg/SVGFELightElement.cpp:
24309 (WebCore::SVGFELightElement::SVGFELightElement):
24310 (WebCore::SVGFELightElement::parseMappedAttribute):
24311 * ksvg2/svg/SVGFELightElement.h:
24312 * ksvg2/svg/SVGFEMergeElement.cpp:
24313 (WebCore::SVGFEMergeElement::SVGFEMergeElement):
24315 2006-10-09 Rob Buis <buis@kde.org>
24317 Reviewed by olliej.
24319 http://bugs.webkit.org/show_bug.cgi?id=11217
24320 Cleanup svg coding style
24322 Cleanup coding style in SVGPath* classes.
24324 * ksvg2/svg/SVGPathElement.cpp:
24325 (WebCore::SVGPathElement::SVGPathElement):
24326 (WebCore::SVGPathElement::getPointAtLength):
24327 (WebCore::SVGPathElement::createSVGPathSegClosePath):
24328 (WebCore::SVGPathElement::createSVGPathSegMovetoAbs):
24329 (WebCore::SVGPathElement::createSVGPathSegMovetoRel):
24330 (WebCore::SVGPathElement::createSVGPathSegLinetoAbs):
24331 (WebCore::SVGPathElement::createSVGPathSegLinetoRel):
24332 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicAbs):
24333 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicRel):
24334 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticAbs):
24335 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticRel):
24336 (WebCore::SVGPathElement::createSVGPathSegArcAbs):
24337 (WebCore::SVGPathElement::createSVGPathSegArcRel):
24338 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalAbs):
24339 (WebCore::SVGPathElement::createSVGPathSegLinetoHorizontalRel):
24340 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalAbs):
24341 (WebCore::SVGPathElement::createSVGPathSegLinetoVerticalRel):
24342 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothAbs):
24343 (WebCore::SVGPathElement::createSVGPathSegCurvetoCubicSmoothRel):
24344 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothAbs):
24345 (WebCore::SVGPathElement::createSVGPathSegCurvetoQuadraticSmoothRel):
24346 (WebCore::SVGPathElement::svgMoveTo):
24347 (WebCore::SVGPathElement::svgLineTo):
24348 (WebCore::SVGPathElement::svgLineToHorizontal):
24349 (WebCore::SVGPathElement::svgLineToVertical):
24350 (WebCore::SVGPathElement::svgCurveToCubic):
24351 (WebCore::SVGPathElement::svgCurveToCubicSmooth):
24352 (WebCore::SVGPathElement::svgCurveToQuadratic):
24353 (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
24354 (WebCore::SVGPathElement::svgArcTo):
24355 (WebCore::SVGPathElement::parseMappedAttribute):
24356 (WebCore::SVGPathElement::pathSegList):
24357 (WebCore::SVGPathElement::normalizedPathSegList):
24358 (WebCore::SVGPathElement::animatedPathSegList):
24359 (WebCore::SVGPathElement::animatedNormalizedPathSegList):
24360 (WebCore::SVGPathElement::toPathData):
24361 * ksvg2/svg/SVGPathElement.h:
24362 (WebCore::SVGPathElement::rendererIsNeeded):
24363 * ksvg2/svg/SVGPathSeg.h:
24364 * ksvg2/svg/SVGPathSegArc.cpp:
24366 2006-10-09 Rob Buis <buis@kde.org>
24368 Reviewed by aroben.
24370 http://bugs.webkit.org/show_bug.cgi?id=11217
24371 Cleanup svg coding style
24373 Cleanup coding style in svg shape classes.
24375 * ksvg2/svg/SVGCircleElement.cpp:
24376 (WebCore::SVGCircleElement::SVGCircleElement):
24377 (WebCore::SVGCircleElement::parseMappedAttribute):
24378 (WebCore::SVGCircleElement::pushAttributeContext):
24379 * ksvg2/svg/SVGCircleElement.h:
24380 (WebCore::SVGCircleElement::rendererIsNeeded):
24381 * ksvg2/svg/SVGEllipseElement.cpp:
24382 * ksvg2/svg/SVGEllipseElement.h:
24383 (WebCore::SVGEllipseElement::rendererIsNeeded):
24384 * ksvg2/svg/SVGLineElement.cpp:
24385 (WebCore::SVGLineElement::parseMappedAttribute):
24386 (WebCore::SVGLineElement::pushAttributeContext):
24387 * ksvg2/svg/SVGLineElement.h:
24388 (WebCore::SVGLineElement::rendererIsNeeded):
24389 * ksvg2/svg/SVGPolyElement.cpp:
24390 (WebCore::SVGPolyElement::SVGPolyElement):
24391 (WebCore::SVGPolyElement::points):
24392 (WebCore::SVGPolyElement::animatedPoints):
24393 (WebCore::SVGPolyElement::parseMappedAttribute):
24394 (WebCore::SVGPolyElement::notifyAttributeChange):
24395 * ksvg2/svg/SVGPolyElement.h:
24396 (WebCore::SVGPolyElement::rendererIsNeeded):
24397 * ksvg2/svg/SVGPolygonElement.cpp:
24398 (WebCore::SVGPolygonElement::SVGPolygonElement):
24399 (WebCore::SVGPolygonElement::toPathData):
24400 * ksvg2/svg/SVGPolygonElement.h:
24401 * ksvg2/svg/SVGPolylineElement.cpp:
24402 (WebCore::SVGPolylineElement::SVGPolylineElement):
24403 (WebCore::SVGPolylineElement::toPathData):
24404 * ksvg2/svg/SVGPolylineElement.h:
24405 * ksvg2/svg/SVGRectElement.cpp:
24406 (WebCore::SVGRectElement::parseMappedAttribute):
24407 (WebCore::SVGRectElement::pushAttributeContext):
24408 * ksvg2/svg/SVGRectElement.h:
24409 (WebCore::SVGRectElement::rendererIsNeeded):
24411 2006-10-08 Darin Adler <darin@apple.com>
24413 Reviewed by Maciej.
24415 - added a bit more WebCoreSystemInterface
24417 wkGetNSURLResponseCalculatedExpiration
24418 wkGetNSURLResponseLastModifiedDate
24419 wkGetNSURLResponseMustRevalidate
24421 * WebCore.exp: Added the new symbols.
24422 * platform/mac/WebCoreSystemInterface.h: Ditto.
24423 * platform/mac/WebCoreSystemInterface.mm: Ditto.
24425 - quiet down the code generation script
24427 * bindings/scripts/CodeGenerator.pm:
24429 2006-10-08 Maciej Stachowiak <mjs@apple.com>
24433 - more code laundering - add wkSupportsMultipartXMixedReplace
24436 * platform/mac/WebCoreSystemInterface.h:
24437 * platform/mac/WebCoreSystemInterface.mm:
24439 2006-10-08 Nikolas Zimmermann <zimmermann@kde.org>
24441 Reviewed by Darin and Oliver.
24443 Fix artefacts when drawing polygons, most noticeable when painting <hr> elements.
24445 * platform/qt/GraphicsContextQt.cpp: Fix wrong operator<< usage.
24446 (WebCore::GraphicsContext::drawConvexPolygon):
24448 2006-10-08 Anders Carlsson <acarlsson@apple.com>
24453 (WebCore::Frame::submitForm):
24454 No need to use latin1() here.
24456 2006-10-08 Nikolas Zimmermann <zimmermann@kde.org>
24460 Kill warnings when generating IDL files on Qt/Linux, as the
24461 SOURCE_ROOT environment variable is not defined (and not needed) for us.
24463 * bindings/scripts/CodeGenerator.pm:
24465 2006-10-08 Maciej Stachowiak <mjs@apple.com>
24469 - split didNotOpenURL: into general and page-cache-specific parts
24471 * bridge/mac/WebCoreFrameBridge.h:
24472 * bridge/mac/WebCoreFrameBridge.mm:
24473 (-[WebCoreFrameBridge didNotOpenURL:]):
24474 (-[WebCoreFrameBridge invalidatePageCache:]):
24476 2006-10-08 Anders Carlsson <acarlsson@apple.com>
24480 * loader/loader.cpp:
24481 Remove DeprecatedStringList.h include.
24484 (WebCore::Frame::submitForm):
24485 Don't remove "attach" from mailto URLs, we don't do it anywhere else.
24487 2006-10-08 Sam Weinig <sam.weinig@gmail.com>
24491 Patch for http://bugs.webkit.org/show_bug.cgi?id=11215
24492 Yet another round of Objective-C SVG DOM bindings auto-generation
24494 - Auto-generate DOMSVGPatternElement, DOMSVGPointList, DOMSVGPolygonElement,
24495 DOMSVGPolylineElement, DOMSVGRadialGradientElement, DOMSVGRenderingIntent,
24496 DOMSVGScriptElement, DOMSVGSetElement, DOMSVGStopElement, DOMSVGSwitchElement,
24497 DOMSVGSymbolElement, DOMSVGTRefElement, DOMSVGTSpanElement,
24498 DOMSVGTextContentElement, DOMSVGTextElement, DOMSVGTextPositioningElement,
24499 DOMSVGTitleElement, DOMSVGUnitTypes, DOMSVGUseElement, DOMSVGViewElement,
24500 DOMSVGZoomAndPan and DOMSVGZoomEvent.
24502 - Auto-generate the implementations of DOMHTMLAppletElement and DOMHTMLEmbedElement
24503 using the new [ConvertFromString] property.
24505 - Add forward declarations for NS* types to auto-generated classes.
24507 * DerivedSources.make:
24508 * WebCore.xcodeproj/project.pbxproj:
24509 * bindings/objc/DOMHTMLAppletElement.mm: Removed.
24510 * bindings/objc/DOMHTMLEmbedElement.mm: Removed.
24511 * bindings/objc/DOMInternal.h:
24512 * bindings/objc/DOMSVG.h:
24513 * bindings/scripts/CodeGeneratorObjC.pm:
24514 * html/HTMLAppletElement.idl:
24515 * html/HTMLEmbedElement.idl:
24516 * ksvg2/svg/SVGPatternElement.idl:
24517 * ksvg2/svg/SVGPolygonElement.idl:
24518 * ksvg2/svg/SVGPolylineElement.idl:
24519 * ksvg2/svg/SVGRadialGradientElement.idl:
24520 * ksvg2/svg/SVGRenderingIntent.idl:
24521 * ksvg2/svg/SVGScriptElement.idl:
24522 * ksvg2/svg/SVGSetElement.idl:
24523 * ksvg2/svg/SVGStopElement.idl:
24524 * ksvg2/svg/SVGSwitchElement.idl:
24525 * ksvg2/svg/SVGSymbolElement.idl:
24526 * ksvg2/svg/SVGTRefElement.idl:
24527 * ksvg2/svg/SVGTSpanElement.idl:
24528 * ksvg2/svg/SVGTextContentElement.idl:
24529 * ksvg2/svg/SVGTextElement.idl:
24530 * ksvg2/svg/SVGTextPositioningElement.idl:
24531 * ksvg2/svg/SVGTitleElement.idl:
24532 * ksvg2/svg/SVGUseElement.idl:
24533 * ksvg2/svg/SVGViewElement.idl:
24534 * ksvg2/svg/SVGZoomEvent.idl:
24536 2006-10-07 Anders Carlsson <acarlsson@apple.com>
24538 Reviewed by Maciej.
24540 Remove crossDomain, it was unused and is one of the last functions that use DeprecatedStringList.
24541 * loader/loader.cpp:
24542 (WebCore::Loader::servePendingRequests):
24544 2006-10-07 Anders Carlsson <acarlsson@apple.com>
24548 Convert a bunch of RefPtr<StringImpl> to String.
24550 * bridge/mac/FrameMac.h:
24551 * bridge/mac/FrameMac.mm:
24552 (WebCore::FrameMac::didTellBridgeAboutLoad):
24553 (WebCore::FrameMac::haveToldBridgeAboutLoad):
24554 * dom/BeforeUnloadEvent.cpp:
24555 (WebCore::BeforeUnloadEvent::storeResult):
24556 * dom/BeforeUnloadEvent.h:
24557 (WebCore::BeforeUnloadEvent::result):
24558 * dom/Document.cpp:
24559 (WebCore::Document::createEntityReference):
24561 (WebCore::Entity::Entity):
24562 (WebCore::Entity::nodeName):
24563 (WebCore::Entity::toString):
24565 (WebCore::Entity::publicId):
24566 (WebCore::Entity::systemId):
24567 (WebCore::Entity::notationName):
24568 * dom/EntityReference.cpp:
24569 (WebCore::EntityReference::EntityReference):
24570 (WebCore::EntityReference::nodeName):
24571 (WebCore::EntityReference::cloneNode):
24572 (WebCore::EntityReference::toString):
24573 * dom/EntityReference.h:
24574 * dom/KeyboardEvent.cpp:
24575 (WebCore::KeyboardEvent::KeyboardEvent):
24576 (WebCore::KeyboardEvent::initKeyboardEvent):
24577 * dom/KeyboardEvent.h:
24578 (WebCore::KeyboardEvent::keyIdentifier):
24579 * dom/MutationEvent.cpp:
24580 (WebCore::MutationEvent::MutationEvent):
24581 (WebCore::MutationEvent::initMutationEvent):
24582 * dom/MutationEvent.h:
24583 (WebCore::MutationEvent::prevValue):
24584 (WebCore::MutationEvent::newValue):
24585 (WebCore::MutationEvent::attrName):
24586 * dom/Notation.cpp:
24587 (WebCore::Notation::Notation):
24588 (WebCore::Notation::nodeName):
24590 (WebCore::Notation::publicId):
24591 (WebCore::Notation::systemId):
24592 * dom/ProcessingInstruction.cpp:
24593 (WebCore::ProcessingInstruction::ProcessingInstruction):
24594 (WebCore::ProcessingInstruction::setData):
24595 (WebCore::ProcessingInstruction::nodeName):
24596 (WebCore::ProcessingInstruction::nodeValue):
24597 (WebCore::ProcessingInstruction::cloneNode):
24598 (WebCore::ProcessingInstruction::checkStyleSheet):
24599 (WebCore::ProcessingInstruction::toString):
24600 * dom/ProcessingInstruction.h:
24601 (WebCore::ProcessingInstruction::target):
24602 (WebCore::ProcessingInstruction::data):
24603 (WebCore::ProcessingInstruction::localHref):
24605 2006-10-07 Sam Weinig <sam.weinig@gmail.com>
24609 Patch for http://bugs.webkit.org/show_bug.cgi?id=11206
24610 10 more SVG Objective-C auto-generated bindings
24612 - Auto-generate DOMSVGFilterElement, DOMSVGFitToViewBox,
24613 DOMSVGForeignObjectElement, DOMSVGGElement, DOMSVGGradientElement,
24614 DOMSVGImageElement, DOMSVGLineElement, DOMSVGLinearGradientElement,
24615 DOMSVGMarkerElement, DOMSVGMaskElement and DOMSVGPaint.
24617 - Auto-generate the text method for DOMRange.
24619 * DerivedSources.make:
24620 * WebCore.xcodeproj/project.pbxproj:
24621 * bindings/objc/DOM.mm:
24622 * bindings/objc/DOMExtensions.h:
24623 * bindings/objc/DOMInternal.h:
24624 * bindings/objc/DOMPrivate.h:
24625 * bindings/objc/DOMRGBColor.mm:
24626 * bindings/objc/DOMSVG.h:
24627 * bindings/objc/PublicDOMInterfaces.h:
24628 * bindings/scripts/CodeGeneratorObjC.pm:
24630 * ksvg2/svg/SVGFilterElement.cpp:
24631 * ksvg2/svg/SVGFilterElement.h:
24632 * ksvg2/svg/SVGFilterElement.idl:
24633 * ksvg2/svg/SVGForeignObjectElement.idl:
24634 * ksvg2/svg/SVGGElement.idl:
24635 * ksvg2/svg/SVGGradientElement.idl:
24636 * ksvg2/svg/SVGImageElement.idl:
24637 * ksvg2/svg/SVGLineElement.idl:
24638 * ksvg2/svg/SVGLinearGradientElement.idl:
24639 * ksvg2/svg/SVGMarkerElement.idl:
24640 * ksvg2/svg/SVGMaskElement.idl:
24641 * ksvg2/svg/SVGPaint.idl:
24643 2006-10-07 Sam Weinig <sam.weinig@gmail.com>
24647 Patch for http://bugs.webkit.org/show_bug.cgi?id=11198
24648 Auto-generate a few more Objective-C DOM interfaces
24650 - Fully auto-generate DOMAbstractView and DOMRange.
24652 - Auto-generate just the interface for DOMRGBColor.
24654 - Add DOMRanges.h as the new top level file for Ranges
24657 - Add DOMRanges.h and DOMXPath.h to DOM.mm
24659 * DerivedSources.make:
24660 * WebCore.xcodeproj/project.pbxproj:
24661 * bindings/objc/DOM.h:
24662 * bindings/objc/DOM.mm:
24663 * bindings/objc/DOMAbstractView.h: Removed.
24664 * bindings/objc/DOMAbstractView.mm: Removed.
24665 * bindings/objc/DOMInternal.h:
24666 * bindings/objc/DOMPrivate.h:
24667 * bindings/objc/DOMRGBColor.h: Removed.
24668 * bindings/objc/DOMRGBColor.mm:
24669 * bindings/objc/DOMRange.h: Removed.
24670 * bindings/objc/DOMRanges.h: Added.
24671 * bindings/objc/PublicDOMInterfaces.h:
24672 * bindings/scripts/CodeGeneratorObjC.pm:
24673 * css/RGBColor.idl:
24675 * page/AbstractView.idl: Added.
24677 2006-10-07 Andrew Wellington <proton@wiretapped.net>
24681 Bug 10837: REGRESSION: Yahoo New Charts Crashes WebKit
24682 http://bugs.webkit.org/show_bug.cgi?id=10837
24684 Return null when there is no frame. This matches Firefox.
24686 * bindings/js/kjs_html.cpp:
24687 (KJS::JSHTMLDocument::getValueProperty):
24689 2006-10-07 David Hyatt <hyatt@apple.com>
24691 Implement scroll corner painting (a white rect fill) for overflow areas to cover up
24692 scrollbar joins properly.
24694 Refactor painting of scrollbars and resizers into common functions. Eliminate the
24695 extra 20 bytes per RenderLayer by cutting out m_resizerImage and m_resizerControlRect.
24699 * page/FrameView.cpp:
24700 (WebCore::selectCursor):
24701 (WebCore::FrameView::handleMouseMoveEvent):
24702 * platform/mac/PlatformScrollBar.h:
24703 (WebCore::PlatformScrollbar::horizontalScrollbarHeight):
24704 (WebCore::PlatformScrollbar::verticalScrollbarWidth):
24705 * rendering/RenderLayer.cpp:
24706 (WebCore::RenderLayer::RenderLayer):
24707 (WebCore::RenderLayer::~RenderLayer):
24708 (WebCore::RenderLayer::updateLayerPositions):
24709 (WebCore::scrollCornerRect):
24710 (WebCore::RenderLayer::positionOverflowControls):
24711 (WebCore::RenderLayer::paintOverflowControls):
24712 (WebCore::RenderLayer::isPointInResizeControl):
24713 (WebCore::RenderLayer::paintLayer):
24714 * rendering/RenderLayer.h:
24716 2006-10-07 Mark Rowe <bdash@webkit.org>
24720 Linux/Gdk build fixes, primarily consisting of s/ScrollBar/Scrollbar/ and
24721 matching recent ResourceLoader changes.
24723 * platform/gdk/FrameGdk.cpp:
24724 (WebCore::FrameGdk::openURL):
24725 (WebCore::FrameGdk::urlSelected):
24726 * platform/gdk/PlatformScrollBar.h:
24727 * platform/gdk/ResourceLoaderCurl.cpp:
24728 (WebCore::ResourceLoader::start):
24729 * platform/gdk/ScrollViewGdk.cpp:
24730 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
24731 (WebCore::ScrollView::resizeContents):
24732 (WebCore::ScrollView::scrollBy):
24733 (WebCore::ScrollView::hScrollbarMode):
24734 (WebCore::ScrollView::vScrollbarMode):
24735 (WebCore::ScrollView::suppressScrollbars):
24736 (WebCore::ScrollView::setHScrollbarMode):
24737 (WebCore::ScrollView::setVScrollbarMode):
24738 (WebCore::ScrollView::setScrollbarsMode):
24739 * platform/gdk/TemporaryLinkStubs.cpp:
24740 (FrameView::passMousePressEventToScrollbar):
24741 (Widget::removeFromParent):
24742 (ScrollView::addChild):
24743 (ScrollView::updateScrollbars):
24744 (ScrollView::scrollbarUnderMouse):
24745 (PlatformScrollbar::PlatformScrollbar):
24746 (PlatformScrollbar::~PlatformScrollbar):
24747 (PlatformScrollbar::width):
24748 (PlatformScrollbar::height):
24749 (PlatformScrollbar::setEnabled):
24750 (PlatformScrollbar::paint):
24751 (PlatformScrollbar::updateThumbPosition):
24752 (PlatformScrollbar::updateThumbProportion):
24753 (PlatformScrollbar::setRect):
24754 (Scrollbar::Scrollbar):
24755 (Scrollbar::setSteps):
24756 (Scrollbar::scroll):
24757 (Scrollbar::setValue):
24758 (Scrollbar::setProportion):
24760 2006-10-06 Dave Hyatt <hyatt@apple.com>
24762 Implement a new method for obtaining accurate clip rectangles that can be used by plugins to properly clip.
24764 * page/FrameView.cpp:
24765 (WebCore::FrameView::windowClipRect):
24766 * page/FrameView.h:
24767 * platform/ScrollView.h:
24768 * platform/Widget.cpp:
24769 (WebCore::Widget::windowClipRect):
24770 * platform/Widget.h:
24771 (WebCore::Widget::geometryChanged):
24772 (WebCore::Widget::handleMouseMoveEvent):
24773 (WebCore::Widget::handleMouseReleaseEvent):
24774 * platform/mac/ScrollViewMac.mm:
24775 (WebCore::ScrollView::addChild):
24776 * rendering/RenderLayer.cpp:
24777 (WebCore::RenderLayer::documentClipRect):
24778 * rendering/RenderLayer.h:
24780 2006-10-06 Steve Falkenburg <sfalken@apple.com>
24784 Add another method we'll need for scrollbar dodging
24786 * platform/ScrollView.h:
24787 * platform/win/TemporaryLinkStubs.cpp:
24788 (ScrollView::resizerOverlapsContent):
24790 2006-10-06 Sam Weinig <sam.weinig@gmail.com>
24794 Patch for http://bugs.webkit.org/show_bug.cgi?id=11191
24795 Auto-generate the interfaces even for Objective-C DOM
24796 bindings that need custom implementations
24798 - Fully auto-generate DOMEventTarget, DOMNodeFilter and
24799 DOMHTMLOptionElement.
24801 - Auto-generate just the interface for DOMHTMLAppletElement,
24802 DOMHTMLEmbedElement, DOMSVGNumber, DOMSVGPoint and DOMSVGRect
24803 using the new IDL property ObjCCustomImplementation.
24805 * DerivedSources.make:
24806 * WebCore.xcodeproj/project.pbxproj:
24807 * bindings/objc/DOMEventTarget.h: Removed.
24808 * bindings/objc/DOMHTMLAppletElement.h: Removed.
24809 * bindings/objc/DOMHTMLEmbedElement.h: Removed.
24810 * bindings/objc/DOMHTMLOptionElement.h: Removed.
24811 * bindings/objc/DOMHTMLOptionElement.mm: Removed.
24812 * bindings/objc/DOMInternal.h:
24813 * bindings/objc/DOMNodeFilter.h: Removed.
24814 * bindings/objc/DOMSVGNumber.h: Removed.
24815 * bindings/objc/DOMSVGPoint.h: Removed.
24816 * bindings/objc/DOMSVGPoint.mm:
24817 (-[DOMSVGPoint matrixTransform:]):
24818 * bindings/objc/DOMSVGRect.h: Removed.
24819 * bindings/objc/PublicDOMInterfaces.h:
24820 * bindings/scripts/CodeGeneratorObjC.pm:
24821 * dom/EventTarget.idl:
24822 * html/HTMLAppletElement.idl:
24823 * html/HTMLEmbedElement.idl:
24824 * html/HTMLOptionElement.idl:
24825 * ksvg2/svg/SVGNumber.idl:
24826 * ksvg2/svg/SVGPoint.idl:
24827 * ksvg2/svg/SVGRect.idl:
24829 2006-10-06 Nikolas Zimmermann <zimmermann@kde.org>
24833 Make Qt/Linux compile again completly.
24835 * platform/qt/WidgetQt.cpp:
24836 (WebCore::Widget::removeFromParent):
24838 2006-10-06 Nikolas Zimmermann <zimmermann@kde.org>
24842 Fix Qt/Linux build by adapting the s/ScrollBar/Scrollbar/ patch.
24844 * platform/qt/PlatformScrollBar.h:
24845 * platform/qt/ScrollViewQt.cpp:
24846 (WebCore::ScrollView::hScrollbarMode):
24847 (WebCore::ScrollView::vScrollbarMode):
24848 (WebCore::ScrollView::suppressScrollbars):
24849 (WebCore::ScrollView::setHScrollbarMode):
24850 (WebCore::ScrollView::setVScrollbarMode):
24851 (WebCore::ScrollView::setScrollbarsMode):
24852 (WebCore::ScrollView::scrollbarUnderMouse):
24853 * platform/qt/TemporaryLinkStubs.cpp:
24854 (WebCore::Scrollbar::Scrollbar):
24855 (WebCore::Scrollbar::setSteps):
24856 (WebCore::Scrollbar::scroll):
24857 (WebCore::Scrollbar::setValue):
24858 (WebCore::Scrollbar::setProportion):
24859 (WebCore::PlatformScrollbar::PlatformScrollbar):
24860 (WebCore::PlatformScrollbar::~PlatformScrollbar):
24861 (WebCore::PlatformScrollbar::width):
24862 (WebCore::PlatformScrollbar::height):
24863 (WebCore::PlatformScrollbar::setEnabled):
24864 (WebCore::PlatformScrollbar::paint):
24865 (WebCore::PlatformScrollbar::updateThumbPosition):
24866 (WebCore::PlatformScrollbar::updateThumbProportion):
24867 (WebCore::PlatformScrollbar::setRect):
24868 (FrameView::passMousePressEventToScrollbar):
24870 2006-10-06 Sam Weinig <sam.weinig@gmail.com>
24874 Patch for http://bugs.webkit.org/show_bug.cgi?id=11177
24875 Another round of Objective-C SVG DOM bindings auto-generation
24877 - Auto-generate DOMSVGAnimatedNumberList, DOMSVGAnimatedRect,
24878 DOMSVGComponentTransferFunctionElement, DOMSVGFEBlendElement,
24879 DOMSVGFEColorMatrixElement, DOMSVGFEComponentTransferElement,
24880 DOMSVGFECompositeElement, DOMSVGFEDiffuseLightingElement,
24881 DOMSVGFEDisplacementMapElement, DOMSVGFEDistantLightElement,
24882 DOMSVGFEFloodElement, DOMSVGFEFuncAElement, DOMSVGFEFuncBElement,
24883 DOMSVGFEFuncGElement, DOMSVGFEFuncRElement, DOMSVGFEGaussianBlurElement,
24884 DOMSVGFEImageElement, DOMSVGFEMergeElement, DOMSVGFEMergeNodeElement,
24885 DOMSVGFEOffsetElement, DOMSVGFEPointLightElement,
24886 DOMSVGFESpecularLightingElement, DOMSVGFESpotLightElement,
24887 DOMSVGFETileElement, DOMSVGFETurbulenceElement,
24888 DOMSVGFilterPrimitiveStandardAttributes and DOMSVGNumberList.
24890 - Adds interfaces and implementation stubs for DOMSVGNumber, DOMSVGPoint
24895 - Make numOctaves in SVGFETurbulenceElement use a long instead of an int
24896 in it's macro declaration and definition.
24898 * DerivedSources.make:
24899 * WebCore.xcodeproj/project.pbxproj:
24900 * bindings/objc/DOMCSS.mm:
24901 (+[DOMCSSValue _CSSValueWith:WebCore::]):
24902 * bindings/objc/DOMInternal.h:
24903 * bindings/objc/DOMSVG.h:
24904 * bindings/objc/DOMSVGNumber.h: Added.
24905 * bindings/objc/DOMSVGNumber.mm: Added.
24906 (-[DOMSVGNumber dealloc]):
24907 (-[DOMSVGNumber finalize]):
24908 (-[DOMSVGNumber value]):
24909 (-[DOMSVGNumber setValue:]):
24910 (-[DOMSVGNumber _SVGNumber]):
24911 (-[DOMSVGNumber _initWithFloat:]):
24912 (+[DOMSVGNumber _SVGNumberWith:]):
24913 * bindings/objc/DOMSVGPoint.h: Added.
24914 * bindings/objc/DOMSVGPoint.mm: Added.
24915 (-[DOMSVGPoint dealloc]):
24916 (-[DOMSVGPoint finalize]):
24917 (-[DOMSVGPoint x]):
24918 (-[DOMSVGPoint setX:]):
24919 (-[DOMSVGPoint y]):
24920 (-[DOMSVGPoint setY:]):
24921 (-[DOMSVGPoint WebCore::]):
24922 (-[DOMSVGPoint _initWithFloatPoint:WebCore::]):
24923 (+[DOMSVGPoint _SVGPointWith:WebCore::]):
24924 * bindings/objc/DOMSVGRect.h: Added.
24925 * bindings/objc/DOMSVGRect.mm: Added.
24926 (-[DOMSVGRect dealloc]):
24927 (-[DOMSVGRect finalize]):
24929 (-[DOMSVGRect setX:]):
24931 (-[DOMSVGRect setY:]):
24932 (-[DOMSVGRect width]):
24933 (-[DOMSVGRect setWidth:]):
24934 (-[DOMSVGRect height]):
24935 (-[DOMSVGRect setHeight:]):
24936 (-[DOMSVGRect WebCore::]):
24937 (-[DOMSVGRect _initWithFloatRect:WebCore::]):
24938 (+[DOMSVGRect _SVGRectWith:WebCore::]):
24939 * bindings/scripts/CodeGeneratorObjC.pm:
24940 * ksvg2/svg/SVGAnimatedNumberList.idl:
24941 * ksvg2/svg/SVGAnimatedRect.idl:
24942 * ksvg2/svg/SVGComponentTransferFunctionElement.idl:
24943 * ksvg2/svg/SVGCursorElement.idl:
24944 * ksvg2/svg/SVGFEBlendElement.idl:
24945 * ksvg2/svg/SVGFEColorMatrixElement.idl:
24946 * ksvg2/svg/SVGFEComponentTransferElement.idl:
24947 * ksvg2/svg/SVGFECompositeElement.idl:
24948 * ksvg2/svg/SVGFEDiffuseLightingElement.idl:
24949 * ksvg2/svg/SVGFEDisplacementMapElement.idl:
24950 * ksvg2/svg/SVGFEDistantLightElement.idl:
24951 * ksvg2/svg/SVGFEFloodElement.idl:
24952 * ksvg2/svg/SVGFEFuncAElement.idl:
24953 * ksvg2/svg/SVGFEFuncBElement.idl:
24954 * ksvg2/svg/SVGFEFuncGElement.idl:
24955 * ksvg2/svg/SVGFEFuncRElement.idl:
24956 * ksvg2/svg/SVGFEGaussianBlurElement.idl:
24957 * ksvg2/svg/SVGFEImageElement.idl:
24958 * ksvg2/svg/SVGFEMergeElement.idl:
24959 * ksvg2/svg/SVGFEMergeNodeElement.idl:
24960 * ksvg2/svg/SVGFEOffsetElement.idl:
24961 * ksvg2/svg/SVGFEPointLightElement.idl:
24962 * ksvg2/svg/SVGFESpecularLightingElement.idl:
24963 * ksvg2/svg/SVGFESpotLightElement.idl:
24964 * ksvg2/svg/SVGFETileElement.idl:
24965 * ksvg2/svg/SVGFETurbulenceElement.cpp:
24966 * ksvg2/svg/SVGFETurbulenceElement.h:
24967 * ksvg2/svg/SVGFETurbulenceElement.idl:
24968 * ksvg2/svg/SVGNumberList.idl:
24970 2006-10-06 Adam Roben <aroben@apple.com>
24972 Backing out my previous change.
24974 * WebCore.xcodeproj/project.pbxproj:
24975 * page/FrameView.cpp:
24976 (WebCore::FrameView::adjustViewSize):
24978 2006-10-06 Adam Roben <aroben@apple.com>
24982 * WebCore.xcodeproj/project.pbxproj:
24983 * page/FrameView.cpp:
24984 (WebCore::FrameView::windowResizerRect):
24986 2006-10-06 Adam Roben <aroben@apple.com>
24988 Reviewed by Maciej.
24990 More loader tweaks.
24992 * platform/ResourceLoader.h:
24993 * platform/ResourceLoaderInternal.h:
24994 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
24995 * platform/win/TemporaryLinkStubs.cpp:
24996 (WebCore::ResourceLoader::newHTTPRequest):
24998 2006-10-05 Steve Falkenburg <sfalken@apple.com>
25000 Reviewed by aroben.
25002 Stub out some methods that we'll be able to use to dodge a window resizer.
25004 * bridge/win/FrameWin.h:
25006 (WebCore::Frame::windowResizerRect):
25007 * page/FrameView.h:
25008 * platform/ScrollView.h:
25009 (WebCore::ScrollView::windowResizerRect):
25010 * platform/Widget.h:
25011 * platform/win/TemporaryLinkStubs.cpp:
25012 (FrameView::windowResizerRect):
25013 (Widget::setParent):
25015 (FrameWin::windowResizerRect):
25017 2006-10-05 Dave Hyatt <hyatt@apple.com>
25019 Stub out setFrameGeometry.
25021 * platform/ScrollView.h:
25023 2006-10-05 Adele Peterson <adele@apple.com>
25025 Reverting autoscroll fix. I need to rework this a little.
25028 (WebCore::Frame::handleAutoscroll):
25029 (WebCore::Frame::autoscrollTimerFired):
25030 (WebCore::Frame::stopAutoscrollTimer):
25032 * rendering/RenderLayer.cpp:
25033 (WebCore::RenderLayer::~RenderLayer):
25034 * rendering/RenderListBox.cpp:
25035 (WebCore::RenderListBox::~RenderListBox):
25037 2006-10-05 Alice <alice.liu@apple.com>
25041 Fixed <rdar://problem/4731778>
25043 * editing/CommandByName.cpp:
25044 (WebCore::Frame::Command::):
25045 was calling the wrong enabledFn for arrow selection and navigation
25047 2006-10-05 Adele Peterson <adele@apple.com>
25049 Reviewed by Maciej.
25051 - Fix for <rdar://problem/4707489> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active <input type="text">
25052 and <rdar://problem/4707519> After timers fix, crash below RenderLayer::autoscroll after moving/destroying active textarea
25054 * rendering/RenderLayer.cpp: (WebCore::RenderLayer::~RenderLayer): If the renderer is being autoscrolled, then stop the autoscroll timer.
25055 * rendering/RenderListBox.cpp: (WebCore::RenderListBox::~RenderListBox): ditto.
25057 * page/Frame.cpp: Added getter and setter for the renderer being autoscrolled.
25058 (WebCore::Frame::handleAutoscroll):
25059 (WebCore::Frame::autoscrollTimerFired):
25060 (WebCore::Frame::autoscrollRenderer):
25061 (WebCore::Frame::setAutoscrollRenderer):
25062 (WebCore::Frame::stopAutoscrollTimer):
25065 2006-10-05 Don Gibson <dgibson77@gmail.com>
25069 Fix win32 build bustage after ggaren's Scrollbar renaming changes.
25070 Properly include PlatformScrollBar.h in WbCore.vcproj.
25071 Clean up WidgetWin.cpp a bit.
25073 * WebCore.vcproj/WebCore/WebCore.vcproj:
25074 * platform/Widget.h:
25075 * platform/win/PlatformScrollBar.h:
25076 * platform/win/ScrollViewWin.cpp:
25077 (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
25078 (WebCore::ScrollView::resizeContents):
25079 (WebCore::ScrollView::scrollBy):
25080 (WebCore::ScrollView::hScrollbarMode):
25081 (WebCore::ScrollView::vScrollbarMode):
25082 (WebCore::ScrollView::suppressScrollbars):
25083 (WebCore::ScrollView::setHScrollbarMode):
25084 (WebCore::ScrollView::setVScrollbarMode):
25085 (WebCore::ScrollView::setScrollbarsMode):
25086 (WebCore::ScrollView::updateScrollbars):
25087 * platform/win/TemporaryLinkStubs.cpp:
25088 (FrameView::passMousePressEventToScrollbar):
25089 (Widget::removeFromParent):
25090 (ScrollView::scrollbarUnderMouse):
25091 (PlatformScrollbar::PlatformScrollbar):
25092 (PlatformScrollbar::~PlatformScrollbar):
25093 (PlatformScrollbar::width):
25094 (PlatformScrollbar::height):
25095 (PlatformScrollbar::setEnabled):
25096 (PlatformScrollbar::paint):
25097 (PlatformScrollbar::updateThumbPosition):
25098 (PlatformScrollbar::updateThumbProportion):
25099 (PlatformScrollbar::setRect):
25100 (Scrollbar::Scrollbar):
25101 (Scrollbar::setSteps):
25102 (Scrollbar::scroll):
25103 (Scrollbar::setValue):
25104 (Scrollbar::setProportion):
25105 * platform/win/WidgetWin.cpp:
25106 (WebCore::WidgetPrivate::WidgetPrivate):
25107 (WebCore::Widget::Widget):
25108 (WebCore::Widget::setContainingWindow):
25109 (WebCore::Widget::containingWindow):
25111 2006-10-05 Geoffrey Garen <ggaren@apple.com>
25115 * WebCore.xcodeproj/project.pbxproj:
25116 * bridge/mac/BrowserExtensionMac.mm:
25117 (WebCore::BrowserExtensionMac::createNewWindow):
25118 * bridge/mac/FrameMac.mm:
25119 (WebCore::FrameMac::createFrame):
25120 * bridge/mac/FrameViewMac.mm:
25121 (WebCore::FrameView::passMousePressEventToScrollbar):
25122 * bridge/mac/WebCoreFrameBridge.mm:
25123 (-[WebCoreFrameBridge installInFrame:]):
25124 * bridge/mac/WebCoreFrameView.h:
25125 * platform/ScrollBar.cpp:
25126 * platform/Widget.h:
25127 * platform/mac/PlatformScrollBar.h:
25128 * platform/mac/PlatformScrollBarMac.mm:
25129 (NSControlSizeForScrollBarControlSize):
25130 (-[WebCoreScrollBar initWithPlatformScrollbar:]):
25131 (-[WebCoreScrollBar detachPlatformScrollbar]):
25132 (-[WebCoreScrollBar scroll:]):
25133 (-[WebCoreScrollBar widget]):
25134 (WebCore::PlatformScrollbar::PlatformScrollbar):
25135 (WebCore::PlatformScrollbar::~PlatformScrollbar):
25136 (WebCore::PlatformScrollbar::updateThumbPosition):
25137 (WebCore::PlatformScrollbar::updateThumbProportion):
25138 (WebCore::PlatformScrollbar::scrollbarHit):
25139 (WebCore::PlatformScrollbar::width):
25140 (WebCore::PlatformScrollbar::height):
25141 (WebCore::PlatformScrollbar::setRect):
25142 (WebCore::PlatformScrollbar::setEnabled):
25143 (WebCore::PlatformScrollbar::paint):
25144 * platform/mac/ScrollViewMac.mm:
25145 (WebCore::ScrollView::setVScrollbarMode):
25146 (WebCore::ScrollView::setHScrollbarMode):
25147 (WebCore::ScrollView::setScrollbarsMode):
25148 (WebCore::ScrollView::vScrollbarMode):
25149 (WebCore::ScrollView::hScrollbarMode):
25150 (WebCore::ScrollView::suppressScrollbars):
25151 (WebCore::ScrollView::scrollbarUnderMouse):
25152 * platform/mac/WidgetMac.mm:
25153 (WebCore::Widget::removeFromParent):
25154 * rendering/RenderLayer.cpp:
25155 (WebCore::RenderLayer::destroyScrollbar):
25157 2006-10-05 Geoffrey Garen <ggaren@apple.com>
25161 * platform/Widget.h:
25162 * rendering/RenderLayer.cpp:
25163 (WebCore::RenderLayer::destroyScrollbar):
25165 2006-10-06 Mitz Pettel <mitz@webkit.org>
25167 http://bugs.webkit.org/show_bug.cgi?id=8276
25168 Fix broken manual test added back in r13990.
25170 Add resource forks for test resources.
25172 * manual-tests/resources/plain-text-paste/._1.textClipping: Added.
25173 * manual-tests/resources/plain-text-paste/._2.textClipping: Added.
25174 * manual-tests/resources/plain-text-paste/._4.txt: Added.
25175 * manual-tests/resources/plain-text-paste/._5.webloc: Added.
25177 2006-10-05 David Hyatt <hyatt@apple.com>
25179 Rename addClip to clip.
25183 * kcanvas/RenderForeignObject.cpp:
25184 (WebCore::RenderForeignObject::paint):
25185 * kcanvas/RenderSVGContainer.cpp:
25186 (WebCore::RenderSVGContainer::paint):
25187 * kcanvas/RenderSVGImage.cpp:
25188 (WebCore::RenderSVGImage::paint):
25189 * platform/GraphicsContext.h:
25190 * platform/cairo/GraphicsContextCairo.cpp:
25191 (WebCore::GraphicsContext::clip):
25192 * platform/cg/GraphicsContextCG.cpp:
25193 (WebCore::GraphicsContext::savePlatformState):
25194 (WebCore::GraphicsContext::restorePlatformState):
25195 (WebCore::GraphicsContext::clip):
25196 (WebCore::GraphicsContext::addRoundedRectClip):
25197 (WebCore::GraphicsContext::addInnerRoundedRectClip):
25198 (WebCore::GraphicsContext::scale):
25199 (WebCore::GraphicsContext::rotate):
25200 (WebCore::GraphicsContext::translate):
25201 (WebCore::GraphicsContext::concatCTM):
25202 * platform/cg/GraphicsContextPlatformPrivate.h:
25203 (WebCore::GraphicsContextPlatformPrivate::save):
25204 (WebCore::GraphicsContextPlatformPrivate::restore):
25205 (WebCore::GraphicsContextPlatformPrivate::clip):
25206 (WebCore::GraphicsContextPlatformPrivate::scale):
25207 (WebCore::GraphicsContextPlatformPrivate::rotate):
25208 (WebCore::GraphicsContextPlatformPrivate::translate):
25209 (WebCore::GraphicsContextPlatformPrivate::concatCTM):
25210 * platform/qt/GraphicsContextQt.cpp:
25211 (WebCore::GraphicsContext::clip):
25212 (WebCore::GraphicsContext::addInnerRoundedRectClip):
25213 (WebCore::GraphicsContext::addRoundedRectClip):
25214 * rendering/InlineFlowBox.cpp:
25215 (WebCore::InlineFlowBox::paintBackground):
25216 (WebCore::InlineFlowBox::paintBackgroundAndBorder):
25217 * rendering/InlineTextBox.cpp:
25218 (WebCore::InlineTextBox::paintSelection):
25219 (WebCore::InlineTextBox::paintTextMatchMarker):
25220 * rendering/RenderBox.cpp:
25221 (WebCore::RenderBox::paintBackgroundExtended):
25222 * rendering/RenderButton.cpp:
25223 (WebCore::RenderButton::paintObject):
25224 * rendering/RenderFileUploadControl.cpp:
25225 (WebCore::RenderFileUploadControl::paintObject):
25226 * rendering/RenderLayer.cpp:
25227 (WebCore::RenderLayer::beginTransparencyLayers):
25228 (WebCore::setClip):
25229 * rendering/RenderListBox.cpp:
25230 (WebCore::RenderListBox::paintObject):
25231 * rendering/RenderMenuList.cpp:
25232 (WebCore::RenderMenuList::paintObject):
25233 * rendering/RenderTableCell.cpp:
25234 (WebCore::RenderTableCell::paintBackgroundsBehindCell):
25236 2006-10-05 Mitz Pettel <mitz@webkit.org>
25240 - http://bugs.webkit.org/show_bug.cgi?id=10386
25241 Delete RenderImageButton.* and remove references from .vcproj and .bkl files
25244 * WebCore.vcproj/WebCore/WebCore.vcproj:
25245 * WebCoreSources.bkl:
25246 * rendering/RenderImageButton.cpp: Removed.
25247 * rendering/RenderImageButton.h: Removed.
25249 2006-10-05 Mitz Pettel <opendarwin.org@mitzpettel.com>
25253 - http://bugs.webkit.org/show_bug.cgi?id=11067
25254 manual-tests/scrollbar-hittest2.html is invalid
25256 * manual-tests/scrollbar-hittest2.html:
25258 2006-10-05 David Carson <dacarson@gmail.com>
25262 http://bugs.webkit.org/show_bug.cgi?id=11152
25263 Adjust the tokenizer chunk size to be smaller for
25264 mobile devices, and also decrease the yield timer
25265 for the tokenizer so that it can resume earlier.
25267 * html/HTMLTokenizer.cpp:
25270 2006-10-05 Adam Roben <aroben@apple.com>
25272 Removing accidentally-checked-in do-nothing code.
25274 * html/HTMLInputElement.cpp:
25275 (WebCore::HTMLInputElement::defaultEventHandler):
25277 2006-10-05 David Carson <dacarson@gmail.com>
25281 http://bugs.webkit.org/show_bug.cgi?id=11158
25282 Initialize class variables
25284 * rendering/RenderLayer.cpp:
25285 (WebCore::RenderLayer::RenderLayer):
25287 2006-10-05 Don Gibson <dgibson77@gmail.com>
25289 Reviewed by Darin, landed by Adam.
25291 http://bugs.webkit.org/show_bug.cgi?id=11176
25292 Fix win32 build, adapt to Maciej's ResourceLoader changes.
25294 * platform/win/ResourceLoaderWin.cpp:
25295 (WebCore::ResourceLoader::start):
25297 2006-10-05 Marvin Decker <marv.decker@gmail.com>
25301 http://bugs.webkit.org/show_bug.cgi?id=10989
25302 Provide a way for embedders to implement BrowserExtensionWin
25304 * WebCore.vcproj/WebCore/WebCore.vcproj:
25305 * bridge/win/BrowserExtensionWin.cpp: Added.
25306 (BrowserExtensionWin::BrowserExtensionWin):
25307 (BrowserExtensionWin::setTypedIconURL):
25308 (BrowserExtensionWin::setIconURL):
25309 (BrowserExtensionWin::getHistoryLength):
25310 (BrowserExtensionWin::canRunModal):
25311 (BrowserExtensionWin::createNewWindow):
25312 (BrowserExtensionWin::canRunModalNow):
25313 (BrowserExtensionWin::runModal):
25314 (BrowserExtensionWin::goBackOrForward):
25315 (BrowserExtensionWin::historyURL):
25316 * bridge/win/BrowserExtensionWin.h:
25317 * bridge/win/FrameWin.cpp:
25318 (WebCore::FrameWin::createNewWindow):
25319 * bridge/win/FrameWin.h:
25320 * platform/win/TemporaryLinkStubs.cpp:
25322 2006-10-05 Geoffrey Garen <ggaren@apple.com>
25326 Fixed <rdar://problem/4766987>
25328 - renamed ScrollBar to Scrollbar and scroll bar to scrollbar in every case
25329 except for file names.
25331 - fixed RenderLayer to properly tear down scrollbars, removing them from
25334 * bindings/js/kjs_window.cpp:
25335 (KJS::showModalDialog):
25336 (KJS::setWindowFeature):
25337 (KJS::parseWindowFeatures):
25338 * bridge/BrowserExtension.h:
25339 * dom/Document.cpp:
25340 (WebCore::Document::setInPageCache):
25341 * html/HTMLFrameElement.cpp:
25342 (WebCore::HTMLFrameElement::init):
25343 (WebCore::HTMLFrameElement::parseMappedAttribute):
25344 * html/HTMLFrameElement.h:
25345 (WebCore::HTMLFrameElement::scrollingMode):
25347 (WebCore::Frame::finishedParsing):
25348 (WebCore::Frame::scrollbarsVisible):
25349 * page/FrameView.cpp:
25350 (WebCore::FrameViewPrivate::FrameViewPrivate):
25351 (WebCore::FrameViewPrivate::reset):
25352 (WebCore::FrameView::~FrameView):
25353 (WebCore::FrameView::resetScrollbars):
25354 (WebCore::FrameView::clear):
25355 (WebCore::FrameView::initScrollbars):
25356 (WebCore::FrameView::applyOverflowToViewport):
25357 (WebCore::FrameView::layout):
25358 (WebCore::FrameView::handleMousePressEvent):
25359 (WebCore::selectCursor):
25360 (WebCore::FrameView::handleMouseMoveEvent):
25361 (WebCore::FrameView::setScrollbarsMode):
25362 (WebCore::FrameView::setVScrollbarMode):
25363 (WebCore::FrameView::setHScrollbarMode):
25364 (WebCore::FrameView::restoreScrollbar):
25365 (WebCore::FrameView::dispatchMouseEvent):
25366 (WebCore::FrameView::scrollbarMoved):
25367 * page/FrameView.h:
25368 * page/MouseEventWithHitTestResults.cpp:
25369 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
25370 * page/MouseEventWithHitTestResults.h:
25371 (WebCore::MouseEventWithHitTestResults::scrollbar):
25372 * platform/ScrollBar.cpp:
25373 (WebCore::Scrollbar::Scrollbar):
25374 (WebCore::Scrollbar::setValue):
25375 (WebCore::Scrollbar::setProportion):
25376 (WebCore::Scrollbar::setSteps):
25377 (WebCore::Scrollbar::scroll):
25378 * platform/ScrollBar.h:
25380 (WebCore::ScrollbarClient::~ScrollbarClient):
25381 (WebCore::Scrollbar::~Scrollbar):
25382 (WebCore::Scrollbar::orientation):
25383 (WebCore::Scrollbar::controlSize):
25384 (WebCore::Scrollbar::hasPlatformScrollbars):
25385 (WebCore::Scrollbar::client):
25386 * platform/ScrollBarMode.h:
25388 * platform/ScrollView.h:
25389 * rendering/RenderBlock.cpp:
25390 (WebCore::RenderBlock::isPointInScrollbar):
25391 * rendering/RenderLayer.cpp:
25392 (WebCore::RenderLayer::RenderLayer):
25393 (WebCore::RenderLayer::~RenderLayer):
25394 (WebCore::RenderLayer::scrollToOffset):
25395 (WebCore::RenderLayer::horizontaScrollbarWidget):
25396 (WebCore::RenderLayer::verticalScrollbarWidget):
25397 (WebCore::RenderLayer::valueChanged):
25398 (WebCore::RenderLayer::createScrollbar):
25399 (WebCore::RenderLayer::destroyScrollbar):
25400 (WebCore::RenderLayer::setHasHorizontalScrollbar):
25401 (WebCore::RenderLayer::setHasVerticalScrollbar):
25402 (WebCore::RenderLayer::verticalScrollbarWidth):
25403 (WebCore::RenderLayer::horizontalScrollbarHeight):
25404 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
25405 * rendering/RenderLayer.h:
25406 (WebCore::RenderLayer::horizontalScrollbar):
25407 (WebCore::RenderLayer::verticalScrollbar):
25408 * rendering/RenderListBox.cpp:
25409 (WebCore::RenderListBox::~RenderListBox):
25410 (WebCore::RenderListBox::calcMinMaxWidth):
25411 (WebCore::RenderListBox::isPointInScrollbar):
25412 (WebCore::RenderListBox::optionAtPoint):
25413 (WebCore::RenderListBox::valueChanged):
25414 * rendering/RenderListBox.h:
25415 * rendering/RenderObject.h:
25416 (WebCore::RenderObject::NodeInfo::scrollbar):
25417 (WebCore::RenderObject::NodeInfo::setScrollbar):
25419 2006-10-05 Don Gibson <dgibson77@gmail.com>
25423 http://bugs.webkit.org/show_bug.cgi?id=11138
25424 Incorrect mouse event generation on Windows
25426 * platform/win/MouseEventWin.cpp:
25427 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
25428 (1) Set mouse button even for non-click-related messages.
25429 (2) Track clicks correctly for all buttons, not just the left button.
25431 2006-10-05 Nikolas Zimmermann <zimmermann@kde.org>
25433 Reviewed and landed by ap.
25435 Fix Qt/Linux build, adapt to Eric's quartz changes and to Maciej's ResourceLoader changes.
25437 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
25438 (WebCore::KRenderingPaintServerLinearGradientQt::renderPath):
25439 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
25440 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
25441 (WebCore::KRenderingPaintServerRadialGradientQt::renderPath):
25442 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
25443 (WebCore::KRenderingPaintServerPatternQt::renderPath):
25444 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
25445 (WebCore::KRenderingPaintServerQt::setPenProperties):
25446 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
25447 (WebCore::KRenderingPaintServerSolidQt::setup):
25448 (WebCore::KRenderingPaintServerSolidQt::renderPath):
25449 * kcanvas/device/qt/RenderPathQt.cpp:
25450 (WebCore::getPathStroke):
25452 2006-10-05 Alexey Proskuryakov <ap@nypop.com>
25456 http://bugs.webkit.org/show_bug.cgi?id=11054
25457 REGRESSION: Traditional Chinese encoding in login authentication
25459 1. Treat GB2312 encoding as GBK (its more modern superset), to match other browsers.
25460 2. On the Web, GB2312 is encoded as EUC-CN or HZ, while ICU provides a native encoding
25461 for encoding GB_2312-80 and several others. So, we need to override this behavior, too.
25463 * platform/StreamingTextDecoderICU.cpp:
25464 (WebCore::TextCodecICU::registerEncodingNames):
25466 2006-10-05 Eric Seidel <eric@webkit.org>
25471 Filed http://bugs.webkit.org/show_bug.cgi?id=11167 to for followup on removed FIXMEs
25473 * WebCore.xcodeproj/project.pbxproj:
25474 * ksvg2/ecma/GlobalObject.cpp: Removed.
25475 * ksvg2/ecma/GlobalObject.h: Removed.
25477 2006-10-05 Adam Roben <aroben@apple.com>
25479 Reviewed by Maciej.
25481 Small ResourceLoaderInternal tweak.
25483 * platform/ResourceLoaderInternal.h:
25484 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
25486 2006-10-05 Eric Seidel <eric@webkit.org>
25490 More incremental KCanvas cleanup and optimization.
25491 Added SVGRenderStyle::hasFill() and hasStroke() removed more KSVGPainterFactory methods.
25492 Optimized dash array usage to not malloc.
25493 Also removed un-needed KSVGRenderingStyle includes.
25495 * kcanvas/KCanvasTreeDebug.cpp:
25496 (WebCore::operator<<):
25497 * kcanvas/RenderPath.cpp:
25498 (WebCore::RenderPath::nodeAtPoint):
25499 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
25500 (WebCore::RenderPath::strokeBBox):
25501 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
25502 (WebCore::KRenderingPaintServerGradientQuartz::setup):
25503 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
25504 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
25505 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
25506 (WebCore::KRenderingPaintServerSolidQuartz::setup):
25507 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
25508 (WebCore::KRenderingPaintServerPatternQuartz::setup):
25509 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
25510 * kcanvas/device/quartz/QuartzSupport.mm:
25511 (WebCore::applyStrokeStyleToContext):
25512 * ksvg2/css/SVGRenderStyle.h:
25513 (WebCore::SVGRenderStyle::hasStroke):
25514 (WebCore::SVGRenderStyle::hasFill):
25515 * ksvg2/misc/KCanvasRenderingStyle.cpp:
25516 (WebCore::KSVGPainterFactory::fillPaintServer):
25517 (WebCore::KSVGPainterFactory::strokePaintServer):
25518 * ksvg2/misc/KCanvasRenderingStyle.h:
25520 2006-10-05 Maciej Stachowiak <mjs@apple.com>
25524 - changed ResourceLoader to be refcounted
25526 It keeps a ref on itself while loading as well. This makes
25527 for a much saner memory management model than the previous.
25529 * bridge/mac/WebCoreResourceLoaderImp.mm:
25530 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
25531 * dom/XMLTokenizer.cpp:
25532 (WebCore::openFunc):
25533 * loader/icon/IconLoader.cpp:
25534 (IconLoader::IconLoader):
25535 (IconLoader::~IconLoader):
25536 (IconLoader::startLoading):
25537 (IconLoader::stopLoading):
25538 (IconLoader::receivedData):
25539 * loader/icon/IconLoader.h:
25540 * loader/loader.cpp:
25541 (WebCore::Loader::servePendingRequests):
25542 * platform/ResourceLoader.cpp:
25543 (WebCore::ResourceLoader::create):
25544 (WebCore::ResourceLoader::kill):
25545 * platform/ResourceLoader.h:
25546 * platform/ResourceLoaderInternal.h:
25547 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
25548 * platform/mac/ResourceLoaderMac.mm:
25549 (WebCore::ResourceLoader::start):
25550 * xml/XSLTProcessor.cpp:
25551 (WebCore::docLoaderFunc):
25552 * xml/xmlhttprequest.cpp:
25553 (WebCore::XMLHttpRequest::send):
25554 * xml/xmlhttprequest.h:
25556 2006-10-05 Eric Seidel <eric@webkit.org>
25560 Improve SVG opacity performance by clipping to the object bbox before starting a new opacity layer.
25561 http://bugs.webkit.org/show_bug.cgi?id=11163
25563 No SVG performance tests yet.
25565 * kcanvas/RenderForeignObject.cpp:
25566 (WebCore::RenderForeignObject::paint):
25567 * kcanvas/RenderSVGContainer.cpp:
25568 (WebCore::RenderSVGContainer::paint):
25569 * kcanvas/RenderSVGImage.cpp:
25570 (WebCore::RenderSVGImage::paint):
25571 * kcanvas/RenderSVGText.cpp:
25572 (WebCore::RenderSVGText::paint):
25574 2006-10-05 Dave Hyatt <hyatt@apple.com>
25576 Stub out some stuff for widget focusability.
25580 * page/FrameView.cpp:
25581 (WebCore::FrameView::dispatchMouseEvent):
25582 * platform/ScrollView.h:
25583 * platform/Widget.h:
25585 2006-10-05 Adam Roben <aroben@apple.com>
25587 Reviewed by Maciej and Tim H.
25589 Copy some WebKit frame lifetime logic into WebCore -- just a step
25590 along the path to frame lifetime being handled completely in WebCore.
25592 * bridge/mac/FrameMac.mm:
25593 (WebCore::FrameMac::setView): Move platform-independent parts of this
25596 (WebCore::Frame::setView): Adding platform-independent parts of
25598 (WebCore::Frame::detachChildren): New method to accomplish what
25599 -[WebFrameBridge _detachChildren] currently does.
25600 (WebCore::Frame::clear): Call detachChildren
25601 * page/Frame.h: Add declaration for detachChildren
25603 2006-10-04 Alice Liu <alice.liu@apple.com>
25607 Fixed <rdar://problem/4758577> REGRESSION: Business and People widgets fails to complete search query
25609 * xml/xmlhttprequest.cpp:
25610 (WebCore::XMLHttpRequest::setRequestHeader):
25611 removed exception set when the request is not open yet
25613 2006-10-04 Anders Carlsson <acarlsson@apple.com>
25615 Reviewed by John Sullivan.
25617 <rdar://problem/4654328>
25618 Safari Crashes in WebCore::PluginTokenizer::writeRawData If I Try to Open a SWF File With Plug-ins Turned Off
25620 * loader/PluginDocument.cpp:
25621 (WebCore::PluginTokenizer::writeRawData):
25622 Only send the data to the plug-in if plug-ins are enabled, otherwise just silently eat it.
25624 2006-10-03 Alexey Proskuryakov <ap@nypop.com>
25628 http://bugs.webkit.org/show_bug.cgi?id=11130
25629 Convert "undefined" to AE missing value
25631 * bridge/mac/WebCoreFrameBridge.mm:
25632 (aeDescFromJSValue): return missing value for UndefinedType.
25634 2006-10-03 Dave Hyatt <hyatt@apple.com>
25636 Scrolling work. Eliminate convertTo/FromContainingWindow as cross-platform functions. Add back in
25637 the windowToContents/contentsToWindow functions.
25641 * bridge/mac/FrameMac.mm:
25642 (WebCore::FrameMac::eventMayStartDrag):
25643 (WebCore::FrameMac::dragHysteresisExceeded):
25644 (WebCore::FrameMac::mouseDown):
25645 (WebCore::FrameMac::shouldDragAutoNode):
25646 (WebCore::FrameMac::sendContextMenuEvent):
25647 * bridge/mac/FrameViewMac.mm:
25648 (WebCore::FrameView::passMousePressEventToScrollbar):
25649 * bridge/mac/WebCoreFrameBridge.mm:
25650 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
25651 * dom/EventTargetNode.cpp:
25652 (WebCore::EventTargetNode::dispatchMouseEvent):
25653 (WebCore::EventTargetNode::dispatchWheelEvent):
25655 (WebCore::Frame::selectClosestWordFromMouseEvent):
25656 (WebCore::Frame::handleMousePressEventTripleClick):
25657 (WebCore::Frame::handleMousePressEventSingleClick):
25658 (WebCore::Frame::handleMouseMoveEvent):
25659 (WebCore::Frame::handleMouseReleaseEvent):
25660 * page/FrameView.cpp:
25661 (WebCore::FrameView::handleMousePressEvent):
25662 (WebCore::FrameView::handleMouseDoubleClickEvent):
25663 (WebCore::selectCursor):
25664 (WebCore::FrameView::handleMouseMoveEvent):
25665 (WebCore::FrameView::handleMouseReleaseEvent):
25666 (WebCore::FrameView::dispatchDragEvent):
25667 (WebCore::FrameView::prepareMouseEvent):
25668 (WebCore::FrameView::handleWheelEvent):
25669 * page/FrameView.h:
25670 * platform/ScrollBar.cpp:
25671 (WebCore::ScrollBar::setValue):
25672 * platform/ScrollView.h:
25673 * platform/Widget.h:
25674 (WebCore::Widget::scrolled):
25675 * platform/mac/ScrollViewMac.mm:
25676 (WebCore::ScrollView::contentsToWindow):
25677 (WebCore::ScrollView::windowToContents):
25678 (WebCore::ScrollView::scrollbarUnderMouse):
25679 * platform/mac/WidgetMac.mm:
25680 * rendering/RenderLayer.cpp:
25681 (WebCore::RenderLayer::resize):
25682 (WebCore::RenderLayer::positionScrollbars):
25683 * rendering/RenderReplaced.cpp:
25684 (WebCore::RenderReplaced::shouldPaint):
25685 * rendering/RenderView.cpp:
25686 * rendering/RenderView.h:
25687 * rendering/RenderWidget.cpp:
25688 (WebCore::RenderWidget::setWidget):
25690 2006-09-26 David Smith <catfish.man@gmail.com>
25692 Reviewed by Timothy.
25694 http://bugs.webkit.org/show_bug.cgi?id=3723
25695 Add -scrollDOMRangeToVisible:
25697 No automated tests are possible as this code path isn't reachable from JavaScript.
25699 * bridge/mac/WebCoreFrameBridge.h:
25700 * bridge/mac/WebCoreFrameBridge.mm:
25701 (-[WebCoreFrameBridge scrollDOMRangeToVisible:]):
25703 2006-10-03 Graham Dennis <graham.dennis@gmail.com>
25705 Reviewed by Timothy.
25707 <http://bugs.webkit.org/show_bug.cgi?id=10338>
25708 When contentEditable, cursor doesn't change to hand
25710 Allow the behaviour of editable links to be specified by a WebPreference
25711 The preference WebKitEditableLinkBehavior has four options:
25712 - AlwaysLive: Safari 2.0 behaviour
25713 - OnlyLiveWithShiftKey: Firefox/WinIE behaviour (and prior WebKit-ToT behaviour)
25714 - LiveWhenNotFocused: Editable links are live only when their editable block is not
25715 focused, or when the shift key is pressed
25716 - DefaultBehavior: This is the same as OnlyLiveWithShiftKey.
25718 No layout tests, just a modification of a manual-test as it isn't possible to test
25719 this automatically.
25721 * bridge/mac/WebCoreSettings.h:
25722 * bridge/mac/WebCoreSettings.mm:
25723 (-[WebCoreSettings setEditableLinkBehavior:]):
25724 (-[WebCoreSettings editableLinkBehavior]):
25725 * html/HTMLAnchorElement.cpp:
25726 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
25727 (WebCore::HTMLAnchorElement::defaultEventHandler):
25728 (WebCore::HTMLAnchorElement::setActive):
25729 * html/HTMLAnchorElement.h:
25730 * manual-tests/contenteditable-link.html:
25731 * page/FrameView.cpp:
25732 (WebCore::nodeIsNotBeingEdited):
25733 (WebCore::selectCursor):
25735 (WebCore::Settings::):
25736 (WebCore::Settings::Settings):
25737 (WebCore::Settings::editableLinkBehavior):
25738 (WebCore::Settings::setEditableLinkBehavior):
25740 2006-10-03 Beth Dakin <bdakin@apple.com>
25744 No test cases needed.
25746 Implemented a version of StringImpl::append that takes a UChar* and
25749 * platform/StringImpl.cpp:
25750 (WebCore::StringImpl::append):
25751 (WebCore::StringImpl::insert): Call new append instead of making a
25753 * platform/StringImpl.h:
25755 2006-10-03 MorganL <morganl.webkit@yahoo.com>
25759 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11099
25760 HttpSendRequestEx results in ERROR_HTTP_HEADER_NOT_FOUND
25762 * platform/win/ResourceLoaderWin.cpp:
25763 (WebCore::ResourceLoader::onHandleCreated):
25765 2006-10-02 Geoffrey Garen <ggaren@apple.com>
25767 Feared, loathed, reviewed by Darin.
25769 More frame/iframe merging. Merged IFRAME::willRemove and IFRAME::detach
25770 into FRAME, plus other cleanup.
25772 No new behavior, so no new test. Layout tests pass. Basic browsing and
25773 Mail editing seem to work.
25776 (WebCore::Node::detach): Removed random commented-out code.
25777 * html/HTMLFrameElement.cpp:
25778 (WebCore::HTMLFrameElement::isURLAllowed):
25779 (1) Removed reference to FrameView, to dissociate frame loading from rendering.
25780 (2) Renamed newURL to completeURL because the difference between newURL
25781 and URLString is that newURL is a KURL that is the complete version of URLString,
25782 not that it is new.
25783 (WebCore::HTMLFrameElement::willRemove):
25784 (1) Removed close() call and moved close() code into willRemove(), also removing
25785 close() call from detach(), since willRemove is the well-defined place
25786 from DOM tear-down, not detach().
25787 (2) Removed manual renderer detach code because the DOM is not responsible
25788 for managing the render tree. I confirmed that this change not
25789 regress <rdar://problem/4132581>.
25790 (3) Removed questionable ASSERT. The ASSERT assumed that iframe elements
25791 lost their content frames after being removed from the DOM. That's our
25792 current behavior, but it's going to change in future rounds of refactoring.
25793 This also fixes <rdar://problem/4750835>.
25794 (WebCore::HTMLFrameElement::setLocation): Removed wacky manual calls to
25795 attach/detach, because the render tree should not be in charge of deciding
25797 * html/HTMLFrameElement.h:
25798 * html/HTMLIFrameElement.cpp:
25799 (WebCore::HTMLIFrameElement::attach): Renamed renderPart to renderPartObject,
25800 because the renderer is a renderPartObject, not a renderPart.
25801 * html/HTMLIFrameElement.h:
25803 2006-10-03 Mark Rowe <bdash@webkit.org>
25807 http://bugs.webkit.org/show_bug.cgi?id=11137
25808 Bug 11137: GdkLauncher dies with "pure virtual method called" if
25809 window is closed while page still loading
25811 * platform/gdk/FrameGdk.cpp:
25812 (WebCore::FrameGdk::~FrameGdk): Call cancelAndClear to allow virtual
25813 methods to be called before the FrameGdk portion of "this" is torn down.
25815 2006-10-03 Adam Roben <aroben@apple.com>
25819 Handle tab key presses in the DOM.
25821 * dom/EventTargetNode.cpp:
25822 (WebCore::EventTargetNode::defaultEventHandler): Add tab key handling.
25823 * page/FrameView.cpp:
25824 (WebCore::FrameView::advanceFocus): Rename and reimplement
25825 focusNextPrevNode. Now we just call Element::focus().
25826 * page/FrameView.h: Rename focusNextPrevNode to advanceFocus and make
25829 2006-10-03 Justin Garcia <justin.garcia@apple.com>
25833 <rdar://problem/4760612>
25834 TOT REGRESSION: Repro assertion failure when forwarding draft in Range::compareBoundaryPoints
25836 No layout test possible, attributedStringFrom:(DOMNode*)...etc isn't available to DRT.
25839 (WebCore::Range::boundaryPointsValid): compareBoundaryPoints asserts that the incoming
25840 positions are non-null since most of it's callers would be in a bad state if the positions
25841 were null. boundaryPointsValid, which calls compareBoundaryPoints, is an exception.
25842 Instead of removing the assert I've added nil checks in boundaryPointsValid, to keep it
25843 from entering compareBoundaryPoints and hitting the assert.
25845 2006-10-03 Adele Peterson <adele@apple.com>
25849 Make code for turning off new listbox implementation mac-only, since there's no implementation on other platforms.
25851 * html/HTMLSelectElement.cpp:
25852 (WebCore::HTMLSelectElement::recalcStyle):
25853 (WebCore::HTMLSelectElement::isKeyboardFocusable):
25854 (WebCore::HTMLSelectElement::isMouseFocusable):
25855 (WebCore::HTMLSelectElement::createRenderer):
25856 (WebCore::HTMLSelectElement::setRecalcListItems):
25857 (WebCore::HTMLSelectElement::notifyOptionSelected):
25858 (WebCore::HTMLSelectElement::defaultEventHandler):
25860 2006-10-04 Darin Adler <darin@apple.com>
25864 - fix http://bugs.webkit.org/show_bug.cgi?id=11132
25865 Caret disappears when you're typing
25867 * editing/SelectionController.cpp:
25868 (WebCore::SelectionController::setSelection): Remove unnecessary call to
25869 clearCaretRectIfNeeded. The recomputeCaretRect now takes care of this.
25870 (WebCore::SelectionController::recomputeCaretRect): Explicitly set m_needsLayout
25871 to false so we can get the old caret repaint rect. Later we need to change the
25872 design so getting the rect doesn't have a side effect of causing a layout without
25875 2006-10-03 David Harrison <harrison@apple.com>
25877 Reviewed by Maciej.
25879 <rdar://problem/4671286> Candidate Window isn't displayed and only first candidate is displayed at typing location.
25882 * fast/text/justified-text-rect.html
25884 * bridge/mac/WebCoreFrameBridge.mm:
25885 (-[WebCoreFrameBridge convertToNSRange:]):
25886 (-[WebCoreFrameBridge convertToDOMRange:]):
25887 Make the selection's root editable element (or the document itself) be
25888 the basis for NSRange conversions. This supports "shadow DOM" like
25889 that for text fields and text areas.
25891 * editing/CompositeEditCommand.cpp:
25892 (WebCore::CompositeEditCommand::moveParagraphs):
25893 Pass the document element as the scope.
25895 * editing/TextIterator.cpp:
25896 (WebCore::TextIterator::rangeFromLocationAndLength):
25897 Make the first parameter the scope.
25899 * editing/TextIterator.h:
25900 Make the first parameter of rangeFromLocationAndLength() the scope.
25902 2006-10-03 Nikolas Zimmermann <zimmermann@kde.org>
25906 Fix Qt/Linux build.
25908 * CMakeLists.txt: Add counter related files.
25910 2006-10-03 Mark Rowe <bdash@webkit.org>
25914 http://bugs.webkit.org/show_bug.cgi?id=10981
25915 Linux/GDK build fixes
25917 Based on a patch by Krzysztof Kowalczyk.
25919 * WebCoreSources.bkl:
25920 * platform/gdk/FrameGdk.cpp:
25921 (WebCore::doScroll):
25922 (WebCore::FrameGdk::handleGdkEvent):
25923 * platform/gdk/PlatformScrollBar.h: Added.
25924 (WebCore::PlatformScrollBar::isWidget):
25925 * platform/gdk/ScrollViewGdk.cpp:
25926 * platform/gdk/TemporaryLinkStubs.cpp:
25927 (FrameView::passMousePressEventToScrollbar):
25928 (FrameView::passMousePressEventToSubframe):
25929 (FrameView::passMouseReleaseEventToSubframe):
25930 (FrameView::passMouseMoveEventToSubframe):
25931 (FrameView::passWheelEventToSubframe):
25933 (Widget::invalidate):
25934 (Widget::invalidateRect):
25935 (ScrollView::wheelEvent):
25936 (ScrollView::convertToContainingWindow):
25937 (ScrollView::convertFromContainingWindow):
25938 (GraphicsContext::clip):
25939 (PlatformScrollBar::PlatformScrollBar):
25940 (PlatformScrollBar::updateThumbPosition):
25941 (PlatformScrollBar::updateThumbProportion):
25942 (ScrollBar::ScrollBar):
25943 (ScrollBar::setProportion):
25944 (WebCore::supportedKeySizes):
25945 (WebCore::signedPublicKeyAndChallengeString):
25946 * platform/gdk/WheelEventGdk.cpp:
25947 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
25948 * platform/gdk/WidgetGdk.cpp:
25949 (WebCore::Widget::convertToContainingWindow):
25950 (WebCore::Widget::convertFromContainingWindow):
25952 2006-10-02 Adam Roben <aroben@apple.com>
25954 Reviewed by Maciej.
25956 Let Windows determine which mouse button is pressed.
25958 * platform/PlatformMouseEvent.h: Add message parameter to constructor.
25959 * platform/win/MouseEventWin.cpp:
25960 (WebCore::PlatformMouseEvent::PlatformMouseEvent): Use message
25961 parameter to determine which mouse button is pressed.
25963 2006-10-02 Justin Garcia <justin.garcia@apple.com>
25969 * editing/SelectionController.cpp:
25970 (WebCore::SelectionController::empty):
25971 * editing/SelectionController.h:
25973 2006-10-02 Justin Garcia <justin.garcia@apple.com>
25977 <rdar://problem/4755287>
25978 Writely Editor: Crash occurs at WebCore::maxDeepOffset(WebCore::Node const*) when attempting to create a OL/UL following a HR element
25980 * editing/markup.cpp:
25981 (WebCore::createMarkup): Migrate to isBlock (isBlockFlow is true for inline replaced
25982 elements). Don't skip blocks that aren't containers (like horizontal rules).
25984 2006-10-03 Darin Adler <darin@apple.com>
25986 Reviewed by Justin Garcia.
25988 - correct mistaken code that would restart blinking every
25989 time "invalidateSelection" is called even if the caret
25992 * editing/SelectionController.h:
25993 * editing/SelectionController.cpp:
25994 (WebCore::SelectionController::setSelection): Update for name change.
25995 (WebCore::SelectionController::recomputeCaretRect): New function.
25996 Computes caret rect and does any necessary invalidation if the rect
25998 (WebCore::SelectionController::invalidateCaretRect): Renamed from
25999 needsCaretRepaint. Invalidates the caret rect unconditionally. Also
26000 calls recomputeCaretRect as a side effect.
26003 (WebCore::Frame::invalidateSelection): Remove unneeded call to
26004 clearCaretRectIfNeeded.
26005 (WebCore::Frame::clearCaretRectIfNeeded): Updated for name change.
26006 (WebCore::Frame::selectionLayoutChanged): Restructured to use the new
26007 recomputeCaretRect function and not restart blinking if caret has
26008 not changed position.
26009 (WebCore::Frame::caretBlinkTimerFired): Removed some checks that
26010 are not needed since selectionLayoutChanged already checks these.
26012 * page/FramePrivate.h: Removed unused m_blinkCaret.
26014 2006-10-02 Beth Dakin <bdakin@apple.com>
26018 Build fix. Add counters to vcproj.
26020 * WebCore.vcproj/WebCore/WebCore.vcproj:
26022 2006-10-02 Brady Eidson <beidson@apple.com>
26026 If the Icon DB schema changes underneath you, the latest ToT can crash and burn when writing
26027 icon data out because we don't correctly check SQL error conditions.
26029 * loader/icon/IconDataCache.cpp:
26030 (WebCore::IconDataCache::writeToDatabase):
26032 2006-10-02 Steve Falkenburg <sfalken@apple.com>
26036 Added method to find out whether a layout has occurred.
26038 * page/FrameView.cpp:
26039 (WebCore::FrameView::didFirstLayout):
26040 * page/FrameView.h:
26042 2006-10-02 Beth Dakin <bdakin@apple.com>
26046 Initial implementation of CSS2 counters. See http://
26047 bugs.webkit.org/show_bug.cgi?id=4980 for more details.
26049 * WebCore.xcodeproj/project.pbxproj:
26050 * css/CSSComputedStyleDeclaration.cpp:
26051 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Return
26052 the increment/reset list now that this is implemented.
26053 * css/CSSPrimitiveValue.cpp:
26054 (WebCore::CSSPrimitiveValue::cssText):
26056 (WebCore::Counter::Counter):
26057 (WebCore::Counter::~Counter):
26058 (WebCore::Counter::identifier):
26059 (WebCore::Counter::listStyle):
26060 (WebCore::Counter::separator):
26061 (WebCore::Counter::listStyleNumber):
26062 (WebCore::Counter::setIdentifier):
26063 (WebCore::Counter::setListStyle):
26064 (WebCore::Counter::setSeparator):
26065 * css/cssparser.cpp:
26066 (WebCore::CSSParser::addProperty): Take care of reset/increment
26067 (WebCore::CSSParser::parseValue):
26068 (WebCore::CSSParser::parseContent): content can now take counters
26069 (WebCore::CSSParser::parseCounterContent): Parse counter() and
26071 (WebCore::CSSParser::parseCounter): Parse counter-reset and
26074 * css/cssstyleselector.cpp:
26075 (WebCore::CSSStyleSelector::matchUARules):
26076 (WebCore::CSSStyleSelector::applyProperty):
26077 * platform/PlatformString.h:
26078 * platform/String.cpp:
26079 (WebCore::String::insert): Implemented a version of insert that
26080 accepts a UChar* and a length.
26081 * platform/StringImpl.cpp:
26082 (WebCore::StringImpl::insert): Same as above.
26083 * platform/StringImpl.h:
26084 * rendering/CounterListItem.h: Added.
26085 * rendering/CounterNode.cpp: Added.
26086 (WebCore::CounterNode::CounterNode):
26087 (WebCore::CounterNode::insertAfter):
26088 (WebCore::CounterNode::removeChild):
26089 (WebCore::CounterNode::remove):
26090 (WebCore::CounterNode::setUsesSeparator):
26091 (WebCore::CounterNode::recountAndGetNext):
26092 (WebCore::CounterNode::recountTree):
26093 (WebCore::CounterNode::setSelfDirty):
26094 (WebCore::CounterNode::setParentDirty):
26095 * rendering/CounterNode.h: Added.
26096 (WebCore::CounterNode::~CounterNode):
26097 (WebCore::CounterNode::parent):
26098 (WebCore::CounterNode::previousSibling):
26099 (WebCore::CounterNode::nextSibling):
26100 (WebCore::CounterNode::firstChild):
26101 (WebCore::CounterNode::lastChild):
26102 (WebCore::CounterNode::value):
26103 (WebCore::CounterNode::setValue):
26104 (WebCore::CounterNode::count):
26105 (WebCore::CounterNode::setCount):
26106 (WebCore::CounterNode::setHasSeparator):
26107 (WebCore::CounterNode::isReset):
26108 (WebCore::CounterNode::hasSeparator):
26109 (WebCore::CounterNode::willNeedLayout):
26110 (WebCore::CounterNode::setWillNeedLayout):
26111 (WebCore::CounterNode::isRoot):
26112 (WebCore::CounterNode::setRenderer):
26113 (WebCore::CounterNode::renderer):
26114 * rendering/CounterResetNode.cpp: Added.
26115 (WebCore::CounterResetNode::CounterResetNode):
26116 (WebCore::CounterResetNode::insertAfter):
26117 (WebCore::CounterResetNode::removeChild):
26118 (WebCore::CounterResetNode::recountAndGetNext):
26119 (WebCore::CounterResetNode::setParentDirty):
26120 (WebCore::CounterResetNode::updateTotal):
26121 * rendering/CounterResetNode.h: Added.
26122 (WebCore::CounterResetNode::firstChild):
26123 (WebCore::CounterResetNode::lastChild):
26124 (WebCore::CounterResetNode::isReset):
26125 (WebCore::CounterResetNode::total):
26126 * rendering/RenderContainer.cpp:
26127 (WebCore::RenderContainer::updatePseudoChildForObject): Account for
26129 * rendering/RenderCounter.cpp: Added.
26130 (WebCore::RenderCounter::RenderCounter):
26131 (WebCore::RenderCounter::layout):
26132 (WebCore::toRoman):
26133 (WebCore::toLetterString):
26134 (WebCore::toHebrew):
26135 (WebCore::RenderCounter::convertValueToType):
26136 (WebCore::RenderCounter::calcMinMaxWidth):
26137 * rendering/RenderCounter.h: Added.
26138 (WebCore::RenderCounter::renderName):
26139 (WebCore::RenderCounter::isCounter):
26140 * rendering/RenderObject.cpp:
26141 (WebCore::getRenderObjectsToCounterNodeMaps): Maps RenderObjects to
26142 maps of CounterNodes
26143 (WebCore::RenderObject::RenderObject):
26144 (WebCore::RenderObject::destroy): Destroy the maps.
26145 (WebCore::RenderObject::findCounter): Finds/creates counters.
26146 * rendering/RenderObject.h:
26147 (WebCore::RenderObject::isCounter):
26148 * rendering/RenderStyle.cpp:
26149 (WebCore::StyleVisualData::StyleVisualData):
26150 (WebCore::RenderStyle::arenaDelete):
26151 (WebCore::RenderStyle::RenderStyle):
26152 (WebCore::RenderStyle::diff):
26153 (WebCore::RenderStyle::setContent):
26154 (WebCore::ContentData::clearContent):
26155 (WebCore::RenderStyle::counterDataEquivalent):
26156 (WebCore::hasCounter):
26157 (WebCore::RenderStyle::hasCounterReset):
26158 (WebCore::RenderStyle::hasCounterIncrement):
26159 (WebCore::readCounter):
26160 (WebCore::RenderStyle::counterReset):
26161 (WebCore::RenderStyle::counterIncrement):
26162 * rendering/RenderStyle.h:
26163 (WebCore::StyleVisualData::operator==):
26164 (WebCore::CounterData::CounterData):
26165 (WebCore::CounterData::identifier):
26166 (WebCore::CounterData::listStyle):
26167 (WebCore::CounterData::separator):
26168 (WebCore::ContentData::contentCounter):
26169 (WebCore::ContentData::):
26170 (WebCore::RenderStyle::counterIncrement):
26171 (WebCore::RenderStyle::counterReset):
26172 (WebCore::RenderStyle::setCounterIncrement):
26173 (WebCore::RenderStyle::setCounterReset):
26174 (WebCore::RenderStyle::setCounterResetList):
26175 (WebCore::RenderStyle::setCounterIncrementList):
26176 (WebCore::RenderStyle::counterResetValueList):
26177 (WebCore::RenderStyle::counterIncrementValueList):
26179 2006-10-02 Adele Peterson <adele@apple.com>
26183 - Fix for <rdar://problem/4463841> Switch to use new list box implementation for <select multiple>
26185 There are a few outstanding issues, so I've left the old code in for now. So you can use the old-style listboxes
26186 by using "-webkit-appearance:none".
26190 2006-10-02 David Harrison <harrison@apple.com>
26192 Reverted the code part of r16696, my patch for <rdar://problem/4641262>, because the problem was
26193 addressed at a deeper level by r16696, the patch for <http://bugs.webkit.org/show_bug.cgi?id=10842>.
26194 Left the layout test.
26196 * rendering/bidi.cpp:
26197 (WebCore::checkMidpoints):
26199 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
26201 Reviewed by eseidel. Landed by eseidel.
26203 Fix Qt/Linux build.
26205 * platform/qt/TemporaryLinkStubs.cpp: s/DeprecatedStringList/Vector<String>/
26206 (WebCore::supportedKeySizes):
26208 2006-10-02 Nikolas Zimmermann <zimmermann@kde.org>
26210 Reviewed by eseidel & mjs. Landed by eseidel.
26212 Fix Qt/Linux build with older gcc 3.3.4.
26213 http://bugs.webkit.org/show_bug.cgi?id=11116
26215 As discussed with Maciej, the GCC_ROOT_NS_HACK
26216 can be completely removed, as well as the friendship
26217 between cacheGlobalObject & the JS* objects.
26219 * bindings/scripts/CodeGeneratorJS.pm: Remove friendship.
26220 * platform/image-decoders/png/pnggccrd.c: Fix comments for gcc3.
26221 (png_read_filter_row_mmx_avg):
26222 * platform/image-decoders/png/pngvcrd.c: Ditto.
26224 (png_read_filter_row_mmx_avg):
26226 2006-10-01 Maciej Stachowiak <mjs@apple.com>
26228 Rubber stamped by Alexey.
26230 - reverted fix for http://bugs.webkit.org/show_bug.cgi?id=10893 since it led to layout test crashes
26232 * css/CSSGrammar.y:
26234 2006-10-01 Eric Seidel <eric@webkit.org>
26238 Eliminate a few more hotspots in SVG drawing code.
26240 No test cases were harmed in the making of this patch. (And SVG has no perf tests.)
26242 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
26243 (WebCore::KRenderingPaintServerSolidQuartz::setup): use a single shared colorspace, avoid a few mallocs
26244 * platform/mac/ColorMac.mm:
26245 (+[WebCoreControlTintObserver WebCore]): store a single shared colorspace instance
26247 2006-10-01 Geoffrey Garen <ggaren@apple.com>
26249 Reviewed by Maciej.
26251 More frame/iframe merging.
26253 - Removed needWidgetUpdate and related code. needWidgetUpdate is always
26254 false, so this was dead code.
26255 - Removed FIXME about setInViewSourceMode inside openURL(). openURL(), rather
26256 than attach(), is the correct place for setInViewSourceMode, because
26257 openURL() is the function that creates our frame.
26258 - Moved IFRAME insertedIntoDocument() code into FRAME, and removed FRAME
26259 code that did the same thing in other places.
26260 - Made FRAME's attach() method suffuciently generic so that IFRAME could
26261 call up to it, rather than skipping its superclass and calling up directly
26263 - Changed a few IFRAME up-calls to ELEMENT into up-calls to FRAME.
26264 - Replaced ad hoc frame loading code in FRAME::attach() with call to
26265 openURL(), the designated frame loading function.
26267 Layout tests pass. I added a layout test for viewsource mode, since I
26268 broke it in the course of writing this patch.
26270 2006-10-01 Anders Carlsson <acarlsson@apple.com>
26274 * dom/Document.cpp:
26275 (WebCore::Document::recalcStyleSelector):
26277 Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
26280 Remove DeprecatedStringList class forward declaration.
26282 * editing/markup.cpp:
26283 Include DeprecatedStringList.h here since it's not included by Document.h anymore.
26285 * kcanvas/KCanvasTreeDebug.cpp:
26286 * kcanvas/KCanvasTreeDebug.h:
26287 Remove unused functions.
26289 * loader/loader.cpp:
26292 * page/FrameView.h:
26293 Fixup DeprecatedStringList.h includes.
26295 2006-09-30 David Harrison <harrison@apple.com>
26297 Reviewed by John Sullivan.
26299 <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
26301 Problem was that the decision to trim was based only on whether the character
26302 is a soft hyphen, which caused pretty much any Japanese character to go.
26303 Changed to decide based on whether the character is ignorable whitespace.
26306 * fast/text/international/wrap-CJK-001.html
26308 * rendering/bidi.cpp:
26309 (WebCore::isTrimmableChar):
26310 New. Checks whether character is whitespace that can be ignored
26311 according to the text node's style.
26312 trimmed from the end of wrapped line.
26313 (WebCore::checkMidpoints):
26314 Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
26316 2006-10-01 Anders Carlsson <acarlsson@apple.com>
26318 Reviewed by Mitz Pettel.
26320 Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
26322 * ksvg2/svg/SVGColor.cpp:
26323 (WebCore::SVGColor::setRGBColor):
26324 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
26325 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
26326 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
26327 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
26328 (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
26329 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
26330 (SVGFESpecularLightingElement::parseMappedAttribute):
26331 * ksvg2/svg/SVGFETurbulenceElement.cpp:
26332 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
26333 * ksvg2/svg/SVGLengthList.cpp:
26334 * ksvg2/svg/SVGNumberList.cpp:
26335 (SVGNumberList::parse):
26336 * ksvg2/svg/SVGNumberList.h:
26337 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
26338 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
26339 * ksvg2/svg/SVGStringList.cpp:
26340 (WebCore::SVGStringList::reset):
26341 * ksvg2/svg/SVGStringList.h:
26342 * ksvg2/svg/SVGTransformable.cpp:
26343 (SVGTransformable::parseTransformAttribute):
26345 2006-10-01 Nikolas Zimmermann <zimmermann@kde.org>
26347 Reviewed by Eric, tweaked and landed by ap.
26349 Fix Qt/Linux build.
26352 * platform/qt/PlatformScrollBar.h:
26353 * platform/qt/TemporaryLinkStubs.cpp:
26354 (WebCore::ScrollBar::ScrollBar):
26355 (WebCore::PlatformScrollBar::PlatformScrollBar):
26356 (FrameView::passMousePressEventToSubframe):
26357 (FrameView::passMouseMoveEventToSubframe):
26358 (FrameView::passMouseReleaseEventToSubframe):
26359 (FrameView::passWheelEventToSubframe):
26360 (FrameView::passMousePressEventToScrollbar):
26361 * ksvg2/svg/SVGDocument.h:
26363 2006-10-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
26367 Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
26368 REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
26370 No test case added (probably requires new DumpRenderTree functionality)
26372 * rendering/RenderImage.cpp:
26373 (WebCore::RenderImage::imageChanged): Added early return if the document is
26376 2006-10-01 Graham Dennis <graham.dennis@gmail.com>
26380 Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
26381 REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
26383 Make sure we only break after a space (and not any other valid line-break) if
26384 the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
26385 I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
26386 twice in quick succession.
26388 * rendering/bidi.cpp:
26389 (WebCore::RenderBlock::findNextLineBreak):
26391 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
26393 Reviewed by Maciej and Darin.
26395 http://bugs.webkit.org/show_bug.cgi?id=4372
26396 JavaScript document.write page form does not submit in Safari
26398 Test: fast/forms/document-write.html
26401 (WebCore::Frame::submitForm): Don't check for parsing().
26403 2006-10-01 Alexey Proskuryakov <ap@nypop.com>
26407 * bridge/mac/FrameViewMac.mm: Add missing #imports.
26409 2006-10-01 Dave Hyatt <hyatt@apple.com>
26411 Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
26415 * bridge/mac/FrameMac.mm:
26416 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
26417 * bridge/mac/FrameViewMac.mm:
26418 (WebCore::FrameView::passMousePressEventToScrollbar):
26419 * page/FrameView.cpp:
26420 (WebCore::FrameView::handleMousePressEvent):
26421 (WebCore::FrameView::setMousePressed):
26422 * page/FrameView.h:
26423 * platform/win/TemporaryLinkStubs.cpp:
26424 (FrameView::passMousePressEventToScrollbar):
26426 2006-09-30 Sam Weinig <sam.weinig@gmail.com>
26430 Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
26431 Add more SVG Objective-C DOM bindings
26433 - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
26434 DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
26435 DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
26436 DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
26437 DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument,
26438 DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
26440 * DerivedSources.make:
26441 * WebCore.xcodeproj/project.pbxproj:
26442 * bindings/objc/DOMInternal.h:
26443 * bindings/objc/DOMSVG.h:
26444 * bindings/scripts/CodeGeneratorObjC.pm:
26445 * ksvg2/svg/SVGAElement.idl:
26446 * ksvg2/svg/SVGAnimateColorElement.idl:
26447 * ksvg2/svg/SVGAnimateElement.idl:
26448 * ksvg2/svg/SVGAnimateTransformElement.idl:
26449 * ksvg2/svg/SVGAnimatedPathData.idl:
26450 * ksvg2/svg/SVGAnimatedPoints.idl:
26451 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
26452 * ksvg2/svg/SVGAnimationElement.idl:
26453 * ksvg2/svg/SVGCircleElement.idl:
26454 * ksvg2/svg/SVGClipPathElement.idl:
26455 * ksvg2/svg/SVGColor.idl:
26456 * ksvg2/svg/SVGCursorElement.idl:
26457 * ksvg2/svg/SVGDefsElement.idl:
26458 * ksvg2/svg/SVGDescElement.idl:
26459 * ksvg2/svg/SVGDocument.idl:
26460 * ksvg2/svg/SVGEllipseElement.idl:
26461 * ksvg2/svg/SVGPointList.idl:
26462 * ksvg2/svg/SVGPreserveAspectRatio.idl:
26463 * ksvg2/svg/SVGRect.idl:
26464 * ksvg2/svg/SVGSVGElement.idl:
26466 2006-09-30 Maciej Stachowiak <mjs@apple.com>
26472 * platform/FloatRect.h:
26473 (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
26474 but more appropriate for path-type stuff.
26475 * platform/cg/PathCG.cpp:
26476 (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
26478 2006-09-30 Alexey Proskuryakov <ap@nypop.com>
26482 http://bugs.webkit.org/show_bug.cgi?id=11011
26483 External CSS is parsed as iso-8859-1 even though the main document is utf-8
26485 Test: fast/encoding/css-charset-default.xhtml
26487 * loader/CachedResourceClient.h:
26488 (WebCore::CachedResourceClient::setCSSStyleSheet):
26489 (WebCore::CachedResourceClient::setXSLStyleSheet):
26490 Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
26491 takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
26493 * css/CSSImportRule.cpp:
26494 (WebCore::CSSImportRule::setCSSStyleSheet):
26495 (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
26496 * css/CSSImportRule.h:
26498 * css/CSSStyleSheet.cpp:
26499 (WebCore::CSSStyleSheet::CSSStyleSheet):
26500 * css/CSSStyleSheet.h:
26501 Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
26502 member. Changed some String parameters to const String&.
26504 * css/StyleSheet.cpp:
26505 (WebCore::StyleSheet::StyleSheet):
26506 * css/StyleSheet.h:
26507 Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
26509 * css/StyleSheetList.cpp:
26510 (WebCore::StyleSheetList::length):
26511 (WebCore::StyleSheetList::item):
26512 * css/StyleSheetList.h:
26513 Special-casing implicit stylesheets seemed to be dead code, removed.
26515 * dom/Document.cpp:
26516 (WebCore::Document::setCSSStyleSheet):
26517 (WebCore::Document::recalcStyleSelector):
26519 Renamed setStyleSheet() to setCSSStyleSheet().
26521 * dom/ProcessingInstruction.cpp:
26522 (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
26523 (WebCore::ProcessingInstruction::setCSSStyleSheet):
26524 (WebCore::ProcessingInstruction::setXSLStyleSheet):
26525 (WebCore::ProcessingInstruction::parseStyleSheet):
26526 * dom/ProcessingInstruction.h:
26528 * html/HTMLLinkElement.cpp:
26529 (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute
26531 (WebCore::HTMLLinkElement::setCSSStyleSheet):
26532 * html/HTMLLinkElement.h:
26534 * html/HTMLStyleElement.cpp:
26535 (WebCore::HTMLStyleElement::childrenChanged):
26536 * ksvg2/svg/SVGStyleElement.cpp:
26537 (WebCore::SVGStyleElement::childrenChanged):
26538 Inherit URL and charset from the document.
26540 * loader/Cache.cpp:
26541 (WebCore::Cache::requestCSSStyleSheet):
26543 Adjust for setStyleSheet() renaming.
26545 * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
26546 * loader/CachedCSSStyleSheet.cpp:
26547 (WebCore::CachedCSSStyleSheet::ref):
26548 (WebCore::CachedCSSStyleSheet::deref):
26549 (WebCore::CachedCSSStyleSheet::checkNotify):
26550 Pass the encoding to setCSSStyleSheet().
26552 * loader/CachedXSLStyleSheet.cpp:
26553 (WebCore::CachedXSLStyleSheet::ref):
26554 (WebCore::CachedXSLStyleSheet::checkNotify):
26555 * loader/DocLoader.cpp:
26556 (WebCore::DocLoader::requestCSSStyleSheet):
26557 * loader/DocLoader.h:
26559 (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
26560 (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
26561 * xml/XSLImportRule.cpp:
26562 (WebCore::XSLImportRule::setXSLStyleSheet):
26563 (WebCore::XSLImportRule::loadSheet):
26564 * xml/XSLImportRule.h:
26565 Adjust for setStyleSheet() renaming.
26567 2006-09-30 Rob Buis <buis@kde.org>
26569 Reviewed by eseidel.
26571 http://bugs.webkit.org/show_bug.cgi?id=11096
26572 Hit testing for polylines fails
26574 Fix Path::contains so it handles filled, non-closed paths too.
26576 * platform/cg/PathCG.cpp:
26577 (WebCore::Path::contains):
26579 2006-09-30 Dave Hyatt <hyatt@apple.com>
26581 Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
26582 Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
26583 subframes while the mouse is down.
26585 Reviewed by mitzpettel
26587 * bridge/mac/FrameMac.h:
26588 * bridge/mac/FrameMac.mm:
26589 (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
26590 (WebCore::FrameMac::passWheelEventToWidget):
26591 * bridge/mac/FrameViewMac.mm:
26592 (WebCore::FrameView::passMousePressEventToSubframe):
26593 (WebCore::FrameView::passMouseMoveEventToSubframe):
26594 (WebCore::FrameView::passMouseReleaseEventToSubframe):
26595 (WebCore::FrameView::passWheelEventToSubframe):
26598 * page/FrameView.cpp:
26599 (WebCore::subframeForTargetNode):
26600 (WebCore::FrameView::handleMousePressEvent):
26601 (WebCore::FrameView::handleMouseDoubleClickEvent):
26602 (WebCore::FrameView::handleMouseMoveEvent):
26603 (WebCore::FrameView::handleMouseReleaseEvent):
26604 (WebCore::FrameView::handleWheelEvent):
26605 * page/FrameView.h:
26606 * platform/ScrollBar.h:
26607 (WebCore::ScrollBar::handleMouseMoveEvent):
26608 (WebCore::ScrollBar::handleMouseOutEvent):
26609 * platform/Widget.h:
26610 (WebCore::Widget::handleMouseMoveEvent):
26611 (WebCore::Widget::handleMouseReleaseEvent):
26612 * platform/win/TemporaryLinkStubs.cpp:
26613 (FrameView::passMousePressEventToSubframe):
26614 (FrameView::passMouseMoveEventToSubframe):
26615 (FrameView::passMouseReleaseEventToSubframe):
26616 (FrameView::passWheelEventToSubframe):
26617 (Widget::capturingMouse):
26618 (Widget::setCapturingMouse):
26619 (Widget::capturingTarget):
26620 (Widget::capturingChild):
26621 (Widget::setCapturingChild):
26622 * rendering/RenderView.cpp:
26623 (WebCore::RenderView::paintBoxDecorations):
26625 2006-09-29 MorganL <morganl.webkit@yahoo.com>
26629 Fixes windows bustage:
26630 http://bugs.webkit.org/show_bug.cgi?id=11093
26632 * platform/win/PlatformScrollBar.h:
26633 * platform/win/TemporaryLinkStubs.cpp:
26634 (PlatformScrollBar::PlatformScrollBar):
26635 (ScrollBar::ScrollBar):
26637 2006-09-29 David Hyatt <hyatt@apple.com>
26639 Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
26640 in RenderObject::NodeInfo (and then propagating that Widget to
26641 MouseEventWithHitTestResults).
26643 This allows RenderListBox and RenderBlock to do the same thing when the
26644 mouse is over the scrollbar.
26646 Also land fix to support font-size: 0.
26648 Reviewed by mjs (scrollbar), eric (font-size)
26650 * dom/Document.cpp:
26651 (WebCore::Document::prepareMouseEvent):
26653 (WebCore::Frame::passWidgetMouseDownEventToWidget):
26654 * page/FrameView.cpp:
26655 (WebCore::selectCursor):
26656 (WebCore::FrameView::handleMouseMoveEvent):
26657 (WebCore::FrameView::dispatchMouseEvent):
26658 * page/MouseEventWithHitTestResults.cpp:
26659 (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
26660 * page/MouseEventWithHitTestResults.h:
26661 (WebCore::MouseEventWithHitTestResults::scrollbar):
26662 * rendering/RenderBlock.cpp:
26663 (WebCore::RenderBlock::isPointInScrollbar):
26664 (WebCore::RenderBlock::nodeAtPoint):
26665 * rendering/RenderBlock.h:
26666 * rendering/RenderLayer.cpp:
26667 (WebCore::RenderLayer::hitTest):
26668 * rendering/RenderLayer.h:
26669 (WebCore::RenderLayer::getHiddenBehavior):
26670 * rendering/RenderListBox.cpp:
26671 (WebCore::RenderListBox::RenderListBox):
26672 (WebCore::RenderListBox::~RenderListBox):
26673 (WebCore::RenderListBox::isPointInScrollbar):
26674 * rendering/RenderListBox.h:
26675 * rendering/RenderObject.h:
26676 (WebCore::RenderObject::NodeInfo::NodeInfo):
26677 (WebCore::RenderObject::NodeInfo::scrollbar):
26678 (WebCore::RenderObject::NodeInfo::setScrollbar):
26680 2006-09-29 MorganL <morganl.webkit@yahoo.com>
26684 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
26686 * platform/win/ScrollViewWin.cpp:
26687 (WebCore::ScrollView::convertToContainingWindow):
26688 (WebCore::ScrollView::convertFromContainingWindow):
26689 * platform/win/WidgetWin.cpp:
26690 (WebCore::Widget::convertToContainingWindow):
26691 (WebCore::Widget::convertFromContainingWindow):
26693 2006-09-29 Adele Peterson <adele@apple.com>
26695 Updated with new argument for PlatformScrollBar.
26697 * platform/win/TemporaryLinkStubs.cpp:
26698 (PlatformScrollBar::PlatformScrollBar):
26700 2006-09-29 Adele Peterson <adele@apple.com>
26704 Fixing build bustage with cast to int.
26706 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
26708 2006-09-29 Adele Peterson <adele@apple.com>
26710 Fixing accidental include.
26712 * rendering/RenderListBox.cpp:
26714 2006-09-29 Adele Peterson <adele@apple.com>
26716 Adding RenderListBox files.
26718 * WebCore.vcproj/WebCore/WebCore.vcproj:
26720 2006-09-29 Adele Peterson <adele@apple.com>
26724 Initial implementation of engine-based list box control.
26726 * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
26728 * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
26729 * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
26730 (WebCore::FrameMac::FrameMac):
26731 (WebCore::FrameMac::handleMousePressEvent):
26732 (WebCore::FrameMac::handleMouseMoveEvent):
26733 (WebCore::FrameMac::mouseDown):
26736 (WebCore::Frame::handleMouseMoveEvent):
26737 (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
26738 (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
26739 (WebCore::Frame::autoscrollTimerFired): ditto.
26740 (WebCore::Frame::stopAutoscrollTimer): ditto.
26741 (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
26743 * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
26745 * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
26746 (WebCore::FrameViewPrivate::reset):
26747 (WebCore::FrameView::currentMousePosition):
26748 (WebCore::FrameView::handleMousePressEvent):
26749 (WebCore::FrameView::handleMouseDoubleClickEvent):
26750 (WebCore::selectCursor):
26751 (WebCore::FrameView::handleMouseMoveEvent):
26752 (WebCore::FrameView::handleMouseReleaseEvent):
26753 * page/FrameView.h:
26755 * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument. The list box will use a smaller scroll bar size.
26756 * platform/ScrollBar.h:
26758 (WebCore::ScrollBar::controlSize):
26759 * platform/mac/PlatformScrollBar.h:
26760 * platform/mac/PlatformScrollBarMac.mm:
26761 (NSControlSizeForScrollBarControlSize):
26762 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
26763 (WebCore::PlatformScrollBar::PlatformScrollBar):
26765 * rendering/RenderBlock.h:
26766 * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
26767 * rendering/RenderLayer.h:
26768 * rendering/RenderObject.cpp:
26769 (WebCore::RenderObject::shouldAutoscroll):
26770 (WebCore::RenderObject::autoscroll):
26771 * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
26773 * css/html4.css: Added properties for new list boxes.
26775 * html/HTMLOptionElement.cpp:
26776 (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
26777 (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
26778 * html/HTMLOptionElement.h: Added disabled method.
26780 * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
26781 (WebCore::HTMLSelectElement::recalcStyle):
26782 (WebCore::HTMLSelectElement::lastSelectedListIndex):
26783 (WebCore::HTMLSelectElement::deselectItems):
26784 (WebCore::HTMLSelectElement::setSelectedIndex):
26785 (WebCore::HTMLSelectElement::isKeyboardFocusable):
26786 (WebCore::HTMLSelectElement::isMouseFocusable):
26787 (WebCore::HTMLSelectElement::createRenderer):
26788 (WebCore::HTMLSelectElement::recalcListItems):
26789 (WebCore::HTMLSelectElement::setRecalcListItems):
26790 (WebCore::HTMLSelectElement::reset):
26791 (WebCore::HTMLSelectElement::notifyOptionSelected):
26792 (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
26793 (WebCore::HTMLSelectElement::nextSelectableListIndex):
26794 (WebCore::HTMLSelectElement::previousSelectableListIndex):
26795 * html/HTMLSelectElement.h:
26797 * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
26798 (WebCore::RenderTheme::paint):
26799 (WebCore::RenderTheme::paintBorderOnly):
26800 (WebCore::RenderTheme::paintDecorations):
26801 (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
26802 (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
26803 (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
26804 (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
26805 (WebCore::RenderTheme::isControlStyled):
26806 (WebCore::RenderTheme::supportsFocusRing):
26807 * rendering/RenderTheme.h:
26808 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
26810 * rendering/RenderListBox.cpp: Added.
26811 (WebCore::RenderListBox::RenderListBox):
26812 (WebCore::RenderListBox::~RenderListBox):
26813 (WebCore::RenderListBox::setStyle):
26814 (WebCore::RenderListBox::updateFromElement):
26815 (WebCore::RenderListBox::calcMinMaxWidth):
26816 (WebCore::RenderListBox::size):
26817 (WebCore::RenderListBox::numItems):
26818 (WebCore::RenderListBox::calcHeight):
26819 (WebCore::RenderListBox::baselinePosition):
26820 (WebCore::RenderListBox::itemBoundingBoxRect):
26821 (WebCore::RenderListBox::paintObject):
26822 (WebCore::RenderListBox::paintScrollbar):
26823 (WebCore::RenderListBox::paintItemForeground):
26824 (WebCore::RenderListBox::paintItemBackground):
26825 (WebCore::RenderListBox::scrollBarTarget):
26826 (WebCore::RenderListBox::isPointInScrollbar):
26827 (WebCore::RenderListBox::optionAtPoint):
26828 (WebCore::RenderListBox::autoscroll):
26829 (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
26830 (WebCore::RenderListBox::scroll):
26831 (WebCore::RenderListBox::valueChanged):
26832 * rendering/RenderListBox.h: Added.
26833 (WebCore::RenderListBox::isListBox):
26834 (WebCore::RenderListBox::selectionChanged):
26835 (WebCore::RenderListBox::setSelectionChanged):
26836 (WebCore::RenderListBox::canHaveChildren):
26837 (WebCore::RenderListBox::renderName):
26838 (WebCore::RenderListBox::setOptionsChanged):
26839 (WebCore::RenderListBox::shouldAutoscroll):
26840 (WebCore::RenderListBox::listIndexIsVisible):
26842 2006-09-29 Beth Dakin <bdakin@apple.com>
26846 We had a bug where html4.css was ignoring Media Queries. In the end
26847 the problem was that we were trying to send a char* to the
26848 MediaQueryEvaluator constructor that expects a String, but the
26849 char* got interpreted as a bool, the wrong constructor was called,
26850 and the media type was never set.
26852 No test case possible since this only affects html4.css
26854 * css/MediaQueryEvaluator.cpp: New constructor that expects takes a
26856 (WebCore::MediaQueryEvaluator):
26857 * css/MediaQueryEvaluator.h: Same.
26859 2006-09-29 Geoffrey Garen <ggaren@apple.com>
26861 Reviewed by John, Maciej.
26863 Integrated some frame and iframe code. I'm trying to fix up frame ownership
26864 and loading. Reducing the number of different code paths involved
26865 seemed like a good first step.
26867 As a side effect, I fixed a bug where FRAME elements would report their
26868 src attributes as relative, rather than compelete, URLs. (IFRAME elements
26869 had the correct complete URL behavior.)
26871 * html/HTMLFrameElement.cpp:
26872 (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
26873 (WebCore::HTMLFrameElement::openURL):
26874 (1) Removed checks that requestFrame does for us
26875 (2) Added isURLAllowed check, to have one clear bottleneck for it
26876 (3) Added viewsource check, to have one clear bottleneck for it
26877 (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
26878 method, instead of finding our content frame in our own unique way.
26879 (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
26880 since openURL does this for us now.
26881 (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
26882 This is what FF does, and it made no sense to have different behaviors
26883 for FRAME and IFRAME elements.
26884 * html/HTMLIFrameElement.cpp:
26885 (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
26887 * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
26888 HTMLFrameElement now does everything we need.
26890 2006-09-30 Nikolas Zimmermann <zimmermann@kde.org>
26894 Fix Qt/Linux build.
26897 * platform/qt/ScrollViewQt.cpp:
26898 (WebCore::ScrollView::convertToContainingWindow):
26899 (WebCore::ScrollView::convertFromContainingWindow):
26900 * platform/qt/TemporaryLinkStubs.cpp:
26901 (WebCore::signedPublicKeyAndChallengeString):
26902 * platform/qt/WidgetQt.cpp:
26903 (WebCore::Widget::convertToContainingWindow):
26904 (WebCore::Widget::convertFromContainingWindow):
26906 2006-09-29 Sam Weinig <sam.weinig@gmail.com>
26910 Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
26911 Simplify Internal methods for the auto-generated Objective-C DOM code
26913 - Auto-generate the internal methods for more Objective-C classes.
26915 * WebCore.xcodeproj/project.pbxproj:
26916 * bindings/objc/DOM.mm:
26917 * bindings/objc/DOMCSS.mm:
26918 (-[DOMStyleSheet WebCore::]):
26919 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
26920 (-[DOMCSSRule WebCore::]):
26921 (-[DOMCSSRule _initWithCSSRule:WebCore::]):
26922 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
26923 (-[DOMCSSValue WebCore::]):
26924 (-[DOMCSSValue _initWithCSSValue:WebCore::]):
26925 (+[DOMCSSValue _CSSValueWith:WebCore::]):
26926 * bindings/objc/DOMHTMLAppletElement.mm:
26927 (-[DOMHTMLAppletElement WebCore::]):
26928 (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
26929 * bindings/objc/DOMHTMLEmbedElement.mm:
26930 (-[DOMHTMLEmbedElement WebCore::]):
26931 (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
26932 * bindings/objc/DOMInternal.h:
26933 * bindings/objc/DOMInternal.mm:
26934 * bindings/scripts/CodeGeneratorObjC.pm:
26935 * css/CSSCharsetRule.idl:
26936 * css/CSSFontFaceRule.idl:
26937 * css/CSSImportRule.idl:
26938 * css/CSSMediaRule.idl:
26939 * css/CSSPageRule.idl:
26940 * css/CSSPrimitiveValue.idl:
26941 * css/CSSStyleRule.idl:
26942 * css/CSSStyleSheet.idl:
26943 * css/CSSUnknownRule.idl:
26944 * css/CSSValueList.idl:
26945 * dom/KeyboardEvent.idl:
26946 * dom/MouseEvent.idl:
26947 * dom/MutationEvent.idl:
26948 * dom/NodeIterator.idl:
26949 * dom/OverflowEvent.idl:
26951 * dom/WheelEvent.idl:
26953 2006-09-29 David Harrison <harrison@apple.com>
26955 Reviewed by John Sullivan.
26957 <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
26958 <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
26961 * fast/text/attributed-substring-from-range-001.html
26963 * bridge/mac/FrameMac.mm:
26964 (WebCore::FrameMac::attributedString):
26965 Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
26966 Also, add validation of the range.
26968 2006-09-29 Rob Buis <buis@kde.org>
26970 Reviewed by Maciej.
26972 http://bugs.webkit.org/show_bug.cgi?id=10893
26973 InsertRule can not handle @import statements
26975 Allow @import as part of a css rule.
26977 * css/CSSGrammar.y:
26979 2006-09-28 David Hyatt <hyatt@apple.com>
26981 Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
26983 * bridge/mac/FrameMac.mm:
26984 (WebCore::FrameMac::eventMayStartDrag):
26985 (WebCore::FrameMac::dragHysteresisExceeded):
26986 (WebCore::FrameMac::mouseDown):
26987 (WebCore::FrameMac::shouldDragAutoNode):
26988 (WebCore::FrameMac::sendContextMenuEvent):
26989 * bridge/mac/WebCoreFrameBridge.mm:
26990 (-[WebCoreFrameBridge _visiblePositionForPoint:]):
26992 2006-09-28 Dave Hyatt <hyatt@apple.com>
26994 This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
26995 ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
26998 Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
26999 the patch after review, once I realized that these new functions essentially do the same thing.)
27001 * dom/EventTargetNode.cpp:
27002 (WebCore::EventTargetNode::dispatchMouseEvent):
27003 (WebCore::EventTargetNode::dispatchWheelEvent):
27005 (WebCore::Frame::selectClosestWordFromMouseEvent):
27006 (WebCore::Frame::handleMousePressEventTripleClick):
27007 (WebCore::Frame::handleMousePressEventSingleClick):
27008 (WebCore::Frame::handleMouseMoveEvent):
27009 (WebCore::Frame::handleMouseReleaseEvent):
27010 * page/FrameView.cpp:
27011 (WebCore::FrameView::handleMousePressEvent):
27012 (WebCore::selectCursor):
27013 (WebCore::FrameView::dispatchDragEvent):
27014 (WebCore::FrameView::prepareMouseEvent):
27015 (WebCore::FrameView::handleWheelEvent):
27016 * platform/ScrollView.h:
27017 * platform/Widget.cpp:
27018 (WebCore::Widget::convertToContainingWindow):
27019 * platform/Widget.h:
27020 * platform/mac/ScrollViewMac.mm:
27021 (WebCore::ScrollView::convertToContainingWindow):
27022 (WebCore::ScrollView::convertFromContainingWindow):
27023 * platform/mac/WidgetMac.mm:
27024 (WebCore::Widget::convertToContainingWindow):
27025 (WebCore::Widget::convertFromContainingWindow):
27026 * platform/win/ScrollViewWin.cpp:
27027 (WebCore::ScrollView::convertToContainingWindow):
27028 (WebCore::ScrollView::convertFromContainingWindow):
27029 * rendering/RenderLayer.cpp:
27030 (WebCore::RenderLayer::resize):
27032 2006-09-28 Alice Liu <alice.liu@apple.com>
27034 Build fix by adding missing files for CommandByName
27036 * WebCore.xcodeproj/project.pbxproj:
27038 2006-09-28 Alice Liu <alice.liu@apple.com>
27040 Adding CommandByName files to the vcproj
27042 * WebCore.vcproj/WebCore/WebCore.vcproj:
27044 2006-09-28 Alice Liu <alice.liu@apple.com>
27046 Reviewed by Adam Roben.
27048 This patch adds a command class that is attached to the frame so the frame can more easily execute commands such as copy, paste, select, etc.
27049 This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
27050 This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
27052 * editing/CommandByName.cpp: Added.
27053 Added a command class that hangs off the frame so the frame can call commands more easily.
27054 (WebCore::Frame::commandImp):
27055 (WebCore::Frame::execCopy):
27056 (WebCore::Frame::execCut):
27057 (WebCore::Frame::execDelete):
27058 (WebCore::Frame::execForwardDelete):
27059 (WebCore::Frame::execPaste):
27060 (WebCore::Frame::execMoveLeft):
27061 (WebCore::Frame::execMoveRight):
27062 (WebCore::Frame::execMoveUp):
27063 (WebCore::Frame::execMoveDown):
27064 (WebCore::Frame::execSelectAll):
27065 (WebCore::Frame::execSelectLeft):
27066 (WebCore::Frame::execSelectRight):
27067 (WebCore::Frame::execSelectUp):
27068 (WebCore::Frame::execSelectDown):
27069 (WebCore::Frame::enabled):
27070 (WebCore::Frame::enabledAnySelection):
27071 (WebCore::Frame::enabledAnyEditableSelection):
27072 (WebCore::Frame::enabledPaste):
27073 (WebCore::Frame::enabledAnyRangeSelection):
27074 (WebCore::Frame::enabledAnyEditableRangeSelection):
27075 (WebCore::Frame::createCommandDictionary):
27076 (WebCore::Frame::Command::):
27077 (WebCore:::m_frame):
27078 (WebCore::CommandByName::execCommand):
27079 * editing/CommandByName.h: Added.
27081 Added implementation of accessor for CommandByName member
27082 (WebCore::Frame::command):
27084 Added accessor for CommandByName member
27085 * page/FramePrivate.h:
27086 Added a CommandByName member
27087 (WebCore::FramePrivate::FramePrivate):
27088 * platform/PlatformMouseEvent.h:
27089 Changed constructor prototype
27090 * platform/StringImpl.cpp:
27091 Exposing getWordBreakIterator to be used elsewhere
27092 (WebCore::getWordBreakIterator):
27093 * platform/StringImpl.h:
27094 Exposing getWordBreakIterator to be used elsewhere
27095 * platform/win/MouseEventWin.cpp:
27096 Changed the PlatformMouseEvent on windows so that we "roll our own" multi-click mouse events instead of relying on the system to tell us, enabling us to detect triple-clicks
27097 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
27099 2006-09-28 Adam Roben <aroben@apple.com>
27103 Remove no-longer-used PopUpButton.
27105 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
27106 * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
27108 * platform/PopUpButton.h: Removed.
27109 * platform/mac/PopUpButtonMac.mm: Removed.
27110 * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
27111 * rendering/DeprecatedRenderSelect.cpp: Change #include of
27112 PopUpButton.h to ListBox.h
27114 2006-09-28 Darin Adler <darin@apple.com>
27118 - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
27119 10% perf. regression (copying strings while decoding)
27121 Use Vector<UChar> instead of String when building up the decoded string in
27122 the ICU and Mac decoders. Using String leads to O(n^2) behavior because
27123 String grows the buffer every single time that append is called. Using
27124 Vector::append instead of String::append also avoids constructing a string
27125 each time just to append and a questionable copy that is done inside the
27126 String::append function which also contributed to the slowness.
27128 * platform/PlatformString.h:
27129 * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
27130 Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
27132 * platform/StringImpl.h:
27133 * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
27135 * platform/StreamingTextDecoder.h:
27136 * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
27137 Change to use a Vector<UChar> instead of a String, since vectors have better
27138 resizing performance (they store a separate capacity).
27140 * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
27141 * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
27142 Change to use Vector<UChar> instead of String and then create a string at
27143 the end of the process using the new adopt function.
27145 2006-09-28 Sam Weinig <sam.weinig@gmail.com>
27149 Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
27150 Auto-generate more SVG Objective-C bindings
27152 - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean,
27153 DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
27154 DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
27155 DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
27156 DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
27157 DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests,
27158 and DOMSVGTransformable.
27160 - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
27161 parent interfaces and the SVG animated classes.
27163 - Corrects CodeGenerator.pm to only skip the first parent for the main
27166 * DerivedSources.make:
27167 * WebCore.xcodeproj/project.pbxproj:
27168 * bindings/objc/DOMInternal.h:
27169 * bindings/objc/DOMSVG.h:
27170 * bindings/scripts/CodeGenerator.pm:
27171 * bindings/scripts/CodeGeneratorObjC.pm:
27172 * ksvg2/svg/SVGAnimatedAngle.idl:
27173 * ksvg2/svg/SVGAnimatedBoolean.idl:
27174 * ksvg2/svg/SVGAnimatedEnumeration.idl:
27175 * ksvg2/svg/SVGAnimatedInteger.idl:
27176 * ksvg2/svg/SVGAnimatedLength.idl:
27177 * ksvg2/svg/SVGAnimatedLengthList.idl:
27178 * ksvg2/svg/SVGAnimatedNumber.idl:
27179 * ksvg2/svg/SVGAnimatedPathData.idl:
27180 * ksvg2/svg/SVGAnimatedString.idl:
27181 * ksvg2/svg/SVGAnimatedTransformList.idl:
27182 * ksvg2/svg/SVGExternalResourcesRequired.idl:
27183 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
27184 * ksvg2/svg/SVGFitToViewBox.idl:
27185 * ksvg2/svg/SVGLangSpace.idl:
27186 * ksvg2/svg/SVGLocatable.idl:
27187 * ksvg2/svg/SVGMetadataElement.idl:
27188 * ksvg2/svg/SVGStringList.idl:
27189 * ksvg2/svg/SVGStylable.idl:
27190 * ksvg2/svg/SVGStyleElement.idl:
27191 * ksvg2/svg/SVGTests.idl:
27192 * ksvg2/svg/SVGTransformable.idl:
27193 * ksvg2/svg/SVGURIReference.idl:
27194 * ksvg2/svg/SVGUnitTypes.idl:
27195 * ksvg2/svg/SVGZoomAndPan.idl:
27197 2006-09-28 Brady Eidson <beidson@apple.com>
27199 Reviewed by Mitz Pettel!!!
27201 Change the error code check for common functions from SQLResultOk to SQLResultDone
27203 * loader/icon/IconDatabase.cpp:
27204 (WebCore::IconDatabase::forgetPageURLQuery):
27205 (WebCore::IconDatabase::setIconIDForPageURLQuery):
27206 (WebCore::IconDatabase::addIconForIconURLQuery):
27208 2006-09-28 Dave Hyatt <hyatt@apple.com>
27210 Just eliminate MapWindowPoints usage and use the HWND as
27213 * platform/win/MouseEventWin.cpp:
27214 (WebCore::positionForEvent):
27215 * platform/win/ScrollViewWin.cpp:
27216 (WebCore::ScrollView::viewportToContents):
27217 (WebCore::ScrollView::contentsToViewport):
27219 2006-09-27 David Hyatt <hyatt@apple.com>
27221 Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas. Make sure
27222 selectCursor checks for whether or not a scrollbar was hit. Also stub out a mouseMoved method for
27223 scrollbars to provide hover feedback if needed.
27227 * page/FrameView.cpp:
27228 (WebCore::selectCursor):
27229 (WebCore::FrameView::handleMouseMoveEvent):
27230 * platform/ScrollBar.h:
27231 (WebCore::ScrollBar::mouseMoved):
27233 2006-09-27 MorganL <morganl.webkit@yahoo.com>
27235 Reviewed by Maciej and Adam, landed by Adam
27237 Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
27238 Windows build is busted
27240 * platform/win/TemporaryLinkStubs.cpp:
27241 (ScrollView::paint):
27242 (ScrollView::themeChanged):
27244 2006-09-27 Eric Seidel <eric@webkit.org>
27248 paths with no fill specified default to black but do not receive paint-related mouse events
27249 http://bugs.webkit.org/show_bug.cgi?id=11069
27250 The default fill was being applied at the wrong place in the rendering chain, causing this problem.
27252 Test: svg/custom/hover-default-fill.svg
27254 * kcanvas/RenderPath.cpp:
27255 (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
27256 * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
27257 * ksvg2/misc/KCanvasRenderingStyle.cpp:
27258 (WebCore::KSVGPainterFactory::isFilled): remove null check
27259 (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
27260 (WebCore::KSVGPainterFactory::isStroked): remove null check
27261 (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
27262 * ksvg2/svg/SVGPaint.cpp:
27263 (WebCore::SVGPaint::defaultFill): added.
27264 (WebCore::SVGPaint::defaultStroke): added.
27265 * ksvg2/svg/SVGPaint.h:
27267 2006-09-27 Rob Buis <buis@kde.org>
27269 Reviewed by eseidel.
27271 http://bugs.webkit.org/show_bug.cgi?id=11015
27272 SVG handles em units incorrectly
27274 Calculate viewport coordinates at layout time, since
27275 at this point the font size is known and lengths depending
27276 on font sizes can be calculated correctly.
27278 * kcanvas/RenderSVGContainer.cpp:
27279 (WebCore::RenderSVGContainer::layout):
27280 (WebCore::RenderSVGContainer::viewport):
27281 (WebCore::RenderSVGContainer::calcViewport):
27282 * kcanvas/RenderSVGContainer.h:
27283 * ksvg2/svg/SVGLength.cpp:
27284 (WebCore::SVGLength::updateValue):
27285 * ksvg2/svg/SVGMarkerElement.cpp:
27286 (WebCore::SVGMarkerElement::createRenderer):
27287 * ksvg2/svg/SVGSVGElement.cpp:
27288 (WebCore::SVGSVGElement::createRenderer):
27289 (WebCore::SVGSVGElement::attributeChanged):
27290 * ksvg2/svg/SVGSVGElement.h:
27292 2006-09-27 Eric Seidel <eric@webkit.org>
27296 Change our invalid-fill error behavior to match Opera (and soon Firefox)
27297 http://bugs.webkit.org/show_bug.cgi?id=11017
27299 * ksvg2/misc/KCanvasRenderingStyle.cpp:
27300 (WebCore::KSVGPainterFactory::isFilled):
27301 (WebCore::KSVGPainterFactory::fillPaintServer):
27302 (WebCore::KSVGPainterFactory::isStroked):
27303 (WebCore::KSVGPainterFactory::strokePaintServer):
27305 2006-09-27 Brady Eidson <beidson@apple.com>
27309 * loader/icon/IconDatabase.cpp:
27310 (WebCore::readySQLStatement):
27312 2006-09-27 Brady Eidson <beidson@apple.com>
27316 In very specific circumstances, prepared SQLStatements can become invalid without
27317 any warning. This checks for that state and re-prepares the statement and also
27318 adds more aggressive error-checking everywhere these statements are used.
27320 * loader/icon/IconDatabase.cpp:
27321 (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
27322 (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
27323 (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
27324 (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
27325 (WebCore::IconDatabase::forgetPageURLQuery): Ditto
27326 (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
27327 (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
27328 (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
27329 (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
27330 * loader/icon/SQLStatement.cpp:
27331 (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
27332 * loader/icon/SQLStatement.h:
27334 2006-09-26 Darin Adler <darin@apple.com>
27338 - clean up options for font code path
27341 * platform/Font.cpp:
27342 (WebCore::Font::setCodePath): Added. Replaces boolean version.
27343 (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
27345 * platform/mac/WebCoreTextRenderer.mm:
27346 (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
27348 2006-09-26 John Sullivan <sullivan@apple.com>
27352 * bridge/mac/WebCoreFrameBridge.h:
27353 * bridge/mac/WebCoreFrameBridge.mm:
27354 (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
27355 Added limit parameter, passed down to Frame
27359 (WebCore::Frame::markAllMatchesForText):
27360 Added limit parameter. Stop the search if it hits limit.
27362 2006-09-26 Sean Gies <seangies@apple.com>
27364 Reviewed by Brady Eidson.
27366 * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
27368 2006-09-26 Justin Garcia <justin.garcia@apple.com>
27372 <rdar://problem/4747695>
27373 Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
27375 * editing/DeleteSelectionCommand.cpp:
27376 (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
27377 to select special elements that are fully selected after expansion
27378 moves to positions that are visually distinct from the originals.
27379 * editing/InsertListCommand.cpp:
27380 (WebCore::InsertListCommand::doApply): If the content of the list
27381 item will be moved into another list, put it in a list item.
27383 2006-09-26 Geoffrey Garen <ggaren@apple.com>
27387 Temporary work-around for frame lifetime issue.
27390 (WebCore::Frame::clear):
27391 (WebCore::Frame::disconnectOwnerElement):
27393 2006-09-26 Sam Weinig <sam.weinig@gmail.com>
27397 Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
27398 Auto-generate DOMSVGElement for the Objective-C bindings
27400 - Auto-generates DOMSVGElement.
27402 - Make SVGExceptions work like all the other ExceptionCode
27403 extensions (Range, XPath, etc.) by adding SVGExceptionOffset
27404 and SVGExceptionMax.
27406 * DerivedSources.make:
27407 * WebCore.xcodeproj/project.pbxproj:
27408 * bindings/js/kjs_binding.cpp:
27410 (KJS::setDOMException):
27411 * bindings/objc/DOMInternal.h:
27412 * bindings/objc/DOMInternal.mm:
27413 (raiseDOMException):
27414 * bindings/objc/DOMSVG.h:
27415 * bindings/objc/DOMSVGExecption.h: Added.
27417 * ksvg2/svg/SVGElement.cpp:
27418 (WebCore::SVGElement::setId):
27419 (WebCore::SVGElement::setXmlbase):
27420 * ksvg2/svg/SVGElement.h:
27421 * ksvg2/svg/SVGElement.idl:
27422 * ksvg2/svg/SVGException.h: Added.
27425 2006-09-26 Eric Seidel <eric@webkit.org>
27429 viewbox parser does not allow <tab> as a delimiter
27430 http://bugs.webkit.org/show_bug.cgi?id=11014
27432 Test: svg/hixie/viewbox/003.xml
27434 * ksvg2/svg/svgpathparser.cpp:
27435 (WebCore::isWhitespace): new function
27436 (WebCore::skipOptionalSpaces):
27437 (WebCore::skipOptionalSpacesOrComma):
27439 2006-09-26 Eric Seidel <eric@webkit.org>
27443 SVGDocument::createElement does not create elements in the SVG namespace
27444 http://bugs.webkit.org/show_bug.cgi?id=10932
27446 Test: svg/custom/createelement.svg
27448 * ksvg2/svg/SVGDocument.cpp:
27449 (WebCore::SVGDocument::createElement):
27450 * ksvg2/svg/SVGDocument.h:
27452 2006-09-26 Eric Seidel <eric@webkit.org>
27456 RenderPath::nodeAtPoint does not respect stroke width
27457 http://bugs.webkit.org/show_bug.cgi?id=10829
27459 Test: svg/custom/stroke-width-click.svg
27461 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
27462 (WebCore::RenderPath::strokeContains):
27463 * kcanvas/device/quartz/QuartzSupport.h:
27464 * kcanvas/device/quartz/QuartzSupport.mm:
27466 2006-09-26 Eric Seidel <eric@webkit.org>
27470 Bring animation back to life
27471 http://bugs.webkit.org/show_bug.cgi?id=11021
27473 Register/unregister SVGSVGElements as time containers on insertion/removal.
27474 Replace uses of DeprecatedString with String in SVGAnimationElement
27475 Various whitespace clean-up.
27477 * ksvg2/misc/KSVGTimeScheduler.cpp:
27478 (WebCore::SVGTimer::notifyAll):
27479 * ksvg2/misc/SVGDocumentExtensions.cpp:
27480 (WebCore::SVGDocumentExtensions::startAnimations):
27481 (WebCore::SVGDocumentExtensions::pauseAnimations):
27482 (WebCore::SVGDocumentExtensions::unpauseAnimations):
27483 * ksvg2/svg/SVGAnimateTransformElement.cpp:
27484 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
27485 (WebCore::SVGAnimateTransformElement::parseTransformValue):
27486 * ksvg2/svg/SVGAnimateTransformElement.h:
27487 * ksvg2/svg/SVGAnimationElement.cpp:
27488 (WebCore::SVGAnimationElement::SVGAnimationElement):
27489 (WebCore::SVGAnimationElement::parseMappedAttribute):
27490 (WebCore::SVGAnimationElement::parseClockValue):
27491 (WebCore::SVGAnimationElement::targetAttribute):
27492 (WebCore::SVGAnimationElement::setTargetAttribute):
27493 (WebCore::SVGAnimationElement::attributeName):
27494 * ksvg2/svg/SVGAnimationElement.h:
27495 (WebCore::SVGAnimationElement::rendererIsNeeded):
27496 * ksvg2/svg/SVGSVGElement.cpp:
27497 (WebCore::SVGSVGElement::getScreenCTM):
27498 (WebCore::SVGSVGElement::createRenderer):
27499 (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
27500 (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
27501 * ksvg2/svg/SVGSVGElement.h:
27502 * ksvg2/svg/SVGSetElement.cpp:
27503 (WebCore::SVGSetElement::handleTimerEvent):
27504 * ksvg2/svg/SVGURIReference.cpp:
27505 (WebCore::SVGURIReference::getTarget):
27506 * ksvg2/svg/SVGURIReference.h:
27508 2006-09-26 Graham Dennis <graham.dennis@gmail.com>
27510 Reviewed by mitzpettel.
27512 - fix http://bugs.webkit.org/show_bug.cgi?id=11020
27513 No-SVG build broken since r16549
27515 Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
27517 * css/cssparser.cpp:
27518 (WebCore::CSSParser::parseValue):
27519 * css/cssstyleselector.cpp:
27520 (WebCore::CSSStyleSelector::applyProperty):
27521 * page/FrameView.cpp:
27522 (WebCore::selectCursor):
27523 * platform/qt/GraphicsContextQt.cpp:
27525 2006-09-26 Anders Carlsson <acarlsson@apple.com>
27527 Reviewed by Maciej.
27529 http://bugs.webkit.org/show_bug.cgi?id=10820
27530 Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
27532 (Originally written by Eric Seidel).
27534 * bindings/js/kjs_window.cpp:
27535 (KJS::floatFeature):
27536 * ksvg2/svg/SVGAngle.cpp:
27537 (SVGAngle::setValueAsString):
27538 * ksvg2/svg/SVGAnimationElement.cpp:
27539 (SVGAnimationElement::parseMappedAttribute):
27540 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
27541 (SVGComponentTransferFunctionElement::parseMappedAttribute):
27542 * ksvg2/svg/SVGFECompositeElement.cpp:
27543 (WebCore::SVGFECompositeElement::parseMappedAttribute):
27544 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
27545 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
27546 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
27547 (SVGFEDisplacementMapElement::parseMappedAttribute):
27548 * ksvg2/svg/SVGFELightElement.cpp:
27549 (SVGFELightElement::parseMappedAttribute):
27550 * ksvg2/svg/SVGFEOffsetElement.cpp:
27551 (WebCore::SVGFEOffsetElement::parseMappedAttribute):
27552 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
27553 (SVGFESpecularLightingElement::parseMappedAttribute):
27554 * ksvg2/svg/SVGFETurbulenceElement.cpp:
27555 (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
27556 * ksvg2/svg/SVGStopElement.cpp:
27557 (SVGStopElement::parseMappedAttribute):
27558 * platform/AtomicString.h:
27559 (WebCore::AtomicString::toDouble):
27560 * platform/PlatformString.h:
27561 * platform/String.cpp:
27562 (WebCore::String::toDouble):
27563 * platform/StringImpl.cpp:
27564 (WebCore::StringImpl::toDouble):
27565 * platform/StringImpl.h:
27566 * rendering/DeprecatedSlider.cpp:
27567 (WebCore::DeprecatedSlider::updateFromElement):
27568 * xml/XPathGrammar.y:
27570 2006-09-25 David Harrison <harrison@apple.com>
27572 Reviewed by Tim Omernick and Tim Hatcher.
27574 <rdar://problem/4717965> Text Field text parameterized attributes should work
27575 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
27577 * bridge/mac/WebCoreAXObject.mm:
27578 (-[WebCoreAXObject accessibilityAttributeValue:]):
27579 Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
27581 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
27582 Cleaned up. Added text field and text area parameterzed attributes.
27584 (-[WebCoreAXObject doAXLineForTextMarker:]):
27585 Fixed to be zero-based and to deal with the first position properly.
27587 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
27590 (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
27591 (-[WebCoreAXObject indexForTextMarker:]):
27592 (-[WebCoreAXObject textMarkerRangeForRange:]):
27593 (-[WebCoreAXObject rangeForTextMarkerRange:]):
27594 New utility methods.
27596 (-[WebCoreAXObject doAXLineForIndex:]):
27597 (-[WebCoreAXObject doAXRangeForLine:]):
27598 (-[WebCoreAXObject doAXStringForRange:]):
27599 (-[WebCoreAXObject doAXRangeForPosition:]):
27600 (-[WebCoreAXObject doAXRangeForIndex:]):
27601 (-[WebCoreAXObject doAXBoundsForRange:]):
27602 (-[WebCoreAXObject doAXAttributedStringForRange:]):
27603 (-[WebCoreAXObject doAXRTFForRange:]):
27604 (-[WebCoreAXObject doAXStyleRangeForIndex:]):
27605 Implement text field and text area parameterized attributes.
27607 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
27608 Added text field and text area parameterzed attributes.
27610 * rendering/RenderTextControl.h:
27611 Made indexForVisiblePosition() and visiblePositionForIndex() public.
27613 2006-09-25 Adam Roben <aroben@apple.com>
27619 * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
27620 * platform/ResourceLoader.h: Store whether a particular job
27621 has received a response within the ResourceLoader object itself, since
27622 it's possible that we will enter the InternetReadFileExA while loop
27623 twice for the same job.
27624 * platform/ResourceLoaderInternal.h: Add private instance variable to
27625 store whether we've received a response.
27626 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
27627 * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
27629 * platform/win/ResourceLoaderWin.cpp:
27630 (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
27631 whether it has received a response instead of assuming it hasn't.
27632 (WebCore::ResourceLoader::setHasReceivedResponse): Added.
27633 (WebCore::ResourceLoader::hasReceivedResponse): Added.
27634 * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
27636 (ScrollBar::setProportion):
27638 2006-09-25 Brady Eidson <beidson@apple.com>
27640 Requested by ggaren
27642 Disabled IconDatabase logging by default
27644 * platform/Logging.cpp:
27647 2006-09-25 Steve Falkenburg <sfalken@apple.com>
27651 * platform/cf/ResourceLoaderCFNet.cpp:
27652 (WebCore::willCacheResponse):
27654 2006-09-25 Justin Garcia <justin.garcia@apple.com>
27658 <http://bugs.webkit.org/show_bug.cgi?id=11002>
27659 Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
27661 * editing/IndentOutdentCommand.cpp:
27662 (WebCore::IndentOutdentCommand::indentRegion): Special case
27663 an empty root editable element.
27665 2006-09-25 Brady Eidson <beidson@apple.com>
27669 Math error in SystemTimeWin
27671 * platform/win/SystemTimeWin.cpp:
27672 (WebCore::currentTime):
27674 2006-09-25 Alexey Proskuryakov <ap@nypop.com>
27678 Whitespace cleanup; rename *job variables to *loader.
27680 * bindings/js/JSXMLHttpRequest.cpp:
27681 (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
27682 (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
27683 (KJS::JSXMLHttpRequestConstructorImp::construct):
27684 (KJS::JSXMLHttpRequest::getOwnPropertySlot):
27685 (KJS::JSXMLHttpRequest::getValueProperty):
27686 (KJS::JSXMLHttpRequest::put):
27687 (KJS::JSXMLHttpRequest::putValueProperty):
27688 (KJS::JSXMLHttpRequest::mark):
27689 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
27690 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
27691 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
27692 * bindings/js/JSXMLHttpRequest.h:
27693 (KJS::JSXMLHttpRequest::toBoolean):
27694 * xml/xmlhttprequest.cpp:
27695 (WebCore::XMLHttpRequest::XMLHttpRequest):
27696 (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
27697 (WebCore::XMLHttpRequest::send):
27698 (WebCore::XMLHttpRequest::abort):
27699 (WebCore::XMLHttpRequest::receivedAllData):
27700 (WebCore::XMLHttpRequest::receivedData):
27701 * xml/xmlhttprequest.h:
27704 2006-09-25 Timothy Hatcher <timothy@apple.com>
27708 - Deprecate the rest of the old-style methods that are not generated.
27709 - Add @property syntax to DOMRange.
27711 * WebCore.xcodeproj/project.pbxproj:
27712 * bindings/objc/DOM.mm:
27713 (-[DOMRange setStart:offset:]):
27714 (-[DOMRange setEnd:offset:]):
27715 (-[DOMRange compareBoundaryPoints:sourceRange:]):
27716 (-[DOMRange setStart::]):
27717 (-[DOMRange setEnd::]):
27718 (-[DOMRange compareBoundaryPoints::]):
27719 (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
27720 (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
27721 (-[DOMDocument createNodeIterator::::]):
27722 (-[DOMDocument createTreeWalker::::]):
27723 * bindings/objc/DOMCSS.h:
27724 * bindings/objc/DOMCSS.mm:
27725 (-[DOMDocument getComputedStyle:pseudoElement:]):
27726 (-[DOMDocument getComputedStyle::]):
27727 (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
27728 * bindings/objc/DOMExtensions.h:
27729 * bindings/objc/DOMHTML.h:
27730 * bindings/objc/DOMRange.h:
27731 * bindings/objc/DOMTraversal.h:
27733 2006-09-25 Eric Seidel <eric@webkit.org>
27737 Outermost <svg> element should clip to viewport
27738 http://bugs.webkit.org/show_bug.cgi?id=11007
27740 Test: svg/custom/viewport-clip.svg
27742 * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
27744 2006-09-25 Anders Carlsson <acarlsson@apple.com>
27746 Reviewed by Maciej.
27748 * css/MediaList.cpp:
27749 Remove unused header.
27751 * dom/Document.cpp:
27752 (WebCore::Document::clear):
27753 Use clear instead of iterating through the list of event listeners, removing each one.
27754 (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
27756 * html/HTMLKeygenElement.cpp:
27757 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
27758 (WebCore::HTMLKeygenElement::appendFormData):
27759 Update due to changes in the SSL key generator.
27761 * ksvg2/svg/SVGAngle.cpp:
27762 Remove unused header.
27764 * ksvg2/svg/SVGAnimationElement.cpp:
27765 (SVGAnimationElement::parseMappedAttribute):
27766 Rename methods and pass Strings instead of DeprecatedStrings to
27767 parseSeparatedList.
27769 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
27770 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
27771 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
27772 * ksvg2/svg/SVGFEMergeElement.cpp:
27773 * ksvg2/svg/SVGFEOffsetElement.cpp:
27774 Remove unused headers.
27776 * ksvg2/svg/SVGHelper.cpp:
27777 (WebCore::SVGHelper::parseSeparatedList):
27778 * ksvg2/svg/SVGHelper.h:
27779 Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a
27780 DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
27782 * ksvg2/svg/SVGLengthList.cpp:
27783 (WebCore::SVGLengthList::parse):
27784 * ksvg2/svg/SVGLengthList.h:
27785 Use Vector<String> instead of DeprecatedStringList.
27787 * loader/Cache.cpp:
27788 (WebCore::Cache::requestImage):
27789 (WebCore::Cache::requestStyleSheet):
27790 (WebCore::Cache::requestScript):
27791 (WebCore::Cache::requestXSLStyleSheet):
27792 (WebCore::Cache::requestXBLDocument):
27793 (WebCore::Cache::remove):
27794 (WebCore::Cache::get):
27795 Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
27797 * loader/DocLoader.cpp:
27798 (WebCore::DocLoader::needReload):
27799 * loader/DocLoader.h:
27800 Use a HashSet instead of DeprecatedStringList.
27802 * page/FrameView.h:
27803 Remove declarations that have no functions.
27805 * platform/SSLKeyGenerator.h:
27806 * platform/mac/SSLKeyGeneratorMac.mm:
27807 (WebCore::supportedKeySizes):
27808 (WebCore::signedPublicKeyAndChallengeString):
27809 Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
27812 2006-09-25 Dave Hyatt <hyatt@apple.com>
27814 Shunt the RenderTheme world transform adoption between
27815 Cairo and Windows into getWindowsContext and move the method
27816 out of GraphicsContextCairo and into GraphicsContextWin.
27819 * WebCore.vcproj/WebCore/WebCore.vcproj:
27820 * platform/cairo/GraphicsContextCairo.cpp:
27821 * platform/win/GraphicsContextWin.cpp: Added.
27822 (WebCore::GraphicsContext::getWindowsContext):
27823 (WebCore::GraphicsContext::releaseWindowsContext):
27824 * rendering/RenderThemeWin.cpp:
27825 (WebCore::prepareForDrawing):
27827 2006-09-24 Eric Seidel <eric@webkit.org>
27831 <svg:a> cannot be styled with a:hover
27832 http://bugs.webkit.org/show_bug.cgi?id=11005
27834 Test: svg/hixie/cascade/002.xml
27836 * css/cssstyleselector.cpp:
27837 (WebCore::checkPseudoState):
27839 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
27843 Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
27844 SVG needs Obj-C DOM bindings
27846 - Auto-generate the first 8 Objective-C SVG DOM bindings. The
27847 auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
27848 DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and
27849 DOMSVGTransformList.
27851 * DerivedSources.make:
27852 * WebCore.xcodeproj/project.pbxproj:
27853 * bindings/objc/DOMInternal.h:
27854 * bindings/objc/DOMSVG.h: Added.
27855 * ksvg2/svg/SVGAngle.idl:
27856 * ksvg2/svg/SVGLength.idl:
27857 * ksvg2/svg/SVGLengthList.idl:
27858 * ksvg2/svg/SVGMatrix.idl:
27859 * ksvg2/svg/SVGPathSeg.idl:
27860 * ksvg2/svg/SVGPathSegList.idl:
27861 * ksvg2/svg/SVGTransform.idl:
27862 * ksvg2/svg/SVGTransformList.idl:
27864 2006-09-24 Rob Buis <buis@kde.org>
27866 Reviewed by eseidel.
27868 Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
27869 WebKit does not handle fallback custom cursors
27870 Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
27871 WebKit does not properly handle SVG <cursor> element
27873 Add support for svg cursor images. Also make sure hotspot
27874 settings are handled correctly. Add tests for handling of css3
27875 cursor syntax with hotspots in strict and quirks mode. Finally
27876 implement fallback.
27878 * WebCore.xcodeproj/project.pbxproj:
27879 * css/CSSComputedStyleDeclaration.cpp:
27880 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
27881 * css/CSSCursorImageValue.cpp: Added.
27882 (WebCore::CSSCursorImageValue::CSSCursorImageValue):
27883 (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
27884 * css/CSSCursorImageValue.h: Added.
27885 (WebCore::CSSCursorImageValue::hotspot):
27886 * css/cssparser.cpp:
27887 (WebCore::CSSParser::parseValue):
27888 * css/cssstyleselector.cpp:
27889 (WebCore::CSSStyleSelector::applyProperty):
27890 * ksvg2/svg/SVGCursorElement.cpp:
27891 * manual-tests/css3-cursor-fallback-quirks.html: Added.
27892 * manual-tests/css3-cursor-fallback-strict.html: Added.
27893 * manual-tests/cursorfallback.xml: Added.
27894 * page/FrameView.cpp:
27895 (WebCore::selectCursor):
27896 * platform/Cursor.h:
27897 * platform/mac/CursorMac.mm:
27898 (WebCore::createCustomCursor):
27899 (WebCore::Cursor::Cursor):
27900 * platform/qt/CursorQt.cpp:
27901 (WebCore::Cursor::Cursor):
27902 * rendering/RenderStyle.cpp:
27903 (WebCore::StyleInheritedData::StyleInheritedData):
27904 (WebCore::StyleInheritedData::operator==):
27905 (WebCore::RenderStyle::diff):
27906 (WebCore::RenderStyle::addCursor):
27907 (WebCore::RenderStyle::addSVGCursor):
27908 (WebCore::RenderStyle::setCursorList):
27909 (WebCore::RenderStyle::clearCursorList):
27910 * rendering/RenderStyle.h:
27911 (WebCore::CursorData::CursorData):
27912 (WebCore::CursorList::operator[]):
27913 (WebCore::CursorList::size):
27914 (WebCore::CursorList::append):
27915 (WebCore::RenderStyle::cursors):
27917 2006-09-24 Sam Weinig <sam.weinig@gmail.com>
27921 Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
27922 Auto-generate the internal methods interfaces for the Objective-C bindings
27924 - Auto-generate the internal method declarations into their own files
27925 named in the form DOMFooBarInternal.h for class DOMFooBar.
27927 - Remove all use of DOM_cast from code.
27929 - Assorted cleanups.
27931 * WebCore.xcodeproj/project.pbxproj:
27932 * bindings/objc/DOM.mm:
27933 (-[DOMNode _initWithNode:WebCore::]):
27934 (-[DOMNode WebCore::]):
27935 (-[DOMRange dealloc]):
27936 (-[DOMRange finalize]):
27937 (-[DOMRange _initWithRange:WebCore::]):
27938 (-[DOMRange WebCore::]):
27939 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
27940 (-[DOMNodeFilter WebCore::]):
27941 (-[DOMNodeFilter dealloc]):
27942 (-[DOMNodeFilter finalize]):
27943 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
27944 (-[DOMNodeIterator WebCore::]):
27945 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
27946 (-[DOMTreeWalker WebCore::]):
27947 * bindings/objc/DOMAbstractView.mm:
27948 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
27949 * bindings/objc/DOMCSS.mm:
27950 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
27951 (-[DOMCSSRule _initWithRule:WebCore::]):
27952 (-[DOMCSSValue _initWithValue:WebCore::]):
27953 * bindings/objc/DOMEvents.mm:
27954 (-[DOMEvent _initWithEvent:WebCore::]):
27955 * bindings/objc/DOMHTMLAppletElement.mm:
27956 (-[DOMHTMLAppletElement align]):
27957 (-[DOMHTMLAppletElement setAlign:]):
27958 (-[DOMHTMLAppletElement alt]):
27959 (-[DOMHTMLAppletElement setAlt:]):
27960 (-[DOMHTMLAppletElement archive]):
27961 (-[DOMHTMLAppletElement setArchive:]):
27962 (-[DOMHTMLAppletElement code]):
27963 (-[DOMHTMLAppletElement setCode:]):
27964 (-[DOMHTMLAppletElement codeBase]):
27965 (-[DOMHTMLAppletElement setCodeBase:]):
27966 (-[DOMHTMLAppletElement height]):
27967 (-[DOMHTMLAppletElement setHeight:]):
27968 (-[DOMHTMLAppletElement hspace]):
27969 (-[DOMHTMLAppletElement setHspace:]):
27970 (-[DOMHTMLAppletElement name]):
27971 (-[DOMHTMLAppletElement setName:]):
27972 (-[DOMHTMLAppletElement object]):
27973 (-[DOMHTMLAppletElement setObject:]):
27974 (-[DOMHTMLAppletElement vspace]):
27975 (-[DOMHTMLAppletElement setVspace:]):
27976 (-[DOMHTMLAppletElement width]):
27977 (-[DOMHTMLAppletElement setWidth:]):
27978 * bindings/objc/DOMInternal.h:
27982 * bindings/objc/DOMXPath.mm:
27983 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
27984 * bindings/scripts/CodeGeneratorObjC.pm:
27986 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
27988 Reviewed by eseidel.
27990 Fix Qt/Linux build after Dave's Scrollbar changes.
27992 * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
27993 * platform/qt/TemporaryLinkStubs.cpp:
27994 (WebCore::ScrollBar::setProportion):
27995 (WebCore::PlatformScrollBar::updateThumbPosition):
27996 (WebCore::PlatformScrollBar::updateThumbProportion):
27998 2006-09-24 Nikolas Zimmermann <zimmermann@kde.org>
28000 Reviewed by eseidel.
28002 Qt/Linux build system changes: enable xpath/xslt by default.
28003 Offer possibility to change all of these using 'ccmake'.
28007 2006-09-24 Dave Hyatt <hyatt@apple.com>
28009 Cleanup of Scrollbar APIs. Rename setKnobProportion to setProportion. Rename setScrollbarValue to updateThumbPosition.
28010 Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
28011 the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
28013 * platform/ScrollBar.cpp:
28014 (WebCore::ScrollBar::setValue):
28015 (WebCore::ScrollBar::setProportion):
28016 * platform/ScrollBar.h:
28017 (WebCore::ScrollBar::value):
28018 * platform/mac/PlatformScrollBar.h:
28019 * platform/mac/PlatformScrollBarMac.mm:
28020 (WebCore::PlatformScrollBar::updateThumbPosition):
28021 (WebCore::PlatformScrollBar::updateThumbProportion):
28022 * platform/win/PlatformScrollBar.h:
28023 * platform/win/TemporaryLinkStubs.cpp:
28024 (PlatformScrollBar::updateThumbPosition):
28025 (PlatformScrollBar::updateThumbProportion):
28026 * rendering/RenderLayer.cpp:
28027 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
28029 2006-09-23 Alexey Proskuryakov <ap@nypop.com>
28033 http://bugs.webkit.org/show_bug.cgi?id=4872
28034 XMLHttpRequest fails to throw an exception when there is a security violation
28035 (mismatching domains)
28037 Raise an exception if there is a security violation, and also in cases required by
28038 the current draft of XHR specification.
28040 * bindings/js/JSXMLHttpRequest.cpp:
28041 (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
28042 (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
28043 reports one, and also if there were too few arguments passed.
28045 * bindings/js/kjs_binding.cpp:
28046 (KJS::setDOMException): Added support for custom XHR exceptions.
28048 * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
28049 exception code range for XHR exceptions.
28051 * xml/xmlhttprequest.cpp:
28052 (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
28053 (WebCore::XMLHttpRequest::send):
28054 (WebCore::XMLHttpRequest::setRequestHeader):
28055 (WebCore::XMLHttpRequest::getStatus):
28056 (WebCore::XMLHttpRequest::getStatusText):
28057 (WebCore::XMLHttpRequest::processSyncLoadResults):
28058 (WebCore::XMLHttpRequest::receivedAllData):
28059 (WebCore::XMLHttpRequest::receivedData):
28061 2006-09-22 Steve Falkenburg <sfalken@apple.com>
28063 Reviewed by Jeff Jenkins.
28067 * platform/cf/ResourceLoaderCFNet.cpp:
28068 (WebCore::willCacheResponse):
28070 2006-09-22 Justin Garcia <justin.garcia@apple.com>
28074 <http://bugs.webkit.org/show_bug.cgi?id=8029>
28075 Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
28077 * dom/Document.cpp:
28078 (WebCore::Document::clearSelectionIfNeeded):
28080 (WebCore::Element::contains):
28082 (WebCore::Node::traverseNextNode):
28083 (WebCore::Node::traverseNextSibling):
28084 (WebCore::Node::traversePreviousNodePostOrder):
28085 (WebCore::Node::checkAddChild):
28086 (WebCore::Node::isDescendantOf):
28088 * dom/NodeIterator.cpp:
28089 (WebCore::NodeIterator::notifyBeforeNodeRemoval):
28090 * editing/ApplyStyleCommand.cpp:
28091 (WebCore::ApplyStyleCommand::applyBlockStyle):
28092 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
28093 (WebCore::ApplyStyleCommand::applyInlineStyle):
28094 (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
28095 * editing/CompositeEditCommand.cpp:
28096 (WebCore::CompositeEditCommand::mergeIdenticalElements):
28097 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
28098 * editing/DeleteSelectionCommand.cpp:
28099 (WebCore::updatePositionForNodeRemoval):
28100 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
28101 (WebCore::DeleteSelectionCommand::mergeParagraphs):
28102 * editing/FormatBlockCommand.cpp:
28103 (WebCore::FormatBlockCommand::doApply):
28104 * editing/IndentOutdentCommand.cpp:
28105 (WebCore::enclosingListOrBlockquote):
28106 * editing/Selection.cpp:
28107 (WebCore::Selection::validate):
28108 * editing/SelectionController.cpp:
28109 (WebCore::SelectionController::nodeWillBeRemoved):
28110 * editing/TextIterator.cpp:
28111 (WebCore::SimplifiedBackwardsTextIterator::advance):
28112 * editing/VisiblePosition.cpp:
28113 (WebCore::VisiblePosition::next):
28114 (WebCore::VisiblePosition::previous):
28115 (WebCore::VisiblePosition::canonicalPosition):
28116 (WebCore::isFirstVisiblePositionInNode):
28117 (WebCore::isLastVisiblePositionInNode):
28118 * editing/htmlediting.cpp:
28119 (WebCore::firstEditablePositionAfterPositionInRoot):
28120 (WebCore::lastEditablePositionBeforePositionInRoot):
28121 (WebCore::enclosingNodeWithTag):
28122 (WebCore::enclosingList):
28123 (WebCore::enclosingListChild):
28124 * editing/markup.cpp:
28125 (WebCore::createMarkup):
28127 2006-09-22 Timothy Hatcher <timothy@apple.com>
28131 - Added @property syntax to non-generated headers
28132 inside #ifndef BUILDING_ON_TIGER.
28133 - Changed the DOMEventTarget protocol to have have new versions
28134 of addEventListener and removeEventListener with named parameters.
28135 These old style methods can be removed once Mail changes to use
28136 the new methods <rdar://problem/4746649>.
28138 * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
28139 * bindings/objc/DOM.mm:
28140 (-[DOMNode addEventListener:listener:useCapture:]):
28141 (-[DOMNode addEventListener:::]): call the new method
28142 (-[DOMNode removeEventListener:listener:useCapture:]):
28143 (-[DOMNode removeEventListener:::]): call the new method
28144 * bindings/objc/DOMAbstractView.h:
28145 * bindings/objc/DOMEventTarget.h:
28146 * bindings/objc/DOMHTMLAppletElement.h:
28147 * bindings/objc/DOMHTMLEmbedElement.h:
28148 * bindings/objc/DOMHTMLOptionElement.h:
28149 * bindings/objc/DOMObject.h:
28150 * bindings/objc/DOMRGBColor.h:
28152 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
28156 Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
28158 * platform/qt/FrameQt.cpp:
28159 * platform/qt/GraphicsContextQt.cpp:
28160 (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
28161 (WebCore::GraphicsContext::origin):
28162 * platform/qt/PlatformScrollBar.h: Added.
28163 (WebCore::PlatformScrollBar::isWidget):
28164 * platform/qt/WidgetQt.cpp:
28165 (WebCore::Widget::invalidate):
28166 (WebCore::Widget::invalidateRect):
28168 2006-09-22 Dave Hyatt <hyatt@apple.com>
28170 Super-minor tweaks to the systemFont function on Mac.
28171 Set the generic family to None rather than to Serif, and
28172 don't waste time setting the computed size, since that is
28173 set from the specified size over in CSSStyleSelector anyway.
28175 * rendering/RenderThemeMac.mm:
28176 (WebCore::RenderThemeMac::systemFont):
28178 2006-09-22 Timothy Hatcher <timothy@apple.com>
28182 Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
28183 take floats. There was already an implicit conversion to float/double
28184 when calling CGContextTranslateCTM or cairo_translate.
28186 * platform/GraphicsContext.h:
28187 * platform/cairo/GraphicsContextCairo.cpp:
28188 (WebCore::GraphicsContext::translate):
28189 * platform/cg/GraphicsContextCG.cpp:
28190 (WebCore::GraphicsContext::translate):
28192 2006-09-22 Brady Eidson <beidson@apple.com>
28194 Reviewed by Sfalken
28196 Add redirect and other cleanup to ResourceLoaderWin.cpp
28197 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
28198 Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
28200 * WebCore.xcodeproj/project.pbxproj:
28201 * platform/ResourceLoader.h:
28202 * platform/win/ResourceLoaderWin.cpp:
28203 (WebCore::ResourceLoaderWndProc):
28204 (WebCore::initializeOffScreenResourceLoaderWindow):
28205 (WebCore::ResourceLoader::onHandleCreated):
28206 (WebCore::ResourceLoader::onRequestRedirected):
28207 (WebCore::ResourceLoader::onRequestComplete):
28208 (WebCore::transferJobStatusCallback):
28210 2006-09-22 Alexey Proskuryakov <ap@nypop.com>
28214 http://bugs.webkit.org/show_bug.cgi?id=10803
28215 REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
28217 * page/FrameView.cpp:
28218 (WebCore::FrameView::hoverTimerFired): Use the current event.
28220 2006-09-22 Nikolas Zimmermann <zimmermann@kde.org>
28222 Reviewed by Anders.
28224 Fix (last) svg memory leak.
28226 * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
28227 (SVGTransformable::parseTransformAttribute):
28229 2006-09-22 Eric Seidel <eric@webkit.org>
28231 No review necessary, just removing a dead file.
28233 Remove unused file (added previously by mistake) to make room for real implementation.
28235 * platform/mac/BitmapImageMac.mm: Removed.
28237 2006-09-22 Dave Hyatt <hyatt@apple.com>
28239 Move PlatformScrollBar.h down into the platforms.
28241 Reviewed by andersca
28243 * platform/PlatformScrollBar.h: Removed.
28244 * platform/win/PlatformScrollBar.h: Added.
28245 * platform/mac/PlatformScrollBar.h: Added.
28247 2006-09-22 Dave Hyatt <hyatt@apple.com>
28249 Add support for invalidation of widgets. This will be needed for the Win32 widget subsystem (and for
28250 any widget subsystems that don't have any underlying native objects backing the widgets.
28254 * platform/Widget.h:
28255 * platform/mac/WidgetMac.mm:
28256 (WebCore::Widget::invalidate):
28257 (WebCore::Widget::invalidateRect):
28258 * platform/win/TemporaryLinkStubs.cpp:
28259 (Widget::invalidate):
28260 (Widget::invalidateRect):
28262 2006-09-22 Rob Buis <buis@kd.org>
28264 Reviewed by eseidel.
28266 http://bugs.webkit.org/show_bug.cgi?id=10901
28267 Merge build fixes from unity
28271 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
28273 Reviewed by eseidel.
28275 http://bugs.webkit.org/show_bug.cgi?id=10977
28276 SVGDocument does not expose 'rootElement' property
28278 Enable 'rootElement' property.
28280 * ksvg2/svg/SVGDocument.idl:
28282 2006-09-21 Steve Falkenburg <sfalken@apple.com>
28286 * platform/ResourceLoaderInternal.h:
28288 2006-09-21 Geoffrey Garen <ggaren@apple.com>
28290 build fixed. band happy.
28292 * platform/cg/GraphicsContextCG.cpp:
28293 (WebCore::GraphicsContext::translate):
28294 * platform/mac/WidgetMac.mm:
28296 2006-09-21 Geoffrey Garen <ggaren@apple.com>
28298 Reviewed by Maciej.
28300 Some Widget refactoring.
28302 * WebCore.vcproj/WebCore/WebCore.vcproj:
28303 * bridge/mac/FrameMac.mm:
28304 * bridge/win/FrameWin.cpp:
28305 (WebCore::FrameWin::runJavaScriptAlert):
28306 (WebCore::FrameWin::runJavaScriptConfirm):
28307 * bridge/win/PageWin.cpp:
28308 (WebCore::Page::Page):
28309 (WebCore::rootWindowForFrame):
28310 * html/CanvasRenderingContext2D.cpp:
28311 (WebCore::CanvasRenderingContext2D::translate):
28312 * page/FrameView.cpp:
28313 (WebCore::FrameView::isFrameView):
28315 (WebCore::Page::setInstanceHandle):
28316 (WebCore::Page::instanceHandle):
28317 * platform/GraphicsContext.h:
28318 * platform/ScrollView.h:
28319 * platform/Widget.h:
28320 * platform/cairo/GraphicsContextCairo.cpp:
28321 (WebCore::GraphicsContext::translate):
28322 (WebCore::GraphicsContext::origin):
28323 * platform/mac/WidgetMac.mm:
28324 (WebCore::Widget::clearFocus):
28325 * platform/win/ResourceLoaderWin.cpp:
28326 (WebCore::initializeOffScreenResourceLoaderWindow):
28327 * platform/win/ScreenWin.cpp:
28328 (WebCore::monitorInfo):
28329 * platform/win/ScrollViewWin.cpp:
28330 (WebCore::ScrollView::updateContents):
28331 (WebCore::ScrollView::visibleWidth):
28332 (WebCore::ScrollView::visibleHeight):
28333 (WebCore::ScrollView::visibleContentRect):
28334 (WebCore::ScrollView::viewportToContents):
28335 (WebCore::ScrollView::contentsToViewport):
28336 (WebCore::ScrollView::scrollBy):
28337 (WebCore::ScrollView::updateScrollInfo):
28338 (WebCore::ScrollView::updateScrollBars):
28339 * platform/win/SharedTimerWin.cpp:
28340 (WebCore::initializeOffScreenTimerWindow):
28341 * platform/win/TemporaryLinkStubs.cpp:
28342 (FrameView::updateBorder):
28343 (ScrollView::paint):
28344 (GraphicsContext::clip):
28345 * platform/win/WidgetWin.cpp:
28346 (WebCore::Widget::Widget):
28347 (WebCore::Widget::parentWindow):
28348 (WebCore::Widget::setParentWindow):
28349 (WebCore::Widget::frameGeometry):
28350 (WebCore::Widget::hasFocus):
28351 (WebCore::Widget::setFocus):
28352 (WebCore::Widget::show):
28353 (WebCore::Widget::hide):
28354 (WebCore::Widget::setFrameGeometry):
28356 2006-09-22 Anders Carlsson <acarlsson@apple.com>
28360 * platform/TextEncoding.cpp:
28361 (WebCore::TextEncoding::backslashAsCurrencySymbol):
28362 Add comment clarifying why backslashAsCurrencySymbol is needed.
28364 2006-09-21 Sean Gies <seangies@apple.com>
28366 Reviewed by Adam Roben.
28368 Add utility functions to get and release HDC from GraphicsContext.
28370 * platform/GraphicsContext.h: Add utilities to get and release HDC.
28371 * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
28372 * rendering/RenderThemeWin.cpp: Switch to new utilities.
28374 2006-09-21 Justin Garcia <justin.garcia@apple.com>
28378 <rdar://problem/4426622>
28379 Plain text paste slow. Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
28381 * editing/htmlediting.cpp:
28382 (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
28383 aren't producing complicated sequences here. Use multiple UChar -> UChar replaces instead for speed.
28384 Got rid of uses of DepricatedString.
28386 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
28388 Reviewed by eseidel.
28390 Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
28393 (WebCore::Frame::endIfNotLoading):
28395 2006-09-21 Nikolas Zimmermann <zimmermann@kde.org>
28397 Reviewed by eseidel.
28399 Fix Qt/Linux build.
28402 * kcanvas/device/qt/KCanvasClipperQt.h:
28403 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
28404 * platform/qt/FrameQt.cpp:
28405 (WebCore::FrameQt::isLoadTypeReload):
28406 (WebCore::FrameQt::originalRequestURL):
28407 * platform/qt/FrameQt.h:
28408 * platform/qt/GraphicsContextQt.cpp:
28409 (WebCore::GraphicsContext::concatCTM):
28410 * platform/qt/ScrollViewQt.cpp:
28411 (WebCore::ScrollView::wheelEvent):
28412 * platform/qt/TemporaryLinkStubs.cpp:
28413 (WebCore::IconDatabase::setIconURLForPageURL):
28415 2006-09-20 Justin Garcia <justin.garcia@apple.com>
28419 <http://bugs.webkit.org/show_bug.cgi?id=7165>
28420 TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
28422 * editing/MoveSelectionCommand.cpp:
28423 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
28424 to the position-to-move-to's document, not the fragment's document. The
28425 fragment's document is the document used to create the fragment and is irrelavant.
28427 === Safari-521.27 ===
28429 2006-09-21 Brady Eidson <beidson@apple.com>
28433 When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
28434 This fixes Spinneret so it won't crash on its first load!
28437 (WebCore::Frame::endIfNotLoading):
28439 2006-09-21 Brady Eidson <beidson@apple.com>
28443 * platform/win/TemporaryLinkStubs.cpp:
28444 (ScrollView::wheelEvent):
28446 2006-09-20 Rob Buis <buis@kde.org>
28448 Reviewed by eseidel.
28450 http://bugs.webkit.org/show_bug.cgi?id=10946
28451 new marker code draws end-marker in wrong place
28453 Keep track of the start of the subpath so we can handle
28454 closeTo/moveTo correctly.
28456 * kcanvas/RenderPath.cpp:
28457 (WebCore::DrawMarkersData::DrawMarkersData):
28458 (WebCore::updateMarkerDataForElement):
28460 2006-09-21 David Hyatt <hyatt@apple.com>
28462 Wheel scrolling prep for Win32.
28464 WARNING: NO TEST CASES ADDED OR CHANGED
28466 * platform/PlatformWheelEvent.h:
28467 * platform/ScrollBar.h:
28468 * platform/ScrollView.h:
28469 * platform/mac/ScrollViewMac.mm:
28470 (WebCore::ScrollView::wheelEvent):
28471 * rendering/RenderLayer.cpp:
28473 2006-09-20 Timothy Hatcher <timothy@apple.com>
28477 Bug 10917: REGRESSION (r16027): iFrame transparency broken
28478 http://bugs.webkit.org/show_bug.cgi?id=10917
28480 Don't paint the base background color if we transparent.
28482 * rendering/RenderBox.cpp:
28483 (WebCore::RenderBox::paintBackgroundExtended):
28485 2006-09-20 Adam Roben <aroben@apple.com>
28487 Reviewed by andersca.
28489 * platform/FileChooser.h: Remove no-longer-necessary namespace std
28491 2006-09-20 Eric Seidel <eric@webkit.org>
28495 Cleanup style in KCanvas.
28496 Remove extra white-space, unneeded arguments, etc.
28498 * WebCore.xcodeproj/project.pbxproj:
28499 * kcanvas/KCanvasClipper.cpp:
28500 (WebCore::operator<<):
28501 (WebCore::KCanvasClipper::externalRepresentation):
28502 * kcanvas/KCanvasClipper.h:
28503 * kcanvas/KCanvasFilters.cpp:
28504 (WebCore::KCanvasFilter::externalRepresentation):
28505 (WebCore::operator<<):
28506 (WebCore::KCanvasFilterEffect::externalRepresentation):
28507 (WebCore::KCPointLightSource::externalRepresentation):
28508 (WebCore::KCSpotLightSource::externalRepresentation):
28509 (WebCore::KCDistantLightSource::externalRepresentation):
28510 (WebCore::KCanvasFEBlend::externalRepresentation):
28511 (WebCore::KCanvasFEColorMatrix::externalRepresentation):
28512 (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
28513 (WebCore::KCanvasFEComposite::externalRepresentation):
28514 (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
28515 (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
28516 (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
28517 (WebCore::KCanvasFEFlood::externalRepresentation):
28518 (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
28519 (WebCore::KCanvasFEImage::externalRepresentation):
28520 (WebCore::KCanvasFEMerge::externalRepresentation):
28521 (WebCore::KCanvasFEMorphology::externalRepresentation):
28522 (WebCore::KCanvasFEOffset::externalRepresentation):
28523 (WebCore::KCanvasFESpecularLighting::externalRepresentation):
28524 (WebCore::KCanvasFETile::externalRepresentation):
28525 (WebCore::KCanvasFETurbulence::externalRepresentation):
28526 * kcanvas/KCanvasFilters.h:
28527 (WebCore::KCanvasFEDiffuseLighting::lightSource):
28528 (WebCore::KCanvasFESpecularLighting::lightSource):
28529 * kcanvas/KCanvasImage.h:
28530 * kcanvas/KCanvasMarker.cpp:
28531 (WebCore::KCanvasMarker::externalRepresentation):
28532 * kcanvas/KCanvasMarker.h:
28533 * kcanvas/KCanvasResource.cpp:
28534 (WebCore::operator<<):
28535 * kcanvas/KCanvasResource.h:
28536 * kcanvas/KCanvasTreeDebug.cpp:
28537 (WebCore::operator<<):
28538 (WebCore::writeIndent):
28539 (WebCore::writeStyle):
28541 (WebCore::writeRenderResources):
28542 * kcanvas/KCanvasTreeDebug.h:
28543 (WebCore::operator<<):
28544 * kcanvas/RenderForeignObject.cpp:
28545 (WebCore::RenderForeignObject::paint):
28546 * kcanvas/RenderPath.cpp:
28547 (WebCore::RenderPath::paint):
28548 (WebCore::drawStartAndMidMarkers):
28549 * kcanvas/RenderSVGContainer.cpp:
28550 (WebCore::RenderSVGContainer::paint):
28551 * kcanvas/RenderSVGImage.cpp:
28552 (WebCore::RenderSVGImage::translateForAttributes):
28553 * kcanvas/RenderSVGImage.h:
28554 * kcanvas/device/KRenderingDevice.cpp:
28555 (WebCore::KRenderingDevice::currentContext):
28556 (WebCore::KRenderingDevice::popContext):
28557 (WebCore::KRenderingDevice::pushContext):
28558 * kcanvas/device/KRenderingDevice.h:
28559 * kcanvas/device/KRenderingFillPainter.h:
28560 * kcanvas/device/KRenderingPaintServer.h:
28561 (WebCore::KRenderingPaintServer::KRenderingPaintServer):
28562 (WebCore::KRenderingPaintServer::activeClient):
28563 (WebCore::KRenderingPaintServer::setActiveClient):
28564 * kcanvas/device/KRenderingPaintServerGradient.cpp:
28565 (WebCore::operator<<):
28566 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
28567 (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
28568 (WebCore::KRenderingPaintServerGradient::listener):
28569 (WebCore::KRenderingPaintServerGradient::setListener):
28570 (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
28571 * kcanvas/device/KRenderingPaintServerGradient.h:
28572 * kcanvas/device/KRenderingPaintServerPattern.cpp:
28573 (WebCore::KRenderingPaintServerPattern::tile):
28574 (WebCore::KRenderingPaintServerPattern::setTile):
28575 (WebCore::KRenderingPaintServerPattern::listener):
28576 (WebCore::KRenderingPaintServerPattern::setListener):
28577 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
28578 * kcanvas/device/KRenderingPaintServerPattern.h:
28579 * kcanvas/device/KRenderingPaintServerSolid.cpp:
28580 (WebCore::KRenderingPaintServerSolid::externalRepresentation):
28581 * kcanvas/device/KRenderingPaintServerSolid.h:
28582 * kcanvas/device/KRenderingStrokePainter.cpp:
28583 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
28584 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
28585 * kcanvas/device/KRenderingStrokePainter.h:
28586 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
28587 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
28588 (WebCore::KCanvasFilterQuartz::prepareFilter):
28589 * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
28590 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
28591 (WebCore::KCanvasMaskerQuartz::applyMask):
28592 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
28593 (WebCore::KCanvasImageQuartz::init):
28594 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
28595 (WebCore::KCanvasClipperQuartz::applyClip):
28596 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
28597 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
28598 (WebCore::KRenderingDeviceQuartz::quartzContext):
28599 (WebCore::KRenderingDeviceQuartz::contextForImage):
28600 (WebCore::KRenderingDeviceQuartz::createPaintServer):
28601 (WebCore::KRenderingDeviceQuartz::createResource):
28602 (WebCore::KRenderingDeviceQuartz::createFilterEffect):
28603 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
28604 (WebCore::CGShadingRefForLinearGradient):
28605 (WebCore::CGShadingRefForRadialGradient):
28606 (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
28607 (WebCore::KRenderingPaintServerGradientQuartz::teardown):
28608 * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
28609 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
28610 (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
28611 (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
28612 (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
28613 (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
28614 (WebCore::KRenderingPaintServerSolidQuartz::draw):
28615 (WebCore::KRenderingPaintServerSolidQuartz::setup):
28616 (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
28617 (WebCore::KRenderingPaintServerPatternQuartz::setup):
28618 (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
28619 (WebCore::KRenderingPaintServerPatternQuartz::teardown):
28620 * kcanvas/device/quartz/QuartzSupport.h:
28621 * kcanvas/device/quartz/QuartzSupport.mm:
28622 (WebCore::applyStrokeStyleToContext):
28624 2006-09-20 Anders Carlsson <acarlsson@apple.com>
28626 Reviewed by Dave Hyatt.
28628 * dom/WheelEvent.cpp:
28629 (WebCore::WheelEvent::WheelEvent):
28630 Use lroundf instead of lround since deltas are floats.
28632 2006-09-20 Julien Palmas <julien.palmas@gmail.com>
28634 Reviewed by eseidel. Landed by eseidel.
28636 Test: svg/custom/pattern-y-offset.svg
28638 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
28639 (WebCore::KRenderingPaintServerPatternQuartz::setup):
28641 2006-09-20 David Hyatt <hyatt@apple.com>
28643 Add a new wheelEvent method to ScrollView. Platforms that wish
28644 to handle the wheel event for the scroll view themselves can then
28645 do so there. (Mac lets the underlying NSScrollView do it for now.)
28647 * page/FrameView.cpp:
28648 (WebCore::FrameView::handleWheelEvent):
28649 * platform/ScrollView.h:
28650 (WebCore::ScrollView::wheelEvent):
28652 2006-09-20 Brady Eidson <beidson@apple.com>
28654 Reviewed by Tim Omernick
28656 Part of fixing a crash Tim O showed me that I missed in a release build.
28657 WebKit should be able to call through the bridge to WebCore no matter what -
28658 Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
28660 * bridge/mac/WebCoreIconDatabaseBridge.h:
28661 * bridge/mac/WebCoreIconDatabaseBridge.mm:
28662 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
28663 (-[WebCoreIconDatabaseBridge isOpen]):
28664 (-[WebCoreIconDatabaseBridge removeAllIcons]):
28665 (-[WebCoreIconDatabaseBridge _isEmpty]):
28666 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
28667 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
28668 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
28669 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
28670 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
28671 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
28672 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
28673 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
28674 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
28675 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
28676 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
28677 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
28678 (-[WebCoreIconDatabaseBridge _setEnabled:]):
28679 (-[WebCoreIconDatabaseBridge _isEnabled]):
28681 2006-09-20 Anders Carlsson <acarlsson@apple.com>
28685 Add String::split which returns a Vector of Strings and use it instead of
28686 DeprecatedStringList.
28688 * bindings/js/kjs_events.cpp:
28689 (KJS::Clipboard::getValueProperty):
28690 * bindings/js/kjs_window.cpp:
28691 (KJS::parseModalDialogFeatures):
28692 * css/MediaList.cpp:
28693 (WebCore::MediaList::setMediaText):
28695 * html/HTMLFormElement.cpp:
28696 (WebCore::HTMLFormElement::formData):
28697 * html/HTMLLinkElement.cpp:
28698 (WebCore::HTMLLinkElement::tokenizeRelAttribute):
28699 * platform/PlatformString.h:
28700 * platform/String.cpp:
28701 (WebCore::String::split):
28702 * platform/StringImpl.cpp:
28703 * platform/StringImpl.h:
28704 * platform/mac/ClipboardMac.h:
28705 * platform/mac/ClipboardMac.mm:
28706 (WebCore::ClipboardMac::types):
28708 2006-09-20 Justin Garcia <justin.garcia@apple.com>
28710 Reviewed by harrison
28712 * css/cssstyleselector.cpp:
28713 (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call
28714 HTMLElement::isContentEditable just to check the Frame's editability, since
28715 it calls updateRenderering, which can get us into infinite recursion.
28717 2006-09-20 Brady Eidson <beidson@apple.com>
28721 Cleaned up my last patch alot, and made the WebCore icon database disabled by default
28723 * loader/icon/IconDatabase.cpp:
28724 (WebCore::IconDatabase::IconDatabase): Disabled by default
28725 (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
28726 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
28727 (WebCore::IconDatabase::iconForPageURL): Ditto
28728 (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
28729 (WebCore::IconDatabase::iconURLForPageURL): Ditto
28730 (WebCore::IconDatabase::retainIconForPageURL): Ditto
28731 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
28732 (WebCore::IconDatabase::setIconDataForIconURL): Ditto
28733 (WebCore::IconDatabase::setIconURLForPageURL): Ditto
28734 (WebCore::IconDatabase::hasEntryForIconURL): Ditto
28735 (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
28737 2006-09-20 Adam Roben <aroben@apple.com>
28741 Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
28742 REGRESSION: file upload control with direction:rtl or text-align:right
28743 draws button on top of filename/icon
28745 * rendering/RenderFileUploadControl.cpp:
28746 (WebCore::RenderFileUploadControl::setStyle): Force text-align to
28748 (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
28749 the filename and icon in RTL
28751 2006-09-20 Alice Liu <alice.liu@apple.com>
28753 Reviewed by Adam Roben.
28755 fixed windows build
28757 * dom/WheelEvent.cpp:
28758 (WebCore::WheelEvent::WheelEvent):
28759 changed lrint to lround
28761 2006-09-20 Sam Weinig <sam.weinig@gmail.com>
28763 Build Fix. Adds isHorizontal attribute back to WheelEvent
28764 for the Objective-C bindings. If it is found that isHorizontal
28765 is not used, we should remove it again but also remove it's
28766 declaration from PublicDOMInterfaces.h
28768 * dom/WheelEvent.h:
28769 (WebCore::WheelEvent::isHorizontal):
28770 * dom/WheelEvent.idl:
28772 2006-09-20 David Hyatt <hyatt@apple.com>
28774 Fix for 10945, WheelEvent should support two dimensions at once, since
28775 MacBooks allow for diagonal scrolling. Also enhance the PlatformWheelEvent
28776 to allow for diagonal scrolling.
28780 * dom/EventTargetNode.cpp:
28781 (WebCore::EventTargetNode::dispatchWheelEvent):
28782 * dom/WheelEvent.cpp:
28783 (WebCore::WheelEvent::WheelEvent):
28784 (WebCore::WheelEvent::initWheelEvent):
28785 * dom/WheelEvent.h:
28786 (WebCore::WheelEvent::wheelDelta):
28787 (WebCore::WheelEvent::wheelDeltaX):
28788 (WebCore::WheelEvent::wheelDeltaY):
28789 * dom/WheelEvent.idl:
28790 * page/FrameView.cpp:
28791 (WebCore::FrameView::handleWheelEvent):
28792 * platform/PlatformWheelEvent.h:
28793 (WebCore::PlatformWheelEvent::deltaX):
28794 (WebCore::PlatformWheelEvent::deltaY):
28795 (WebCore::PlatformWheelEvent::normalize):
28796 * platform/mac/WheelEventMac.mm:
28797 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
28799 2006-09-19 Eric Seidel <eric@webkit.org>
28803 Split KCanvasResources.* into multiple files (and some other minor spacing changes).
28805 No tests were harmed in the making of this patch.
28807 * WebCore.xcodeproj/project.pbxproj:
28808 * kcanvas/KCanvasClipper.cpp: Added.
28809 (WebCore::operator<<):
28810 * kcanvas/KCanvasClipper.h: Added.
28811 * kcanvas/KCanvasFilters.h:
28812 * kcanvas/KCanvasImage.h:
28813 * kcanvas/KCanvasMarker.cpp: Added.
28814 * kcanvas/KCanvasMarker.h: Added.
28815 * kcanvas/KCanvasMasker.cpp: Added.
28816 (WebCore::KCanvasMasker::KCanvasMasker):
28817 (WebCore::KCanvasMasker::setMask):
28818 (WebCore::KCanvasMasker::externalRepresentation):
28819 (WebCore::getMaskerById):
28820 * kcanvas/KCanvasMasker.h: Added.
28821 * kcanvas/KCanvasResource.cpp: Added.
28822 (WebCore::KCanvasResource::invalidate):
28823 (WebCore::KCanvasResource::externalRepresentation):
28824 (WebCore::getResourceById):
28825 (WebCore::getPaintServerById):
28826 * kcanvas/KCanvasResource.h: Added.
28827 * kcanvas/KCanvasResources.cpp: Removed.
28828 * kcanvas/KCanvasResources.h: Removed.
28829 * kcanvas/RenderPath.cpp:
28830 * kcanvas/RenderSVGContainer.cpp:
28831 * kcanvas/RenderSVGImage.cpp:
28832 * kcanvas/RenderSVGText.cpp:
28833 * kcanvas/device/KRenderingPaintServer.h:
28834 * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
28835 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
28836 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
28837 * ksvg2/svg/SVGClipPathElement.h:
28838 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
28839 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
28840 * ksvg2/svg/SVGFECompositeElement.cpp:
28841 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
28842 * ksvg2/svg/SVGFELightElement.cpp:
28843 * ksvg2/svg/SVGFEOffsetElement.cpp:
28844 * ksvg2/svg/SVGFETurbulenceElement.cpp:
28845 * ksvg2/svg/SVGFilterElement.cpp:
28846 * ksvg2/svg/SVGLinearGradientElement.cpp:
28847 * ksvg2/svg/SVGMarkerElement.h:
28848 * ksvg2/svg/SVGMaskElement.h:
28850 2006-09-19 Brady Eidson <beidson@apple.com>
28852 Reviewed by Sarge Decker
28854 <rdar://problem/4739892> and <rdar://problem/4729797>
28855 - WebCore::IconDatabase needs to have and respect an enabled() flag
28856 - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
28858 * bridge/mac/WebCoreIconDatabaseBridge.h:
28859 * bridge/mac/WebCoreIconDatabaseBridge.mm:
28860 (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
28861 (-[WebCoreIconDatabaseBridge _isEnabled]): Added
28862 * loader/icon/IconDatabase.cpp:
28863 (WebCore::IconDatabase::IconDatabase):
28864 (WebCore::IconDatabase::open): Don't open if disabled
28865 (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
28866 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
28867 (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
28868 (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
28869 (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
28870 (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
28871 (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
28872 (WebCore::IconDatabase::releaseIconURL):
28873 (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
28874 (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
28875 (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
28876 (WebCore::IconDatabase::setEnabled): Added
28877 * loader/icon/IconDatabase.h:
28878 (WebCore::IconDatabase::enabled): Added
28880 (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
28881 * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
28883 2006-09-20 David Hyatt <hyatt@apple.com>
28885 Massage mouse wheel handling so that it is more cross-platform. Make
28886 all the work happen in handleWheelEvent on the FrameView.
28888 Reviewed by bradee-oh
28890 * bridge/mac/FrameMac.mm:
28891 (WebCore::FrameMac::wheelEvent):
28892 * page/FrameView.cpp:
28893 (WebCore::FrameView::handleWheelEvent):
28894 * platform/PlatformWheelEvent.h:
28895 (WebCore::PlatformWheelEvent::platformDelta):
28896 (WebCore::PlatformWheelEvent::delta):
28897 * platform/mac/WheelEventMac.mm:
28898 (WebCore::platformDeltaForEvent):
28899 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
28900 * rendering/RenderLayer.cpp:
28901 (WebCore::RenderLayer::scroll):
28902 * rendering/RenderObject.cpp:
28903 (WebCore::RenderObject::scroll):
28905 2006-09-19 Eric Seidel <eric@webkit.org>
28909 Improve test output for filters with bounding-box relative sizes.
28910 http://bugs.webkit.org/show_bug.cgi?id=8585
28912 Many test results updated.
28914 * kcanvas/KCanvasFilters.cpp:
28915 (WebCore::KCanvasFilter::externalRepresentation):
28917 2006-09-19 Eric Seidel <eric@webkit.org>
28921 Markers should clip to their viewport.
28922 http://bugs.webkit.org/show_bug.cgi?id=5967
28924 Test: svg/custom/marker-overflow-clip.svg
28926 * kcanvas/KCanvasResources.cpp:
28927 (WebCore::KCanvasMarker::KCanvasMarker):
28928 (WebCore::KCanvasMarker::setMarker):
28929 (WebCore::KCanvasMarker::draw):
28930 * kcanvas/KCanvasResources.h:
28931 (WebCore::KCanvasMasker::mask):
28932 * ksvg2/svg/SVGMarkerElement.cpp:
28933 (WebCore::SVGMarkerElement::SVGMarkerElement):
28934 (WebCore::SVGMarkerElement::parseMappedAttribute):
28935 (WebCore::SVGMarkerElement::canvasResource):
28936 (WebCore::SVGMarkerElement::createRenderer):
28938 2006-09-19 Justin Garcia <justin.garcia@apple.com>
28940 Reviewed by eseidel
28942 Backing out my recent change.
28944 * css/cssstyleselector.cpp:
28945 (WebCore::CSSStyleSelector::adjustRenderStyle):
28947 2006-09-19 Brady Eidson <beidson@apple.com>
28949 Reviewed by Kevin McCullough
28951 http://bugs.webkit.org/show_bug.cgi?id=10940
28952 Opening a PDF in a new tab/window creates a documentless-frame
28953 and we deref the document without checking its validity
28956 (WebCore::Frame::iconURL):
28958 2006-09-19 Justin Garcia <justin.garcia@apple.com>
28960 Reviewed by harrison
28962 <rdar://problem/4735272>
28963 Can not click into link in programmatically editable content
28965 * css/cssstyleselector.cpp:
28966 (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
28967 userModify to implement document wide editability.
28969 2006-09-19 MorganL <morlmor@yahoo.com>
28971 Reviewed by Darin and landed by Brady
28973 Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
28974 Build broken when SVG is not enabled.
28976 * dom/XMLTokenizer.cpp:
28977 (WebCore::XMLTokenizer::startElementNs):
28979 2006-09-19 Justin Garcia <justin.garcia@apple.com>
28981 Reviewed by harrison
28983 <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
28985 Pasting plain text results in a match style paste, and the insertion
28986 position is whitespace normal, which clobbers the whitespace:pre on
28987 tab spans. Skip changes to the whitespace mode when computing a style
28988 change for tab spans or the text nodes inside tab spans.
28990 * editing/ApplyStyleCommand.cpp:
28991 (WebCore::StyleChange::init): Don't change the whitespace mode inside
28994 2006-09-19 David Hyatt <hyatt@apple.com>
28996 Fix for bug 5298, shape=default not supported for image maps. Implement
29001 * html/HTMLAreaElement.cpp:
29002 (WebCore::HTMLAreaElement::getRegion):
29003 * html/HTMLMapElement.cpp:
29004 (WebCore::HTMLMapElement::mapMouseEvent):
29006 2006-09-19 Adam Roben <aroben@apple.com>
29010 Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
29011 "no file selected" placeholder text missing from file upload control
29013 * WebCore.xcodeproj/project.pbxproj:
29014 * rendering/RenderFileUploadControl.cpp: Remove class
29015 RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
29016 defaultWidthNumChars
29017 (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
29018 RenderBlock constructor instead of RenderFlexibleBox,
29019 (WebCore::RenderFileUploadControl::setStyle): Remove references to
29021 (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
29022 instead of updateIconAndFileName() (which has been removed)
29023 (WebCore::RenderFileUploadControl::updateFromElement): Remove
29024 references to m_fileBox, don't call updateIconAndFilename()
29025 (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
29026 without using m_fileBox
29027 (WebCore::RenderFileUploadControl::createButtonStyle): Remove
29028 now-unnecessary display:box rule.
29029 (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
29030 to paintingDisabled() now that Icon::paint() does it, and add code to
29031 paint the filename directly.
29032 (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
29033 out of RenderFileUploadInnerFileBox and into RenderFileUploadControl
29034 * rendering/RenderFileUploadControl.h: Make RenderFileUploadControl a
29035 subclass of RenderBlock instead of RenderFlexibleBox, remove
29036 updateIconAndFilename() method, remove m_fileBox instance variable.
29038 2006-09-19 Eric Seidel <eric@webkit.org>
29042 Exceptions thrown from <script> tags in XHTML/SVG docs show the wrong line numbers
29043 http://bugs.webkit.org/show_bug.cgi?id=10846
29045 No automated test case possible until http://bugs.webkit.org/show_bug.cgi?id=10905 is resolved.
29047 * dom/XMLTokenizer.cpp:
29048 (WebCore::XMLTokenizer::XMLTokenizer):
29049 (WebCore::XMLTokenizer::startElementNs):
29050 (WebCore::XMLTokenizer::endElementNs):
29052 2006-09-19 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
29054 Reviewed by eseidel. Landed by eseidel.
29056 Build fix only, no tests affected.
29058 * platform/gdk/FontPlatformDataGdk.cpp:
29059 (WebCore::FontPlatformData::FontPlatformData):
29060 (WebCore::FontPlatformData::~FontPlatformData):
29061 * platform/gdk/FrameGdk.h:
29062 * platform/gdk/TemporaryLinkStubs.cpp:
29063 (FrameGdk::isLoadTypeReload):
29064 (FrameGdk::originalRequestURL):
29065 (IconDatabase::setIconURLForPageURL):
29067 2006-09-19 David Hyatt <hyatt@apple.com>
29069 Refine the fix for 9805 to really get all the complex cases right.
29073 * rendering/RenderBlock.cpp:
29074 (WebCore::RenderBlock::clearFloatsIfNeeded):
29075 (WebCore::RenderBlock::handleBottomOfBlock):
29077 2006-09-18 David Hyatt <hyatt@apple.com>
29079 Fix for 9805, <hr> not positioned properly following a previous empty sibling
29080 that had clear:both set on it. Update self-collapsing block clearance
29081 behavior to match what is specified in the latest draft of CSS2.1.
29085 Added fast/block/margin-collapse/empty-clear-blocks.html
29087 * rendering/RenderBlock.cpp:
29088 (WebCore::RenderBlock::clearFloatsIfNeeded):
29089 (WebCore::RenderBlock::handleBottomOfBlock):
29091 2006-09-18 MorganL <morlmor@yahoo.com>
29093 Reviewed by Brady, landed by Brady
29095 Send receivedResponse callback to ResourceLoaderClient when loading
29098 See http://bugs.webkit.org/show_bug.cgi?id=10845
29100 * platform/win/ResourceLoaderWin.cpp:
29101 (WebCore::ResourceLoader::fileLoadTimer):
29103 2006-09-18 Brady Eidson <beidson@apple.com>
29107 <rdar://problem/3028061> - WebKit never updates favicon
29108 The WebKit enforced expiration date for icons has worked for some time, but the
29109 move to the new Icon Loader broke the "always get the icon if the user refreshes the page"
29110 functionality. This patch fixes that up, along with some other architectural improvements,
29111 the main one being that WebCore::Document now contains an iconURL for the Frame to query if needed.
29113 * bridge/mac/FrameMac.h: Added isLoadTypeReload()
29114 * bridge/mac/FrameMac.mm:
29115 (WebCore::FrameMac::isLoadTypeReload): Implementation, calls into the bridge
29116 * bridge/mac/WebCoreFrameBridge.h: Added isLoadTypeReload:
29117 * bridge/win/FrameWin.h: Added isLoadTypeReload() for temporary link stub
29118 * dom/Document.h: Added m_iconURL
29119 (WebCore::Document::iconURL): Added
29120 (WebCore::Document::setIconURL): Ditto
29121 * html/HTMLLinkElement.cpp:
29122 (WebCore::HTMLLinkElement::process): Sets the iconURL in the Document instead of the Frame
29124 (WebCore::Frame::iconURL): Calculates the iconURL based on the document, then the default favicon.ico url
29125 (WebCore::Frame::endIfNotLoading): Checks for the load type - always loads icon on Reload
29126 * page/Frame.h: Nuked setIconURL(), added isLoadTypeReload()
29127 * page/FramePrivate.h: Nuked IconURL
29128 * platform/win/TemporaryLinkStubs.cpp:
29129 (FrameWin::isLoadTypeReload):
29131 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
29135 - Re-add private method [DOMRGBColor _color] to DOMPrivate.h as
29136 it is it turns out that AppKit uses it.
29138 * bindings/objc/DOMPrivate.h:
29139 * bindings/objc/DOMRGBColor.mm:
29140 (-[DOMRGBColor _color]):
29142 2006-09-18 Sam Weinig <sam.weinig@gmail.com>
29146 Patch for http://bugs.webkit.org/show_bug.cgi?id=10903
29147 Yet Another Objective-C Bindings Patch
29149 - Whitespace cleanup for IDLParser.pm
29151 - Split DOMException, DOMRangeException, DOMXPathException, DOMEventsException
29152 and DOMAbstractView into their own files.
29154 - Remove private method [DOMRGBColor _color] from DOMPrivate.h as
29155 it is not used and a public method is available now.
29157 - Remove internal method [DOMDocument _ownerElement] from DOMInternal.h
29160 - Auto-generate method isContentEditable for DOMNode.
29162 - General cleanup of bindings code including removing unneeded #imports
29163 and whitespace cleanup
29165 * WebCore.xcodeproj/project.pbxproj:
29166 * bindings/objc/DOM.mm:
29169 (-[DOMNode _initWithNode:WebCore::]):
29170 (+[DOMNode _nodeWith:WebCore::]):
29171 (-[DOMNode WebCore::]):
29172 (-[DOMNode KJS::Bindings::]):
29173 (-[DOMNode addEventListener:::]):
29174 (-[DOMNode removeEventListener:::]):
29175 (-[DOMNode dispatchEvent:]):
29176 (-[DOMElement image]):
29177 (-[DOMElement _font]):
29178 (-[DOMElement _imageTIFFRepresentation]):
29179 (-[DOMElement _getURLAttribute:]):
29180 (-[DOMElement _NPObject]):
29181 (-[DOMElement isFocused]):
29182 (-[DOMRange dealloc]):
29183 (-[DOMRange finalize]):
29184 (-[DOMRange description]):
29185 (-[DOMRange startContainer]):
29186 (-[DOMRange startOffset]):
29187 (-[DOMRange endContainer]):
29188 (-[DOMRange endOffset]):
29189 (-[DOMRange collapsed]):
29190 (-[DOMRange commonAncestorContainer]):
29191 (-[DOMRange setStart::]):
29192 (-[DOMRange setEnd::]):
29193 (-[DOMRange setStartBefore:]):
29194 (-[DOMRange setStartAfter:]):
29195 (-[DOMRange setEndBefore:]):
29196 (-[DOMRange setEndAfter:]):
29197 (-[DOMRange collapse:]):
29198 (-[DOMRange selectNode:]):
29199 (-[DOMRange selectNodeContents:]):
29200 (-[DOMRange compareBoundaryPoints::]):
29201 (-[DOMRange deleteContents]):
29202 (-[DOMRange extractContents]):
29203 (-[DOMRange cloneContents]):
29204 (-[DOMRange insertNode:]):
29205 (-[DOMRange surroundContents:]):
29206 (-[DOMRange cloneRange]):
29207 (-[DOMRange toString]):
29208 (-[DOMRange detach]):
29209 (-[DOMRange _initWithRange:WebCore::]):
29210 (+[DOMRange _rangeWith:WebCore::]):
29211 (-[DOMRange WebCore::]):
29212 (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
29213 (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
29214 (-[DOMNodeFilter WebCore::]):
29215 (-[DOMNodeFilter dealloc]):
29216 (-[DOMNodeFilter finalize]):
29217 (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
29218 (-[DOMNodeIterator WebCore::]):
29219 (+[DOMNodeIterator _nodeIteratorWith:WebCore::filter:]):
29220 (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
29221 (-[DOMTreeWalker WebCore::]):
29222 (+[DOMTreeWalker _treeWalkerWith:WebCore::filter:]):
29223 (ObjCNodeFilterCondition::acceptNode):
29224 (-[DOMDocument createNodeIterator::::]):
29225 (-[DOMDocument createTreeWalker::::]):
29226 (ObjCEventListener::find):
29227 (ObjCEventListener::create):
29228 (ObjCEventListener::handleEvent):
29229 * bindings/objc/DOMAbstractView.h: Added.
29230 * bindings/objc/DOMAbstractView.mm: Added.
29231 (-[DOMAbstractView document]):
29232 (-[DOMAbstractView WebCore::]):
29233 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
29234 (+[DOMAbstractView _abstractViewWith:WebCore::]):
29235 * bindings/objc/DOMCSS.mm:
29236 (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
29237 (+[DOMStyleSheet _styleSheetWith:WebCore::]):
29238 (+[DOMCSSStyleSheet _CSSStyleSheetWith:WebCore::]):
29239 (-[DOMCSSRule _initWithRule:WebCore::]):
29240 (+[DOMCSSRule _CSSRuleWith:WebCore::]):
29241 (-[DOMCSSValue _initWithValue:WebCore::]):
29242 (+[DOMCSSValue _CSSValueWith:WebCore::]):
29243 (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:WebCore::]):
29244 (-[DOMDocument getComputedStyle::]):
29245 (-[DOMDocument getMatchedCSSRules::]):
29246 * bindings/objc/DOMCore.h:
29247 * bindings/objc/DOMEventException.h: Added.
29248 * bindings/objc/DOMEvents.h:
29249 * bindings/objc/DOMEvents.mm:
29250 * bindings/objc/DOMException.h: Added.
29251 * bindings/objc/DOMHTML.mm:
29252 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
29254 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
29255 (-[DOMHTMLInputElement _selectedRange]):
29256 (-[DOMHTMLInputElement _setAutofilled:]):
29257 * bindings/objc/DOMInternal.h:
29258 * bindings/objc/DOMObject.h:
29259 * bindings/objc/DOMPrivate.h:
29260 * bindings/objc/DOMRange.h:
29261 * bindings/objc/DOMRangeException.h: Added.
29262 * bindings/objc/DOMViews.h:
29263 * bindings/objc/DOMViews.mm: Removed.
29264 * bindings/objc/DOMXPath.h:
29265 * bindings/objc/DOMXPathException.h: Added.
29266 * bindings/scripts/IDLParser.pm:
29269 2006-09-18 Brady Eidson <beidson@apple.com>
29273 * platform/win/TemporaryLinkStubs.cpp:
29274 (IconDatabase::setIconURLForPageURL):
29276 2006-09-18 David Hyatt <hyatt@apple.com>
29278 Fix for bug 3969, hr width doesn't update when it clears a float. This
29279 was also a problem with tables and overflow sections.
29283 Added fast/block/float/width-update-after-clear.html
29285 * rendering/RenderBlock.cpp:
29286 (WebCore::RenderBlock::collapseMargins):
29287 (WebCore::RenderBlock::clearFloatsIfNeeded):
29289 2006-09-18 Brady Eidson <beidson@apple.com>
29293 http://bugs.webkit.org/show_bug.cgi?id=10907
29294 REGRESSION: New Icon Loaders don't handle certain non-server-root URLs correctly
29296 * bridge/mac/FrameMac.h: Changed originalRequestURL() to virtual
29297 * bridge/win/FrameWin.h: Added originalRequestURL()
29298 * loader/icon/IconLoader.cpp:
29299 (IconLoader::receivedAllData): Moved the "pageURL to iconURL mapping logic" to Frame::commitIconURLToIconDatabase()
29301 (WebCore::Frame::iconURL): Construct the icon URL from *only* the protocol and host of the frame's url.
29302 (WebCore::Frame::endIfNotLoading): Call commitIconURLToIconDatabase() if we're not kicking off an icon load
29303 (WebCore::Frame::commitIconURLToIconDatabase): Map the completed doc's pageURL to the iconURL
29304 * page/Frame.h: Added pure virtual originalRequestURL()
29305 * platform/win/TemporaryLinkStubs.cpp:
29306 (FrameWin::originalRequestURL): Added
29308 2006-09-18 Rob Buis <buis@kde.org>
29310 Reviewed by Maciej.
29312 http://bugs.webkit.org/show_bug.cgi?id=10807
29313 REGRESSION (r16259): Repro crash on manual-tests/svg-repaint-image.svg
29315 Make sure the paint method is not exited without popping
29316 context and transparency layer.
29318 WARNING: NO TEST CASES ADDED OR CHANGED
29320 * kcanvas/RenderSVGImage.cpp:
29321 (WebCore::RenderSVGImage::paint):
29323 2006-09-18 Graham Dennis <graham.dennis@gmail.com>
29327 - fix for http://bugs.webkit.org/show_bug.cgi?id=10896
29328 REGRESSION: WebKit can't be built with SVG disabled
29330 * bindings/scripts/CodeGeneratorObjC.pm:
29331 For each file generated add a #ifdef <something>_SUPPORT / #endif
29332 pair if the idl file has a Conditional extended attribute
29334 2006-09-17 Eric Seidel <eric@webkit.org>
29338 REGRESSION (r16245): double-clicking on javascript exceptions fails to show source
29339 http://bugs.webkit.org/show_bug.cgi?id=10813
29341 * bridge/mac/WebCoreFrameBridge.mm:
29342 (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
29344 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
29348 http://bugs.webkit.org/show_bug.cgi?id=10779
29349 REGRESSION: Animated GIF ignores frame intervals and loops infinitely
29353 * platform/Image.cpp:
29354 (WebCore::Image::shouldAnimate): Don't check that there is more than one frame,
29355 maybe the rest just hasn't been loaded yet.
29356 (WebCore::Image::startAnimation): Move the frame count check here - there is no need
29357 to start animating before we get at least two frames.
29359 2006-09-17 Brady Eidson <beidson@apple.com>
29363 IconLoader now gracefully handles the condition where there's no document in the frame
29366 * loader/icon/IconLoader.cpp:
29367 (IconLoader::startLoading):
29369 2006-09-17 David Hyatt <hyatt@apple.com>
29371 Fix for bug 10899, rework how CSS keywords work to be smarter about
29372 using the correct size when generic families change (e.g., monospace to
29373 serif and vice versa).
29377 Added fast/text/basic/generic-family-changes.html
29379 * css/cssstyleselector.cpp:
29380 (WebCore::CSSStyleSelector::applyProperty):
29381 (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
29382 (WebCore::CSSStyleSelector::fontSizeForKeyword):
29383 * css/cssstyleselector.h:
29384 * dom/Document.cpp:
29385 (WebCore::Document::recalcStyle):
29386 * platform/FontDescription.h:
29387 (WebCore::FontDescription::FontDescription):
29388 (WebCore::FontDescription::keywordSize):
29389 (WebCore::FontDescription::setKeywordSize):
29390 (WebCore::FontDescription::operator==):
29392 2006-09-17 Alexey Proskuryakov <ap@nypop.com>
29396 http://bugs.webkit.org/show_bug.cgi?id=10852
29397 REGRESSION: Reproducible crash in XMLHttpRequest::abort()
29399 Test: http/tests/xmlhttprequest/xhr-onunload.html
29401 * xml/xmlhttprequest.cpp:
29402 (WebCore::XMLHttpRequest::send): Check the return value of ResourceLoader::start().
29404 * loader/icon/IconLoader.cpp:
29405 (IconLoader::startLoading): Fix a similar latent bug here.
29407 2006-09-17 Adam Roben <aroben@apple.com>
29411 * loader/icon/IconDatabase.cpp:
29413 2006-09-17 Anders Carlsson <acarlsson@apple.com>
29417 Add simplifyWhiteSpace and stripWhiteSpace to the String class.
29418 Change the XSLT Parameter Map to use Strings instead of StringImpls.
29421 * bindings/js/JSXSLTProcessor.cpp:
29422 (KJS::XSLTProcessorProtoFunc::callAsFunction):
29423 * bindings/js/kjs_events.cpp:
29424 (KJS::JSAbstractEventListener::handleEvent):
29425 * bindings/js/kjs_window.cpp:
29426 (KJS::ScheduledAction::execute):
29427 * css/MediaList.cpp:
29428 (WebCore::MediaList::setMediaText):
29429 * dom/Document.cpp:
29430 (WebCore::Document::processHttpEquiv):
29431 * editing/ApplyStyleCommand.cpp:
29432 (WebCore::StyleChange::init):
29433 * html/HTMLDocument.cpp:
29434 (WebCore::parseDocTypeDeclaration):
29435 * html/HTMLLinkElement.cpp:
29436 (WebCore::HTMLLinkElement::parseMappedAttribute):
29437 * html/HTMLObjectElement.cpp:
29438 (WebCore::HTMLObjectElement::HTMLObjectElement):
29439 (WebCore::HTMLObjectElement::parseMappedAttribute):
29440 (WebCore::HTMLObjectElement::attach):
29441 (WebCore::HTMLObjectElement::setComplete):
29442 (WebCore::HTMLObjectElement::detach):
29443 (WebCore::HTMLObjectElement::recalcStyle):
29444 (WebCore::HTMLObjectElement::childrenChanged):
29445 (WebCore::HTMLObjectElement::isImageType):
29446 * html/HTMLObjectElement.h:
29447 * html/HTMLOptionElement.cpp:
29448 (WebCore::HTMLOptionElement::value):
29449 * html/HTMLSelectElement.cpp:
29450 (WebCore::HTMLSelectElement::appendFormData):
29451 * html/HTMLTokenizer.cpp:
29452 (WebCore::HTMLTokenizer::parseTag):
29453 * ksvg2/svg/SVGColor.cpp:
29454 (WebCore::SVGColor::setRGBColor):
29455 * ksvg2/svg/SVGDescElement.cpp:
29456 (WebCore::SVGDescElement::description):
29457 * platform/PlatformString.h:
29458 * platform/String.cpp:
29459 (WebCore::String::stripWhiteSpace):
29460 (WebCore::String::simplifyWhiteSpace):
29461 * platform/StringImpl.cpp:
29462 (WebCore::isSpace):
29463 (WebCore::parseLength):
29464 (WebCore::StringImpl::stripWhiteSpace):
29465 (WebCore::StringImpl::simplifyWhiteSpace):
29466 (WebCore::StringImpl::toInt):
29467 * platform/StringImpl.h:
29468 * platform/mac/ClipboardMac.mm:
29469 (WebCore::cocoaTypeFromMIMEType):
29470 * rendering/RenderPartObject.cpp:
29471 (WebCore::RenderPartObject::updateWidget):
29472 * xml/XPathFunctions.cpp:
29473 (WebCore::XPath::FunNormalizeSpace::doEvaluate):
29474 * xml/XPathGrammar.y:
29475 * xml/XPathStep.cpp:
29476 (WebCore::XPath::Step::nodeTestMatches):
29477 * xml/XSLStyleSheet.cpp:
29478 (WebCore::XSLStyleSheet::loadChildSheets):
29479 (WebCore::XSLStyleSheet::locateStylesheetSubResource):
29480 * xml/XSLTProcessor.cpp:
29481 (WebCore::xsltParamArrayFromParameterMap):
29482 (WebCore::XSLTProcessor::setParameter):
29483 (WebCore::XSLTProcessor::getParameter):
29484 (WebCore::XSLTProcessor::removeParameter):
29485 * xml/XSLTProcessor.h:
29486 * xml/xmlhttprequest.cpp:
29487 (WebCore::XMLHttpRequest::getStatusText):
29489 2006-09-17 David Hyatt <hyatt@apple.com>
29491 Fix for bugzilla bugs 10895 and 6336, fieldsets misbehaving when floats
29492 are declared right before the fieldsets. It turns out fieldsets in other
29493 browsers avoid floats (like overflow:auto/hidden/scroll sections do), so
29494 adding that behavior to fieldset fixes the bug.
29496 Made avoidsFloats virtual and did some refactoring to make tables, flexboxes
29497 and fieldsets all subclass.
29501 Added fast/forms/float-before-fieldset.html
29503 * rendering/RenderFieldset.h:
29504 (WebCore::RenderFieldset::avoidsFloats):
29505 * rendering/RenderFlexibleBox.h:
29506 (WebCore::RenderFlexibleBox::avoidsFloats):
29507 * rendering/RenderObject.cpp:
29508 (WebCore::RenderObject::avoidsFloats):
29509 * rendering/RenderObject.h:
29510 * rendering/RenderTable.h:
29511 (WebCore::RenderTable::avoidsFloats):
29513 2006-09-17 David Hyatt <hyatt@apple.com>
29515 Fix for bugzilla bug 3240, implement support for the HTML4 "frame" and
29516 "rules" attributes on tables.
29518 Reviewed by bradee-oh
29520 Well-covered by existing layout tests.
29522 * html/HTMLTableCellElement.cpp:
29523 (WebCore::HTMLTableCellElement::additionalAttributeStyleDecl):
29524 * html/HTMLTableColElement.cpp:
29525 (WebCore::HTMLTableColElement::additionalAttributeStyleDecl):
29526 * html/HTMLTableColElement.h:
29527 * html/HTMLTableElement.cpp:
29528 (WebCore::HTMLTableElement::HTMLTableElement):
29529 (WebCore::HTMLTableElement::~HTMLTableElement):
29530 (WebCore::HTMLTableElement::setCaption):
29531 (WebCore::HTMLTableElement::setTHead):
29532 (WebCore::HTMLTableElement::setTFoot):
29533 (WebCore::HTMLTableElement::setTBody):
29534 (WebCore::HTMLTableElement::createTHead):
29535 (WebCore::HTMLTableElement::deleteTHead):
29536 (WebCore::HTMLTableElement::createTFoot):
29537 (WebCore::HTMLTableElement::deleteTFoot):
29538 (WebCore::HTMLTableElement::createCaption):
29539 (WebCore::HTMLTableElement::deleteCaption):
29540 (WebCore::HTMLTableElement::insertRow):
29541 (WebCore::HTMLTableElement::deleteRow):
29542 (WebCore::HTMLTableElement::addChild):
29543 (WebCore::HTMLTableElement::childrenChanged):
29544 (WebCore::HTMLTableElement::mapToEntry):
29545 (WebCore::HTMLTableElement::parseMappedAttribute):
29546 (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
29547 (WebCore::HTMLTableElement::getSharedCellDecl):
29548 (WebCore::HTMLTableElement::getSharedGroupDecl):
29549 (WebCore::HTMLTableElement::attach):
29550 * html/HTMLTableElement.h:
29551 (WebCore::HTMLTableElement::caption):
29552 (WebCore::HTMLTableElement::tHead):
29553 (WebCore::HTMLTableElement::tFoot):
29554 (WebCore::HTMLTableElement::):
29555 * html/HTMLTableRowElement.h:
29556 * html/HTMLTableSectionElement.cpp:
29557 (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecl):
29558 * html/HTMLTableSectionElement.h:
29560 2006-09-17 David Hyatt <hyatt@apple.com>
29562 Fix for bugzilla bug 4192, font size wrong for <tt> elements that
29563 specify their own new font-family list. Make sure to always
29564 reset the generic family along with the family list when mapping in
29565 new font-family values.
29567 Reviewed by bradee-oh
29569 fast/text/basic/generic-family-reset.html
29571 * css/cssstyleselector.cpp:
29572 (WebCore::CSSStyleSelector::applyProperty):
29574 2006-09-16 Brady Eidson <beidson@apple.com>
29578 Pruning code relating to WebKit's icon loader
29580 * bridge/mac/WebCoreIconDatabaseBridge.h:
29581 * bridge/mac/WebCoreIconDatabaseBridge.mm:
29582 * loader/icon/IconDatabase.h:
29584 (WebCore::Frame::endIfNotLoading): Moved a FIXME in from WebKit's IconLoader to
29587 2006-09-16 Sam Weinig <sam.weinig@gmail.com>
29591 Patch for http://bugs.webkit.org/show_bug.cgi?id=10885
29592 Auto-generate DOMHTMLDocument for the Objective-C bindings
29594 * DerivedSources.make:
29595 * WebCore.xcodeproj/project.pbxproj:
29596 * bindings/objc/DOMExtensions.h:
29597 * bindings/objc/DOMHTML.mm:
29598 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
29599 * bindings/objc/DOMHTMLDocument.h: Removed.
29600 * bindings/objc/DOMHTMLDocument.mm: Removed.
29601 * bindings/objc/PublicDOMInterfaces.h:
29602 * bindings/scripts/CodeGeneratorObjC.pm:
29603 * html/HTMLDocument.idl:
29604 * platform/DeprecatedString.h:
29605 (WebCore::DeprecatedString::operator NSString*):
29607 2006-09-16 Rob Buis <buis@kde.org>
29611 http://bugs.webkit.org/show_bug.cgi?id=10866
29612 Code in kcanvas/ should not use Private
29614 Remove Private classes and tweak coding style.
29616 WARNING: NO TEST CASES ADDED OR CHANGED
29618 * kcanvas/RenderPath.cpp:
29619 (WebCore::RenderPath::RenderPath):
29620 (WebCore::RenderPath::~RenderPath):
29621 (WebCore::RenderPath::localTransform):
29622 (WebCore::RenderPath::setLocalTransform):
29623 (WebCore::RenderPath::fillContains):
29624 (WebCore::RenderPath::relativeBBox):
29625 (WebCore::RenderPath::setPath):
29626 (WebCore::RenderPath::path):
29627 (WebCore::RenderPath::layout):
29628 * kcanvas/RenderPath.h:
29629 * kcanvas/RenderSVGContainer.cpp:
29630 (WebCore::RenderSVGContainer::RenderSVGContainer):
29631 (WebCore::RenderSVGContainer::~RenderSVGContainer):
29632 (WebCore::RenderSVGContainer::drawsContents):
29633 (WebCore::RenderSVGContainer::setDrawsContents):
29634 (WebCore::RenderSVGContainer::localTransform):
29635 (WebCore::RenderSVGContainer::setLocalTransform):
29636 (WebCore::RenderSVGContainer::layout):
29637 (WebCore::RenderSVGContainer::paint):
29638 (WebCore::RenderSVGContainer::setViewport):
29639 (WebCore::RenderSVGContainer::viewport):
29640 (WebCore::RenderSVGContainer::setViewBox):
29641 (WebCore::RenderSVGContainer::viewBox):
29642 (WebCore::RenderSVGContainer::setAlign):
29643 (WebCore::RenderSVGContainer::align):
29644 (WebCore::RenderSVGContainer::fillContains):
29645 (WebCore::RenderSVGContainer::strokeContains):
29646 (WebCore::RenderSVGContainer::setSlice):
29647 (WebCore::RenderSVGContainer::slice):
29648 * kcanvas/RenderSVGContainer.h:
29649 * kcanvas/device/KRenderingFillPainter.cpp:
29650 (WebCore::KRenderingFillPainter::KRenderingFillPainter):
29651 (WebCore::KRenderingFillPainter::~KRenderingFillPainter):
29652 (WebCore::KRenderingFillPainter::fillRule):
29653 (WebCore::KRenderingFillPainter::setFillRule):
29654 (WebCore::KRenderingFillPainter::opacity):
29655 (WebCore::KRenderingFillPainter::setOpacity):
29656 * kcanvas/device/KRenderingFillPainter.h:
29657 * kcanvas/device/KRenderingPaintServerGradient.cpp:
29658 (WebCore::KRenderingPaintServerGradient::KRenderingPaintServerGradient):
29659 (WebCore::KRenderingPaintServerGradient::~KRenderingPaintServerGradient):
29660 (WebCore::KRenderingPaintServerGradient::gradientStops):
29661 (WebCore::KRenderingPaintServerGradient::setGradientStops):
29662 (WebCore::KRenderingPaintServerGradient::spreadMethod):
29663 (WebCore::KRenderingPaintServerGradient::setGradientSpreadMethod):
29664 (WebCore::KRenderingPaintServerGradient::boundingBoxMode):
29665 (WebCore::KRenderingPaintServerGradient::setBoundingBoxMode):
29666 (WebCore::KRenderingPaintServerGradient::gradientTransform):
29667 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
29668 (WebCore::KRenderingPaintServerLinearGradient::KRenderingPaintServerLinearGradient):
29669 (WebCore::KRenderingPaintServerLinearGradient::~KRenderingPaintServerLinearGradient):
29670 (WebCore::KRenderingPaintServerLinearGradient::gradientStart):
29671 (WebCore::KRenderingPaintServerLinearGradient::setGradientStart):
29672 (WebCore::KRenderingPaintServerLinearGradient::gradientEnd):
29673 (WebCore::KRenderingPaintServerLinearGradient::setGradientEnd):
29674 (WebCore::KRenderingPaintServerRadialGradient::KRenderingPaintServerRadialGradient):
29675 (WebCore::KRenderingPaintServerRadialGradient::~KRenderingPaintServerRadialGradient):
29676 (WebCore::KRenderingPaintServerRadialGradient::gradientCenter):
29677 (WebCore::KRenderingPaintServerRadialGradient::setGradientCenter):
29678 (WebCore::KRenderingPaintServerRadialGradient::gradientFocal):
29679 (WebCore::KRenderingPaintServerRadialGradient::setGradientFocal):
29680 (WebCore::KRenderingPaintServerRadialGradient::gradientRadius):
29681 (WebCore::KRenderingPaintServerRadialGradient::setGradientRadius):
29682 (WebCore::KRenderingPaintServerGradient::listener):
29683 (WebCore::KRenderingPaintServerGradient::setListener):
29684 * kcanvas/device/KRenderingPaintServerGradient.h:
29685 * kcanvas/device/KRenderingPaintServerPattern.cpp:
29686 (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
29687 (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
29688 (WebCore::KRenderingPaintServerPattern::setBbox):
29689 (WebCore::KRenderingPaintServerPattern::bbox):
29690 (WebCore::KRenderingPaintServerPattern::boundingBoxMode):
29691 (WebCore::KRenderingPaintServerPattern::setBoundingBoxMode):
29692 (WebCore::KRenderingPaintServerPattern::tile):
29693 (WebCore::KRenderingPaintServerPattern::setTile):
29694 (WebCore::KRenderingPaintServerPattern::patternTransform):
29695 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
29696 (WebCore::KRenderingPaintServerPattern::listener):
29697 (WebCore::KRenderingPaintServerPattern::setListener):
29698 * kcanvas/device/KRenderingPaintServerPattern.h:
29699 * kcanvas/device/KRenderingPaintServerSolid.cpp:
29700 (WebCore::KRenderingPaintServerSolid::KRenderingPaintServerSolid):
29701 (WebCore::KRenderingPaintServerSolid::~KRenderingPaintServerSolid):
29702 (WebCore::KRenderingPaintServerSolid::color):
29703 (WebCore::KRenderingPaintServerSolid::setColor):
29704 * kcanvas/device/KRenderingPaintServerSolid.h:
29705 * kcanvas/device/KRenderingStrokePainter.cpp:
29706 (WebCore::KRenderingStrokePainter::KRenderingStrokePainter):
29707 (WebCore::KRenderingStrokePainter::~KRenderingStrokePainter):
29708 (WebCore::KRenderingStrokePainter::strokeWidth):
29709 (WebCore::KRenderingStrokePainter::setStrokeWidth):
29710 (WebCore::KRenderingStrokePainter::strokeMiterLimit):
29711 (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
29712 (WebCore::KRenderingStrokePainter::strokeCapStyle):
29713 (WebCore::KRenderingStrokePainter::setStrokeCapStyle):
29714 (WebCore::KRenderingStrokePainter::strokeJoinStyle):
29715 (WebCore::KRenderingStrokePainter::setStrokeJoinStyle):
29716 (WebCore::KRenderingStrokePainter::dashOffset):
29717 (WebCore::KRenderingStrokePainter::setDashOffset):
29718 (WebCore::KRenderingStrokePainter::dashArray):
29719 (WebCore::KRenderingStrokePainter::setDashArray):
29720 (WebCore::KRenderingStrokePainter::opacity):
29721 (WebCore::KRenderingStrokePainter::setOpacity):
29722 (WebCore::KRenderingStrokePainter::dirty):
29723 (WebCore::KRenderingStrokePainter::setDirty):
29724 * kcanvas/device/KRenderingStrokePainter.h:
29726 2006-09-16 Mark Rowe <opendarwin.org@bdash.net.nz>
29728 Reviewed by Anders.
29730 http://bugs.webkit.org/show_bug.cgi?id=10887
29733 * bindings/objc/DOMPrivate.h: Remove reference to DOMEventPrivate.h.
29735 2006-09-16 Sam Weinig <sam.weinig@gmail.com>
29737 Reviewed by Anders.
29739 Fix for http://bugs.webkit.org/show_bug.cgi?id=10886
29740 REGRESSION (r16387): Reproducible crash when mousing over HTML document
29742 - Special case method [DOMNode ownerDocument] to call document() instead
29743 or ownerDocument() to return to the old behavior.
29745 * WebCore.xcodeproj/project.pbxproj:
29746 * bindings/scripts/CodeGeneratorObjC.pm:
29748 2006-09-15 Brady Eidson <beidson@apple.com>
29750 Reviewed by Tim Hatcher
29752 <rdar://problem/4730811> - New IconDatabase needs to attempt to create its path.
29753 Otherwise new installs and new user accounts won't have any icons because the icon.db cannot be created
29755 * loader/icon/IconDatabase.cpp: Removed a now obsolete FIXME
29756 (WebCore::makeAllDirectories): Added - candidate to be in a header for "platform neutral file utilities"
29757 (WebCore::IconDatabase::open): Make sure the directory exists
29759 2006-09-15 Timothy Hatcher <timothy@apple.com>
29763 Make new style ObjC methods public API.
29765 * WebCore.xcodeproj/project.pbxproj:
29766 * bindings/objc/DOMPrivate.h:
29767 * bindings/objc/PublicDOMInterfaces.h:
29769 2006-09-15 Sam Weinig <sam.weinig@gmail.com>
29773 Patch for http://bugs.webkit.org/show_bug.cgi?id=10870
29774 Auto-generate DOMNode for the Objective-C bindings
29776 * DerivedSources.make:
29777 * WebCore.xcodeproj/project.pbxproj:
29778 * bindings/objc/DOM.mm:
29779 (-[DOMNode boundingBox]):
29780 (-[DOMNode lineBoxRects]):
29781 * bindings/objc/DOMEvents.h:
29782 * bindings/objc/DOMExtensions.h:
29783 * bindings/objc/DOMNode.h: Removed.
29784 * bindings/objc/DOMNode.mm: Removed.
29785 * bindings/objc/PublicDOMInterfaces.h:
29786 * bindings/scripts/CodeGeneratorObjC.pm:
29789 2006-09-15 Timothy Hatcher <timothy@apple.com>
29791 Reviewed by Justin.
29793 Removed alter selection logic from WebCoreFrameBridge and moved to SelectionController.
29795 * bridge/mac/WebCoreFrameBridge.h:
29796 * bridge/mac/WebCoreFrameBridge.mm:
29797 (-[WebCoreFrameBridge centerSelectionInVisibleArea]):
29798 (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
29799 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
29800 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
29801 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
29802 (-[WebCoreFrameBridge replaceMarkedTextWithText:]):
29803 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
29804 (-[WebCoreFrameBridge increaseSelectionListLevel]):
29805 (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
29806 (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
29807 (-[WebCoreFrameBridge decreaseSelectionListLevel]):
29808 (-[WebCoreFrameBridge insertLineBreak]):
29809 (-[WebCoreFrameBridge insertParagraphSeparator]):
29810 (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
29811 (-[WebCoreFrameBridge insertText:selectInsertedText:]):
29812 (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
29813 (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
29814 (createMouseEventFromDraggingInfo):
29815 * editing/SelectionController.cpp:
29816 (WebCore::SelectionController::moveTo):
29817 (WebCore::SelectionController::setSelection):
29818 (WebCore::SelectionController::modify):
29819 (WebCore::SelectionController::setBase):
29820 (WebCore::SelectionController::setExtent):
29821 * editing/SelectionController.h:
29823 (WebCore::Frame::revealSelection):
29824 (WebCore::Frame::revealCaret):
29827 2006-09-15 Brady Eidson <beidson@apple.com>
29831 Added the ability to get a mutable char* from a CString, which will copy the internal
29832 buffer if the ref count is greater than 1 so your mutable char* won't affect any other
29833 referrer of that buffer.
29835 * platform/CString.cpp:
29836 (WebCore::CString::mutableData):
29837 (WebCore::CString::copyBufferIfNeeded):
29838 * platform/CString.h:
29840 2006-09-15 Justin Garcia <justin.garcia@apple.com>
29842 Reviewed by harrison
29844 <rdar://problem/4674869>
29845 REGRESSION: selecting text to write over results in cursor jumping to middle of next line
29847 * editing/SelectionController.cpp:
29848 (WebCore::SelectionController::modify): Added lineBoundary to test fix.
29849 * editing/visible_units.cpp:
29850 (WebCore::endOfLine): If the last box on the line is a lineBreak, return the
29851 position before it, not after it.
29853 2006-09-15 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
29857 http://bugs.webkit.org/show_bug.cgi?id=10864
29858 Bug 10864: Linux\GDK build fixes
29860 * Projects/gdk/webcore-gdk.bkl:
29861 * WebCoreSources.bkl:
29862 * platform/gdk/FontCacheGdk.cpp:
29863 * platform/gdk/FontDataGdk.cpp:
29864 (WebCore::FontData::platformInit):
29865 * platform/gdk/FontGdk.cpp:
29866 (WebCore::Font::drawGlyphs):
29867 * platform/gdk/FrameGdk.cpp:
29868 (WebCore::FrameGdk::handleGdkEvent):
29869 * platform/gdk/FrameGdk.h:
29870 * platform/gdk/ImageGdk.cpp: Added.
29871 (WebCore::Image::initPlatformData):
29872 (WebCore::Image::invalidatePlatformData):
29873 (WebCore::Image::loadPlatformResource):
29874 (WebCore::Image::supportsType):
29875 * platform/gdk/RenderPopupMenuGdk.cpp:
29876 (WebCore::RenderPopupMenuGdk::hidePopup):
29877 * platform/gdk/RenderPopupMenuGdk.h:
29878 * platform/gdk/ScreenGdk.cpp:
29879 (WebCore::drawableForPage):
29880 (WebCore::screenRect):
29881 (WebCore::screenDepth):
29882 (WebCore::usableScreenRect):
29883 (WebCore::scaleFactor):
29884 * platform/gdk/SystemTimeLinux.cpp:
29885 (WebCore::currentTime):
29886 * platform/gdk/TemporaryLinkStubs.cpp:
29887 (FrameGdk::bindingRootObject):
29888 (FrameGdk::markMisspellings):
29889 (WebCore::screenDepthPerComponent):
29890 (WebCore::screenIsMonochrome):
29891 (WebCore::fileButtonChooseFileLabel):
29892 (WebCore::fileButtonNoFileSelectedLabel):
29893 (FrameGdk::shouldChangeSelection):
29894 (FrameGdk::respondToChangedSelection):
29895 (FrameGdk::respondToChangedContents):
29897 (PlatformScrollBar::PlatformScrollBar):
29898 (PlatformScrollBar::~PlatformScrollBar):
29899 (PlatformScrollBar::width):
29900 (PlatformScrollBar::height):
29901 (PlatformScrollBar::setEnabled):
29902 (PlatformScrollBar::paint):
29903 (PlatformScrollBar::setScrollBarValue):
29904 (PlatformScrollBar::setKnobProportion):
29905 (PlatformScrollBar::setRect):
29906 (ScrollBar::ScrollBar):
29907 (FileChooser::FileChooser):
29908 (FileChooser::~FileChooser):
29909 (FileChooser::openFileChooser):
29910 (FileChooser::basenameForWidth):
29911 (FileChooser::uploadControlDetaching):
29912 (FileChooser::chooseFile):
29915 (Icon::newIconForFile):
29917 (IconLoader::stopLoading):
29918 (IconLoader::startLoading):
29919 (IconLoader::createForFrame):
29920 (IconDatabase::isIconExpiredForIconURL):
29921 (IconDatabase::hasEntryForIconURL):
29922 (IconDatabase::sharedIconDatabase):
29923 * platform/gdk/WidgetGdk.cpp:
29924 * webcore-base.bkl:
29926 2006-09-15 Nikolas Zimmermann <zimmermann@kde.org>
29930 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10835
29931 Fix svg memory leaks.
29933 Reworked SVGList to deal with RefPtr's for ptr types
29934 which makes manual refcounting unnecessary, and is much safer.
29936 Removing all virtual functions (nullItem) from SVGList, and
29937 also remove SVGListBase. Switch to a similar concept like
29938 Vector/VectorTraits (see new file SVGListTraits.h).
29940 Credits go to Eric/Maciej for the inspiration.
29942 * CMakeLists.txt: Add SVGListTraits.cpp to build
29943 * WebCore.xcodeproj/project.pbxproj: Ditto.
29944 * bindings/scripts/CodeGeneratorJS.pm: Generator changes for SVGTransform/PathSeg/LengthList (now RefPtr based)
29945 * kcanvas/RenderSVGText.cpp: Add some get() methods, as SVGLengthList is RefPtr based now.
29946 (WebCore::RenderSVGText::translationForAttributes):
29947 * ksvg2/svg/SVGAnimateTransformElement.cpp: Add some get() methods, as SVGTransformList is RefPtr based now.
29948 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
29949 * ksvg2/svg/SVGElementInstanceList.cpp: Be RefPtr based.
29950 (WebCore::SVGElementInstanceList::SVGElementInstanceList):
29951 * ksvg2/svg/SVGElementInstanceList.h:
29952 * ksvg2/svg/SVGLengthList.cpp: Ditto.
29953 (WebCore::SVGLengthList::SVGLengthList):
29954 * ksvg2/svg/SVGLengthList.h: Ditto.
29955 * ksvg2/svg/SVGList.h: Rewrote, as described above.
29956 (WebCore::SVGListTypeOperations::nullItem):
29957 (WebCore::SVGList::SVGList):
29958 (WebCore::SVGList::~SVGList):
29959 (WebCore::SVGList::clear):
29960 (WebCore::SVGList::getFirst):
29961 (WebCore::SVGList::getLast):
29962 (WebCore::SVGList::getItem):
29963 (WebCore::SVGList::replaceItem):
29964 (WebCore::SVGList::removeItem):
29965 * ksvg2/svg/SVGListTraits.cpp: Added.
29966 * ksvg2/svg/SVGListTraits.h: Added.
29968 * ksvg2/svg/SVGPathElement.cpp: Add some get() methods, as SVGPathSegList is RefPtr based now.
29969 (WebCore::SVGPathElement::toPathData):
29970 * ksvg2/svg/SVGPathSegList.cpp: Be RefPtr based.
29971 (WebCore::SVGPathSegList::SVGPathSegList):
29972 * ksvg2/svg/SVGPathSegList.h: Ditto.
29973 * ksvg2/svg/SVGTransform.cpp: Style cleanup.
29974 (SVGTransform::SVGTransform):
29975 * ksvg2/svg/SVGTransformList.cpp: Be RefPtr based.
29976 (SVGTransformList::SVGTransformList):
29977 (SVGTransformList::createSVGTransformFromMatrix):
29978 (SVGTransformList::consolidate):
29979 * ksvg2/svg/SVGTransformList.h: Ditto.
29980 * ksvg2/svg/SVGTransformable.cpp: Fix RefPtr usage of SVGTransform.
29981 (SVGTransformable::parseTransformAttribute):
29983 2006-09-15 Nikolas Zimmermann <zimmermann@kde.org>
29985 Reviewed by eseidel. Landed by eseidel.
29987 Fix build on Qt/Linux and implement Frame::addMessageToConsole to
29988 be able to see javascript errors for instance.
29991 * platform/qt/FrameQt.h:
29992 * platform/qt/FrameQt.cpp: Implement addMessageToConsole.
29993 (WebCore::FrameQt::bindingRootObject):
29994 * platform/qt/TemporaryLinkStubs.cp
29995 (WebCore::IconDatabase::hasEntryForIconURL):
29996 (WebCore::IconDatabase::sharedIconDatabase):
29998 2006-09-15 Sam Weinig <sam.weinig@gmail.com>
30002 Patch for http://bugs.webkit.org/show_bug.cgi?id=10869
30003 Auto-generate the internal methods for the Objective-C bindings
30005 - Auto-generates the internal method (ie. the _fooBar and _fooBarWith methods)
30006 implementations where standard. For cases where a custom implementation was
30007 needed, added a [ObjCNoInternal] extended attribute to the corresponding IDL.
30009 - Some general cleanup of some of the non-generated bindings, to bring them in-
30010 line with what the generated bindings look like.
30012 * bindings/objc/DOM.mm:
30013 (-[DOMNode description]):
30014 * bindings/objc/DOMCSS.mm:
30015 (-[DOMCSSPrimitiveValue WebCore::]):
30016 (-[DOMDocument getComputedStyle::]):
30017 (-[DOMDocument getMatchedCSSRules::]):
30018 * bindings/objc/DOMEvents.mm:
30019 (-[DOMEvent WebCore::]):
30020 * bindings/objc/DOMHTML.mm:
30021 * bindings/objc/DOMHTMLDocument.mm:
30022 (-[DOMHTMLDocument title]):
30023 (-[DOMHTMLDocument setTitle:]):
30024 (-[DOMHTMLDocument referrer]):
30025 (-[DOMHTMLDocument domain]):
30026 (-[DOMHTMLDocument URL]):
30027 (-[DOMHTMLDocument body]):
30028 (-[DOMHTMLDocument setBody:]):
30029 (-[DOMHTMLDocument images]):
30030 (-[DOMHTMLDocument applets]):
30031 (-[DOMHTMLDocument links]):
30032 (-[DOMHTMLDocument forms]):
30033 (-[DOMHTMLDocument anchors]):
30034 (-[DOMHTMLDocument cookie]):
30035 (-[DOMHTMLDocument setCookie:]):
30036 (-[DOMHTMLDocument open]):
30037 (-[DOMHTMLDocument close]):
30038 (-[DOMHTMLDocument write:]):
30039 (-[DOMHTMLDocument writeln:]):
30040 (-[DOMHTMLDocument getElementById:]):
30041 (-[DOMHTMLDocument getElementsByName:]):
30042 (-[DOMHTMLDocument WebCore::]):
30043 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
30044 * bindings/objc/DOMHTMLOptionElement.mm:
30045 (-[DOMHTMLOptionElement form]):
30046 (-[DOMHTMLOptionElement defaultSelected]):
30047 (-[DOMHTMLOptionElement setDefaultSelected:]):
30048 (-[DOMHTMLOptionElement text]):
30049 (-[DOMHTMLOptionElement index]):
30050 (-[DOMHTMLOptionElement disabled]):
30051 (-[DOMHTMLOptionElement setDisabled:]):
30052 (-[DOMHTMLOptionElement label]):
30053 (-[DOMHTMLOptionElement setLabel:]):
30054 (-[DOMHTMLOptionElement selected]):
30055 (-[DOMHTMLOptionElement setSelected:]):
30056 (-[DOMHTMLOptionElement value]):
30057 (-[DOMHTMLOptionElement setValue:]):
30058 (-[DOMHTMLOptionElement WebCore::]):
30059 (+[DOMHTMLOptionElement _HTMLOptionElementWith:WebCore::]):
30060 * bindings/objc/DOMInternal.h:
30061 * bindings/objc/DOMNode.mm:
30062 (-[DOMNode dealloc]):
30063 (-[DOMNode finalize]):
30064 (-[DOMNode nodeName]):
30065 (-[DOMNode nodeValue]):
30066 (-[DOMNode setNodeValue:]):
30067 (-[DOMNode nodeType]):
30068 (-[DOMNode parentNode]):
30069 (-[DOMNode childNodes]):
30070 (-[DOMNode firstChild]):
30071 (-[DOMNode lastChild]):
30072 (-[DOMNode previousSibling]):
30073 (-[DOMNode nextSibling]):
30074 (-[DOMNode attributes]):
30075 (-[DOMNode ownerDocument]):
30076 (-[DOMNode insertBefore::]):
30077 (-[DOMNode replaceChild::]):
30078 (-[DOMNode removeChild:]):
30079 (-[DOMNode appendChild:]):
30080 (-[DOMNode hasChildNodes]):
30081 (-[DOMNode cloneNode:]):
30082 (-[DOMNode normalize]):
30083 (-[DOMNode isSupported::]):
30084 (-[DOMNode namespaceURI]):
30085 (-[DOMNode prefix]):
30086 (-[DOMNode setPrefix:]):
30087 (-[DOMNode localName]):
30088 (-[DOMNode hasAttributes]):
30089 (-[DOMNode isSameNode:]):
30090 (-[DOMNode isEqualNode:]):
30091 (-[DOMNode isDefaultNamespace:]):
30092 (-[DOMNode lookupPrefix:]):
30093 (-[DOMNode lookupNamespaceURI:]):
30094 (-[DOMNode textContent]):
30095 (-[DOMNode setTextContent:]):
30096 (-[DOMNode boundingBox]):
30097 (-[DOMNode lineBoxRects]):
30098 * bindings/objc/DOMObject.mm:
30099 (-[DOMObject _init]):
30100 * bindings/objc/DOMXPath.mm:
30101 (-[DOMNativeXPathNSResolver dealloc]):
30102 (-[DOMNativeXPathNSResolver finalize]):
30103 (-[DOMNativeXPathNSResolver WebCore::]):
30104 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
30105 (+[DOMNativeXPathNSResolver _xpathNSResolverWith:WebCore::]):
30106 (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
30107 * bindings/scripts/CodeGeneratorObjC.pm:
30108 * bridge/mac/WebCoreFrameBridge.mm:
30109 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
30110 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
30111 * css/CSSCharsetRule.idl:
30112 * css/CSSFontFaceRule.idl:
30113 * css/CSSImportRule.idl:
30114 * css/CSSMediaRule.idl:
30115 * css/CSSPageRule.idl:
30116 * css/CSSPrimitiveValue.idl:
30118 * css/CSSStyleRule.idl:
30119 * css/CSSStyleSheet.idl:
30120 * css/CSSUnknownRule.idl:
30121 * css/CSSValue.idl:
30122 * css/CSSValueList.idl:
30123 * css/StyleSheet.idl:
30125 * dom/KeyboardEvent.idl:
30126 * dom/MouseEvent.idl:
30127 * dom/MutationEvent.idl:
30128 * dom/NodeIterator.idl:
30129 * dom/OverflowEvent.idl:
30130 * dom/TreeWalker.idl:
30132 * dom/WheelEvent.idl:
30134 2006-09-15 Adam Roben <aroben@apple.com>
30136 Reviewed by timothy.
30138 Fixes http://bugs.webkit.org/show_bug.cgi?id=10865
30139 New file upload control should match the width of the old one
30141 Make width of new file upload control match the old one as closely as
30144 * rendering/RenderFileUploadControl.cpp:
30146 2006-09-15 Timothy Hatcher <timothy@apple.com>
30150 Remove the SVG IDL files from the Copy Resources phase.
30152 * WebCore.xcodeproj/project.pbxproj:
30154 2006-09-15 Brady Eidson <beidson@apple.com>
30156 Reviewed by Eric Siedel
30158 Dumped the use of CGColorRef and directly use the floating point data from
30161 This fixes the performance regression found between 16285 and 16286
30163 * platform/mac/FontMac.mm:
30164 (WebCore::Font::drawComplexText):
30165 (WebCore::Font::drawGlyphs):
30167 2006-09-14 Mark Rowe <opendarwin.org@bdash.net.nz>
30171 http://bugs.webkit.org/show_bug.cgi?id=10838
30172 Bug 10838: REGRESSION: Leaking of WebScriptObjectPrivate
30174 FrameMac relies on its cleanupPluginObjects being called to perform cleanup. The virtual
30175 Frame::cleanupPluginObjects method is called from Frame's destructor, which results
30176 in Frame::cleanupPluginObjects being called rather than FrameMac::cleanupPluginObjects.
30178 * bridge/mac/FrameMac.mm:
30179 (WebCore::FrameMac::~FrameMac): Call cancelAndClear to ensure that FrameMac::cleanupPluginObjects
30180 will be called from Frame::clear
30182 (WebCore::Frame::~Frame): Use cancelAndClear.
30183 (WebCore::Frame::cancelAndClear): Move cancellation and clearing into a separate method that
30187 2006-09-14 Brady Eidson <beidson@apple.com>
30189 Reviewed by Maciej's rubber stamp
30191 Exact same fix I just made, but in the other method I horked up
30192 Also added a reference to the bugzilla in comments
30195 (WebCore::Frame::endIfNotLoading):
30196 (WebCore::Frame::stop):
30198 2006-09-14 Brady Eidson <beidson@apple.com>
30202 Fixed a bad iFrame crash, resolving some of the layout test badness
30205 (WebCore::Frame::endIfNotLoading):
30206 - Added a RefPtr to protect the frame itself to prevent its destruction during this method
30208 2006-09-14 Justin Garcia <justin.garcia@apple.com>
30210 Reviewed by harrison
30212 <rdar://problem/4655880> Up/Down arrows skip over To Do
30214 * bridge/mac/WebCoreFrameBridge.mm:
30215 (-[WebCoreFrameBridge canDeleteRange:]): Added a FIXME.
30216 * dom/Node.cpp: Removed the unused inSameRootEditableElement.
30218 * editing/SelectionController.cpp:
30219 (WebCore::SelectionController::modify): Added documentboundary to granularities in order test a fix.
30220 * editing/visible_units.cpp:
30221 (WebCore::previousLinePosition): Use highestEditableRoot so that this function can move from
30222 editable content into editable content that's embedded in non-editable content.
30223 (WebCore::nextLinePosition): Ditto.
30224 (WebCore::startOfEditableContent): Renamed from startOfEditableRoot and use highestEditableRoot.
30225 This is the behavior that callers desire. This fixes Command + Up/Down.
30226 (WebCore::endOfEditableContent): Ditto.
30227 * editing/visible_units.h:
30229 2006-09-14 Karthik Kumar <karthikkumar@gmail.com>
30231 Reviewed by timothy. Landed by aroben.
30233 Fixes http://bugs.webkit.org/show_bug.cgi?id=10856
30234 Windows build fixes after r16360
30236 * WebCore.vcproj/WebCore/WebCore.vcproj: Add loader\icon to
30237 AdditionalIncludeDirectories
30238 * platform/win/TemporaryLinkStubs.cpp: Add link stubs for IconLoader,
30240 (IconLoader::stopLoading):
30241 (IconLoader::startLoading):
30242 (IconLoader::createForFrame):
30243 (IconDatabase::isIconExpiredForIconURL):
30244 (IconDatabase::hasEntryForIconURL):
30245 (IconDatabase::sharedIconDatabase):
30247 2006-09-14 Brady Eidson <beidson@apple.com>
30249 Part of a build fix for Windows - rest will be working out a mess of temporary link stubs
30251 * loader/icon/IconLoader.cpp:
30252 (IconLoader::receivedAllData):
30254 * page/FramePrivate.h:
30256 2006-09-14 Graham Dennis <graham.dennis@gmail.com>
30258 Reviewed by Justin Garcia.
30260 - http://bugs.webkit.org/show_bug.cgi?id=10726
30261 Crash in ApplyStyleCommand::applyRelativeFontStyleChange
30263 * editing/ApplyStyleCommand.cpp:
30264 (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Prevent a crash by
30265 makeing sure that the 'beyondEnd' node is after the start node.
30267 2006-09-14 MorganL <morlmor@yahoo.com>
30271 Fixes http://bugs.webkit.org/show_bug.cgi?id=10845
30272 Various bugs/crashes in ResourceLoaderWin with local files.
30274 * platform/ResourceLoaderInternal.h:
30275 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
30276 * platform/win/ResourceLoaderWin.cpp:
30277 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
30278 (WebCore::ResourceLoader::fileLoadTimer):
30280 2006-09-13 Brady Eidson <beidson@apple.com>
30284 Icon loads now take place in WebCore
30286 * WebCore.xcodeproj/project.pbxproj:
30287 * bridge/BrowserExtension.h:
30288 * bridge/mac/BrowserExtensionMac.h:
30289 * bridge/mac/BrowserExtensionMac.mm:
30290 - Moved enforcement of a Mozilla Favicon extension elsewhere
30292 * bridge/mac/FrameMac.h:
30293 * bridge/mac/FrameMac.mm:
30294 (WebCore::FrameMac::originalRequestURL):
30295 - Added accessor to "original request URL"
30297 * bridge/mac/WebCoreFrameBridge.h:
30298 - Removed methods to set the iconURL as all loading is now done in WebCore
30299 - Added call throughs to notify WebKit an Icon is done loading, and a to get the original request URL
30301 * html/HTMLLinkElement.cpp:
30302 (WebCore::HTMLLinkElement::process):
30303 - Moved enforcement of a Mozilla Favicon extension elsewhere
30305 * loader/icon/IconDatabase.cpp:
30306 (WebCore::IconDatabase::setIconURLForPageURL):
30307 - Changed an ASSERT to correctly handle a sketchy (invalid) situation
30309 * loader/icon/IconLoader.h: Added.
30310 * loader/icon/IconLoader.cpp: Added.
30311 (IconLoader::IconLoader):
30312 (IconLoader::createForFrame):
30313 - Static factory method with a private constructor to enforce
30314 "you MUST have a Frame to create an IconLoader" semantics
30315 (IconLoader::~IconLoader):
30316 (IconLoader::startLoading):
30317 (IconLoader::stopLoading):
30318 (IconLoader::receivedData):
30319 - ResourceLoaderClient delegate
30320 (IconLoader::receivedAllData):
30323 * loader/mac/IconLoaderMac.mm: Added.
30324 (IconLoader::receivedResponse):
30325 (IconLoader::notifyIconChanged):
30326 - For now, these are platform specific methods
30327 - One to get the HTTP response code of an icon load
30328 - The other to call through to the app when the icon has changed (loaded)
30332 (WebCore::Frame::iconURL):
30333 (WebCore::Frame::setIconURL):
30334 - Frame objects now have an inherent icon URL and a way to calculate/access it
30335 (WebCore::Frame::endIfNotLoading):
30336 - This is where we actually kick off the IconLoader
30337 (WebCore::Frame::stop):
30338 - Added call to stop loading the icon
30340 * page/FramePrivate.h:
30341 (WebCore::FramePrivate::FramePrivate):
30342 (WebCore::FramePrivate::~FramePrivate):
30343 - Added the icon URL as a private member
30344 - Added the IconLoader as a private member, and clean it up on deletion
30346 * platform/mac/ResourceLoaderMac.mm:
30347 (WebCore::ResourceLoader::start): Added a valuable ASSERT
30349 2006-09-13 David Hyatt <hyatt@apple.com>
30351 Fix for 10841, unable to check checkboxes inside labels.
30353 Reviewed by xenon, bradee-oh
30357 (WebCore::Element::contains):
30359 * html/HTMLLabelElement.cpp:
30360 (WebCore::HTMLLabelElement::defaultEventHandler):
30362 2006-09-13 Mark Rowe <opendarwin.org@bdash.net.nz>
30366 http://bugs.webkit.org/show_bug.cgi?id=10834
30367 Bug 10834: FileChooser constructor in FileChooserMac appears to overretain m_controller
30369 * platform/mac/FileChooserMac.mm:
30370 (WebCore::FileChooser::FileChooser): Don't over-retain the OpenPanelController.
30372 2006-09-13 Mark Rowe <opendarwin.org@bdash.net.nz>
30376 http://bugs.webkit.org/show_bug.cgi?id=10836
30377 Bug 10836: REGRESSION: Mac implementation of Font::drawGlyphs leaks a CGColorRef
30379 * platform/mac/FontMac.mm:
30380 (WebCore::Font::drawComplexText): Release CGColorRef after use.
30381 (WebCore::Font::drawGlyphs): Ditto.
30383 2006-09-14 Anders Carlsson <acarlsson@apple.com>
30385 Try fixing the Win32 build.
30387 * bridge/win/FrameWin.h:
30388 * platform/win/TemporaryLinkStubs.cpp:
30389 (FrameWin::bindingRootObject):
30391 2006-09-14 Anders Carlsson <acarlsson@apple.com>
30395 Add USE defines for the generic JavaScriptCore bindings as well as NPAPI bindings.
30397 * bindings/js/kjs_binding.cpp:
30398 (KJS::ScriptInterpreter::createLanguageInstanceForValue):
30399 * bindings/js/kjs_dom.cpp:
30400 (KJS::getRuntimeObject):
30401 * bridge/mac/FrameMac.h:
30403 * html/HTMLAppletElement.cpp:
30404 (WebCore::HTMLAppletElement::~HTMLAppletElement):
30405 (WebCore::HTMLAppletElement::detach):
30406 * html/HTMLAppletElement.h:
30407 * html/HTMLEmbedElement.cpp:
30408 (WebCore::HTMLEmbedElement::~HTMLEmbedElement):
30409 (WebCore::HTMLEmbedElement::detach):
30410 * html/HTMLEmbedElement.h:
30411 * html/HTMLObjectElement.cpp:
30412 (WebCore::HTMLObjectElement::~HTMLObjectElement):
30413 (WebCore::HTMLObjectElement::detach):
30414 * html/HTMLObjectElement.h:
30415 * html/HTMLPlugInElement.cpp:
30416 (WebCore::HTMLPlugInElement::HTMLPlugInElement):
30417 (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
30418 (WebCore::HTMLPlugInElement::createNPObject):
30419 * html/HTMLPlugInElement.h:
30422 2006-09-13 David Hyatt <hyatt@apple.com>
30424 Clean up the XBL and XSLT ifdefs to be consistent with the SVG
30425 and XPath ifdefs. KHTML_NO_XBL is flipped and is now XBL_SUPPORT.
30426 KHTML_XSLT is now XSLT_SUPPORT.
30428 * WebCore.xcodeproj/project.pbxproj:
30429 * bindings/js/JSXSLTProcessor.cpp:
30430 * bindings/js/JSXSLTProcessor.h:
30431 * bindings/js/kjs_window.cpp:
30432 (KJS::Window::getValueProperty):
30434 * css/CSSComputedStyleDeclaration.cpp:
30435 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
30436 * css/cssparser.cpp:
30437 (WebCore::CSSParser::parseValue):
30438 * css/cssstyleselector.cpp:
30439 (WebCore::CSSStyleSelector::applyProperty):
30440 * dom/Document.cpp:
30441 (WebCore::Document::Document):
30442 (WebCore::Document::~Document):
30443 (WebCore::Document::recalcStyleSelector):
30445 (WebCore::Document::bindingManager):
30447 (WebCore::Node::createRendererIfNeeded):
30448 * dom/ProcessingInstruction.cpp:
30449 (WebCore::ProcessingInstruction::ProcessingInstruction):
30450 (WebCore::ProcessingInstruction::checkStyleSheet):
30451 (WebCore::ProcessingInstruction::setStyleSheet):
30452 * dom/ProcessingInstruction.h:
30453 * dom/XMLTokenizer.cpp:
30454 (WebCore::XMLTokenizer::processingInstruction):
30455 (WebCore::XMLTokenizer::insertErrorMessageBlock):
30456 * dom/XMLTokenizer.h:
30457 * loader/Cache.cpp:
30458 (WebCore::Cache::getStatistics):
30460 * loader/CachedResource.h:
30461 (WebCore::CachedResource::):
30462 * loader/CachedResourceClient.h:
30463 * loader/CachedXBLDocument.cpp:
30464 * loader/CachedXBLDocument.h:
30465 * loader/CachedXSLStyleSheet.cpp:
30466 * loader/CachedXSLStyleSheet.h:
30467 * loader/DocLoader.cpp:
30468 * loader/DocLoader.h:
30469 * rendering/RenderStyle.cpp:
30470 (WebCore::StyleCSS3NonInheritedData::StyleCSS3NonInheritedData):
30471 (WebCore::StyleCSS3NonInheritedData::~StyleCSS3NonInheritedData):
30472 (WebCore::StyleCSS3NonInheritedData::operator==):
30473 * rendering/RenderStyle.h:
30474 * xml/XSLImportRule.cpp:
30475 * xml/XSLImportRule.h:
30476 * xml/XSLStyleSheet.cpp:
30477 * xml/XSLStyleSheet.h:
30478 * xml/XSLTProcessor.cpp:
30479 * xml/XSLTProcessor.h:
30481 2006-09-13 Nikolas Zimmermann <zimmermann@kde.org>
30483 Reviewed by eseidel. Landed by eseidel.
30485 Fix newly introduced memory leaks in SVG.
30486 http://bugs.webkit.org/show_bug.cgi?id=10835
30488 * ksvg2/svg/SVGList.h:
30489 (WebCore::SVGListBase::~SVGListBase):
30490 (WebCore::SVGListBase::clearVector):
30491 (WebCore::SVGListBase::clear):
30492 (WebCore::SVGList::clearVector):
30494 * ksvg2/svg/SVGNumberList.cpp: s/float/double/ - forgot that!
30495 (SVGNumberList::SVGNumberList):
30496 * ksvg2/svg/SVGNumberList.h: Ditto.
30498 2006-09-13 MorganL <morlmor@yahoo.com>
30500 Reviewed/landed by aroben.
30502 Fixes http://bugs.webkit.org/show_bug.cgi?id=10833
30503 Windows build needs fixed after move to engine-rendered file upload widget
30505 * WebCore.vcproj/WebCore/WebCore.vcproj: Add RenderFileUpload files,
30506 remove RenderFileButton files
30507 * platform/win/TemporaryLinkStubs.cpp: Add stubs for FileChooser, Icon
30508 (FileChooser::FileChooser):
30509 (FileChooser::~FileChooser):
30510 (FileChooser::openFileChooser):
30511 (FileChooser::basenameForWidth):
30512 (FileChooser::uploadControlDetaching):
30513 (FileChooser::chooseFile):
30514 (WebCore::fileButtonChooseFileLabel):
30515 (WebCore::fileButtonNoFileSelectedLabel):
30518 (Icon::newIconForFile):
30521 2006-09-13 MorganL <morlmor@yahoo.com>
30523 Reviewed/landed by aroben.
30525 Fixes http://bugs.webkit.org/attachment.cgi?id=10537
30526 Webkit WebCore build fails on Windows
30528 * WebCore.vcproj/WebCore/build-generated-files.sh: export SOURCE_ROOT
30531 2006-09-13 Nikolas Zimmermann <zimmermann@kde.org>
30535 Fix Qt/Linux build.
30537 * CMakeLists.txt: Change SVGZoomEvent.idl location & add RenderFileUploadControl
30538 * platform/Icon.h: Add wtf/Platform.h include
30539 * platform/qt/FileChooserQt.cpp: Added as stub. Easy to implement though.
30540 (WebCore::FileChooser::FileChooser):
30541 (WebCore::FileChooser::~FileChooser):
30542 (WebCore::FileChooser::openFileChooser):
30543 (WebCore::FileChooser::basenameForWidth):
30544 (WebCore::FileChooser::uploadControlDetaching):
30545 (WebCore::FileChooser::chooseFile):
30546 * platform/qt/IconQt.cpp: Added as stub.
30547 (WebCore::Icon::Icon):
30548 (WebCore::Icon::~Icon):
30549 (WebCore::Icon::newIconForFile):
30550 (WebCore::Icon::paint):
30551 * platform/qt/TemporaryLinkStubs.cpp: Remove old RenderFileButton code & some new *Labels needed
30552 (searchableIndexIntroduction):
30553 (fileButtonChooseFileLabel):
30554 (fileButtonNoFileSelectedLabel):
30556 2006-09-12 Adam Roben <aroben@apple.com>
30558 Reviewed by eseidel.
30560 Switch back to passing relative paths to generate-bindings.pl when
30561 generating JS bindings.
30563 * DerivedSources.make: Pass in relative paths to generate-bindings.pl
30564 * bindings/scripts/CodeGenerator.pm: Make ScanDirectory never call
30565 chdir and always construct absolute paths instead.
30567 2006-09-12 David Hyatt <hyatt@apple.com>
30569 Fix for bug 3244, implement html4 label support.
30571 Reviewed by mjs, aroben
30573 Added fast/events/label-focus.html
30576 * html/HTMLLabelElement.cpp:
30577 (WebCore::HTMLLabelElement::formElement):
30578 (WebCore::HTMLLabelElement::setActive):
30579 (WebCore::HTMLLabelElement::setHovered):
30580 (WebCore::HTMLLabelElement::defaultEventHandler):
30581 * html/HTMLLabelElement.h:
30583 2006-09-12 Julien Palmas <julien.palmas@gmail.com>
30585 Reviewed by darin. Landed by eseidel.
30587 * ksvg2/svg/svgpathparser.cpp:
30588 (WebCore::SVGPolyParser::parsePoints):
30590 2006-09-11 Kevin McCullough <KMcCullough@apple.com>
30592 Reviewed by Andersca, Maciej, Brady.
30594 - Implemented intersectsNode in the Range Class
30595 to be compliant with Mozilla standard
30598 (WebCore::Range::intersectsNode):
30602 2006-09-12 Nikolas Zimmermann <zimmermann@kde.org>
30604 Reviewed by eseidel. Landed by eseidel.
30606 Test: svg/W3C-SVG-1.1/struct-dom-01-b.svg (fixed)
30607 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10826
30609 Also finally fixes some long outstanding bugs:
30610 Fixes: http://bugs.webkit.org/show_bug.cgi?id=9190
30611 Fixes: http://bugs.webkit.org/show_bug.cgi?id=9229
30612 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10413
30614 Enable all JavaScript SVG bindings. Builds on Qt/Linux & OSX.
30617 * DerivedSources.make:
30618 * WebCore.xcodeproj/project.pbxproj:
30619 * bindings/scripts/CodeGenerator.pm:
30620 * bindings/scripts/CodeGeneratorJS.pm:
30621 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
30622 * ksvg2/svg/SVGAElement.idl: Added.
30623 * ksvg2/svg/SVGAngle.idl:
30624 * ksvg2/svg/SVGAnimateColorElement.idl: Added.
30625 * ksvg2/svg/SVGAnimateElement.idl: Added.
30626 * ksvg2/svg/SVGAnimateTransformElement.idl: Added.
30627 * ksvg2/svg/SVGAnimatedLengthList.idl: Added.
30628 * ksvg2/svg/SVGAnimatedNumberList.idl: Added.
30629 * ksvg2/svg/SVGAnimatedTransformList.idl: Added.
30630 * ksvg2/svg/SVGAnimationElement.idl: Added.
30631 * ksvg2/svg/SVGCircleElement.idl: Added.
30632 * ksvg2/svg/SVGClipPathElement.idl: Added.
30633 * ksvg2/svg/SVGColor.idl:
30634 * ksvg2/svg/SVGComponentTransferFunctionElement.idl: Added.
30635 * ksvg2/svg/SVGCursorElement.idl: Added.
30636 * ksvg2/svg/SVGDefsElement.idl: Added.
30637 * ksvg2/svg/SVGDescElement.idl: Added.
30638 * ksvg2/svg/SVGEllipseElement.idl: Added.
30639 * ksvg2/svg/SVGEvent.idl:
30640 * ksvg2/svg/SVGExternalResourcesRequired.idl: Added.
30641 * ksvg2/svg/SVGFEBlendElement.idl: Added.
30642 * ksvg2/svg/SVGFEColorMatrixElement.idl: Added.
30643 * ksvg2/svg/SVGFEComponentTransferElement.idl: Added.
30644 * ksvg2/svg/SVGFECompositeElement.idl: Added.
30645 * ksvg2/svg/SVGFEDiffuseLightingElement.idl: Added.
30646 * ksvg2/svg/SVGFEDisplacementMapElement.idl: Added.
30647 * ksvg2/svg/SVGFEDistantLightElement.idl: Added.
30648 * ksvg2/svg/SVGFEFloodElement.idl: Added.
30649 * ksvg2/svg/SVGFEFuncAElement.idl: Added.
30650 * ksvg2/svg/SVGFEFuncBElement.idl: Added.
30651 * ksvg2/svg/SVGFEFuncGElement.idl: Added.
30652 * ksvg2/svg/SVGFEFuncRElement.idl: Added.
30653 * ksvg2/svg/SVGFEGaussianBlurElement.idl: Added.
30654 * ksvg2/svg/SVGFEImageElement.idl: Added.
30655 * ksvg2/svg/SVGFEMergeElement.idl: Added.
30656 * ksvg2/svg/SVGFEMergeNodeElement.idl: Added.
30657 * ksvg2/svg/SVGFEOffsetElement.idl: Added.
30658 * ksvg2/svg/SVGFEPointLightElement.idl: Added.
30659 * ksvg2/svg/SVGFESpecularLightingElement.idl: Added.
30660 * ksvg2/svg/SVGFESpotLightElement.idl: Added.
30661 * ksvg2/svg/SVGFETileElement.idl: Added.
30662 * ksvg2/svg/SVGFETurbulenceElement.idl: Added.
30663 * ksvg2/svg/SVGFilterElement.idl: Added.
30664 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl: Added.
30665 * ksvg2/svg/SVGFitToViewBox.idl: Added.
30666 * ksvg2/svg/SVGForeignObjectElement.idl: Added.
30667 * ksvg2/svg/SVGGElement.idl: Added.
30668 * ksvg2/svg/SVGGradientElement.idl: Added.
30669 * ksvg2/svg/SVGImageElement.idl: Added.
30670 * ksvg2/svg/SVGLangSpace.idl: Added.
30671 * ksvg2/svg/SVGLength.idl:
30672 * ksvg2/svg/SVGLengthList.idl: Added.
30673 * ksvg2/svg/SVGLineElement.idl: Added.
30674 * ksvg2/svg/SVGLinearGradientElement.idl: Added.
30675 * ksvg2/svg/SVGLocatable.idl: Added.
30676 * ksvg2/svg/SVGMarkerElement.idl: Added.
30677 * ksvg2/svg/SVGMaskElement.idl: Added.
30678 * ksvg2/svg/SVGNumberList.idl: Added.
30679 * ksvg2/svg/SVGPaint.idl: Added.
30680 * ksvg2/svg/SVGPathElement.idl:
30681 * ksvg2/svg/SVGPathSeg.idl:
30682 * ksvg2/svg/SVGPatternElement.idl: Added.
30683 * ksvg2/svg/SVGPointList.idl: Added.
30684 * ksvg2/svg/SVGPolygonElement.idl: Added.
30685 * ksvg2/svg/SVGPolylineElement.idl: Added.
30686 * ksvg2/svg/SVGPreserveAspectRatio.idl:
30687 * ksvg2/svg/SVGRadialGradientElement.idl: Added.
30688 * ksvg2/svg/SVGRectElement.idl: Added.
30689 * ksvg2/svg/SVGRenderingIntent.idl: Added.
30690 * ksvg2/svg/SVGSVGElement.idl:
30691 * ksvg2/svg/SVGScriptElement.idl: Added.
30692 * ksvg2/svg/SVGSetElement.idl: Added.
30693 * ksvg2/svg/SVGStopElement.idl: Added.
30694 * ksvg2/svg/SVGStringList.idl: Added.
30695 * ksvg2/svg/SVGStylable.idl: Added.
30696 * ksvg2/svg/SVGStyleElement.idl: Added.
30697 * ksvg2/svg/SVGSwitchElement.idl: Added.
30698 * ksvg2/svg/SVGSymbolElement.idl: Added.
30699 * ksvg2/svg/SVGTRefElement.idl: Added.
30700 * ksvg2/svg/SVGTSpanElement.idl: Added.
30701 * ksvg2/svg/SVGTests.idl: Added.
30702 * ksvg2/svg/SVGTextContentElement.idl: Added.
30703 * ksvg2/svg/SVGTextElement.idl: Added.
30704 * ksvg2/svg/SVGTextPositioningElement.idl: Added.
30705 * ksvg2/svg/SVGTitleElement.idl: Added.
30706 * ksvg2/svg/SVGTransform.idl:
30707 * ksvg2/svg/SVGTransformList.idl: Added.
30708 * ksvg2/svg/SVGTransformable.idl: Added.
30709 * ksvg2/svg/SVGURIReference.idl: Added.
30710 * ksvg2/svg/SVGUnitTypes.idl: Added.
30711 * ksvg2/svg/SVGUseElement.idl: Added.
30712 * ksvg2/svg/SVGViewElement.idl: Added.
30713 * ksvg2/svg/SVGZoomAndPan.idl: Added.
30714 * ksvg2/svg/SVGZoomEvent.idl: Added.
30716 2006-09-12 Adam Roben <aroben@apple.com>
30718 Reviewed by timo, ggaren.
30720 Make Icon ref-counted.
30722 * platform/FileChooser.h: Store m_icon as a RefPtr instead of
30724 * platform/Icon.h: Inherit from Shared<Icon>
30725 * platform/mac/FileChooserMac.mm:
30726 (WebCore::FileChooser::chooseFile): Update m_icon usage
30727 * platform/mac/IconMac.mm:
30728 (WebCore::Icon::newIconForFile): Return a RefPtr instead of an
30731 === Safari-521.26 ===
30733 2006-09-12 Nikolas Zimmermann <zimmermann@kde.org>
30735 Reviewed by Anders.
30737 Add exception codes to SVGList functions, adjust all code using it.
30739 Move SVGPaintType enums from ksvg.h into SVGPaint (needed for js generation)
30740 Move SVGUnitTypes enums from ksvg.h into it's own file SVGUnitType.h (ditto)
30741 Move SVGRenderingIntent enums from ksvg.h into it's own file SVGRenderingIntent.h (ditto)
30742 Move SVGZoomAndPan enums from ksvg.h into SVGSVGElement (ditto)
30743 Move SVGFE* related enums into their respecitive classes.
30745 Fix JSSVGNumber to operator on doubles, instead of floats.
30747 * ksvg2/bindings/js/JSSVGNumber.cpp:
30748 (WebCore::getJSSVGNumber):
30749 * ksvg2/bindings/js/JSSVGNumber.h:
30750 (WebCore::JSSVGNumber::JSSVGNumber):
30751 * ksvg2/css/SVGCSSParser.cpp:
30752 (WebCore::CSSParser::parseSVGValue):
30753 (WebCore::CSSParser::parseSVGPaint):
30754 * ksvg2/css/SVGRenderStyleDefs.cpp:
30755 (StyleFillData::operator==):
30757 * ksvg2/misc/KCanvasRenderingStyle.cpp:
30758 (WebCore::KSVGPainterFactory::isFilled):
30759 (WebCore::KSVGPainterFactory::fillPaintServer):
30760 (WebCore::KSVGPainterFactory::isStroked):
30761 (WebCore::KSVGPainterFactory::strokePaintServer):
30762 * ksvg2/misc/KSVGTimeScheduler.cpp:
30763 (WebCore::SVGTimer::notifyAll):
30764 * ksvg2/svg/SVGAnimateColorElement.cpp:
30765 (WebCore::SVGAnimateColorElement::handleTimerEvent):
30766 * ksvg2/svg/SVGAnimateTransformElement.cpp:
30767 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
30768 (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
30769 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
30770 (WebCore::SVGAnimateTransformElement::parseTransformValue):
30771 * ksvg2/svg/SVGAnimateTransformElement.h:
30772 * ksvg2/svg/SVGAnimatedTemplate.h:
30773 * ksvg2/svg/SVGAnimationElement.cpp:
30774 (SVGAnimationElement::getSimpleDuration):
30775 (SVGAnimationElement::parseMappedAttribute):
30776 (SVGAnimationElement::setTargetAttribute):
30777 * ksvg2/svg/SVGAnimationElement.h:
30778 * ksvg2/svg/SVGClipPathElement.cpp:
30779 (SVGClipPathElement::SVGClipPathElement):
30780 (SVGClipPathElement::parseMappedAttribute):
30781 (SVGClipPathElement::canvasResource):
30782 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
30783 (SVGComponentTransferFunctionElement::transferFunction):
30784 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
30785 (WebCore::SVGComponentTransferFunctionElement::):
30786 * ksvg2/svg/SVGDocument.cpp:
30787 (WebCore::SVGDocument::dispatchZoomEvent):
30788 (WebCore::SVGDocument::dispatchScrollEvent):
30789 * ksvg2/svg/SVGFEBlendElement.cpp:
30790 (WebCore::SVGFEBlendElement::parseMappedAttribute):
30791 (WebCore::SVGFEBlendElement::filterEffect):
30792 * ksvg2/svg/SVGFEBlendElement.h:
30793 (WebCore::SVGFEBlendElement::):
30794 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
30795 (SVGFEColorMatrixElement::parseMappedAttribute):
30796 (SVGFEColorMatrixElement::filterEffect):
30797 * ksvg2/svg/SVGFEColorMatrixElement.h:
30798 (WebCore::SVGFEColorMatrixElement::):
30799 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
30800 (WebCore::SVGFEComponentTransferElement::parseMappedAttribute):
30801 (WebCore::SVGFEComponentTransferElement::filterEffect):
30802 * ksvg2/svg/SVGFEComponentTransferElement.h:
30803 * ksvg2/svg/SVGFECompositeElement.cpp:
30804 (SVGFECompositeElement::parseMappedAttribute):
30805 (SVGFECompositeElement::filterEffect):
30806 * ksvg2/svg/SVGFECompositeElement.h:
30807 (WebCore::SVGFECompositeElement::):
30808 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
30809 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
30810 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
30811 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
30812 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
30813 (SVGFEDisplacementMapElement::parseMappedAttribute):
30814 (SVGFEDisplacementMapElement::filterEffect):
30815 * ksvg2/svg/SVGFEDisplacementMapElement.h:
30816 (WebCore::SVGFEDisplacementMapElement::):
30817 * ksvg2/svg/SVGFEFloodElement.cpp:
30818 (WebCore::SVGFEFloodElement::parseMappedAttribute):
30819 (WebCore::SVGFEFloodElement::filterEffect):
30820 * ksvg2/svg/SVGFEFloodElement.h:
30821 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
30822 (SVGFEGaussianBlurElement::parseMappedAttribute):
30823 (SVGFEGaussianBlurElement::filterEffect):
30824 * ksvg2/svg/SVGFEGaussianBlurElement.h:
30825 * ksvg2/svg/SVGFEMergeElement.cpp:
30826 (SVGFEMergeElement::filterEffect):
30827 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
30828 (SVGFEMergeNodeElement::parseMappedAttribute):
30829 * ksvg2/svg/SVGFEMergeNodeElement.h:
30830 * ksvg2/svg/SVGFEOffsetElement.cpp:
30831 (SVGFEOffsetElement::parseMappedAttribute):
30832 (SVGFEOffsetElement::filterEffect):
30833 * ksvg2/svg/SVGFEOffsetElement.h:
30834 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
30835 (SVGFESpecularLightingElement::parseMappedAttribute):
30836 (SVGFESpecularLightingElement::filterEffect):
30837 * ksvg2/svg/SVGFESpecularLightingElement.h:
30838 * ksvg2/svg/SVGFETileElement.cpp:
30839 (WebCore::SVGFETileElement::parseMappedAttribute):
30840 (WebCore::SVGFETileElement::filterEffect):
30841 * ksvg2/svg/SVGFETileElement.h:
30842 * ksvg2/svg/SVGFETurbulenceElement.h:
30843 (WebCore::SVGFETurbulenceElement::):
30844 * ksvg2/svg/SVGFilterElement.cpp:
30845 (SVGFilterElement::SVGFilterElement):
30846 (SVGFilterElement::parseMappedAttribute):
30847 (SVGFilterElement::canvasResource):
30848 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
30849 (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
30850 * ksvg2/svg/SVGGradientElement.cpp:
30851 (SVGGradientElement::SVGGradientElement):
30852 (SVGGradientElement::parseMappedAttribute):
30853 * ksvg2/svg/SVGGradientElement.h:
30854 (WebCore::SVGGradientElement::):
30855 * ksvg2/svg/SVGHelper.cpp:
30856 (WebCore::SVGHelper::ParseSeperatedList):
30857 * ksvg2/svg/SVGLengthList.cpp:
30858 (WebCore::SVGLengthList::parse):
30859 * ksvg2/svg/SVGLinearGradientElement.cpp:
30860 (SVGLinearGradientElement::buildGradient):
30861 * ksvg2/svg/SVGList.h:
30862 (WebCore::SVGListBase::clear):
30863 (WebCore::SVGListBase::initialize):
30864 (WebCore::SVGListBase::getItem):
30865 (WebCore::SVGListBase::insertItemBefore):
30866 (WebCore::SVGListBase::replaceItem):
30867 (WebCore::SVGListBase::removeItem):
30868 (WebCore::SVGListBase::appendItem):
30869 * ksvg2/svg/SVGLocatable.cpp:
30870 * ksvg2/svg/SVGLocatable.h:
30871 * ksvg2/svg/SVGMarkerElement.h:
30872 (WebCore::SVGMarkerElement::):
30873 * ksvg2/svg/SVGNumberList.cpp:
30874 (SVGNumberList::parse):
30875 * ksvg2/svg/SVGPaint.cpp:
30876 (WebCore::SVGPaint::SVGPaint):
30877 (WebCore::SVGPaint::uri):
30878 (WebCore::SVGPaint::setUri):
30879 (WebCore::SVGPaint::setPaint):
30880 * ksvg2/svg/SVGPaint.h:
30881 (WebCore::SVGPaint::):
30882 * ksvg2/svg/SVGPathElement.cpp:
30883 (WebCore::SVGPathElement::svgMoveTo):
30884 (WebCore::SVGPathElement::svgLineTo):
30885 (WebCore::SVGPathElement::svgLineToHorizontal):
30886 (WebCore::SVGPathElement::svgLineToVertical):
30887 (WebCore::SVGPathElement::svgCurveToCubic):
30888 (WebCore::SVGPathElement::svgCurveToCubicSmooth):
30889 (WebCore::SVGPathElement::svgCurveToQuadratic):
30890 (WebCore::SVGPathElement::svgCurveToQuadraticSmooth):
30891 (WebCore::SVGPathElement::svgArcTo):
30892 (WebCore::SVGPathElement::svgClosePath):
30893 (WebCore::SVGPathElement::parseMappedAttribute):
30894 (WebCore::SVGPathElement::toPathData):
30895 * ksvg2/svg/SVGPatternElement.cpp:
30896 (WebCore::SVGPatternElement::SVGPatternElement):
30897 (WebCore::SVGPatternElement::parseMappedAttribute):
30898 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
30899 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
30900 * ksvg2/svg/SVGPolyElement.cpp:
30901 (SVGPolyElement::parseMappedAttribute):
30902 (SVGPolyElement::svgPolyTo):
30903 (SVGPolyElement::notifyAttributeChange):
30904 * ksvg2/svg/SVGPolygonElement.cpp:
30905 (SVGPolygonElement::toPathData):
30906 * ksvg2/svg/SVGPolylineElement.cpp:
30907 (SVGPolylineElement::toPathData):
30908 * ksvg2/svg/SVGRadialGradientElement.cpp:
30909 (WebCore::SVGRadialGradientElement::buildGradient):
30910 * ksvg2/svg/SVGRenderingIntent.h: Added.
30911 (WebCore::SVGRenderingIntent::):
30912 (WebCore::SVGRenderingIntent::SVGRenderingIntent):
30913 (WebCore::SVGRenderingIntent::~SVGRenderingIntent):
30914 * ksvg2/svg/SVGSVGElement.h:
30915 (WebCore::SVGSVGElement::):
30916 * ksvg2/svg/SVGScriptElement.cpp:
30917 (WebCore::SVGScriptElement::type):
30918 (WebCore::SVGScriptElement::setType):
30919 (WebCore::SVGScriptElement::parseMappedAttribute):
30920 * ksvg2/svg/SVGScriptElement.h:
30921 * ksvg2/svg/SVGStringList.cpp:
30922 (WebCore::SVGStringList::reset):
30923 * ksvg2/svg/SVGStyledLocatableElement.cpp:
30924 (SVGStyledLocatableElement::getTransformToElement):
30925 * ksvg2/svg/SVGStyledLocatableElement.h:
30926 * ksvg2/svg/SVGStyledTransformableElement.cpp:
30927 (SVGStyledTransformableElement::parseMappedAttribute):
30928 (SVGStyledTransformableElement::getTransformToElement):
30929 * ksvg2/svg/SVGStyledTransformableElement.h:
30930 * ksvg2/svg/SVGTests.cpp:
30931 (WebCore::SVGTests::hasExtension):
30932 (WebCore::SVGTests::isValid):
30933 * ksvg2/svg/SVGTests.h:
30934 * ksvg2/svg/SVGTextContentElement.cpp:
30935 (SVGTextContentElement::getSubStringLength):
30936 (SVGTextContentElement::getStartPositionOfChar):
30937 (SVGTextContentElement::getEndPositionOfChar):
30938 (SVGTextContentElement::getExtentOfChar):
30939 (SVGTextContentElement::getRotationOfChar):
30940 (SVGTextContentElement::selectSubString):
30941 * ksvg2/svg/SVGTextContentElement.h:
30942 (WebCore::SVGTextContentElement::):
30943 * ksvg2/svg/SVGTextElement.cpp:
30944 (WebCore::SVGTextElement::parseMappedAttribute):
30945 * ksvg2/svg/SVGTextElement.h:
30946 (WebCore::SVGTextElement::getTransformToElement):
30947 * ksvg2/svg/SVGTransform.h:
30948 * ksvg2/svg/SVGTransformList.cpp:
30949 (SVGTransformList::consolidate):
30950 (SVGTransformList::concatenate):
30951 * ksvg2/svg/SVGTransformable.cpp:
30952 (SVGTransformable::parseTransformAttribute):
30953 * ksvg2/svg/SVGUnitTypes.h: Added.
30954 (WebCore::SVGUnitTypes::):
30955 (WebCore::SVGUnitTypes::SVGUnitTypes):
30956 (WebCore::SVGUnitTypes::~SVGUnitTypes):
30957 * ksvg2/svg/SVGUseElement.cpp:
30958 (SVGUseElement::closeRenderer):
30959 * ksvg2/svg/SVGViewElement.h:
30960 (WebCore::SVGViewElement::):
30961 * ksvg2/svg/SVGZoomAndPan.cpp:
30962 (WebCore::SVGZoomAndPan::SVGZoomAndPan):
30963 (WebCore::SVGZoomAndPan::parseMappedAttribute):
30965 2006-09-12 John Sullivan <sullivan@apple.com>
30967 Reviewed by Adele Peterson.
30969 * bridge/mac/FrameMac.mm:
30970 (WebCore::FrameMac::doTextFieldCommandFromEvent):
30971 Don't call textField:doCommandBySelector: with a nil selector. This was indirectly causing a
30972 (valid) assertion failure in some Safari code.
30974 2006-09-12 David Harrison <harrison@apple.com>
30976 Reviewed by John Sullivan.
30978 <rdar://problem/4717841> Setting AXFocused to true does not activate the insertion point in text field
30980 * bridge/mac/WebCoreAXObject.mm:
30981 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
30982 For AXFocus, use focus() if the node is an element, so that selection is set.
30983 Matches tabbing behavior in text fields and text areas.
30985 2006-09-12 Adam Roben <aroben@apple.com>
30989 Make uploading work with the new file upload control.
30991 * css/html4.css: Remove unnecessary style (this is already done in
30992 RenderFileUpload.cpp)
30993 * html/HTMLInputElement.cpp: Don't get the button text from the value
30994 attribute for file controls.
30995 (WebCore::HTMLInputElement::valueWithDefault):
30996 * platform/mac/FileChooserMac.mm: Call
30997 RenderFileUploadControl::valueChanged when the user selects a file.
30998 (WebCore::FileChooser::chooseFile):
30999 * rendering/RenderFileUploadControl.cpp: Add valueChanged() method to
31000 update the form and fire the onChange event.
31001 (WebCore::RenderFileUploadControl::valueChanged):
31002 (WebCore::RenderFileUploadControl::updateFromElement):
31003 * rendering/RenderFileUploadControl.h: Add valueChanged() declaration.
31005 2006-09-12 Adam Roben <aroben@apple.com>
31007 Adding rules to html4.css to style the button in file upload controls.
31011 2006-09-12 Adam Roben <aroben@apple.com>
31013 Reviewed many times by darin, hyatt.
31015 Switch to new engine-based implementation of <input type="file">
31017 * WebCore.exp: Remove obsolete symbol WebCoreFileButton
31018 * WebCore.xcodeproj/project.pbxproj: Remove files for old widget-based
31019 control, add files for new engine-based control
31020 * css/CSSSelector.cpp: Add support for new
31021 '-webkit-file-upload-button' pseudo element
31022 (WebCore::CSSSelector::extractPseudoType):
31023 * css/CSSSelector.h: Ditto.
31024 (WebCore::CSSSelector::):
31025 * css/cssstyleselector.cpp: Ditto.
31026 (WebCore::CSSStyleSelector::checkOneSelector):
31027 * html/HTMLInputElement.cpp: Send click events to new control
31028 (WebCore::HTMLInputElement::select):
31029 (WebCore::HTMLInputElement::click):
31030 (WebCore::HTMLInputElement::createRenderer):
31031 (WebCore::HTMLInputElement::valueWithDefault):
31032 (WebCore::HTMLInputElement::defaultEventHandler):
31033 * html/HTMLTextFieldInnerElement.h: Add 'virtual' keyword
31034 (WebCore::HTMLTextFieldInnerElement::shadowParentNode):
31035 * platform/FileButton.h: Removed.
31036 * platform/FileChooser.h: Added. This is the replacement for
31038 (WebCore::FileChooser::filename):
31039 (WebCore::FileChooser::icon):
31040 (WebCore::FileChooser::uploadControl):
31041 (WebCore::FileChooser::document):
31042 * platform/Icon.h: Added new platform-specific class representing a
31044 * platform/LocalizedStrings.h:
31045 * platform/mac/FileButtonMac.mm: Removed.
31046 * platform/mac/FileChooserMac.mm: Added. This is the replacement for
31048 (-[OpenPanelController initWithFileChooser:]):
31049 (-[OpenPanelController fileChooserDetachingSoon]):
31050 (-[OpenPanelController beginSheet]):
31051 (-[OpenPanelController chooseFilename:]):
31052 (-[OpenPanelController cancel]):
31053 (WebCore::FileChooser::FileChooser):
31054 (WebCore::FileChooser::~FileChooser):
31055 (WebCore::FileChooser::openFileChooser):
31056 (WebCore::FileChooser::basenameForWidth):
31057 (WebCore::FileChooser::uploadControlDetaching):
31058 (WebCore::FileChooser::chooseFile):
31059 * platform/mac/IconMac.mm: Added.
31060 (WebCore::Icon::Icon):
31061 (WebCore::Icon::~Icon):
31062 (WebCore::Icon::newIconForFile):
31063 (WebCore::Icon::paint):
31064 * platform/mac/LocalizedStringsMac.mm: Call across bridge to get
31066 (WebCore::fileButtonChooseFileLabel):
31067 (WebCore::fileButtonNoFileSelectedLabel):
31068 * rendering/RenderButton.cpp: Extract method setText() from
31070 (WebCore::RenderButton::updateFromElement):
31071 (WebCore::RenderButton::setText):
31072 * rendering/RenderButton.h: Add declaration for new setText method.
31073 * rendering/RenderFileButton.cpp: Removed.
31074 * rendering/RenderFileButton.h: Removed.
31075 * rendering/RenderFileUploadControl.cpp: Added. This is the
31076 replacement for RenderFileButton.cpp.
31077 (WebCore::RenderFileUploadInnerFileBox::renderName):
31078 (WebCore::HTMLFileUploadInnerButtonElement::isShadowNode):
31079 (WebCore::HTMLFileUploadInnerButtonElement::shadowParentNode):
31080 (WebCore::RenderFileUploadControl::RenderFileUploadControl):
31081 (WebCore::RenderFileUploadControl::~RenderFileUploadControl):
31082 (WebCore::RenderFileUploadControl::setStyle):
31083 (WebCore::RenderFileUploadControl::updateIconAndFilename):
31084 (WebCore::RenderFileUploadControl::click):
31085 (WebCore::RenderFileUploadControl::updateFromElement):
31086 (WebCore::RenderFileUploadControl::maxFilenameWidth):
31087 (WebCore::RenderFileUploadControl::createButtonStyle):
31088 (WebCore::RenderFileUploadControl::paintObject):
31089 (WebCore::RenderFileUploadInnerFileBox::RenderFileUploadInnerFileBox):
31090 (WebCore::RenderFileUploadInnerFileBox::setStyle):
31091 (WebCore::RenderFileUploadInnerFileBox::layout):
31092 (WebCore::RenderFileUploadInnerFileBox::setHasIcon):
31093 (WebCore::RenderFileUploadInnerFileBox::setFilename):
31094 (WebCore::RenderFileUploadInnerFileBox::calcMinMaxWidth):
31095 (WebCore::HTMLFileUploadInnerButtonElement::HTMLFileUploadInnerButtonElement):
31096 (WebCore::HTMLFileUploadInnerButtonElement::createRenderer):
31097 * rendering/RenderFileUploadControl.h: Added. This is the replacement
31098 for RenderFileButton.h.
31099 (WebCore::RenderFileUploadControl::renderName):
31100 * rendering/RenderStyle.cpp: Add support for
31101 -webkit-file-upload-button pseudo element.
31103 (WebCore::pseudoBit):
31104 * rendering/RenderStyle.h: Ditto.
31105 (WebCore::RenderStyle::):
31107 2006-09-12 Anders Carlsson <acarlsson@apple.com>
31109 Reviewed by John Sullivan.
31111 Do the plugin object cleanup in Frame::clear instead of setView.
31113 * bridge/mac/FrameMac.h:
31114 * bridge/mac/FrameMac.mm:
31115 (WebCore::FrameMac::setView):
31116 (WebCore::FrameMac::cleanupPluginObjects):
31118 (WebCore::Frame::clear):
31121 2006-09-12 MorganL <morlmor@yahoo.com>
31123 Reviewed/landed by aroben.
31125 Fixes http://bugs.webkit.org/show_bug.cgi?id=10822
31126 windows build is busted
31128 * WebCore.vcproj/WebCore/WebCore.vcproj: Add missing
31129 JSRangeException.{cpp,h} to project
31131 2006-09-12 David Hyatt <hyatt@apple.com>
31133 Fix fieldsets so that they properly expand to enclose overhanging floats
31134 when the fieldset has auto height. This is a nifty undocumented behavior
31135 of the fieldset element. The bug is 3898.
31139 Added fast/forms/fieldset-with-float.html
31141 * rendering/RenderBlock.cpp:
31142 (WebCore::RenderBlock::layoutBlock):
31143 * rendering/RenderFieldset.h:
31144 (WebCore::RenderFieldset::renderName):
31145 (WebCore::RenderFieldset::expandsToEncloseOverhangingFloats):
31146 * rendering/RenderObject.h:
31147 (WebCore::RenderObject::expandsToEncloseOverhangingFloats):
31148 * rendering/RenderTableCell.h:
31149 (WebCore::RenderTableCell::expandsToEncloseOverhangingFloats):
31151 2006-09-11 Eric Seidel <eric@webkit.org>
31155 REGRESSION: When dragging a link on a page, the selected link doesn't display it's name or URL
31156 http://bugs.webkit.org/show_bug.cgi?id=10819
31157 http://bugs.webkit.org/show_bug.cgi?id=10814
31159 No test cases were harmed in the coding of the patch.
31161 * platform/mac/WebCoreTextRenderer.mm:
31162 (WebCoreDrawTextAtPoint):
31164 2006-09-11 David Hyatt <hyatt@apple.com>
31166 Fix for bug 8126, column widths apply to the border boxes of cells.
31170 * rendering/RenderTableCell.cpp:
31171 (WebCore::RenderTableCell::styleOrColWidth):
31173 2006-09-11 Nikolas Zimmermann <zimmermann@kde.org>
31177 Fix Qt/Linux build.
31179 * CMakeLists.txt: Add dom/RangeException.idl to build & fix feature defines.
31181 2006-09-11 Nikolas Zimmermann <zimmermann@kde.org>
31183 Reviewed by eseidel. Landed by eseidel.
31185 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10750
31187 This finally fixes the SVGAnimated* classes JS bindings!
31189 - Move all SVGAnimated*.idl files from ksvg2/bindings/idl/svg to ksvg2/svg
31190 - Adjust XCode/Qt build files to generate the new idl files
31192 - Remove all SVGAnimated* primitives cpp implementations (Angle/Boolean/Color/Enumeration/Integer/Length/
31193 LengthList/Number/NumberList/PreserveAspectRatio/
31194 Rect/String/TransformList)
31196 - Remove unneeded methods from CodeGenerator.pm and add new helper function: IsSVGAnimatedType
31197 - Adjust CodeGeneratorJS.pm to the new SVGAnimated* tear-off concept
31199 - Add two new macros: ANIMATED_PROPERTY_EMPTY_DECLARATIONS / ANIMATED_PROPERTY_FORWARD_DECLARATIONS.
31200 This is used to fix multiple-inheritance issues in SVG with properties,
31201 similar like SVGTests::isValid() was fixed.
31203 - Rewrote SVGList using WTF::Vector, instead of DeprecatedPtrList and killed DOMList.
31204 (SVGAnimated*Lists work again now)
31206 - Adjust macros in SVGElement to create the "*Animated" tear-off classes.
31208 - Adjust all SVG classes which use the ANIMATED macros to include the ClassName as first param in the header.
31211 * DerivedSources.make:
31212 * WebCore.xcodeproj/project.pbxproj:
31213 * bindings/scripts/CodeGenerator.pm:
31214 * bindings/scripts/CodeGeneratorJS.pm:
31215 * kcanvas/RenderSVGImage.cpp:
31216 (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
31217 (WebCore::RenderSVGImage::paint):
31218 * kcanvas/RenderSVGText.cpp:
31219 (WebCore::RenderSVGText::translationForAttributes):
31221 * ksvg2/misc/SVGDocumentExtensions.h:
31222 (WebCore::FloatRect):
31223 * ksvg2/svg/SVGAElement.h:
31224 * ksvg2/svg/SVGAnimateColorElement.cpp:
31225 * ksvg2/svg/SVGAnimateColorElement.h:
31226 * ksvg2/svg/SVGAnimateTransformElement.h:
31227 * ksvg2/svg/SVGAnimatedTemplate.h:
31228 (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate):
31229 * ksvg2/svg/SVGAnimationElement.h:
31230 * ksvg2/svg/SVGCircleElement.h:
31231 * ksvg2/svg/SVGClipPathElement.h:
31232 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
31233 (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
31234 (SVGComponentTransferFunctionElement::transferFunction):
31235 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
31236 * ksvg2/svg/SVGCursorElement.h:
31237 * ksvg2/svg/SVGDefsElement.h:
31238 * ksvg2/svg/SVGElement.h:
31239 * ksvg2/svg/SVGElementInstanceList.cpp:
31240 (WebCore::SVGElementInstanceList::SVGElementInstanceList):
31241 * ksvg2/svg/SVGElementInstanceList.h:
31242 * ksvg2/svg/SVGEllipseElement.h:
31243 * ksvg2/svg/SVGExternalResourcesRequired.h:
31244 * ksvg2/svg/SVGFEBlendElement.h:
31245 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
31246 (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
31247 (SVGFEColorMatrixElement::parseMappedAttribute):
31248 (SVGFEColorMatrixElement::filterEffect):
31249 * ksvg2/svg/SVGFEColorMatrixElement.h:
31250 * ksvg2/svg/SVGFEComponentTransferElement.h:
31251 * ksvg2/svg/SVGFECompositeElement.h:
31252 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
31253 * ksvg2/svg/SVGFEDisplacementMapElement.h:
31254 * ksvg2/svg/SVGFEFloodElement.h:
31255 * ksvg2/svg/SVGFEGaussianBlurElement.h:
31256 * ksvg2/svg/SVGFEImageElement.h:
31257 * ksvg2/svg/SVGFELightElement.h:
31258 * ksvg2/svg/SVGFEMergeNodeElement.h:
31259 * ksvg2/svg/SVGFEOffsetElement.h:
31260 * ksvg2/svg/SVGFESpecularLightingElement.h:
31261 * ksvg2/svg/SVGFETileElement.h:
31262 * ksvg2/svg/SVGFETurbulenceElement.h:
31263 * ksvg2/svg/SVGFilterElement.h:
31264 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
31265 * ksvg2/svg/SVGFitToViewBox.cpp:
31266 (WebCore::SVGFitToViewBox::SVGFitToViewBox):
31267 (WebCore::SVGFitToViewBox::parseViewBox):
31268 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
31269 * ksvg2/svg/SVGFitToViewBox.h:
31270 * ksvg2/svg/SVGForeignObjectElement.h:
31271 * ksvg2/svg/SVGGElement.h:
31272 * ksvg2/svg/SVGGradientElement.cpp:
31273 (SVGGradientElement::SVGGradientElement):
31274 * ksvg2/svg/SVGGradientElement.h:
31275 * ksvg2/svg/SVGHelper.cpp:
31276 (WebCore::SVGHelper::PercentageOfViewport):
31277 * ksvg2/svg/SVGImageElement.h:
31278 * ksvg2/svg/SVGLength.cpp:
31279 * ksvg2/svg/SVGLengthList.cpp:
31280 (WebCore::SVGLengthList::SVGLengthList):
31281 (WebCore::SVGLengthList::parse):
31282 * ksvg2/svg/SVGLengthList.h:
31283 * ksvg2/svg/SVGLineElement.h:
31284 * ksvg2/svg/SVGLinearGradientElement.h:
31285 * ksvg2/svg/SVGList.h:
31286 (WebCore::SVGListBase::SVGListBase):
31287 (WebCore::SVGListBase::~SVGListBase):
31288 (WebCore::SVGListBase::numberOfItems):
31289 (WebCore::SVGListBase::clear):
31290 (WebCore::SVGListBase::initialize):
31291 (WebCore::SVGListBase::getFirst):
31292 (WebCore::SVGListBase::getLast):
31293 (WebCore::SVGListBase::getItem):
31294 (WebCore::SVGListBase::insertItemBefore):
31295 (WebCore::SVGListBase::replaceItem):
31296 (WebCore::SVGListBase::removeItem):
31297 (WebCore::SVGListBase::appendItem):
31298 (WebCore::SVGList::nullItem):
31300 * ksvg2/svg/SVGLocatable.cpp:
31301 * ksvg2/svg/SVGMarkerElement.h:
31302 * ksvg2/svg/SVGMaskElement.h:
31303 * ksvg2/svg/SVGNumberList.cpp:
31304 (SVGNumberList::SVGNumberList):
31305 (SVGNumberList::parse):
31306 * ksvg2/svg/SVGNumberList.h:
31307 * ksvg2/svg/SVGPathElement.cpp:
31308 (WebCore::SVGPathElement::pathSegList):
31309 * ksvg2/svg/SVGPathElement.h:
31310 * ksvg2/svg/SVGPathSegList.cpp:
31311 (WebCore::SVGPathSegList::SVGPathSegList):
31312 * ksvg2/svg/SVGPathSegList.h:
31313 * ksvg2/svg/SVGPatternElement.cpp:
31314 (WebCore::SVGPatternElement::SVGPatternElement):
31315 * ksvg2/svg/SVGPatternElement.h:
31316 * ksvg2/svg/SVGPointList.cpp:
31317 (SVGPointList::SVGPointList):
31318 * ksvg2/svg/SVGPointList.h:
31319 * ksvg2/svg/SVGPolyElement.cpp:
31320 (SVGPolyElement::points):
31321 (SVGPolyElement::svgPolyTo):
31322 (SVGPolyElement::notifyAttributeChange):
31323 * ksvg2/svg/SVGPolyElement.h:
31324 * ksvg2/svg/SVGPolygonElement.cpp:
31325 (SVGPolygonElement::toPathData):
31326 * ksvg2/svg/SVGPolylineElement.cpp:
31327 (SVGPolylineElement::toPathData):
31328 * ksvg2/svg/SVGPreserveAspectRatio.h:
31329 (WebCore::SVGPreserveAspectRatio::):
31330 * ksvg2/svg/SVGRadialGradientElement.h:
31331 * ksvg2/svg/SVGRectElement.h:
31332 * ksvg2/svg/SVGSVGElement.cpp:
31333 (WebCore::SVGSVGElement::SVGSVGElement):
31334 (WebCore::SVGSVGElement::parseMappedAttribute):
31335 (WebCore::SVGSVGElement::createRenderer):
31336 * ksvg2/svg/SVGSVGElement.h:
31337 * ksvg2/svg/SVGScriptElement.h:
31338 * ksvg2/svg/SVGStopElement.h:
31339 * ksvg2/svg/SVGStringList.cpp:
31340 (WebCore::SVGStringList::SVGStringList):
31341 (WebCore::SVGStringList::reset):
31342 * ksvg2/svg/SVGStringList.h:
31343 * ksvg2/svg/SVGStyledElement.h:
31344 * ksvg2/svg/SVGStyledLocatableElement.cpp:
31345 * ksvg2/svg/SVGStyledTransformableElement.cpp:
31346 (SVGStyledTransformableElement::SVGStyledTransformableElement):
31347 * ksvg2/svg/SVGStyledTransformableElement.h:
31348 * ksvg2/svg/SVGSwitchElement.h:
31349 * ksvg2/svg/SVGSymbolElement.h:
31350 * ksvg2/svg/SVGTRefElement.h:
31351 * ksvg2/svg/SVGTests.cpp:
31352 (WebCore::SVGTests::isValid):
31353 * ksvg2/svg/SVGTextContentElement.h:
31354 * ksvg2/svg/SVGTextElement.cpp:
31355 (WebCore::SVGTextElement::SVGTextElement):
31356 * ksvg2/svg/SVGTextElement.h:
31357 * ksvg2/svg/SVGTextPositioningElement.cpp:
31358 (SVGTextPositioningElement::SVGTextPositioningElement):
31359 (SVGTextPositioningElement::parseMappedAttribute):
31360 * ksvg2/svg/SVGTextPositioningElement.h:
31361 * ksvg2/svg/SVGTransformList.cpp:
31362 (SVGTransformList::SVGTransformList):
31363 (SVGTransformList::createSVGTransformFromMatrix):
31364 (SVGTransformList::consolidate):
31365 (SVGTransformList::concatenate):
31366 * ksvg2/svg/SVGTransformList.h:
31367 * ksvg2/svg/SVGURIReference.h:
31368 * ksvg2/svg/SVGUseElement.h:
31369 * ksvg2/svg/SVGViewElement.h:
31371 2006-09-11 Adam Roben <aroben@apple.com>
31373 Rubberstamped by Adele.
31375 Rename LocalGraphicsContext.{h,mm} to
31376 LocalCurrentGraphicsContext.{h,mm} to match the class name.
31378 * WebCore.xcodeproj/project.pbxproj:
31379 * platform/mac/LocalCurrentGraphicsContext.mm: Added.
31380 * platform/mac/LocalCurrentGraphicsContext.h: Added.
31381 * platform/mac/LocalGraphicsContext.h: Removed.
31382 * platform/mac/LocalGraphicsContext.mm: Removed.
31383 * rendering/RenderThemeMac.mm: Fix #include to match renamed file
31385 2006-09-11 Brady Eidson <beidson@apple.com>
31389 * WebCore.xcodeproj/project.pbxproj:
31391 2006-09-11 Kevin McCullough <KMcCullough@apple.com>
31395 - Implements comparePoint on the Range class
31397 - Exposes RangeExceptions in JavaScript
31399 * DerivedSources.make:
31400 * WebCore.xcodeproj/project.pbxproj:
31401 * bindings/js/kjs_binding.cpp:
31402 * bindings/objc/DOMInternal.mm:
31404 (WebCore::Range::comparePoint):
31405 (WebCore::Range::compareNode):
31407 (WebCore::Range::):
31409 * dom/RangeException.h: Added.
31411 * dom/RangeException.idl: Added.
31412 * page/DOMWindow.idl:
31414 2006-09-11 Adam Roben <aroben@apple.com>
31418 Fixes http://bugs.webkit.org/show_bug.cgi?id=10812
31419 Move LocalGraphicsContext out of RenderThemeMac
31421 * WebCore.xcodeproj/project.pbxproj:
31422 * platform/mac/LocalGraphicsContext.h: Added.
31423 * platform/mac/LocalGraphicsContext.mm: Added.
31424 (WebCore::LocalCurrentGraphicsContext::LocalCurrentGraphicsContext):
31425 (WebCore::LocalCurrentGraphicsContext::~LocalCurrentGraphicsContext):
31426 * rendering/RenderThemeMac.mm:
31428 2006-09-11 Vladimir Olexa <vladimir.olexa@gmail.com>
31432 - fix http://bugs.webkit.org/show_bug.cgi?id=10323
31433 REGRESSION: javascript: URL containing '\\' gets passed as '//'
31435 Test: fast/dom/javascript-backslash.html
31437 * platform/KURL.cpp: (WebCore::KURL::init): Don't do backslash
31438 substitution in JavaScript URLs.
31440 2006-09-11 Sam Weinig <sam.weinig@gmail.com>
31442 Reviewed by Darin and Tim H.
31444 Patch for http://bugs.webkit.org/show_bug.cgi?id=10792
31445 Remove the [Exclude=LANGUAGE] idiom from IDL's and code generators
31446 for something better
31448 - Replaces [Exclude=LANGUAGE] idiom with preprocessor #if defined(LANGUAGE)
31451 - Assorted whitespace changes to IDL files.
31453 * DerivedSources.make:
31454 * WebCore.xcodeproj/project.pbxproj:
31455 * bindings/objc/DOMEvents.h:
31456 * bindings/scripts/CodeGenerator.pm:
31457 * bindings/scripts/CodeGeneratorJS.pm:
31458 * bindings/scripts/CodeGeneratorObjC.pm:
31460 * css/CSSStyleDeclaration.idl:
31461 * css/CSSValue.idl:
31462 * dom/DOMImplementation.idl:
31463 * dom/Document.idl:
31466 * dom/KeyboardEvent.idl:
31467 * dom/MouseEvent.idl:
31468 * dom/NamedNodeMap.idl:
31469 * dom/NodeFilter.idl:
31471 * dom/WheelEvent.idl:
31472 * html/HTMLAnchorElement.idl:
31473 * html/HTMLAreaElement.idl:
31474 * html/HTMLDocument.idl:
31475 * html/HTMLElement.idl:
31476 * html/HTMLImageElement.idl:
31477 * html/HTMLInputElement.idl:
31478 * html/HTMLLinkElement.idl:
31479 * html/HTMLOptionsCollection.idl:
31481 2006-09-11 David Hyatt <hyatt@apple.com>
31483 Fix an unwitting victim of the kMin->min change. calcBlockMinMaxWidth
31484 was accidentally renamed to calcBlominMaxWidth.
31486 * rendering/RenderBlock.cpp:
31487 (WebCore::RenderBlock::calcMinMaxWidth):
31488 (WebCore::RenderBlock::calcBlockMinMaxWidth):
31489 * rendering/RenderBlock.h:
31491 2006-09-10 David Hyatt <hyatt@apple.com>
31493 Rework the printer font stuff a little bit so that the Font API doesn't
31494 have to be changed.
31496 Reviewed by eseidel
31498 * WebCore.xcodeproj/project.pbxproj:
31499 * bridge/mac/WebCoreStringTruncator.mm:
31501 (+[WebCoreStringTruncator widthOfString:font:]):
31502 * platform/Font.cpp:
31503 (WebCore::Font::drawSimpleText):
31505 * platform/TextStyle.h:
31506 (WebCore::TextStyle::TextStyle):
31507 (WebCore::TextStyle::attemptFontSubstitution):
31508 (WebCore::TextStyle::setRTL):
31509 * platform/mac/FontMac.mm:
31510 (WebCore::m_wordSpacing):
31511 (WebCore::Font::drawGlyphs):
31512 * platform/mac/ListBoxMac.mm:
31513 (itemTextRenderer):
31514 (groupLabelTextRenderer):
31515 (-[WebCoreTableView drawRow:clipRect:]):
31516 * platform/mac/PopUpButtonMac.mm:
31517 (PopUpButton::sizeHint):
31518 * platform/mac/TextFieldMac.mm:
31519 (-[NSSearchFieldCell _addStringToRecentSearches:]):
31520 * platform/mac/WebCoreTextRenderer.mm:
31521 (WebCoreDrawTextAtPoint):
31522 (WebCoreTextFloatWidth):
31523 * rendering/EllipsisBox.cpp:
31524 (WebCore::EllipsisBox::paint):
31525 * rendering/InlineTextBox.cpp:
31526 (WebCore::InlineTextBox::paint):
31527 * rendering/RenderImage.cpp:
31528 (WebCore::RenderImage::paint):
31529 * rendering/RenderListMarker.cpp:
31530 (WebCore::RenderListMarker::paint):
31532 2006-09-10 Brady Eidson <beidson@apple.com>
31536 Small cleanups + future plans
31538 * loader/icon/IconDatabase.cpp:
31539 (WebCore::IconDatabase::open): path separator cleanup
31540 * platform/Image.h:
31542 2006-09-10 Brady Eidson <beidson@apple.com>
31546 Added specialized HashTraits
31548 * platform/IntSizeHash.h:
31550 2006-09-10 Brady Eidson <beidson@apple.com>
31552 Forgetting header #define protection is BAAAAAD
31553 (and re-alphabetized the project file)
31555 * WebCore.xcodeproj/project.pbxproj:
31556 * platform/IntSizeHash.h:
31558 2006-09-10 Brady Eidson <beidson@apple.com>
31562 Moved the custom IntSize hash out of IconDatabase into a more generally useful file
31564 * WebCore.xcodeproj/project.pbxproj:
31565 * loader/icon/IconDatabase.h:
31566 * platform/IntSizeHash.h: Added.
31568 2006-09-10 David Hyatt <hyatt@apple.com>
31570 Fix for bug 10801, form controls that get styled suddenly lose their
31571 intrinsic margins. Move the intrinsic margin addition code into
31572 adjustRenderStyle and get it out of the theme code and the old form control
31577 * css/cssstyleselector.cpp:
31578 (WebCore::addIntrinsicMargins):
31579 (WebCore::CSSStyleSelector::adjustRenderStyle):
31581 * rendering/DeprecatedRenderSelect.h:
31582 (WebCore::DeprecatedRenderSelect::calcReplacedHeight):
31583 * rendering/DeprecatedSlider.h:
31584 * rendering/RenderFormElement.cpp:
31585 (WebCore::RenderFormElement::setStyle):
31586 * rendering/RenderFormElement.h:
31587 * rendering/RenderLayer.cpp:
31588 (WebCore::RenderLayer::resize):
31589 * rendering/RenderThemeMac.h:
31590 * rendering/RenderThemeMac.mm:
31591 (WebCore::RenderThemeMac::adjustButtonStyle):
31592 (WebCore::RenderThemeMac::adjustTextFieldStyle):
31593 (WebCore::RenderThemeMac::adjustTextAreaStyle):
31594 (WebCore::RenderThemeMac::adjustMenuListStyle):
31595 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
31596 * rendering/RenderThemeWin.cpp:
31597 (WebCore::RenderThemeWin::adjustButtonStyle):
31598 (WebCore::RenderThemeWin::adjustTextFieldStyle):
31599 (WebCore::RenderThemeWin::adjustTextAreaStyle):
31601 2006-09-10 Darin Adler <darin@apple.com>
31603 - test for http://bugs.webkit.org/show_bug.cgi?id=10547
31605 * manual-tests/target-test.html: Added.
31606 * manual-tests/targeted.html: Added.
31608 2006-09-10 Eric Seidel <eric@webkit.org>
31612 Remove a bunch more NSGraphicsContext related code.
31613 Add a LocalCurrentGraphicsContext to simplify methods which need to call up into AppKit controls (and thus depend on the [NSGraphicsContext currentContext] being set correctly)
31614 Add an "isPrinting" flag to many of the text drawing functions in order to avoid the need for a GraphicsContext::isPrinting() function.
31616 No tests were harmed in the making of this patch.
31618 * bridge/mac/WebCoreFrameBridge.mm:
31619 (-[WebCoreFrameBridge drawRect:]):
31620 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
31621 (WebCore::KRenderingDeviceContextQuartz::cgContext):
31622 (WebCore::KRenderingDeviceQuartz::isBuffered):
31623 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
31624 (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
31625 (WebCore::KRenderingDeviceContextQuartz::~KRenderingDeviceContextQuartz):
31626 * kcanvas/device/quartz/QuartzSupport.mm:
31627 * platform/Font.cpp:
31628 (WebCore::Font::drawSimpleText):
31629 (WebCore::Font::drawText):
31631 * platform/GraphicsContext.cpp:
31632 (WebCore::GraphicsContext::drawText):
31633 * platform/GraphicsContext.h:
31634 * platform/mac/FileButtonMac.mm:
31635 (-[WebFileChooserButton drawRect:]):
31636 * platform/mac/FontMac.mm:
31637 (WebCore::ATSULayoutParameters::ATSULayoutParameters):
31638 (WebCore::ATSULayoutParameters::initialize):
31639 (WebCore::Font::drawComplexText):
31640 (WebCore::Font::drawGlyphs):
31641 * platform/mac/GraphicsContextMac.mm:
31642 (WebCore::GraphicsContext::drawLineForMisspelling):
31643 * platform/mac/ListBoxMac.mm:
31644 (-[WebCoreTableView drawRow:clipRect:]):
31645 * platform/mac/WebCoreTextRenderer.mm:
31646 (WebCoreDrawTextAtPoint):
31647 * rendering/EllipsisBox.cpp:
31648 (WebCore::EllipsisBox::paint):
31649 * rendering/InlineTextBox.cpp:
31650 (WebCore::InlineTextBox::paint):
31651 * rendering/RenderImage.cpp:
31652 (WebCore::RenderImage::paint):
31653 * rendering/RenderListMarker.cpp:
31654 (WebCore::RenderListMarker::paint):
31655 * rendering/RenderThemeMac.mm:
31656 (WebCore::WebCoreNSGraphicsContextBridge::WebCoreNSGraphicsContextBridge):
31657 (WebCore::WebCoreNSGraphicsContextBridge::~WebCoreNSGraphicsContextBridge):
31658 (WebCore::RenderThemeMac::paintButton):
31659 (WebCore::RenderThemeMac::paintTextField):
31660 (WebCore::RenderThemeMac::paintTextArea):
31662 2006-09-09 Steve Falkenburg <sfalken@apple.com>
31664 Reviewed by aroben.
31666 Fixes to work with string API changes.
31668 * platform/cf/ResourceLoaderCFNet.cpp:
31669 (WebCore::arrayFromFormData):
31670 (WebCore::ResourceLoader::start):
31671 * platform/cf/StringCF.cpp:
31672 * platform/cf/StringImplCF.cpp:
31674 2006-09-09 David Hyatt <hyatt@apple.com>
31676 Fix for Bugzilla bug 5500, scrollLeft/Top/Width/Height properties not supported
31677 on textarea. Refactored the DOM getters and setters to go through the renderer
31678 instead of right to the layer. The renderer functions are virtual so that the
31679 text control can subclass and forward to its anonymous div.
31681 Fix for Bugzilla bug 10719, When positioned objects are sizing using their
31682 containing block width as a guide, they should not ever use the line width like
31683 non-positioned objects do.
31687 * WebCore.xcodeproj/project.pbxproj:
31689 (WebCore::Element::scrollLeft):
31690 (WebCore::Element::scrollTop):
31691 (WebCore::Element::setScrollLeft):
31692 (WebCore::Element::setScrollTop):
31693 * rendering/RenderBox.cpp:
31694 (WebCore::RenderBox::containingBlockWidthForPositioned):
31695 * rendering/RenderObject.cpp:
31696 (WebCore::RenderObject::clientWidth):
31697 (WebCore::RenderObject::clientHeight):
31698 (WebCore::RenderObject::scrollWidth):
31699 (WebCore::RenderObject::scrollHeight):
31700 (WebCore::RenderObject::scrollLeft):
31701 (WebCore::RenderObject::scrollTop):
31702 (WebCore::RenderObject::setScrollLeft):
31703 (WebCore::RenderObject::setScrollTop):
31704 (WebCore::RenderObject::hasStaticX):
31705 (WebCore::RenderObject::hasStaticY):
31706 * rendering/RenderObject.h:
31707 (WebCore::RenderObject::clientLeft):
31708 (WebCore::RenderObject::clientTop):
31709 * rendering/RenderTextControl.cpp:
31710 (WebCore::RenderTextControl::scrollWidth):
31711 (WebCore::RenderTextControl::scrollHeight):
31712 (WebCore::RenderTextControl::scrollLeft):
31713 (WebCore::RenderTextControl::scrollTop):
31714 (WebCore::RenderTextControl::setScrollLeft):
31715 (WebCore::RenderTextControl::setScrollTop):
31716 * rendering/RenderTextControl.h:
31718 2006-09-09 David Hyatt <hyatt@apple.com>
31720 Implement support for the WinIE clientLeft and clientTop extensions.
31725 (WebCore::Element::clientLeft):
31726 (WebCore::Element::clientTop):
31729 * rendering/RenderObject.h:
31730 (WebCore::RenderObject::clientLeft):
31731 (WebCore::RenderObject::clientTop):
31733 2006-09-09 Sam Weinig <sam.weinig@gmail.com>
31737 Patch for http://bugs.webkit.org/show_bug.cgi?id=10795
31738 Auto-generate the Objective-C DOM XPath bindings
31740 - Auto-generates DOMXPathExpression, DOMXPathNSResolver and DOMXPathResult.
31742 * DerivedSources.make:
31743 * WebCore.xcodeproj/project.pbxproj:
31744 * bindings/objc/DOMPrivate.h:
31745 * bindings/objc/DOMXPath.h:
31746 * bindings/objc/DOMXPath.mm:
31747 * bindings/objc/PublicDOMInterfaces.h:
31748 * xml/XPathExpression.idl:
31749 * xml/XPathNSResolver.idl:
31750 * xml/XPathResult.idl:
31752 2006-09-09 Sam Weinig <sam.weinig@gmail.com>
31756 Patch for http://bugs.webkit.org/show_bug.cgi?id=10791
31757 Even More Objective-C DOM auto-generation cleanup
31759 - Auto-generate some remaining extension methods for DOMDocument
31760 and DOMCSSStyleDeclaration.
31762 - Split DOMHTMLEmbedElement into it's own files. It can't be
31763 auto-generated yet because the Objective-C interface is significantly
31764 different from the implementation interface. Since HTMLEmbedElement
31765 is not in the W3C spec, this is somewhat of a gray area.
31767 - Auto-generate DOMEventListener protocol.
31769 - Clean up the IDL files by separating the extensions from the
31770 specified methods and attributes.
31772 * DerivedSources.make:
31773 * WebCore.xcodeproj/project.pbxproj:
31774 * bindings/objc/DOM.mm:
31775 * bindings/objc/DOMCSS.mm:
31776 * bindings/objc/DOMEventListener.h: Removed.
31777 * bindings/objc/DOMExtensions.h:
31778 * bindings/objc/DOMHTML.h:
31779 * bindings/objc/DOMHTML.mm:
31780 * bindings/objc/DOMHTMLEmbedElement.h: Added.
31781 * bindings/objc/DOMHTMLEmbedElement.mm: Added.
31782 (-[DOMHTMLEmbedElement align]):
31783 (-[DOMHTMLEmbedElement setAlign:]):
31784 (-[DOMHTMLEmbedElement height]):
31785 (-[DOMHTMLEmbedElement setHeight:]):
31786 (-[DOMHTMLEmbedElement name]):
31787 (-[DOMHTMLEmbedElement setName:]):
31788 (-[DOMHTMLEmbedElement src]):
31789 (-[DOMHTMLEmbedElement setSrc:]):
31790 (-[DOMHTMLEmbedElement type]):
31791 (-[DOMHTMLEmbedElement setType:]):
31792 (-[DOMHTMLEmbedElement width]):
31793 (-[DOMHTMLEmbedElement setWidth:]):
31794 * bindings/objc/DOMPrivate.h:
31795 * bindings/objc/PublicDOMInterfaces.h:
31796 * css/CSSStyleDeclaration.idl:
31797 * dom/Document.idl:
31798 * dom/KeyboardEvent.h:
31799 * dom/KeyboardEvent.idl:
31800 * dom/MouseEvent.idl:
31801 * dom/MutationEvent.idl:
31802 * dom/OverflowEvent.idl:
31804 * dom/WheelEvent.idl:
31805 * html/HTMLEmbedElement.idl: Added.
31807 2006-09-09 Eric Seidel <eric@webkit.org>
31811 Remove DeprecatedString usage and fix style.
31812 http://bugs.webkit.org/show_bug.cgi?id=10787
31814 No tests were harmed in the making of this patch.
31816 * kcanvas/KCanvasFilters.cpp:
31817 (WebCore::KCanvasFilterEffect::in):
31818 (WebCore::KCanvasFilterEffect::setIn):
31819 (WebCore::KCanvasFilterEffect::result):
31820 (WebCore::KCanvasFilterEffect::setResult):
31821 (WebCore::KCanvasFEMerge::externalRepresentation):
31822 * kcanvas/KCanvasFilters.h:
31823 (WebCore::KCanvasFEBlend::in2):
31824 (WebCore::KCanvasFEBlend::setIn2):
31825 (WebCore::KCanvasFEComposite::in2):
31826 (WebCore::KCanvasFEComposite::setIn2):
31827 (WebCore::KCanvasFEDisplacementMap::in2):
31828 (WebCore::KCanvasFEDisplacementMap::setIn2):
31829 (WebCore::KCanvasFEMerge::mergeInputs):
31830 (WebCore::KCanvasFEMerge::setMergeInputs):
31831 * kcanvas/KCanvasResources.cpp:
31832 (WebCore::KCanvasResource::idInRegistry):
31833 (WebCore::KCanvasResource::setIdInRegistry):
31834 (WebCore::getResourceById):
31835 * kcanvas/KCanvasResources.h:
31836 * kcanvas/RenderPath.cpp:
31837 (WebCore::RenderPath::getAbsoluteRepaintRect):
31838 (WebCore::RenderPath::paint):
31839 (WebCore::RenderPath::drawMarkersIfNeeded):
31840 * kcanvas/RenderSVGContainer.cpp:
31841 (WebCore::RenderSVGContainer::paint):
31842 (WebCore::RenderSVGContainer::getAbsoluteRepaintRect):
31843 * kcanvas/RenderSVGImage.cpp:
31844 (WebCore::RenderSVGImage::paint):
31845 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
31846 * kcanvas/RenderSVGText.cpp:
31847 (WebCore::RenderSVGText::paint):
31848 * kcanvas/device/KRenderingPaintServer.h:
31849 (WebCore::KRenderingPaintServer::idInRegistry):
31850 (WebCore::KRenderingPaintServer::setIdInRegistry):
31851 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
31852 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
31853 (WebCore::KCanvasFilterQuartz::imageForName):
31854 (WebCore::KCanvasFilterQuartz::setImageForName):
31855 (WebCore::KCanvasFEMergeQuartz::getCIFilter):
31856 * ksvg2/css/SVGCSSStyleSelector.cpp:
31857 (WebCore::CSSStyleSelector::applySVGProperty):
31858 * ksvg2/css/SVGRenderStyle.cpp:
31859 * ksvg2/css/SVGRenderStyle.h:
31860 * ksvg2/css/SVGRenderStyleDefs.h:
31861 * ksvg2/ecma/GlobalObject.cpp:
31862 (GlobalObject::get):
31863 * ksvg2/misc/KSVGTimeScheduler.cpp:
31864 (WebCore::SVGTimer::notifyAll):
31865 * ksvg2/svg/SVGDescElement.cpp:
31866 (WebCore::SVGDescElement::SVGDescElement):
31867 (WebCore::SVGDescElement::description):
31868 * ksvg2/svg/SVGDescElement.h:
31869 * ksvg2/svg/SVGFEBlendElement.cpp:
31870 (WebCore::SVGFEBlendElement::SVGFEBlendElement):
31871 (WebCore::SVGFEBlendElement::filterEffect):
31872 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
31873 (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
31874 (SVGFEColorMatrixElement::filterEffect):
31875 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
31876 (WebCore::SVGFEComponentTransferElement::SVGFEComponentTransferElement):
31877 (WebCore::SVGFEComponentTransferElement::filterEffect):
31878 * ksvg2/svg/SVGFECompositeElement.cpp:
31879 (SVGFECompositeElement::SVGFECompositeElement):
31880 (SVGFECompositeElement::filterEffect):
31881 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
31882 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
31883 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
31884 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
31885 (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
31886 (SVGFEDisplacementMapElement::filterEffect):
31887 * ksvg2/svg/SVGFEFloodElement.cpp:
31888 (WebCore::SVGFEFloodElement::SVGFEFloodElement):
31889 (WebCore::SVGFEFloodElement::filterEffect):
31890 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
31891 (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
31892 (SVGFEGaussianBlurElement::filterEffect):
31893 * ksvg2/svg/SVGFELightElement.cpp:
31894 * ksvg2/svg/SVGFEMergeElement.cpp:
31895 (SVGFEMergeElement::filterEffect):
31896 * ksvg2/svg/SVGFEOffsetElement.cpp:
31897 (SVGFEOffsetElement::SVGFEOffsetElement):
31898 (SVGFEOffsetElement::filterEffect):
31899 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
31900 (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
31901 (SVGFESpecularLightingElement::filterEffect):
31902 * ksvg2/svg/SVGFETileElement.cpp:
31903 (WebCore::SVGFETileElement::SVGFETileElement):
31904 (WebCore::SVGFETileElement::filterEffect):
31905 * ksvg2/svg/SVGFETurbulenceElement.cpp:
31906 (SVGFETurbulenceElement::SVGFETurbulenceElement):
31907 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
31908 (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
31909 * ksvg2/svg/SVGFitToViewBox.cpp:
31910 (WebCore::SVGFitToViewBox::parseViewBox):
31911 (WebCore::SVGFitToViewBox::parseMappedAttribute):
31912 * ksvg2/svg/SVGFitToViewBox.h:
31913 * ksvg2/svg/SVGLinearGradientElement.cpp:
31914 (SVGLinearGradientElement::buildGradient):
31915 * ksvg2/svg/SVGPatternElement.cpp:
31916 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
31917 (WebCore::SVGPatternElement::notifyAttributeChange):
31918 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
31919 (WebCore::SVGPreserveAspectRatio::SVGPreserveAspectRatio):
31920 (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
31921 (WebCore::SVGPreserveAspectRatio::getCTM):
31922 * ksvg2/svg/SVGPreserveAspectRatio.h:
31923 * ksvg2/svg/SVGRadialGradientElement.cpp:
31924 (WebCore::SVGRadialGradientElement::buildGradient):
31925 * ksvg2/svg/SVGStyleElement.cpp:
31926 * ksvg2/svg/SVGStyledTransformableElement.cpp:
31927 * ksvg2/svg/SVGViewElement.cpp:
31928 (WebCore::SVGViewElement::SVGViewElement):
31929 (WebCore::SVGViewElement::parseMappedAttribute):
31930 * ksvg2/svg/SVGZoomAndPan.cpp:
31931 (WebCore::SVGZoomAndPan::SVGZoomAndPan):
31933 2006-09-08 Darin Adler <darin@apple.com>
31937 <rdar://problem/4699166> REGRESSION: Background images in Mail stationery do not load
31939 Fixes the quoting logic. The previous logic did not account for the
31940 CSS tokenizer's regex character range between * and ~ as valid in URL types.
31942 * css/CSSPrimitiveValue.cpp:
31943 (WebCore::isCSSTokenizerURL):
31945 2006-09-09 Alexey Proskuryakov <ap@nypop.com>
31949 - http://bugs.webkit.org/show_bug.cgi?id=10759
31950 fast/AppleScript/array.html test failing
31952 * bridge/mac/WebCoreFrameBridge.mm:
31953 (aeDescFromJSValue): Convert integer values to typeSInt32 AE descriptors.
31955 2006-09-08 Eric Seidel <eric@webkit.org>
31959 Replace incorrect fooBaseValue() calls with foo() calls instead.
31960 http://bugs.webkit.org/show_bug.cgi?id=10746
31962 With the previously broken animation system, we had both base and anim values
31963 but they were not automatically connected/disconnected when animation started and stopped.
31964 So the animVals were basically never used (since they were always wrong).
31965 Now, animVal and baseVal are handled correctly.
31967 There are only 3 places in the code where we will ever need to use the BaseValue accessor variants.
31968 1. SVGAnimated* DOM bindings
31970 3. parseMappedAttribute implementations
31972 * kcanvas/RenderForeignObject.cpp:
31973 (WebCore::RenderForeignObject::translationForAttributes):
31974 * kcanvas/RenderSVGImage.cpp:
31975 (WebCore::RenderSVGImage::paint):
31976 (WebCore::RenderSVGImage::relativeBBox):
31977 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
31978 (WebCore::RenderSVGImage::translationForAttributes):
31979 * kcanvas/RenderSVGText.cpp:
31980 (WebCore::RenderSVGText::translationForAttributes):
31981 * ksvg2/misc/SVGImageLoader.cpp:
31982 (WebCore::SVGImageLoader::updateFromElement):
31983 * ksvg2/svg/SVGAElement.cpp:
31984 (WebCore::SVGAElement::defaultEventHandler):
31985 * ksvg2/svg/SVGCircleElement.cpp:
31986 (SVGCircleElement::parseMappedAttribute):
31987 (SVGCircleElement::toPathData):
31988 (SVGCircleElement::pushAttributeContext):
31989 (SVGCircleElement::hasPercentageValues):
31990 * ksvg2/svg/SVGClipPathElement.cpp:
31991 (SVGClipPathElement::canvasResource):
31992 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
31993 (SVGComponentTransferFunctionElement::transferFunction):
31994 * ksvg2/svg/SVGCursorElement.cpp:
31995 (SVGCursorElement::parseMappedAttribute):
31996 * ksvg2/svg/SVGEllipseElement.cpp:
31997 (WebCore::SVGEllipseElement::parseMappedAttribute):
31998 (WebCore::SVGEllipseElement::toPathData):
31999 (WebCore::SVGEllipseElement::pushAttributeContext):
32000 (WebCore::SVGEllipseElement::hasPercentageValues):
32001 * ksvg2/svg/SVGFEBlendElement.cpp:
32002 (SVGFEBlendElement::filterEffect):
32003 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
32004 (SVGFEColorMatrixElement::filterEffect):
32005 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
32006 (SVGFEComponentTransferElement::filterEffect):
32007 * ksvg2/svg/SVGFECompositeElement.cpp:
32008 (SVGFECompositeElement::filterEffect):
32009 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
32010 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
32011 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
32012 (SVGFEDisplacementMapElement::filterEffect):
32013 * ksvg2/svg/SVGFEDistantLightElement.cpp:
32014 (WebCore::SVGFEDistantLightElement::lightSource):
32015 * ksvg2/svg/SVGFEFloodElement.cpp:
32016 (SVGFEFloodElement::filterEffect):
32017 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
32018 (SVGFEGaussianBlurElement::filterEffect):
32019 * ksvg2/svg/SVGFEImageElement.cpp:
32020 (SVGFEImageElement::parseMappedAttribute):
32021 * ksvg2/svg/SVGFEMergeElement.cpp:
32022 (SVGFEMergeElement::SVGFEMergeElement):
32023 (SVGFEMergeElement::filterEffect):
32024 * ksvg2/svg/SVGFEOffsetElement.cpp:
32025 (SVGFEOffsetElement::filterEffect):
32026 * ksvg2/svg/SVGFEPointLightElement.cpp:
32027 (WebCore::SVGFEPointLightElement::SVGFEPointLightElement):
32028 (WebCore::SVGFEPointLightElement::lightSource):
32029 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
32030 (SVGFESpecularLightingElement::filterEffect):
32031 * ksvg2/svg/SVGFESpotLightElement.cpp:
32032 (WebCore::SVGFESpotLightElement::lightSource):
32033 * ksvg2/svg/SVGFETileElement.cpp:
32034 (SVGFETileElement::filterEffect):
32035 * ksvg2/svg/SVGFETurbulenceElement.cpp:
32036 (SVGFETurbulenceElement::filterEffect):
32037 * ksvg2/svg/SVGFilterElement.cpp:
32038 (SVGFilterElement::canvasResource):
32039 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
32040 (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
32041 * ksvg2/svg/SVGGradientElement.cpp:
32042 (SVGGradientElement::rebuildStops):
32043 * ksvg2/svg/SVGHelper.cpp:
32044 (WebCore::SVGHelper::PercentageOfViewport):
32045 * ksvg2/svg/SVGLineElement.cpp:
32046 (SVGLineElement::toPathData):
32047 (SVGLineElement::pushAttributeContext):
32048 (SVGLineElement::hasPercentageValues):
32049 * ksvg2/svg/SVGLinearGradientElement.cpp:
32050 (SVGLinearGradientElement::buildGradient):
32051 * ksvg2/svg/SVGMarkerElement.cpp:
32052 (WebCore::SVGMarkerElement::canvasResource):
32053 * ksvg2/svg/SVGMaskElement.cpp:
32054 (WebCore::SVGMaskElement::attributeChanged):
32055 (WebCore::SVGMaskElement::drawMaskerContent):
32056 * ksvg2/svg/SVGPatternElement.cpp:
32057 (WebCore::SVGPatternElement::pushAttributeContext):
32058 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
32059 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
32060 (WebCore::SVGPatternElement::notifyAttributeChange):
32061 (WebCore::SVGPatternElement::getCTM):
32062 * ksvg2/svg/SVGRadialGradientElement.cpp:
32063 (WebCore::SVGRadialGradientElement::buildGradient):
32064 * ksvg2/svg/SVGRectElement.cpp:
32065 (WebCore::SVGRectElement::toPathData):
32066 (WebCore::SVGRectElement::pushAttributeContext):
32067 (WebCore::SVGRectElement::hasPercentageValues):
32068 * ksvg2/svg/SVGSVGElement.cpp:
32069 (WebCore::SVGSVGElement::viewport):
32070 (WebCore::SVGSVGElement::parseMappedAttribute):
32071 (WebCore::SVGSVGElement::getCTM):
32072 (WebCore::SVGSVGElement::getScreenCTM):
32073 (WebCore::SVGSVGElement::createRenderer):
32074 * ksvg2/svg/SVGTRefElement.cpp:
32075 (SVGTRefElement::updateReferencedText):
32076 * ksvg2/svg/SVGUseElement.cpp:
32077 (SVGUseElement::closeRenderer):
32079 2006-09-08 Eric Seidel <eric@webkit.org>
32083 Remove the last vestiges of KDOM (KDOMCSSValue and KDOMCSSValueList)
32084 http://bugs.webkit.org/show_bug.cgi?id=10778
32086 * ksvg2/css/SVGCSSParser.cpp:
32087 (WebCore::CSSParser::parseSVGValue):
32088 (WebCore::CSSParser::parseSVGStrokeDasharray):
32089 (WebCore::CSSParser::parseSVGPaint):
32090 (WebCore::CSSParser::parseSVGColor):
32092 2006-09-07 Sam Weinig <sam.weinig@gmail.com>
32094 Reviewed by Darin and Tim H.
32096 Patch for http://bugs.webkit.org/show_bug.cgi?id=10774
32097 Auto-generate the Objective-C DOM Traversal bindings
32099 - Auto-generates DOMNodeIterator and DOMTreeWalker.
32101 - Splits out DOMNodeFilter into its own file.
32103 * DerivedSources.make:
32104 * WebCore.xcodeproj/project.pbxproj:
32105 * bindings/objc/DOM.mm:
32106 * bindings/objc/DOMNodeFilter.h: Added.
32107 * bindings/objc/DOMTraversal.h:
32108 * bindings/objc/PublicDOMInterfaces.h:
32109 * bindings/scripts/CodeGeneratorObjC.pm:
32110 * dom/NodeFilter.idl:
32111 * dom/NodeIterator.idl:
32113 * dom/TreeWalker.idl:
32115 2006-09-07 MorganL <morlmor@yahoo.com>
32117 Reviewed by Darin, landed by Adam.
32119 Fixes part of bug 10743: Windows build busted.
32121 * platform/win/FontCacheWin.cpp: Add missing #include, set svn:eol-style to native
32122 (WebCore::FontCache::getFontLinkInterface):
32123 (WebCore::FontCache::getFontDataForCharacters):
32124 * platform/win/FontDataWin.cpp: Ditto.
32125 (WebCore::FontData::platformWidthForGlyph):
32126 * platform/win/FontWin.cpp: Add missing #include, band-aid over const problem with GlyphBufferGlyph
32127 (WebCore::Font::drawGlyphs):
32128 * platform/win/ResourceLoaderWin.cpp: Add missing #include, change .ascii() to .latin1()
32129 (WebCore::ResourceLoaderWndProc):
32130 (WebCore::ResourceLoader::start):
32132 2006-09-07 Alexey Proskuryakov <ap@nypop.com>
32136 http://bugs.webkit.org/show_bug.cgi?id=10753
32137 REGRESSION: The beginning of a CSS file is missing
32139 Test: http/tests/incremental/slow-utf8-css.pl
32141 * loader/Decoder.cpp:
32142 (WebCore::Decoder::checkForCSSCharset): Use the same buffering logic as used for HTML.
32143 (WebCore::Decoder::decode):
32144 * loader/Decoder.h: Added a return value and a movedDataToBuffer parameter to
32145 checkForCSSCharset().
32147 2006-09-07 Sam Weinig <sam.weinig@gmail.com>
32151 Patch for http://bugs.webkit.org/show_bug.cgi?id=10766
32152 Auto-generate the Objective-C DOM Events bindings
32154 - Auto-generates DOMEvent, DOMKeyboardEvent, DOMMouseEvent, DOMMutationEvent,
32155 DOMOverflowEvent, DOMUIEvent, and DOMWheelEvent.
32157 - Splits out DOMEventListener and DOMEventTarget into their own files.
32159 * DerivedSources.make:
32160 * WebCore.xcodeproj/project.pbxproj:
32161 * bindings/objc/DOMEventListener.h: Added.
32162 * bindings/objc/DOMEventTarget.h: Added.
32163 * bindings/objc/DOMEvents.h:
32164 * bindings/objc/DOMEvents.mm:
32165 (-[DOMEvent WebCore::]):
32166 (-[DOMEvent _initWithEvent:WebCore::]):
32167 (+[DOMEvent _eventWith:WebCore::]):
32168 * bindings/objc/DOMEventsNonstandard.mm: Removed.
32169 * bindings/objc/DOMNode.h:
32170 * bindings/objc/PublicDOMInterfaces.h:
32171 * bindings/scripts/CodeGenerator.pm:
32172 * bindings/scripts/CodeGeneratorObjC.pm:
32174 * dom/EventListener.idl: Added.
32175 * dom/EventTarget.idl: Added.
32176 * dom/KeyboardEvent.idl:
32177 * dom/MouseEvent.idl:
32179 * dom/WheelEvent.idl:
32181 2006-09-07 Rob Buis <buis@kde.org>
32183 Reviewed by Maciej.
32185 http://bugs.webkit.org/show_bug.cgi?id=9753
32186 SVG with width and height 100% leaves room for scrollbar on the right.
32188 Relayout children of svg containers, except svg shapes that do not depend on percentages.
32190 * kcanvas/RenderPath.cpp:
32191 (WebCore::RenderPath::hasPercentageValues):
32192 * kcanvas/RenderPath.h:
32193 * kcanvas/RenderSVGContainer.cpp:
32194 (WebCore::RenderSVGContainer::layout):
32195 * ksvg2/svg/SVGCircleElement.cpp:
32196 (SVGCircleElement::hasPercentageValues):
32197 * ksvg2/svg/SVGCircleElement.h:
32198 * ksvg2/svg/SVGEllipseElement.cpp:
32199 (WebCore::SVGEllipseElement::hasPercentageValues):
32200 * ksvg2/svg/SVGEllipseElement.h:
32201 * ksvg2/svg/SVGLineElement.cpp:
32202 (SVGLineElement::hasPercentageValues):
32203 * ksvg2/svg/SVGLineElement.h:
32204 * ksvg2/svg/SVGRectElement.cpp:
32205 (WebCore::SVGRectElement::hasPercentageValues):
32206 * ksvg2/svg/SVGRectElement.h:
32207 * ksvg2/svg/SVGStyledElement.h:
32208 (WebCore::SVGStyledElement::hasPercentageValues):
32210 2006-09-06 Brady Eidson <beidson@apple.com>
32212 Constant renamed in 16250 wasn't changed in each use
32214 * platform/win/GlyphMapWin.cpp:
32215 (WebCore::GlyphMap::fillPage):
32217 2006-09-06 Darin Adler <darin@apple.com>
32219 Reviewed by Tim Hatcher.
32221 - fix crashes affecting editing layout tests (regressions from my vector change)
32223 * editing/BreakBlockquoteCommand.cpp:
32224 (WebCore::BreakBlockquoteCommand::doApply): Added check for empty vector.
32225 * editing/InsertParagraphSeparatorCommand.cpp:
32226 (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
32228 2006-09-06 David Harrison <harrison@apple.com>
32230 Reviewed and tweaked by Tim H.
32232 <rdar://problem/4564955> WebKit doesn't trigger Auto Font Activation
32234 If we don't find the font in the available fonts list, call [NSFont fontWithName:size:]
32235 to trigger a search that will include auto activation. No PLT or iBench perf impact.
32236 No layout tests affected. Not testable in an automated way that will work on all systems.
32238 * platform/mac/WebFontCache.mm:
32239 (+[WebFontCache fontWithFamily:traits:size:]):
32241 2006-09-06 Nikolas Zimmermann <zimmermann@kde.org>
32243 Reviewed and landed by ap.
32245 Fix Qt/Linux build.
32247 * CMakeLists.txt: Take out CharacterData.cpp from build / add new Text* files to build.
32248 * platform/qt/BrowserExtensionQt.cpp: Add wtf/Platform.h include.
32249 * platform/qt/FontCacheQt.cpp: Add FontData.h include.
32250 * platform/qt/FontQt.cpp:
32251 (WebCore::Font::drawGlyphs): Fix constness in reinterpret_cast.
32252 * platform/qt/FrameQt.cpp:
32253 (WebCore::FrameQt::markMisspellings): Change "SelectionController" param type to "Selection".
32254 (WebCore::FrameQt::respondToChangedSelection): Ditto.
32255 (WebCore::FrameQt::respondToChangedContents): Ditto.
32256 (WebCore::FrameQt::shouldChangeSelection): Ditto.
32257 * platform/qt/FrameQt.h: Ditto.
32258 * platform/qt/ImageQt.cpp:
32259 (WebCore::Image::supportsType): Fix String->QString conversion.
32260 * platform/qt/ResourceLoaderManager.cpp:
32261 (WebCore::ResourceLoaderManager::add): Fix String->DeprecatedString conversion.
32262 * platform/qt/ScrollViewCanvasQt.cpp:
32263 (WebCore::ScrollViewCanvasQt::handleKeyEvent): Adapt to SelectionController signature changes.
32264 * platform/qt/qt-encodings.txt: Removed.
32266 2006-09-06 Darin Adler <darin@apple.com>
32268 Reviewed by Tim Hatcher.
32270 - http://bugs.webkit.org/show_bug.cgi?id=10675
32271 tweak font-related headers and convert lists to vectors
32273 One major change was to greatly reduce the number of files that include Font.h.
32274 Another was to convert many uses of DeprecatedPtrList/DeprecatedValueList to Vector.
32276 * WebCore.xcodeproj/project.pbxproj: Added TextStyle.h.
32278 * bindings/objc/DOM.mm: (-[DOMElement _font]): Changed to not depend on
32279 Font::getNSFont since a WebCore::Font represents more than one NSFont.
32281 * bindings/objc/DOMNode.mm: (-[DOMNode lineBoxRects]): Updated to use Vector.
32282 * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
32283 * bridge/mac/FrameViewMac.mm: (WebCore::FrameView::updateDashboardRegions): Ditto.
32284 * css/CSSComputedStyleDeclaration.cpp:
32285 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Ditto.
32286 * dom/Document.cpp:
32287 (WebCore::Document::dashboardRegions): Ditto.
32288 (WebCore::Document::setDashboardRegions): Ditto.
32289 * dom/Document.h: Ditto.
32290 * editing/ReplaceSelectionCommand.cpp:
32291 (WebCore::ReplacementFragment::removeUnrenderedNodes): Ditto.
32292 * html/FormDataList.h: Ditto.
32293 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::isFocusable): Ditto.
32294 * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData): Ditto.
32295 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::absoluteRects): Ditto.
32296 * kcanvas/RenderPath.h: Ditto.
32297 * kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::absoluteRects): Ditto.
32298 * kcanvas/RenderSVGImage.h: Ditto.
32299 * kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): Ditto.
32300 * kcanvas/RenderSVGText.h: Ditto.
32301 * loader/FormData.cpp:
32302 (WebCore::FormData::flatten): Ditto.
32303 (WebCore::FormData::flattenToString): Ditto.
32304 * loader/FormData.h: (WebCore::FormData::elements): Ditto.
32305 * loader/mac/LoaderFunctionsMac.mm: (WebCore::ServeSynchronousRequest): Ditto.
32306 * page/Frame.cpp: (WebCore::Frame::markedTextUnderlines): Ditto.
32307 * page/Frame.h: Ditto.
32308 * page/FramePrivate.h: Ditto.
32309 * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start): Ditto.
32310 * rendering/InlineTextBox.h: Ditto.
32311 * rendering/InlineTextBox.cpp:
32312 (WebCore::InlineTextBox::paint): Ditto.
32313 (WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto.
32314 * rendering/RenderContainer.h: Ditto.
32315 * rendering/RenderContainer.cpp: (WebCore::RenderContainer::lineBoxRects): Ditto.
32316 * rendering/RenderInline.h: Ditto.
32317 * rendering/RenderInline.cpp: (WebCore::RenderInline::absoluteRects): Ditto.
32318 * rendering/RenderObject.h: Ditto.
32319 * rendering/RenderObject.cpp:
32320 (WebCore::RenderObject::lineBoxRects): Ditto.
32321 (WebCore::RenderObject::absoluteRects): Ditto.
32322 (WebCore::RenderObject::absoluteBoundingBoxRect): Ditto.
32323 (WebCore::RenderObject::addDashboardRegions): Ditto.
32324 (WebCore::RenderObject::collectDashboardRegions): Ditto.
32325 * rendering/RenderStyle.h: Ditto.
32326 * rendering/RenderStyle.cpp:
32327 (WebCore::RenderStyle::initialDashboardRegions): Ditto.
32328 (WebCore::RenderStyle::noneDashboardRegions): Ditto.
32329 * rendering/RenderText.h: Ditto.
32330 * rendering/RenderText.cpp:
32331 (WebCore::RenderText::absoluteRects): Ditto.
32332 (WebCore::RenderText::lineBoxRects): Ditto.
32333 * rendering/RenderView.h: Ditto.
32334 * rendering/RenderView.cpp: (WebCore::RenderView::absoluteRects): Ditto.
32336 * bridge/mac/FrameMac.mm:
32337 (WebCore::FrameMac::attributedString): Updated to use Vector and changed to not
32338 depend on getNSFont on a Font.
32339 (WebCore::FrameMac::fontForSelection): Changed to not depend on Font::getNSFont.
32340 (WebCore::FrameMac::fontAttributesForSelectionStart): Ditto.
32341 (WebCore::convertAttributesToUnderlines): Updated to use Vector.
32342 (WebCore::FrameMac::setMarkedTextRange): Ditto.
32343 (WebCore::FrameMac::dashboardRegionsDictionary): Ditto.
32345 * bridge/mac/WebCoreAXObject.mm:
32346 (boundingBoxRect): Updated to use Vector.
32347 (AXAttributeStringSetStyle): Changed to not depend on Font::getNSFont.
32349 * bridge/mac/WebCoreStringTruncator.mm: Updated includes.
32350 * page/Settings.h: Ditto.
32351 * platform/mac/WebCoreTextRenderer.mm: Ditto.
32352 * rendering/EllipsisBox.cpp: Ditto.
32354 * editing/BreakBlockquoteCommand.cpp: (WebCore::BreakBlockquoteCommand::doApply):
32355 Updated to use a Vector that we iterate in reverse order instead of a linked list
32356 that we reverse by prepending elements instead of adding to the end.
32357 * editing/InsertParagraphSeparatorCommand.cpp:
32358 (WebCore::InsertParagraphSeparatorCommand::doApply): Ditto.
32360 * loader/DocLoader.h: Removed unneeded include of DeprecatedPtrList.h.
32362 * platform/Font.h: Moved TextStyle to a separate header. Removed Font::getNSFont.
32363 * platform/Font.cpp: Changed to use const instead of #define.
32364 (WebCore::Font::width): Overloaded this so we don't have a default parameter, which
32365 eliminates the need to have TextStyle defined to compiler the Font.h header.
32367 * platform/TextStyle.h: Added.
32369 * platform/FontData.h: Added a forward declaration of ATSUStyle so this header
32372 * platform/FontFallbackList.h: Tweaks.
32373 * platform/FontFallbackList.cpp: Tweaks.
32375 * platform/FontFamily.h: Removed unneeded NSString declaration. Simplified class by
32376 using Shared and RefPtr, which resulted in removing many explicit functions.
32377 * platform/FontFamily.cpp: More of the same.
32379 * platform/GlyphBuffer.h: Removed unneeded MAX_GLYPH_EXPANSION and GLYPH_BUFFER_SIZE
32382 * platform/GlyphMap.h: Removed unneeded include of GlyphBuffer.h, which was included
32383 only for the typedef of Glyph; there's no reason to not just repeat that typedef here
32384 since C++ allows multiple typedefs if they match. Renamed the cGlyphPageSize constant
32385 to GlyphPage::size.
32386 * platform/GlyphMap.cpp: Changed NO_BREAK_SPACE and ZERO_WIDTH_SPACE macros into
32387 constants. Updated for cGlyphPageSize change.
32388 * platform/mac/GlyphMapMac.cpp: Updated for cGlyphPageSize change.
32390 * platform/GlyphWidthMap.h: Removed unneeded include of GlyphBuffer.h, which was included
32391 only for the typedef of Glyph; there's no reason to not just repeat that typedef here
32392 since C++ allows multiple typedefs if they match. Renamed the cGlyphWidthPageSize constant
32393 to GlyphWidthPage::size.
32394 * platform/GlyphWidthMap.cpp: Updated for cGlyphWidthPageSize change.
32396 * platform/GraphicsContext.h: Removed unneeded include of Font.h. Changed drawText
32397 function to use overloading instead of default parameters to allow TextStyle to be optional.
32398 This cuts the dependency on TextStyle.
32399 * platform/GraphicsContext.cpp: (WebCore::GraphicsContext::drawText): Added overload.
32401 * platform/Image.h: Removed unneeded forward declaration of IntSize.
32403 * platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters):
32404 Changed to not depend on Font::getNSFont.
32405 * platform/mac/ListBoxMac.mm: (-[WebCoreTableView fontChanged]): Ditto.
32406 * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
32408 * rendering/RenderPopupMenuMac.mm:
32409 (WebCore::RenderPopupMenuMac::showPopup): Ditto.
32410 (WebCore::RenderPopupMenuMac::addGroupLabel): Ditto.
32411 (WebCore::RenderPopupMenuMac::addOption): Ditto.
32413 * platform/mac/FontDataMac.mm: Fixed includes. Converted a bunch of macros to be
32414 constants and inline functions instead.
32416 * platform/mac/FontMac.mm: Fixed includes.
32417 * platform/mac/PopUpButtonMac.mm: Ditto.
32418 * rendering/RenderMenuList.cpp: Ditto.
32419 * rendering/RenderTextControl.cpp: Ditto.
32421 * platform/mac/WebCoreSystemInterface.h: Fixes so this header stands alone and is
32422 compatible with all 4 of C, ObjC, C++, ObjC++.
32424 2006-09-05 MorganL <morlmor@yahoocom>
32426 Reviewed/landed by aroben.
32428 Fixes bug 10743: Windows build is busted.
32430 * WebCore.vcproj/WebCore/WebCore.vcproj:
32431 * bridge/win/FrameWin.h:
32432 * platform/ResourceLoaderInternal.h:
32433 * platform/TextEncodingRegistry.cpp:
32434 * platform/win/ResourceLoaderWin.cpp:
32435 (WebCore::ResourceLoaderWndProc):
32436 (WebCore::ResourceLoader::start):
32437 * platform/win/TemporaryLinkStubs.cpp:
32438 (FrameWin::markMisspellings):
32439 (FrameWin::shouldChangeSelection):
32440 (FrameWin::respondToChangedSelection):
32441 (FrameWin::respondToChangedContents):
32442 (RenderThemeWin::adjustMenuListStyle):
32444 2006-09-05 Darin Adler <darin@apple.com>
32446 - some quick build fixes
32448 * bridge/mac/WebCoreAXObject.mm: Remove use of WebCore::UChar.
32449 * bridge/mac/WebCoreFrameBridge.mm: Ditto. Also remove include
32451 * css/CSSGrammar.y: Remove use of WebCore::UChar.
32452 * platform/UChar.h: Back out WebCore::UChar for now.
32454 2006-09-05 Darin Adler <darin@apple.com>
32456 Reviewed by Alexey.
32458 - http://bugs.webkit.org/show_bug.cgi?id=10728
32459 text encodings should work without a numeric ID
32461 - includes a fix for http://bugs.webkit.org/show_bug.cgi?id=10681
32462 REGRESSION: Reproducible crash at Wikipedia
32464 - fixed a bug where link elements would not set the charset properly for
32465 CSS stylesheets they loaded
32467 - converted DeprecatedString code paths that are related to decoding web
32468 pages to use String instead, to ensure that conversion back and forth won't
32471 Test: fast/encoding/css-link-charset.html
32472 Test: fast/forms/form-data-encoding-normalization-overrun.html
32474 Coverage for encoding issues is pretty good, so we probably don't need more
32475 tests to land this. Our existing tests did find issues with this patch while
32476 it was under development. And I suppose it would be nice to have even more tests.
32478 * platform/TextEncoding.h:
32479 * platform/TextEncoding.cpp:
32480 (WebCore::addEncodingName): Added. Used to build up the set used by isJapanese.
32481 (WebCore::TextEncoding::TextEncoding): Removed boolean "eight bit only" parameter and
32482 added an overload for String as well as const char*. Simplified because now the only
32483 data member is m_name -- calls the registry's atomicCanonicalTextEncodingName function
32484 to make the name canonical (resolve aliases) and atomic (use a single pointer for each
32485 encoding name so we can compare and hash efficiently).
32486 (WebCore::TextEncoding::decode): Renamed from toUnicode. Just a simple wrapper on top
32487 of TextDecoder that can be used when the data to decode is all present at once.
32488 (WebCore::TextEncoding::encode): Renamed from fromUnicode. Handles the normalization and
32489 then uses the registry to get a codec to handle the rest.
32490 (WebCore::TextEncoding::usesVisualOrdering): New implementation that compares with the
32491 name of the only encoding that uses visual ordering. We blur the concepts a bit so that
32492 we treat the visual ordering and logical ordering variations as two separate encodings.
32493 (WebCore::TextEncoding::isJapanese): New implementation that uses a set to efficiently
32494 determine if an encoding is Japanese.
32495 (WebCore::TextEncoding::backslashAsCurrencySymbol): New implementation that compares
32496 with the names of the two encodings that have the strange backslash.
32497 (WebCore::TextEncoding::closest8BitEquivalent): Added. Replaces the old "eight bit only"
32498 boolean parameter to the constructor.
32499 (WebCore::ASCIIEncoding): Added.
32500 (WebCore::Latin1Encoding): Added.
32501 (WebCore::UTF16BigEndianEncoding): Added.
32502 (WebCore::UTF16LittleEndianEncoding): Added.
32503 (WebCore::UTF8Encoding): Added.
32504 (WebCore::WindowsLatin1Encoding): Added.
32506 * platform/TextEncodingRegistry.h: Added.
32507 * platform/TextEncodingRegistry.cpp: Added. Keeps a table of all the character set
32508 aliases and names and another of all the codecs and parameters for each name.
32510 * platform/TextDecoder.h: Added.
32511 * platform/TextDecoder.cpp: Added. Contains logic to look for a BOM and hand the data
32512 to the proper codec, based on code that used to be in both the ICU and Mac codecs.
32514 * platform/StreamingTextDecoder.h: Renamed class to TextCodec. We'll rename
32515 the files in a later check-in. Moved creation functions into TextEncodingRegistry.h.
32516 Added typedefs of the registrar function types so classes derived from this one
32517 can use them without including the TextEncodingRegistry header. Renamed toUnicode
32518 and fromUnicode to decode and encode. Changed the parameter and return types so that
32519 the parameters are pointers to the data and the return types are String and CString.
32520 * platform/StreamingTextDecoder.cpp:
32521 (WebCore::TextCodec::appendOmittingBOM): Added. Helper function used by multiple
32522 classes derived from this one.
32524 * platform/TextCodecLatin1.h: Added.
32525 * platform/TextCodecLatin1.cpp: Added. Contains logic to handle encoding and decoding
32526 Windows Latin-1, based on code that used to be in both the ICU and Mac codecs.
32528 * platform/TextCodecUTF16.h: Added.
32529 * platform/TextCodecUTF16.cpp: Added. Contains logic to handle encoding and decoding
32530 UTF-16, based on code that used to be in both the ICU and Mac codecs.
32532 * platform/StreamingTextDecoderICU.h: Renamed class to TextCodecICU. We'll rename
32533 the files in a later check-in. Removed all the functions having to do with handling
32534 BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
32535 because that's superseded by the registry. Added registry hook functions.
32536 * platform/StreamingTextDecoderICU.cpp:
32537 (WebCore::TextCodecICU::registerEncodingNames): Added. Registers all encodings that
32538 ICU can handle with the "IANA" standard. Also includes a special case for a particular
32539 type of encoding for Hebrew that uses logical ordering. Also includes aliases that are
32540 not in ICU but that were historically known to WebKit for encodings that ICU handles.
32541 (WebCore::newTextCodecICU): Added. Used by registerCodecs.
32542 (WebCore::TextCodecICU::registerCodecs): Added. Registers codecs for the same encodings
32544 (WebCore::TextCodecICU::TextCodecICU): Much simplified since this now only handles the
32545 actual ICU encoding and decoding.
32546 (WebCore::TextCodecICU::~TextCodecICU): Renamed.
32547 (WebCore::TextCodecICU::releaseICUConverter): Changed to be a const member function.
32548 (WebCore::TextCodecICU::createICUConverter): Changed to be a const member function and
32549 to check if the cached converter can be reused in a simpler way.
32550 (WebCore::TextCodecICU::decode): Updated for changes to types.
32551 (WebCore::TextCodecICU::encode): Updated for changes to types, and removed normalization
32552 since this is now handled by the caller.
32554 * platform/mac/StreamingTextDecoderMac.h: Renamed class to TextCodecMac. We'll rename
32555 the files in a later check-in. Removed all the functions having to do with handling
32556 BOM, UTF-16, and Latin-1; those are now handled elsewhere. Removed textEncodingSupported
32557 because that's superseded by the registry. Added registry hook functions.
32558 * platform/mac/StreamingTextDecoderMac.cpp:
32559 (WebCore::TextCodecMac::registerEncodingNames): Added. Registers encodings based on
32560 the charset table generated by the make-charset-table.pl perl script.
32561 (WebCore::newTextCodecMac): Added. Used by registerCodecs.
32562 (WebCore::TextCodecMac::registerCodecs): Added. Registers codecs for the same encodings
32564 (WebCore::TextCodecMac::TextCodecMac): Much simplified since this now only handles the
32565 actual TEC/CF encoding and decoding.
32566 (WebCore::TextCodecMac::~TextCodecMac): Renamed.
32567 (WebCore::TextCodecMac::releaseTECConverter): Changed to be a const member function.
32568 (WebCore::TextCodecMac::createTECConverter): Changed to be a const member function.
32569 (WebCore::TextCodecMac::decode): Updated for changes to types.
32570 (WebCore::TextCodecMac::encode): Updated for changes to types, and removed normalization
32571 since this is now handled by the caller.
32573 * platform/mac/mac-encodings.txt: Removed most of the names in this file. This now
32574 only includes encodings where we want to use Mac OS X Carbon Text Encoding Converter,
32575 which is only encodings that are not supported by ICU.
32576 * platform/make-charset-table.pl: Removed flags from output. We don't use them any more.
32577 * platform/CharsetData.h: Changed from a platform-independent header into a
32578 Macintosh-specific one. A later patch should move this and rename it. Also
32579 subsumes ExtraCFEncodings.h.
32581 * WebCore.xcodeproj/project.pbxproj: Added new files. Changed the prefix on the
32582 "make character sets" rule to be kTextEncoding instead of kCFStringEncoding.
32584 * loader/Decoder.h: Change the default encoding parameter to the constructor to be
32585 a TextEncoding object. Renamed setEncodingName to setEncoding, and made it take a
32586 TextEncoding for the encoding. Removed the encodingName and visuallyOrdered functions,
32587 since TextEncoding supports both directly in a straightforward way. Changed both
32588 decode and flush functions to return String instead of DeprecatedString. Added a
32589 number of private functions to factor this class a bit more so it's easier to read.
32590 Got rid of a number of redundant data members. Changed the buffer to a Vector<char>.
32591 * loader/Decoder.cpp:
32592 (WebCore::Decoder::determineContentType): Added. Used by constructor to determine
32593 the content type based on the passed-in MIME type.
32594 (WebCore::Decoder::defaultEncoding): Added. Used by constructor to determine the
32595 default encoding based on the passed in default and the content type.
32596 (WebCore::Decoder::Decoder): Changed to use the functions above. Also renamed
32597 m_reachedBody to m_checkedForHeadCharset.
32598 (WebCore::Decoder::setEncoding): Renamed and changed to take an encoding rather
32599 than an encoding name.
32600 (WebCore::Decoder::checkForBOM): Factored out of decode.
32601 (WebCore::Decoder::checkForCSSCharset): Factored out of decode.
32602 (WebCore::Decoder::checkForHeadCharset): Factored out of decode.
32603 (WebCore::Decoder::detectJapaneseEncoding): Factored out of decode.
32604 (WebCore::Decoder::decode): Refactored so it's no longer one huge function.
32605 Changed to use the new Vector<char> and the new API for TextDecoder.
32606 (WebCore::Decoder::flush): Added code to empty out the buffer. Not an issue in
32607 practice since we don't re-use the decoder after flushing it.
32609 * platform/UChar.h: Added. Has the type named WebCore::UChar that we'll be switching
32610 to. We'll switch away from the ICU ::UChar type, because we don't want to be so
32611 closely tied to ICU -- include this instead of <unicode/umachine.h>.
32613 * platform/PlatformString.h:
32614 * platform/String.cpp:
32615 (WebCore::String::latin1): Updated for changes to TextEncoding.
32616 (WebCore::String::utf8): Ditto.
32617 (WebCore::String::newUninitialized): Added. Gives a way to create a String and
32618 then write directly into its buffer.
32620 * platform/StringImpl.h: Changed return value for charactersWithNullTermination to
32621 be a const UChar*. While it's true that this function changes the underlying
32622 StringImpl, the characters still shouldn't be modified with the returned pointer.
32623 * platform/StringImpl.cpp:
32624 (WebCore::StringImpl::charactersWithNullTermination): Updated for change above.
32625 (WebCore::StringImpl::newUninitialized): Added. Gives a way to create a StringImpl
32626 and then write directly into its buffer.
32628 * platform/CString.h:
32629 * platform/CString.cpp: (WebCore::CString::newUninitialized): Added. Gives a way
32630 to create a CString and then write directly into its buffer.
32632 * bridge/mac/WebCoreFrameBridge.h: Removed textEncoding method, and replaced
32633 +[WebCoreFrameBridge stringWithData:textEncoding:] with
32634 -[WebCoreFrameBridge stringWithData:] to avoid having to pass text encoding
32636 * bridge/mac/WebCoreFrameBridge.mm:
32637 (-[WebCoreFrameBridge setEncoding:userChosen:]): Removed now-unneeded conversion
32638 to DeprecatedString.
32639 (-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
32641 (-[WebCoreFrameBridge aeDescByEvaluatingJavaScriptFromString:]): Ditto.
32642 (-[WebCoreFrameBridge referrer]): Removed now-unneeded call to getNSString.
32643 (-[WebCoreFrameBridge stringWithData:]): Added. Asks the document's decoder
32644 what its encoding is, and decodes using that.
32645 (+[WebCoreFrameBridge stringWithData:textEncodingName:]): Simplified so it
32646 no longer involved a text encoding ID number.
32647 (-[WebCoreFrameBridge smartInsertForString:replacingRange:beforeString:afterString:]):
32648 Changed to use UChar instead of DeprecatedChar.
32649 (-[WebCoreFrameBridge documentFragmentWithMarkupString:baseURLString:]): Removed
32650 now-unneeded conversion to DeprecatedString.
32651 (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Ditto.
32653 * html/HTMLFormElement.cpp:
32654 (WebCore::encodeCString): Changed parameter to CString.
32655 (WebCore::HTMLFormElement::formData): Updated code for improvements to TextEncoding.
32657 * loader/CachedCSSStyleSheet.h:
32658 * loader/CachedCSSStyleSheet.cpp:
32659 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet): Fixed mistake where the
32660 decoder was created without passing in the character set. Also changed from
32661 DeprecatedString to String.
32662 (WebCore::CachedCSSStyleSheet::setCharset): More of the same.
32664 * bindings/js/kjs_window.h: (KJS::ScheduledAction::ScheduledAction): Changed
32665 to use String instead of DeprecatedString, UChar instead of DeprecatedChar,
32666 CString instead of DeprecatedCString, etc.
32667 * bridge/mac/FormDataMac.mm: (WebCore::arrayFromFormData): Ditto.
32668 * bridge/mac/FrameMac.h: Ditto.
32669 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::isCharacterSmartReplaceExempt):
32671 * bridge/mac/WebCoreAXObject.mm:
32672 (-[WebCoreAXObject helpText]): Ditto.
32673 (-[WebCoreAXObject value]): Ditto.
32674 (-[WebCoreAXObject accessibilityDescription]): Ditto.
32675 (-[WebCoreAXObject doAXStringForTextMarkerRange:]): Ditto.
32676 * bridge/mac/WebCoreEncodings.mm: (+[WebCoreEncodings decodeData:]): Ditto.
32677 Also fixed code that does a deref without a ref to use RefPtr instead.
32678 * bridge/mac/WebCoreScriptDebugger.mm:
32679 (-[WebCoreScriptCallFrame evaluateWebScript:]): Ditto.
32680 * bridge/mac/WebCoreSettings.mm:
32681 (-[WebCoreSettings setDefaultTextEncoding:]): Ditto.
32682 * css/CSSImportRule.cpp: (WebCore::CSSImportRule::insertedIntoParent): Ditto.
32683 * css/cssparser.cpp: (WebCore::CSSParser::lex): Ditto.
32685 * dom/Document.cpp:
32686 (WebCore::Document::setCharset): Ditto.
32687 (WebCore::Document::write): Ditto.
32688 (WebCore::Document::determineParseMode): Ditto.
32689 * dom/ProcessingInstruction.cpp:
32690 (WebCore::ProcessingInstruction::checkStyleSheet): Ditto.
32691 * dom/XMLTokenizer.h:
32692 * dom/XMLTokenizer.cpp:
32693 (WebCore::shouldAllowExternalLoad): Ditto.
32694 (WebCore::createStringParser): Ditto.
32695 (WebCore::XMLTokenizer::write): Ditto.
32696 (WebCore::toString): Ditto.
32697 (WebCore::handleElementAttributes): Ditto.
32698 (WebCore::XMLTokenizer::startElementNs): Ditto.
32699 (WebCore::XMLTokenizer::endElementNs): Ditto.
32700 (WebCore::XMLTokenizer::characters): Ditto.
32701 (WebCore::XMLTokenizer::processingInstruction): Ditto.
32702 (WebCore::XMLTokenizer::cdataBlock): Ditto.
32703 (WebCore::XMLTokenizer::comment): Ditto.
32704 (WebCore::XMLTokenizer::internalSubset): Ditto.
32705 (WebCore::getXHTMLEntity): Ditto.
32706 (WebCore::externalSubsetHandler): Ditto.
32707 (WebCore::XMLTokenizer::initializeParserContext): Ditto.
32708 (WebCore::XMLTokenizer::notifyFinished): Ditto.
32709 (WebCore::xmlDocPtrForString): Ditto.
32710 (WebCore::parseXMLDocumentFragment): Ditto.
32711 (WebCore::attributesStartElementNsHandler): Ditto.
32712 (WebCore::parseAttributes): Ditto.
32713 * html/FormDataList.h:
32714 * html/FormDataList.cpp:
32715 (WebCore::FormDataList::appendString): Ditto. Also changed to call the
32716 encoding function by its new name and with new parameters.
32717 (WebCore::FormDataList::appendFile): Ditto.
32718 * html/HTMLDocument.h:
32719 * html/HTMLDocument.cpp:
32720 (WebCore::parseDocTypePart): Ditto.
32721 (WebCore::containsString): Ditto.
32722 (WebCore::parseDocTypeDeclaration): Ditto.
32723 (WebCore::HTMLDocument::determineParseMode): Ditto.
32724 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::appendFormData): Ditto.
32725 * html/HTMLScriptElement.cpp:
32726 (WebCore::HTMLScriptElement::parseMappedAttribute): Ditto.
32727 * html/HTMLTokenizer.h:
32728 * html/HTMLTokenizer.cpp:
32729 (WebCore::HTMLTokenizer::scriptHandler): Ditto.
32730 (WebCore::HTMLTokenizer::parseTag): Ditto.
32731 (WebCore::HTMLTokenizer::write): Ditto.
32732 (WebCore::HTMLTokenizer::finish): Ditto.
32733 (WebCore::parseHTMLDocumentFragment): Ditto.
32735 * loader/Cache.cpp:
32736 (WebCore::Cache::requestStyleSheet): Ditto.
32737 (WebCore::Cache::requestScript): Ditto.
32738 * loader/CachedResource.h: Ditto.
32739 * loader/CachedScript.h:
32740 * loader/CachedScript.cpp:
32741 (WebCore::CachedScript::CachedScript): Ditto.
32742 (WebCore::CachedScript::ref): Ditto.
32743 (WebCore::CachedScript::deref): Ditto.
32744 (WebCore::CachedScript::setCharset): Ditto.
32745 (WebCore::CachedScript::data): Ditto.
32746 (WebCore::CachedScript::checkNotify): Ditto.
32747 * loader/CachedXBLDocument.h:
32748 * loader/CachedXBLDocument.cpp:
32749 (WebCore::CachedXBLDocument::setCharset): Ditto.
32750 * loader/CachedXSLStyleSheet.h:
32751 * loader/CachedXSLStyleSheet.cpp:
32752 (WebCore::CachedXSLStyleSheet::setCharset): Ditto.
32753 * loader/DocLoader.cpp:
32754 (WebCore::DocLoader::requestStyleSheet): Ditto.
32755 (WebCore::DocLoader::requestScript): Ditto.
32756 * loader/DocLoader.h: Ditto.
32757 * loader/FormData.h:
32758 * loader/FormData.cpp:
32759 (WebCore::FormData::FormData): Ditto.
32760 (WebCore::FormData::appendFile): Ditto.
32761 (WebCore::FormData::flattenToString): Ditto.
32763 * page/FramePrivate.h:
32765 (WebCore::UserStyleSheetLoader::setStyleSheet): Ditto.
32766 (WebCore::getString): Ditto.
32767 (WebCore::Frame::replaceContentsWithScriptResult): Ditto.
32768 (WebCore::Frame::executeScript): Ditto.
32769 (WebCore::Frame::clear): Ditto.
32770 (WebCore::Frame::write): Ditto.
32771 (WebCore::Frame::endIfNotLoading): Ditto.
32772 (WebCore::Frame::baseTarget): Ditto.
32773 (WebCore::Frame::scheduleRedirection): Ditto.
32774 (WebCore::Frame::scheduleLocationChange): Ditto.
32775 (WebCore::Frame::scheduleHistoryNavigation): Ditto.
32776 (WebCore::Frame::changeLocation): Ditto.
32777 (WebCore::Frame::redirectionTimerFired): Ditto.
32778 (WebCore::Frame::encoding): Ditto.
32779 (WebCore::Frame::submitForm): Ditto.
32780 (WebCore::Frame::referrer): Ditto.
32781 (WebCore::Frame::isCharacterSmartReplaceExempt): Ditto.
32782 (WebCore::Frame::setEncoding): Ditto.
32783 * page/Settings.h: Ditto.
32784 * platform/SegmentedString.h: Ditto.
32785 * platform/SegmentedString.cpp: Ditto.
32786 * xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::parseString): Ditto.
32787 * xml/XSLTProcessor.cpp:
32788 (WebCore::transformTextStringToXHTMLDocumentString): Ditto.
32789 (WebCore::XSLTProcessor::createDocumentFromSource): Ditto.
32790 * xml/xmlhttprequest.h:
32791 * xml/xmlhttprequest.cpp:
32792 (WebCore::XMLHttpRequest::open): Ditto.
32793 (WebCore::XMLHttpRequest::send): Ditto.
32794 (WebCore::XMLHttpRequest::receivedData): Ditto.
32796 * platform/DeprecatedString.cpp:
32797 (WebCore::DeprecatedString::fromUtf8): Updated for changes to TextEncoding.
32798 (WebCore::DeprecatedString::utf8): Ditto.
32801 * platform/KURL.cpp:
32802 (WebCore::KURL::KURL): Updated to overload based on presence or absence of
32803 TextEncoding rather than having a default.
32804 (WebCore::KURL::init): Moved body of constructor in here. Updated to use
32805 the new TextEncoding interface.
32806 (WebCore::KURL::decode_string): Updated to overload based on presence or
32807 absence of TextEncoding rather than having a default. Updated to use
32808 the new TextEncoding interface.
32809 (WebCore::encodeRelativeString): Updated to use the new TextEncoding interface.
32811 * platform/Font.cpp: (WebCore::WidthIterator::normalizeVoicingMarks): Fixed
32812 code to use U_ZERO_ERROR instead of a typecast.
32814 * bindings/js/kjs_proxy.h: Removed unneeded declaration of DeprecatedString.
32815 * platform/GraphicsContext.h: Ditto.
32817 * platform/GraphicsContext.cpp: Removed unneeded include of "DeprecatedString.h".
32818 * rendering/break_lines.cpp: Ditto.
32819 * xml/XMLSerializer.cpp: Ditto.
32821 * platform/mac/FontDataMac.mm: Removed unneeded include of <unicode/unorm.h>.
32823 * platform/CharsetNames.h: Emptied out this file. A later patch could remove it.
32824 * platform/CharsetNames.cpp: Ditto.
32825 * platform/mac/ExtraCFEncodings.h: Ditto.
32827 2006-09-05 Nikolas Zimmermann <zimmermann@kde.org>
32829 Reviewed by eseidel. Landed by eseidel.
32831 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10490
32833 -> Remove all SVGAnimated* usage from ksvg2.
32834 This is all done using a set of macros which live in svg/SVGElement.h
32835 (ANIMATED_PROPERTY_DECLARATIONS / ANIMATED_PROPERTY_DEFINITIONS).
32836 Transform all properties to this new concept using Eric ruby script.
32838 -> Replace all usages of "property()->baseVal()" with "propertyBaseValue()".
32839 -> Replace all usages of "property()->setBaseVal()" with "setPropertyBaseValue()".
32841 -> Add "virtual const SVGElement* contextElement() const".
32842 This concept allows to access the document (needed to access the SVGDocumentExtensions)
32843 from lowest-base-classes like SVGURIReference / SVGExternalResourcesRequired etc.
32845 These classes contain this contextElement() function as pure virtual functions.
32846 The topmost classes (like SVGCircleElement) implement this function with "return this".
32848 -> Move default value initialization to constructors.
32849 As the lazy_create usage, which was involved in default property initialization,
32850 has been removed, we need to do the initialization in the constructor.
32852 This forces us to fix the SVGLength class, as calling viewportElement() from the
32853 constructor does not work. This SVGLength cleanup is one of the next things to fix.
32855 * bindings/scripts/CodeGeneratorJS.pm:
32856 * kcanvas/RenderForeignObject.cpp:
32857 (WebCore::RenderForeignObject::translationForAttributes):
32858 * kcanvas/RenderSVGImage.cpp:
32859 (WebCore::RenderSVGImage::paint):
32860 (WebCore::RenderSVGImage::relativeBBox):
32861 (WebCore::RenderSVGImage::getAbsoluteRepaintRect):
32862 (WebCore::RenderSVGImage::translationForAttributes):
32863 * kcanvas/RenderSVGText.cpp:
32864 (WebCore::RenderSVGText::translationForAttributes):
32865 * ksvg2/misc/KSVGTimeScheduler.cpp:
32866 (WebCore::SVGTimer::notifyAll):
32867 * ksvg2/misc/SVGDocumentExtensions.cpp:
32868 * ksvg2/misc/SVGDocumentExtensions.h:
32869 (WebCore::SVGDocumentExtensions::baseValueMap):
32870 (WebCore::SVGDocumentExtensions::baseValue):
32871 (WebCore::SVGDocumentExtensions::setBaseValue):
32872 (WebCore::SVGDocumentExtensions::hasBaseValue):
32876 * ksvg2/misc/SVGImageLoader.cpp:
32877 (WebCore::SVGImageLoader::updateFromElement):
32878 * ksvg2/svg/SVGAElement.cpp:
32879 (WebCore::SVGAElement::parseMappedAttribute):
32880 (WebCore::SVGAElement::defaultEventHandler):
32881 * ksvg2/svg/SVGAElement.h:
32882 (WebCore::SVGAElement::contextElement):
32883 * ksvg2/svg/SVGAnimateColorElement.h:
32884 (WebCore::SVGAnimateColorElement::contextElement):
32885 * ksvg2/svg/SVGAnimateElement.h:
32886 (WebCore::SVGAnimateElement::contextElement):
32887 * ksvg2/svg/SVGAnimateTransformElement.cpp:
32888 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
32889 (WebCore::SVGAnimateTransformElement::initialMatrix):
32890 * ksvg2/svg/SVGAnimateTransformElement.h:
32891 (WebCore::SVGAnimateTransformElement::contextElement):
32892 * ksvg2/svg/SVGCircleElement.cpp:
32893 (SVGCircleElement::SVGCircleElement):
32894 (SVGCircleElement::parseMappedAttribute):
32895 (SVGCircleElement::toPathData):
32896 (SVGCircleElement::pushAttributeContext):
32897 * ksvg2/svg/SVGCircleElement.h:
32898 (WebCore::SVGCircleElement::contextElement):
32899 * ksvg2/svg/SVGClipPathElement.cpp:
32900 (SVGClipPathElement::SVGClipPathElement):
32901 (SVGClipPathElement::parseMappedAttribute):
32902 (SVGClipPathElement::canvasResource):
32903 * ksvg2/svg/SVGClipPathElement.h:
32904 (WebCore::SVGClipPathElement::contextElement):
32905 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
32906 (SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
32907 (SVGComponentTransferFunctionElement::parseMappedAttribute):
32908 (SVGComponentTransferFunctionElement::transferFunction):
32909 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
32910 * ksvg2/svg/SVGCursorElement.cpp:
32911 (SVGCursorElement::SVGCursorElement):
32912 (SVGCursorElement::parseMappedAttribute):
32913 * ksvg2/svg/SVGCursorElement.h:
32914 (WebCore::SVGCursorElement::contextElement):
32915 * ksvg2/svg/SVGDefsElement.h:
32916 (WebCore::SVGDefsElement::contextElement):
32917 * ksvg2/svg/SVGElement.h:
32918 * ksvg2/svg/SVGEllipseElement.cpp:
32919 (WebCore::SVGEllipseElement::SVGEllipseElement):
32920 (WebCore::SVGEllipseElement::parseMappedAttribute):
32921 (WebCore::SVGEllipseElement::toPathData):
32922 (WebCore::SVGEllipseElement::pushAttributeContext):
32923 * ksvg2/svg/SVGEllipseElement.h:
32924 (WebCore::SVGEllipseElement::contextElement):
32925 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
32926 (WebCore::SVGExternalResourcesRequired::SVGExternalResourcesRequired):
32927 (WebCore::SVGExternalResourcesRequired::parseMappedAttribute):
32928 * ksvg2/svg/SVGExternalResourcesRequired.h:
32929 * ksvg2/svg/SVGFEBlendElement.cpp:
32930 (SVGFEBlendElement::SVGFEBlendElement):
32931 (SVGFEBlendElement::parseMappedAttribute):
32932 (SVGFEBlendElement::filterEffect):
32933 * ksvg2/svg/SVGFEBlendElement.h:
32934 (WebCore::SVGFEBlendElement::contextElement):
32935 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
32936 (SVGFEColorMatrixElement::SVGFEColorMatrixElement):
32937 (SVGFEColorMatrixElement::parseMappedAttribute):
32938 (SVGFEColorMatrixElement::filterEffect):
32939 * ksvg2/svg/SVGFEColorMatrixElement.h:
32940 (WebCore::SVGFEColorMatrixElement::contextElement):
32941 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
32942 (SVGFEComponentTransferElement::SVGFEComponentTransferElement):
32943 (SVGFEComponentTransferElement::parseMappedAttribute):
32944 (SVGFEComponentTransferElement::filterEffect):
32945 * ksvg2/svg/SVGFEComponentTransferElement.h:
32946 (WebCore::SVGFEComponentTransferElement::contextElement):
32947 * ksvg2/svg/SVGFECompositeElement.cpp:
32948 (SVGFECompositeElement::SVGFECompositeElement):
32949 (SVGFECompositeElement::parseMappedAttribute):
32950 (SVGFECompositeElement::filterEffect):
32951 * ksvg2/svg/SVGFECompositeElement.h:
32952 (WebCore::SVGFECompositeElement::contextElement):
32953 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
32954 (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement):
32955 (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
32956 (WebCore::SVGFEDiffuseLightingElement::filterEffect):
32957 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
32958 (WebCore::SVGFEDiffuseLightingElement::contextElement):
32959 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
32960 (SVGFEDisplacementMapElement::SVGFEDisplacementMapElement):
32961 (SVGFEDisplacementMapElement::parseMappedAttribute):
32962 (SVGFEDisplacementMapElement::filterEffect):
32963 * ksvg2/svg/SVGFEDisplacementMapElement.h:
32964 (WebCore::SVGFEDisplacementMapElement::contextElement):
32965 * ksvg2/svg/SVGFEDistantLightElement.cpp:
32966 (WebCore::SVGFEDistantLightElement::lightSource):
32967 * ksvg2/svg/SVGFEFloodElement.cpp:
32968 (SVGFEFloodElement::parseMappedAttribute):
32969 (SVGFEFloodElement::filterEffect):
32970 * ksvg2/svg/SVGFEFloodElement.h:
32971 (WebCore::SVGFEFloodElement::contextElement):
32972 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
32973 (SVGFEGaussianBlurElement::SVGFEGaussianBlurElement):
32974 (SVGFEGaussianBlurElement::parseMappedAttribute):
32975 (SVGFEGaussianBlurElement::filterEffect):
32976 * ksvg2/svg/SVGFEGaussianBlurElement.h:
32977 (WebCore::SVGFEGaussianBlurElement::contextElement):
32978 * ksvg2/svg/SVGFEImageElement.cpp:
32979 (SVGFEImageElement::SVGFEImageElement):
32980 (SVGFEImageElement::parseMappedAttribute):
32981 * ksvg2/svg/SVGFEImageElement.h:
32982 (WebCore::SVGFEImageElement::contextElement):
32983 * ksvg2/svg/SVGFELightElement.cpp:
32984 (SVGFELightElement::SVGFELightElement):
32985 (SVGFELightElement::parseMappedAttribute):
32986 * ksvg2/svg/SVGFELightElement.h:
32987 * ksvg2/svg/SVGFEMergeElement.cpp:
32988 (SVGFEMergeElement::SVGFEMergeElement):
32989 (SVGFEMergeElement::filterEffect):
32990 * ksvg2/svg/SVGFEMergeElement.h:
32991 (WebCore::SVGFEMergeElement::contextElement):
32992 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
32993 (SVGFEMergeNodeElement::parseMappedAttribute):
32994 * ksvg2/svg/SVGFEMergeNodeElement.h:
32995 (WebCore::SVGFEMergeNodeElement::contextElement):
32996 * ksvg2/svg/SVGFEOffsetElement.cpp:
32997 (SVGFEOffsetElement::SVGFEOffsetElement):
32998 (SVGFEOffsetElement::parseMappedAttribute):
32999 (SVGFEOffsetElement::filterEffect):
33000 * ksvg2/svg/SVGFEOffsetElement.h:
33001 (WebCore::SVGFEOffsetElement::contextElement):
33002 * ksvg2/svg/SVGFEPointLightElement.cpp:
33003 (WebCore::SVGFEPointLightElement::lightSource):
33004 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
33005 (SVGFESpecularLightingElement::SVGFESpecularLightingElement):
33006 (SVGFESpecularLightingElement::parseMappedAttribute):
33007 (SVGFESpecularLightingElement::filterEffect):
33008 * ksvg2/svg/SVGFESpecularLightingElement.h:
33009 (WebCore::SVGFESpecularLightingElement::contextElement):
33010 * ksvg2/svg/SVGFESpotLightElement.cpp:
33011 (WebCore::SVGFESpotLightElement::lightSource):
33012 * ksvg2/svg/SVGFETileElement.cpp:
33013 (SVGFETileElement::parseMappedAttribute):
33014 (SVGFETileElement::filterEffect):
33015 * ksvg2/svg/SVGFETileElement.h:
33016 (WebCore::SVGFETileElement::contextElement):
33017 * ksvg2/svg/SVGFETurbulenceElement.cpp:
33018 (SVGFETurbulenceElement::SVGFETurbulenceElement):
33019 (SVGFETurbulenceElement::parseMappedAttribute):
33020 (SVGFETurbulenceElement::filterEffect):
33021 * ksvg2/svg/SVGFETurbulenceElement.h:
33022 (WebCore::SVGFETurbulenceElement::contextElement):
33023 * ksvg2/svg/SVGFilterElement.cpp:
33024 (SVGFilterElement::SVGFilterElement):
33025 (SVGFilterElement::parseMappedAttribute):
33026 (SVGFilterElement::canvasResource):
33027 * ksvg2/svg/SVGFilterElement.h:
33028 (WebCore::SVGFilterElement::contextElement):
33029 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
33030 (SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
33031 (SVGFilterPrimitiveStandardAttributes::~SVGFilterPrimitiveStandardAttributes):
33032 (SVGFilterPrimitiveStandardAttributes::parseMappedAttribute):
33033 (SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
33034 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
33035 (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
33036 * ksvg2/svg/SVGFitToViewBox.cpp:
33037 (WebCore::SVGFitToViewBox::SVGFitToViewBox):
33038 (WebCore::SVGFitToViewBox::parseViewBox):
33039 (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
33040 (WebCore::SVGFitToViewBox::parseMappedAttribute):
33041 * ksvg2/svg/SVGFitToViewBox.h:
33042 * ksvg2/svg/SVGForeignObjectElement.cpp:
33043 (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
33044 (WebCore::SVGForeignObjectElement::parseMappedAttribute):
33045 * ksvg2/svg/SVGForeignObjectElement.h:
33046 (WebCore::SVGForeignObjectElement::isValid):
33047 (WebCore::SVGForeignObjectElement::contextElement):
33048 * ksvg2/svg/SVGGElement.h:
33049 (WebCore::SVGGElement::contextElement):
33050 * ksvg2/svg/SVGGradientElement.cpp:
33051 (SVGGradientElement::SVGGradientElement):
33052 (SVGGradientElement::parseMappedAttribute):
33053 (SVGGradientElement::rebuildStops):
33054 * ksvg2/svg/SVGGradientElement.h:
33055 * ksvg2/svg/SVGHelper.cpp:
33056 (WebCore::SVGHelper::PercentageOfViewport):
33057 * ksvg2/svg/SVGImageElement.cpp:
33058 (SVGImageElement::SVGImageElement):
33059 (SVGImageElement::parseMappedAttribute):
33060 (SVGImageElement::haveLoadedRequiredResources):
33061 * ksvg2/svg/SVGImageElement.h:
33062 (WebCore::SVGImageElement::contextElement):
33063 * ksvg2/svg/SVGLangSpace.h:
33064 * ksvg2/svg/SVGLength.cpp:
33065 * ksvg2/svg/SVGLineElement.cpp:
33066 (SVGLineElement::SVGLineElement):
33067 (SVGLineElement::parseMappedAttribute):
33068 (SVGLineElement::toPathData):
33069 (SVGLineElement::pushAttributeContext):
33070 * ksvg2/svg/SVGLineElement.h:
33071 (WebCore::SVGLineElement::contextElement):
33072 * ksvg2/svg/SVGLinearGradientElement.cpp:
33073 (SVGLinearGradientElement::SVGLinearGradientElement):
33074 (SVGLinearGradientElement::parseMappedAttribute):
33075 (SVGLinearGradientElement::buildGradient):
33076 * ksvg2/svg/SVGLinearGradientElement.h:
33077 (WebCore::SVGLinearGradientElement::contextElement):
33078 * ksvg2/svg/SVGMarkerElement.cpp:
33079 (WebCore::SVGMarkerElement::SVGMarkerElement):
33080 (WebCore::SVGMarkerElement::parseMappedAttribute):
33081 (WebCore::SVGMarkerElement::setOrientToAuto):
33082 (WebCore::SVGMarkerElement::setOrientToAngle):
33083 (WebCore::SVGMarkerElement::canvasResource):
33084 * ksvg2/svg/SVGMarkerElement.h:
33085 (WebCore::SVGMarkerElement::contextElement):
33086 * ksvg2/svg/SVGMaskElement.cpp:
33087 (WebCore::SVGMaskElement::SVGMaskElement):
33088 (WebCore::SVGMaskElement::attributeChanged):
33089 (WebCore::SVGMaskElement::parseMappedAttribute):
33090 (WebCore::SVGMaskElement::drawMaskerContent):
33091 * ksvg2/svg/SVGMaskElement.h:
33092 (WebCore::SVGMaskElement::contextElement):
33093 * ksvg2/svg/SVGPathElement.cpp:
33094 (WebCore::SVGPathElement::SVGPathElement):
33095 * ksvg2/svg/SVGPathElement.h:
33096 (WebCore::SVGPathElement::isValid):
33097 (WebCore::SVGPathElement::contextElement):
33098 * ksvg2/svg/SVGPatternElement.cpp:
33099 (WebCore::SVGPatternElement::SVGPatternElement):
33100 (WebCore::SVGPatternElement::parseMappedAttribute):
33101 (WebCore::SVGPatternElement::pushAttributeContext):
33102 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
33103 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
33104 (WebCore::SVGPatternElement::notifyAttributeChange):
33105 (WebCore::SVGPatternElement::getCTM):
33106 * ksvg2/svg/SVGPatternElement.h:
33107 (WebCore::SVGPatternElement::contextElement):
33108 * ksvg2/svg/SVGPolyElement.h:
33109 (WebCore::SVGPolyElement::contextElement):
33110 * ksvg2/svg/SVGRadialGradientElement.cpp:
33111 (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
33112 (WebCore::SVGRadialGradientElement::~SVGRadialGradientElement):
33113 (WebCore::SVGRadialGradientElement::parseMappedAttribute):
33114 (WebCore::SVGRadialGradientElement::buildGradient):
33115 * ksvg2/svg/SVGRadialGradientElement.h:
33116 (WebCore::SVGRadialGradientElement::contextElement):
33117 * ksvg2/svg/SVGRectElement.cpp:
33118 (WebCore::SVGRectElement::SVGRectElement):
33119 (WebCore::SVGRectElement::parseMappedAttribute):
33120 (WebCore::SVGRectElement::toPathData):
33121 (WebCore::SVGRectElement::pushAttributeContext):
33122 * ksvg2/svg/SVGRectElement.h:
33123 (WebCore::SVGRectElement::contextElement):
33124 * ksvg2/svg/SVGSVGElement.cpp:
33125 (WebCore::SVGSVGElement::SVGSVGElement):
33126 (WebCore::SVGSVGElement::~SVGSVGElement):
33127 (WebCore::SVGSVGElement::viewport):
33128 (WebCore::SVGSVGElement::parseMappedAttribute):
33129 (WebCore::SVGSVGElement::getCTM):
33130 (WebCore::SVGSVGElement::getScreenCTM):
33131 (WebCore::SVGSVGElement::createRenderer):
33132 * ksvg2/svg/SVGSVGElement.h:
33133 (WebCore::SVGSVGElement::contextElement):
33134 * ksvg2/svg/SVGScriptElement.h:
33135 (WebCore::SVGScriptElement::contextElement):
33136 * ksvg2/svg/SVGSetElement.h:
33137 (WebCore::SVGSetElement::contextElement):
33138 * ksvg2/svg/SVGStopElement.cpp:
33139 (SVGStopElement::SVGStopElement):
33140 (SVGStopElement::parseMappedAttribute):
33141 * ksvg2/svg/SVGStopElement.h:
33142 * ksvg2/svg/SVGStylable.h:
33143 * ksvg2/svg/SVGStyledElement.cpp:
33144 * ksvg2/svg/SVGStyledElement.h:
33145 * ksvg2/svg/SVGStyledTransformableElement.cpp:
33146 (SVGStyledTransformableElement::SVGStyledTransformableElement):
33147 (SVGStyledTransformableElement::parseMappedAttribute):
33148 * ksvg2/svg/SVGStyledTransformableElement.h:
33149 * ksvg2/svg/SVGSwitchElement.cpp:
33150 * ksvg2/svg/SVGSwitchElement.h:
33151 (WebCore::SVGSwitchElement::contextElement):
33152 * ksvg2/svg/SVGSymbolElement.h:
33153 (WebCore::SVGSymbolElement::contextElement):
33154 * ksvg2/svg/SVGTRefElement.cpp:
33155 (SVGTRefElement::updateReferencedText):
33156 * ksvg2/svg/SVGTRefElement.h:
33157 (WebCore::SVGTRefElement::contextElement):
33158 * ksvg2/svg/SVGTSpanElement.h:
33159 (WebCore::SVGTSpanElement::contextElement):
33160 * ksvg2/svg/SVGTextContentElement.cpp:
33161 (SVGTextContentElement::SVGTextContentElement):
33162 (SVGTextContentElement::parseMappedAttribute):
33163 * ksvg2/svg/SVGTextContentElement.h:
33164 * ksvg2/svg/SVGTextElement.cpp:
33165 (WebCore::SVGTextElement::SVGTextElement):
33166 (WebCore::SVGTextElement::parseMappedAttribute):
33167 * ksvg2/svg/SVGTextElement.h:
33168 (WebCore::SVGTextElement::contextElement):
33169 * ksvg2/svg/SVGTextPositioningElement.cpp:
33170 (SVGTextPositioningElement::SVGTextPositioningElement):
33171 (SVGTextPositioningElement::parseMappedAttribute):
33172 * ksvg2/svg/SVGTextPositioningElement.h:
33173 * ksvg2/svg/SVGTransformable.cpp:
33174 * ksvg2/svg/SVGTransformable.h:
33175 * ksvg2/svg/SVGURIReference.cpp:
33176 (SVGURIReference::parseMappedAttribute):
33177 * ksvg2/svg/SVGURIReference.h:
33178 * ksvg2/svg/SVGUseElement.cpp:
33179 (SVGUseElement::SVGUseElement):
33180 (SVGUseElement::parseMappedAttribute):
33181 (SVGUseElement::closeRenderer):
33182 * ksvg2/svg/SVGUseElement.h:
33183 (WebCore::SVGUseElement::contextElement):
33184 * ksvg2/svg/SVGViewElement.h:
33185 (WebCore::SVGViewElement::contextElement):
33187 2006-09-05 Eric Seidel <eric@webkit.org>
33189 Reviewed by aroben.
33191 Speed up path parsing by removing string copies.
33192 http://bugs.webkit.org/show_bug.cgi?id=10722
33194 Tests already cover path parsing.
33196 * ksvg2/svg/SVGFitToViewBox.cpp:
33197 (WebCore::SVGFitToViewBox::parseViewBox):
33198 * ksvg2/svg/svgpathparser.cpp:
33199 (WebCore::skipOptionalSpaces): Added.
33200 (WebCore::skipOptionalSpacesOrComma): Added.
33201 (WebCore::parseCoord):
33202 (WebCore::SVGPolyParser::parsePoints):
33203 (WebCore::SVGPathParser::parseSVG):
33205 2006-09-05 Sam Weinig <sam.weinig@gmail.com>
33209 Patch for http://bugs.webkit.org/show_bug.cgi?id=10742
33210 More Objective-C DOM auto-generation cleanup
33212 - Factor out implementation type-getters into their own function
33213 and standardize naming as was done for type-makers (ie. HTML
33214 and CSS prefixing for method names).
33216 * bindings/objc/DOMCSS.mm:
33217 (-[DOMCSSStyleDeclaration getPropertyShorthand:]):
33218 (-[DOMCSSStyleDeclaration isPropertyImplicit:]):
33219 (-[DOMCSSStyleDeclaration _CSSStyleDeclaration]):
33220 * bindings/objc/DOMHTML.mm:
33221 (-[DOMHTMLTableCaptionElement _HTMLTableCaptionElement]):
33222 (-[DOMHTMLTableSectionElement _HTMLTableSectionElement]):
33223 (-[DOMHTMLTableElement _HTMLTableElement]):
33224 (-[DOMHTMLTableCellElement _HTMLTableCellElement]):
33225 (-[DOMHTMLEmbedElement _HTMLEmbedElement]):
33226 (-[DOMHTMLEmbedElement align]):
33227 (-[DOMHTMLEmbedElement setAlign:]):
33228 (-[DOMHTMLEmbedElement height]):
33229 (-[DOMHTMLEmbedElement setHeight:]):
33230 (-[DOMHTMLEmbedElement name]):
33231 (-[DOMHTMLEmbedElement setName:]):
33232 (-[DOMHTMLEmbedElement src]):
33233 (-[DOMHTMLEmbedElement setSrc:]):
33234 (-[DOMHTMLEmbedElement type]):
33235 (-[DOMHTMLEmbedElement setType:]):
33236 (-[DOMHTMLEmbedElement width]):
33237 (-[DOMHTMLEmbedElement setWidth:]):
33238 * bindings/objc/DOMInternal.h:
33239 * bindings/scripts/CodeGeneratorObjC.pm:
33240 * bridge/mac/WebCoreFrameBridge.mm:
33241 (-[WebCoreFrameBridge setTypingStyle:withUndoAction:]):
33242 (-[WebCoreFrameBridge applyStyle:withUndoAction:]):
33243 (-[WebCoreFrameBridge applyParagraphStyle:withUndoAction:]):
33244 (-[WebCoreFrameBridge selectionStartHasStyle:]):
33245 (-[WebCoreFrameBridge selectionHasStyle:]):
33247 2006-09-05 Adele Peterson <adele@apple.com>
33251 Removed dead code for password field.
33253 * platform/mac/TextFieldMac.mm: (-[NSSearchFieldCell _addStringToRecentSearches:]):
33254 * platform/mac/WebCoreTextField.h:
33255 * platform/mac/WebCoreTextField.mm:
33257 2006-09-05 Justin Garcia <justin.garcia@apple.com>
33259 Reviewed by thatcher
33261 Setup for <rdar://problem/4344550> Misspellings aren't marked after undo delete
33264 <http://bugs.webkit.org/show_bug.cgi?id=6498>
33265 SelectionController's setters should notify delegates of selection changes
33267 Moved setSelection from Frame to SelectionController.
33268 I haven't moved any of the work that's done as a result of a
33269 Selection change to SelectionController yet.
33270 Make fewer uses of SelectionControllers. They're now only used for
33271 the Frame's selection, the Page's drag caret, and functions that
33272 need to do Selection expansion.
33274 * bindings/js/kjs_window.cpp:
33275 (KJS::Selection::getValueProperty):
33276 (KJS::Selection::toString):
33277 (KJS::SelectionFunc::callAsFunction):
33278 * bridge/mac/FrameMac.h:
33279 * bridge/mac/FrameMac.mm:
33280 (WebCore::FrameMac::advanceToNextMisspelling):
33281 (WebCore::FrameMac::dispatchCPPEvent):
33282 (WebCore::FrameMac::fontForSelection):
33283 (WebCore::FrameMac::baseWritingDirectionForSelectionStart):
33284 (WebCore::FrameMac::markMisspellingsInAdjacentWords):
33285 (WebCore::FrameMac::markMisspellings):
33286 (WebCore::FrameMac::respondToChangedSelection):
33287 (WebCore::FrameMac::shouldChangeSelection):
33288 (WebCore::FrameMac::shouldDeleteSelection):
33289 (WebCore::FrameMac::respondToChangedContents):
33290 * bridge/mac/PageMac.mm:
33291 (WebCore::Page::Page):
33292 * bridge/mac/WebCoreAXObject.mm:
33293 (-[WebCoreAXObject accessibilityAttributeValue:]):
33294 (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
33295 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
33296 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
33297 (-[WebCoreAXObject doSetAXSelectedTextMarkerRange:]):
33298 * bridge/mac/WebCoreFrameBridge.mm:
33299 (-[WebCoreFrameBridge isSelectionEditable]):
33300 (-[WebCoreFrameBridge isSelectionRichlyEditable]):
33301 (-[WebCoreFrameBridge selectionState]):
33302 (-[WebCoreFrameBridge deselectText]):
33303 (-[WebCoreFrameBridge selectedAttributedString]):
33304 (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
33305 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
33306 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
33307 (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]):
33308 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
33309 (-[WebCoreFrameBridge setSelectedDOMRange:affinity:closeTyping:]):
33310 (-[WebCoreFrameBridge selectedDOMRange]):
33311 (-[WebCoreFrameBridge selectNSRange:]):
33312 (-[WebCoreFrameBridge selectedNSRange]):
33313 (-[WebCoreFrameBridge selectionAffinity]):
33314 (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
33315 (-[WebCoreFrameBridge setSelectionToDragCaret]):
33316 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]):
33317 (-[WebCoreFrameBridge moveDragCaretToPoint:]):
33318 (-[WebCoreFrameBridge removeDragCaret]):
33319 (-[WebCoreFrameBridge dragCaretDOMRange]):
33320 (-[WebCoreFrameBridge isDragCaretRichlyEditable]):
33321 (-[WebCoreFrameBridge editableDOMRangeForPoint:]):
33322 (-[WebCoreFrameBridge ensureSelectionVisible]):
33323 (-[WebCoreFrameBridge rangeOfCharactersAroundCaret]):
33324 * bridge/win/PageWin.cpp:
33325 (WebCore::Page::Page):
33326 * dom/Document.cpp:
33327 (WebCore::Document::updateSelection):
33328 (WebCore::Document::clearSelectionIfNeeded):
33329 (WebCore::Document::notifyBeforeNodeRemoval):
33331 (WebCore::Element::updateFocusAppearance):
33332 * editing/EditCommand.cpp:
33333 (WebCore::EditCommand::EditCommand):
33334 * editing/JSEditor.cpp:
33335 * editing/ModifySelectionListLevel.cpp:
33336 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
33337 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
33338 * editing/Selection.cpp:
33339 (WebCore::Selection::setBase):
33340 (WebCore::Selection::setExtent):
33341 * editing/Selection.h:
33342 (WebCore::Selection::extent):
33343 * editing/SelectionController.cpp:
33344 (WebCore::SelectionController::SelectionController):
33345 (WebCore::SelectionController::moveTo):
33346 (WebCore::SelectionController::setSelection):
33347 (WebCore::SelectionController::nodeWillBeRemoved):
33348 (WebCore::SelectionController::modify):
33349 (WebCore::SelectionController::clear):
33350 (WebCore::SelectionController::setBase):
33351 (WebCore::SelectionController::setExtent):
33352 * editing/SelectionController.h:
33353 * editing/TypingCommand.cpp:
33354 (WebCore::TypingCommand::insertText):
33355 (WebCore::TypingCommand::deleteKeyPressed):
33356 (WebCore::TypingCommand::forwardDeleteKeyPressed):
33357 * editing/VisiblePosition.cpp:
33358 (WebCore::VisiblePosition::caretRect):
33359 * editing/VisiblePosition.h:
33360 * html/HTMLInputElement.cpp:
33361 (WebCore::HTMLInputElement::defaultEventHandler):
33363 (WebCore::Frame::selectedText):
33364 (WebCore::Frame::hasSelection):
33365 (WebCore::Frame::selectionController):
33366 (WebCore::Frame::dragCaretController):
33367 (WebCore::Frame::notifyRendererOfSelectionChange):
33368 (WebCore::Frame::invalidateSelection):
33369 (WebCore::Frame::clearCaretRectIfNeeded):
33370 (WebCore::Frame::setFocusNodeIfNeeded):
33371 (WebCore::Frame::selectionLayoutChanged):
33372 (WebCore::Frame::caretBlinkTimerFired):
33373 (WebCore::Frame::paintCaret):
33374 (WebCore::Frame::paintDragCaret):
33375 (WebCore::Frame::isPointInsideSelection):
33376 (WebCore::Frame::selectClosestWordFromMouseEvent):
33377 (WebCore::Frame::handleMousePressEventDoubleClick):
33378 (WebCore::Frame::handleMousePressEventTripleClick):
33379 (WebCore::Frame::handleMousePressEventSingleClick):
33380 (WebCore::Frame::handleMouseMoveEvent):
33381 (WebCore::Frame::handleMouseReleaseEvent):
33382 (WebCore::Frame::selectAll):
33383 (WebCore::Frame::selectContentsOfNode):
33384 (WebCore::Frame::shouldChangeSelection):
33385 (WebCore::Frame::shouldDeleteSelection):
33386 (WebCore::Frame::isSelectionInPasswordField):
33387 (WebCore::Frame::appliedEditing):
33388 (WebCore::Frame::unappliedEditing):
33389 (WebCore::Frame::reappliedEditing):
33390 (WebCore::Frame::computeAndSetTypingStyle):
33391 (WebCore::Frame::applyStyle):
33392 (WebCore::Frame::applyParagraphStyle):
33393 (WebCore::Frame::selectionListState):
33394 (WebCore::Frame::selectionHasStyle):
33395 (WebCore::Frame::selectionComputedStyle):
33396 (WebCore::Frame::selectFrameElementInParentIfFullySelected):
33397 (WebCore::Frame::currentForm):
33398 (WebCore::Frame::revealSelection):
33399 (WebCore::Frame::centerSelectionInVisibleArea):
33400 (WebCore::Frame::styleForSelectionStart):
33401 (WebCore::Frame::setSelectionFromNone):
33402 (WebCore::Frame::findString):
33404 * page/FramePrivate.h:
33405 (WebCore::FramePrivate::FramePrivate):
33406 * page/FrameView.cpp:
33407 (WebCore::FrameView::clear):
33409 (WebCore::Page::dragCaretController):
33411 * rendering/RenderBlock.cpp:
33412 (WebCore::RenderBlock::paintCaret):
33413 * rendering/RenderLayer.cpp:
33414 (WebCore::RenderLayer::autoscroll):
33415 * rendering/RenderTextControl.cpp:
33416 (WebCore::RenderTextControl::selectionStart):
33417 (WebCore::RenderTextControl::selectionEnd):
33418 (WebCore::RenderTextControl::setSelectionRange):
33419 (WebCore::RenderTextControl::selectionChanged):
33420 * rendering/RenderTreeAsText.cpp:
33421 (WebCore::writeSelection):
33423 2006-09-05 Adele Peterson <adele@apple.com>
33427 Let the engine draw the focus ring for styled menu lists.
33429 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::supportsFocusRing): Added case for MenulistButtonAppearance.
33431 2006-09-05 Adele Peterson <adele@apple.com>
33435 - Fix for <rdar://problem/4706463> REGRESSION: Must click twice on <select> elements for menu to show
33437 * rendering/RenderPopupMenuMac.h:
33438 * rendering/RenderPopupMenuMac.mm:
33439 (WebCore::RenderPopupMenuMac::showPopup): Moved call to dismiss popup into hidePopup method.
33440 Now calls RenderMenuList::hidePopup which will update the m_popupIsVisible flag on the menu list before hiding the popup.
33441 (WebCore::RenderPopupMenuMac::hidePopup): Added.
33443 2006-09-05 Sam Weinig <sam.weinig@gmail.com>
33447 Patch for http://bugs.webkit.org/show_bug.cgi?id=10738
33448 Consolidate the Objective-C DOM Bindings Internal files into DOMInternal.h
33450 - Consolidate DOMHTMLInternal.h, DOMCSSInternal.h, DOMEventsInternal.h,
33451 DOMViewsInternal.h and DOMXPathInternal.h into DOMInternal.h.
33453 - Rename the "type-makers" (used to make a binding from an implementation
33454 type) so that all the HTML ones begin with the prefix HTML. Did the same
33457 - Auto-generate a couple more methods from DOMExtensions.h.
33459 - Various cleanups of the Objective-C auto-generation code.
33461 * WebCore.xcodeproj/project.pbxproj:
33462 * bindings/objc/DOM.mm:
33463 (-[DOMDocument createCSSStyleDeclaration]):
33464 * bindings/objc/DOMCSS.mm:
33465 (+[DOMCSSRuleList _CSSRuleListWith:]):
33466 (+[DOMCSSRule _CSSRuleWith:]):
33467 (+[DOMCSSStyleDeclaration _CSSStyleDeclarationWith:]):
33468 (+[DOMCSSValue _CSSValueWith:]):
33469 (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:]):
33470 (-[DOMDocument getComputedStyle::]):
33471 (-[DOMDocument getMatchedCSSRules::]):
33472 * bindings/objc/DOMCSSInternal.h: Removed.
33473 * bindings/objc/DOMEvents.mm:
33474 * bindings/objc/DOMEventsInternal.h: Removed.
33475 * bindings/objc/DOMEventsNonstandard.mm:
33476 * bindings/objc/DOMExtensions.h:
33477 * bindings/objc/DOMHTML.mm:
33478 (+[DOMHTMLCollection _HTMLCollectionWith:]):
33479 (+[DOMHTMLOptionsCollection _HTMLOptionsCollectionWith:]):
33480 (+[DOMHTMLElement _HTMLElementWith:]):
33481 (+[DOMHTMLFormElement _HTMLFormElementWith:]):
33482 (+[DOMHTMLTableCaptionElement _HTMLTableCaptionElementWith:]):
33483 (+[DOMHTMLTableSectionElement _HTMLTableSectionElementWith:]):
33484 (+[DOMHTMLTableElement _HTMLTableElementWith:]):
33485 (+[DOMHTMLTableCellElement _HTMLTableCellElementWith:]):
33486 * bindings/objc/DOMHTMLAppletElement.mm:
33487 * bindings/objc/DOMHTMLDocument.mm:
33488 (-[DOMHTMLDocument body]):
33489 (-[DOMHTMLDocument images]):
33490 (-[DOMHTMLDocument applets]):
33491 (-[DOMHTMLDocument links]):
33492 (-[DOMHTMLDocument forms]):
33493 (-[DOMHTMLDocument anchors]):
33494 * bindings/objc/DOMHTMLInternal.h: Removed.
33495 * bindings/objc/DOMHTMLOptionElement.mm:
33496 (-[DOMHTMLOptionElement form]):
33497 * bindings/objc/DOMInternal.h:
33498 * bindings/objc/DOMRGBColor.mm:
33499 (setWrapperForRGB):
33500 (-[DOMRGBColor red]):
33501 (-[DOMRGBColor green]):
33502 (-[DOMRGBColor blue]):
33503 (-[DOMRGBColor alpha]):
33504 * bindings/objc/DOMUtility.mm:
33505 (KJS::ScriptInterpreter::createObjcInstanceForValue):
33506 * bindings/objc/DOMViews.mm:
33507 (-[DOMAbstractView WebCore::]):
33508 (-[DOMAbstractView _initWithAbstractView:WebCore::]):
33509 (+[DOMAbstractView _abstractViewWith:WebCore::]):
33510 * bindings/objc/DOMViewsInternal.h: Removed.
33511 * bindings/objc/DOMXPath.mm:
33512 * bindings/objc/DOMXPathInternal.h: Removed.
33513 * bindings/objc/PublicDOMInterfaces.h:
33514 * bindings/scripts/CodeGeneratorObjC.pm:
33515 * bridge/mac/WebCoreFrameBridge.mm:
33516 (-[WebCoreFrameBridge typingStyle]):
33517 * html/HTMLAnchorElement.idl:
33518 * html/HTMLAreaElement.idl:
33519 * html/HTMLImageElement.idl:
33520 * html/HTMLInputElement.idl:
33521 * html/HTMLLinkElement.idl:
33523 2006-09-05 Steve Falkenburg <sfalken@apple.com>
33525 Conditionalize new DOM headers for ObjC only
33527 * DerivedSources.make:
33529 2006-09-04 Alexey Proskuryakov <ap@nypop.com>
33533 http://bugs.webkit.org/show_bug.cgi?id=10716
33534 XMLHttpRequest.responseText is null if HTTP response is empty
33536 Extended existing tests:
33537 - http/tests/xmlhttrequest/zero-length-response.html
33538 - http/tests/xmlhttrequest/zero-length-response-sync.html
33540 * xml/xmlhttprequest.cpp:
33541 (WebCore::XMLHttpRequest::XMLHttpRequest): Initialize responseText to an empty string.
33542 (WebCore::XMLHttpRequest::open): Reset responseText to an empty string.
33543 * bindings/js/JSXMLHttpRequest.cpp:
33544 (KJS::JSXMLHttpRequest::getValueProperty): Return null rather than undefined
33545 for nil responseXML.
33547 2006-09-04 Timothy Hatcher <timothy@apple.com>
33551 Bug 10714: ObjC autogeneration needs safe-guards against easily modifying the public API
33552 http://bugs.webkit.org/show_bug.cgi?id=10714
33554 - New PublicDOMInterfaces.h file is consulted when generating
33555 the ObjC DOM files. All public DOM class interfaces, properties
33556 and methods need to be in this file. Anything not in the file will
33557 be generated into the appropriate private header file. During
33558 generation if something changed or is missing in the public API
33559 a build error will occur. New interfaces added to the IDLs files
33560 will now not automatically be reflected in the public ObjC API.
33561 Methods commented out in PublicDOMInterfaces.h are pending public
33562 and will be uncommented once approved.
33564 - Removed most of the Exclude=ObjC uses from the IDL files. This
33565 attribute was mostly used to prevent changes to the public headers.
33567 - Make a new parameter name if the original conflicts with a property name.
33569 - Simplified the generation code for dealing with exceptions.
33571 - Moved file opens to WriteData. Files are unlinked before
33572 being opened to work around a Leopard file truncation bug.
33574 - Fixed #imports for DOMImplementation to be DOMDOMImplementation.h
33576 * WebCore.xcodeproj/project.pbxproj:
33577 * bindings/objc/DOMCSS.h:
33578 * bindings/objc/DOMCore.h:
33579 * bindings/objc/DOMExtensions.h:
33580 * bindings/objc/DOMHTMLInternal.h:
33581 * bindings/objc/DOMPrivate.h:
33582 * bindings/objc/PublicDOMInterfaces.h: Added.
33583 * bindings/scripts/CodeGeneratorObjC.pm:
33584 * dom/Document.idl:
33586 * dom/NamedNodeMap.idl:
33587 * dom/ProcessingInstruction.idl:
33588 * html/HTMLAnchorElement.idl:
33589 * html/HTMLAreaElement.idl:
33590 * html/HTMLBodyElement.idl:
33591 * html/HTMLButtonElement.idl:
33592 * html/HTMLImageElement.idl:
33593 * html/HTMLInputElement.idl:
33594 * html/HTMLLabelElement.idl:
33595 * html/HTMLLegendElement.idl:
33596 * html/HTMLLinkElement.idl:
33597 * html/HTMLOptionsCollection.idl:
33598 * html/HTMLPreElement.idl:
33599 * html/HTMLStyleElement.idl:
33600 * html/HTMLTextAreaElement.idl:
33602 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
33606 Continue fixing the build, I forgot this in my previous patch!
33608 * platform/qt/PathQt.cpp:
33609 (WebCore::Path::apply):
33611 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
33615 Fix build on Qt/Linux.
33618 * platform/qt/PathQt.cpp:
33619 (WebCore::Path::transform):
33621 2006-09-04 Alexey Proskuryakov <ap@nypop.com>
33625 http://bugs.webkit.org/show_bug.cgi?id=10676
33626 @charset rules not accessible via DOM
33628 Test: fast/encoding/css-charset-dom.html
33630 * WebCore.xcodeproj/project.pbxproj: Added CSSCharsetRule.cpp
33631 * bindings/js/kjs_css.cpp:
33632 (KJS::DOMCSSStyleSheet::getValueProperty):
33633 Separated Rules and CssRules, since now they behave differently.
33635 * css/CSSCharsetRule.h: Make the constructor take an encoding.
33636 * css/CSSCharsetRule.cpp: Added.
33638 * css/CSSGrammar.y: Create CSSStylesheetRules as necessary.
33640 * css/CSSRuleList.cpp:
33641 (WebCore::CSSRuleList::CSSRuleList):
33642 * css/CSSRuleList.h:
33643 * css/CSSStyleSheet.cpp:
33644 (WebCore::CSSStyleSheet::cssRules):
33645 * css/CSSStyleSheet.h:
33646 Skip charset rules in IE compatibility mode.
33649 (WebCore::StyleBase::isCharsetRule): Fixed a typo.
33651 * css/cssparser.cpp:
33652 (WebCore::CSSParser::createCharsetRule):
33654 Added createCharsetRule().
33656 2006-09-04 Nikolas Zimmermann <zimmermann@kde.org>
33660 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10644
33661 Let FrameQt operate on a FrameQtClient, just like Win/Mac handle it.
33664 * platform/qt/FrameQt.cpp:
33665 (WebCore::FrameQt::FrameQt):
33666 (WebCore::FrameQt::~FrameQt):
33667 (WebCore::FrameQt::openURL):
33668 (WebCore::FrameQt::submitForm):
33669 (WebCore::FrameQt::urlSelected):
33670 * platform/qt/FrameQt.h:
33671 * platform/qt/FrameQtClient.cpp: Added.
33672 (WebCore::FrameQtClientDefault::FrameQtClientDefault):
33673 (WebCore::FrameQtClientDefault::~FrameQtClientDefault):
33674 (WebCore::FrameQtClientDefault::setFrame):
33675 (WebCore::FrameQtClientDefault::openURL):
33676 (WebCore::FrameQtClientDefault::submitForm):
33677 (WebCore::FrameQtClientDefault::receivedResponse):
33678 (WebCore::FrameQtClientDefault::receivedData):
33679 (WebCore::FrameQtClientDefault::receivedAllData):
33680 * platform/qt/FrameQtClient.h: Added.
33681 (WebCore::FrameQtClient::~FrameQtClient):
33683 2006-09-04 Eric Seidel <eric@webkit.org>
33685 Reviewed by andersca.
33687 Clean-up style and spacing.
33688 http://bugs.webkit.org/show_bug.cgi?id=10724
33689 No tests needed, no functional changes.
33691 * ksvg2/svg/svgpathparser.cpp:
33692 (WebCore::parseCoord):
33693 (WebCore::SVGPolyParser::parsePoints):
33694 (WebCore::SVGPathParser::parseSVG):
33695 (WebCore::SVGPathParser::calculateArc):
33696 (WebCore::SVGPathParser::svgLineToHorizontal):
33697 (WebCore::SVGPathParser::svgLineToVertical):
33698 (WebCore::SVGPathParser::svgCurveToCubicSmooth):
33699 (WebCore::SVGPathParser::svgCurveToQuadratic):
33700 (WebCore::SVGPathParser::svgCurveToQuadraticSmooth):
33701 (WebCore::SVGPathParser::svgArcTo):
33703 2006-09-04 Rob Buis <buis@kde.org>
33707 http://bugs.webkit.org/show_bug.cgi?id=6546
33708 clipPath data does not respect transforms
33710 Get the transform from the dom element and adjust
33711 the clip path with it.
33713 * ksvg2/svg/SVGClipPathElement.cpp:
33714 (SVGClipPathElement::canvasResource):
33716 2006-09-04 Rob Buis <buis@kde.org>
33720 This code should have gone in as part of:
33721 http://bugs.webkit.org/show_bug.cgi?id=10696
33722 It addresses the comments there, also we use double instead
33723 of float now in calculations.
33725 * platform/Path.cpp:
33726 (WebCore::Path::createRoundedRectangle):
33727 (WebCore::Path::createRectangle):
33728 (WebCore::Path::createEllipse):
33729 (WebCore::Path::createCircle):
33731 2006-09-03 Sam Weinig <sam.weinig@gmail.com>
33733 Reviewed by Darin and Tim H.
33735 - patch for http://bugs.webkit.org/show_bug.cgi?id=10711
33736 Auto-generate the Objective-C DOM Stylesheet bindings
33738 Auto-generates DOMMediaList, DOMStyleSheet, and DOMStyleSheetList.
33740 * DerivedSources.make:
33741 * WebCore.xcodeproj/project.pbxproj:
33742 * bindings/objc/DOMCSS.mm:
33743 (+[DOMStyleSheet _styleSheetWith:]):
33744 (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
33745 * bindings/objc/DOMCSSInternal.h:
33746 * bindings/objc/DOMInternal.h:
33747 * bindings/objc/DOMObject.mm:
33748 (-[DOMObject sheet]):
33749 * bindings/objc/DOMPrivate.h:
33750 * bindings/objc/DOMStylesheets.h:
33751 * bindings/objc/DOMUtility.mm:
33752 (KJS::ScriptInterpreter::createObjcInstanceForValue):
33753 * bindings/scripts/CodeGeneratorObjC.pm:
33754 * css/StyleSheet.idl: Added.
33755 * css/StyleSheetList.idl: Added.
33757 2006-09-03 Rob Buis <buis@kde.org>
33761 http://bugs.webkit.org/show_bug.cgi?id=10696
33762 RenderPathQuartz and RenderPathQt should not be needed
33764 Cleanup of code related to RenderPath.
33767 * WebCore.xcodeproj/project.pbxproj:
33768 * kcanvas/KCanvasCreator.cpp:
33769 * kcanvas/KCanvasCreator.h:
33770 * kcanvas/RenderPath.cpp:
33772 (WebCore::DrawMarkersData::DrawMarkersData):
33773 (WebCore::drawMarkerWithData):
33774 (WebCore::updateMarkerDataForElement):
33775 (WebCore::drawStartAndMidMarkers):
33776 (WebCore::RenderPath::drawMarkersIfNeeded):
33777 * kcanvas/RenderPath.h:
33778 * kcanvas/device/KRenderingDevice.h:
33779 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
33780 * kcanvas/device/qt/KRenderingDeviceQt.h:
33781 * kcanvas/device/qt/RenderPathQt.cpp:
33782 (WebCore::RenderPath::strokeContains):
33783 (WebCore::RenderPath::strokeBBox):
33784 * kcanvas/device/qt/RenderPathQt.h:
33785 * kcanvas/device/quartz/KCanvasItemQuartz.h:
33786 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
33787 (WebCore::RenderPath::strokeBBox):
33788 (WebCore::RenderPath::strokeContains):
33789 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
33790 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
33791 * kcanvas/device/quartz/QuartzSupport.h:
33792 * ksvg2/svg/SVGAElement.cpp:
33793 * ksvg2/svg/SVGCircleElement.cpp:
33794 (SVGCircleElement::toPathData):
33795 * ksvg2/svg/SVGEllipseElement.cpp:
33796 (WebCore::SVGEllipseElement::toPathData):
33797 * ksvg2/svg/SVGFEImageElement.cpp:
33798 * ksvg2/svg/SVGGElement.cpp:
33799 * ksvg2/svg/SVGImageElement.cpp:
33800 * ksvg2/svg/SVGLineElement.cpp:
33801 (SVGLineElement::toPathData):
33802 * ksvg2/svg/SVGMarkerElement.cpp:
33803 * ksvg2/svg/SVGPathElement.cpp:
33804 * ksvg2/svg/SVGPatternElement.cpp:
33805 * ksvg2/svg/SVGPolygonElement.cpp:
33806 * ksvg2/svg/SVGPolylineElement.cpp:
33807 * ksvg2/svg/SVGRectElement.cpp:
33808 (WebCore::SVGRectElement::toPathData):
33809 * ksvg2/svg/SVGSVGElement.cpp:
33810 * ksvg2/svg/SVGStyledElement.cpp:
33811 (WebCore::SVGStyledElement::createRenderer):
33812 * ksvg2/svg/SVGSwitchElement.cpp:
33813 * ksvg2/svg/SVGTextElement.cpp:
33814 * ksvg2/svg/SVGUseElement.cpp:
33817 * platform/cg/PathCG.cpp:
33818 (WebCore::CGPathToCFStringApplierFunction):
33819 (WebCore::CGPathApplierToPathApplier):
33820 (WebCore::Path::apply):
33821 (WebCore::Path::transform):
33822 * platform/qt/PathQt.cpp:
33823 (WebCore::Path::apply):
33825 2006-09-03 Timothy Hatcher <timothy@apple.com>
33829 Bug 10685: ObjC DOM should have no unnamed parameters
33830 http://bugs.webkit.org/show_bug.cgi?id=10685
33832 - The ObjC code generation script now outputs parameter prefixes
33833 for methods that have more than 1 parameter. This prefix is simply
33834 the parameter name. Some parameter names have been changed in the IDL
33835 files to produce better prefixes. If an extended attribute of "ObjCPrefix"
33836 exists on a parameter we will use that for the prefix.
33838 - A backwards compatible version of the method is placed in a
33839 category with a deprecation macro for 10.5 and later. This step only
33840 happens if the IDL extended attribute "OldStyleObjC" is defined.
33841 All new functions in IDL should not get this attribute.
33843 - Made the $interfaceMethodSelector regex in IDLStructure.pm allow "=" so
33844 parameter extended attributes can have values.
33846 - Moved RemoveExcludedAttributesAndFunctions to CodeGenerator.pm
33847 so it can be shared between the two generators.
33849 - Removed the die when we encounter a getter that uses exceptions.
33850 Sam Weinig added support for this in an earlier change.
33852 - Check if $ENV{"MACOSX_DEPLOYMENT_TARGET"} is defined before we compare.
33853 This caused a perl warning when generating on other platforms.
33855 - The ObjC generation will not happen on platforms other than Mac OS.
33856 This is determined by the "OS" env variable Xcode sets. This check
33857 is in the DerivedSources.make.
33859 - Added a way to skip generation if the constructor of the specific
33860 generator returns undef. Not used yet.
33862 - Many cleanup tweaks in CodeGeneratorObjC.pm.
33864 - Removed IDL and CSS files from the project's resource copy phase,
33865 these do no need to be in WebCore's resources.
33867 * DerivedSources.make
33868 * WebCore.xcodeproj/project.pbxproj
33869 * bindings/scripts/CodeGenerator.pm
33870 * bindings/scripts/CodeGeneratorJS.pm
33871 * bindings/scripts/CodeGeneratorObjC.pm
33872 * bindings/scripts/IDLStructure.pm
33873 * css/CSSMediaRule.idl
33874 * css/CSSPrimitiveValue.idl
33875 * css/CSSStyleDeclaration.idl
33876 * css/CSSStyleSheet.idl
33877 * dom/CharacterData.idl
33878 * dom/DOMImplementation.idl
33881 * dom/KeyboardEvent.idl
33882 * dom/MouseEvent.idl
33883 * dom/MutationEvent.idl
33884 * dom/NamedNodeMap.idl
33886 * html/HTMLCanvasElement.idl
33887 * html/HTMLSelectElement.idl
33888 * ksvg2/bindings/idl/svg/SVGLengthList.idl
33889 * ksvg2/bindings/idl/svg/SVGNumberList.idl
33890 * ksvg2/bindings/idl/svg/SVGPointList.idl
33891 * ksvg2/bindings/idl/svg/SVGStringList.idl
33892 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl
33893 * ksvg2/bindings/idl/svg/SVGTransformList.idl
33894 * ksvg2/svg/SVGSVGElement.idl
33895 * page/DOMWindow.idl
33897 2006-09-03 Alexey Proskuryakov <ap@nypop.com>
33901 http://bugs.webkit.org/show_bug.cgi?id=10693
33902 Convert JavaScript arrays to AppleScript lists
33904 Test: fast/AppleScript/array.html
33906 * bridge/mac/WebCoreFrameBridge.mm:
33907 (aeDescFromJSValue): Added a case for ArrayInstance.
33909 2006-09-03 Alexey Proskuryakov <ap@nypop.com>
33913 http://bugs.webkit.org/show_bug.cgi?id=10697
33914 REGRESSION (r16175): Errors in incremental decoding of UTF-8
33917 - http/tests/incremental/slow-utf8-html.pl
33918 - fast/encoding/charset-invalid.html
33920 * loader/Decoder.cpp:
33921 (Decoder::Decoder): Ensure that we have a valid encoding. Get its name via TextEncoding, to match
33922 the logic in setEncodingName().
33923 (Decoder::setEncodingName): Only set m_encodingName if the encoding is valid. Rely on TextEncoding
33924 constructor to lowercase it if necessary.
33925 (Decoder::decode): Use setEncodingName() to apply encoding from BOM. Don't try to ensure the
33926 validity of encoding - it is enforced by class constructor and setEncodingName().
33928 2006-09-02 Sam Weinig <sam.weinig@gmail.com>
33932 - patch for http://bugs.webkit.org/show_bug.cgi?id=10684
33933 Auto-generate the Objective-C DOM CSS bindings
33935 Auto-generates DOMCSSCharsetRule, DOMCSSFontFaceRule, DOMCSSImportRule,
33936 DOMCSSMediaRule, DOMCSSPageRule, DOMCSSPrimitiveValue, DOMCSSRule,
33937 DOMCSSRuleList, DOMCSSStyleDeclaration, DOMCSSStyleRule, DOMCSSStyleSheet,
33938 DOMCSSUnknownRule, DOMCSSValue, DOMCSSValueList, DOMCounter, and DOMRect.
33940 Splits DOMRGBColor into its own files.
33942 * DerivedSources.make:
33943 * WebCore.xcodeproj/project.pbxproj:
33944 * bindings/objc/DOMCSS.h:
33945 * bindings/objc/DOMCSS.mm:
33946 (+[DOMCSSStyleSheet _CSSStyleSheetWith:]):
33947 (+[DOMCSSPrimitiveValue _valueWith:]):
33948 * bindings/objc/DOMCSSInternal.h:
33949 * bindings/objc/DOMExtensions.h:
33950 * bindings/objc/DOMInternal.h:
33951 * bindings/objc/DOMRGBColor.h: Added.
33952 * bindings/objc/DOMRGBColor.mm: Added.
33953 (getWrapperForRGB):
33954 (setWrapperForRGB):
33955 (removeWrapperForRGB):
33956 (-[DOMRGBColor dealloc]):
33957 (-[DOMRGBColor finalize]):
33958 (-[DOMRGBColor red]):
33959 (-[DOMRGBColor green]):
33960 (-[DOMRGBColor blue]):
33961 (-[DOMRGBColor alpha]):
33962 (-[DOMRGBColor color]):
33963 (-[DOMRGBColor _initWithRGB:WebCore::]):
33964 (+[DOMRGBColor _RGBColorWithRGB:WebCore::]):
33965 * bindings/scripts/CodeGeneratorObjC.pm:
33966 * css/CSSCharsetRule.idl: Added.
33967 * css/CSSFontFaceRule.idl: Added.
33968 * css/CSSImportRule.idl: Added.
33969 * css/CSSMediaRule.idl: Added.
33970 * css/CSSPageRule.idl: Added.
33972 * css/CSSStyleDeclaration.idl:
33973 * css/CSSStyleRule.idl: Added.
33974 * css/CSSStyleSheet.idl: Added.
33975 * css/CSSUnknownRule.idl: Added.
33976 * css/CSSValue.idl:
33977 * css/MediaList.idl:
33978 * css/RGBColor.idl: Added.
33982 2006-09-02 Graham Dennis <graham.dennis@gmail.com>
33984 Reviewed by Justin.
33986 http://bugs.webkit.org/show_bug.cgi?id=10579
33987 AppleStyleCommand::applyBlockStyle crash
33989 * editing/ApplyStyleCommand.cpp:
33990 (WebCore::ApplyStyleCommand::applyBlockStyle): Prevent a crash by
33991 making sure that the 'beyondEnd' node is after the start node.
33993 2006-09-02 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
33997 Bug 10454: Unix bakefile fixes
33998 http://bugs.webkit.org/show_bug.cgi?id=10454
34000 * WebCoreSources.bkl:
34001 * platform/gdk/RenderPopupMenuGdk.cpp:
34002 (WebCore::RenderPopupMenuGdk::RenderPopupMenuGdk):
34003 * platform/gdk/RenderPopupMenuGdk.h:
34004 * platform/gdk/RenderThemeGdk.cpp:
34005 (WebCore::RenderThemeGdk::createPopupMenu):
34006 (WebCore::RenderThemeGdk::systemFont):
34007 * platform/gdk/RenderThemeGdk.h:
34008 * platform/gdk/TemporaryLinkStubs.cpp:
34009 * webcore-base.bkl:
34011 2006-09-02 Adele Peterson <adele@apple.com>
34013 Reviewed by Anders.
34015 - Fix for http://bugs.webkit.org/show_bug.cgi?id=10667
34016 Password: Double-click should select-all to avoid exposing word boundaries
34018 Test: fast/forms/password-doubleclick-selection.html
34020 * editing/visible_units.cpp:
34021 (WebCore::previousBoundary): When searching for boundaries in renderers that use the textSecurity property,
34022 convert characters in strings to alpha-numeric characters (in this case, all 'x's) so that every character
34023 isn't treated as a punctuation boundary.
34024 (WebCore::nextBoundary): ditto.
34025 * editing/TextIterator.cpp: (WebCore::SimplifiedBackwardsTextIterator::handleTextNode): Updated to use the renderer's
34026 string instead of the node value. This matches the base class implementation of handleTextNode.
34029 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
34030 Avoid unnecessary check for password field case if the smart replace condition is false.
34031 * page/Frame.cpp: (WebCore::Frame::mayCopy): Removed duplicate code. Calls isSelectionInPasswordField now.
34032 * rendering/RenderText.cpp: (WebCore::RenderText::setText): Updated formatting.
34034 2006-09-01 David Hyatt <hyatt@apple.com>
34036 Fix for 10682, refine the FOUC paint suppression logic so that it
34037 is only triggered when FOUC would really have occurred.
34041 * css/cssstyleselector.cpp:
34042 (WebCore::CSSStyleSelector::styleForElement):
34043 * dom/Document.cpp:
34044 (WebCore::Document::Document):
34045 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
34046 (WebCore::Document::updateStyleSelector):
34048 (WebCore::Document::haveStylesheetsLoaded):
34049 (WebCore::Document::):
34050 (WebCore::Document::didLayoutWithPendingStylesheets):
34051 * rendering/RenderBlock.cpp:
34052 (WebCore::RenderBlock::paintChildren):
34053 * rendering/RenderLayer.cpp:
34054 (WebCore::RenderLayer::paintLayer):
34056 2006-09-01 MorganL <morlmor@yahoo.com>
34058 Reviewed by Darin. Updated/landed by Adam.
34060 Fixes http://bugs.webkit.org/show_bug.cgi?id=10553
34061 Windows build fixes
34063 * WebCore.vcproj/WebCore/WebCore.vcproj:
34064 * WebCore.vcproj/WebCore/build-generated-files.sh:
34065 * bridge/win/FrameWin.h:
34066 * bridge/win/PageWin.cpp:
34067 (WebCore::Page::Page):
34068 * platform/win/FontWin.cpp:
34069 * platform/win/TemporaryLinkStubs.cpp:
34070 (FrameWin::registerCommandForUndo):
34071 (FrameWin::canPaste):
34072 (FrameWin::issuePasteAndMatchStyleCommand):
34073 (WebCore::screenDepthPerComponent):
34074 (WebCore::screenIsMonochrome):
34075 (FrameWin::overrideMediaType):
34076 (FrameWin::saveDocumentState):
34077 (FrameWin::respondToChangedContents):
34078 (FrameWin::handledOnloadEvents):
34079 (FrameWin::createPlugin):
34080 (FrameWin::objectContentType):
34082 (TextField::TextField):
34083 (RenderPopupMenuWin::hidePopup):
34084 (RenderThemeWin::paintMenuList):
34085 (RenderThemeWin::adjustMenuListStyle):
34086 (CString::CString):
34088 * platform/win/WidgetWin.cpp:
34089 * rendering/RenderPopupMenuWin.h:
34091 2006-09-01 Brady Eidson <beidson@apple.com>
34093 Reviewed by Tim Omernick
34095 Added an SQLDatabase logging channel. Changed all SQLDatabase and SQLStatement errors to use this new channel.
34096 Also, as a popular request from other contributers, added a log for all prepare(), step(), finalize(), and reset()s
34097 Also, fixed a grammar error in my previous ChangeLog entry.
34099 * bridge/mac/WebCorePageBridge.mm:
34100 (initializeLoggingChannelsIfNecessary): Initialize the new channel
34101 * loader/icon/SQLDatabase.cpp:
34102 (WebCore::SQLDatabase::setBusyTimeout): Use SQLDatabase logging channel
34103 (WebCore::SQLDatabase::setBusyHandler): ditto
34104 (WebCore::SQLDatabase::clearAllTables): ditto
34105 (WebCore::SQLDatabase::runVacuumCommand): ditto
34106 * loader/icon/SQLStatement.cpp:
34107 (WebCore::SQLStatement::prepare): Added a log
34108 (WebCore::SQLStatement::step): ditto
34109 (WebCore::SQLStatement::finalize): ditto
34110 (WebCore::SQLStatement::reset): ditto
34111 (WebCore::SQLStatement::getColumnBlob): Use SQLDatabase logging channel
34112 (WebCore::SQLStatement::returnTextResults): ditto
34113 (WebCore::SQLStatement::returnTextResults16): ditto
34114 (WebCore::SQLStatement::returnIntResults): ditto
34115 (WebCore::SQLStatement::returnInt64Results): ditto
34116 (WebCore::SQLStatement::returnDoubleResults): ditto
34117 * platform/Logging.cpp:
34118 (WebCore::): Added new logging channel
34119 * platform/Logging.h: ditto
34121 2006-09-01 Adele Peterson <adele@apple.com>
34123 Reviewed by Tim Omernick.
34125 - Fix for http://bugs.webkit.org/show_bug.cgi?id=6990
34126 Switch to use new text field implementation for <input type="password">
34128 * css/html4.css: Give input[password] the same style properties as normal text fields.
34129 * html/HTMLInputElement.cpp: Removed checks for TextFieldAppearance.
34130 (WebCore::HTMLInputElement::selectionStart):
34131 (WebCore::HTMLInputElement::selectionEnd):
34132 (WebCore::HTMLInputElement::setSelectionStart):
34133 (WebCore::HTMLInputElement::setSelectionEnd):
34134 (WebCore::HTMLInputElement::select):
34135 (WebCore::HTMLInputElement::setSelectionRange):
34136 (WebCore::HTMLInputElement::createRenderer):
34137 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField):
34139 2006-09-01 Brady Eidson <beidson@apple.com>
34141 Reviewed by John (though Sarge reviewed a previous patch of mine in an attempt to review this one)
34143 Added some constants for SQL Result Codes to SQLDatabase.h
34144 This way, users of SQLDatabase can access all necessary SQLite functionality
34145 without having access to sqlite3.h.
34146 Also reordered some files in the xcodeproj and some #includes
34148 * WebCore.xcodeproj/project.pbxproj: Reordered some files
34149 * loader/icon/IconDataCache.cpp:
34150 (WebCore::IconDataCache::writeToDatabase): Use our new result codes
34151 * loader/icon/IconDatabase.cpp:
34152 (WebCore::IconDatabase::sharedIconDatabase): Use our new result codes
34153 (WebCore::IconDatabase::retainIconForPageURL): Use our new result codes
34154 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Use our new result codes
34155 (WebCore::IconDatabase::addIconForIconURLQuery): Use our new result codes
34156 (WebCore::IconDatabase::hasIconForIconURLQuery): Use our new result codes
34157 * loader/icon/SQLDatabase.cpp:
34158 (WebCore::SQLDatabase::lastError): Moved from header to eliminate dependency on sqlite3.h in header
34159 (WebCore::SQLDatabase::lastErrorMsg): Ditto
34160 * loader/icon/SQLDatabase.h: Removed #include <sqlite3.h>
34161 * loader/icon/SQLStatement.cpp: Added #include <sqlite3.h>
34162 * loader/icon/SQLStatement.h: Removed #include <sqlite3.h>
34164 2006-09-01 David Hyatt <hyatt@apple.com>
34166 Fix for 10680, contrained flexbox is not shrinking flexible children
34167 properly. (Fixing in case it's hit by the file upload control.)
34171 Adding 026.html to fast/flexbox.
34173 * rendering/RenderFlexibleBox.cpp:
34174 (WebCore::RenderFlexibleBox::allowedChildFlex):
34176 2006-09-01 Nikolas Zimmermann <zimmermann@kde.org>
34178 Reviewed by eseidel. Landed by eseidel.
34180 Implement support for multiple parents in the SVG idls.
34182 For class "FooBar" go through all parents recursively,
34183 collect their attributes & functions & constants and
34184 add them directly into the class "FooBar".
34186 (Note: It is NOT enabled by default for now - still some things related to SVGAnimated* need to be solved first)
34188 * bindings/scripts/CodeGenerator.pm:
34189 * bindings/scripts/CodeGeneratorJS.pm:
34190 * bindings/scripts/generate-bindings.pl:
34192 2006-09-02 Nikolas Zimmermann <zimmermann@kde.org>
34194 Reviewed by hyatt. Landed by eseidel.
34196 Fix build on Linux.
34198 * CMakeLists.txt: Add platform/CString.cpp.
34199 * platform/qt/FrameQt.cpp: Correct repsondToChangedContents() signature
34200 * platform/qt/FrameQt.h:: Correct respondToChangedContents() signature
34202 2006-09-01 Darin Adler <darin@apple.com>
34206 - a few small tweaks to the icon database bridge
34208 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed unnecessary declarations.
34209 Renamed sharedBridgeInstance to sharedInstance.
34210 * bridge/mac/WebCoreIconDatabaseBridge.mm: Put functions inside WebCore namespace.
34211 (WebCore::IconDatabase::loadIconFromURL): Updated for sharedInstance namespace.
34213 2006-09-01 Timothy Hatcher <timothy@apple.com>
34217 <rdar://problem/4651318> REGRESSION: can't drag library items to widget in Dashcode
34218 <rdar://problem/4701626> REGRESSION: Unit Converter widget doesn't work convert data in its fields
34220 jsNull should not be returned as NSNull because existing applications do not
34221 expect that return value. Return as nil for backwards compatibility.
34223 * bindings/objc/WebScriptObject.mm:
34224 (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
34226 2006-09-01 Alexey Proskuryakov <ap@nypop.com>
34230 * loader/Decoder.cpp:
34231 (Decoder::Decoder): Use String::latin1().
34233 2006-09-01 Alexey Proskuryakov <ap@nypop.com>
34237 - http://bugs.webkit.org/show_bug.cgi?id=5620
34238 Should only honor encoding from <meta> in HTML
34240 - http://bugs.webkit.org/show_bug.cgi?id=9783
34241 An XML declaration without an explicit encoding incorrectly triggers
34242 UTF-8 encoding in an HTML document
34244 - http://bugs.webkit.org/show_bug.cgi?id=10155
34245 CSS2: @charset is not supported
34247 * loader/Decoder.cpp:
34248 (Decoder::Decoder): Decoder now knows what kind of content it is decoding.
34249 Also, the browser default encoding can now be passed directly to the constructor,
34250 to streamline the logic.
34251 (Decoder::decode): Add support for @charset, differentiate between HTML and XML.
34252 (Decoder::setEncodingName): Style cleanup.
34253 (Decoder::encodingName): Ditto.
34254 (Decoder::flush): Ditto.
34255 * loader/Decoder.h:
34256 (WebCore::Decoder::):
34258 * bridge/mac/WebCoreEncodings.mm: Pass a content type of text/html to Decoder.
34260 * loader/CachedCSSStyleSheet.cpp:
34261 (WebCore::CachedCSSStyleSheet::CachedCSSStyleSheet):
34262 (WebCore::CachedCSSStyleSheet::setCharset):
34263 (WebCore::CachedCSSStyleSheet::data):
34264 * loader/CachedCSSStyleSheet.h:
34265 Use Decoder instead of TextEncoding::toUnicode() to enable @charset support.
34267 * loader/CachedXBLDocument.cpp:
34268 (WebCore::CachedXBLDocument::CachedXBLDocument): Pass a content type.
34269 * loader/CachedXSLStyleSheet.cpp:
34270 (WebCore::CachedXSLStyleSheet::CachedXSLStyleSheet): Ditto.
34271 (WebCore::CachedXSLStyleSheet::data): Flush the decoder to be safe.
34274 (WebCore::Frame::write): Pass a content type and a default encoding to
34276 * xml/XSLTProcessor.cpp:
34277 (WebCore::XSLTProcessor::createDocumentFromSource): Pass the output document
34279 * xml/xmlhttprequest.cpp:
34280 (WebCore::XMLHttpRequest::receivedData): Ditto.
34282 2006-09-01 Adele Peterson <adele@apple.com>
34286 - Fix for http://bugs.webkit.org/show_bug.cgi?id=10580
34287 Password: New secure text field allows non-Roman text entry
34289 * bridge/mac/FrameMac.mm:
34290 (WebCore::FrameMac::setSecureKeyboardEntry): Enable and disable Roman keyboards when switching in and out of this mode.
34291 (WebCore::FrameMac::isSecureKeyboardEntry): Changed secureKeyboardEntry to isSecureKeyboardEntry.
34292 * bridge/mac/FrameMac.h: ditto.
34293 * page/Frame.cpp: (WebCore::Frame::setIsActive): ditto.
34294 * page/Frame.h: (WebCore::Frame::isSecureKeyboardEntry): ditto.
34296 2006-09-01 Adele Peterson <adele@apple.com>
34300 - Fix for http://bugs.webkit.org/show_bug.cgi?id=10665
34301 Password: Disable smartReplace for new password fields
34303 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply):
34304 Don't smart replace when the selection being replaced is in a password field.
34306 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
34310 - patch for http://bugs.webkit.org/show_bug.cgi?id=10669
34311 Auto-generate the remaining Objective-C HTML DOM bindings
34313 Auto-generates DOMHTMLAnchorElement, DOMHTMLAreaElement,
34314 DOMHTMLBaseFontElement, DOMHTMLFontElement, DOMHTMLFrameElement,
34315 DOMHTMLFrameSetElement, DOMHTMLHRElement, DOMHTMLIFrameElement,
34316 DOMHTMLImageElement, DOMHTMLMapElement, DOMHTMLModElement,
34317 DOMHTMLObjectElement, DOMHTMLParamElement, DOMHTMLScriptElement,
34318 DOMHTMLTableCaptionElement, DOMHTMLTableCellElement,
34319 DOMHTMLTableColElement, DOMHTMLTableElement, DOMHTMLTableRowElement,
34320 and DOMHTMLTableSectionElement.
34322 Splits DOMHTMLAppletElement and DOMHTMLOptionElement into their own
34325 * DerivedSources.make:
34326 * WebCore.xcodeproj/project.pbxproj:
34327 * bindings/objc/DOM.mm:
34328 * bindings/objc/DOMExtensions.h:
34329 * bindings/objc/DOMHTML.h:
34330 * bindings/objc/DOMHTML.mm:
34331 (-[DOMHTMLAnchorElement absoluteLinkURL]):
34332 (-[DOMHTMLImageElement altDisplayString]):
34333 (-[DOMHTMLImageElement absoluteImageURL]):
34334 (-[DOMHTMLImageElement WebCore::]):
34335 (-[DOMHTMLObjectElement absoluteImageURL]):
34336 (-[DOMHTMLObjectElement WebCore::]):
34337 (+[DOMHTMLTableCaptionElement _tableCaptionElementWith:]):
34338 (-[DOMHTMLTableCaptionElement _tableCaptionElement]):
34339 (+[DOMHTMLTableSectionElement _tableSectionElementWith:]):
34340 (-[DOMHTMLTableSectionElement _tableSectionElement]):
34341 (+[DOMHTMLTableElement _tableElementWith:]):
34342 (-[DOMHTMLTableElement _tableElement]):
34343 (+[DOMHTMLTableCellElement _tableCellElementWith:]):
34344 (-[DOMHTMLTableCellElement _tableCellElement]):
34345 * bindings/objc/DOMHTMLAppletElement.h: Added.
34346 * bindings/objc/DOMHTMLAppletElement.mm: Added.
34347 (-[DOMHTMLAppletElement WebCore::]):
34348 (-[DOMHTMLAppletElement align]):
34349 (-[DOMHTMLAppletElement setAlign:]):
34350 (-[DOMHTMLAppletElement alt]):
34351 (-[DOMHTMLAppletElement setAlt:]):
34352 (-[DOMHTMLAppletElement archive]):
34353 (-[DOMHTMLAppletElement setArchive:]):
34354 (-[DOMHTMLAppletElement code]):
34355 (-[DOMHTMLAppletElement setCode:]):
34356 (-[DOMHTMLAppletElement codeBase]):
34357 (-[DOMHTMLAppletElement setCodeBase:]):
34358 (-[DOMHTMLAppletElement height]):
34359 (-[DOMHTMLAppletElement setHeight:]):
34360 (-[DOMHTMLAppletElement hspace]):
34361 (-[DOMHTMLAppletElement setHspace:]):
34362 (-[DOMHTMLAppletElement name]):
34363 (-[DOMHTMLAppletElement setName:]):
34364 (-[DOMHTMLAppletElement object]):
34365 (-[DOMHTMLAppletElement setObject:]):
34366 (-[DOMHTMLAppletElement vspace]):
34367 (-[DOMHTMLAppletElement setVspace:]):
34368 (-[DOMHTMLAppletElement width]):
34369 (-[DOMHTMLAppletElement setWidth:]):
34370 * bindings/objc/DOMHTMLInternal.h:
34371 * bindings/objc/DOMHTMLOptionElement.h: Added.
34372 * bindings/objc/DOMHTMLOptionElement.mm: Added.
34373 (-[DOMHTMLOptionElement WebCore::]):
34374 (-[DOMHTMLOptionElement form]):
34375 (-[DOMHTMLOptionElement defaultSelected]):
34376 (-[DOMHTMLOptionElement setDefaultSelected:]):
34377 (-[DOMHTMLOptionElement text]):
34378 (-[DOMHTMLOptionElement index]):
34379 (-[DOMHTMLOptionElement disabled]):
34380 (-[DOMHTMLOptionElement setDisabled:]):
34381 (-[DOMHTMLOptionElement label]):
34382 (-[DOMHTMLOptionElement setLabel:]):
34383 (-[DOMHTMLOptionElement selected]):
34384 (-[DOMHTMLOptionElement setSelected:]):
34385 (-[DOMHTMLOptionElement value]):
34386 (-[DOMHTMLOptionElement setValue:]):
34387 * bindings/objc/DOMPrivate.h:
34388 * bindings/scripts/CodeGeneratorObjC.pm:
34390 2006-08-31 Alice Liu <alice.liu@apple.com>
34394 Fixed <rdar://problem/4463870> Switch to use new text field implementation for <isindex>
34396 * bindings/objc/DOMHTML.mm:
34397 (-[DOMHTMLInputElement _isTextField]):
34398 moved isindex from the list of nonTextInputTypes to the list of textInputTypes
34400 added isindex to certain rules that applied to input fields
34401 * html/HTMLInputElement.cpp:
34402 (WebCore::HTMLInputElement::canHaveSelection):
34403 (WebCore::HTMLInputElement::selectionStart):
34404 (WebCore::HTMLInputElement::selectionEnd):
34405 (WebCore::HTMLInputElement::setSelectionStart):
34406 (WebCore::HTMLInputElement::setSelectionEnd):
34407 (WebCore::HTMLInputElement::select):
34408 (WebCore::HTMLInputElement::setSelectionRange):
34409 (WebCore::HTMLInputElement::createRenderer):
34410 for the 8 methods above, moved the case for isindex to the same case as text
34411 * html/HTMLInputElement.h:
34412 (WebCore::HTMLInputElement::isNonWidgetTextField):
34413 added isindex to this test
34414 * html/HTMLIsIndexElement.idl:
34415 HTMLIsIndexElement inherits from HTMLInputElement
34416 * rendering/RenderLineEdit.cpp:
34417 (WebCore::RenderLineEdit::RenderLineEdit):
34418 removed the case for isindex since we changed the renderer type from a RenderLineEdit
34419 to a RenderTextControl in WebCore::HTMLInputElement::createRenderer()
34421 2006-08-31 David Harrison <harrison@apple.com>
34425 <rdar://problem/4708119> REGRESSION: Cannot observe an AXTextField element directly
34428 <rdar://problem/4708022> REGRESSION: TextRange-based attributes are missing from text fields
34429 <rdar://problem/4709515> REGRESSION: Expose text areas
34431 Remaining work for those two bugs in new bugs:
34433 <rdar://problem/4712101> Support NSAccessibilityVisibleCharacterRangeAttribute for AXTextField and AXTextArea elements
34434 <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
34435 <rdar://problem/4712125> Support setting NSAccessibilitySelectedTextAttribute for AXTextField and AXTextArea elements
34437 * bridge/AXObjectCache.h:
34438 (WebCore::AXObjectCache::postNotificationToElement):
34439 * bridge/mac/AXObjectCacheMac.mm:
34440 (WebCore::AXObjectCache::postNotification):
34441 (WebCore::AXObjectCache::postNotificationToElement):
34442 Removed postNotificationToTopWebArea.
34443 postNotification now posts to input element or top web area, as appropriate.
34444 postNotificationToElement posts to the specified element itself.
34446 * bridge/mac/FrameMac.h:
34447 * bridge/mac/FrameMac.mm:
34448 (WebCore::FrameMac::respondToChangedContents):
34449 Take a selection. Pass the starting position's renderer to postNotification so that postNotification can post to the appropriate input element, if any.
34451 * bridge/mac/WebCoreAXObject.h:
34452 * bridge/mac/WebCoreAXObject.mm:
34453 (-[WebCoreAXObject isWebArea]):
34454 (-[WebCoreAXObject isAnchor]):
34455 (-[WebCoreAXObject isTextRange]):
34456 New convenience methods.
34458 (-[WebCoreAXObject role]):
34459 (-[WebCoreAXObject roleDescription])
34460 (-[WebCoreAXObject value]):
34461 (-[WebCoreAXObject accessibilityDescription]):
34462 Support AXTextField and AXTextArea.
34464 (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
34465 Register AXTextField and AXTextArea elements so notifications to them can be observed.
34467 (-[WebCoreAXObject accessibilityIsIgnored]):
34468 Use new convenience method isWebArea.
34470 (-[WebCoreAXObject accessibilityAttributeNames]):
34471 Simplify the array creation.
34472 Add text range support.
34474 (-[WebCoreAXObject accessibilityAttributeValue:]):
34475 Add text range support.
34477 (-[WebCoreAXObject canSetFocusAttribute]):
34478 (-[WebCoreAXObject canSetValueAttribute]):
34479 (-[WebCoreAXObject canSetTextRangeAttributes]):
34480 New convenience methods.
34482 (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
34483 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
34484 Add text range support.
34486 (-[WebCoreAXObject observableObject]):
34487 New to locate text field or text area to notify.
34489 * dom/Document.cpp:
34490 (WebCore::Document::updateSelection):
34491 Post AXSelectedTextChanged notification with new selection's start node.
34492 postNotification will send it to the input element, if there is one, or the top WebArea.
34494 (WebCore::Document::implicitClose):
34495 Use postNotificationToElement now that it acts like the old postNotification.
34499 (WebCore::Frame::appliedEditing):
34500 (WebCore::Frame::unappliedEditing):
34501 (WebCore::Frame::reappliedEditing):
34502 Pass the selection of interest to respondToChangedContents.
34504 * page/FrameView.cpp:
34505 (WebCore::FrameView::layout):
34506 Use postNotificationToElement now that it acts like the old postNotification.
34508 2006-08-31 Adele Peterson <adele@apple.com>
34512 WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10666
34513 Password: Disallow Spelling, Font, Speech, and Writing Direction context menu
34515 * bridge/mac/WebCoreFrameBridge.h:
34516 * bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge isSelectionInPasswordField]): Added.
34517 * page/Frame.cpp: (WebCore::Frame::isSelectionInPasswordField): Added.
34520 2006-08-31 Anders Carlsson <acarlsson@apple.com>
34522 Reviewed by Tim O, Hyatt.
34524 * WebCore.xcodeproj/project.pbxproj:
34528 Get rid of include, add KURL constructor that takes a CFURLRef.
34530 * platform/PlatformString.h:
34531 * platform/StringImpl.h:
34532 Get rid of include.
34534 * platform/cf/KURLCFNet.cpp:
34535 (WebCore::KURL::KURL):
34538 * platform/cf/ResourceLoaderCFNet.cpp:
34541 * platform/cf/StringCF.cpp:
34542 (WebCore::String::createCFString):
34543 Move this here from PlatformString.h
34545 * platform/cf/StringImplCF.cpp:
34546 (WebCore::StringImpl::createCFString):
34549 * platform/mac/KURLMac.mm:
34550 Move createCFURL() to KURLCFNet.cpp
34552 2006-08-31 Dave Hyatt <hyatt@apple.com>
34554 Make ScrollBar.cpp suitable for compiling on Windows by removing the #import.
34558 * platform/ScrollBar.cpp:
34560 2006-08-31 Brady Eidson <beidson@apple.com>
34564 Cleaned up my last patch after further considerations
34566 * loader/icon/IconDatabase.cpp:
34567 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Uses the new checkForDanglingPageURLs to check
34568 for and fix danglers. Does so in all builds (changed from debug only in my last patch)
34569 (WebCore::IconDatabase::syncDatabase): Uses the new checkForDanglingPageURLs to check for danglers
34570 (WebCore::IconDatabase::checkForDanglingPageURLs): This checks and, if asked via an arg, prunes the dangling pageURLs
34571 * loader/icon/IconDatabase.h:
34573 2006-08-31 Anders Carlsson <acarlsson@apple.com>
34575 Reviewed by Maciej.
34577 Add CString. CString is a simple, null-terminated byte buffer that supports data
34578 sharing. Its main use is to be a better const char*.
34580 Also add latin1 and utf8 methods to String which returns CStrings.
34582 * platform/CString.cpp: Added.
34583 (WebCore::CString::CString):
34584 (WebCore::CString::init):
34585 (WebCore::CString::data):
34586 (WebCore::CString::length):
34587 (WebCore::CString::deprecatedCString):
34588 * platform/CString.h: Added.
34589 (WebCore::CStringBuffer::CStringBuffer):
34590 (WebCore::CStringBuffer::data):
34591 (WebCore::CStringBuffer::length):
34592 (WebCore::CString::CString):
34593 (WebCore::CString::operator const char*):
34594 (WebCore::CString::isNull):
34595 * platform/PlatformString.h:
34596 * platform/String.cpp:
34597 (WebCore::String::latin1):
34598 (WebCore::String::utf8):
34600 2006-08-31 Brady Eidson <beidson@apple.com>
34604 Previously mentioned ASSERT was hit right away by folks, as we first need to bring their old icon.db into consistency
34605 Changed the ASSERT to a LOG_ERROR and added a method for debug builds to bring a DB back together.
34607 * loader/icon/IconDatabase.cpp:
34608 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Check for the danglers and prune them out
34609 (WebCore::IconDatabase::syncDatabase): Check for the danglers and log the error
34610 (WebCore::IconDatabase::pruneDanglingPageURLs): Prune the danglers
34611 * loader/icon/IconDatabase.h:
34613 2006-08-31 Brady Eidson <beidson@apple.com>
34617 Fixed an error where an Icon's IconID could change without the change being reflected in the PageURL table,
34618 causing icons to be pruned before their time and pages to lose their icons. This is because I misunderstood
34619 how SQLite handles the "ON CONFLICT REPLACE" condition, which is to delete the row and re-insert instead of
34620 perform an update. Also added an assertion to make sure this doesn't happen again.
34622 * loader/icon/IconDataCache.cpp:
34623 (WebCore::IconDataCache::writeToDatabase): Instead of one INSERT relying on SQLites conflict handling, broke
34624 this into an UPDATE attempt followed by the initial INSERT
34625 * loader/icon/IconDatabase.cpp:
34626 (WebCore::IconDatabase::createDatabaseTables): Slight tweak to the database schema to prevent this from happening
34627 in the future. Note this change will not cause incompatibility with the current schema, therefore I didn't update
34628 the official database version number
34629 (WebCore::IconDatabase::syncDatabase): Added an ASSERT to look for this condition in the future
34630 * loader/icon/SQLDatabase.cpp:
34631 (WebCore::SQLDatabase::lastChanges): Added this SQLite accessor to see if an UPDATE command actually changed a row
34632 * loader/icon/SQLDatabase.h: Ditto
34634 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
34638 - patch for http://bugs.webkit.org/show_bug.cgi?id=10653
34639 Auto-generate another 20 Objective-C DOM HTML bindings
34641 Auto-generates DOMHTMLBRElement, DOMHTMLButtonElement, DOMHTMLDListElement,
34642 DOMHTMLDirectoryElement, DOMHTMLDivElement, DOMHTMLFieldSetElement,
34643 DOMHTMLHeadingElement, DOMHTMLInputElement, DOMHTMLLIElement, DOMHTMLLabelElement,
34644 DOMHTMLLegendElement, DOMHTMLMenuElement, DOMHTMLOListElement, DOMHTMLOptGroupElement,
34645 DOMHTMLParagraphElement, DOMHTMLPreElement, DOMHTMLQuoteElement, DOMHTMLSelectElement,
34646 DOMHTMLTextAreaElement, and DOMHTMLUListElement.
34648 * DerivedSources.make:
34649 * WebCore.xcodeproj/project.pbxproj:
34650 * bindings/objc/DOM.mm:
34651 * bindings/objc/DOMExtensions.h:
34652 * bindings/objc/DOMHTML.h:
34653 * bindings/objc/DOMHTML.mm:
34654 (-[DOMHTMLInputElement altDisplayString]):
34655 (-[DOMHTMLInputElement absoluteImageURL]):
34656 (-[DOMHTMLInputElement WebCore::]):
34657 (-[DOMHTMLInputElement _rectOnScreen]):
34658 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
34659 (-[DOMHTMLInputElement _selectedRange]):
34660 (-[DOMHTMLInputElement _setAutofilled:]):
34661 * bindings/objc/DOMHTMLInternal.h:
34662 * bindings/objc/DOMPrivate.h:
34663 * bindings/scripts/CodeGeneratorObjC.pm:
34665 2006-08-31 Adele Peterson <adele@apple.com>
34667 Reviewed by John Sullivan.
34669 Removing use of SPI in favor of Carbon API to enable and disable secure event input.
34671 * WebCore.exp: Removed wkSecureEventInput and wkSetSecureEventInput.
34672 * platform/mac/WebCoreSystemInterface.h: ditto.
34673 * platform/mac/WebCoreSystemInterface.mm: ditto.
34675 * bridge/mac/FrameMac.mm:
34676 (WebCore::FrameMac::setSecureKeyboardEntry): Uses EnableSecureEventInput and DisableSecureEventInput.
34677 (WebCore::FrameMac::secureKeyboardEntry): Uses IsSecureEventInputEnabled.
34679 2006-08-30 Brady Eidson <beidson@apple.com>
34681 Reviewed by "common sense" (and Maciej)
34683 Fixed two logging typos
34685 * loader/icon/IconDatabase.cpp:
34686 (WebCore::IconDatabase::syncDatabase):
34688 2006-08-30 Adele Peterson <adele@apple.com>
34690 Adding missing nil check for focus node.
34692 * page/Frame.cpp: (WebCore::Frame::setIsActive):
34694 2006-08-30 Adele Peterson <adele@apple.com>
34698 WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10575
34699 Enable secure input mode for new password fields
34701 * WebCore.exp: Added wkSetSecureEventInput and wkSecureEventInput.
34702 * platform/mac/WebCoreSystemInterface.h: ditto.
34703 * platform/mac/WebCoreSystemInterface.mm: ditto.
34705 * page/Frame.cpp: (WebCore::Frame::setIsActive): Enables and disables secure keyboard entry based on whether the frame becomes active.
34706 * bridge/mac/FrameMac.h:
34707 * bridge/mac/FrameMac.mm:
34708 (WebCore::FrameMac::setSecureKeyboardEntry): Added. Calls wkSetSecureEventInput.
34709 (WebCore::FrameMac::secureKeyboardEntry): Added. Calls wkSecureEventInput.
34710 * html/HTMLInputElement.cpp:
34711 (WebCore::HTMLInputElement::dispatchFocusEvent): For password fields, enable secure keyboard entry.
34712 (WebCore::HTMLInputElement::dispatchBlurEvent): For password fields, disable secure keyboard entry.
34714 (WebCore::Frame::setSecureKeyboardEntry):
34715 (WebCore::Frame::secureKeyboardEntry):
34717 2006-08-30 Darin Adler <darin@apple.com>
34719 Reviewed by Tim Hatcher.
34721 - eliminated the need for UsesPassRefPtr in IDL files
34722 - got rid of the category mechanism for ObjC generated DOM headers
34723 (after discussions with Tim H where we decided it's not needed)
34724 - simplified use of macro inside ObjC generated code
34726 * ForwardingHeaders/wtf/GetPtr.h: Added.
34728 * bindings/scripts/CodeGeneratorObjC.pm: Removed code to handle
34729 categories. Eliminated use of DOM_cast since that's for the protection
34730 of human programmers -- the script won't make mistakes that it needs
34731 to catch. Changed macro to always be named IMPL instead of incorporating
34732 the class name. Use WTF::getPtr to extract the pointer, and removed the
34733 code that uses .get() to extract the pointer in the PassRefPtr case.
34735 * dom/Attr.idl: Removed all uses of UsesPassRefPtr and ObjCCatagory.
34736 * dom/DOMImplementation.idl: Ditto.
34737 * dom/Document.idl: Ditto.
34738 * dom/Element.idl: Ditto.
34739 * dom/NamedNodeMap.idl: Ditto.
34740 * html/HTMLDocument.idl: Ditto.
34741 * html/HTMLElement.idl: Ditto.
34742 * html/HTMLFormElement.idl: Ditto.
34743 * html/HTMLMapElement.idl: Ditto.
34744 * html/HTMLSelectElement.idl: Ditto.
34745 * html/HTMLTableElement.idl: Ditto.
34746 * html/HTMLTableRowElement.idl: Ditto.
34747 * html/HTMLTableSectionElement.idl: Ditto.
34749 2006-08-30 Brady Eidson <beidson@apple.com>
34753 <rdar://problem/4707718> - Instead of faking the user out with an in-memory icon database if their
34754 ~/Library/Safari/Icons is unwritable, we'll actually fail to open the icon database and the app will
34755 run as if it was disabled via a preference.
34756 Also took the opportunity to change some ASSERTS() to reasonable behavior
34758 * bridge/mac/WebCoreIconDatabaseBridge.mm:
34759 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]): NSLog on failure so the user has a chance to figure
34760 out there's a problem.
34761 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
34762 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]): From here on, just replaced ASSERTS() with reasonable behavior
34763 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
34764 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
34765 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
34766 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
34767 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
34768 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
34769 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
34770 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
34771 * loader/icon/IconDatabase.cpp:
34772 (WebCore::IconDatabase::open): If we fail to open, return false
34773 (WebCore::IconDatabase::~IconDatabase): cleanup better
34774 * loader/icon/IconDatabase.h:
34776 2006-08-30 David Harrison <harrison@apple.com>
34778 Reviewed by John Sullivan.
34780 <rdar://problem/4708007> REGRESSION: text field inside a webpage no longer has settable AXValueAttribute
34781 <rdar://problem/4707479> REGRESSION: controls inside a webpage no longer have settable AXFocusedAttribute
34783 * bridge/mac/WebCoreAXObject.mm:
34784 (-[WebCoreAXObject canSetFocusAttribute]):
34785 (-[WebCoreAXObject canSetValueAttribute]):
34786 New utility methods. Text fields and buttons are focusable.
34787 Text fields can have their value set. We need not make
34788 popupbutton value settable because AppKit does not.
34790 (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
34791 Call new utility methods.
34793 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
34794 Set focus for text field or button.
34795 Set value for text field.
34797 2006-08-30 David Hyatt <hyatt@apple.com>
34799 Fix for bugs 9000 and 10606. Add code to suppress painting when
34800 a FOUC situation would otherwise occur. There will still typically be
34801 a flash to white, but at least the wrong content won't show.
34805 * dom/Document.cpp:
34806 (WebCore::Document::Document):
34807 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
34808 (WebCore::Document::preferredStylesheetSet):
34809 (WebCore::Document::selectedStylesheetSet):
34810 (WebCore::Document::setSelectedStylesheetSet):
34811 (WebCore::Document::stylesheetLoaded):
34812 (WebCore::Document::updateStyleSelector):
34814 (WebCore::Document::haveStylesheetsLoaded):
34815 * rendering/RenderBlock.cpp:
34816 (WebCore::RenderBlock::paintChildren):
34817 * rendering/RenderLayer.cpp:
34818 (WebCore::RenderLayer::paintLayer):
34819 (WebCore::isSubframe):
34820 (WebCore::RenderLayer::hitTest):
34821 * rendering/RenderView.cpp:
34822 (WebCore::RenderView::repaintViewRectangle):
34824 2006-08-31 Nikolas Zimmermann <zimmermann@kde.org>
34826 Reviewed by Eric. Landed by rwlbuis.
34828 Apply Rob's fixes in RenderPathQt too -> unbreak build.
34830 * kcanvas/RenderPath.h: Some style cleanups.
34831 * kcanvas/device/qt/RenderPathQt.cpp:
34832 (WebCore::RenderPathQt::strokeContains):
34833 * kcanvas/device/qt/RenderPathQt.h:
34835 2006-08-30 Sam Weinig <sam.weinig@gmail.com>
34838 - patch for http://bugs.webkit.org/show_bug.cgi?id=10640
34839 Auto-generate 10 more Objective-C DOM HTML bindings
34841 Auto-generates DOMHTMLBaseElement, DOMHTMLBodyElement, DOMHTMLHeadElement,
34842 DOMHTMLHtmlElement, DOMHTMLIsIndexElement, DOMHTMLLinkElement,
34843 DOMHTMLMetaElement, DOMHTMLStyleElement and DOMHTMLTitleElement.
34845 Splits DOMHTMLDocument into it's own files.
34847 * DerivedSources.make:
34848 * WebCore.xcodeproj/project.pbxproj:
34849 * bindings/objc/DOM.mm:
34850 * bindings/objc/DOMExtensions.h:
34851 * bindings/objc/DOMHTML.h:
34852 * bindings/objc/DOMHTML.mm:
34853 * bindings/objc/DOMHTMLDocument.h: Added.
34854 * bindings/objc/DOMHTMLDocument.mm: Added.
34855 (-[DOMHTMLDocument WebCore::]):
34856 (-[DOMHTMLDocument title]):
34857 (-[DOMHTMLDocument setTitle:]):
34858 (-[DOMHTMLDocument referrer]):
34859 (-[DOMHTMLDocument domain]):
34860 (-[DOMHTMLDocument URL]):
34861 (-[DOMHTMLDocument body]):
34862 (-[DOMHTMLDocument setBody:]):
34863 (-[DOMHTMLDocument images]):
34864 (-[DOMHTMLDocument applets]):
34865 (-[DOMHTMLDocument links]):
34866 (-[DOMHTMLDocument forms]):
34867 (-[DOMHTMLDocument anchors]):
34868 (-[DOMHTMLDocument cookie]):
34869 (-[DOMHTMLDocument setCookie:]):
34870 (-[DOMHTMLDocument open]):
34871 (-[DOMHTMLDocument close]):
34872 (-[DOMHTMLDocument write:]):
34873 (-[DOMHTMLDocument writeln:]):
34874 (-[DOMHTMLDocument getElementById:]):
34875 (-[DOMHTMLDocument getElementsByName:]):
34876 (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
34877 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
34878 * bindings/objc/DOMHTMLInternal.h:
34879 * bindings/scripts/CodeGeneratorObjC.pm:
34880 * html/HTMLDocument.idl:
34882 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
34884 Reviewed by eseidel.
34886 Use QColor <-> Color conversion operator, instead of faking it.
34888 * platform/qt/FontQt.cpp:
34889 (WebCore::Font::drawGlyphs):
34890 * platform/qt/GraphicsContextQt.cpp:
34891 (WebCore::GraphicsContext::fillRect):
34893 2006-08-30 Rob Buis <buis@kde.org>
34897 http://bugs.webkit.org/show_bug.cgi?id=10586
34898 pointer-events has issues when things are not stroked/filled
34900 Add a param to fillContains/strokeContains to indicate
34901 whether we still want hit testing when there is no fill/stroke.
34903 * kcanvas/RenderPath.cpp:
34904 (WebCore::RenderPath::fillContains):
34905 (WebCore::RenderPath::nodeAtPoint):
34906 * kcanvas/RenderPath.h:
34907 * kcanvas/device/quartz/KCanvasItemQuartz.h:
34908 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
34909 (WebCore::KCanvasItemQuartz::strokeContains):
34911 2006-08-29 Justin Garcia <justin.garcia@apple.com>
34913 Reviewed by harrison
34915 <rdar://problem/4700297>
34916 REGRESSION: After replacing a misspelled word in a sentence, the selection extends to end of current line
34918 * editing/ReplaceSelectionCommand.cpp:
34919 (WebCore::ReplaceSelectionCommand::doApply): Rebalance whitespace
34920 around insertionPos before insertion because the content might
34921 cause a collapse, e.g. inserting <div>foo</div> at hello^ world.
34922 * editing/htmlediting.cpp:
34923 (WebCore::rebalanceWhitespaceInTextNode): Rebalance with all nbsps
34924 for simplicity, we can produce sequences of regular spaces and
34925 nbsps on serialization (10636).
34927 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
34929 Reviewed by eseidel.
34931 The old solution was slow & does not work correctly.
34932 Move the QString -> DeprecatedString conversion into
34933 DeprectedString.cpp, to be able to access allocateHandle().
34935 * platform/DeprecatedString.cpp:
34936 (WebCore::DeprecatedString::DeprecatedString):
34937 * platform/qt/StringQt.cpp:
34939 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
34941 Reviewed/landed by Adam.
34943 Implement containsCharacters() / determinePitch() functions.
34945 * platform/qt/FontDataQt.cpp:
34946 (WebCore::FontData::containsCharacters):
34947 (WebCore::FontData::determinePitch):
34949 2006-08-30 Brady Eidson <beidson@apple.com>
34951 Reviewed by Darin's rubberstamp
34953 We apparently have a fancy delateAllValues() helper for HashMap/Sets - I'll use that instead
34955 * WebCore.xcodeproj/project.pbxproj:
34956 * loader/icon/IconDatabase.cpp:
34957 (WebCore::IconDatabase::removeAllIcons):
34959 2006-08-29 waylonis <waylonis@google.com>
34961 Reviewed, tweaked by ggaren.
34963 - Changed to use ExecState on current context rather than global.
34964 Part of the fix for http://bugs.webkit.org/show_bug.cgi?id=10114
34965 * bindings/objc/WebScriptObject.mm:
34966 (+[WebScriptObject throwException:]):
34967 (-[WebScriptObject setException:]):
34969 2006-08-30 Adele Peterson <adele@apple.com>
34973 - WebCore part of fix for:
34974 http://bugs.webkit.org/show_bug.cgi?id=10576
34975 Disallow copy from new password fields
34977 * page/Frame.cpp: (WebCore::Frame::mayCopy): Added. Checks to see if the selection is within a password field.
34978 * page/Frame.h: Added mayCopy.
34980 * bridge/mac/FrameMac.h:
34981 * bridge/mac/FrameMac.mm:
34982 (WebCore::FrameMac::handleMouseMoveEvent): Checks mayCopy before starting a drag.
34983 (WebCore::FrameMac::mayDHTMLCut): Renamed to match the bridge method. This also checks mayCopy now.
34984 (WebCore::FrameMac::mayDHTMLCopy): ditto.
34985 (WebCore::FrameMac::tryDHTMLCut): ditto.
34986 (WebCore::FrameMac::tryDHTMLCopy): ditto.
34987 (WebCore::FrameMac::mayDHTMLPaste): Renamed to match the bridge function.
34988 (WebCore::FrameMac::tryDHTMLPaste): ditto.
34989 * bridge/mac/WebCoreFrameBridge.h:
34990 * bridge/mac/WebCoreFrameBridge.mm:
34991 (-[WebCoreFrameBridge mayCopy]): Calls the renamed method on frame.
34992 (-[WebCoreFrameBridge mayDHTMLCut]): ditto.
34993 (-[WebCoreFrameBridge mayDHTMLCopy]): ditto.
34994 (-[WebCoreFrameBridge mayDHTMLPaste]): ditto.
34995 (-[WebCoreFrameBridge tryDHTMLCut]): ditto.
34996 (-[WebCoreFrameBridge tryDHTMLCopy]): ditto.
34997 (-[WebCoreFrameBridge tryDHTMLPaste]): ditto.
34999 * css/html4.css: Added !important to the -webkit-text-security property for password fields.
35001 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
35005 Commit KDE related tweaks, to be able to
35006 differentiate between a Qt-only or a KDE build.
35008 * CMakeLists.txt: Move global variables up to trunk/CMakeLists.txt.
35009 Also rename USE_WEBKIT_SVG_SUPPORT to WEBKIT_USE_SVG_SUPPORT.
35011 2006-08-30 Timothy Hatcher <timothy@apple.com>
35013 Rubber-stamped by Brady.
35015 Fix for the generated headers to make the build work
35016 during "installhdrs" builds. Also export DOM headers
35017 using the #import <WebCore/DOM*.h> syntax.
35019 * WebCore.xcodeproj/project.pbxproj:
35020 * bindings/scripts/CodeGeneratorObjC.pm:
35022 2006-08-29 Brady Eidson <beidson@apple.com>
35024 Reviewed by Kevin Decker (Sarge)
35026 <rdar://problem/4678414> - New IconDB needs to delete icons when asked
35027 <rdar://problem/4707718> - If user's Icon directory is unwritable, Safari will crash at startup
35029 * bridge/mac/WebCoreIconDatabaseBridge.h:
35030 * bridge/mac/WebCoreIconDatabaseBridge.mm:
35031 (-[WebCoreIconDatabaseBridge removeAllIcons]): Added
35032 * loader/icon/IconDatabase.cpp:
35033 (WebCore::IconDatabase::open): If DB file is not writeable, create an in-memory DB for this session
35034 (WebCore::IconDatabase::close): Use new deleteAllPreparedStatements()
35035 (WebCore::IconDatabase::removeAllIcons): Actually implemented
35036 (WebCore::IconDatabase::deleteAllPreparedStatements): Added for convinience/consistency
35037 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Use new SQLDatabase::clearAllTables()
35038 * loader/icon/IconDatabase.h:
35039 * loader/icon/SQLDatabase.cpp:
35040 (WebCore::SQLDatabase::clearAllTables): Moved this from IconDatabase as it actually belongs here
35041 (WebCore::SQLDatabase::vacuum): Added
35042 * loader/icon/SQLDatabase.h:
35043 (WebCore::SQLDatabase::path): changed name from getPath()
35045 2006-08-29 Brady Eidson <beidson@apple.com>
35049 Added a truth value to setIconURLForPageURL so WebKit can avoid sending a notification
35050 This is a win on the iBench
35052 * bridge/mac/WebCoreIconDatabaseBridge.h:
35053 * bridge/mac/WebCoreIconDatabaseBridge.mm:
35054 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
35055 * loader/icon/IconDatabase.cpp:
35056 (WebCore::IconDatabase::setIconURLForPageURL):
35057 * loader/icon/IconDatabase.h:
35059 2006-08-29 Alice Liu <alice.liu@apple.com>
35063 Fixed <rdar://problem/4702021> REGRESSION: WebClip and Weather widgets shift downward vertically on screen after I drag them out from dashboard configure bar
35065 * platform/mac/ScreenMac.mm:
35066 (WebCore::flipScreenRect):
35067 reverted the one line in this method back to what it was before r15765. This changed caused window.screenY to be incorrect.
35069 2006-08-29 Darin Adler <darin@apple.com>
35073 - fix <rdar://problem/4701494> REGRESSION: Scrollbar on EPSN widget doesn't scroll (also affects Widgets widget, web inspector)
35075 The bug was that we would return "none" for computed style properties when they were
35078 Test: fast/css/computed-style-negative-top.html
35080 * css/CSSComputedStyleDeclaration.cpp:
35081 (WebCore::valueForLength): Moved special case for "undefined length" out of here.
35082 (WebCore::valueForMaxLength): Moved it into here.
35083 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Use valueForMaxLength
35084 only for max-height and max-width.
35086 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
35088 Reviewed by eseidel.
35090 Add path-related SVG JavaScript bindings to generation.
35094 2006-08-29 Eric Seidel <eric@webkit.org>
35098 Re-enable path-related SVG JavaScript bindings.
35099 http://bugs.webkit.org/show_bug.cgi?id=10623
35100 Split all SVGPathSeg*.idl files into Abs and Rel pieces.
35101 Move all SVGPath*.idl files into ksvg2/svg
35103 * DerivedSources.make:
35104 * WebCore.xcodeproj/project.pbxproj:
35105 * bindings/scripts/CodeGeneratorJS.pm: Special case Abs and Rel header includes
35106 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Removed.
35107 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Removed.
35108 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Removed.
35109 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Removed.
35110 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Removed.
35111 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Removed.
35112 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Removed.
35113 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Removed.
35114 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Removed.
35115 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Removed.
35116 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Removed.
35117 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Removed.
35118 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Removed.
35119 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Removed.
35120 * ksvg2/ksvg.h: move SVGPathSegment enum
35121 * ksvg2/svg/SVGPathElement.cpp: move SVGPathSegment enum
35122 (WebCore::SVGPathElement::toPathData):
35123 * ksvg2/svg/SVGPathSeg.cpp:
35124 (WebCore::SVGPathSeg::SVGPathSeg):
35125 * ksvg2/svg/SVGPathSeg.h:
35126 (WebCore::SVGPathSeg::):
35127 * ksvg2/svg/SVGPathSegArcAbs.idl: Added.
35128 * ksvg2/svg/SVGPathSegArcRel.idl: Added.
35129 * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Added.
35130 * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Added.
35131 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Added.
35132 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Added.
35133 * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Added.
35134 * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Added.
35135 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Added.
35136 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Added.
35137 * ksvg2/svg/SVGPathSegLinetoAbs.idl: Added.
35138 * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Added.
35139 * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Added.
35140 * ksvg2/svg/SVGPathSegLinetoRel.idl: Added.
35141 * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Added.
35142 * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Added.
35143 * ksvg2/svg/SVGPathSegMovetoAbs.idl: Added.
35144 * ksvg2/svg/SVGPathSegMovetoRel.idl: Added.
35146 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
35148 Reviewed by Eric, landed by Anders.
35150 Fixes one chunk of: http://bugs.webkit.org/show_bug.cgi?id=10604
35152 Finish Unity merging. Remove libcurl usage, in favour of KIO.
35153 This makes the regression testing fly! IO processing is way faster now.
35156 * platform/ResourceLoaderInternal.h:
35157 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
35158 * platform/qt/FrameQt.cpp:
35159 (WebCore::FrameQt::openURL):
35160 (WebCore::FrameQt::submitForm):
35161 (WebCore::FrameQt::urlSelected):
35162 (WebCore::FrameQt::createEmptyDocument):
35163 (WebCore::FrameQt::receivedData):
35164 (WebCore::FrameQt::receivedAllData):
35165 * platform/qt/FrameQt.h:
35166 * platform/qt/ResourceLoaderCurl.cpp: Removed.
35167 * platform/qt/ResourceLoaderManager.cpp:
35168 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
35169 (WebCore::ResourceLoaderManager::~ResourceLoaderManager):
35170 (WebCore::ResourceLoaderManager::self):
35171 (WebCore::ResourceLoaderManager::slotData):
35172 (WebCore::ResourceLoaderManager::slotMimetype):
35173 (WebCore::ResourceLoaderManager::slotResult):
35174 (WebCore::ResourceLoaderManager::remove):
35175 (WebCore::ResourceLoaderManager::add):
35176 * platform/qt/ResourceLoaderManager.h:
35177 * platform/qt/ResourceLoaderQt.cpp: Added.
35178 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
35179 (WebCore::ResourceLoader::~ResourceLoader):
35180 (WebCore::ResourceLoader::start):
35181 (WebCore::ResourceLoader::cancel):
35182 (WebCore::ResourceLoader::assembleResponseHeaders):
35183 (WebCore::ResourceLoader::retrieveCharset):
35184 (WebCore::ResourceLoader::receivedResponse):
35186 2006-08-29 Timothy Hatcher <timothy@apple.com>
35190 Bug 10632: Objective-C DOM should use the @property syntax for DOM attributes
35191 http://bugs.webkit.org/show_bug.cgi?id=10632
35193 Generate @property when MACOSX_DEPLOYMENT_TARGET is >= 10.5.
35194 This is backwards compatible with the getter/setter methods.
35195 Generate setter arguments with a "new" prefix to avoid the property
35196 name conflict warning. Also removes some whitespace and the comments
35197 that we added to the headers. This makes the headers look like what we ship now.
35199 * bindings/objc/DOMCSS.mm:
35200 (-[DOMDocument getComputedStyle::]): renamed a local variable to avoid the property name conflict.
35201 (-[DOMDocument getMatchedCSSRules::]): ditto.
35202 * bindings/scripts/CodeGeneratorObjC.pm: generate @property in the headers.
35204 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
35206 Reviewed and landed by Anders.
35208 Fix time calculation, by using a correct calculation. Calling time()
35209 returns a number of seconds, aka. an integer. Fix it by using gettimeofday().
35210 Patch originally proposed by Ronan Meneu <rmeneu@origyn.fr>
35212 * platform/qt/SystemTimeQt.cpp:
35213 (WebCore::currentTime):
35215 2006-08-29 Sam Weinig <sam.weinig@gmail.com>
35219 - patch for http://bugs.webkit.org/show_bug.cgi?id=10628
35220 Auto-generate the remaining Objective-C DOM bindings
35222 Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
35223 and DOMHTMLOptionsCollection, and lays groundwork for the rest of the
35224 HTML DOM bindings by adding/fixing the appropriate IDL's and updating
35225 the CodeGeneratorObjC.pm build script.
35227 * DerivedSources.make:
35228 * WebCore.xcodeproj/project.pbxproj:
35229 * bindings/objc/DOM.mm:
35230 * bindings/objc/DOMExtensions.h:
35231 * bindings/objc/DOMHTML.h:
35232 * bindings/objc/DOMHTML.mm:
35233 * bindings/objc/DOMHTMLInternal.h:
35234 * bindings/scripts/CodeGeneratorObjC.pm:
35235 * html/HTMLAnchorElement.idl:
35236 * html/HTMLAreaElement.idl:
35237 * html/HTMLBaseFontElement.idl:
35238 * html/HTMLBodyElement.idl:
35239 * html/HTMLButtonElement.idl:
35240 * html/HTMLCollection.idl: Added.
35241 * html/HTMLDocument.idl:
35242 * html/HTMLElement.idl:
35243 * html/HTMLFormElement.idl:
35244 * html/HTMLFrameElement.idl: Added.
35245 * html/HTMLFrameSetElement.idl: Added.
35246 * html/HTMLIFrameElement.idl: Added.
35247 * html/HTMLImageElement.idl:
35248 * html/HTMLInputElement.idl:
35249 * html/HTMLLabelElement.idl:
35250 * html/HTMLLegendElement.idl:
35251 * html/HTMLLinkElement.idl:
35252 * html/HTMLMapElement.idl:
35253 * html/HTMLObjectElement.idl: Added.
35254 * html/HTMLOptionsCollection.idl:
35255 * html/HTMLPreElement.idl:
35256 * html/HTMLSelectElement.idl: Added.
35257 * html/HTMLStyleElement.idl:
35258 * html/HTMLTableCaptionElement.idl: Added.
35259 * html/HTMLTableCellElement.idl: Added.
35260 * html/HTMLTableColElement.idl: Added.
35261 * html/HTMLTableElement.idl: Added.
35262 * html/HTMLTableRowElement.idl: Added.
35263 * html/HTMLTableSectionElement.idl: Added.
35264 * html/HTMLTextAreaElement.idl:
35266 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
35268 Reviewed and landed by ap.
35270 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10629.
35271 Drawing convex polygons is broken in the Qt platform.
35273 * platform/qt/GraphicsContextQt.cpp:
35274 (WebCore::GraphicsContext::drawConvexPolygon):
35276 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
35280 Implementing font hashing properly, fixes weird crashes in HashMap.
35282 * platform/qt/FontPlatformData.h:
35283 * platform/qt/FontPlatformDataQt.cpp:
35284 (WebCore::FontPlatformData::FontPlatformData):
35285 (WebCore::FontPlatformData::hash):
35287 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
35289 Reviewed by ggaren.
35291 Fix scrollbars to reappear after the first layouting.
35293 * platform/qt/ScrollViewQt.cpp:
35294 (WebCore::ScrollView::suppressScrollBars):
35296 2006-08-29 Anders Carlsson <acarlsson@apple.com>
35298 Reviewed by Darin and Geoff.
35300 Move the CF String functions to separate files in platform/cf.
35301 Also, move the files in platform/cfnet to platform/cf.
35303 * WebCore.xcodeproj/project.pbxproj:
35304 * platform/PlatformString.h:
35305 * platform/StringImpl.h:
35306 * platform/cf/StringCF.cpp: Added.
35307 (WebCore::String::String):
35308 * platform/cf/StringImplCF.cpp: Added.
35309 (WebCore::StringImpl::createCFString):
35310 * platform/cfnet/KURLCFNet.cpp: Removed.
35311 * platform/cfnet/ResourceLoaderCFNet.cpp: Removed.
35312 * platform/mac/StringImplMac.mm:
35313 * platform/mac/StringMac.mm:
35315 2006-08-29 Geoffrey Garen <ggaren@apple.com>
35317 Rolling out a change I included by accident in my last commit.
35319 * bridge/mac/FrameMac.mm:
35320 (WebCore::FrameMac::passMouseDownEventToWidget):
35321 * platform/mac/SharedTimerMac.cpp:
35322 (WebCore::setSharedTimerFireTime):
35324 2006-08-28 Geoffrey Garen <ggaren@apple.com>
35326 Reviewed by Maciej.
35328 Added support for experimental CFNetwork-based loader (not turned on yet).
35330 While I was there, I did the following platform cleanup:
35331 - Windows now uses USE(WININET) instead of PLATFORM(WIN_OS), to match the
35332 USE(CFNETWORK) idiom.
35333 - Removed some #includes of windows.h in platform-independent headers.
35334 - Changed #ifdef __APPLE__ to PLATFORM(MAC)
35335 - Fixed some build bustage, including case-sensitive filesystem bustage.
35337 * loader/loader.cpp:
35338 (WebCore::Loader::receivedAllData):
35339 * platform/Cursor.h:
35341 * platform/ResourceLoader.h:
35342 * platform/ResourceLoaderClient.h:
35343 * platform/ResourceLoaderInternal.h:
35344 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
35345 * platform/cfnet/KURLCFNet.cpp: Added.
35346 (WebCore::KURL::createCFURL):
35347 * platform/cfnet/ResourceLoaderCFNet.cpp: Added.
35348 (WebCore::willSendRequest):
35349 (WebCore::didReceiveChallenge):
35350 (WebCore::didCancelChallenge):
35351 (WebCore::didReceiveResponse):
35352 (WebCore::didReceiveData):
35353 (WebCore::didFinishLoading):
35354 (WebCore::didFail):
35355 (WebCore::willCacheResponse):
35356 (WebCore::addHeadersFromString):
35357 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
35358 (WebCore::ResourceLoader::~ResourceLoader):
35359 (WebCore::arrayFromFormData):
35360 (WebCore::emptyPerform):
35361 (WebCore::runLoaderThread):
35362 (WebCore::ResourceLoader::start):
35363 (WebCore::ResourceLoader::cancel):
35364 * platform/win/CursorWin.cpp:
35366 2006-08-28 Justin Garcia <justin.garcia@apple.com>
35368 Reviewed by harrison
35370 <rdar://problem/4700341>
35371 REGRESSION: In new mail message, caret isn't placed at end of line after redoing typing
35373 * editing/ReplaceSelectionCommand.cpp:
35374 (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME.
35376 (WebCore::Frame::reappliedEditing): Restore the endingSelection(), not the startingSelection().
35378 2006-08-28 Tim Omernick <timo@apple.com>
35380 Reviewed by John Sullivan.
35382 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
35383 <http://bugs.webkit.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
35386 No test cases added, since this is essentially a leak fix.
35388 A brief history of NPP_GetValue(), NPObjects, and reference counting.
35390 Earlier versions of WebKit incorrectly interpreted the NPRuntime reference counting rules. We failed to take
35391 into account the fact that plug-ins are required to retain NPObjects before returning them. This creates several
35392 classes of interesting plug-ins:
35394 1) Plug-ins tested in WebKit and other browsers. These plug-ins may have WebKit-specific workarounds to not retain
35395 the returned NPObject, thus avoiding the memory leak in WebKit.
35397 2) Plug-ins tested only in other browsers. These plug-ins must already retain their NPObjects, since other browsers
35398 implemented the NPRuntime retain/release rules correctly. These plug-ins likely work in WebKit, but probably leak
35399 NPObjects since WebKit adds its own retain in addition to the plug-in's retain.
35401 3) Plug-ins tested only in WebKit, that fail to retain their NPObjects before returning them.
35402 Such plug-ins are guaranteed to crash in other browsers due to the missing expected retain. These plug-ins
35403 work in older WebKits because WebKit did not expect the plug-in to retain the NPObject. Now that our retain
35404 rules match other browsers, these plug-ins may crash due to the difference in retain/release behavior. We could
35405 potentially detect that situation and correct it here, but I consider it a bug that the plug-in did not follow the
35406 documented NPRuntime reference counting rules. Furthermore, it is extremely unlikely that someone would develop
35407 a Netscape plug-in and test it *only* in WebKit. The entire purpose of creating a Netscape plugin is so that it
35408 works in all browsers!
35410 4) Plug-ins tested only in WebKit, that properly retain their NPObjects before returning them.
35411 These plug-ins probably work in other browsers, and leak their NPObjects in older WebKits because of WebKit's
35412 extra retain. A developer of this type of plug-in is probably unaware of the NPObject leak. A more savvy developer
35413 would create a plug-in that fits into category #1.
35415 I am changing our NPP_GetValue() behavior to match Firefox and other browsers -- the plug-in is now expected to retain the
35416 returned NPObject, and the browser is expected to release it when done. This means that plug-ins in category #3 need to be
35417 changed so that they don't crash in Safari. However, such plug-ins already crash in every other browser, so I do not feel that
35418 this needs to be handled specifically by WebKit.
35420 * bridge/mac/FrameMac.mm:
35421 Changed -pluginScriptableObject to -createPluginScriptableObject to make clearer the contract that the method must return a
35422 retained NPObject. Also changed it to return an actual NPObject* instead of a void*. There is only one caller of this method,
35423 and only one implementor. Using void* here is a needless abstraction. It's an NPObject*! Admit it!
35424 (WebCore::getInstanceForView):
35425 Release the NPObject after creating the bindings instance. This is the actual bug fix.
35427 2006-08-28 Alice Liu <alice.liu@apple.com>
35431 Fixed <rdar://problem/4548537> Document.domain and other attributes are blank for an iframe created with document.write
35433 * dom/Document.cpp:
35434 (WebCore::Document::open):
35435 set the document's url to the parent's url and re-located the code that does this to occur before calling the frame's didExplicitOpen()
35437 (WebCore::Frame::didExplicitOpen):
35438 set the frame's url to the document's url
35440 2006-08-28 Brady Eidson <beidson@apple.com>
35442 Reviewed by Adele and Adam
35444 Added an optimization to return early if there's no replacements to be made
35446 * platform/StringImpl.cpp:
35447 (WebCore::StringImpl::replace):
35449 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
35451 Reviewed and landed by ap.
35453 Fixes one chunk of: http://bugs.webkit.org/show_bug.cgi?id=10604
35454 Provide stub implementation of RenderPopupMenuQt.
35457 * platform/qt/RenderPopupMenuQt.cpp: Added.
35458 (WebCore::RenderPopupMenuQt::RenderPopupMenuQt):
35459 (WebCore::RenderPopupMenuQt::~RenderPopupMenuQt):
35460 (WebCore::RenderPopupMenuQt::clear):
35461 (WebCore::RenderPopupMenuQt::populate):
35462 (WebCore::RenderPopupMenuQt::showPopup):
35463 (WebCore::RenderPopupMenuQt::hidePopup):
35464 (WebCore::RenderPopupMenuQt::addSeparator):
35465 (WebCore::RenderPopupMenuQt::addGroupLabel):
35466 (WebCore::RenderPopupMenuQt::addOption):
35467 * platform/qt/RenderPopupMenuQt.h: Added.
35468 * platform/qt/RenderThemeQt.cpp:
35469 (WebCore::RenderThemeQt::systemFont):
35470 (WebCore::RenderThemeQt::createPopupMenu):
35472 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
35474 Reviewed and landed by ap.
35476 Fixes one chunk of: http://bugs.webkit.org/show_bug.cgi?id=10604
35477 Offer QString -> DeprecatedString conversion.
35479 * platform/DeprecatedString.h:
35480 * platform/qt/StringQt.cpp:
35481 (WebCore::DeprecatedString::DeprecatedString):
35483 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
35485 Reviewed by Tim Hatcher.
35487 Fixes one chunk of: http://bugs.webkit.org/show_bug.cgi?id=10604
35489 * platform/qt/RenderThemeQt.cpp:
35490 (WebCore::RenderThemeQt::systemFont):
35491 Remove annoying notImplemented() usage in systemFont()
35493 2006-08-28 David Harrison <harrison@apple.com>
35497 <rdar://problem/3942647> Support AXStyleTextMarkerRangeForTextMarker parameterized attribute
35499 * bridge/mac/WebCoreAXObject.mm:
35500 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
35501 Add AXStyleTextMarkerRangeForTextMarker.
35503 (startOfStyleRange):
35505 Return first/last VisiblePosition in range having the same style has the specified VisiblePosition.
35507 (-[WebCoreAXObject doAXStyleTextMarkerRangeForTextMarker:]):
35508 Return AXTextMarkerRange for startOfStyleRange/endOfStyleRange of the specified AXTextMarker.
35510 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
35511 Call doAXStyleTextMarkerRangeForTextMarker for AXStyleTextMarkerRangeForTextMarker.
35513 2006-08-28 David Harrison <harrison@apple.com>
35517 <rdar://problem/4517383> Hide all images used for spacing purpose in AX
35519 * bridge/mac/WebCoreAXObject.mm:
35520 (-[WebCoreAXObject accessibilityIsIgnored]):
35521 Check for one-dimensional image
35522 Check whether rendered image was stretched from one-dimensional file image
35524 2006-08-27 Brady Eidson <beidson@apple.com>
35528 Rewrote StringImpl::replace(UChar, StringImpl*)
35530 * platform/StringImpl.cpp:
35531 (WebCore::StringImpl::replace):
35533 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
35537 - patch for http://bugs.webkit.org/show_bug.cgi?id=4624
35538 WebCore needs autogenerated Obj-C DOM bindings
35540 First round of auto-generated Objective C DOM bindings, starting
35543 * DerivedSources.make:
35544 * WebCore.xcodeproj/project.pbxproj:
35545 * bindings/objc/DOM.mm:
35546 (-[DOMNode description]):
35547 (-[DOMNode KJS::Bindings::]):
35548 (-[DOMNode dispatchEvent:]):
35549 (-[DOMNamedNodeMap _initWithNamedNodeMap:]):
35550 (+[DOMNamedNodeMap _namedNodeMapWith:]):
35551 (-[DOMNodeList _initWithNodeList:]):
35552 (+[DOMNodeList _nodeListWith:]):
35553 (-[DOMImplementation _initWithDOMImplementation:]):
35554 (+[DOMImplementation _DOMImplementationWith:]):
35555 (-[DOMImplementation _DOMImplementation]):
35556 (+[DOMDocumentFragment _documentFragmentWith:]):
35557 (-[DOMDocumentFragment _fragment]):
35558 (-[DOMDocument createCSSStyleDeclaration]):
35559 (+[DOMDocument _documentWith:]):
35560 (-[DOMDocument _document]):
35561 (-[DOMDocument _ownerElement]):
35562 (+[DOMAttr _attrWith:]):
35563 (-[DOMAttr _attr]):
35564 (+[DOMDocumentType _documentTypeWith:WebCore::]):
35565 (-[DOMDocumentType WebCore::]):
35566 (+[DOMText _textWith:WebCore::]):
35567 (+[DOMComment _commentWith:WebCore::]):
35568 (+[DOMCDATASection _CDATASectionWith:WebCore::]):
35569 (+[DOMProcessingInstruction _processingInstructionWith:WebCore::]):
35570 (+[DOMEntityReference _entityReferenceWith:WebCore::]):
35571 * bindings/objc/DOMCSS.h:
35572 * bindings/objc/DOMCSS.mm:
35573 * bindings/objc/DOMCore.h:
35574 * bindings/objc/DOMEvents.h:
35575 * bindings/objc/DOMEvents.mm:
35576 * bindings/objc/DOMExtensions.h:
35577 * bindings/objc/DOMHTML.mm:
35578 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
35579 * bindings/objc/DOMHTMLInternal.h:
35580 * bindings/objc/DOMImplementationFront.h:
35581 * bindings/objc/DOMInternal.h:
35582 * bindings/objc/DOMNode.h: Added.
35583 * bindings/objc/DOMNode.mm: Added.
35584 (-[DOMNode dealloc]):
35585 (-[DOMNode finalize]):
35586 (-[DOMNode nodeName]):
35587 (-[DOMNode nodeValue]):
35588 (-[DOMNode setNodeValue:]):
35589 (-[DOMNode nodeType]):
35590 (-[DOMNode parentNode]):
35591 (-[DOMNode childNodes]):
35592 (-[DOMNode firstChild]):
35593 (-[DOMNode lastChild]):
35594 (-[DOMNode previousSibling]):
35595 (-[DOMNode nextSibling]):
35596 (-[DOMNode attributes]):
35597 (-[DOMNode ownerDocument]):
35598 (-[DOMNode insertBefore::]):
35599 (-[DOMNode replaceChild::]):
35600 (-[DOMNode removeChild:]):
35601 (-[DOMNode appendChild:]):
35602 (-[DOMNode hasChildNodes]):
35603 (-[DOMNode cloneNode:]):
35604 (-[DOMNode normalize]):
35605 (-[DOMNode isSupported::]):
35606 (-[DOMNode namespaceURI]):
35607 (-[DOMNode prefix]):
35608 (-[DOMNode setPrefix:]):
35609 (-[DOMNode localName]):
35610 (-[DOMNode hasAttributes]):
35611 (-[DOMNode isSameNode:]):
35612 (-[DOMNode isEqualNode:]):
35613 (-[DOMNode isDefaultNamespace:]):
35614 (-[DOMNode lookupPrefix:]):
35615 (-[DOMNode lookupNamespaceURI:]):
35616 (-[DOMNode textContent]):
35617 (-[DOMNode setTextContent:]):
35618 (-[DOMNode boundingBox]):
35619 (-[DOMNode lineBoxRects]):
35620 * bindings/objc/DOMObject.h: Added.
35621 * bindings/objc/DOMObject.mm: Added.
35622 (-[DOMObject init]):
35623 (-[DOMObject dealloc]):
35624 (-[DOMObject finalize]):
35625 (-[DOMObject copyWithZone:]):
35626 (-[DOMObject sheet]):
35627 * bindings/objc/DOMPrivate.h:
35628 * bindings/objc/DOMRange.h:
35629 * bindings/objc/DOMStylesheets.h:
35630 * bindings/objc/DOMTraversal.h:
35631 * bindings/objc/DOMViews.h:
35632 * bindings/objc/DOMViews.mm:
35633 * bindings/objc/DOMXPath.h:
35634 * bindings/objc/DOMXPath.mm:
35635 * bindings/scripts/CodeGenerator.pm:
35636 * bindings/scripts/CodeGeneratorJS.pm:
35637 * bindings/scripts/CodeGeneratorObjC.pm: Added.
35639 * dom/CDATASection.idl: Added.
35640 * dom/Comment.idl: Added.
35641 * dom/DOMImplementation.idl:
35642 * dom/Document.idl:
35644 * dom/EntityReference.idl: Added.
35645 * dom/NamedNodeMap.idl: Added.
35646 * dom/NodeList.idl: Added.
35647 * dom/ProcessingInstruction.idl:
35649 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
35653 Fix crash in LayoutTests/css1/font_properties/font.html,
35654 by implementing FontData::smallCapsFontData.
35656 * platform/qt/FontDataQt.cpp:
35657 (WebCore::FontData::platformDestroy):
35658 (WebCore::FontData::smallCapsFontData):
35660 2006-08-27 Brady Eidson <beidson@apple.com>
35664 Plugged a leak in StringImpl::replace()
35666 * platform/StringImpl.cpp:
35667 (WebCore::StringImpl::replace):
35669 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
35671 Reviewed and landed by Anders.
35673 Remove most annoying notImplemented() usages and
35674 implement some missing ScrollViewQt functions.
35675 Much nicer output when invoking run-webkit-tests.
35677 * platform/qt/FrameQt.cpp:
35678 (WebCore::FrameQt::saveDocumentState):
35679 (WebCore::FrameQt::restoreDocumentState):
35680 (WebCore::FrameQt::clearUndoRedoOperations):
35681 (WebCore::FrameQt::partClearedInBegin):
35682 * platform/qt/ResourceLoaderManager.cpp:
35683 (WebCore::headerCallback):
35684 (WebCore::ResourceLoaderManager::downloadTimerCallback):
35685 * platform/qt/ScrollViewQt.cpp:
35686 (WebCore::ScrollView::updateContents):
35687 (WebCore::ScrollView::suppressScrollBars):
35688 (WebCore::ScrollView::setStaticBackground):
35689 (WebCore::ScrollView::addChild):
35690 (WebCore::ScrollView::removeChild):
35691 * platform/qt/TemporaryLinkStubs.cpp:
35692 (WebCore::historyContains):
35693 (WebCore::CheckCacheObjectStatus):
35694 (WebCore::CheckIfReloading):
35695 (loadResourceIntoArray):
35696 (WebCore::PlugInInfoStore::supportsMIMEType):
35698 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
35700 Reviewed and landed by Anders.
35702 Fix Qt build (add SVGMetaDataElement.cpp to build system)
35706 2006-08-27 Eric Seidel <eric@webkit.org>
35708 Reviewed by andersca.
35710 No logic changes. Just cleanup.
35712 * ksvg2/svg/SVGAngle.cpp:
35713 (SVGAngle::SVGAngle):
35714 (SVGAngle::unitType):
35715 (SVGAngle::valueAsString):
35716 (SVGAngle::newValueSpecifiedUnits):
35717 (SVGAngle::convertToSpecifiedUnits):
35718 * ksvg2/svg/SVGAngle.h:
35719 * ksvg2/svg/SVGLength.cpp:
35720 (WebCore::SVGLength::unitType):
35721 (WebCore::SVGLength::newValueSpecifiedUnits):
35722 (WebCore::SVGLength::convertToSpecifiedUnits):
35723 (WebCore::SVGLength::updateValue):
35724 (WebCore::SVGLength::updateValueInSpecifiedUnits):
35725 * ksvg2/svg/SVGLength.h:
35726 * platform/BitmapImage.cpp: Removed.
35727 * platform/BitmapImage.h: Removed.
35729 2006-08-27 Brady Eidson <beidson@apple.com>
35733 -Changed all of the commonly used queries to keep around pre-prepared statements and bind
35734 their arguments instead of constructing a new, messy, string appended statement each time
35735 -Changed some code in pruneUnretainedIconsOnStartup regarding transactions
35737 * loader/icon/IconDatabase.cpp:
35738 (WebCore::IconDatabase::IconDatabase): Initializers
35739 (WebCore::IconDatabase::close): Wipe all the preprepared statements
35740 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Better handling of transactions
35741 (WebCore::readySQLStatement): Make sure a preprepared statement is ready to go for a fooQuery()
35742 (WebCore::IconDatabase::pageURLTableIsEmptyQuery): Added a comment
35743 (WebCore::IconDatabase::imageDataForIconURLQuery): Use preprepared statement + binding
35744 (WebCore::IconDatabase::timeStampForIconURLQuery): ditto
35745 (WebCore::IconDatabase::iconURLForPageURLQuery): ditto
35746 (WebCore::IconDatabase::forgetPageURLQuery): ditto
35747 (WebCore::IconDatabase::setIconIDForPageURLQuery): ditto
35748 (WebCore::IconDatabase::getIconIDForIconURLQuery): ditto
35749 (WebCore::IconDatabase::addIconForIconURLQuery): ditto
35750 (WebCore::IconDatabase::hasIconForIconURLQuery): ditto
35751 * loader/icon/IconDatabase.h: Added fooQuery() and *m_fooStatements
35752 * loader/icon/SQLStatement.h:
35753 (WebCore::SQLStatement::database): Added
35755 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
35761 * platform/qt/ScrollViewQt.cpp:
35762 (WebCore::ScrollView::setHScrollBarMode):
35763 (WebCore::ScrollView::setVScrollBarMode):
35765 2006-08-27 Rob Buis <buis@kde.org>
35769 http://bugs.webkit.org/show_bug.cgi?id=10557
35770 KCanvasPath should be replace by platform/Path
35772 Refactoring out the KCanvasPath class.
35775 * WebCore.xcodeproj/project.pbxproj:
35776 * kcanvas/KCanvasCreator.cpp:
35777 (WebCore::KCanvasCreator::createRoundedRectangle):
35778 (WebCore::KCanvasCreator::createRectangle):
35779 (WebCore::KCanvasCreator::createEllipse):
35780 (WebCore::KCanvasCreator::createCircle):
35781 (WebCore::KCanvasCreator::createLine):
35782 * kcanvas/KCanvasCreator.h:
35783 * kcanvas/KCanvasPath.cpp: Removed.
35784 * kcanvas/KCanvasPath.h: Removed.
35785 * kcanvas/KCanvasResources.cpp:
35786 (WebCore::operator<<):
35787 (WebCore::KCanvasResource::clients):
35788 (WebCore::KCanvasResource::invalidate):
35789 (WebCore::KCanvasClipper::addClipData):
35790 * kcanvas/KCanvasResources.h:
35791 (WebCore::KCClipData::windRule):
35792 (WebCore::KCClipDataList::KCClipDataList):
35793 (WebCore::KCClipDataList::addPath):
35794 * kcanvas/KCanvasTreeDebug.cpp:
35795 (WebCore::operator<<):
35796 * kcanvas/RenderPath.cpp:
35797 (WebCore::RenderPath::fillContains):
35798 (WebCore::RenderPath::relativeBBox):
35799 (WebCore::RenderPath::setPath):
35800 (WebCore::RenderPath::path):
35801 (WebCore::RenderPath::paint):
35802 (WebCore::RenderPath::nodeAtPoint):
35803 * kcanvas/RenderPath.h:
35804 * kcanvas/device/KRenderingDevice.h:
35805 * kcanvas/device/KRenderingFillPainter.cpp:
35806 (WebCore::KRenderingFillPainter::fillRule):
35807 (WebCore::KRenderingFillPainter::setFillRule):
35808 * kcanvas/device/KRenderingFillPainter.h:
35809 * kcanvas/device/qt/KCanvasClipperQt.cpp:
35810 (WebCore::KCanvasClipperQt::applyClip):
35811 * kcanvas/device/qt/KCanvasPathQt.cpp: Removed.
35812 * kcanvas/device/qt/KCanvasPathQt.h: Removed.
35813 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
35814 (WebCore::KRenderingDeviceContextQt::addPath):
35815 (WebCore::KRenderingDeviceContextQt::setFillRule):
35816 (WebCore::KRenderingDeviceQt::createItem):
35817 * kcanvas/device/qt/KRenderingDeviceQt.h:
35818 * kcanvas/device/qt/RenderPathQt.cpp:
35819 (WebCore::RenderPathQt::drawMarkersIfNeeded):
35820 (WebCore::RenderPathQt::strokeContains):
35821 (WebCore::getPathStroke):
35822 (WebCore::RenderPathQt::strokeBBox):
35823 * kcanvas/device/qt/RenderPathQt.h:
35824 * kcanvas/device/quartz/KCanvasItemQuartz.h:
35825 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
35826 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded):
35827 (WebCore::KCanvasItemQuartz::strokeBBox):
35828 (WebCore::KCanvasItemQuartz::strokeContains):
35829 * kcanvas/device/quartz/KCanvasPathQuartz.h: Removed.
35830 * kcanvas/device/quartz/KCanvasPathQuartz.mm: Removed.
35831 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
35832 (WebCore::KCanvasClipperQuartz::applyClip):
35833 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
35834 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
35835 (WebCore::KRenderingDeviceContextQuartz::addPath):
35836 (WebCore::KRenderingDeviceQuartz::createItem):
35837 * kcanvas/device/quartz/QuartzSupport.h:
35838 * kcanvas/device/quartz/QuartzSupport.mm:
35839 (WebCore::scratchContext):
35840 (WebCore::strokeBoundingBox):
35841 (WebCore::pathContainsPoint):
35842 * ksvg2/css/SVGCSSParser.cpp:
35843 (WebCore::CSSParser::parseSVGValue):
35844 * ksvg2/css/SVGCSSStyleSelector.cpp:
35845 (WebCore::CSSStyleSelector::applySVGProperty):
35846 * ksvg2/css/SVGRenderStyle.h:
35847 (WebCore::SVGRenderStyle::InheritedFlags::):
35848 * ksvg2/css/SVGRenderStyleDefs.h:
35849 * ksvg2/misc/KCanvasRenderingStyle.cpp:
35850 (WebCore::KSVGPainterFactory::fillPainter):
35851 * ksvg2/svg/SVGCircleElement.cpp:
35852 (SVGCircleElement::toPathData):
35853 * ksvg2/svg/SVGCircleElement.h:
35854 * ksvg2/svg/SVGClipPathElement.cpp:
35855 (SVGClipPathElement::canvasResource):
35856 * ksvg2/svg/SVGEllipseElement.cpp:
35857 (WebCore::SVGEllipseElement::toPathData):
35858 * ksvg2/svg/SVGEllipseElement.h:
35859 * ksvg2/svg/SVGGradientElement.cpp:
35860 (SVGGradientElement::notifyAttributeChange):
35861 * ksvg2/svg/SVGImageElement.cpp:
35862 * ksvg2/svg/SVGLineElement.cpp:
35863 (SVGLineElement::toPathData):
35864 * ksvg2/svg/SVGLineElement.h:
35865 * ksvg2/svg/SVGMaskElement.cpp:
35866 * ksvg2/svg/SVGPathElement.cpp:
35867 (WebCore::SVGPathElement::toPathData):
35868 * ksvg2/svg/SVGPathElement.h:
35869 * ksvg2/svg/SVGPatternElement.cpp:
35870 (WebCore::SVGPatternElement::notifyClientsToRepaint):
35871 * ksvg2/svg/SVGPolygonElement.cpp:
35872 (SVGPolygonElement::toPathData):
35873 * ksvg2/svg/SVGPolygonElement.h:
35874 * ksvg2/svg/SVGPolylineElement.cpp:
35875 (SVGPolylineElement::toPathData):
35876 * ksvg2/svg/SVGPolylineElement.h:
35877 * ksvg2/svg/SVGRectElement.cpp:
35878 (WebCore::SVGRectElement::toPathData):
35879 * ksvg2/svg/SVGRectElement.h:
35880 * ksvg2/svg/SVGStyledElement.cpp:
35881 (WebCore::SVGStyledElement::createRenderer):
35882 * ksvg2/svg/SVGStyledElement.h:
35883 (WebCore::SVGStyledElement::toPathData):
35884 * ksvg2/svg/SVGTextContentElement.cpp:
35885 * ksvg2/svg/SVGTextElement.cpp:
35888 (WebCore::Path::setWindingRule):
35889 (WebCore::Path::windingRule):
35890 * platform/cg/PathCG.cpp:
35891 (WebCore::Path::contains):
35892 (WebCore::Path::isEmpty):
35893 (WebCore::CGPathToCFStringApplierFunction):
35894 (WebCore::CFStringFromCGPath):
35895 (WebCore::Path::debugString):
35896 * platform/qt/FrameQt.cpp:
35897 (WebCore::FrameQt::openURL):
35898 * platform/qt/PathQt.cpp:
35899 (WebCore::Path::contains):
35900 (WebCore::Path::isEmpty):
35901 (WebCore::Path::debugString):
35903 2006-08-26 Eric Seidel <eric@webkit.org>
35907 pointer-events attribute does not work.
35908 http://bugs.webkit.org/show_bug.cgi?id=10415
35910 * kcanvas/RenderPath.cpp:
35911 (WebCore::RenderPath::pointerEventsHitRules): new function to contain pointer-events hit logic
35912 (WebCore::RenderPath::nodeAtPoint): respect pointer-events property
35913 * kcanvas/RenderPath.h:
35914 (WebCore::RenderPath::PointerEventsHitRules::PointerEventsHitRules):
35915 * ksvg2/css/SVGCSSParser.cpp:
35916 (WebCore::CSSParser::parseSVGValue):
35917 * ksvg2/svg/SVGPaint.cpp: Fix this to use a real enum value
35918 (WebCore::SVGPaint::SVGPaint):
35919 (WebCore::SVGPaint::paintType):
35920 (WebCore::SVGPaint::uri):
35921 (WebCore::SVGPaint::setUri):
35922 (WebCore::SVGPaint::setPaint):
35923 * ksvg2/svg/SVGPaint.h:
35925 2006-08-27 Rob Buis <buis@kde.org>
35929 http://bugs.webkit.org/show_bug.cgi?id=10558
35930 SVG should have support for <metadata> element
35932 Add support for metadata tag.
35934 * DerivedSources.make:
35935 * WebCore.xcodeproj/project.pbxproj:
35936 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
35937 * ksvg2/svg/SVGMetadataElement.cpp: Added.
35938 (SVGMetadataElement::SVGMetadataElement):
35939 (SVGMetadataElement::~SVGMetadataElement):
35940 * ksvg2/svg/SVGMetadataElement.h: Added.
35941 * ksvg2/svg/SVGMetadataElement.idl: Added.
35942 * ksvg2/svg/svgtags.in:
35944 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
35948 Daily Qt build fixes :-)
35950 * platform/qt/GraphicsContextQt.cpp:
35951 (WebCore::GraphicsContext::drawConvexPolygon):
35952 * platform/qt/ImageQt.cpp:
35953 (WebCore::Image::initPlatformData):
35954 (WebCore::Image::invalidatePlatformData):
35955 (WebCore::Image::loadPlatformResource):
35957 2006-08-26 David Hyatt <hyatt@apple.com>
35959 Fix the ifdef in Path.h to be CG.
35963 2006-08-26 David Hyatt <hyatt@apple.com>
35965 Fix Mac build bustage (lots of float/int confusion). I am not sure
35966 whether rounding was desired or not... this is just a band-aid to get
35967 the build working again.
35969 * rendering/RenderThemeMac.mm:
35970 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
35971 (WebCore::RenderThemeMac::paintMenuListButton):
35972 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
35974 2006-08-25 David Hyatt <hyatt@apple.com>
35976 More refactoring of image to disentangle graphics (e.g., Cairo) from
35977 platform (e.g., Windows).
35979 * WebCore.vcproj/WebCore/WebCore.vcproj:
35980 Add ImageWin to project.
35982 * loader/Cache.cpp:
35983 (WebCore::Cache::init):
35984 * loader/icon/IconDataCache.cpp:
35985 (WebCore::IconDataCache::loadImageFromResource):
35986 Renamed loadResource to loadPlatformResource to try to make it more clear
35987 that this call is implemented on each OS (and not by graphics libraries).
35989 * platform/Image.cpp:
35990 (WebCore::Image::Image):
35991 (WebCore::Image::~Image):
35992 (WebCore::Image::invalidateData):
35993 (WebCore::Image::size):
35994 (WebCore::Image::setData):
35995 (WebCore::Image::setNativeData):
35996 Fix up the PDF code to not be considered platform data any more, since
35997 PDF rendering is not for a specific OS.
35999 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
36000 instead of NativeData.
36002 * platform/Image.h:
36003 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
36004 Renamed methods to reflect that they are OS-specific and not
36005 graphics-library-specific.
36007 * platform/cairo/ImageCairo.cpp:
36008 Removed the platform data methods. Other platforms besides Windows that
36009 use Cairo will need to account for this change by adding these methods
36010 to their OS Image***.cpp file.
36012 * platform/cg/ImageCG.cpp:
36013 (WebCore::Image::drawTiled):
36014 Add FIXMEs to the wkpattern stuff.
36016 * platform/cg/PDFDocumentImage.cpp:
36017 Shouldn't have #imports in .cpp.
36019 * platform/mac/ImageMac.mm:
36020 (WebCore::Image::initPlatformData):
36021 (WebCore::Image::invalidatePlatformData):
36022 (WebCore::Image::loadPlatformResource):
36023 (WebCore::Image::getTIFFRepresentation):
36024 Add the platform data initializers to the Mac Image file. Move the
36025 TIFF representation there as well, since this is only used by Mac code.
36027 * platform/win/ImageWin.cpp: Added.
36028 (WebCore::Image::initPlatformData):
36029 (WebCore::Image::invalidatePlatformData):
36030 (WebCore::Image::loadPlatformResource):
36031 (WebCore::Image::supportsType):
36032 Similar work for Windows. Add stubs for possible future HBITMAP returns
36033 in the platform data methods.
36035 * rendering/RenderLayer.cpp:
36036 (WebCore::RenderLayer::paintResizeControl):
36037 * rendering/RenderThemeMac.mm:
36038 (WebCore::RenderThemeMac::paintResizeControl):
36039 loadResource -> loadPlatformResource
36041 2006-08-26 Adam Roben <aroben@apple.com>
36043 Rubber-stamped by Adele.
36047 * platform/cairo/GraphicsContextCairo.cpp:
36048 (WebCore::GraphicsContext::drawConvexPolygon):
36050 2006-08-25 Adele Peterson <adele@apple.com>
36052 Patch by Francisco, Reviewed by me.
36054 Preparation for switch to new text field implementation of password field.
36056 Added -webkit-text-security property.
36058 Tests: updated fast/css/computed-style-expected.txt
36060 * css/CSSPropertyNames.in: Added -webkit-text-security.
36061 * css/CSSComputedStyleDeclaration.cpp:
36063 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
36064 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
36065 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
36066 * css/html4.css: Added style for password field to use -webkit-text-security.
36068 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
36069 (WebCore::HTMLInputElement::selectionStart):
36070 (WebCore::HTMLInputElement::selectionEnd):
36071 (WebCore::HTMLInputElement::setSelectionStart):
36072 (WebCore::HTMLInputElement::setSelectionEnd):
36073 (WebCore::HTMLInputElement::select):
36074 (WebCore::HTMLInputElement::setSelectionRange):
36075 (WebCore::HTMLInputElement::createRenderer):
36076 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
36078 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
36079 characters with one character, like a bullet.
36080 * platform/StringImpl.h:
36082 * rendering/RenderStyle.cpp:
36083 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
36084 (WebCore::RenderStyle::diff): Added case for textSecurity.
36085 * rendering/RenderStyle.h:
36087 (WebCore::RenderStyle::textSecurity): Added.
36088 (WebCore::RenderStyle::setTextSecurity): Added.
36089 (WebCore::RenderStyle::initialTextSecurity): Added.
36090 * rendering/RenderText.cpp:
36091 (WebCore::RenderText::setStyle): Added case for textSecurity.
36092 (WebCore::RenderText::setText): ditto.
36094 2006-08-25 Adele Peterson <adele@apple.com>
36098 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
36100 Tests: fast/forms/select-baseline.html
36101 fast/borders/borderRadiusInvalidColor.html
36102 updated: fast/forms/select-style-expected.txt and more...
36104 * css/html4.css: Added style rules for styled select elements.
36106 * platform/GraphicsContext.h: Added argument for antialiasing.
36107 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
36108 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
36110 * rendering/RenderObject.cpp:
36111 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
36112 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
36113 (any callers that set this to true were already ensuring that their color was valid).
36114 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
36115 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
36116 (WebCore::RenderObject::paintOutline): ditto.
36117 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
36118 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
36120 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
36121 Added case for when there's no children to check for hasLineIfEmpty.
36122 * rendering/RenderBlock.h:
36123 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
36124 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
36125 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
36126 * rendering/RenderFlexibleBox.cpp:
36127 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
36128 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
36130 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
36131 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
36132 immediately after painting the background.
36134 * rendering/RenderTheme.cpp:
36135 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
36136 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
36137 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
36138 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
36139 so the arrow control will draw at the right time (after the background).
36140 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
36141 (WebCore::RenderTheme::paintBorderOnly): ditto.
36142 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
36143 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
36144 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
36146 * rendering/RenderThemeMac.h:
36147 * rendering/RenderThemeMac.mm:
36148 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
36149 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
36150 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
36151 (WebCore::TopGradientInterpolate): Added.
36152 (WebCore::BottomGradientInterpolate): Added.
36153 (WebCore::MainGradientInterpolate): Added.
36154 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
36155 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
36156 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
36158 2006-08-25 Brady Eidson <beidson@apple.com>
36162 Changed some time()-related code to be more platform independent
36164 * loader/icon/IconDatabase.cpp:
36165 (WebCore::IconDatabase::isIconExpiredForIconURL):
36166 (WebCore::IconDatabase::getOrCreateIconDataCache):
36167 (WebCore::IconDatabase::setIconDataForIconURL):
36169 2006-08-25 David Harrison <harrison@apple.com>
36173 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
36175 * bridge/mac/WebCoreAXObject.mm:
36177 New. Returns the HTMLLabelElement, if any, for the specified Element.
36179 (-[WebCoreAXObject title]):
36180 For input elements, return the innerHTML() of the labelForElement().
36182 2006-08-25 Brady Eidson <beidson@apple.com>
36184 Reviewed by Tim Hatcher
36186 Changed some debugging-only code to be more platform independent
36188 * WebCore.xcodeproj/project.pbxproj:
36189 * loader/icon/IconDatabase.cpp:
36190 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
36191 (WebCore::IconDatabase::syncDatabase):
36193 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
36195 Reviewed/landed by Adam.
36197 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10561
36198 Qt platform build fixes.
36200 * platform/qt/FrameQt.h:
36201 * platform/qt/ScreenQt.cpp:
36202 (WebCore::qwidgetForPage):
36203 (WebCore::screenRect):
36204 (WebCore::screenDepth):
36205 (WebCore::usableScreenRect):
36206 * platform/qt/TemporaryLinkStubs.cpp:
36207 (WebCore::screenDepthPerComponent):
36208 (WebCore::screenIsMonochrome):
36209 * platform/qt/WidgetQt.cpp:
36211 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
36213 Reviewed/landed by Adam.
36215 Finally fix font caching. WebKit+Qt now works
36216 out of the box without any further patches :-)
36218 * platform/qt/FontDataQt.cpp:
36219 (WebCore::FontData::platformDestroy):
36220 * platform/qt/FontPlatformData.h:
36221 * platform/qt/FontPlatformDataQt.cpp:
36222 (WebCore::FontPlatformData::FontPlatformData):
36223 (WebCore::FontPlatformData::isFixedPitch):
36224 (WebCore::FontPlatformData::font):
36225 (WebCore::FontPlatformData::fontPtr):
36226 (WebCore::FontPlatformData::hash):
36227 (WebCore::FontPlatformData::operator==):
36229 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
36231 Reviewed/landed by Adam.
36233 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10559
36234 Confirm to WebKit style guide - last fixes :-)
36236 * platform/ResourceLoaderClient.h:
36237 * platform/qt/ComboBoxQt.cpp:
36238 * platform/qt/FrameQt.cpp:
36239 (WebCore::doScroll):
36240 (WebCore::FrameQt::FrameQt):
36241 (WebCore::FrameQt::openURL):
36242 (WebCore::FrameQt::submitForm):
36243 (WebCore::FrameQt::setTitle):
36244 (WebCore::FrameQt::passSubframeEventToSubframe):
36245 (WebCore::FrameQt::registerCommandForUndo):
36246 (WebCore::FrameQt::registerCommandForRedo):
36247 (WebCore::FrameQt::keyEvent):
36248 (WebCore::FrameQt::setFrameGeometry):
36249 * platform/qt/GlyphMapQt.cpp:
36250 (WebCore::GlyphMap::fillPage):
36251 * platform/qt/GraphicsContextQt.cpp:
36252 (WebCore::toQtCompositionMode):
36253 (WebCore::toQtLineCap):
36254 (WebCore::toQtLineJoin):
36255 (WebCore::TextShadow::TextShadow):
36256 (WebCore::GraphicsContextPlatformPrivate::p):
36257 * platform/qt/ImageQt.cpp:
36258 (WebCore::FrameData::clear):
36259 (WebCore::Image::supportsType):
36260 * platform/qt/IntSizeQt.cpp:
36261 * platform/qt/LineEditQt.cpp:
36262 * platform/qt/ListBoxQt.cpp:
36263 * platform/qt/PageQt.cpp:
36264 (WebCore::Page::windowRect):
36265 * platform/qt/PathQt.cpp:
36266 (WebCore::Path::~Path):
36267 * platform/qt/ResourceLoaderCurl.cpp:
36268 (WebCore::ResourceLoader::assembleResponseHeaders):
36269 (WebCore::ResourceLoader::retrieveCharset):
36270 (WebCore::ResourceLoader::receivedResponse):
36271 * platform/qt/ResourceLoaderManager.cpp:
36272 (WebCore::headerCallback):
36273 (WebCore::ResourceLoaderManager::downloadTimerCallback):
36274 (WebCore::ResourceLoaderManager::add):
36275 * platform/qt/ScreenQt.cpp:
36276 (WebCore::screenRect):
36277 (WebCore::usableScreenRect):
36278 * platform/qt/ScrollViewQt.cpp:
36279 (WebCore::ScrollView::ScrollView):
36280 (WebCore::ScrollView::~ScrollView):
36281 (WebCore::ScrollView::setParentWidget):
36282 (WebCore::ScrollView::addChild):
36283 * platform/qt/SharedTimerQt.cpp:
36284 (WebCore::setSharedTimerFiredFunction):
36285 * platform/qt/SharedTimerQt.h:
36286 (WebCore::SharedTimerQt::SharedTimerQt):
36287 (WebCore::SharedTimerQt::fire):
36288 * platform/qt/SystemTimeQt.cpp:
36289 (WebCore::currentTime):
36290 * platform/qt/TextEditQt.cpp:
36291 (WebCore::PlatformTextEdit::setParentWidget):
36292 (WebCore::PlatformTextEdit::text):
36293 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
36295 2006-08-24 David Harrison <harrison@apple.com>
36297 Reviewed by Justin.
36300 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
36302 Fix bug I introduced in r15959.
36304 * bridge/mac/WebCoreAXObject.mm:
36305 (-[WebCoreAXObject accessibilityAttributeValue:]):
36306 Use topDocument in case we are in a subframe (we want the start/end of the overall page).
36308 2006-08-24 Brady Eidson <beidson@apple.com>
36312 Fixed my previous checkin, which was pruning the users entire icon db on startup everytime
36314 * loader/icon/IconDatabase.cpp:
36315 (WebCore::IconDatabase::retainIconForPageURL): Bind the PageURL to argument 1, as SQL bindings
36316 are indexed to 1, not 0
36318 2006-08-24 Geoffrey Garen <ggaren@apple.com>
36322 Frame refactoring: changed FrameView clients so they no longer assume that
36323 FrameViews are Widgets that can tell you things about the platform, in
36324 preparation for divorcing FrameViews from heavy-weight Widgets altogether.
36326 This patch makes Page, rather than Widget, responsible for answering
36327 questions about the screen (scale factor, color depth, etc.). Refactoring
36328 aside, I think this makes more sense, since (a) the screen has nothing to do
36329 with any particular widget and (b) Page was already half-responsible for
36330 answering those questions, anyway.
36332 Plus some random Windows build fix goodness.
36334 Layout tests still pass.
36336 2006-08-24 Timothy Hatcher <timothy@apple.com>
36340 Allow changing the background color WebCore draws under transparent page backgrounds.
36341 No automated way to test. All tests pass, no performance regression.
36343 * bridge/mac/WebCoreFrameBridge.h:
36344 * bridge/mac/WebCoreFrameBridge.mm:
36345 (-[WebCoreFrameBridge setBaseBackgroundColor:]):
36346 * page/FrameView.cpp:
36347 (WebCore::FrameViewPrivate::FrameViewPrivate):
36348 (WebCore::FrameView::baseBackgroundColor):
36349 (WebCore::FrameView::setBaseBackgroundColor):
36350 * page/FrameView.h:
36351 * rendering/RenderBox.cpp:
36352 (WebCore::RenderBox::paintBackgroundExtended):
36353 * rendering/RenderView.cpp:
36354 (WebCore::RenderView::paintBoxDecorations):
36356 2006-08-24 Darin Adler <darin@apple.com>
36358 Reviewed by Justin.
36360 - fix http://bugs.webkit.org/show_bug.cgi?id=10169
36361 REGRESSION: NativeTextArea: Text dragged from <input type=text> to textarea disappears
36362 - eliminate the EditCommandPtr class from editing; use PassRefPtr and RefPtr instead
36363 - other editing-related cleanup
36365 Test: fast/forms/drag-into-textarea.html
36367 * bridge/mac/FrameMac.h: Changed EditCommandPtr parameters to use PassRefPtr<EditCommand> instead.
36368 * bridge/win/FrameWin.h: Ditto.
36369 * bridge/mac/FrameMac.mm:
36370 (WebCore::FrameMac::registerCommandForUndoOrRedo): Ditto.
36371 (WebCore::FrameMac::registerCommandForUndo): Ditto.
36372 (WebCore::FrameMac::registerCommandForRedo): Ditto.
36374 * bridge/mac/WebCoreFrameBridge.mm:
36375 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
36376 Use applyCommand instead of EditCommandPtr. Also remove now-unneeded document parameter.
36377 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]): Ditto.
36378 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): Ditto.
36380 * editing/AppendNodeCommand.h: Removed document parameter from constructor. Changed new child
36381 parameter to be a PassRefPtr. Reversed order of child and parent parameters.
36382 * editing/AppendNodeCommand.cpp:
36383 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
36384 (WebCore::AppendNodeCommand::doApply): Ditto.
36385 (WebCore::AppendNodeCommand::doUnapply): Ditto.
36387 * editing/ApplyStyleCommand.h: Removed document parameter from constructor.
36388 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): Ditto.
36390 * editing/BreakBlockquoteCommand.h: Removed unneeded include of DeprecatedPtrList.h.
36391 * editing/BreakBlockquoteCommand.cpp: Moved the include of DeprecatedPtrList.h here.
36392 (WebCore::BreakBlockquoteCommand::doApply): Changed code to construct a Selection explicitly
36393 since setEndingSelection is no longer overloaded for Position.
36395 * editing/CompositeEditCommand.h: Added isFirstCommand function. Changed m_cmds from
36396 a DeprecatedValueList<EditCommandPtr> to a Vector<RefPtr<EditCommand>> and renamed it
36397 m_commands and made both doUnapply and doReapply private.
36398 * editing/CompositeEditCommand.cpp:
36399 (WebCore::CompositeEditCommand::doUnapply): Rewrote to use m_commands.
36400 (WebCore::CompositeEditCommand::doReapply): Ditto.
36401 (WebCore::CompositeEditCommand::applyCommandToComposite): Removed code to explicitly set up
36402 starting and ending selection -- now done inside setParent. Rewrote to use m_commands.
36403 (WebCore::CompositeEditCommand::applyStyle): Changed to not use EditCommandPtr.
36404 (WebCore::CompositeEditCommand::applyStyledElement): Ditto.
36405 (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
36406 (WebCore::CompositeEditCommand::insertParagraphSeparator): Ditto.
36407 (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
36408 (WebCore::CompositeEditCommand::appendNode): Ditto.
36409 (WebCore::CompositeEditCommand::removeNode): Ditto.
36410 (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
36411 (WebCore::CompositeEditCommand::splitTextNode): Ditto.
36412 (WebCore::CompositeEditCommand::splitElement): Ditto.
36413 (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
36414 (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
36415 (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
36416 (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
36417 (WebCore::CompositeEditCommand::inputText): Ditto.
36418 (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
36419 (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
36420 (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
36421 (WebCore::CompositeEditCommand::deleteSelection): Ditto.
36422 (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
36423 (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Also fixed a bug where the code
36424 would not remove an empty attribute -- will not come up in practice, but wrong in theory.
36425 (WebCore::CompositeEditCommand::setNodeAttribute): Changed to not use EditCommandPtr.
36426 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Ditto.
36427 (WebCore::CompositeEditCommand::deleteInsignificantText): Rewrote to use a for loop.
36428 (WebCore::CompositeEditCommand::moveParagraphs): Changed to not use EditCommandPtr.
36429 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Changed code to construct a
36430 Selection explicitly since setEndingSelection is no longer overloaded for Position.
36431 (WebCore::createBlockPlaceholderElement): Collapsed this code so that the
36432 block placeholder class string is no longer spread across multiple functions.
36433 Perhaps we can get rid of this altogether at some point.
36435 * editing/DeleteFromTextNodeCommand.h: Removed unneeded document parameter from one constructor.
36436 Also removed unneeded destructor.
36437 * editing/DeleteFromTextNodeCommand.cpp:
36438 (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Ditto.
36440 * editing/DeleteSelectionCommand.h: Removed unneeded document parameter from one constructor.
36441 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Ditto.
36443 * editing/EditCommand.h: Removed ECommandState, isCompositeStep(), parent(), state(), setState(),
36444 and most overloads of setStartingSelection() and setEndingSelection(). Made document() protected
36445 and non-virtual. Made setStartingSelection() setEndingSelection(), and styleAtPosition() protected.
36446 Made doApply(), doUnapply(), and doReapply() private. Added startingRootEditableElement(),
36447 endingRootEditableElement(), m_startingRootEditableElement, and m_endingRootEditableElement, which
36448 are needed so we can determine which editable elements an editing operation affects. Changed setParent()
36449 and m_parent to use CompositeEditCommand instead of EditCommand. Removed EditCommandPtr. Added
36450 applyCommand() function that's convenient to use on a newly-created command.
36451 * editing/EditCommand.cpp:
36452 (WebCore::EditCommand::EditCommand): Removed initialization for m_state, and added it for starting
36453 and ending root editable elements.
36454 (WebCore::EditCommand::apply): Simplified check for top level by just checking m_parent. Removed
36455 code to assert and set m_start. Eliminated use of EditCommandPtr.
36456 (WebCore::EditCommand::unapply): Ditto.
36457 (WebCore::EditCommand::reapply): Ditto.
36458 (WebCore::EditCommand::setStartingSelection): Changed to set root editable element too. Also made this
36459 not change the starting selection of the parent unless this is the first command in the parent -- didn't
36460 make sense the way it was.
36461 (WebCore::EditCommand::setEndingSelection): Changed to set root editable element too.
36462 (WebCore::EditCommand::setParent): Added code to set the starting and ending selection on the child
36463 based on the ending selection of the parent, formerly done by callers.
36464 (WebCore::applyCommand): Added.
36466 * editing/FormatBlockCommand.h: Tweaked formatting.
36467 * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::FormatBlockCommand): Ditto.
36468 * editing/InsertLineBreakCommand.h: Ditto.
36469 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
36471 * editing/IndentOutdentCommand.cpp:
36472 (WebCore::IndentOutdentCommand::splitTreeToNode): Removed use of EditCommandPtr.
36473 (WebCore::IndentOutdentCommand::outdentParagraph): Updated for change to list type enum.
36474 (WebCore::IndentOutdentCommand::outdentRegion): Removed use of EditCommandPtr.
36476 * editing/InsertIntoTextNodeCommand.h: Removed unneeded document parameter to constructor.
36477 * editing/InsertIntoTextNodeCommand.cpp:
36478 (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Ditto.
36480 * editing/InsertListCommand.h: Renamed EListType to EList, and took the "Type" suffix off
36482 * editing/InsertListCommand.cpp:
36483 (WebCore::InsertListCommand::InsertListCommand): Ditto.
36484 (WebCore::InsertListCommand::doApply): Ditto.
36486 * editing/InsertNodeBeforeCommand.h: Removed unneeded document parameter from constructor
36487 and changed the parameter of the node to insert to a PassRefPtr.
36488 * editing/InsertNodeBeforeCommand.cpp:
36489 (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Ditto.
36491 * editing/InsertParagraphSeparatorCommand.cpp:
36492 (WebCore::InsertParagraphSeparatorCommand::doApply): Remvoed use of EditCommandPtr.
36494 * editing/InsertTextCommand.h: Changed insertTab to take const Position&.
36495 * editing/InsertTextCommand.cpp:
36496 (WebCore::InsertTextCommand::input): Ditto.
36497 (WebCore::InsertTextCommand::insertTab): Ditto.
36499 * editing/JSEditor.h: Tweaked formatting and names.
36500 * editing/JSEditor.cpp: Ditto. Also changed places that use EditCommandPtr.
36502 * editing/JoinTextNodesCommand.h: Removed unneeeded document pointer
36503 * editing/JoinTextNodesCommand.cpp:
36504 (WebCore::JoinTextNodesCommand::JoinTextNodesCommand): Ditto.
36505 * editing/MergeIdenticalElementsCommand.h: Ditto.
36506 * editing/MergeIdenticalElementsCommand.cpp:
36507 (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Ditto.
36509 * editing/ModifySelectionListLevel.h: Changed EListType to be named Type and be a member of
36510 IncreaseSelectionListLevelCommand. Also changed m_listElement to be a RefPtr<Node>.
36511 * editing/ModifySelectionListLevel.cpp:
36512 (WebCore::getStartEndListChildren): Changed parameters to be references instead of pointers.
36513 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
36514 Changed to use Type instead of EListType.
36515 (WebCore::canIncreaseListLevel): Changed parameters to be references instead of pointers.
36516 (WebCore::IncreaseSelectionListLevelCommand::doApply): Updated for change to canIncreaseListLevel.
36517 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): Ditto.
36518 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
36519 Changed to not use EditCommandPtr.
36520 (WebCore::canDecreaseListLevel): Changed parameters to be references instead of pointers.
36521 (WebCore::DecreaseSelectionListLevelCommand::doApply): Updated for change to canDecreaseListLevel.
36522 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel): Ditto.
36523 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Changed to not use
36526 * editing/MoveSelectionCommand.h: Removed unnecessary document parameter and changed the fragment
36527 parameter to be a PassRefPtr.
36528 * editing/MoveSelectionCommand.cpp:
36529 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Ditto.
36530 (WebCore::MoveSelectionCommand::doApply): Got rid of use of EditCommandPtr.
36532 * editing/RebalanceWhitespaceCommand.h: Removed unnecessary document parameter.
36533 * editing/RebalanceWhitespaceCommand.cpp:
36534 (WebCore::RebalanceWhitespaceCommand::RebalanceWhitespaceCommand): Ditto.
36535 (WebCore::RebalanceWhitespaceCommand::doApply): Got rid of use of EditCommandPtr.
36537 * editing/RemoveCSSPropertyCommand.h: Tweaked formatting.
36539 * editing/RemoveNodeAttributeCommand.h: Removed unnecessary document parameter.
36540 * editing/RemoveNodeAttributeCommand.cpp:
36541 (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand): Ditto.
36543 * editing/RemoveNodeCommand.h: Removed unnecessary document parameter.
36544 * editing/RemoveNodeCommand.cpp:
36545 (WebCore::RemoveNodeCommand::RemoveNodeCommand): Ditto.
36547 * editing/RemoveNodePreservingChildrenCommand.h: Removed unnecessary document parameter.
36548 * editing/RemoveNodePreservingChildrenCommand.cpp:
36549 (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): Ditto.
36551 * editing/ReplaceSelectionCommand.h: Change fragment parameter to a PassRefPtr.
36552 * editing/ReplaceSelectionCommand.cpp:
36553 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
36554 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Ditto.
36555 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
36556 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
36558 * editing/Selection.h: Changed SEL_DEFAULT_AFFINITY to be a constant rather than
36559 a macro. Added constructors that take visible positions. Changed setBase and
36560 setExtent to take const Position& for better efficiency.
36561 * editing/Selection.cpp:
36562 (WebCore::Selection::Selection): Removed unnecessary double initialization of m_state
36563 and m_baseIsFirst in existing constructors. Added VisiblePosition-based constructors.
36565 * editing/SetNodeAttributeCommand.h: Removed unnneeded document parameter.
36566 * editing/SetNodeAttributeCommand.cpp:
36567 (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Ditto.
36569 * editing/SplitElementCommand.h: Removed unnneeded document parameter.
36570 * editing/SplitElementCommand.cpp:
36571 (WebCore::SplitElementCommand::SplitElementCommand): Ditto.
36573 * editing/SplitTextNodeCommand.h: Removed unnneeded document parameter.
36574 * editing/SplitTextNodeCommand.cpp:
36575 (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Ditto.
36577 * editing/SplitTextNodeContainingElementCommand.h: Removed unnneeded document parameter.
36578 * editing/SplitTextNodeContainingElementCommand.cpp:
36579 (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): Ditto.
36581 * editing/TypingCommand.h: Replaced uses of EditCommandPtr with EditCommand*.
36582 Renamed openForMoveTyping() with isOpenForMoreTyping().
36583 * editing/TypingCommand.cpp:
36584 (WebCore::TypingCommand::deleteKeyPressed): Updated to remove use of EditCommandPtr.
36585 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
36586 (WebCore::TypingCommand::insertText): Ditto.
36587 (WebCore::TypingCommand::insertLineBreak): Ditto.
36588 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Ditto.
36589 (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
36590 (WebCore::TypingCommand::isOpenForMoreTypingCommand): Ditto.
36591 (WebCore::TypingCommand::closeTyping): Ditto.
36592 (WebCore::TypingCommand::typingAddedToOpenCommand): Ditto.
36593 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Ditto.
36595 * editing/WrapContentsInDummySpanCommand.h: Removed unnneeded document parameter.
36596 * editing/WrapContentsInDummySpanCommand.cpp:
36597 (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): Ditto.
36599 * editing/htmlediting.h: Changed type of NON_BREAKING_SPACE to UChar instead of
36602 * page/Frame.h: Changed lastEditCommand() to return an EditCommand* and changed
36603 appliedEditing(), unappliedEditing(), reappliedEditing(), registerCommandForUndo(),
36604 and registerCommandForRedo() to take PassRefPtr<EditCommand>.
36605 * page/FramePrivate.h: Changed m_lastEditCommand to be a RefPtr<EditCommand>.
36607 (WebCore::Frame::didOpenURL): Fixed for change to m_lastEditCommand.
36608 (WebCore::Frame::setFocusNodeIfNeeded): Call the rootEditableElement function
36609 from Selection to simplify the code.
36610 (WebCore::Frame::selectAll): Ditto.
36611 (WebCore::Frame::lastEditCommand): Updated for change to m_lastEditCommand.
36612 (WebCore::dispatchEditableContentChangedEvents): Added. This sends an event to
36613 both of the root editable elements involved in a change -- the start selection
36614 might be in a different element than the end selection.
36615 (WebCore::Frame::appliedEditing): Changed to call dispatchEditableContentChangedEvents,
36616 and to do it before setting the ending selection. Also update to use PassRefPtr instead
36617 of EditCommandPtr and change the order of setting m_lastEditCommand since passing it
36618 to registerCommandForUndo will take ownership and set it to 0.
36619 (WebCore::Frame::unappliedEditing): Ditto.
36620 (WebCore::Frame::reappliedEditing): Ditto.
36621 (WebCore::Frame::computeAndSetTypingStyle): Updated for removal of EditCommandPtr.
36622 (WebCore::Frame::applyStyle): Ditto.
36623 (WebCore::Frame::applyParagraphStyle): Ditto.
36625 * platform/gdk/FrameGdk.h: Updated for above changes.
36626 * platform/gdk/TemporaryLinkStubs.cpp: Updated for above changes.
36627 * platform/win/TemporaryLinkStubs.cpp: Updated for above changes.
36629 2006-08-24 Brady Eidson <beidson@apple.com>
36633 <rdar://problem/4697973> - Unacceptable delay on startup
36634 <rdar://problem/4690949> - Need to correctly prune unretained pageurls and icons on startup
36636 This patch was started by me and finished by Mark Rowe - we now special case all retains during
36637 startup into one huge sql transaction. Also we track PageURL retains instead of IconURLs so pruning works right.
36638 Testing with reasonable sets of bookmarks/history (3000), startup time is neglibile. Testing with a huge set of
36639 bookmarks (40,000), startup has a noticable delay, but reasonable, and is inline with shipping safari which also
36640 has a noticeable delay.
36642 * loader/icon/IconDatabase.cpp:
36643 (WebCore::IconDatabase::IconDatabase):
36644 (WebCore::IconDatabase::open): adding an initialStartupTransaction and pageRetainStatement
36645 (WebCore::IconDatabase::close): do cleanup on the initialStartupSQL stuff
36646 (WebCore::IconDatabase::retainIconForPageURL): Track initial PageURL retains in the temporary table
36647 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
36648 (WebCore::IconDatabase::retainIconURL): We no longer special case this on startup
36649 (WebCore::IconDatabase::releaseIconURL): We no longer special case this on startup
36650 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Handle the big transaction correctly and quickly
36651 (WebCore::IconDatabase::syncDatabase): Change the timing log message
36652 * loader/icon/IconDatabase.h:
36653 * loader/icon/SQLStatement.cpp:
36654 (WebCore::SQLStatement::bindText16): Added this - for reusing commonly used statements by just rebinding parameters.
36655 * loader/icon/SQLStatement.h:
36657 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
36659 Reviewed/landed by Adam.
36661 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
36662 WebKit should have Qt platform support
36665 Remove KCanvasMatrix.cpp because it no longer exists
36666 Remove platform/qt/test
36667 * platform/FloatSize.h:
36668 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
36669 * platform/image-decoders/gif/GIFImageDecoder.cpp:
36670 * platform/image-decoders/gif/GIFImageReader.cpp:
36671 * platform/image-decoders/ico/ICOImageDecoder.cpp:
36672 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
36673 * platform/image-decoders/png/PNGImageDecoder.cpp:
36674 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
36675 Added PLATFORM(QT) hooks in the image-decoders/, as they also need
36676 to work for Qt, not only for Cairo.
36677 * platform/qt/qt-encodings.txt: Added (required for build).
36679 2006-08-24 Adam Roben <aroben@apple.com>
36681 Fixing a typo from last patch.
36683 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
36684 (WebCore::KRenderingPaintServerQt::setPenProperties):
36686 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
36688 Reviewed/landed by Adam.
36690 Final cleanup to conform to WebKit coding style!
36692 * kcanvas/device/qt/KCanvasClipperQt.cpp:
36693 (WebCore::KCanvasClipperQt::applyClip):
36694 * kcanvas/device/qt/KCanvasClipperQt.h:
36695 * kcanvas/device/qt/KCanvasPathQt.cpp:
36696 * kcanvas/device/qt/KCanvasPathQt.h:
36697 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
36698 * kcanvas/device/qt/KRenderingDeviceQt.h:
36699 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
36700 (WebCore::KRenderingPaintServerLinearGradientQt::KRenderingPaintServerLinearGradientQt):
36701 (WebCore::KRenderingPaintServerRadialGradientQt::KRenderingPaintServerRadialGradientQt):
36702 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h:
36703 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
36704 (WebCore::KRenderingPaintServerPatternQt::KRenderingPaintServerPatternQt):
36705 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h:
36706 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
36707 (WebCore::KRenderingPaintServerQt::setPenProperties):
36708 * kcanvas/device/qt/KRenderingPaintServerQt.h:
36709 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
36710 (WebCore::KRenderingPaintServerSolidQt::KRenderingPaintServerSolidQt):
36711 (WebCore::KRenderingPaintServerSolidQt::renderPath):
36712 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h:
36713 * kcanvas/device/qt/RenderPathQt.cpp:
36714 * kcanvas/device/qt/RenderPathQt.h:
36715 * platform/qt/AffineTransformQt.cpp:
36716 * platform/qt/BrowserExtensionQt.cpp:
36717 * platform/qt/BrowserExtensionQt.h:
36718 * platform/qt/ColorQt.cpp:
36719 (WebCore::Color::Color):
36720 * platform/qt/ComboBoxQt.cpp:
36721 (WebCore::PlatformComboBox::PlatformComboBox):
36722 (WebCore::PlatformComboBox::~PlatformComboBox):
36723 (WebCore::PlatformComboBox::setParentWidget):
36724 (WebCore::PlatformComboBox::appendGroupLabel):
36725 * platform/qt/CookieJarQt.cpp:
36726 * platform/qt/CursorQt.cpp:
36727 (WebCore::Cursors::Cursors::self):
36728 * platform/qt/FloatPointQt.cpp:
36729 * platform/qt/FloatRectQt.cpp:
36730 * platform/qt/FontCacheQt.cpp:
36731 (WebCore::FontCache::getSimilarFontPlatformData):
36732 (WebCore::FontCache::createFontPlatformData):
36733 * platform/qt/FontDataQt.cpp:
36734 * platform/qt/FontPlatformData.h:
36735 * platform/qt/FontPlatformDataQt.cpp:
36736 * platform/qt/FontQt.cpp:
36737 (WebCore::Font::operator QFont):
36738 (WebCore::Font::drawComplexText):
36739 (WebCore::Font::floatWidthForComplexText):
36740 * platform/qt/FrameQt.cpp:
36741 (WebCore::FrameQt::openURL):
36742 (WebCore::FrameQt::submitForm):
36743 (WebCore::FrameQt::urlSelected):
36744 (WebCore::FrameQt::keyEvent):
36745 * platform/qt/FrameQt.h:
36746 * platform/qt/GlyphMapQt.cpp:
36747 * platform/qt/GraphicsContextQt.cpp:
36748 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
36749 (WebCore::GraphicsContext::GraphicsContext):
36750 (WebCore::GraphicsContext::drawConvexPolygon):
36751 (WebCore::GraphicsContext::setFocusRingClip):
36752 (WebCore::GraphicsContext::clip):
36753 * platform/qt/ImageQt.cpp:
36754 (WebCore::Image::draw):
36755 (WebCore::Image::drawTiled):
36756 * platform/qt/ImageSourceQt.cpp:
36757 * platform/qt/IntPointQt.cpp:
36758 * platform/qt/IntRectQt.cpp:
36759 * platform/qt/IntSizeQt.cpp:
36760 * platform/qt/LineEditQt.cpp:
36761 (WebCore::PlatformLineEdit::PlatformLineEdit):
36762 (WebCore::PlatformLineEdit::~PlatformLineEdit):
36763 (WebCore::PlatformLineEdit::setParentWidget):
36764 (WebCore::PlatformLineEdit::addSearchResult):
36765 * platform/qt/ListBoxQt.cpp:
36766 (WebCore::ListBox::ListBox):
36767 (WebCore::ListBox::~ListBox):
36768 (WebCore::ListBox::setParentWidget):
36769 * platform/qt/PageQt.cpp:
36770 (WebCore::Page::windowRect):
36771 (WebCore::Page::setWindowRect):
36772 * platform/qt/PathQt.cpp:
36773 (WebCore::Path::addArc):
36774 * platform/qt/PlatformKeyboardEventQt.cpp:
36775 (WebCore::windowsKeyCodeForKeyEvent):
36776 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
36777 * platform/qt/PlatformMouseEventQt.cpp:
36778 * platform/qt/RenderThemeQt.cpp:
36779 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
36780 (WebCore::RenderThemeQt::applyTheme):
36781 (WebCore::RenderThemeQt::paintButton):
36782 (WebCore::RenderThemeQt::paintTextField):
36783 * platform/qt/ResourceLoaderCurl.cpp:
36784 (WebCore::ResourceLoader::assembleResponseHeaders):
36785 (WebCore::ResourceLoader::retrieveCharset):
36786 (WebCore::ResourceLoader::receivedResponse):
36787 * platform/qt/ResourceLoaderManager.cpp:
36788 (WebCore::ResourceLoaderManager::add):
36789 * platform/qt/ResourceLoaderManager.h:
36790 * platform/qt/ScreenQt.cpp:
36791 * platform/qt/ScrollViewCanvasQt.cpp:
36792 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
36793 * platform/qt/ScrollViewCanvasQt.h:
36794 * platform/qt/ScrollViewQt.cpp:
36795 * platform/qt/SharedTimerQt.cpp:
36796 * platform/qt/SharedTimerQt.h:
36797 (WebCore::SharedTimerQt::inst):
36798 * platform/qt/StringQt.cpp:
36799 * platform/qt/SystemTimeQt.cpp:
36800 * platform/qt/TemporaryLinkStubs.cpp:
36801 * platform/qt/TextEditQt.cpp:
36802 (WebCore::PlatformTextEdit::PlatformTextEdit):
36803 (WebCore::PlatformTextEdit::~PlatformTextEdit):
36804 (WebCore::PlatformTextEdit::setParentWidget):
36805 * platform/qt/WidgetQt.cpp:
36806 (WebCore::Widget::setQWidget):
36808 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
36810 Reviewed and landed by Anders.
36812 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
36813 WebKit should have Qt platform support
36816 * platform/qt/FrameQt.cpp: Added.
36817 (WebCore::doScroll):
36818 (WebCore::FrameView::isFrameView):
36819 (WebCore::FrameQt::FrameQt):
36820 (WebCore::FrameQt::init):
36821 (WebCore::FrameQt::~FrameQt):
36822 (WebCore::FrameQt::openURL):
36823 (WebCore::FrameQt::submitForm):
36824 (WebCore::FrameQt::urlSelected):
36825 (WebCore::FrameQt::userAgent):
36826 (WebCore::FrameQt::runJavaScriptAlert):
36827 (WebCore::FrameQt::runJavaScriptConfirm):
36828 (WebCore::FrameQt::locationbarVisible):
36829 (WebCore::FrameQt::setTitle):
36830 (WebCore::FrameQt::createFrame):
36831 (WebCore::FrameQt::passWheelEventToChildWidget):
36832 (WebCore::FrameQt::passSubframeEventToSubframe):
36833 (WebCore::FrameQt::objectContentType):
36834 (WebCore::FrameQt::createPlugin):
36835 (WebCore::FrameQt::passMouseDownEventToWidget):
36836 (WebCore::FrameQt::menubarVisible):
36837 (WebCore::FrameQt::personalbarVisible):
36838 (WebCore::FrameQt::statusbarVisible):
36839 (WebCore::FrameQt::toolbarVisible):
36840 (WebCore::FrameQt::createEmptyDocument):
36841 (WebCore::FrameQt::markedTextRange):
36842 (WebCore::FrameQt::incomingReferrer):
36843 (WebCore::FrameQt::mimeTypeForFileName):
36844 (WebCore::FrameQt::markMisspellingsInAdjacentWords):
36845 (WebCore::FrameQt::markMisspellings):
36846 (WebCore::FrameQt::lastEventIsMouseUp):
36847 (WebCore::FrameQt::saveDocumentState):
36848 (WebCore::FrameQt::restoreDocumentState):
36849 (WebCore::FrameQt::openURLRequest):
36850 (WebCore::FrameQt::scheduleClose):
36851 (WebCore::FrameQt::unfocusWindow):
36852 (WebCore::FrameQt::focusWindow):
36853 (WebCore::FrameQt::overrideMediaType):
36854 (WebCore::FrameQt::addMessageToConsole):
36855 (WebCore::FrameQt::runJavaScriptPrompt):
36856 (WebCore::FrameQt::getEmbedInstanceForWidget):
36857 (WebCore::FrameQt::getObjectInstanceForWidget):
36858 (WebCore::FrameQt::getAppletInstanceForWidget):
36859 (WebCore::FrameQt::registerCommandForUndo):
36860 (WebCore::FrameQt::registerCommandForRedo):
36861 (WebCore::FrameQt::clearUndoRedoOperations):
36862 (WebCore::FrameQt::issueUndoCommand):
36863 (WebCore::FrameQt::issueRedoCommand):
36864 (WebCore::FrameQt::issueCutCommand):
36865 (WebCore::FrameQt::issueCopyCommand):
36866 (WebCore::FrameQt::issuePasteCommand):
36867 (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
36868 (WebCore::FrameQt::issueTransposeCommand):
36869 (WebCore::FrameQt::respondToChangedSelection):
36870 (WebCore::FrameQt::respondToChangedContents):
36871 (WebCore::FrameQt::shouldChangeSelection):
36872 (WebCore::FrameQt::partClearedInBegin):
36873 (WebCore::FrameQt::canGoBackOrForward):
36874 (WebCore::FrameQt::handledOnloadEvents):
36875 (WebCore::FrameQt::canPaste):
36876 (WebCore::FrameQt::canRedo):
36877 (WebCore::FrameQt::canUndo):
36878 (WebCore::FrameQt::print):
36879 (WebCore::FrameQt::shouldInterruptJavaScript):
36880 (WebCore::FrameQt::keyEvent):
36881 (WebCore::FrameQt::receivedResponse):
36882 (WebCore::FrameQt::receivedData):
36883 (WebCore::FrameQt::receivedAllData):
36884 (WebCore::FrameQt::setFrameGeometry):
36885 * platform/qt/FrameQt.h: Added.
36886 * platform/qt/ScrollViewCanvasQt.cpp: Added.
36887 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
36888 (WebCore::ScrollViewCanvasQt::paintEvent):
36889 (WebCore::ScrollViewCanvasQt::sizeHint):
36890 (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
36891 (WebCore::ScrollViewCanvasQt::mousePressEvent):
36892 (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
36893 (WebCore::ScrollViewCanvasQt::keyPressEvent):
36894 (WebCore::ScrollViewCanvasQt::keyReleaseEvent):
36895 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
36896 * platform/qt/ScrollViewCanvasQt.h: Added.
36897 * platform/qt/ScrollViewQt.cpp:
36898 (WebCore::ScrollView::setParentWidget):
36900 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
36904 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
36905 WebKit should have Qt platform support
36907 * platform/qt/FontCacheQt.cpp: Added.
36908 (WebCore::FontCache::platformInit):
36909 (WebCore::FontCache::getFontDataForCharacters):
36910 (WebCore::FontCache::getSimilarFontPlatformData):
36911 (WebCore::FontCache::getLastResortFallbackFont):
36912 (WebCore::FontCache::createFontPlatformData):
36913 * platform/qt/FontDataQt.cpp: Added.
36914 (WebCore::FontData::platformInit):
36915 (WebCore::FontData::platformDestroy):
36916 (WebCore::FontData::smallCapsFontData):
36917 (WebCore::FontData::containsCharacters):
36918 (WebCore::FontData::determinePitch):
36919 (WebCore::FontData::platformWidthForGlyph):
36920 * platform/qt/FontPlatformData.h: Added.
36921 * platform/qt/FontPlatformDataQt.cpp: Added.
36922 (WebCore::FontPlatformData::FontPlatformData):
36923 (WebCore::FontPlatformData::operator=):
36924 (WebCore::FontPlatformData::~FontPlatformData):
36925 (WebCore::FontPlatformData::isFixedPitch):
36926 (WebCore::FontPlatformData::setFont):
36927 (WebCore::FontPlatformData::font):
36928 (WebCore::FontPlatformData::hash):
36929 (WebCore::FontPlatformData::operator==):
36930 * platform/qt/FontQt.cpp: Added.
36931 (WebCore::Font::operator QFont):
36932 (WebCore::Font::drawGlyphs):
36933 (WebCore::Font::drawComplexText):
36934 (WebCore::Font::floatWidthForComplexText):
36935 * platform/qt/GlyphMapQt.cpp: Added.
36936 (WebCore::GlyphMap::fillPage):
36938 2006-08-24 David Harrison <harrison@apple.com>
36940 Reinstate r15966 because layout test changes are correct.
36942 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
36944 * editing/TextIterator.cpp:
36945 (WebCore::TextIterator::advance):
36947 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
36951 http://bugs.webkit.org/show_bug.cgi?id=10467
36952 WebKit should have Qt platform support (Part II)
36954 Adapt the KCanvas Qt device to Rob's KCanvasMatrix removal.
36955 Use AffineTransform everywhere instead.
36957 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
36958 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
36959 (WebCore::KRenderingDeviceContextQt::concatCTM):
36960 (WebCore::KRenderingDeviceContextQt::ctm):
36961 * kcanvas/device/qt/KRenderingDeviceQt.h:
36962 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
36963 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
36964 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
36966 2006-08-24 Rob Buis <buis@kde.org>
36970 http://bugs.webkit.org/show_bug.cgi?id=10524
36971 svg transform: comma delimiting breaks display
36973 Properly parse transforms which use ',' as seperators.
36975 * ksvg2/svg/SVGTransformable.cpp:
36976 (SVGTransformable::parseTransformAttribute):
36978 2006-08-23 Darin Adler <darin@apple.com>
36980 Reviewed by Maciej.
36982 - added an assert to make it slightly easier to debug the common case of
36983 calling document() on a node of 0
36985 * dom/Node.h: (WebCore::Node::document): ASSERT(this).
36987 2006-08-23 David Hyatt <hyatt@apple.com>
36989 Refactor Cairo and CoreGraphics to use platform ifdefs. This patch
36990 separates the graphics engines from their respective platforms and replaces
36991 #ifdef PLATFORM(MAC) and PLATFORM(WIN) with PLATFORM(CG) and PLATFORM(CAIRO).
36995 * WebCore.xcodeproj/project.pbxproj:
36996 * platform/AffineTransform.h:
36997 * platform/Color.h:
36998 * platform/Cursor.h:
36999 * platform/FloatPoint.h:
37000 * platform/FloatRect.h:
37001 * platform/FloatSize.h:
37003 * platform/FontData.h:
37004 * platform/GlyphBuffer.h:
37005 (WebCore::GlyphBuffer::glyphAt):
37006 (WebCore::GlyphBuffer::advanceAt):
37007 (WebCore::GlyphBuffer::add):
37008 * platform/GraphicsContext.h:
37009 * platform/Image.h:
37010 * platform/ImageSource.h:
37011 * platform/IntPoint.h:
37012 * platform/IntRect.h:
37013 * platform/IntSize.h:
37014 * platform/ResourceLoader.h:
37015 * platform/ResourceLoaderClient.h:
37016 * platform/Widget.h:
37017 * platform/cairo/GraphicsContextCairo.cpp:
37018 * platform/cairo/ImageCairo.cpp:
37019 * platform/cairo/ImageSourceCairo.cpp:
37020 * platform/cg/AffineTransformCG.cpp:
37021 * platform/cg/FloatPointCG.cpp: Added.
37022 * platform/cg/FloatRectCG.cpp: Added.
37023 * platform/cg/FloatSizeCG.cpp: Added.
37024 * platform/cg/GraphicsContextCG.cpp:
37025 (WebCore::GraphicsContext::GraphicsContext):
37026 (WebCore::GraphicsContext::~GraphicsContext):
37027 (WebCore::GraphicsContext::setFocusRingClip):
37028 (WebCore::GraphicsContext::clearFocusRingClip):
37029 (WebCore::GraphicsContext::platformContext):
37030 (WebCore::GraphicsContext::drawRect):
37031 (WebCore::GraphicsContext::drawLine):
37032 * platform/cg/GraphicsContextPlatformPrivate.h: Added.
37033 (WebCore::GraphicsContextPlatformPrivate:::m_cgContext):
37034 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
37035 * platform/cg/ImageCG.cpp: Added.
37036 (WebCore::Image::drawTiled):
37037 * platform/cg/ImageSourceCG.cpp: Added.
37038 * platform/cg/IntPointCG.cpp: Added.
37039 * platform/cg/IntRectCG.cpp: Added.
37040 * platform/cg/IntSizeCG.cpp: Added.
37041 * platform/cg/PDFDocumentImage.cpp: Added.
37042 (WebCore::PDFDocumentImage::adjustCTM):
37043 * platform/cg/PDFDocumentImage.h: Added.
37044 * platform/cg/PathCG.cpp:
37045 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
37046 * platform/image-decoders/gif/GIFImageDecoder.cpp:
37047 * platform/image-decoders/gif/GIFImageReader.cpp:
37048 * platform/image-decoders/ico/ICOImageDecoder.cpp:
37049 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
37050 * platform/image-decoders/png/PNGImageDecoder.cpp:
37051 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
37052 * platform/mac/FloatPointMac.mm:
37053 * platform/mac/FloatRectMac.mm:
37054 * platform/mac/FloatSizeMac.mm:
37055 * platform/mac/GraphicsContextMac.mm:
37056 * platform/mac/ImageMac.mm:
37057 * platform/mac/ImageSourceMac.cpp: Removed.
37058 * platform/mac/IntPointMac.mm:
37059 * platform/mac/IntRectMac.mm:
37060 * platform/mac/IntSizeMac.mm:
37061 * platform/mac/PDFDocumentImage.h: Removed.
37062 * platform/mac/PDFDocumentImage.mm: Removed.
37064 2006-08-23 David Hyatt <hyatt@apple.com>
37066 Remove the ifdef for platform scrollbars vs. engine scrollbars until
37067 engine scrollbars actually exist.
37069 * platform/ScrollBar.h:
37070 (WebCore::ScrollBar::hasPlatformScrollBars):
37072 2006-08-23 Justin Garcia <justin.garcia@apple.com>
37074 Reviewed by harrison
37076 Removed the poorly named next/previousVisiblePosition
37077 and use next/previousCandidate and next/previousVisuallyDistinctCandidate.
37078 Removed the unused VisiblePosition::maxOffset()
37080 * editing/VisiblePosition.cpp:
37081 (WebCore::VisiblePosition::next):
37082 (WebCore::VisiblePosition::previous):
37083 (WebCore::VisiblePosition::canonicalPosition):
37084 * editing/VisiblePosition.h:
37086 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
37088 Reviewed by Alexey. Landed by rwlbuis.
37090 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
37091 WebKit should have Qt platform support (Part II)
37093 * platform/qt/GraphicsContextQt.cpp: Added.
37094 (WebCore::toQtCompositionMode):
37095 (WebCore::toQtLineCap):
37096 (WebCore::toQtLineJoin):
37097 (WebCore::TransparencyLayer::TransparencyLayer):
37098 (WebCore::TransparencyLayer::cleanup):
37099 (WebCore::TextShadow::TextShadow):
37100 (WebCore::TextShadow::isNull):
37101 (WebCore::GraphicsContextPlatformPrivate::p):
37102 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
37103 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
37104 (WebCore::GraphicsContext::GraphicsContext):
37105 (WebCore::GraphicsContext::~GraphicsContext):
37106 (WebCore::GraphicsContext::platformContext):
37107 (WebCore::GraphicsContext::savePlatformState):
37108 (WebCore::GraphicsContext::restorePlatformState):
37109 (WebCore::GraphicsContext::drawRect):
37110 (WebCore::adjustLineToPixelBounderies):
37111 (WebCore::GraphicsContext::drawLine):
37112 (WebCore::GraphicsContext::drawEllipse):
37113 (WebCore::GraphicsContext::drawArc):
37114 (WebCore::GraphicsContext::drawConvexPolygon):
37115 (WebCore::GraphicsContext::fillRect):
37116 (WebCore::GraphicsContext::addClip):
37117 (WebCore::GraphicsContext::drawFocusRing):
37118 (WebCore::GraphicsContext::setFocusRingClip):
37119 (WebCore::GraphicsContext::clearFocusRingClip):
37120 (WebCore::GraphicsContext::drawLineForText):
37121 (WebCore::GraphicsContext::drawLineForMisspelling):
37122 (WebCore::GraphicsContext::roundToDevicePixels):
37123 (WebCore::GraphicsContext::setShadow):
37124 (WebCore::GraphicsContext::clearShadow):
37125 (WebCore::GraphicsContext::beginTransparencyLayer):
37126 (WebCore::GraphicsContext::endTransparencyLayer):
37127 (WebCore::GraphicsContext::clearRect):
37128 (WebCore::GraphicsContext::strokeRect):
37129 (WebCore::GraphicsContext::setLineWidth):
37130 (WebCore::GraphicsContext::setLineCap):
37131 (WebCore::GraphicsContext::setLineJoin):
37132 (WebCore::GraphicsContext::setMiterLimit):
37133 (WebCore::GraphicsContext::setAlpha):
37134 (WebCore::GraphicsContext::setCompositeOperation):
37135 (WebCore::GraphicsContext::clip):
37136 (WebCore::GraphicsContext::translate):
37137 (WebCore::GraphicsContext::rotate):
37138 (WebCore::GraphicsContext::scale):
37139 (WebCore::GraphicsContext::addInnerRoundedRectClip):
37140 (WebCore::GraphicsContext::addRoundedRectClip):
37141 (WebCore::GraphicsContext::createRenderingDeviceContext):
37142 * platform/qt/ImageQt.cpp: Added.
37143 (WebCore::FrameData::clear):
37144 (WebCore::Image::initNativeData):
37145 (WebCore::Image::destroyNativeData):
37146 (WebCore::Image::invalidateNativeData):
37147 (WebCore::Image::loadResource):
37148 (WebCore::Image::supportsType):
37149 (WebCore::Image::draw):
37150 (WebCore::Image::drawTiled):
37151 (WebCore::Image::checkForSolidColor):
37152 * platform/qt/ImageSourceQt.cpp: Added.
37153 (WebCore::createDecoder):
37154 (WebCore::ImageSource::ImageSource):
37155 (WebCore::ImageSource::~ImageSource):
37156 (WebCore::ImageSource::initialized):
37157 (WebCore::ImageSource::setData):
37158 (WebCore::ImageSource::isSizeAvailable):
37159 (WebCore::ImageSource::size):
37160 (WebCore::ImageSource::repetitionCount):
37161 (WebCore::ImageSource::frameCount):
37162 (WebCore::ImageSource::createFrameAtIndex):
37163 (WebCore::ImageSource::frameDurationAtIndex):
37164 (WebCore::ImageSource::frameHasAlphaAtIndex):
37166 2006-08-23 Brady Eidson <beidson@apple.com>
37170 Moved default URL icon from WebKit to WebCore
37172 * Resources/urlIcon.tiff: Added.
37173 * WebCore.xcodeproj/project.pbxproj:
37174 * loader/icon/IconDataCache.cpp:
37175 (WebCore::IconDataCache::loadImageFromResource):
37176 * loader/icon/IconDataCache.h:
37177 * loader/icon/IconDatabase.cpp:
37178 (WebCore::IconDatabase::IconDatabase):
37179 (WebCore::IconDatabase::defaultIcon):
37180 * loader/icon/IconDatabase.h:
37182 2006-08-23 Adam Roben <aroben@apple.com>
37184 Reviewed by Darin, Adele.
37186 Some popup refactoring/cleanup.
37188 * html/HTMLSelectElement.cpp:
37189 (WebCore::HTMLSelectElement::defaultEventHandler):
37190 * rendering/RenderMenuList.cpp:
37191 (WebCore::RenderMenuList::RenderMenuList):
37192 (WebCore::RenderMenuList::~RenderMenuList):
37193 (WebCore::RenderMenuList::showPopup):
37194 (WebCore::RenderMenuList::hidePopup):
37195 * rendering/RenderMenuList.h:
37196 (WebCore::RenderMenuList::popup):
37197 (WebCore::RenderMenuList::popupIsVisible):
37198 * rendering/RenderPopupMenu.h:
37199 * rendering/RenderPopupMenuMac.h:
37200 (WebCore::RenderPopupMenuMac::hidePopup):
37202 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
37204 Reviewed by Anders. Landed by rwlbuis.
37206 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
37207 WebKit should have Qt platform support
37209 * platform/qt/ResourceLoaderCurl.cpp: Added.
37210 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
37211 (WebCore::ResourceLoader::~ResourceLoader):
37212 (WebCore::ResourceLoader::start):
37213 (WebCore::ResourceLoader::cancel):
37214 (WebCore::ResourceLoader::assembleResponseHeaders):
37215 (WebCore::ResourceLoader::retrieveCharset):
37216 (WebCore::ResourceLoader::receivedResponse):
37217 * platform/qt/ResourceLoaderManager.cpp: Added.
37218 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
37219 (WebCore::ResourceLoaderManager::get):
37220 (WebCore::ResourceLoaderManager::useSimpleTransfer):
37221 (WebCore::writeCallback):
37222 (WebCore::headerCallback):
37223 (WebCore::ResourceLoaderManager::downloadTimerCallback):
37224 (WebCore::ResourceLoaderManager::remove):
37225 (WebCore::ResourceLoaderManager::add):
37226 (WebCore::ResourceLoaderManager::cancel):
37227 * platform/qt/ResourceLoaderManager.h: Added.
37228 * platform/qt/StringQt.cpp: Added.
37229 (WebCore::String::String):
37230 (WebCore::String::operator QString):
37231 (WebCore::DeprecatedString::operator QString):
37233 2006-08-23 Brady Eidson <beidson@apple.com>
37237 Added escapeSQLString() - a helper to escape strings to be used in textual SQL queries
37239 * WebCore.xcodeproj/project.pbxproj: Reordered some files
37240 * loader/icon/IconDataCache.cpp: Use the new escapeSQLString()
37241 (WebCore::IconDataCache::writeToDatabase):
37242 * loader/icon/IconDatabase.cpp: Use the new escapeSQLString() throughout
37243 (WebCore::IconDatabase::retainIconURL):
37244 (WebCore::IconDatabase::releaseIconURL):
37245 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
37246 (WebCore::IconDatabase::establishIconIDForIconURL):
37247 (WebCore::imageDataForIconURLQuery):
37248 (WebCore::timeStampForIconURLQuery):
37249 (WebCore::iconURLForPageURLQuery):
37250 (WebCore::forgetPageURLQuery):
37251 (WebCore::setIconIDForPageURLQuery):
37252 (WebCore::getIconIDForIconURLQuery):
37253 (WebCore::addIconForIconURLQuery):
37254 (WebCore::hasIconForIconURLQuery):
37255 * loader/icon/SQLDatabase.h:
37256 (WebCore::escapeSQLString): Added
37258 2006-08-22 Maciej Stachowiak <mjs@apple.com>
37262 - assorted style cleanup of icon loader code:
37264 - wrapped all implementation files in namespace WebCore {} instead of "using namespace WebCore;" at top
37265 - split headers to be one per class, to match impl files
37266 - made files that are purely local in IconDatabase.cpp static
37267 - make each impl file include config.h as first header (and no config.h includes in other headers)
37268 - avoid multiple copies of Vector<unsigned char> for image data
37270 * WebCore.xcodeproj/project.pbxproj:
37271 * loader/icon/IconDataCache.cpp:
37272 * loader/icon/IconDataCache.h: Added.
37274 (WebCore::IconDataCache::getTimestamp):
37275 (WebCore::IconDataCache::setTimestamp):
37276 (WebCore::IconDataCache::getIconURL):
37277 * loader/icon/IconDatabase.cpp:
37278 (WebCore::IconDatabase::imageDataForIconURL):
37279 (WebCore::IconDatabase::iconForPageURL):
37280 (WebCore::pageURLTableIsEmptyQuery):
37281 (WebCore::imageDataForIconURLQuery):
37282 (WebCore::timeStampForIconURLQuery):
37283 (WebCore::iconURLForPageURLQuery):
37284 (WebCore::forgetPageURLQuery):
37285 (WebCore::setIconIDForPageURLQuery):
37286 (WebCore::getIconIDForIconURLQuery):
37287 (WebCore::addIconForIconURLQuery):
37288 (WebCore::hasIconForIconURLQuery):
37289 * loader/icon/IconDatabase.h:
37290 * loader/icon/SQLDatabase.cpp:
37291 * loader/icon/SQLDatabase.h:
37292 * loader/icon/SQLStatement.cpp:
37293 (WebCore::SQLStatement::getColumnBlobAsVector):
37294 * loader/icon/SQLStatement.h: Added.
37295 (WebCore::SQLStatement::isPrepared):
37296 (WebCore::SQLStatement::prepareAndStep):
37297 (WebCore::SQLStatement::lastError):
37298 (WebCore::SQLStatement::lastErrorMsg):
37299 * loader/icon/SQLTransaction.cpp:
37300 * loader/icon/SQLTransaction.h: Added.
37302 2006-08-22 Brady Eidson <beidson@apple.com>
37306 The role of the SiteIcon is now the original intention - to be a cache of data relating to an Icon
37307 As such, I'm renaming it to IconDataCache.
37308 Also, the IconDatabase has to manually set the image data on the IconDataCache and also sets the
37309 TimeStamp when an icon is created or the data is changed.
37310 IconDataCache now has a method to write itself *to* a given database, instead of read itself from one.
37311 IconDatabase schema changes to have the timestamp set manually instead of via a trigger.
37312 The overall purpose of this change is to cache the timestamp, killing off a very common SQL query.
37314 * WebCore.xcodeproj/project.pbxproj: Renamed a file
37315 * loader/icon/IconDataCache.cpp: Added.
37316 (IconDataCache::IconDataCache):
37317 (IconDataCache::getImage): Now either returns the stored image, or 0 - no attempt to grab data
37318 (IconDataCache::manuallySetImageData): Delete the old image and create the new one
37319 (IconDataCache::writeToDatabase): Write the current iconURL, data, and timestamp to the given DB
37320 (IconDataCache::imageDataStatus): Determine if an IconDataCache is new without data versus actually having null data
37321 * loader/icon/IconDatabase.cpp:
37322 (WebCore::IconDatabase::createDatabaseTables): Changed DB schema to version 5 (hopefully the final version)
37323 (WebCore::IconDatabase::iconForPageURL):
37324 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses the timestamp in the IconDataCache object instead of always querying
37325 (WebCore::IconDatabase::getOrCreateIconDataCache): Added, to handle creation of new IconDataCache when appropriate
37326 (WebCore::IconDatabase::setIconDataForIconURL): Puts data in SiteIcon then marks it for a future write
37327 (WebCore::IconDatabase::syncDatabase): Now syncs SiteIconsPendingUpdate
37328 * loader/icon/IconDatabase.h:
37329 (WebCore::IconDataCache::getTimestamp):
37330 (WebCore::IconDataCache::setTimestamp):
37331 * loader/icon/SiteIcon.cpp: Removed.
37334 2006-08-22 Justin Garcia <justin.garcia@apple.com>
37336 Reviewed by harrison
37338 <http://bugs.webkit.org/show_bug.cgi?id=10449>
37339 REGRESSION(r15918): drag-into-marker.html failing
37341 * editing/ReplaceSelectionCommand.cpp:
37342 (WebCore::ReplaceSelectionCommand::doApply): Don't avoid nesting
37345 2006-08-22 Brady Eidson <beidson@apple.com>
37349 Added a check in getTIFFRepresentation to not proceed if the frame count is zero
37350 This is an error condition that was handled gracefully before - in certain circumstances
37351 the call to CGImageDestinationCreateWithData will spam the Console if it is passed null/empty data
37352 or invalid data. This small change bails out before that call if that call will definitely fail
37354 * platform/mac/ImageMac.mm:
37355 (WebCore::Image::getTIFFRepresentation):
37357 2006-08-22 David Harrison <harrison@apple.com>
37359 Backed out my last change (r15966) because it broke lots of layout tests.
37361 * editing/TextIterator.cpp:
37362 (WebCore::TextIterator::advance):
37364 2006-08-22 Maciej Stachowiak <mjs@apple.com>
37366 Reviewed by Anders.
37368 - added some SPI indirections to support the following in WebKit/Loader:
37369 - pull more WebDataSource code into WebFrameLoader
37370 - make WebMainResourceLoader not depend on WebKit or on SPI
37373 * WebCore.xcodeproj/project.pbxproj:
37374 * platform/mac/WebCoreSystemInterface.h:
37375 * platform/mac/WebCoreSystemInterface.mm:
37377 2006-08-22 Justin Garcia <justin.garcia@apple.com>
37379 Reviewed by harrison
37381 <rdar://problem/4052343&4052343&4426622> Mail hung on paste text
37383 * editing/ReplaceSelectionCommand.cpp:
37384 (WebCore::isInterchangeNewlineNode):
37385 (WebCore::isInterchangeConvertedSpaceSpan):
37386 (WebCore::ReplacementFragment::ReplacementFragment):
37387 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Compute the redundant inheritable styles and
37388 remove them and remove style nodes and style spans which were only contributing redundant styles.
37389 (WebCore::ReplaceSelectionCommand::doApply):
37390 * editing/ReplaceSelectionCommand.h:
37392 2006-08-22 David Harrison <harrison@apple.com>
37396 <rdar://problem/4077676> Inline hole line adheres to the Japanese characters in inline hole
37398 This happens because the underline is always 2 pixels thick, and placed 3 pixels above the bottom of the text box.
37401 * manual-tests/inline-input-marking.html: Added.
37402 Check that underlining of the inline input hole does not obscure the glyphs.
37404 * rendering/InlineTextBox.cpp:
37405 (WebCore::InlineTextBox::paintMarkedTextUnderline):
37406 Position underline at bottom of text box.
37407 Height of underline is reduced to 1 px when font's descent is less than or equal to 2 px.
37409 2006-08-22 Rob Buis <buis@kde.org>
37413 http://bugs.webkit.org/show_bug.cgi?id=10402
37414 REPRO: SVG crashes inside gradient code
37416 Make sure we do not try to update the canvas resource/gradient paintserver when it is not yet built.
37418 * ksvg2/svg/SVGGradientElement.cpp:
37419 (SVGGradientElement::notifyAttributeChange):
37420 (SVGGradientElement::resourceNotification):
37422 2006-08-22 David Harrison <harrison@apple.com>
37426 <rdar://problem/4523606> Represent heading elements in AXAttributedStringForTextMarkerRange
37428 * bridge/mac/WebCoreAXObject.mm:
37430 (-[WebCoreAXObject headingLevel]):
37431 (-[WebCoreAXObject isHeading]):
37432 New. Heading level is per the tag (h1 == 1, h2 == 2, etc.)
37434 (-[WebCoreAXObject role]):
37435 (-[WebCoreAXObject roleDescription]):
37436 Add role and roleDescription for headings.
37438 (-[WebCoreAXObject value]):
37439 Value is the headingLevel.
37441 (AXAttributeStringSetHeadingLevel):
37442 (AXAttributedStringAppendText):
37443 Put text's heading level (if applicable) in the attributes.
37445 2006-08-22 David Harrison <harrison@apple.com>
37449 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
37451 Treat controls as replaced elements, so that AXAttributedStringForTextMarkerRange will, too.
37453 * editing/TextIterator.cpp:
37454 (WebCore::TextIterator::advance):
37457 2006-08-22 David Harrison <harrison@apple.com>
37459 Reviewed by Maciej.
37461 <rdar://problem/4407336> Some non-text elements return AXTextMarkerRangeForUIElement with equal start and end marker
37463 * bridge/mac/WebCoreAXObject.mm:
37464 (-[WebCoreAXObject textMarkerRange]):
37465 Use 0 and maxDeepOffset(), instead of caretMinOffset() and caretMaxRenderedOffset().
37466 Check for VisiblePositions being equal. If so, adjust end one to its next().
37467 That happens with, e.g., buttons.
37469 2006-08-22 Rob Buis <buis@kde.org>
37473 http://bugs.webkit.org/show_bug.cgi?id=10491
37474 KCanvasMatrix removal
37476 Remove KCanvasMatrix from project, using AffineTransform instead.
37478 * WebCore.xcodeproj/project.pbxproj:
37479 * kcanvas/KCanvasMatrix.cpp: Removed.
37480 * kcanvas/KCanvasMatrix.h: Removed.
37481 * kcanvas/KCanvasResources.cpp:
37482 (WebCore::KCanvasMarker::draw):
37483 * kcanvas/KCanvasResources.h:
37484 * kcanvas/RenderForeignObject.cpp:
37485 * kcanvas/RenderPath.h:
37486 * kcanvas/RenderSVGContainer.cpp:
37487 (WebCore::RenderSVGContainer::viewportTransform):
37488 (WebCore::RenderSVGContainer::getAspectRatio):
37489 * kcanvas/RenderSVGContainer.h:
37490 * kcanvas/RenderSVGText.cpp:
37491 * kcanvas/device/KRenderingDevice.h:
37492 * kcanvas/device/KRenderingPaintServerGradient.cpp:
37493 (WebCore::KRenderingPaintServerGradient::gradientTransform):
37494 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
37495 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
37496 * kcanvas/device/KRenderingPaintServerGradient.h:
37497 * kcanvas/device/KRenderingPaintServerPattern.cpp:
37498 (WebCore::KRenderingPaintServerPattern::patternTransform):
37499 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
37500 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
37501 * kcanvas/device/KRenderingPaintServerPattern.h:
37502 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
37503 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
37504 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
37505 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
37506 (WebCore::KRenderingDeviceContextQuartz::concatCTM):
37507 (WebCore::KRenderingDeviceContextQuartz::ctm):
37508 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
37509 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
37510 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
37511 (WebCore::KRenderingPaintServerPatternQuartz::setup):
37512 * kcanvas/device/quartz/QuartzSupport.mm:
37513 * ksvg2/misc/KCanvasRenderingStyle.h:
37514 * ksvg2/svg/SVGAnimateTransformElement.cpp:
37515 * ksvg2/svg/SVGAnimateTransformElement.h:
37516 * ksvg2/svg/SVGLinearGradientElement.cpp:
37517 (SVGLinearGradientElement::buildGradient):
37518 * ksvg2/svg/SVGPatternElement.cpp:
37519 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
37520 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
37521 (WebCore::SVGPatternElement::notifyAttributeChange):
37522 * ksvg2/svg/SVGPatternElement.h:
37523 * ksvg2/svg/SVGRadialGradientElement.cpp:
37524 (WebCore::SVGRadialGradientElement::buildGradient):
37526 2006-08-22 Rob Buis <buis@kde.org>
37530 http://bugs.webkit.org/show_bug.cgi?id=10405
37531 REPRO: SVG Maze crashes in RenderPath code
37533 Do not render a path when it is empty so maze15.svg does not crash anymore.
37534 Also get rid of a runtime warning issued by CGContextGetPathBoundingBox.
37536 * kcanvas/RenderPath.cpp:
37537 (WebCore::RenderPath::paint):
37538 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
37539 (WebCore::KCanvasPathQuartz::strokeBoundingBox):
37541 2006-08-21 Brady Eidson <beidson@apple.com>
37545 <rdar://4690949> - New IconDB: Need to prune unretained icons on startup
37547 Added a flag to track whether or not the initial pruning has taken place on startup
37548 If that flag is not set, IconURL retain counts will be tracked in a temporary db table
37549 in addition to the in-memory hash. Then when the timer fires after initial retains
37550 are complete, we prune those icons not in the retain table, prune dangling PageURL
37551 references, delete the temporary table, and set the flag - and carry on as normal
37553 * loader/icon/IconDatabase.cpp:
37554 (WebCore::IconDatabase::IconDatabase): initialize the flag
37555 (WebCore::IconDatabase::open): changed the schema of the temporary table
37556 (WebCore::IconDatabase::retainIconURL): store the icon retain to the temp table if starting up
37557 (WebCore::IconDatabase::releaseIconURL): ditto
37558 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): remove all icons *not* in the retain table, then
37559 wipe all the PageURLs who no longer point to a valid IconURL
37560 * loader/icon/IconDatabase.h:
37562 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
37566 http://bugs.webkit.org/show_bug.cgi?id=10419
37567 XSLTProcessor transformToFragment fails because of an XML declaration
37569 Test: fast/xsl/transformToFragment-XML-declaration.html
37571 * xml/XSLTProcessor.cpp:
37572 (WebCore::XSLTProcessor::transformToString): Always inhibit XML declaration printout.
37574 2006-08-21 David Harrison <harrison@apple.com>
37576 Reviewed by Justin.
37578 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
37580 Added support for the NSAccessibilityMisspelledTextAttribute.
37582 Test cases added: None. Manual AX testing is way too awkward, and automated testing
37583 is not possible. See following bug...
37584 <rdar://problem/4256882> Need automated testing support for accessibility APIs
37586 * bridge/mac/WebCoreAXObject.mm:
37587 Lots of trivial formatting in many methods.
37589 (-[WebCoreAXObject accessibilityAttributeValue:]):
37590 Fixed AXStartTextMarker and AXEndTextMarker to use startOfDocument and endOfDocument, instead of
37591 of positionForCoordinates. I had seen erroneous endOfDocument results while testing the spelling
37594 (WebCore::AXAttributeStringSetSpelling):
37595 New. Adds the NSAccessibilityMisspelledTextAttribute for misspelled words.
37597 (-[WebCoreAXObject AXAttributedStringAppendText:]):
37598 Added call to AXAttributeStringSetSpelling.
37600 * editing/visible_units.cpp:
37601 (WebCore::startOfDocument):
37602 (WebCore::endOfDocument):
37603 Added for AXStartTextMarker/AXEndTextMarker fix, these forms of the familiar functions take a Node*,
37604 so a previously existing VisiblePosition is not required.
37606 * editing/visible_units.h:
37607 Declare new forms of startOfDocument and endOfDocument.
37609 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
37613 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
37614 WebKit should have Qt platform support
37616 * platform/qt/TemporaryLinkStubs.cpp: Added.
37617 (JavaAppletWidget::JavaAppletWidget):
37618 (Font::selectionRectForComplexText):
37619 (Font::offsetForPositionForComplexText):
37620 (WebCore::refreshPlugins):
37621 (WebCore::focusRingColor):
37622 (Image::drawTiled):
37623 (WebCore::TextField::selectAll):
37624 (WebCore::TextField::addSearchResult):
37625 (WebCore::TextField::selectionStart):
37626 (WebCore::TextField::hasSelectedText):
37627 (WebCore::TextField::selectedText):
37628 (WebCore::TextField::setAutoSaveName):
37629 (WebCore::TextField::checksDescendantsForFocus):
37630 (WebCore::TextField::setSelection):
37631 (WebCore::TextField::setMaxResults):
37632 (WebCore::TextField::edited):
37633 (WebCore::TextField::focusPolicy):
37634 (WebCore::TextField::TextField):
37635 (WebCore::TextField::~TextField):
37636 (WebCore::TextField::setFont):
37637 (WebCore::TextField::setAlignment):
37638 (WebCore::TextField::setWritingDirection):
37639 (WebCore::TextField::maxLength):
37640 (WebCore::TextField::setMaxLength):
37641 (WebCore::TextField::text):
37642 (WebCore::TextField::setText):
37643 (WebCore::TextField::cursorPosition):
37644 (WebCore::TextField::setCursorPosition):
37645 (WebCore::TextField::setEdited):
37646 (WebCore::TextField::setReadOnly):
37647 (WebCore::TextField::setPlaceholderString):
37648 (WebCore::TextField::setColors):
37649 (WebCore::TextField::sizeForCharacterWidth):
37650 (WebCore::TextField::baselinePosition):
37651 (WebCore::TextField::setLiveSearch):
37652 (WebCore::Slider::Slider):
37653 (WebCore::Slider::sizeHint):
37654 (WebCore::Slider::~Slider):
37655 (WebCore::Slider::setValue):
37656 (WebCore::Slider::setMaxValue):
37657 (WebCore::Slider::setMinValue):
37658 (WebCore::Slider::setFont):
37659 (WebCore::Slider::value):
37660 (WebCore::Slider::focusPolicy):
37661 (WebCore::ScrollBar::ScrollBar):
37662 (WebCore::ScrollBar::setSteps):
37663 (WebCore::ScrollBar::scroll):
37664 (WebCore::ScrollBar::setValue):
37665 (WebCore::ScrollBar::setKnobProportion):
37666 (WebCore::PlatformScrollBar::PlatformScrollBar):
37667 (WebCore::PlatformScrollBar::~PlatformScrollBar):
37668 (WebCore::PlatformScrollBar::width):
37669 (WebCore::PlatformScrollBar::height):
37670 (WebCore::PlatformScrollBar::setEnabled):
37671 (WebCore::PlatformScrollBar::paint):
37672 (WebCore::PlatformScrollBar::setScrollBarValue):
37673 (WebCore::PlatformScrollBar::setKnobProportion):
37674 (WebCore::PlatformScrollBar::setRect):
37675 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
37676 (WebCore::CheckCacheObjectStatus):
37677 (WebCore::CheckIfReloading):
37678 (WebCore::ServeSynchronousRequest):
37679 (WebCore::historyContains):
37680 (WebCore::submitButtonDefaultLabel):
37681 (WebCore::inputElementAltText):
37682 (WebCore::resetButtonDefaultLabel):
37683 (WebCore::defaultLanguage):
37684 (WebCore::findNextSentenceFromIndex):
37685 (WebCore::findSentenceBoundary):
37686 (WebCore::findNextWordFromIndex):
37687 (WebCore::findWordBoundary):
37688 (Frame::setNeedsReapplyStyles):
37689 (WebCore::screenDepthPerComponent):
37690 (WebCore::screenIsMonochrome):
37691 (WebCore::searchableIndexIntroduction):
37692 (WebCore::setFocusRingColorChangeFunction):
37693 (FrameView::updateBorder):
37694 (loadResourceIntoArray):
37695 (PlugInInfoStore::createPluginInfoForPluginAtIndex):
37696 (PlugInInfoStore::pluginCount):
37697 (WebCore::PlugInInfoStore::supportsMIMEType):
37698 (FileButton::FileButton):
37699 (FileButton::click):
37700 (FileButton::sizeForCharacterWidth):
37701 (FileButton::focusPolicy):
37702 (FileButton::frameGeometry):
37703 (FileButton::setFilename):
37704 (FileButton::baselinePosition):
37705 (FileButton::setFrameGeometry):
37706 (FileButton::setDisabled):
37707 (WebCore::supportedKeySizes):
37708 (WebCore::signedPublicKeyAndChallengeString):
37710 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
37712 Reviewed by Maciej.
37714 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
37715 WebKit should have Qt platform support
37717 * platform/qt/CursorQt.cpp: Added.
37718 (WebCore::Cursor::Cursor):
37719 (WebCore::Cursor::~Cursor):
37720 (WebCore::Cursor::operator=):
37721 (WebCore::Cursors::Cursors::self):
37722 (WebCore::moveCursor):
37723 (WebCore::crossCursor):
37724 (WebCore::handCursor):
37725 (WebCore::iBeamCursor):
37726 (WebCore::waitCursor):
37727 (WebCore::helpCursor):
37728 (WebCore::eastResizeCursor):
37729 (WebCore::northResizeCursor):
37730 (WebCore::northEastResizeCursor):
37731 (WebCore::northWestResizeCursor):
37732 (WebCore::southResizeCursor):
37733 (WebCore::southEastResizeCursor):
37734 (WebCore::southWestResizeCursor):
37735 (WebCore::westResizeCursor):
37736 (WebCore::northSouthResizeCursor):
37737 (WebCore::eastWestResizeCursor):
37738 (WebCore::northEastSouthWestResizeCursor):
37739 (WebCore::northWestSouthEastResizeCursor):
37740 (WebCore::columnResizeCursor):
37741 (WebCore::rowResizeCursor):
37742 * platform/qt/RenderThemeQt.cpp: Added.
37743 (WebCore::RenderThemeQt::RenderThemeQt):
37744 (WebCore::RenderThemeQt::supportsHover):
37745 (WebCore::RenderThemeQt::paintCheckbox):
37746 (WebCore::RenderThemeQt::paintRadio):
37748 (WebCore::RenderThemeQt::isControlStyled):
37749 (WebCore::RenderThemeQt::controlSupportsTints):
37750 (WebCore::RenderThemeQt::systemFont):
37751 (WebCore::RenderThemeQt::createPopupMenu):
37752 (WebCore::RenderThemeQt::addIntrinsicMargins):
37753 (WebCore::RenderThemeQt::stylePainterAndWidgetForPaintInfo):
37754 (WebCore::RenderThemeQt::setCheckboxSize):
37755 (WebCore::RenderThemeQt::setRadioSize):
37756 (WebCore::RenderThemeQt::supportsFocus):
37757 (WebCore::RenderThemeQt::applyTheme):
37758 (WebCore::RenderThemeQt::adjustButtonStyle):
37759 (WebCore::RenderThemeQt::paintButton):
37760 (WebCore::RenderThemeQt::adjustTextFieldStyle):
37761 (WebCore::RenderThemeQt::paintTextField):
37763 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
37765 Reviewed by Maciej.
37767 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10467
37768 WebKit should have Qt platform support
37770 * platform/qt/SharedTimerQt.cpp: Added.
37771 (WebCore:setSharedTimerFiredFunction):
37772 (WebCore::setSharedTimerFireTime):
37773 (WebCore::stopSharedTimer):
37774 * platform/qt/SharedTimerQt.h: Added.
37775 (WebCore::SharedTimerQt::SharedTimerQt):
37776 (WebCore::SharedTimerQt::~SharedTimerQt):
37777 (WebCore::SharedTimerQt::inst):
37778 (WebCore::SharedTimerQt::fire):
37779 * platform/qt/SystemTimeQt.cpp: Added.
37780 (WebCore::currentTime):
37782 2006-08-21 Brady Eidson <beidson@apple.com>
37786 -Defers writing to the database via a timer and handles starting the timer
37789 * loader/icon/IconDatabase.cpp:
37790 (WebCore::IconDatabase::IconDatabase):
37791 (WebCore::IconDatabase::open): Don't start the update timer by default
37792 (WebCore::IconDatabase::close): Call syncDatabase()
37793 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Call syncDatabase()
37794 (WebCore::IconDatabase::setIconURLForPageURL): Setup the cached url, but defer the DB call
37795 (WebCore::IconDatabase::setIconURLForPageURLInDatabase): Actually commit the url to the DB
37796 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
37797 (WebCore::IconDatabase::updateDatabase): The updateTimer calls this, which just calls syncDatabase()
37798 (WebCore::IconDatabase::syncDatabase): Add and remove pending pageURLs and iconURLs, and stop the updateTimer
37799 * loader/icon/IconDatabase.h:
37801 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
37805 - http://bugs.webkit.org/show_bug.cgi?id=10429
37806 XSLTProcessor.transformToFragment crashes if the owner document is empty
37808 Test: fast/js/xslt-fragment-in-empty-doc.html
37810 * dom/XMLTokenizer.cpp:
37811 (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
37813 2006-08-21 Brady Eidson <beidson@apple.com>
37817 -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
37818 In the near future, we'll also have timer-based deferred *addition* of database records
37819 -Keep retain/release counts in a hash instead of a DB table
37820 -Keep only one hash record for the SiteIcons
37821 -Renamed some methods for clarity
37823 * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
37824 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
37825 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
37826 * loader/icon/IconDatabase.cpp:
37827 (WebCore::IconDatabase::IconDatabase):
37828 (WebCore::IconDatabase::open): Added new timer setup
37829 (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
37830 (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
37831 (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
37832 (WebCore::IconDatabase::retainIconURL): Added
37833 (WebCore::IconDatabase::releaseIconURL): Added
37834 (WebCore::IconDatabase::forgetPageURL): Added
37835 (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
37836 (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
37837 (WebCore::IconDatabase::setIconURLForPageURL):
37838 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
37839 (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
37840 (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
37841 * loader/icon/IconDatabase.h: Added multiple stuffs
37843 2006-08-21 Brady Eidson <beidson@apple.com>
37845 Reviewed by Maciej's rubberstamp
37847 Removed stale file references from the Xcode.proj
37849 * WebCore.xcodeproj/project.pbxproj:
37851 2006-08-20 Nikolas Zimmermann <zimmermann@kde.org>
37853 Reviewed by Maciej. Landed by rwlbuis.
37855 Fixes parts of: http://bugs.webkit.org/show_bug.cgi?id=10463
37856 WebKit should have Qt platform support
37858 Removing HelperQt.h usage by creating appropriate operators
37859 constructor in some of the platform classes, as suggested by Darin.
37862 * platform/DeprecatedString.h:
37864 * platform/PlatformString.h:
37865 * platform/qt/ComboBoxQt.cpp:
37866 (WebCore::PlatformComboBox::appendItem):
37867 (WebCore::PlatformComboBox::appendGroupLabel):
37868 (WebCore::PlatformComboBox::setFont):
37869 * platform/qt/LineEditQt.cpp:
37870 (WebCore::PlatformLineEdit::setFont):
37871 (WebCore::PlatformLineEdit::setText):
37872 (WebCore::PlatformLineEdit::text):
37873 (WebCore::PlatformLineEdit::selectedText):
37874 * platform/qt/ListBoxQt.cpp:
37875 (WebCore::ListBox::setFont):
37876 (WebCore::ListBox::appendItem):
37877 * platform/qt/PlatformKeyboardEventQt.cpp:
37878 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
37879 * platform/qt/ScrollViewQt.cpp:
37880 * platform/qt/StringQt.cpp: Added.
37881 (WebCore::String::String):
37882 (WebCore::String::operator QString):
37883 (WebCore::DeprecatedString::operator QString):
37884 * platform/qt/TextEditQt.cpp:
37885 * platform/qt/WidgetQt.cpp:
37886 (WebCore::Widget::setFont):
37888 2006-08-18 Steve Falkenburg <sfalken@apple.com>
37890 Rubber stamped by adele.
37892 Fix call to WebFormDelegate's textFieldDidBeginEditing.
37894 * rendering/RenderTextControl.cpp:
37895 (WebCore::RenderTextControl::subtreeHasChanged):
37897 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
37899 Reviewed by Eric. Landed by rwlbuis.
37901 Next chunk of the implementation for:
37902 http://bugs.webkit.org/show_bug.cgi?id=10467
37904 WebKit should have Qt platform support
37906 * platform/qt/KeyboardCodes.h: Added.
37907 * platform/qt/PlatformKeyboardEventQt.cpp: Added.
37908 (WebCore::keyIdentifierForQtKeyCode):
37909 (WebCore::windowsKeyCodeForKeyEvent):
37910 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
37911 * platform/qt/PlatformMouseEventQt.cpp: Added.
37913 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
37915 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
37917 Reviewed by Eric. Landed by rwlbuis.
37919 Next chunk of the implementation for:
37920 http://bugs.webkit.org/show_bug.cgi?id=10467
37922 WebKit should have Qt platform support
37924 * platform/qt/AffineTransformQt.cpp: Added.
37925 (WebCore::AffineTransform::AffineTransform):
37926 (WebCore::AffineTransform::setMatrix):
37927 (WebCore::AffineTransform::map):
37928 (WebCore::AffineTransform::mapRect):
37929 (WebCore::AffineTransform::isIdentity):
37930 (WebCore::AffineTransform::m11):
37931 (WebCore::AffineTransform::m12):
37932 (WebCore::AffineTransform::m21):
37933 (WebCore::AffineTransform::m22):
37934 (WebCore::AffineTransform::dx):
37935 (WebCore::AffineTransform::dy):
37936 (WebCore::AffineTransform::reset):
37937 (WebCore::AffineTransform::scale):
37938 (WebCore::AffineTransform::rotate):
37939 (WebCore::AffineTransform::translate):
37940 (WebCore::AffineTransform::shear):
37941 (WebCore::AffineTransform::det):
37942 (WebCore::AffineTransform::invert):
37943 (WebCore::AffineTransform::operator QMatrix):
37944 (WebCore::AffineTransform::operator==):
37945 (WebCore::AffineTransform::operator*=):
37946 (WebCore::AffineTransform::operator*):
37947 * platform/qt/BrowserExtensionQt.cpp: Added.
37948 (WebCore::BrowserExtensionQt::BrowserExtensionQt):
37949 (WebCore::BrowserExtensionQt::canRunModal):
37950 (WebCore::BrowserExtensionQt::createNewWindow):
37951 (WebCore::BrowserExtensionQt::canRunModalNow):
37952 (WebCore::BrowserExtensionQt::runModal):
37953 (WebCore::BrowserExtensionQt::goBackOrForward):
37954 (WebCore::BrowserExtensionQt::historyURL):
37955 (WebCore::BrowserExtensionQt::setTypedIconURL):
37956 (WebCore::BrowserExtensionQt::setIconURL):
37957 (WebCore::BrowserExtensionQt::getHistoryLength):
37958 * platform/qt/BrowserExtensionQt.h: Added.
37959 * platform/qt/CookieJarQt.cpp: Added.
37960 (WebCore::setCookies):
37961 (WebCore::cookies):
37962 (WebCore::cookiesEnabled):
37963 * platform/qt/PageQt.cpp: Added.
37964 (WebCore::rootWindowForFrame):
37965 (WebCore::Page::windowRect):
37966 (WebCore::Page::setWindowRect):
37967 * platform/qt/PathQt.cpp: Added.
37968 (WebCore::Path::Path):
37969 (WebCore::Path::~Path):
37970 (WebCore::Path::operator=):
37971 (WebCore::Path::contains):
37972 (WebCore::Path::translate):
37973 (WebCore::Path::boundingRect):
37974 (WebCore::Path::moveTo):
37975 (WebCore::Path::addLineTo):
37976 (WebCore::Path::addQuadCurveTo):
37977 (WebCore::Path::addBezierCurveTo):
37978 (WebCore::Path::addArcTo):
37979 (WebCore::Path::closeSubpath):
37980 (WebCore::Path::addArc):
37981 (WebCore::Path::addRect):
37982 (WebCore::Path::addEllipse):
37983 (WebCore::Path::clear):
37984 * platform/qt/ScreenQt.cpp: Added.
37985 (WebCore::screenRect):
37986 (WebCore::screenDepth):
37987 (WebCore::usableScreenRect):
37990 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
37992 Reviewed by Eric. Landed by rwlbuis.
37994 First chunk of the implementation for:
37995 http://bugs.webkit.org/show_bug.cgi?id=10467
37997 WebKit should have Qt platform support
37999 * platform/qt/ComboBoxQt.cpp: Added.
38000 (WebCore::PlatformComboBox::PlatformComboBox):
38001 (WebCore::PlatformComboBox::~PlatformComboBox):
38002 (WebCore::PlatformComboBox::setParentWidget):
38003 (WebCore::PlatformComboBox::clear):
38004 (WebCore::PlatformComboBox::appendItem):
38005 (WebCore::PlatformComboBox::appendGroupLabel):
38006 (WebCore::PlatformComboBox::appendSeparator):
38007 (WebCore::PlatformComboBox::setCurrentItem):
38008 (WebCore::PlatformComboBox::sizeHint):
38009 (WebCore::PlatformComboBox::frameGeometry):
38010 (WebCore::PlatformComboBox::setFrameGeometry):
38011 (WebCore::PlatformComboBox::baselinePosition):
38012 (WebCore::PlatformComboBox::setFont):
38013 (WebCore::PlatformComboBox::focusPolicy):
38014 (WebCore::PlatformComboBox::itemSelected):
38015 (WebCore::PlatformComboBox::setWritingDirection):
38016 (WebCore::PlatformComboBox::populate):
38017 (WebCore::PlatformComboBox::populateMenu):
38018 * platform/qt/LineEditQt.cpp: Added.
38019 (WebCore::PlatformLineEdit::PlatformLineEdit):
38020 (WebCore::PlatformLineEdit::~PlatformLineEdit):
38021 (WebCore::PlatformLineEdit::setParentWidget):
38022 (WebCore::PlatformLineEdit::setColors):
38023 (WebCore::PlatformLineEdit::setAlignment):
38024 (WebCore::PlatformLineEdit::setCursorPosition):
38025 (WebCore::PlatformLineEdit::cursorPosition):
38026 (WebCore::PlatformLineEdit::setEdited):
38027 (WebCore::PlatformLineEdit::edited):
38028 (WebCore::PlatformLineEdit::setFont):
38029 (WebCore::PlatformLineEdit::setMaxLength):
38030 (WebCore::PlatformLineEdit::maxLength):
38031 (WebCore::PlatformLineEdit::setReadOnly):
38032 (WebCore::PlatformLineEdit::isReadOnly):
38033 (WebCore::PlatformLineEdit::setText):
38034 (WebCore::PlatformLineEdit::text):
38035 (WebCore::PlatformLineEdit::setWritingDirection):
38036 (WebCore::PlatformLineEdit::selectAll):
38037 (WebCore::PlatformLineEdit::hasSelectedText):
38038 (WebCore::PlatformLineEdit::selectionStart):
38039 (WebCore::PlatformLineEdit::selectedText):
38040 (WebCore::PlatformLineEdit::setSelection):
38041 (WebCore::PlatformLineEdit::sizeForCharacterWidth):
38042 (WebCore::PlatformLineEdit::baselinePosition):
38043 (WebCore::PlatformLineEdit::focusPolicy):
38044 (WebCore::PlatformLineEdit::checksDescendantsForFocus):
38045 (WebCore::PlatformLineEdit::setLiveSearch):
38046 (WebCore::PlatformLineEdit::setAutoSaveName):
38047 (WebCore::PlatformLineEdit::setMaxResults):
38048 (WebCore::PlatformLineEdit::setPlaceholderString):
38049 (WebCore::PlatformLineEdit::addSearchResult):
38050 * platform/qt/ListBoxQt.cpp: Added.
38051 (WebCore::ListBox::ListBox):
38052 (WebCore::ListBox::~ListBox):
38053 (WebCore::ListBox::setParentWidget):
38054 (WebCore::ListBox::sizeForNumberOfLines):
38055 (WebCore::ListBox::setSelectionMode):
38056 (WebCore::ListBox::clear):
38057 (WebCore::ListBox::doneAppendingItems):
38058 (WebCore::ListBox::setSelected):
38059 (WebCore::ListBox::isSelected):
38060 (WebCore::ListBox::setEnabled):
38061 (WebCore::ListBox::isEnabled):
38062 (WebCore::ListBox::setWritingDirection):
38063 (WebCore::ListBox::focusPolicy):
38064 (WebCore::ListBox::checksDescendantsForFocus):
38065 (WebCore::ListBox::clearCachedTextRenderers):
38066 (WebCore::ListBox::setFont):
38067 (WebCore::ListBox::appendItem):
38068 * platform/qt/ScrollViewQt.cpp: Added.
38069 (WebCore::ScrollView::ScrollView):
38070 (WebCore::ScrollView::~ScrollView):
38071 (WebCore::ScrollView::setParentWidget):
38072 (WebCore::ScrollView::updateContents):
38073 (WebCore::ScrollView::visibleWidth):
38074 (WebCore::ScrollView::visibleHeight):
38075 (WebCore::ScrollView::visibleContentRect):
38076 (WebCore::ScrollView::setContentsPos):
38077 (WebCore::ScrollView::resizeContents):
38078 (WebCore::ScrollView::contentsX):
38079 (WebCore::ScrollView::contentsY):
38080 (WebCore::ScrollView::contentsWidth):
38081 (WebCore::ScrollView::contentsHeight):
38082 (WebCore::ScrollView::viewportToContents):
38083 (WebCore::ScrollView::contentsToViewport):
38084 (WebCore::ScrollView::scrollOffset):
38085 (WebCore::ScrollView::scrollBy):
38086 (WebCore::ScrollView::hScrollBarMode):
38087 (WebCore::ScrollView::vScrollBarMode):
38088 (WebCore::ScrollView::suppressScrollBars):
38089 (WebCore::ScrollView::setHScrollBarMode):
38090 (WebCore::ScrollView::setVScrollBarMode):
38091 (WebCore::ScrollView::setScrollBarsMode):
38092 (WebCore::ScrollView::setStaticBackground):
38093 (WebCore::ScrollView::addChild):
38094 (WebCore::ScrollView::removeChild):
38095 (WebCore::ScrollView::scrollPointRecursively):
38096 (WebCore::ScrollView::inWindow):
38097 * platform/qt/TextEditQt.cpp: Added.
38098 (WebCore::PlatformTextEdit::PlatformTextEdit):
38099 (WebCore::PlatformTextEdit::~PlatformTextEdit):
38100 (WebCore::PlatformTextEdit::setParentWidget):
38101 (WebCore::PlatformTextEdit::setColors):
38102 (WebCore::PlatformTextEdit::setAlignment):
38103 (WebCore::PlatformTextEdit::setLineHeight):
38104 (WebCore::PlatformTextEdit::setCursorPosition):
38105 (WebCore::PlatformTextEdit::getCursorPosition):
38106 (WebCore::PlatformTextEdit::setFont):
38107 (WebCore::PlatformTextEdit::setReadOnly):
38108 (WebCore::PlatformTextEdit::isReadOnly):
38109 (WebCore::PlatformTextEdit::setDisabled):
38110 (WebCore::PlatformTextEdit::isDisabled):
38111 (WebCore::PlatformTextEdit::hasSelectedText):
38112 (WebCore::PlatformTextEdit::setText):
38113 (WebCore::PlatformTextEdit::text):
38114 (WebCore::PlatformTextEdit::textWithHardLineBreaks):
38115 (WebCore::PlatformTextEdit::focusPolicy):
38116 (WebCore::PlatformTextEdit::setWordWrap):
38117 (WebCore::PlatformTextEdit::wordWrap):
38118 (WebCore::PlatformTextEdit::setScrollBarModes):
38119 (WebCore::PlatformTextEdit::setWritingDirection):
38120 (WebCore::PlatformTextEdit::selectionStart):
38121 (WebCore::PlatformTextEdit::selectionEnd):
38122 (WebCore::PlatformTextEdit::setSelectionStart):
38123 (WebCore::PlatformTextEdit::setSelectionEnd):
38124 (WebCore::PlatformTextEdit::selectAll):
38125 (WebCore::PlatformTextEdit::setSelectionRange):
38126 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
38127 (WebCore::PlatformTextEdit::checksDescendantsForFocus):
38128 * platform/qt/WidgetQt.cpp: Added.
38129 (WebCore::WidgetPrivate::WidgetPrivate):
38130 (WebCore::WidgetPrivate::~WidgetPrivate):
38131 (WebCore::Widget::Widget):
38132 (WebCore::Widget::~Widget):
38133 (WebCore::Widget::setClient):
38134 (WebCore::Widget::client):
38135 (WebCore::Widget::frameGeometry):
38136 (WebCore::Widget::hasFocus):
38137 (WebCore::Widget::setFocus):
38138 (WebCore::Widget::clearFocus):
38139 (WebCore::Widget::font):
38140 (WebCore::Widget::setFont):
38141 (WebCore::Widget::setCursor):
38142 (WebCore::Widget::show):
38143 (WebCore::Widget::hide):
38144 (WebCore::Widget::setQWidget):
38145 (WebCore::Widget::qwidget):
38146 (WebCore::Widget::setParentWidget):
38147 (WebCore::Widget::parentWidget):
38148 (WebCore::Widget::setFrameGeometry):
38149 (WebCore::Widget::mapFromGlobal):
38150 (WebCore::Widget::scaleFactor):
38151 (WebCore::Widget::lockDrawingFocus):
38152 (WebCore::Widget::unlockDrawingFocus):
38153 (WebCore::Widget::paint):
38154 (WebCore::Widget::enableFlushDrawing):
38155 (WebCore::Widget::isEnabled):
38156 (WebCore::Widget::setIsSelected):
38157 (WebCore::Widget::disableFlushDrawing):
38158 (WebCore::Widget::setEnabled):
38159 (WebCore::Widget::focusPolicy):
38161 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
38163 Reviewed by Eric. Landed by rwlbuis.
38165 First chunk of the implementation for:
38166 http://bugs.webkit.org/show_bug.cgi?id=10467
38168 WebKit should have Qt platform support
38170 * platform/qt/ColorQt.cpp: Added.
38171 (WebCore::Color::Color):
38172 (WebCore::Color::operator QColor):
38173 * platform/qt/FloatPointQt.cpp: Added.
38174 (WebCore::FloatPoint::FloatPoint):
38175 (WebCore::FloatPoint::operator QPointF):
38176 * platform/qt/FloatRectQt.cpp: Added.
38177 (WebCore::FloatRect::FloatRect):
38178 (WebCore::FloatRect::operator QRectF):
38179 * platform/qt/IntPointQt.cpp: Added.
38180 (WebCore::IntPoint::IntPoint):
38181 (WebCore::IntPoint::operator QPoint):
38182 * platform/qt/IntRectQt.cpp: Added.
38183 (WebCore::IntRect::IntRect):
38184 (WebCore::IntRect::operator QRect):
38185 * platform/qt/IntSizeQt.cpp: Added.
38186 (WebCore::IntSize::IntSize):
38187 (WebCore::IntSize::operator QSize):
38189 2006-08-18 Nikolas Zimmermann <zimmermann@kde.org>
38191 Reviewed by Eric. Landed by rwlbuis.
38193 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10470
38194 The Qt platform needs a KCanvas device.
38196 * kcanvas/device/qt/KCanvasClipperQt.cpp: Added.
38197 (WebCore::KCanvasClipperQt::applyClip):
38198 * kcanvas/device/qt/KCanvasClipperQt.h: Added.
38199 (WebCore::KCanvasClipperQt::KCanvasClipperQt):
38200 * kcanvas/device/qt/KCanvasPathQt.cpp: Added.
38201 (WebCore::KCanvasPathQt::KCanvasPathQt):
38202 (WebCore::KCanvasPathQt::~KCanvasPathQt):
38203 (WebCore::KCanvasPathQt::isEmpty):
38204 (WebCore::KCanvasPathQt::moveTo):
38205 (WebCore::KCanvasPathQt::lineTo):
38206 (WebCore::KCanvasPathQt::curveTo):
38207 (WebCore::KCanvasPathQt::closeSubpath):
38208 (WebCore::KCanvasPathQt::boundingBox):
38209 (WebCore::KCanvasPathQt::strokeBoundingBox):
38210 (WebCore::KCanvasPathQt::strokeContainsPoint):
38211 (WebCore::KCanvasPathQt::containsPoint):
38212 * kcanvas/device/qt/KCanvasPathQt.h: Added.
38213 (WebCore::KCanvasPathQt::qtPath):
38214 * kcanvas/device/qt/KRenderingDeviceQt.cpp: Added.
38215 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
38216 (WebCore::KRenderingDeviceContextQt::~KRenderingDeviceContextQt):
38217 (WebCore::KRenderingDeviceContextQt::concatCTM):
38218 (WebCore::KRenderingDeviceContextQt::ctm):
38219 (WebCore::KRenderingDeviceContextQt::mapFromVisual):
38220 (WebCore::KRenderingDeviceContextQt::mapToVisual):
38221 (WebCore::KRenderingDeviceContextQt::clearPath):
38222 (WebCore::KRenderingDeviceContextQt::addPath):
38223 (WebCore::KRenderingDeviceContextQt::createGraphicsContext):
38224 (WebCore::KRenderingDeviceContextQt::painter):
38225 (WebCore::KRenderingDeviceContextQt::pathBBox):
38226 (WebCore::KRenderingDeviceContextQt::setFillRule):
38227 (WebCore::KRenderingDeviceContextQt::fillPath):
38228 (WebCore::KRenderingDeviceContextQt::strokePath):
38229 (WebCore::KRenderingDeviceQt::KRenderingDeviceQt):
38230 (WebCore::KRenderingDeviceQt::~KRenderingDeviceQt):
38231 (WebCore::KRenderingDeviceQt::popContext):
38232 (WebCore::KRenderingDeviceQt::pushContext):
38233 (WebCore::KRenderingDeviceQt::qtContext):
38234 (WebCore::KRenderingDeviceQt::contextForImage):
38235 (WebCore::KRenderingDeviceQt::stringForPath):
38236 (WebCore::KRenderingDeviceQt::createResource):
38237 (WebCore::KRenderingDeviceQt::createPaintServer):
38238 (WebCore::KRenderingDeviceQt::createFilterEffect):
38240 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
38242 Reviewed by Eric. Landed by rwlbuis.
38244 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10466
38245 WebKit should have Qt platform support.
38247 * platform/Color.h:
38248 * platform/Cursor.h:
38249 (WebCore::Cursor::Cursor):
38250 * platform/FloatPoint.h:
38251 * platform/FloatRect.h:
38252 * platform/GlyphBuffer.h:
38253 (WebCore::GlyphBuffer::glyphAt):
38254 (WebCore::GlyphBuffer::advanceAt):
38255 (WebCore::GlyphBuffer::add):
38256 * platform/GraphicsContext.h:
38257 * platform/ImageSource.h:
38258 * platform/IntPoint.h:
38259 * platform/IntRect.h:
38260 * platform/IntSize.h:
38261 * platform/ListBox.h:
38263 * platform/PlatformKeyboardEvent.h:
38264 * platform/PlatformMouseEvent.h:
38265 * platform/ResourceLoader.h:
38266 * platform/ResourceLoaderClient.h:
38267 * platform/ResourceLoaderInternal.h:
38268 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
38269 * platform/ScrollView.h:
38270 * platform/Widget.h:
38272 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
38274 Reviewed by Eric. Landed by rwlbuis.
38276 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10465
38277 General WebKit Linux build fixes.
38279 * kcanvas/KCanvasFilters.cpp:
38280 (WebCore::operator<<):
38281 * kcanvas/RenderSVGImage.cpp:
38282 * ksvg2/css/SVGCSSStyleSelector.cpp:
38283 * ksvg2/svg/SVGAnimateColorElement.cpp:
38284 * ksvg2/svg/SVGMaskElement.cpp:
38285 * ksvg2/svg/SVGPatternElement.cpp:
38287 * rendering/RenderStyle.h:
38288 (WebCore::RenderStyle::deleteBindingURIs):
38289 * xml/DOMParser.cpp:
38291 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
38293 Reviewed by Eric. Landed by rwlbuis.
38295 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10464
38296 Offer a cmake build system for Qt platform.
38298 * CMakeLists.txt: Added.
38300 2006-08-17 David Harrison <harrison@apple.com>
38302 Reviewed by John Sullivan.
38304 <rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons
38306 Accessorized RenderMenuList objects.
38308 * bridge/mac/WebCoreAXObject.mm:
38309 (-[WebCoreAXObject mouseButtonListener]):
38310 Trivial formatting.
38312 (-[WebCoreAXObject actionElement]):
38313 Return the HTMLSelectElement.
38315 (-[WebCoreAXObject firstChild]):
38316 (-[WebCoreAXObject lastChild]):
38317 (-[WebCoreAXObject previousSibling]):
38318 (-[WebCoreAXObject nextSibling]):
38319 (-[WebCoreAXObject parentObject]):
38320 (-[WebCoreAXObject parentObjectUnignored]):
38321 (-[WebCoreAXObject isAttachment]):
38322 (-[WebCoreAXObject attachmentView]):
38323 Trivial formatting.
38325 (-[WebCoreAXObject role]):
38326 Return NSAccessibilityPopUpButtonRole.
38328 (-[WebCoreAXObject subrole]):
38329 Trivial formatting.
38331 (-[WebCoreAXObject roleDescription]):
38332 Return NSAccessibilityPopUpButtonRole.
38334 (-[WebCoreAXObject textUnderElement]):
38335 Trivial formatting.
38337 (-[WebCoreAXObject value]):
38338 Return the RenderMenuList::text().
38340 (-[WebCoreAXObject position]):
38341 Trivial formatting.
38343 (-[WebCoreAXObject accessibilityIsIgnored]):
38344 - Ignore popup menu items because AppKit does.
38345 - Remove redundant check for buttonTag (earlier isControl() check suffices).
38347 (-[WebCoreAXObject accessibilityAttributeNames]):
38348 (-[WebCoreAXObject accessibilityActionNames]):
38349 (-[WebCoreAXObject accessibilityAttributeValue:]):
38350 Trivial formatting.
38352 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
38353 Removed old debugging code that is no longer needed.
38354 Trivial formatting.
38356 (-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
38357 (-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
38358 (-[WebCoreAXObject removeAXObjectID]):
38359 Trivial formatting.
38361 * html/HTMLSelectElement.cpp:
38362 (WebCore::HTMLSelectElement::accessKeyAction):
38363 Call click() instead of focus().
38365 * rendering/RenderMenuList.cpp:
38366 (WebCore::RenderMenuList::text):
38367 Added for easy access to popup's current text.
38369 * rendering/RenderMenuList.h:
38370 (WebCore::RenderMenuList::isMenuList):
38371 * rendering/RenderObject.h:
38372 (WebCore::RenderObject::isMenuList):
38373 Added so popups can be identified.
38375 2006-08-17 David Harrison <harrison@apple.com>
38377 Reviewed by Maciej.
38379 <rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range
38381 Test cases added: None. Manual AX testing is way too awkward, and automated testing
38382 is not possible. See following bug...
38383 <rdar://problem/4256882> Need automated testing support for accessibility APIs
38385 * bridge/mac/AXObjectCacheMac.mm:
38386 (WebCore::AXObjectCache::visiblePositionForTextMarker):
38387 Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
38389 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
38391 Reviewed by Anders.
38393 Fixes: http://bugs.webkit.org/show_bug.cgi?id=10447
38394 AffineTransform should be multi-platform compatible
38396 * platform/AffineTransform.h:
38397 * platform/cg/AffineTransformCG.cpp:
38398 (WebCore::AffineTransform::m11):
38399 (WebCore::AffineTransform::m12):
38400 (WebCore::AffineTransform::m21):
38401 (WebCore::AffineTransform::m22):
38402 (WebCore::AffineTransform::dx):
38403 (WebCore::AffineTransform::dy):
38405 2006-08-16 David Hyatt <hyatt@apple.com>
38407 Fix an issue with CSS2 system fonts where they did not respect text
38408 zoom. This was most visible with the new control fonts used for form
38409 controls (they stopped swapping between small/mini/regular as you zoomed).
38413 * css/cssstyleselector.cpp:
38414 (WebCore::CSSStyleSelector::applyProperty):
38416 2006-08-15 Justin Garcia <justin.garcia@apple.com>
38418 Reviewed by thatcher
38420 First part of fix for:
38421 <rdar://problem/4384589>
38422 Mail hung on paste text
38425 <http://bugs.webkit.org/show_bug.cgi?id=8592>
38426 Extra line left after deleting whitespace:pre text
38427 <rdar://problem/4128080> Paste as HTML does not yield equivalent style
38428 <rdar://problem/4046469> Box styles on first element aren't copied/pasted
38429 Copy/paste of arstechnica.com
38431 Here's how we avoid adding redundant style information on paste: insert
38432 the fragment and do a test rendering, save away style information for
38433 every node in the fragment, remove all style information from the fragment,
38434 remove the fragment, insert it into the appropriate place in the document,
38435 then restore only those styles gathered during the test insertion that aren't
38436 redundant. Restoring the styles in this way results in an ApplyStyleCommand
38437 and a layout for nearly every inserted node.
38438 Instead we want to insert the fragment into the document without removing the
38439 style information, then mark style nodes and inline style declarations for
38440 removal if they are redundant, and sweep to remove them. This means that we
38441 can't rely on ReplacementFragment::wasBlock anymore, because blocks will now
38442 have style spans around them. This patch removes the use of wasBlock in
38443 ReplaceSelectionCommand.
38445 * editing/CompositeEditCommand.cpp:
38446 (WebCore::CompositeEditCommand::moveParagraphs): Added code
38447 to remove the line placeholder left after a move from preserveNewline text.
38448 * editing/DeleteSelectionCommand.cpp:
38449 (WebCore::DeleteSelectionCommand::doApply): Don't add a placeholder if
38450 we're deleting a paragraph in preserveNewline text.
38451 * editing/JSEditor.cpp: Pass true to prevent nesting.
38452 * editing/ReplaceSelectionCommand.cpp: Removed wasBlock and friends.
38453 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
38454 (WebCore::ReplacementFragment::saveRenderingInfo): Ditto.
38455 (WebCore::RenderingInfo::RenderingInfo): Ditto.
38456 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
38457 (WebCore::ReplaceSelectionCommand::shouldMergeStart): Combined the to/from
38458 merging rules into one method.
38459 (WebCore::ReplaceSelectionCommand::shouldMergeEnd):
38460 (WebCore::ReplaceSelectionCommand::shouldMerge):
38461 (WebCore::ReplaceSelectionCommand::doApply):
38462 Don't do nesting prevention when pasting into an empty paragraph, this
38463 fixes 4046469, the common cause of paste fidelity bugs, but needs
38464 to be tweaked a little because this can lead to margin/border build-up
38465 on repeated copy/pastes.
38466 Don't track startPos in addition to insertionPos. It was never used.
38467 Fixed a bug where a fragment starting with an interchange newline would
38468 cause content to be put outside of an editable region when pasting at the
38470 Adjust insertionPos before insertion (not during) and do not consult wasBlock
38471 to decide whether or not to do so.
38472 Changed the way we do the start merge: insert the fragment, then stich
38473 paragraphs together, in the same way that we do the end merge. This
38474 doesn't require wasBlock and fixes bugs.
38475 Replaced some uses of insertionPos with endOfInsertedContent.
38476 Fixed a bug in the expansion of the last incoming br (a "collapsed" br
38477 is one where !isStartOfParagraph([br,0])).
38478 Removed the special case code that did the end merge for the preserveNewline
38479 case, since this patch fixes the moveParagraph bug in the preserveNewline case.
38480 Removed some unused variables.
38481 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): An endBR that was
38482 holding a line open should always be displaced by inserted content, unless
38483 the inserted content ends with a br.
38484 (WebCore::ReplaceSelectionCommand::updateNodesInserted):
38485 * editing/ReplaceSelectionCommand.h:
38486 (WebCore::RenderingInfo::style):
38487 * editing/markup.cpp:
38488 (WebCore::createMarkup): Only add mail blockquotes and list/table/pre when
38489 annotate is true (when we're creating markup for the pasteboard).
38491 2006-08-16 John Sullivan <sullivan@apple.com>
38493 Reviewed by Brady Eidson
38495 - fixed <rdar://problem/4637156> underlines appearing in white selection text
38497 * rendering/InlineFlowBox.cpp:
38498 (WebCore::InlineFlowBox::paintDecorations):
38499 bail out if phase is PaintPhaseSelection and forceWhiteText is true
38501 2006-08-16 Brady Eidson <beidson@apple.com>
38505 Updated the DB version number and added a helpful comment explaining its meaning
38507 * loader/icon/IconDatabase.cpp:
38509 2006-08-16 Brady Eidson <beidson@apple.com>
38513 Major refactoring of new iconDB:
38514 -Instead of private browsing being handled by in-memory tables, it's now handled
38515 by a separate in-memory database with the same table names. This allows us to
38516 re-use the same SQL on either the main or private-browsing database
38517 -So it follows, I broke out much of the SQL queries into seperate methods suffixed with
38518 "Query" that take a database as the method's argument so the same language can run on
38519 both private and main tables
38520 -Now that we have two DBs, moved the retain/release count to the m_mainDB
38521 -While I was at it, updated the schema to combine the Icon and IconResource table - cuts
38522 down on some high-usage, low value queries which were too expensive
38523 -Ditched the _url -> url convention for escaping urls for SQL. Now its url and escapedURL
38524 -Pruned tons of unused methods from previous revisions
38526 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed isIconExpiredForPageURL as it was never used
38527 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
38528 * loader/icon/IconDatabase.cpp:
38529 (WebCore::IconDatabase::IconDatabase): Updated initializer list
38530 (WebCore::IconDatabase::open): Sets up both databases
38531 (WebCore::IconDatabase::close): Closes both databases
38532 (WebCore::IconDatabase::isEmpty): Queries both databases for at least 1 record
38533 (WebCore::IconDatabase::isValidDatabase): Reflect the updated schema
38534 (WebCore::IconDatabase::clearDatabaseTables): Ditto - and takes DB as a parameter
38535 (WebCore::IconDatabase::createDatabaseTables): Ditto
38536 (WebCore::IconDatabase::imageDataForIconURL): style cleanup, and using a query-function
38537 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Resets private DB instead of private tables
38538 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses a query-function on each DB
38539 (WebCore::IconDatabase::iconURLForPageURL): Uses a query-function on each DB
38540 (WebCore::IconDatabase::retainIconForPageURL): Retain count DB changes
38541 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
38542 (WebCore::IconDatabase::isIconURLRetained): Determine if it's time to prune a released icon yet
38543 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase): Alot simpler
38544 (WebCore::IconDatabase::setIconDataForIconURL): Style cleanup
38545 (WebCore::IconDatabase::setHaveNoIconForIconURL): Ditto
38546 (WebCore::IconDatabase::setIconURLForPageURL): Ditto - and using a query-function
38547 (WebCore::IconDatabase::establishIconIDForIconURL): Style cleanup
38548 (WebCore::IconDatabase::pruneUnreferencedIcons): DB name change
38549 (WebCore::IconDatabase::pruneUnretainedIcons): Ditto
38550 (WebCore::IconDatabase::hasIconForIconURL): Simpler, using a query-function
38551 (WebCore::IconDatabase::~IconDatabase):
38552 (WebCore::pageURLTableIsEmptyQuery): Self-explanatory SQL query
38553 (WebCore::imageDataForIconURLQuery): Self-explanatory SQL query
38554 (WebCore::timeStampForIconURLQuery): Self-explanatory SQL query
38555 (WebCore::iconURLForPageURLQuery): Self-explanatory SQL query
38556 (WebCore::forgetPageURLQuery): Self-explanatory SQL query
38557 (WebCore::setIconIDForPageURLQuery): Self-explanatory SQL query
38558 (WebCore::getIconIDForIconURLQuery): Self-explanatory SQL query
38559 (WebCore::addIconForIconURLQuery): Self-explanatory SQL query
38560 (WebCore::hasIconForIconURLQuery): Self-explanatory SQL query
38561 * loader/icon/IconDatabase.h: Some new/changed methods, pruned methods, and new comments
38562 (WebCore::IconDatabase::isOpen): Changed our meaning of "isOpen" to reflect the 2 databases
38564 2006-08-15 Jonas Witt <jonas.witt@gmail.com>
38568 - added ObjC wrappers for the KeyboardEvent and WheelEvent initializers
38569 http://bugs.webkit.org/show_bug.cgi?id=9736
38571 * bindings/objc/DOMEvents.mm:
38572 (-[DOMKeyboardEvent initKeyboardEvent::::::::::]):
38573 * bindings/objc/DOMEventsNonstandard.mm:
38574 (-[DOMWheelEvent initWheelEvent:::::::::::]):
38575 * bindings/objc/DOMPrivate.h:
38577 - added an initializer for the WheelEvent
38579 * dom/WheelEvent.cpp:
38580 (WebCore::WheelEvent::initWheelEvent):
38581 * dom/WheelEvent.h:
38583 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
38587 Build fix: DWARF and -gfull are incompatible with symbol separation.
38589 * WebCore.xcodeproj/project.pbxproj:
38591 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
38595 http://bugs.webkit.org/show_bug.cgi?id=10394
38596 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
38598 * WebCore.xcodeproj/project.pbxproj:
38600 2006-08-15 Geoffrey Garen <ggaren@apple.com>
38604 - This patch reworks a previous fix for <rdar://problem/3524912> repro
38605 crash in KHTMLParser::parseToken, due to parser's current element being
38606 destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix
38609 The previous solutions caused a ~2% performance regression on iBench HTML,
38610 due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
38611 for a total win of ~3% vs current TOT.
38613 We can merge this fix to the branch to fix <rdar://problem/4661982>
38614 (crash in KHTMLParser::popBlock).
38616 The solution here is:
38617 (1) Don't let the parser ref document nodes -- that causes leaks.
38618 (2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
38619 moving a node between stacks or to/from 'current', rather than deref'ing
38620 and then ref'ing again, simply move the node, along with its refcount, to
38621 its new location, and overwrite its old location.
38623 * WebCore.xcodeproj/project.pbxproj:
38624 * html/HTMLParser.cpp:
38625 (WebCore::HTMLStackElem::HTMLStackElem):
38626 (WebCore::HTMLStackElem::derefNode):
38627 (WebCore::HTMLParser::HTMLParser):
38628 (WebCore::HTMLParser::setCurrent):
38629 (WebCore::HTMLParser::insertNode):
38630 (WebCore::HTMLParser::popNestedHeaderTag):
38631 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
38632 (WebCore::HTMLParser::reopenResidualStyleTags):
38633 (WebCore::HTMLParser::pushBlock):
38634 (WebCore::HTMLParser::popBlock):
38635 (WebCore::HTMLParser::popOneBlockCommon):
38636 (WebCore::HTMLParser::popOneBlock):
38637 (WebCore::HTMLParser::moveOneBlockToStack):
38638 * html/HTMLParser.h:
38640 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
38644 http://bugs.webkit.org/show_bug.cgi?id=10384
38645 Bug 10384: Switch to DWARF for Release configuration
38647 * WebCore.xcodeproj/project.pbxproj:
38649 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
38652 Tweaked and landed by Darin.
38654 http://bugs.webkit.org/show_bug.cgi?id=10399
38655 Bug 10399: RenderTextArea is unused
38657 * WebCore.vcproj/WebCore/WebCore.vcproj:
38658 * WebCore.xcodeproj/project.pbxproj:
38659 * WebCoreSources.bkl:
38660 Removed RenderTextArea source files.
38662 * html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
38663 * html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
38665 * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
38667 * platform/TextBox.h: Removed.
38668 * platform/mac/TextBoxMac.mm: Removed.
38669 * platform/mac/WebCoreTextArea.h: Removed.
38670 * platform/mac/WebCoreTextArea.mm: Removed.
38671 * rendering/RenderTextArea.cpp: Removed.
38672 * rendering/RenderTextArea.h: Removed.
38674 2006-08-15 Brady Eidson <beidson@apple.com>
38676 Reviewed by THE OTHER Maciej...
38679 1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
38680 2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
38681 null dereference later
38683 * bridge/mac/WebCoreIconDatabaseBridge.mm:
38684 (-[WebCoreIconDatabaseBridge retainIconForURL:]): Changed IconDatabase method name
38685 (-[WebCoreIconDatabaseBridge releaseIconForURL:]): ditto
38686 * loader/icon/IconDatabase.cpp:
38687 (WebCore::IconDatabase::retainIconForPageURL): Name change
38688 (WebCore::IconDatabase::releaseIconForPageURL): ditto
38689 (WebCore::IconDatabase::setIconURLForPageURL): Added the null site-icon check when changing a PageURL's iconURL
38690 * loader/icon/IconDatabase.h: Some renames
38692 2006-08-14 Eric Seidel <eric@webkit.org>
38696 <mask>, <marker>, <pattern> inside <defs> do not work
38697 http://bugs.webkit.org/show_bug.cgi?id=6548
38699 * ksvg2/svg/SVGDefsElement.cpp:
38700 (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file
38701 (WebCore::SVGDefsElement::isValid): moved to .cpp file
38702 (WebCore::SVGDefsElement::rendererIsNeeded): Added.
38703 (WebCore::SVGDefsElement::createRenderer): Added.
38704 * ksvg2/svg/SVGDefsElement.h:
38705 * ksvg2/svg/SVGGElement.cpp:
38706 (WebCore::SVGGElement::SVGGElement): adjusted spacing
38707 (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing
38708 (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
38710 2006-08-14 Eric Seidel <eric@webkit.org>
38712 Reviewed by darin and mjs.
38714 Add better SVGLoad event support.
38715 http://bugs.webkit.org/show_bug.cgi?id=6010
38716 There will still need to be additional support added for <link> and <script> elements.
38717 Not all of the error -> loaded -> error transition cases work yet.
38719 * dom/EventTargetNode.cpp:
38720 (WebCore::EventTargetNode::dispatchGenericEvent):
38721 * html/HTMLImageLoader.cpp:
38722 (WebCore::HTMLImageLoader::dispatchLoadEvent):
38723 * html/HTMLImageLoader.h:
38724 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
38725 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
38726 * ksvg2/misc/SVGImageLoader.cpp:
38727 (WebCore::SVGImageLoader::SVGImageLoader):
38728 (WebCore::SVGImageLoader::dispatchLoadEvent):
38729 * ksvg2/misc/SVGImageLoader.h:
38730 * ksvg2/svg/SVGAElement.cpp:
38731 (WebCore::SVGAElement::parseMappedAttribute):
38732 * ksvg2/svg/SVGAnimatedBoolean.h:
38733 * ksvg2/svg/SVGElement.cpp:
38734 (WebCore::SVGElement::SVGElement):
38735 (WebCore::SVGElement::parseMappedAttribute):
38736 (WebCore::SVGElement::haveLoadedRequiredResources):
38737 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
38738 (WebCore::SVGElement::closeRenderer):
38739 * ksvg2/svg/SVGElement.h:
38740 (WebCore::SVGElement::rendererIsNeeded):
38741 (WebCore::svg_dynamic_cast):
38742 * ksvg2/svg/SVGExternalResourcesRequired.h:
38743 * ksvg2/svg/SVGImageElement.cpp:
38744 (SVGImageElement::SVGImageElement):
38745 (SVGImageElement::haveLoadedRequiredResources):
38746 * ksvg2/svg/SVGImageElement.h:
38747 * ksvg2/svg/SVGSVGElement.cpp:
38748 (WebCore::SVGSVGElement::parseMappedAttribute):
38749 * ksvg2/svg/SVGScriptElement.cpp:
38750 (WebCore::SVGScriptElement::SVGScriptElement):
38751 (WebCore::SVGScriptElement::parseMappedAttribute):
38752 (WebCore::SVGScriptElement::executeScript):
38753 * xml/xmlhttprequest.cpp:
38754 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
38756 2006-08-14 Anders Carlsson <acarlsson@apple.com>
38758 Reviewed by Maciej.
38760 http://bugs.webkit.org/show_bug.cgi?id=10393
38761 Autogenerate NodeIterator and TreeWalker.
38763 * DerivedSources.make:
38764 * WebCore.xcodeproj/project.pbxproj:
38767 * bindings/js/JSNodeIteratorCustom.cpp: Added.
38768 (WebCore::JSNodeIterator::mark):
38769 * bindings/js/JSTreeWalkerCustom.cpp: Added.
38770 (WebCore::JSTreeWalker::mark):
38772 * bindings/js/kjs_traversal.cpp:
38773 * bindings/js/kjs_traversal.h:
38774 Remove implementations of DOMNodeIterator and DOMTreeWalker.
38776 * bindings/scripts/CodeGeneratorJS.pm:
38777 Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.
38779 * bindings/objc/DOM.mm:
38780 (-[DOMNodeIterator detach]):
38781 * dom/NodeIterator.cpp:
38782 (WebCore::NodeIterator::detach):
38783 * dom/NodeIterator.h:
38784 Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
38785 * dom/NodeIterator.idl: Added.
38786 * dom/TreeWalker.idl: Added.
38788 2006-08-14 Brady Eidson <beidson@apple.com>
38792 The changes are plentiful, but small, mostly to improve performance
38793 1) Add a bool flag to SiteIcon to stop it from querying the database over and over
38794 2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
38795 3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon
38796 4) Added isIconURLRetained() to optimize the retain count check
38797 5) Prune old, unused code
38799 * loader/icon/IconDatabase.cpp:
38800 (WebCore::IconDatabase::imageDataForIconID): Removed unused code
38801 (WebCore::IconDatabase::imageDataForIconURL): Removed unused code
38802 (WebCore::IconDatabase::imageDataForPageURL): Removed unused code
38803 (WebCore::IconDatabase::isIconExpiredForIconURL): Removed LOG msg
38804 (WebCore::IconDatabase::isIconExpiredForPageURL): Removed LOG msg
38805 (WebCore::IconDatabase::iconURLForPageURL): Added a hashmap cache to avoid common queries
38806 (WebCore::IconDatabase::releaseIconForURL): Changed to is isRetained() instead of retainCount()
38807 (WebCore::IconDatabase::isIconURLRetained): Added - we don't care about the actual retain count
38808 for an icon so much as whether or not it is retained
38809 (WebCore::IconDatabase::setIconURLForPageURL): If the new and old iconURLs are the same, skip the
38811 * loader/icon/IconDatabase.h: Added new methods/variables
38812 * loader/icon/SiteIcon.cpp:
38813 (SiteIcon::SiteIcon): Added a flag so it only queries the database for icon data once
38814 (SiteIcon::getImage): Ditto
38816 2006-08-14 David Hyatt <hyatt@apple.com>
38818 Fix for bug 10385, add more support for crappy pseudo-XML-in-HTML.
38822 Added fast/parser/bad-xml-slash.html
38824 * html/HTMLTokenizer.cpp:
38825 (WebCore::HTMLTokenizer::parseTag):
38827 2006-08-14 Darin Adler <darin@apple.com>
38829 Reviewed by John Sullivan.
38831 - fix http://bugs.webkit.org/show_bug.cgi?id=10204
38832 REGRESSION: title tag parsing problem breaks Travelocity and Google Analytics pages
38834 Test: fast/parser/title-error-test.html
38836 * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Fixed an error
38837 handling case that was skipping until a </style> tag in code that was shared
38838 between both <title> and <style>. Also rearranged the code a tiny bit.
38840 2006-08-14 Darin Adler <darin@apple.com>
38844 - fixed some storage leaks
38845 (part of http://bugs.webkit.org/show_bug.cgi?id=10259)
38847 * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start):
38848 Rearrange code so that "delete this" is called any time the function returns
38849 false -- ownership was inconsistent before.
38851 * rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode):
38852 Call deleteLineBoxWrapper even when documentBeingDestroyed() is true, because
38853 some of what it does has to be done during destruction. A little awkward since
38854 I preserved the order of operations. Perhaps we could structure this better later.
38856 2006-08-14 David Harrison <harrison@apple.com>
38858 Reviewed by John Sullivan and Geoff Garen.
38860 <rdar://problem/3854950> AX Seed: Blackboard Learning Systems - frame names need to be put in AXDescription AXAttribute
38862 Test cases added: None. Manual AX testing is way too awkward, and automated testing
38863 is not possible. See following bug...
38864 <rdar://problem/4256882> Need automated testing support for accessibility APIs
38866 * bridge/mac/WebCoreAXObject.mm:
38867 (-[WebCoreAXObject accessibilityDescription]):
38868 For a web area, return the name of the owning frame or iframe.
38870 (-[WebCoreAXObject accessibilityAttributeNames]):
38871 Advertize NSAccessibilityDescriptionAttribute.
38873 (-[WebCoreAXObject rendererForView:]):
38874 Clean up some old naming.
38876 2006-08-11 Anders Carlsson <acarlsson@apple.com>
38880 http://bugs.webkit.org/show_bug.cgi?id=10353
38881 XMLSerializer and DOMParser should have real implementations
38883 Make real implementation files for DOMParser and XMLSerializer and wrap them
38884 using our bindings generation.
38886 * DerivedSources.make:
38887 * WebCore.xcodeproj/project.pbxproj:
38888 * bindings/js/JSDOMParser.cpp: Removed.
38889 * bindings/js/JSDOMParser.h: Removed.
38890 * bindings/js/JSXMLSerializer.cpp: Removed.
38891 * bindings/js/JSXMLSerializer.h: Removed.
38892 * bindings/js/kjs_window.cpp:
38893 (KJS::Window::getValueProperty):
38894 * bindings/js/kjs_window.h:
38896 * page/DOMWindow.idl:
38897 * xml/DOMParser.cpp: Added.
38898 (WebCore::DOMParser::parseFromString):
38899 * xml/DOMParser.h: Added.
38900 * xml/DOMParser.idl: Added.
38901 * xml/XMLSerializer.cpp: Added.
38902 (WebCore::XMLSerializer::serializeToString):
38903 * xml/XMLSerializer.h: Added.
38904 * xml/XMLSerializer.idl: Added.
38906 2006-08-14 Maciej Stachowiak <mjs@apple.com>
38910 - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
38912 * WebCore.exp: export new functions
38913 * platform/mac/WebCoreSystemInterface.h: Added CFReadStream related functions
38914 * platform/mac/WebCoreSystemInterface.mm: ditto
38916 2006-08-13 Maks Orlovich <maksim@kde.org>
38918 Reviewed (and tweaked a little) by Maciej.
38920 - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
38921 in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
38923 The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.
38925 * bindings/js/kjs_events.cpp:
38926 (KJS::JSLazyEventListener::parseCode):
38928 2006-08-12 Eric Seidel <eric@webkit.org>
38930 Reviewed by hyatt and mjs.
38932 Fix two missing null checks causing layout test crashes.
38934 * css/cssstyleselector.cpp:
38935 (WebCore::CSSStyleSelector::adjustRenderStyle): check e for null (null for pseudo styles)
38936 * kcanvas/RenderSVGContainer.cpp:
38937 (WebCore::RenderSVGContainer::requiresLayer): check parent()->element() for null
38940 2006-08-11 Eric Seidel <eric@webkit.org>
38942 Reviewed by andersca.
38944 The outermost <svg> element needs to clip itself
38945 http://bugs.webkit.org/show_bug.cgi?id=5358
38947 * css/cssstyleselector.cpp:
38948 (WebCore::CSSStyleSelector::adjustRenderStyle): adjust for SVG overflow rules
38949 * kcanvas/RenderSVGContainer.cpp:
38950 (WebCore::RenderSVGContainer::requiresLayer): only require layers for absolute/relative positioning of outermost SVG
38951 (WebCore::RenderSVGContainer::paint):
38952 * kcanvas/device/KRenderingDevice.h:
38953 * kcanvas/device/quartz/KRenderingDeviceQuartz.h: remove dead methods
38954 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: remove dead methods
38955 (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
38956 * ksvg2/svg/SVGPaint.cpp: spacing changes
38957 (WebCore::SVGPaint::SVGPaint): spacing cleanup
38958 * ksvg2/svg/SVGSVGElement.cpp:
38959 (WebCore::SVGSVGElement::parseMappedAttribute): spacing cleanup
38960 * platform/GraphicsContext.h: Added concatCTM
38961 * platform/cg/GraphicsContextCG.cpp:
38962 (WebCore::GraphicsContext::concatCTM): Added.
38964 2006-08-11 Brady Eidson <beidson@apple.com>
38968 Renamed a method/parameter for clarity and consistency, as well as some style
38969 cleanups and removing some ridiculously verbose log messages.
38970 Also added an _isEmpty method to the database and bridge for WebKit's use.
38971 Finally, added a central way for both WebKit and WebCore to get the icon database filename
38973 * bridge/mac/WebCoreIconDatabaseBridge.h: Added _isEmpty and defaultDatabaseFilename
38974 * bridge/mac/WebCoreIconDatabaseBridge.mm: Removed an unnecessary semicolon off most of these methods
38975 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
38976 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
38977 (-[WebCoreIconDatabaseBridge isOpen]):
38978 (-[WebCoreIconDatabaseBridge _isEmpty]): Added
38979 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
38980 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
38981 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
38982 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
38983 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
38984 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
38985 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
38986 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
38987 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
38988 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
38989 (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
38990 (-[WebCoreIconDatabaseBridge defaultDatabaseFilename]): Added
38992 * loader/icon/IconDatabase.cpp:
38993 (WebCore::IconDatabase::defaultDatabaseFilename): Added
38994 (WebCore::IconDatabase::open):
38995 (WebCore::IconDatabase::isEmpty): Added
38996 (WebCore::IconDatabase::retainIconForURL): Removed log message
38997 (WebCore::IconDatabase::releaseIconForURL): Removed log message
38998 * loader/icon/IconDatabase.h:
39000 2006-08-11 David Hyatt <hyatt@apple.com>
39002 Eliminate RenderImageButton.
39006 * WebCore.xcodeproj/project.pbxproj:
39007 * bridge/mac/WebCoreAXObject.mm:
39008 (-[WebCoreAXObject isImageButton]):
39009 * html/HTMLInputElement.cpp:
39010 (WebCore::HTMLInputElement::createRenderer):
39011 * rendering/RenderImage.h:
39012 (WebCore::RenderImage::isImage):
39014 2006-08-11 Adele Peterson <adele@apple.com>
39018 - Fix for <rdar://problem/4656274>
39019 REGRESSION: option elements are selected when added regardless of "selected" property
39021 Test: fast/forms/option-constructor-selected.html
39023 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setOption):
39024 When adding an option element, check that the option element is selected before calling setSelectedIndex.
39026 2006-08-11 David Hyatt <hyatt@apple.com>
39028 Fix for bug 10349, make sure to call setChanged when an anchor changes
39029 from not being a link to being a link (and vice versa).
39031 Test is in fast/dynamic/link-href-change.html
39035 * html/HTMLAnchorElement.cpp:
39036 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
39037 (WebCore::HTMLAnchorElement::parseMappedAttribute):
39038 * html/HTMLAnchorElement.h:
39039 * html/HTMLAreaElement.cpp:
39040 (WebCore::HTMLAreaElement::parseMappedAttribute):
39042 2006-08-09 Rob Buis <buis@kde.org>
39046 Revert an over-optimization step that messed up the HashSet lookup.
39048 * dom/DOMImplementation.cpp:
39050 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
39052 Rubber stamped by tim
39054 Removed commented out code
39056 * kcanvas/RenderSVGImage.cpp:
39057 (WebCore::RenderSVGImage::paint):
39059 2006-08-12 Oliver <ojh16@student.canterbury.ac.nz>
39063 Fixed regression in SVG image layout
39066 * kcanvas/RenderSVGImage.cpp:
39067 (WebCore::RenderSVGImage::paint):
39069 2006-08-10 Anders Carlsson <acarlsson@apple.com>
39071 Rubber-stamped by Maciej.
39075 * DerivedSources.make:
39076 * WebCore.vcproj/WebCore/WebCore.vcproj:
39077 * WebCore.xcodeproj/project.pbxproj:
39078 * xpath/XPathEvaluator.cpp: Removed.
39079 * xpath/XPathEvaluator.h: Removed.
39080 * xpath/XPathEvaluator.idl: Removed.
39081 * xpath/XPathExpression.cpp: Removed.
39082 * xpath/XPathExpression.h: Removed.
39083 * xpath/XPathExpression.idl: Removed.
39084 * xpath/XPathNSResolver.cpp: Removed.
39085 * xpath/XPathNSResolver.h: Removed.
39086 * xpath/XPathNSResolver.idl: Removed.
39087 * xpath/XPathNamespace.cpp: Removed.
39088 * xpath/XPathNamespace.h: Removed.
39089 * xpath/XPathResult.cpp: Removed.
39090 * xpath/XPathResult.h: Removed.
39091 * xpath/XPathResult.idl: Removed.
39092 * xpath/impl/XPathExpressionNode.cpp: Removed.
39093 * xpath/impl/XPathExpressionNode.h: Removed.
39094 * xpath/impl/XPathFunctions.cpp: Removed.
39095 * xpath/impl/XPathFunctions.h: Removed.
39096 * xpath/impl/XPathGrammar.y: Removed.
39097 * xpath/impl/XPathParser.cpp: Removed.
39098 * xpath/impl/XPathParser.h: Removed.
39099 * xpath/impl/XPathPath.cpp: Removed.
39100 * xpath/impl/XPathPath.h: Removed.
39101 * xpath/impl/XPathPredicate.cpp: Removed.
39102 * xpath/impl/XPathPredicate.h: Removed.
39103 * xpath/impl/XPathStep.cpp: Removed.
39104 * xpath/impl/XPathStep.h: Removed.
39105 * xpath/impl/XPathUtil.cpp: Removed.
39106 * xpath/impl/XPathUtil.h: Removed.
39107 * xpath/impl/XPathValue.cpp: Removed.
39108 * xpath/impl/XPathValue.h: Removed.
39109 * xpath/impl/XPathVariableReference.cpp: Removed.
39110 * xpath/impl/XPathVariableReference.h: Removed.
39112 2006-08-10 David Harrison <harrison@apple.com>
39114 Reviewed by John Sullivan.
39116 <rdar://problem/4600112> REGRESSION: VO no longer able to review text within an edit field on web pages
39118 Test cases added: None. Manual AX testing is way too awkward, and automated testing
39119 is not possible. See following bug...
39120 <rdar://problem/4256882> Need automated testing support for accessibility APIs
39122 * bridge/mac/WebCoreAXObject.mm:
39123 (-[WebCoreAXObject value]):
39124 Add handling for text input fields.
39126 2006-08-09 Graham Dennis <graham.dennis@gmail.com>
39130 - fix http://bugs.webkit.org/show_bug.cgi?id=10247
39131 REGRESSION: Unable to build webkit without SVG/XPATH
39133 * bindings/js/kjs_binding.cpp:
39134 (KJS::setDOMException):
39135 * bindings/js/kjs_dom.cpp:
39137 * bindings/js/kjs_html.cpp:
39138 (KJS::HTMLElementFunction::callAsFunction):
39139 * bindings/js/kjs_proxy.cpp:
39140 * bindings/js/kjs_proxy.h:
39141 * bindings/objc/DOMInternal.h:
39142 * bindings/objc/DOMInternal.mm:
39143 (raiseDOMException):
39144 * bindings/objc/DOMXPath.mm:
39145 * bindings/objc/DOMXPathInternal.h:
39146 * bindings/scripts/CodeGeneratorJS.pm:
39147 * bridge/mac/WebCoreFrameBridge.mm:
39148 (+[WebCoreFrameBridge supportedNonImageMIMETypes]):
39149 * css/CSSGrammar.y:
39150 * css/CSSStyleDeclaration.cpp:
39151 (WebCore::propertyID):
39152 * css/cssparser.cpp:
39153 (WebCore::CSSParser::parseValue):
39155 * css/cssstyleselector.cpp:
39156 (WebCore::CSSStyleSelector::loadDefaultStyle):
39157 (WebCore::CSSStyleSelector::applyProperty):
39158 * css/cssstyleselector.h:
39159 * dom/Document.cpp:
39160 (WebCore::Document::Document):
39161 (WebCore::Document::~Document):
39162 (WebCore::Document::createElementNS):
39163 (WebCore::Document::implicitClose):
39164 (WebCore::Document::recalcStyleSelector):
39165 (WebCore::Document::createEvent):
39167 * dom/Document.idl:
39169 (WebCore::Node::createRendererIfNeeded):
39171 * dom/XMLTokenizer.cpp:
39172 (WebCore::XMLTokenizer::endElementNs):
39173 (WebCore::XMLTokenizer::insertErrorMessageBlock):
39174 * html/HTMLEmbedElement.cpp:
39175 * html/HTMLEmbedElement.h:
39176 * html/HTMLObjectElement.cpp:
39177 * html/HTMLObjectElement.h:
39178 * kcanvas/KCanvasCreator.cpp:
39179 * kcanvas/KCanvasCreator.h:
39180 * kcanvas/KCanvasFilters.cpp:
39181 * kcanvas/KCanvasFilters.h:
39182 * kcanvas/KCanvasImage.h:
39183 * kcanvas/KCanvasMatrix.cpp:
39184 * kcanvas/KCanvasMatrix.h:
39185 * kcanvas/KCanvasPath.cpp:
39186 * kcanvas/KCanvasPath.h:
39187 * kcanvas/KCanvasResourceListener.h:
39188 * kcanvas/KCanvasResources.cpp:
39189 * kcanvas/KCanvasResources.h:
39190 * kcanvas/KCanvasTreeDebug.cpp:
39191 * kcanvas/RenderForeignObject.cpp:
39192 * kcanvas/RenderForeignObject.h:
39193 * kcanvas/RenderPath.cpp:
39194 * kcanvas/RenderPath.h:
39195 * kcanvas/RenderSVGContainer.cpp:
39196 * kcanvas/RenderSVGContainer.h:
39197 * kcanvas/RenderSVGImage.cpp:
39198 * kcanvas/RenderSVGImage.h:
39199 * kcanvas/RenderSVGText.cpp:
39200 * kcanvas/RenderSVGText.h:
39201 * kcanvas/device/KRenderingDevice.cpp:
39202 * kcanvas/device/KRenderingDevice.h:
39203 * kcanvas/device/KRenderingFillPainter.cpp:
39204 * kcanvas/device/KRenderingFillPainter.h:
39205 * kcanvas/device/KRenderingPaintServer.h:
39206 * kcanvas/device/KRenderingPaintServerGradient.cpp:
39207 * kcanvas/device/KRenderingPaintServerGradient.h:
39208 * kcanvas/device/KRenderingPaintServerPattern.cpp:
39209 * kcanvas/device/KRenderingPaintServerPattern.h:
39210 * kcanvas/device/KRenderingPaintServerSolid.cpp:
39211 * kcanvas/device/KRenderingPaintServerSolid.h:
39212 * kcanvas/device/KRenderingStrokePainter.cpp:
39213 * kcanvas/device/KRenderingStrokePainter.h:
39214 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
39215 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
39216 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
39217 * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
39218 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
39219 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
39220 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
39221 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
39222 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
39223 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
39224 * kcanvas/device/quartz/QuartzSupport.h:
39225 * kcanvas/device/quartz/QuartzSupport.mm:
39226 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
39227 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h:
39228 * ksvg2/css/SVGCSSParser.cpp:
39229 * ksvg2/css/SVGCSSStyleSelector.cpp:
39230 * ksvg2/css/SVGRenderStyle.cpp:
39231 * ksvg2/css/SVGRenderStyle.h:
39232 * ksvg2/css/SVGRenderStyleDefs.cpp:
39233 * ksvg2/css/SVGRenderStyleDefs.h:
39234 * ksvg2/ecma/GlobalObject.cpp:
39235 * ksvg2/ecma/GlobalObject.h:
39236 * ksvg2/events/JSSVGLazyEventListener.cpp:
39237 * ksvg2/events/JSSVGLazyEventListener.h:
39238 * ksvg2/events/SVGZoomEvent.cpp:
39239 * ksvg2/events/SVGZoomEvent.h:
39241 * ksvg2/misc/KCanvasRenderingStyle.cpp:
39242 * ksvg2/misc/KCanvasRenderingStyle.h:
39243 * ksvg2/misc/KSVGTimeScheduler.cpp:
39244 * ksvg2/misc/KSVGTimeScheduler.h:
39245 * ksvg2/misc/SVGDocumentExtensions.cpp:
39246 * ksvg2/misc/SVGDocumentExtensions.h:
39247 * ksvg2/misc/SVGImageLoader.cpp:
39248 * ksvg2/misc/SVGImageLoader.h:
39249 * ksvg2/svg/DOMList.h:
39250 * ksvg2/svg/SVGAElement.cpp:
39251 * ksvg2/svg/SVGAElement.h:
39252 * ksvg2/svg/SVGAngle.cpp:
39253 * ksvg2/svg/SVGAngle.h:
39254 * ksvg2/svg/SVGAnimateColorElement.cpp:
39255 * ksvg2/svg/SVGAnimateColorElement.h:
39256 * ksvg2/svg/SVGAnimateElement.cpp:
39257 * ksvg2/svg/SVGAnimateElement.h:
39258 * ksvg2/svg/SVGAnimateTransformElement.cpp:
39259 * ksvg2/svg/SVGAnimateTransformElement.h:
39260 * ksvg2/svg/SVGAnimatedAngle.cpp:
39261 * ksvg2/svg/SVGAnimatedAngle.h:
39262 * ksvg2/svg/SVGAnimatedBoolean.cpp:
39263 * ksvg2/svg/SVGAnimatedBoolean.h:
39264 * ksvg2/svg/SVGAnimatedColor.cpp:
39265 * ksvg2/svg/SVGAnimatedColor.h:
39266 * ksvg2/svg/SVGAnimatedEnumeration.cpp:
39267 * ksvg2/svg/SVGAnimatedEnumeration.h:
39268 * ksvg2/svg/SVGAnimatedInteger.cpp:
39269 * ksvg2/svg/SVGAnimatedInteger.h:
39270 * ksvg2/svg/SVGAnimatedLength.cpp:
39271 * ksvg2/svg/SVGAnimatedLength.h:
39272 * ksvg2/svg/SVGAnimatedLengthList.cpp:
39273 * ksvg2/svg/SVGAnimatedLengthList.h:
39274 * ksvg2/svg/SVGAnimatedNumber.cpp:
39275 * ksvg2/svg/SVGAnimatedNumber.h:
39276 * ksvg2/svg/SVGAnimatedNumberList.cpp:
39277 * ksvg2/svg/SVGAnimatedNumberList.h:
39278 * ksvg2/svg/SVGAnimatedPathData.cpp:
39279 * ksvg2/svg/SVGAnimatedPathData.h:
39280 * ksvg2/svg/SVGAnimatedPoints.cpp:
39281 * ksvg2/svg/SVGAnimatedPoints.h:
39282 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.cpp:
39283 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
39284 * ksvg2/svg/SVGAnimatedRect.cpp:
39285 * ksvg2/svg/SVGAnimatedRect.h:
39286 * ksvg2/svg/SVGAnimatedString.cpp:
39287 * ksvg2/svg/SVGAnimatedString.h:
39288 * ksvg2/svg/SVGAnimatedTemplate.h:
39289 * ksvg2/svg/SVGAnimatedTransformList.cpp:
39290 * ksvg2/svg/SVGAnimatedTransformList.h:
39291 * ksvg2/svg/SVGAnimationElement.cpp:
39292 * ksvg2/svg/SVGAnimationElement.h:
39293 * ksvg2/svg/SVGCircleElement.cpp:
39294 * ksvg2/svg/SVGCircleElement.h:
39295 * ksvg2/svg/SVGClipPathElement.cpp:
39296 * ksvg2/svg/SVGClipPathElement.h:
39297 * ksvg2/svg/SVGColor.cpp:
39298 * ksvg2/svg/SVGColor.h:
39299 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
39300 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
39301 * ksvg2/svg/SVGCursorElement.cpp:
39302 * ksvg2/svg/SVGCursorElement.h:
39303 * ksvg2/svg/SVGDOMImplementation.cpp:
39304 * ksvg2/svg/SVGDOMImplementation.h:
39305 * ksvg2/svg/SVGDefsElement.cpp:
39306 * ksvg2/svg/SVGDefsElement.h:
39307 * ksvg2/svg/SVGDescElement.cpp:
39308 * ksvg2/svg/SVGDescElement.h:
39309 * ksvg2/svg/SVGDocument.cpp:
39310 * ksvg2/svg/SVGDocument.h:
39311 * ksvg2/svg/SVGElement.cpp:
39312 * ksvg2/svg/SVGElement.h:
39313 * ksvg2/svg/SVGElementInstance.cpp:
39314 * ksvg2/svg/SVGElementInstance.h:
39315 * ksvg2/svg/SVGElementInstanceList.cpp:
39316 * ksvg2/svg/SVGElementInstanceList.h:
39317 * ksvg2/svg/SVGEllipseElement.cpp:
39318 * ksvg2/svg/SVGEllipseElement.h:
39319 * ksvg2/svg/SVGExternalResourcesRequired.cpp:
39320 * ksvg2/svg/SVGExternalResourcesRequired.h:
39321 * ksvg2/svg/SVGFEBlendElement.cpp:
39322 * ksvg2/svg/SVGFEBlendElement.h:
39323 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
39324 * ksvg2/svg/SVGFEColorMatrixElement.h:
39325 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
39326 * ksvg2/svg/SVGFEComponentTransferElement.h:
39327 * ksvg2/svg/SVGFECompositeElement.cpp:
39328 * ksvg2/svg/SVGFECompositeElement.h:
39329 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
39330 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
39331 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
39332 * ksvg2/svg/SVGFEDisplacementMapElement.h:
39333 * ksvg2/svg/SVGFEDistantLightElement.cpp:
39334 * ksvg2/svg/SVGFEDistantLightElement.h:
39335 * ksvg2/svg/SVGFEFloodElement.cpp:
39336 * ksvg2/svg/SVGFEFloodElement.h:
39337 * ksvg2/svg/SVGFEFuncAElement.cpp:
39338 * ksvg2/svg/SVGFEFuncAElement.h:
39339 * ksvg2/svg/SVGFEFuncBElement.cpp:
39340 * ksvg2/svg/SVGFEFuncBElement.h:
39341 * ksvg2/svg/SVGFEFuncGElement.cpp:
39342 * ksvg2/svg/SVGFEFuncGElement.h:
39343 * ksvg2/svg/SVGFEFuncRElement.cpp:
39344 * ksvg2/svg/SVGFEFuncRElement.h:
39345 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
39346 * ksvg2/svg/SVGFEGaussianBlurElement.h:
39347 * ksvg2/svg/SVGFEImageElement.cpp:
39348 * ksvg2/svg/SVGFEImageElement.h:
39349 * ksvg2/svg/SVGFELightElement.cpp:
39350 * ksvg2/svg/SVGFELightElement.h:
39351 * ksvg2/svg/SVGFEMergeElement.cpp:
39352 * ksvg2/svg/SVGFEMergeElement.h:
39353 * ksvg2/svg/SVGFEMergeNodeElement.cpp:
39354 * ksvg2/svg/SVGFEMergeNodeElement.h:
39355 * ksvg2/svg/SVGFEOffsetElement.cpp:
39356 * ksvg2/svg/SVGFEOffsetElement.h:
39357 * ksvg2/svg/SVGFEPointLightElement.cpp:
39358 * ksvg2/svg/SVGFEPointLightElement.h:
39359 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
39360 * ksvg2/svg/SVGFESpecularLightingElement.h:
39361 * ksvg2/svg/SVGFESpotLightElement.cpp:
39362 * ksvg2/svg/SVGFESpotLightElement.h:
39363 * ksvg2/svg/SVGFETileElement.cpp:
39364 * ksvg2/svg/SVGFETileElement.h:
39365 * ksvg2/svg/SVGFETurbulenceElement.cpp:
39366 * ksvg2/svg/SVGFETurbulenceElement.h:
39367 * ksvg2/svg/SVGFilterElement.cpp:
39368 * ksvg2/svg/SVGFilterElement.h:
39369 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
39370 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
39371 * ksvg2/svg/SVGFitToViewBox.cpp:
39372 * ksvg2/svg/SVGFitToViewBox.h:
39373 * ksvg2/svg/SVGForeignObjectElement.cpp:
39374 * ksvg2/svg/SVGForeignObjectElement.h:
39375 * ksvg2/svg/SVGGElement.cpp:
39376 * ksvg2/svg/SVGGElement.h:
39377 * ksvg2/svg/SVGGradientElement.cpp:
39378 * ksvg2/svg/SVGGradientElement.h:
39379 * ksvg2/svg/SVGHelper.cpp:
39380 * ksvg2/svg/SVGHelper.h:
39381 * ksvg2/svg/SVGImageElement.cpp:
39382 * ksvg2/svg/SVGImageElement.h:
39383 * ksvg2/svg/SVGLangSpace.cpp:
39384 * ksvg2/svg/SVGLangSpace.h:
39385 * ksvg2/svg/SVGLength.cpp:
39386 * ksvg2/svg/SVGLength.h:
39387 * ksvg2/svg/SVGLengthList.cpp:
39388 * ksvg2/svg/SVGLengthList.h:
39389 * ksvg2/svg/SVGLineElement.cpp:
39390 * ksvg2/svg/SVGLineElement.h:
39391 * ksvg2/svg/SVGLinearGradientElement.cpp:
39392 * ksvg2/svg/SVGLinearGradientElement.h:
39393 * ksvg2/svg/SVGList.h:
39394 * ksvg2/svg/SVGLocatable.cpp:
39395 * ksvg2/svg/SVGLocatable.h:
39396 * ksvg2/svg/SVGMarkerElement.cpp:
39397 * ksvg2/svg/SVGMarkerElement.h:
39398 * ksvg2/svg/SVGMaskElement.cpp:
39399 * ksvg2/svg/SVGMaskElement.h:
39400 * ksvg2/svg/SVGMatrix.cpp:
39401 * ksvg2/svg/SVGMatrix.h:
39402 * ksvg2/svg/SVGNumber.cpp:
39403 * ksvg2/svg/SVGNumber.h:
39404 * ksvg2/svg/SVGNumberList.cpp:
39405 * ksvg2/svg/SVGNumberList.h:
39406 * ksvg2/svg/SVGPaint.cpp:
39407 * ksvg2/svg/SVGPaint.h:
39408 * ksvg2/svg/SVGPathElement.cpp:
39409 * ksvg2/svg/SVGPathElement.h:
39410 * ksvg2/svg/SVGPathSeg.cpp:
39411 * ksvg2/svg/SVGPathSeg.h:
39412 * ksvg2/svg/SVGPathSegArc.cpp:
39413 * ksvg2/svg/SVGPathSegArc.h:
39414 * ksvg2/svg/SVGPathSegClosePath.cpp:
39415 * ksvg2/svg/SVGPathSegClosePath.h:
39416 * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
39417 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
39418 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
39419 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
39420 * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
39421 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
39422 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
39423 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
39424 * ksvg2/svg/SVGPathSegLineto.cpp:
39425 * ksvg2/svg/SVGPathSegLineto.h:
39426 * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
39427 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
39428 * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
39429 * ksvg2/svg/SVGPathSegLinetoVertical.h:
39430 * ksvg2/svg/SVGPathSegList.cpp:
39431 * ksvg2/svg/SVGPathSegList.h:
39432 * ksvg2/svg/SVGPathSegMoveto.cpp:
39433 * ksvg2/svg/SVGPathSegMoveto.h:
39434 * ksvg2/svg/SVGPatternElement.cpp:
39435 * ksvg2/svg/SVGPatternElement.h:
39436 * ksvg2/svg/SVGPoint.cpp:
39437 * ksvg2/svg/SVGPoint.h:
39438 * ksvg2/svg/SVGPointList.cpp:
39439 * ksvg2/svg/SVGPointList.h:
39440 * ksvg2/svg/SVGPolyElement.cpp:
39441 * ksvg2/svg/SVGPolyElement.h:
39442 * ksvg2/svg/SVGPolygonElement.cpp:
39443 * ksvg2/svg/SVGPolygonElement.h:
39444 * ksvg2/svg/SVGPolylineElement.cpp:
39445 * ksvg2/svg/SVGPolylineElement.h:
39446 * ksvg2/svg/SVGPreserveAspectRatio.cpp:
39447 * ksvg2/svg/SVGPreserveAspectRatio.h:
39448 * ksvg2/svg/SVGRadialGradientElement.cpp:
39449 * ksvg2/svg/SVGRadialGradientElement.h:
39450 * ksvg2/svg/SVGRect.cpp:
39451 * ksvg2/svg/SVGRect.h:
39452 * ksvg2/svg/SVGRectElement.cpp:
39453 * ksvg2/svg/SVGRectElement.h:
39454 * ksvg2/svg/SVGSVGElement.cpp:
39455 * ksvg2/svg/SVGSVGElement.h:
39456 * ksvg2/svg/SVGScriptElement.cpp:
39457 * ksvg2/svg/SVGScriptElement.h:
39458 * ksvg2/svg/SVGSetElement.cpp:
39459 * ksvg2/svg/SVGSetElement.h:
39460 * ksvg2/svg/SVGStopElement.cpp:
39461 * ksvg2/svg/SVGStopElement.h:
39462 * ksvg2/svg/SVGStringList.cpp:
39463 * ksvg2/svg/SVGStringList.h:
39464 * ksvg2/svg/SVGStylable.cpp:
39465 * ksvg2/svg/SVGStylable.h:
39466 * ksvg2/svg/SVGStyleElement.cpp:
39467 * ksvg2/svg/SVGStyleElement.h:
39468 * ksvg2/svg/SVGStyledElement.cpp:
39469 * ksvg2/svg/SVGStyledElement.h:
39470 * ksvg2/svg/SVGStyledLocatableElement.cpp:
39471 * ksvg2/svg/SVGStyledLocatableElement.h:
39472 * ksvg2/svg/SVGStyledTransformableElement.cpp:
39473 * ksvg2/svg/SVGStyledTransformableElement.h:
39474 * ksvg2/svg/SVGSwitchElement.cpp:
39475 * ksvg2/svg/SVGSwitchElement.h:
39476 * ksvg2/svg/SVGSymbolElement.cpp:
39477 * ksvg2/svg/SVGSymbolElement.h:
39478 * ksvg2/svg/SVGTRefElement.cpp:
39479 * ksvg2/svg/SVGTRefElement.h:
39480 * ksvg2/svg/SVGTSpanElement.cpp:
39481 * ksvg2/svg/SVGTSpanElement.h:
39482 * ksvg2/svg/SVGTests.cpp:
39483 * ksvg2/svg/SVGTests.h:
39484 * ksvg2/svg/SVGTextContentElement.cpp:
39485 * ksvg2/svg/SVGTextContentElement.h:
39486 * ksvg2/svg/SVGTextElement.cpp:
39487 * ksvg2/svg/SVGTextElement.h:
39488 * ksvg2/svg/SVGTextPositioningElement.cpp:
39489 * ksvg2/svg/SVGTextPositioningElement.h:
39490 * ksvg2/svg/SVGTitleElement.cpp:
39491 * ksvg2/svg/SVGTitleElement.h:
39492 * ksvg2/svg/SVGTransform.cpp:
39493 * ksvg2/svg/SVGTransform.h:
39494 * ksvg2/svg/SVGTransformList.cpp:
39495 * ksvg2/svg/SVGTransformList.h:
39496 * ksvg2/svg/SVGTransformable.cpp:
39497 * ksvg2/svg/SVGTransformable.h:
39498 * ksvg2/svg/SVGURIReference.cpp:
39499 * ksvg2/svg/SVGURIReference.h:
39500 * ksvg2/svg/SVGUseElement.cpp:
39501 * ksvg2/svg/SVGUseElement.h:
39502 * ksvg2/svg/SVGViewElement.cpp:
39503 * ksvg2/svg/SVGViewElement.h:
39504 * ksvg2/svg/SVGZoomAndPan.cpp:
39505 * ksvg2/svg/SVGZoomAndPan.h:
39506 * ksvg2/svg/svgpathparser.cpp:
39507 * ksvg2/svg/svgpathparser.h:
39508 * page/DOMWindow.idl:
39510 (WebCore::Frame::Frame):
39511 (WebCore::Frame::begin):
39512 (WebCore::Frame::pauseTimeouts):
39513 (WebCore::Frame::resumeTimeouts):
39514 * platform/GraphicsContext.h:
39515 * platform/cg/GraphicsContextCG.cpp:
39516 * rendering/RenderLayer.cpp:
39517 (WebCore::RenderLayer::isTransparent):
39518 * rendering/RenderObject.cpp:
39519 (WebCore::RenderObject::containingBlock):
39520 * rendering/RenderObject.h:
39521 * rendering/RenderStyle.cpp:
39522 (WebCore::RenderStyle::RenderStyle):
39523 (WebCore::RenderStyle::inheritFrom):
39524 (WebCore::RenderStyle::operator==):
39525 (WebCore::RenderStyle::inheritedNotEqual):
39526 (WebCore::RenderStyle::diff):
39527 * rendering/RenderStyle.h:
39528 * rendering/RenderTreeAsText.cpp:
39530 (WebCore::externalRepresentation):
39531 * xpath/XPathEvaluator.cpp:
39532 * xpath/XPathEvaluator.h:
39533 * xpath/XPathExpression.cpp:
39534 * xpath/XPathExpression.h:
39535 * xpath/XPathNSResolver.cpp:
39536 * xpath/XPathNSResolver.h:
39537 * xpath/XPathNamespace.cpp:
39538 * xpath/XPathNamespace.h:
39539 * xpath/XPathResult.cpp:
39540 * xpath/XPathResult.h:
39541 * xpath/impl/XPathExpressionNode.cpp:
39542 * xpath/impl/XPathExpressionNode.h:
39543 * xpath/impl/XPathFunctions.cpp:
39544 * xpath/impl/XPathFunctions.h:
39545 * xpath/impl/XPathGrammar.y:
39546 * xpath/impl/XPathParser.cpp:
39547 * xpath/impl/XPathParser.h:
39548 * xpath/impl/XPathPath.cpp:
39549 * xpath/impl/XPathPath.h:
39550 * xpath/impl/XPathPredicate.cpp:
39551 * xpath/impl/XPathPredicate.h:
39552 * xpath/impl/XPathStep.cpp:
39553 * xpath/impl/XPathStep.h:
39554 * xpath/impl/XPathUtil.cpp:
39555 * xpath/impl/XPathUtil.h:
39556 * xpath/impl/XPathValue.cpp:
39557 * xpath/impl/XPathValue.h:
39558 * xpath/impl/XPathVariableReference.cpp:
39559 * xpath/impl/XPathVariableReference.h:
39561 Change all #if SVG_SUPPORT to #ifdef SVG_SUPPORT and
39562 #if XPATH_SUPPORT to #ifdef XPATH_SUPPORT
39563 (except for one #if !SVG_SUPPORT to a #ifndef SVG_SUPPORT
39564 in RenderTreeAsText.cpp)
39566 2006-08-08 Rob Buis <buis@kde.org>
39570 http://bugs.webkit.org/show_bug.cgi?id=10230
39571 SVGDOMImplementation should die (and be rolled into DOMImplementation)
39573 Delete SVGDOMImplementation and references to it. The
39574 svg specific functionality is now in DOMImplementation.
39576 * WebCore.xcodeproj/project.pbxproj:
39577 * dom/DOMImplementation.cpp:
39578 (WebCore::svgFeatureSet):
39579 (WebCore::DOMImplementation::hasFeature):
39580 (WebCore::DOMImplementation::createDocument):
39581 (WebCore::DOMImplementation::createSVGDocument):
39582 * dom/DOMImplementation.h:
39583 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Removed.
39584 * ksvg2/misc/KSVGTimeScheduler.cpp:
39585 * ksvg2/svg/SVGColor.cpp:
39586 * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
39587 * ksvg2/svg/SVGDocument.cpp:
39588 (WebCore::SVGDocument::SVGDocument):
39589 * ksvg2/svg/SVGDocument.h:
39590 * ksvg2/svg/SVGElement.cpp:
39591 (WebCore::SVGElement::isSupported):
39592 * ksvg2/svg/SVGFEBlendElement.cpp:
39593 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
39594 * ksvg2/svg/SVGFEComponentTransferElement.cpp:
39595 * ksvg2/svg/SVGFECompositeElement.cpp:
39596 * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
39597 * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
39598 * ksvg2/svg/SVGFEFloodElement.cpp:
39599 * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
39600 * ksvg2/svg/SVGFELightElement.cpp:
39601 * ksvg2/svg/SVGFEMergeElement.cpp:
39602 * ksvg2/svg/SVGFEOffsetElement.cpp:
39603 * ksvg2/svg/SVGFESpecularLightingElement.cpp:
39604 * ksvg2/svg/SVGFETileElement.cpp:
39605 * ksvg2/svg/SVGFETurbulenceElement.cpp:
39606 * ksvg2/svg/SVGGradientElement.cpp:
39607 * ksvg2/svg/SVGPatternElement.cpp:
39608 * ksvg2/svg/SVGPolyElement.cpp:
39609 * ksvg2/svg/SVGStopElement.cpp:
39610 * ksvg2/svg/SVGStyledElement.cpp:
39611 * ksvg2/svg/SVGStyledTransformableElement.cpp:
39612 * ksvg2/svg/SVGTests.cpp:
39613 (WebCore::SVGTests::isValid):
39614 * ksvg2/svg/SVGTransformable.cpp:
39616 (WebCore::Frame::begin):
39618 2006-08-07 Brady Eidson <beidson@apple.com>
39620 Reviewed by Anders and John
39622 Icons can now refresh when new data is sent from WebKit, both on disk and in memory
39624 * bridge/mac/WebCoreIconDatabaseBridge.h:
39625 * bridge/mac/WebCoreIconDatabaseBridge.mm:
39626 (WebCore::IconDatabase::loadIconFromURL): Allows WebCore/Kit to kick off a load
39627 outside of any greater context
39628 (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
39629 (-[WebCoreIconDatabaseBridge isIconExpiredForPageURL:]): Allows WebKit
39630 to get whether or not an icon has expired
39632 * loader/icon/IconDatabase.cpp:
39633 (WebCore::IconDatabase::recreateDatabase): Changed database schema slightly
39634 (WebCore::IconDatabase::createPrivateTables): Changed database schema slightly
39635 (WebCore::IconDatabase::iconForPageURL):
39636 (WebCore::IconDatabase::isIconExpiredForIconURL): Get if an icon has expired
39637 (WebCore::IconDatabase::isIconExpiredForPageURL): Get if an icon has expired
39638 (WebCore::IconDatabase::setIconDataForIconURL): Force a refresh of the in memory
39639 image when new icon data is loaded
39640 (WebCore::IconDatabase::setIconURLForPageURL): added a check for null iconID
39642 * loader/icon/IconDatabase.h: added/changed some methods
39643 * loader/icon/SiteIcon.cpp:
39644 (SiteIcon::getImage): simplified/removed debugging code
39645 (SiteIcon::manuallySetImageData): allow the image data to be changed when new icon
39648 2006-08-05 Darin Adler <darin@apple.com>
39650 Reviewed by Eric Seidel.
39652 - fix a storage leak
39654 * rendering/RenderView.cpp: (WebCore::RenderView::setSelection):
39655 Delete the values if we are going to exit without using the maps.
39656 Otherwise all the values leak.
39658 2006-08-05 Darin Adler <darin@apple.com>
39662 - fix http://bugs.webkit.org/show_bug.cgi?id=10213
39663 REGRESSION: Crash in WebCore::RenderLayer::isTransparent involving <iframe> and <select>
39665 Test: fast/frames/iframe-option-crash.xhtml
39667 * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations):
39668 Check for a nil renderer.
39670 2006-08-04 David Hyatt <hyatt@apple.com>
39672 Fix for Radar bug #4644045, regression where dragging selection no longer
39673 works for floats contained inside layers. I added an optimization to
39674 refine dirty rect checking for layers, and it incorrectly excluded floats
39675 from the paint bounds since PaintPhaseSelection was not considered when
39676 analyzing the floatRect().
39680 * rendering/RenderBlock.cpp:
39681 (WebCore::RenderBlock::paint):
39683 2006-08-04 David Hyatt <hyatt@apple.com>
39685 Fix remove() so that it is equivalent to calling removeChild on the
39686 parent. This involved moving three operations that remove did.
39688 (1) Move the accessibility object cache removal into the destroy methods,
39689 since this really should just happen when a render object is going away.
39691 (2) removeFromObjectLists shifted into removeChild, which means it will
39692 now be called more often (this is a correct change). Note that there is
39693 also now a new guard on removeFromObjectLists so that it won't do any
39694 work unless the document is not being destroyed.
39696 (3) The big one. deleteLineBoxWrapper was not getting called to clean up
39697 the line box tree. This moved right into RenderContainer's removeChildNode so
39698 that it is now done even in the lowest level RenderContainer removal primitive.
39702 * rendering/RenderContainer.cpp:
39703 (WebCore::RenderContainer::removeChildNode):
39704 (WebCore::RenderContainer::removeChild):
39705 * rendering/RenderObject.cpp:
39706 (WebCore::RenderObject::removeFromObjectLists):
39707 (WebCore::RenderObject::destroy):
39708 * rendering/RenderObject.h:
39709 (WebCore::RenderObject::remove):
39710 * rendering/RenderWidget.cpp:
39711 (WebCore::RenderWidget::destroy):
39713 2006-08-04 David Hyatt <hyatt@apple.com>
39715 Back out the fix for list marker crashes. The actual bug here is that
39716 there is a confusing mismatch between remove() and removeChild() in the
39717 render tree. remove() does a little bit of extra work that removeChild
39718 should be doing instead (so that remove() can just be a shorthand for
39721 This conservative fix does not solve the remove/removeChild mismatch
39722 but instead just changes the list marker updating code to use remove
39727 Test Case: fast/lists/dynamic-marker-crash.html
39729 * rendering/ListMarkerBox.cpp:
39730 * rendering/ListMarkerBox.h:
39731 * rendering/RenderListItem.cpp:
39732 (WebCore::RenderListItem::updateMarkerLocation):
39734 2006-08-04 Sam Weinig <sam.weinig@gmail.com>
39738 - patch for http://bugs.webkit.org/show_bug.cgi?id=10192
39739 Make WebCore (and friends) compile with -Wshorten-64-to-32
39741 * Adds -Wshorten-64-to-32 flag to Xcode project.
39742 * Adds 'f' to float literals where expecting a float.
39743 * Use cosf() instead of cos() when assigning to a float.
39745 * WebCore.xcodeproj/project.pbxproj:
39746 * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m:
39747 (+[WKDiffuseLightingFilter initialize]):
39748 * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m:
39749 (-[WKDiscreteTransferFilter outputImage]):
39750 * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m:
39751 (+[WKDisplacementMapFilter initialize]):
39752 * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m:
39753 (+[WKSpecularLightingFilter initialize]):
39754 * kcanvas/device/quartz/filters/WKSpotLightFilter.m:
39755 (-[WKSpotLightFilter outputImage]):
39756 * kcanvas/device/quartz/filters/WKTableTransferFilter.m:
39757 (-[WKTableTransferFilter outputImage]):
39759 2006-08-03 David Hyatt <hyatt@apple.com>
39761 Fix for bug 10229, don't bother trying to clear when no floats are
39762 present. I suspect there's still a bug in the math that follows, but
39763 this fix is safer in that it just does the obvious thing (and doesn't
39764 compute any clearance if no floats are even around).
39769 * rendering/RenderBlock.cpp:
39770 (WebCore::RenderBlock::getClearDelta):
39772 2006-08-03 Justin Garcia <justin.garcia@apple.com>
39774 Reviewed by harrison
39776 <rdar://problem/4641033/4515463/4052426/4046570/4053718/4053724/4060115/4062858>
39777 Copy/Paste fidelity was bad.
39779 * editing/ApplyStyleCommand.cpp:
39780 (WebCore::ApplyStyleCommand::applyInlineStyle):
39781 * editing/markup.cpp:
39782 (WebCore::startMarkup): We were not adding non-inheritable styles
39783 to the markup for an element unless they were in the elements inline
39786 2006-08-03 Sam Weinig <sam.weinig@gmail.com>
39790 - patch for http://bugs.webkit.org/show_bug.cgi?id=10176
39791 Make WebCore compile with -Wundef
39793 * Adds -Wundef flag to Xcode project
39794 * Converts #ifs to #ifdef and #ifndefs where needed.
39795 * Replaces #ifdef WIN32 with #if PLATFORM(WIN_OS) or PLATFORM(WIN)
39796 (and in one instance in config.h with #if !COMPILER(MSVC))
39797 * Added #define YYMAXDEPTH 10000 in XPathGrammar.y and CSSGrammar.y
39798 to fix a warning from within Bison.
39799 * Cleaned up style a little in surrounding code.
39801 * WebCore.xcodeproj/project.pbxproj:
39802 * bridge/mac/WebCoreAXObject.mm:
39803 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
39805 * css/CSSGrammar.y:
39806 * css/MediaFeatureNames.cpp:
39807 * css/MediaFeatureNames.h:
39808 * css/cssparser.cpp:
39809 * dom/ContainerNode.cpp:
39810 (WebCore::ContainerNode::setActive):
39812 (WebCore::Element::attach):
39814 * dom/EventNames.cpp:
39815 * dom/EventNames.h:
39816 * dom/NamedAttrMap.h:
39817 * dom/Position.cpp:
39818 * dom/QualifiedName.cpp:
39819 * dom/QualifiedName.h:
39821 * dom/XMLTokenizer.cpp:
39822 (WebCore::XMLTokenizer::error):
39823 * html/HTMLTokenizer.cpp:
39824 (WebCore::HTMLTokenizer::scriptHandler):
39825 (WebCore::HTMLTokenizer::scriptExecution):
39826 (WebCore::HTMLTokenizer::parseTag):
39827 (WebCore::HTMLTokenizer::continueProcessing):
39828 (WebCore::HTMLTokenizer::write):
39829 (WebCore::HTMLTokenizer::timerFired):
39830 (WebCore::HTMLTokenizer::notifyFinished):
39831 * kcanvas/device/quartz/KCanvasFilterQuartz.h:
39832 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
39833 * ksvg2/css/SVGRenderStyle.h:
39834 * ksvg2/css/SVGRenderStyleDefs.h:
39835 * ksvg2/scripts/make_names.pl:
39836 * loader/CachedResource.h:
39837 * loader/LoaderFunctions.h:
39840 * page/FrameTree.cpp:
39841 * page/FrameView.cpp:
39842 (WebCore::FrameView::clear):
39843 (WebCore::FrameView::layout):
39844 (WebCore::FrameView::layoutTimerFired):
39845 (WebCore::FrameView::scheduleRelayout):
39846 (WebCore::FrameView::unscheduleRelayout):
39847 * platform/AtomicString.cpp:
39848 * platform/AtomicString.h:
39849 * platform/Cursor.h:
39850 * platform/DeprecatedArray.h:
39851 * platform/DeprecatedString.cpp:
39852 (WebCore::allocateHandle):
39853 (WebCore::initializeHandleNodeBlock):
39854 (WebCore::freeHandle):
39855 * platform/FloatPoint.h:
39856 * platform/FloatRect.h:
39857 * platform/FloatSize.h:
39858 * platform/GraphicsContext.h:
39859 * platform/Image.h:
39860 * platform/IntPoint.h:
39861 * platform/IntRect.h:
39862 (WebCore::IntRect::inflateX):
39863 (WebCore::IntRect::inflateY):
39864 * platform/IntSize.h:
39865 * platform/PlatformKeyboardEvent.h:
39866 * platform/PlatformMouseEvent.h:
39867 * platform/PlatformString.h:
39868 * platform/ResourceLoader.h:
39869 * platform/ResourceLoaderInternal.h:
39870 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
39871 * platform/ScrollView.h:
39872 * platform/StaticConstructors.h:
39873 * platform/StreamingTextDecoderICU.cpp:
39874 (WebCore::StreamingTextDecoderICU::convert):
39875 * platform/StringImpl.h:
39876 * platform/Widget.h:
39877 * platform/mac/BlockExceptions.mm:
39878 * platform/mac/ColorMac.mm:
39879 (+[WebCoreControlTintObserver WebCore]):
39880 * platform/mac/FloatPointMac.mm:
39881 * platform/mac/FloatRectMac.mm:
39882 * platform/mac/FloatSizeMac.mm:
39883 * platform/mac/FontMac.mm:
39884 * platform/mac/GraphicsContextMac.mm:
39885 (WebCore::GraphicsContext::drawFocusRing):
39886 * platform/mac/IntPointMac.mm:
39887 * platform/mac/IntRectMac.mm:
39888 * platform/mac/IntSizeMac.mm:
39889 * platform/mac/WebCoreSystemInterface.h:
39890 * rendering/RenderBlock.h:
39891 * rendering/RenderTableCell.h:
39892 * rendering/bidi.cpp:
39893 (WebCore::appendRun):
39894 (WebCore::RenderBlock::layoutInlineChildren):
39895 * xml/XSLTProcessor.cpp:
39896 (WebCore::parseErrorFunc):
39897 * xpath/impl/XPathGrammar.y:
39899 2006-08-03 Adam Roben <aroben@apple.com>
39901 Reviewed by Maciej and Beth.
39903 Fix use-after-dispose heap corruption bug.
39905 * rendering/ListMarkerBox.cpp:
39906 (WebCore::ListMarkerBox::destroy): Only call removeChild if we're not
39907 destroying the document
39909 2006-08-03 Adam Roben <aroben@apple.com>
39911 Reviewed by Anders.
39913 - Fixed Windows build.
39915 * platform/Color.cpp:
39916 (WebCore::makeRGBAFromHSLA): Whitespace change
39917 * platform/win/TemporaryLinkStubs.cpp: Add new method stubs
39918 (PlatformScrollBar::PlatformScrollBar):
39919 (PlatformScrollBar::~PlatformScrollBar):
39920 (PlatformScrollBar::width):
39921 (PlatformScrollBar::height):
39922 (PlatformScrollBar::setEnabled):
39923 (PlatformScrollBar::paint):
39924 (PlatformScrollBar::setScrollBarValue):
39925 (PlatformScrollBar::setKnobProportion):
39926 (PlatformScrollBar::setRect):
39927 (ScrollBar::ScrollBar):
39928 (ScrollBar::scroll):
39929 (ScrollBar::setValue):
39931 2006-08-02 Justin Garcia <justin.garcia@apple.com>
39935 <http://bugs.webkit.org/show_bug.cgi?id=10225>
39936 GMail Editor: Change Hilite Color doesn't work
39938 * editing/JSEditor.cpp: Added support for execCommand("HiliteColor", ...).
39939 It's what GMail uses to implement text hiliting. It's just a synonym for BackColor.
39940 * editing/SelectionController.cpp:
39941 (WebCore::SelectionController::nodeWillBeRemoved): Moved a comment
39942 a more appropriate place.
39944 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
39946 Reviewed by Adele and Darin.
39948 - fix http://bugs.webkit.org/show_bug.cgi?id=10177
39949 REGRESSION: Successfully dragging text into a disabled field
39951 Test: fast/forms/textfield-drag-into-disabled.html
39953 * rendering/RenderTextControl.cpp:
39954 (WebCore::RenderTextControl::createDivStyle): Changed to set -webkit-user-modify
39955 to read-only on the inner div if the control is disabled.
39956 (WebCore::RenderTextControl::updateFromElement): Ditto.
39958 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
39962 - fix http://bugs.webkit.org/show_bug.cgi?id=10198
39963 REGRESSION: WebKit r15750 crashes while loading anthem.com
39965 Test: fast/overflow/generated-content-crash.html
39967 * rendering/RenderLayer.cpp:
39968 (WebCore::RenderLayer::updateScrollInfoAfterLayout): Added a null check for
39969 the renderer's element. Generated content does not have an element and
39970 therefore does not need to maintain overflow status.
39972 2006-08-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
39974 Reviewed by Anders.
39976 - fix http://bugs.webkit.org/show_bug.cgi?id=10202
39977 REGRESSION: Repro crash when loading an empty image document
39979 Test: fast/tokenizer/image-empty-crash.html
39981 * loader/ImageDocument.cpp:
39982 (WebCore::ImageTokenizer::stopParsing): Added null check for m_imageElement.
39983 (WebCore::ImageTokenizer::finish): Ditto.
39985 2006-08-03 Darin Adler <darin@apple.com>
39987 Reviewed by Anders.
39989 - clean up "flip"-related code a tiny bit
39991 * platform/Screen.h: Removed redundant parameter names.
39992 * platform/mac/ScreenMac.mm:
39993 (WebCore::flipScreenRect): Changed to call flipScreenPoint so we only have one
39994 copy of the flipping code.
39995 (WebCore::flipScreenPoint): Fixed indentation.
39997 * bridge/mac/WebCoreFrameBridge.mm: (globalPoint): Removed type casts and
40000 * platform/mac/PlatformMouseEventMac.mm: (WebCore::globalPositionForEvent):
40001 * platform/mac/WheelEventMac.mm: (WebCore::globalPositionForEvent):
40002 Removed unneeded local variable.
40004 2006-08-02 David Hyatt <hyatt@apple.com>
40006 Abstract RenderLayer scrollbar creation and destruction so that there
40007 is a clean spot in which to drop in engine scrollbar stuff.
40011 * platform/ScrollBar.h:
40012 (WebCore::ScrollBar::hasPlatformScrollBars):
40013 * rendering/RenderLayer.cpp:
40014 (WebCore::RenderLayer::createScrollbar):
40015 (WebCore::RenderLayer::destroyScrollbar):
40016 (WebCore::RenderLayer::setHasHorizontalScrollbar):
40017 (WebCore::RenderLayer::setHasVerticalScrollbar):
40018 * rendering/RenderLayer.h:
40020 2006-08-02 Mitz Pettel <opendarwin.org@mitzpettel.com>
40024 - fix http://bugs.webkit.org/show_bug.cgi?id=3438
40025 incorrect display of transparent 1x1 PNGs
40027 Test: fast/replaced/image-solid-color-with-alpha.html
40029 * platform/mac/ImageMac.mm:
40030 (WebCore::Image::checkForSolidColor): Changed to divide each color component
40031 by the alpha component. You need to do that since the bitmap context has
40032 premultiplied alpha but m_solidColor should be non-premultiplied.
40034 2006-08-02 Adam Roben <aroben@apple.com>
40038 - Remove redundant #include
40040 * loader/loader.cpp:
40042 2006-07-31 Sam Weinig <sam.weinig@gmail.com>
40046 - patch for http://bugs.webkit.org/show_bug.cgi?id=9955
40047 Colors scaled from [0, 1] range to [0, 255] incorrectly
40049 Fixes scaling issue and fixes Color to follow style guidelines.
40051 * css/cssstyleselector.cpp:
40052 (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
40053 * platform/Color.cpp:
40054 (WebCore::calcHue):
40055 (WebCore::makeRGBAFromHSLA):
40056 (WebCore::Color::Color):
40057 (WebCore::Color::name):
40058 (WebCore::Color::setNamedColor):
40059 (WebCore::Color::light):
40060 (WebCore::Color::dark):
40062 * platform/Color.h:
40063 (WebCore::Color::Color):
40064 (WebCore::Color::isValid):
40065 (WebCore::Color::red):
40066 (WebCore::Color::green):
40067 (WebCore::Color::blue):
40068 (WebCore::Color::alpha):
40069 (WebCore::Color::rgb):
40070 (WebCore::Color::setRGB):
40071 (WebCore::operator==):
40072 (WebCore::operator!=):
40073 * rendering/RenderObject.cpp:
40074 (WebCore::RenderObject::drawBorder):
40076 2006-07-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
40078 - fix http://bugs.webkit.org/show_bug.cgi?id=10158
40079 REGRESSION: Selection highlight is dark and opaque when solid-color images are used
40083 Pixel test: fast/backgrounds/solid-color-context-restore.html
40085 * platform/mac/ImageMac.mm:
40086 (WebCore::Image::draw): Added calls to preserve the graphics context
40087 around the painting of a solid color image.
40088 (WebCore::Image::drawTiled): Ditto.
40090 2006-07-31 Maciej Stachowiak <mjs@apple.com>
40092 Rubber-stamped by Tim Hatcher.
40094 - renamed TransferJob to ResourceLoader
40096 * Projects/gdk/webcore-gdk.bkl:
40097 * WebCore.vcproj/WebCore/WebCore.vcproj:
40098 * WebCore.xcodeproj/project.pbxproj:
40099 * WebCoreSources.bkl:
40100 * bridge/mac/FrameMac.mm:
40101 * bridge/mac/WebCoreResourceLoaderImp.h:
40102 * bridge/mac/WebCoreResourceLoaderImp.mm:
40103 (-[WebCoreResourceLoaderImp redirectedToURL:]):
40104 (-[WebCoreResourceLoaderImp addData:]):
40105 (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
40106 * bridge/win/FrameWin.cpp:
40107 * dom/XMLTokenizer.cpp:
40108 (WebCore::openFunc):
40109 * loader/Cache.cpp:
40110 * loader/LoaderFunctions.h:
40111 * loader/loader.cpp:
40112 (WebCore::Loader::servePendingRequests):
40113 (WebCore::Loader::receivedAllData):
40114 (WebCore::Loader::receivedResponse):
40115 (WebCore::Loader::receivedData):
40116 (WebCore::Loader::cancelRequests):
40117 (WebCore::Loader::jobForRequest):
40119 * loader/mac/LoaderFunctionsMac.mm:
40120 (WebCore::ServeSynchronousRequest):
40121 * platform/ResourceLoader.cpp: Added.
40122 (WebCore::ResourceLoader::ResourceLoader):
40123 (WebCore::ResourceLoader::isErrorPage):
40124 (WebCore::ResourceLoader::error):
40125 (WebCore::ResourceLoader::setError):
40126 (WebCore::ResourceLoader::queryMetaData):
40127 (WebCore::ResourceLoader::addMetaData):
40128 (WebCore::ResourceLoader::kill):
40129 (WebCore::ResourceLoader::url):
40130 (WebCore::ResourceLoader::postData):
40131 (WebCore::ResourceLoader::method):
40132 (WebCore::ResourceLoader::client):
40133 * platform/ResourceLoader.h: Added.
40134 (WebCore::ResourceLoader::getInternal):
40135 * platform/ResourceLoaderClient.h: Added.
40136 (WebCore::ResourceLoaderClient::~ResourceLoaderClient):
40137 (WebCore::ResourceLoaderClient::receivedRedirect):
40138 (WebCore::ResourceLoaderClient::receivedResponse):
40139 (WebCore::ResourceLoaderClient::receivedData):
40140 (WebCore::ResourceLoaderClient::receivedAllData):
40141 * platform/ResourceLoaderInternal.h: Added.
40142 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
40143 * platform/TransferJob.cpp: Removed.
40144 * platform/TransferJob.h: Removed.
40145 * platform/TransferJobClient.h: Removed.
40146 * platform/TransferJobInternal.h: Removed.
40147 * platform/gdk/FrameGdk.cpp:
40148 (WebCore::FrameGdk::openURL):
40149 (WebCore::FrameGdk::urlSelected):
40150 (WebCore::FrameGdk::receivedData):
40151 (WebCore::FrameGdk::receivedAllData):
40152 * platform/gdk/FrameGdk.h:
40153 * platform/gdk/ResourceLoaderCurl.cpp: Added.
40154 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
40155 (WebCore::ResourceLoader::~ResourceLoader):
40156 (WebCore::ResourceLoader::start):
40157 (WebCore::ResourceLoader::cancel):
40158 * platform/gdk/ResourceLoaderManager.cpp: Added.
40159 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
40160 (WebCore::ResourceLoaderManager::get):
40161 (WebCore::ResourceLoaderManager::useSimpleTransfer):
40162 (WebCore::writeCallback):
40163 (WebCore::ResourceLoaderManager::downloadTimerCallback):
40164 (WebCore::ResourceLoaderManager::remove):
40165 (WebCore::ResourceLoaderManager::add):
40166 (WebCore::ResourceLoaderManager::cancel):
40167 * platform/gdk/ResourceLoaderManager.h: Added.
40168 * platform/gdk/TemporaryLinkStubs.cpp:
40169 (WebCore::ServeSynchronousRequest):
40170 (WebCore::ResourceLoader::assembleResponseHeaders):
40171 (WebCore::ResourceLoader::retrieveCharset):
40172 * platform/gdk/TransferJobCurl.cpp: Removed.
40173 * platform/gdk/TransferJobManager.cpp: Removed.
40174 * platform/gdk/TransferJobManager.h: Removed.
40175 * platform/mac/ResourceLoaderMac.mm: Added.
40176 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
40177 (WebCore::ResourceLoader::~ResourceLoader):
40178 (WebCore::ResourceLoader::start):
40179 (WebCore::ResourceLoader::assembleResponseHeaders):
40180 (WebCore::ResourceLoader::retrieveCharset):
40181 (WebCore::ResourceLoader::setLoader):
40182 (WebCore::ResourceLoader::receivedResponse):
40183 (WebCore::ResourceLoader::cancel):
40184 * platform/mac/TransferJobMac.mm: Removed.
40185 * platform/win/ResourceLoaderWin.cpp: Added.
40186 (WebCore::addToOutstandingJobs):
40187 (WebCore::lookupResourceLoader):
40188 (WebCore::ResourceLoaderWndProc):
40189 (WebCore::initializeOffScreenResourceLoaderWindow):
40190 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
40191 (WebCore::ResourceLoader::~ResourceLoader):
40192 (WebCore::ResourceLoader::start):
40193 (WebCore::ResourceLoader::fileLoadTimer):
40194 (WebCore::ResourceLoader::cancel):
40195 * platform/win/ResourceLoaderWin.h: Added.
40196 * platform/win/TemporaryLinkStubs.cpp:
40197 (WebCore::ServeSynchronousRequest):
40198 (WebCore::ResourceLoader::assembleResponseHeaders):
40199 (WebCore::ResourceLoader::retrieveCharset):
40200 * platform/win/TransferJobWin.cpp: Removed.
40201 * platform/win/TransferJobWin.h: Removed.
40202 * xml/XSLTProcessor.cpp:
40203 (WebCore::docLoaderFunc):
40204 * xml/xmlhttprequest.cpp:
40205 (WebCore::XMLHttpRequest::send):
40206 (WebCore::XMLHttpRequest::receivedAllData):
40207 (WebCore::XMLHttpRequest::receivedRedirect):
40208 (WebCore::XMLHttpRequest::receivedData):
40209 * xml/xmlhttprequest.h:
40211 2006-07-31 Darin Adler <darin@apple.com>
40215 - removed obsolete cell margin hack
40217 * rendering/RenderBox.cpp: (WebCore::RenderBox::calcVerticalMargins):
40218 Set top and bottom margins to 0 for table cells instead of -16384.
40219 No effect on layout (including layout tests).
40221 * css/CSSComputedStyleDeclaration.cpp:
40222 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
40223 Added a few comments about differences between this class and the
40224 what the CSS specification says about computed style.
40226 2006-07-31 Mark Rowe <opendarwin.org@bdash.net.nz>
40228 Reviewed by Maciej.
40230 http://bugs.webkit.org/show_bug.cgi?id=9738
40231 Bug 9738: Unqualified :hover selector ignored in strict parsing mode
40233 * css/cssstyleselector.cpp:
40234 (WebCore::CSSStyleSelector::checkSelector): Restrict the :hover and :active
40235 exclusion based on onlyHoverActive to quirks mode.
40237 2006-07-31 David Hyatt <hyatt@apple.com>
40239 Fix for bug 10179, digg.com scrolls slowly. Improve fixed positioning
40240 and fixed backgrounds so that a count of them is kept on the FrameView.
40241 This allows us to switch slow scrolling on and off as these objects come
40244 * css/cssstyleselector.cpp:
40245 (WebCore::CSSStyleSelector::adjustRenderStyle):
40246 (WebCore::CSSStyleSelector::applyProperty):
40247 * page/FrameView.cpp:
40248 (WebCore::FrameViewPrivate::reset):
40249 (WebCore::FrameView::layout):
40250 (WebCore::FrameView::useSlowRepaints):
40251 (WebCore::FrameView::setUseSlowRepaints):
40252 (WebCore::FrameView::addSlowRepaintObject):
40253 (WebCore::FrameView::removeSlowRepaintObject):
40254 * page/FrameView.h:
40255 * rendering/RenderBox.cpp:
40256 (WebCore::RenderBox::paintBackgroundExtended):
40257 * rendering/RenderObject.cpp:
40258 (WebCore::RenderObject::setStyle):
40259 * rendering/RenderView.cpp:
40260 (WebCore::RenderView::paintBoxDecorations):
40262 2006-07-31 David Hyatt <hyatt@apple.com>
40264 Begin disentangling of scrollbar logic in preparation for engine-implemented
40265 scrollbars. Split ScrollBar into two classes, an abstract base (still named
40266 ScrollBar) and a new PlatformScrollBar subclass. This subclass is used only
40267 by platforms that want to continue to use a platform scrollbar (rather than
40272 * WebCore.xcodeproj/project.pbxproj:
40273 * html/HTMLCanvasElement.h:
40275 * platform/PlatformScrollBar.h: Added.
40276 (WebCore::PlatformScrollBar::isWidget):
40277 * platform/ScrollBar.h:
40278 (WebCore::ScrollBarClient::~ScrollBarClient):
40279 (WebCore::ScrollBar::~ScrollBar):
40280 (WebCore::ScrollBar::orientation):
40281 (WebCore::ScrollBar::value):
40282 (WebCore::ScrollBar::client):
40283 * platform/mac/PlatformScrollBarMac.mm: Added.
40284 (-[WebCoreScrollBar initWithPlatformScrollBar:]):
40285 (-[WebCoreScrollBar detachPlatformScrollBar]):
40286 (-[WebCoreScrollBar scroll:]):
40287 (-[WebCoreScrollBar widget]):
40288 (-[WebCoreScrollBar mouseDown:]):
40289 (WebCore::PlatformScrollBar::PlatformScrollBar):
40290 (WebCore::PlatformScrollBar::~PlatformScrollBar):
40291 (WebCore::PlatformScrollBar::setScrollBarValue):
40292 (WebCore::PlatformScrollBar::setKnobProportion):
40293 (WebCore::PlatformScrollBar::scrollbarHit):
40294 (WebCore::PlatformScrollBar::width):
40295 (WebCore::PlatformScrollBar::height):
40296 (WebCore::PlatformScrollBar::setRect):
40297 (WebCore::PlatformScrollBar::setEnabled):
40298 (WebCore::PlatformScrollBar::paint):
40299 * platform/mac/ScrollBarMac.mm: Removed.
40300 * platform/mac/WebCoreTextArea.mm:
40301 * rendering/RenderBlock.cpp:
40302 (WebCore::RenderBlock::isPointInScrollbar):
40303 * rendering/RenderFormElement.cpp:
40304 * rendering/RenderLayer.cpp:
40305 (WebCore::RenderLayer::horizontalScrollbarWidget):
40306 (WebCore::RenderLayer::verticalScrollbarWidget):
40307 (WebCore::RenderLayer::valueChanged):
40308 (WebCore::RenderLayer::setHasHorizontalScrollbar):
40309 (WebCore::RenderLayer::setHasVerticalScrollbar):
40310 (WebCore::RenderLayer::positionScrollbars):
40311 * rendering/RenderLayer.h:
40312 * rendering/RenderWidget.h:
40314 2006-07-31 Adele Peterson <adele@apple.com>
40316 Reviewed by John and Anders.
40318 - Fix for <rdar://problem/4380576> onChange does not get called when field changed by return key
40320 Test: fast/forms/onchange-enter-submit.html
40322 Blur (which will fire onChange appropriately) before submitting a form when pressing Enter.
40323 This matches the sequence of events fired in WinIE.
40325 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
40326 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::defaultEventHandler):
40328 2006-07-31 Geoffrey Garen <ggaren@apple.com>
40332 Moved string debug function outside of the WebCore namespace so that it's
40333 easier to call in the debugger. I will never doubt Darin again (x100).
40335 * platform/String.cpp:
40338 2006-07-31 David Hyatt <hyatt@apple.com>
40340 Partial fix for 5453. Improve overflow so that when it changes
40341 dynamically from scroll/auto to hidden that we properly hide the
40342 scrollbars. Also refine the dirty dashboard region updating so that
40343 it only happens if the scrollbars genuinely come and go.
40345 Also eliminate the extra repaint of the entire block. This should not be
40346 necessary, since the scrollbars repaint themselves already and children
40347 will repaint already if they move.
40351 Adding test case from bug into fast/overflow/dynamic-hidden.html
40353 * rendering/RenderLayer.cpp:
40354 (WebCore::RenderLayer::setHasHorizontalScrollbar):
40355 (WebCore::RenderLayer::setHasVerticalScrollbar):
40356 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
40358 2006-07-31 Graham Dennis <graham.dennis@gmail.com>
40362 <http://bugs.webkit.org/show_bug.cgi?id=9507>
40363 Empty style spans created in applyInlineStyle
40365 Improves paste fidelity because some of these empty font/style spans had a non-zero
40366 size and were messing up the layout of pasted content:
40367 <rdar://problem/4515463>
40368 REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page
40370 * editing/ApplyStyleCommand.cpp:
40371 (WebCore::ApplyStyleCommand::applyInlineStyle): Use the adjusted start node instead
40372 of start.node(). Don't do any application if the endpoints are swapped. Adjust
40373 endNode if the start node is a descendant of it, so that the pre-order traversal will
40374 terminate properly.
40376 2006-07-31 Geoffrey Garen <ggaren@apple.com>
40380 * platform/String.cpp:
40381 (WebCore::string): Added a debugging function to create a String from a
40384 2006-07-31 Anders Carlsson <acarlsson@apple.com>
40386 * css/CSSPrimitiveValue.cpp:
40389 2006-07-31 Geoffrey Garen <ggaren@apple.com>
40391 Reinstating my last change. Everything builds now.
40393 2006-07-31 Geoffrey Garen <ggaren@apple.com>
40395 Backing out my last change because it causes a build failure in some
40396 configurations. This seems to be the cleanest way to get svn to cooperate.
40398 2006-07-31 Geoffrey Garen <ggaren@apple.com>
40400 Reviewed by Maciej.
40402 Moved files around to make WebCore's structure clearer
40403 and easier to explain.
40405 DerivedSources/JS* -> bindings/js/DerivedSources/ (so JS* files
40406 show up when you search inside bindings/js/, but are marked, at
40407 the same time, as files that you should not edit manually)
40409 WebCore+SVG/DOMList.h -> ksvg2/svg/ (only files inside ksvg2/svg/
40412 icon -> loader/icon
40414 I tested that everything still builds.
40416 2006-07-30 Darin Adler <darin@apple.com>
40418 Reviewed by Tim Hatcher.
40420 - some improvements for the benefit of the style pane of the inspector
40422 * css/CSSComputedStyleDeclaration.cpp: Removed background-position
40423 and border-spacing from the list of properties that show up in
40424 computed style, because of background-position-x, background-position-y,
40425 -webkit-border-horizontal-spacing and -webkit-border-vertical-spacing.
40426 (WebCore::valueForLength): Added handling for undefinedLength, intrinsic,
40428 (WebCore::primitiveValueFromLength): Removed code that would add a
40429 space to the string for no good reason.
40430 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added a
40431 special case for a line clamp of -1, which should come back as "none"
40432 rather than an actual "-1".
40433 (WebCore::CSSComputedStyleDeclaration::length): Return 0 if the
40434 declaration has no corresponding node or no renderer.
40435 (WebCore::CSSComputedStyleDeclaration::item): Check against length()
40436 so that the two stay consistent rather than using a constant.
40438 * css/CSSPrimitiveValue.cpp:
40439 (WebCore::isCSSTokenizerIdentifier): Added.
40440 (WebCore::isCSSTokenizerURL): Added.
40441 (WebCore::quoteString): Added.
40442 (WebCore::quoteStringIfNeeded): Changed to quote strings in many more
40443 cases -- any cases where they would not parse in the CSS parser otherwise.
40444 The main case this affects is font names with spaces in them.
40445 (WebCore::quoteURLIfNeeded): Added.
40446 (WebCore::CSSPrimitiveValue::cssText): Use quoteURLIfNeeded in the case
40447 where we're making the text form of a URI.
40449 * css/tokenizer.flex: Whitespace tweaks to line things up better.
40451 2006-07-30 Eric Seidel <eric@webkit.org>
40453 Reviewed by gramps!
40455 Remove some unused SVG code.
40457 * ksvg2/ecma/Ecma.cpp: Removed.
40458 * ksvg2/ecma/Ecma.h: Removed.
40459 * ksvg2/ecma/GlobalObject.cpp: remove a couple dead functions.
40460 * ksvg2/ecma/GlobalObject.h: add a comment about this dead code.
40461 * ksvg2/ecma/SVGLookup.h: Removed.
40463 2006-07-29 Darin Adler <darin@apple.com>
40465 - Removed tabs from these source files that still had them.
40466 We don't use them; that way source files look fine in editors
40467 that have tabs set to 8 spaces or to 4 spaces.
40468 - Removed allow-tabs Subversion property from the files too.
40470 * bindings/objc/WebScriptObject.h:
40471 * bindings/objc/WebScriptObject.mm:
40472 * platform/FontData.cpp:
40474 2006-07-29 Sam Weinig <sam.weinig@gmail.com>
40478 - patch for http://bugs.webkit.org/show_bug.cgi?id=10080
40479 Adopt pedantic changes from the Unity project to improve
40480 cross-compiler compatibility
40483 * Removing trailing semicolon from namespace braces.
40484 * Removing trailing comma from last enum declaration.
40485 * Updating to match style guidelines.
40486 * Adding missing newline to the end of the file.
40487 * Turning on gcc warning for missing newline at the end of a source file
40488 (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
40489 * Alphabetical sorting of Xcode source list files.
40490 * Use abs() function from <math.h> instead of ABS() macro.
40491 * Use C-style comments instead of C++ comments in files that might
40492 be included by either C or C++ files.
40493 * Use -numeric_limits<double>::infinity() instead of -HUGE_VAL.
40495 * WebCore+SVG/DOMList.h:
40496 * WebCore.xcodeproj/project.pbxproj:
40498 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
40499 * bindings/js/JSXSLTProcessor.h:
40500 * bindings/js/kjs_domnode.h:
40502 * bindings/objc/DOMCSS.h:
40503 (-[DOMCSSValue enum]):
40504 * bindings/objc/DOMCore.h:
40505 (-[DOMImplementation createDocument:::]):
40506 * bindings/objc/DOMEvents.h:
40507 (-[DOMOverflowEvent enum]):
40508 * bindings/objc/DOMRange.h:
40509 * bindings/objc/DOMTraversal.h:
40510 * bindings/objc/DOMXPath.h:
40511 (-[DOMXPathNSResolver lookupNamespaceURI:]):
40512 * bridge/mac/WebCoreFrameBridge.h:
40513 * bridge/mac/WebCoreKeyboardAccess.h:
40516 * dom/ChildNodeList.h:
40519 (WebCore::Document::):
40520 * dom/DocumentMarker.h:
40521 (WebCore::DocumentMarker::):
40522 (WebCore::DocumentMarker::operator==):
40523 (WebCore::DocumentMarker::operator!=):
40524 * dom/EventTargetNode.h:
40525 * dom/KeyboardEvent.h:
40526 (WebCore::KeyboardEvent::):
40527 * dom/NameNodeList.h:
40528 (WebCore::NameNodeList::rootNodeChildrenChanged):
40529 * dom/QualifiedName.cpp:
40530 * editing/TypingCommand.h:
40531 (WebCore::TypingCommand::):
40532 * editing/UnlinkCommand.h:
40533 (WebCore::UnlinkCommand::editingAction):
40534 * html/FormDataList.h:
40535 (WebCore::FormDataListItem::FormDataListItem):
40536 (WebCore::FormDataList::appendData):
40537 * html/HTMLBlockquoteElement.h:
40538 * html/HTMLDivElement.h:
40539 * html/HTMLFormElement.h:
40540 * html/HTMLHRElement.h:
40541 * html/HTMLHeadingElement.h:
40542 * html/HTMLMarqueeElement.h:
40543 * html/HTMLParagraphElement.h:
40544 * html/HTMLPlugInElement.h:
40545 * html/HTMLPreElement.h:
40546 * html/HTMLTokenizer.h:
40547 (WebCore::HTMLTokenizer::State::):
40548 * icon/IconDatabase.cpp:
40549 * icon/SQLStatement.cpp:
40550 * kcanvas/KCanvasFilters.h:
40552 (WebCore::KCanvasPoint3F::KCanvasPoint3F):
40553 (WebCore::KCanvasFilter::KCanvasFilter):
40554 (WebCore::KCanvasFilter::~KCanvasFilter):
40555 (WebCore::KCanvasFilterEffect::~KCanvasFilterEffect):
40556 (WebCore::KCComponentTransferFunction::KCComponentTransferFunction):
40557 (WebCore::KCanvasFEConvolveMatrix::KCanvasFEConvolveMatrix):
40558 (WebCore::KCLightSource::KCLightSource):
40559 (WebCore::KCDistantLightSource::KCDistantLightSource):
40560 (WebCore::KCPointLightSource::KCPointLightSource):
40561 (WebCore::KCSpotLightSource::KCSpotLightSource):
40562 (WebCore::KCanvasFEDiffuseLighting::KCanvasFEDiffuseLighting):
40563 (WebCore::KCanvasFEDisplacementMap::KCanvasFEDisplacementMap):
40564 (WebCore::KCanvasFEImage::KCanvasFEImage):
40565 (WebCore::KCanvasFESpecularLighting::KCanvasFESpecularLighting):
40566 * kcanvas/RenderSVGImage.h:
40567 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
40568 * ksvg2/css/SVGRenderStyle.h:
40569 (WebCore::SVGRenderStyle::InheritedFlags::):
40570 (WebCore::SVGRenderStyle::NonInheritedFlags::):
40571 * ksvg2/css/SVGRenderStyleDefs.h:
40573 * ksvg2/events/SVGZoomEvent.h:
40576 * ksvg2/misc/KCanvasRenderingStyle.h:
40577 * ksvg2/misc/SVGImageLoader.h:
40578 * ksvg2/scripts/make_names.pl:
40579 * ksvg2/svg/SVGAElement.h:
40580 * ksvg2/svg/SVGAngle.h:
40581 * ksvg2/svg/SVGAnimateColorElement.h:
40582 * ksvg2/svg/SVGAnimateElement.h:
40583 * ksvg2/svg/SVGAnimateTransformElement.h:
40584 * ksvg2/svg/SVGAnimatedAngle.h:
40585 * ksvg2/svg/SVGAnimatedBoolean.h:
40586 * ksvg2/svg/SVGAnimatedColor.h:
40587 * ksvg2/svg/SVGAnimatedEnumeration.h:
40588 * ksvg2/svg/SVGAnimatedInteger.h:
40589 * ksvg2/svg/SVGAnimatedLength.h:
40590 * ksvg2/svg/SVGAnimatedLengthList.h:
40591 * ksvg2/svg/SVGAnimatedNumber.h:
40592 * ksvg2/svg/SVGAnimatedNumberList.h:
40593 * ksvg2/svg/SVGAnimatedPathData.h:
40594 * ksvg2/svg/SVGAnimatedPoints.h:
40595 * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
40596 * ksvg2/svg/SVGAnimatedRect.h:
40597 * ksvg2/svg/SVGAnimatedString.h:
40598 * ksvg2/svg/SVGAnimatedTemplate.h:
40599 * ksvg2/svg/SVGAnimatedTransformList.h:
40600 * ksvg2/svg/SVGAnimationElement.cpp:
40601 (SVGAnimationElement::calculateCurrentValueItem):
40602 (SVGAnimationElement::calculateRelativeTimePercentage):
40603 * ksvg2/svg/SVGAnimationElement.h:
40605 * ksvg2/svg/SVGCircleElement.h:
40606 * ksvg2/svg/SVGClipPathElement.h:
40607 * ksvg2/svg/SVGColor.h:
40608 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
40609 * ksvg2/svg/SVGCursorElement.h:
40610 * ksvg2/svg/SVGDOMImplementation.h:
40611 * ksvg2/svg/SVGDefsElement.h:
40612 * ksvg2/svg/SVGDescElement.h:
40613 * ksvg2/svg/SVGDocument.h:
40614 * ksvg2/svg/SVGElement.h:
40615 (WebCore::SVGElement::rendererIsNeeded):
40616 (WebCore::svg_dynamic_cast):
40617 * ksvg2/svg/SVGElementInstance.h:
40618 * ksvg2/svg/SVGElementInstanceList.h:
40619 * ksvg2/svg/SVGEllipseElement.h:
40620 * ksvg2/svg/SVGExternalResourcesRequired.h:
40621 * ksvg2/svg/SVGFEBlendElement.h:
40622 * ksvg2/svg/SVGFEColorMatrixElement.h:
40623 * ksvg2/svg/SVGFEComponentTransferElement.h:
40624 * ksvg2/svg/SVGFECompositeElement.h:
40625 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
40626 * ksvg2/svg/SVGFEDisplacementMapElement.h:
40627 * ksvg2/svg/SVGFEDistantLightElement.h:
40628 * ksvg2/svg/SVGFEFloodElement.h:
40629 * ksvg2/svg/SVGFEFuncAElement.h:
40630 * ksvg2/svg/SVGFEFuncBElement.h:
40631 * ksvg2/svg/SVGFEFuncGElement.h:
40632 * ksvg2/svg/SVGFEFuncRElement.h:
40633 * ksvg2/svg/SVGFEGaussianBlurElement.h:
40634 * ksvg2/svg/SVGFEImageElement.h:
40635 * ksvg2/svg/SVGFELightElement.h:
40636 * ksvg2/svg/SVGFEMergeElement.h:
40637 * ksvg2/svg/SVGFEMergeNodeElement.h:
40638 * ksvg2/svg/SVGFEOffsetElement.h:
40639 * ksvg2/svg/SVGFEPointLightElement.h:
40640 * ksvg2/svg/SVGFESpecularLightingElement.h:
40641 * ksvg2/svg/SVGFESpotLightElement.h:
40642 * ksvg2/svg/SVGFETileElement.h:
40643 * ksvg2/svg/SVGFETurbulenceElement.h:
40644 * ksvg2/svg/SVGFilterElement.h:
40645 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
40646 * ksvg2/svg/SVGFitToViewBox.h:
40647 * ksvg2/svg/SVGForeignObjectElement.cpp:
40648 * ksvg2/svg/SVGForeignObjectElement.h:
40649 * ksvg2/svg/SVGGElement.h:
40650 * ksvg2/svg/SVGGradientElement.h:
40651 * ksvg2/svg/SVGHelper.h:
40653 * ksvg2/svg/SVGImageElement.h:
40654 * ksvg2/svg/SVGLangSpace.h:
40655 * ksvg2/svg/SVGLength.h:
40656 * ksvg2/svg/SVGLengthList.h:
40657 * ksvg2/svg/SVGLineElement.h:
40658 * ksvg2/svg/SVGLinearGradientElement.h:
40659 * ksvg2/svg/SVGList.h:
40660 * ksvg2/svg/SVGLocatable.h:
40661 * ksvg2/svg/SVGMarkerElement.h:
40662 * ksvg2/svg/SVGMaskElement.h:
40663 * ksvg2/svg/SVGMatrix.h:
40664 * ksvg2/svg/SVGNumber.h:
40665 * ksvg2/svg/SVGNumberList.h:
40666 * ksvg2/svg/SVGPaint.h:
40667 * ksvg2/svg/SVGPathElement.h:
40668 * ksvg2/svg/SVGPathSeg.h:
40669 * ksvg2/svg/SVGPathSegArc.h:
40670 * ksvg2/svg/SVGPathSegClosePath.h:
40671 * ksvg2/svg/SVGPathSegCurvetoCubic.h:
40672 * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
40673 * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
40674 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
40675 * ksvg2/svg/SVGPathSegLineto.h:
40676 * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
40677 * ksvg2/svg/SVGPathSegLinetoVertical.h:
40678 * ksvg2/svg/SVGPathSegList.h:
40679 * ksvg2/svg/SVGPathSegMoveto.h:
40680 * ksvg2/svg/SVGPatternElement.h:
40681 * ksvg2/svg/SVGPoint.h:
40682 * ksvg2/svg/SVGPointList.h:
40683 * ksvg2/svg/SVGPolyElement.h:
40684 * ksvg2/svg/SVGPolygonElement.h:
40685 * ksvg2/svg/SVGPolylineElement.h:
40686 * ksvg2/svg/SVGPreserveAspectRatio.h:
40687 * ksvg2/svg/SVGRadialGradientElement.h:
40688 * ksvg2/svg/SVGRect.h:
40689 * ksvg2/svg/SVGRectElement.h:
40690 * ksvg2/svg/SVGSVGElement.h:
40691 * ksvg2/svg/SVGScriptElement.h:
40692 * ksvg2/svg/SVGSetElement.h:
40693 * ksvg2/svg/SVGStopElement.h:
40694 * ksvg2/svg/SVGStringList.h:
40695 * ksvg2/svg/SVGStylable.h:
40696 * ksvg2/svg/SVGStyleElement.h:
40697 * ksvg2/svg/SVGStyledElement.h:
40698 (WebCore::SVGStyledElement::rendererIsNeeded):
40699 (WebCore::SVGStyledElement::canvasResource):
40700 * ksvg2/svg/SVGStyledLocatableElement.h:
40701 * ksvg2/svg/SVGStyledTransformableElement.h:
40702 * ksvg2/svg/SVGSwitchElement.h:
40703 * ksvg2/svg/SVGSymbolElement.h:
40704 * ksvg2/svg/SVGTRefElement.h:
40705 * ksvg2/svg/SVGTSpanElement.h:
40706 * ksvg2/svg/SVGTests.h:
40707 * ksvg2/svg/SVGTextContentElement.h:
40708 * ksvg2/svg/SVGTextElement.h:
40709 * ksvg2/svg/SVGTextPositioningElement.h:
40710 * ksvg2/svg/SVGTitleElement.h:
40711 * ksvg2/svg/SVGTransform.h:
40712 * ksvg2/svg/SVGTransformList.h:
40713 * ksvg2/svg/SVGTransformable.h:
40714 * ksvg2/svg/SVGURIReference.h:
40715 * ksvg2/svg/SVGUseElement.h:
40716 * ksvg2/svg/SVGViewElement.h:
40717 * ksvg2/svg/SVGZoomAndPan.h:
40718 * ksvg2/svg/svgpathparser.h:
40721 * platform/AffineTransform.h:
40722 * platform/FontCache.cpp:
40723 (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
40724 * platform/FontData.cpp:
40725 (WebCore::FontData::FontData):
40726 * platform/FontData.h:
40727 * platform/TextBox.h:
40728 (WebCore::TextBox::):
40729 * platform/Timer.cpp:
40730 (WebCore::TimerBase::heapPop):
40731 * platform/mac/FontCacheMac.mm:
40732 * platform/mac/GlyphMapMac.cpp:
40733 * platform/mac/WebFontCache.mm:
40735 * rendering/DeprecatedRenderSelect.cpp:
40736 (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
40737 * rendering/EllipsisBox.h:
40738 * rendering/RenderBR.h:
40739 (WebCore::RenderBR::renderName):
40740 (WebCore::RenderBR::width):
40741 * rendering/RenderBlock.h:
40743 * rendering/RenderFlexibleBox.h:
40744 * rendering/RenderFlow.h:
40745 (WebCore::RenderFlow::RenderFlow):
40746 * rendering/RenderFrame.cpp:
40747 * rendering/bidi.h:
40748 * rendering/break_lines.cpp:
40750 2006-07-29 Rob Buis <buis@kde.org>
40754 http://bugs.webkit.org/show_bug.cgi?id=10151
40755 ghostmap XHTML + SVG fails due to javascript undefined exception
40757 Make sure document.URL works when called from a non-HTML document.
40759 * bindings/js/kjs_html.cpp:
40760 (KJS::JSHTMLDocument::getValueProperty):
40761 * bindings/js/kjs_html.h:
40762 (KJS::JSHTMLDocument::):
40763 * dom/Document.idl:
40765 2006-07-29 Mike Emmel <mike.emmel@gmail.com>
40767 Reviewed and tweaked by Darin.
40769 - fixes for Linux build
40770 (still might not compile, since Darin tweaked but was unable to test).
40772 * WebCoreSources.bkl: Added some new sources, removed some obsolete ones.
40773 * Projects/gdk/webcore-gdk.bkl: Added RenderPopupMenuGdk.cpp
40775 * html/HTMLPlugInElement.h: Removed incorrect syntax with class name
40778 * platform/gdk/FrameGdk.h:
40779 * platform/gdk/FrameGdk.cpp: Updated parameters of constructor. Moved a couple stubs
40781 * platform/gdk/RenderPopupMenuGdk.h: Added.
40782 * platform/gdk/RenderPopupMenuGdk.cpp: Added. Just a file full of empty stubs.
40783 * platform/gdk/RenderThemeGdk.h:
40784 * platform/gdk/RenderThemeGdk.cpp: (WebCore::RenderThemeGdk::createPopupMenu): Added.
40786 * platform/gdk/TemporaryLinkStubs.cpp: Add some new stubs.
40788 2006-07-29 Mark Rowe <opendarwin.org@bdash.net.nz>
40792 http://bugs.webkit.org/show_bug.cgi?id=10022
40793 Bug 10022: REGRESSION: Crash in WebCore::XMLTokenizer::characters
40795 * dom/XMLTokenizer.cpp:
40796 (WebCore::XMLTokenizer::resumeParsing): If the write() call resulted in new callbacks being
40797 added, don't call through to end() just yet.
40799 2006-07-29 Mitz Pettel <opendarwin.org@mitzpettel.com>
40801 Reviewed by John Sullivan.
40803 - manual test for http://bugs.webkit.org/show_bug.cgi?id=9984
40804 ASSERTION FAILURE: _private->mouseDownEvent != nil
40805 (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
40807 * manual-tests/subview-click-assertion.html: Added.
40809 2006-07-29 Andrew Wellington <proton@wiretapped.net>
40813 Fix for http://bugs.webkit.org/show_bug.cgi?id=8587 / <rdar://problem/4631844>
40814 REGRESSION: {display:list-item} items outside an ol or ul element don't number correctly
40816 * rendering/RenderListItem.cpp:
40817 (WebCore::enclosingList): If no real list element is found, use parent instead.
40818 (WebCore::previousListItem): Check list elements to see if they are list items -- the
40819 old code assumed that a list would never be a list item but this is entirely possible
40820 with CSS and especially with the new rule that means any DOM element could act as a list.
40822 2006-07-29 Alexey Proskuryakov <ap@nypop.com>
40826 Fix http://bugs.webkit.org/show_bug.cgi?id=10147
40827 REGRESSION: custom attribute values set via javascript are not persistent
40829 Test: fast/dom/Element/setAttribute-case-insensitivity.html
40832 (WebCore::Element::setAttribute): Use the lowercased localName for retrieving the old value, too.
40834 2006-07-28 Timothy Hatcher <timothy@apple.com>
40836 Suggested by Darin.
40838 Moving the implementation of isContentEditable to the
40839 the WebPrivate category.
40841 * bindings/objc/DOM.mm:
40842 (-[DOMNode isContentEditable]):
40844 2006-07-28 Justin Garcia <justin.garcia@apple.com>
40849 <rdar://problem/4515463>
40850 REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page
40852 Migrate to isBlock and enclosingBlock.
40853 Changed RendereringInfo::isBlock and ReplacementFragment::isBlock
40854 to wasBlock so that they don't conflict with isBlock and because
40855 it's more descriptive.
40857 * editing/ReplaceSelectionCommand.cpp:
40858 (WebCore::ReplacementFragment::mergeStartNode):
40859 (WebCore::ReplacementFragment::wasBlock):
40860 (WebCore::ReplacementFragment::saveRenderingInfo):
40861 (WebCore::ReplacementFragment::renderedBlocks):
40862 (WebCore::RenderingInfo::RenderingInfo):
40863 (WebCore::ReplaceSelectionCommand::shouldMergeStart):
40864 (WebCore::ReplaceSelectionCommand::doApply):
40865 * editing/ReplaceSelectionCommand.h:
40866 (WebCore::RenderingInfo::wasBlock):
40868 2006-07-27 Justin Garcia <justin.garcia@apple.com>
40873 <rdar://problem/4242293>
40874 Poor paste fidelity of http://www.google.com/
40876 * editing/markup.cpp:
40877 (WebCore::needInterchangeNewlineAfter): Added.
40878 (WebCore::createMarkup):
40879 Only add an interchangeNewline if we're annotating for interchange. Can't test
40880 this until we expose createMarkup in non-annotate mode (I'd expose Range::toHTML).
40881 Remove the FIXME about prepending the interchangeNewline before creating the rest
40882 of the markup. Its correct to surround the interchangeNewline in ancestors of the
40883 adjusted startNode.
40884 Fixed the check to see if an interchangeNewline is needed (!inSameBlock). This would
40885 add an interchangeNewline for a selection that started before a table.
40886 Removed the workaround for the bug where markup for a table was not included when
40887 selecting the contents of a table, since this change fixes the general problem of
40888 markup for ancestors of the startNode being left out.
40889 Don't leave out ancestors of the startNode as we leave their subtrees. Execute the
40890 code to include them even if we closed ancestors in the ancestorsToClose list.
40892 2006-07-28 Timothy Hatcher <timothy@apple.com>
40896 Adding isContentEditable to DOMNode's private category.
40898 * bindings/objc/DOMPrivate.h:
40900 2006-07-28 Alexey Proskuryakov <ap@nypop.com>
40902 Rolling out http://bugs.webkit.org/show_bug.cgi?id=6010 because of failing layout tests.
40903 Add better SVGLoad event support.
40905 * dom/EventTargetNode.cpp:
40906 (WebCore::EventTargetNode::dispatchGenericEvent):
40907 * html/HTMLImageLoader.cpp:
40908 (WebCore::HTMLImageLoader::dispatchLoadEvent):
40909 * html/HTMLImageLoader.h:
40910 * ksvg2/misc/SVGImageLoader.cpp:
40911 (WebCore::SVGImageLoader::SVGImageLoader):
40912 * ksvg2/misc/SVGImageLoader.h:
40913 * ksvg2/svg/SVGAElement.cpp:
40914 (WebCore::SVGAElement::parseMappedAttribute):
40915 * ksvg2/svg/SVGAnimatedBoolean.h:
40916 * ksvg2/svg/SVGElement.cpp:
40917 (WebCore::SVGElement::SVGElement):
40918 (WebCore::SVGElement::parseMappedAttribute):
40919 * ksvg2/svg/SVGElement.h:
40920 (WebCore::SVGElement::adjustViewportClipping):
40921 (WebCore::SVGElement::closeRenderer):
40922 (WebCore::SVGElement::rendererIsNeeded):
40923 (WebCore::SVGElement::isClosed):
40924 (WebCore::svg_dynamic_cast):
40925 * ksvg2/svg/SVGExternalResourcesRequired.h:
40926 * ksvg2/svg/SVGImageElement.cpp:
40927 (SVGImageElement::SVGImageElement):
40928 * ksvg2/svg/SVGImageElement.h:
40929 * ksvg2/svg/SVGSVGElement.cpp:
40930 (WebCore::SVGSVGElement::parseMappedAttribute):
40931 * ksvg2/svg/SVGScriptElement.cpp:
40932 (SVGScriptElement::SVGScriptElement):
40933 (SVGScriptElement::parseMappedAttribute):
40934 (SVGScriptElement::executeScript):
40935 * xml/xmlhttprequest.cpp:
40936 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
40938 2006-07-28 Adele Peterson <adele@apple.com>
40940 Rolling out http://bugs.webkit.org/show_bug.cgi?id=9753 because of failing layout tests.
40941 SVG with width and height 100% leaves room for scrollbar on the right.
40943 * kcanvas/RenderPath.cpp:
40944 * kcanvas/RenderPath.h:
40945 * kcanvas/RenderSVGContainer.cpp:
40946 (WebCore::RenderSVGContainer::layout):
40947 * ksvg2/svg/SVGCircleElement.cpp:
40948 * ksvg2/svg/SVGCircleElement.h:
40949 * ksvg2/svg/SVGEllipseElement.cpp:
40950 * ksvg2/svg/SVGEllipseElement.h:
40951 * ksvg2/svg/SVGLineElement.cpp:
40952 * ksvg2/svg/SVGLineElement.h:
40953 * ksvg2/svg/SVGRectElement.cpp:
40954 * ksvg2/svg/SVGRectElement.h:
40955 * ksvg2/svg/SVGStyledElement.h:
40957 2006-07-27 Eric Seidel <eric@webkit.org>
40961 Add better SVGLoad event support.
40962 http://bugs.webkit.org/show_bug.cgi?id=6010
40963 There will still need to be additional support added for <link> and <script> elements.
40964 Not all of the error -> loaded -> error transition cases work yet.
40966 * dom/EventTargetNode.cpp:
40967 (WebCore::EventTargetNode::dispatchGenericEvent):
40968 * html/HTMLImageLoader.cpp:
40969 (WebCore::HTMLImageLoader::dispatchLoadEvent):
40970 * html/HTMLImageLoader.h:
40971 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
40972 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
40973 * ksvg2/misc/SVGImageLoader.cpp:
40974 (WebCore::SVGImageLoader::SVGImageLoader):
40975 (WebCore::SVGImageLoader::dispatchLoadEvent):
40976 * ksvg2/misc/SVGImageLoader.h:
40977 * ksvg2/svg/SVGAElement.cpp:
40978 (WebCore::SVGAElement::parseMappedAttribute):
40979 * ksvg2/svg/SVGAnimatedBoolean.h:
40980 * ksvg2/svg/SVGElement.cpp:
40981 (WebCore::SVGElement::SVGElement):
40982 (WebCore::SVGElement::parseMappedAttribute):
40983 (WebCore::SVGElement::haveLoadedRequiredResources):
40984 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
40985 (WebCore::SVGElement::closeRenderer):
40986 * ksvg2/svg/SVGElement.h:
40987 (WebCore::SVGElement::rendererIsNeeded):
40988 (WebCore::svg_dynamic_cast):
40989 * ksvg2/svg/SVGExternalResourcesRequired.h:
40990 * ksvg2/svg/SVGImageElement.cpp:
40991 (SVGImageElement::SVGImageElement):
40992 (SVGImageElement::haveLoadedRequiredResources):
40993 * ksvg2/svg/SVGImageElement.h:
40994 * ksvg2/svg/SVGSVGElement.cpp:
40995 (WebCore::SVGSVGElement::parseMappedAttribute):
40996 * ksvg2/svg/SVGScriptElement.cpp:
40997 (WebCore::SVGScriptElement::SVGScriptElement):
40998 (WebCore::SVGScriptElement::parseMappedAttribute):
40999 (WebCore::SVGScriptElement::executeScript):
41000 * xml/xmlhttprequest.cpp:
41001 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
41003 2006-07-27 Mitz Pettel <opendarwin.org@mitzpettel.com>
41005 Reviewed by Anders.
41007 - http://bugs.webkit.org/show_bug.cgi?id=10135
41008 Cleanup: remove useless parameters from RenderObject::position()
41010 No test possible (no functionality change)
41012 * rendering/RenderBox.cpp:
41013 (WebCore::RenderBox::position):
41014 * rendering/RenderBox.h:
41015 * rendering/RenderObject.h:
41016 (WebCore::RenderObject::position):
41017 * rendering/RenderTableRow.h:
41018 (WebCore::RenderTableRow::position):
41019 * rendering/RenderTableSection.h:
41020 (WebCore::RenderTableSection::position):
41021 * rendering/RenderText.cpp:
41022 (WebCore::RenderText::position):
41023 * rendering/RenderText.h:
41024 * rendering/bidi.cpp:
41025 (WebCore::RenderBlock::constructLine):
41026 (WebCore::RenderBlock::computeVerticalPositionsForLine):
41028 2006-07-27 Rob Buis <buis@kde.org>
41030 Reviewed by Maciej.
41032 http://bugs.webkit.org/show_bug.cgi?id=9753
41033 SVG with width and height 100% leaves room for scrollbar on the right.
41035 Relayout children of svg containers, except svg shapes that do not depend on percentages.
41037 * kcanvas/RenderPath.cpp: (WebCore::RenderPath::hasPercentageValues):
41038 * kcanvas/RenderPath.h:
41039 * kcanvas/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout):
41040 * ksvg2/svg/SVGCircleElement.cpp: (SVGCircleElement::hasPercentageValues):
41041 * ksvg2/svg/SVGCircleElement.h:
41042 * ksvg2/svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::hasPercentageValues):
41043 * ksvg2/svg/SVGEllipseElement.h:
41044 * ksvg2/svg/SVGLineElement.cpp: (SVGLineElement::hasPercentageValues):
41045 * ksvg2/svg/SVGLineElement.h:
41046 * ksvg2/svg/SVGRectElement.cpp: (WebCore::SVGRectElement::hasPercentageValues):
41047 * ksvg2/svg/SVGRectElement.h:
41048 * ksvg2/svg/SVGStyledElement.h: (WebCore::SVGStyledElement::hasPercentageValues):
41050 2006-07-27 Justin Garcia <justin.garcia@apple.com>
41054 <rdar://problem/4242293>
41055 Poor paste fidelity of http://www.google.com/
41057 * editing/ApplyStyleCommand.cpp:
41058 (WebCore::ApplyStyleCommand::applyInlineStyle): Fixed crasher with nil-check.
41059 * editing/markup.cpp:
41060 (WebCore::startMarkup): Style information wasn't added to an element if it had
41061 attributes but no style attribute.
41063 2006-07-27 Alexander Kellett <lypanov@kde.org>
41067 - fix for http://bugs.webkit.org/show_bug.cgi?id=9867
41068 REGRESSION: code that modifies form element in Firefox modifies form attribute in WebKit
41070 * bindings/scripts/CodeGeneratorJS.pm: add new attribute - HasOverridingNameGetter
41071 * html/HTMLFormElement.idl:
41073 2006-07-27 Rob Buis <buis@kde.org>
41075 Reviewed by Anders.
41077 http://bugs.webkit.org/show_bug.cgi?id=8992
41078 Some HTML DOM attributes have incorrect types
41080 Adjust idl and dom source code for HTMLImageElement and
41081 HTMLBaseFontElement to choose correct type for
41082 HTMLImageElement::border and HTMLBaseFontElement::size
41085 * html/HTMLBaseFontElement.cpp:
41086 (WebCore::HTMLBaseFontElement::size):
41087 (WebCore::HTMLBaseFontElement::setSize):
41088 * html/HTMLBaseFontElement.h:
41089 * html/HTMLBaseFontElement.idl:
41090 * html/HTMLImageElement.cpp:
41091 (WebCore::HTMLImageElement::border):
41092 (WebCore::HTMLImageElement::setBorder):
41093 * html/HTMLImageElement.h:
41094 * html/HTMLImageElement.idl:
41096 2006-07-27 Justin Garcia <justin.garcia@apple.com>
41100 <rdar://problem/4628409>
41101 Safari crashes in CompositeEditCommand::removeBlockPlaceholder entering text in a web page form
41103 * editing/CompositeEditCommand.cpp:
41104 (WebCore::CompositeEditCommand::removeBlockPlaceholder):
41105 A script on the page shrinks the textarea down to zero rows just
41106 before insertion. That gives the shadow div a zero height, removing
41107 [div, 0] as a candidate for a VisiblePosition. Then
41108 InsertTextCommand::input() tries to create a VisiblePosition from
41109 [div, 0] and fails. A nil check is a quick fix. Another might
41110 be to make positions where there is a caret selection candidates.
41111 Another might be to make any [div, 0] where div is a shadow div inside
41112 a form element a candidate.
41114 2006-07-27 Graham Dennis <graham.dennis@gmail.com>
41118 - fix for http://bugs.webkit.org/show_bug.cgi?id=10094
41119 Japanese characters improperly rendering in TOT
41121 Test: fast/encoding/denormalised-voiced-japanese-chars.html
41123 * platform/Font.cpp:
41124 (WebCore::WidthIterator::advance): pass currentCharacter to normalizeVoicingMarks
41125 (WebCore::WidthIterator::normalizeVoicingMarks): turn the currentCharacter variable
41126 into an argument as WidthIterator::advance doesn't update m_currentCharacter while
41129 2006-07-27 Eric Seidel <eric@webkit.org>
41133 Complex entities seem to fail on TOT
41134 http://bugs.webkit.org/show_bug.cgi?id=6390
41135 Use an alternative work-around to an XML Entity parsing bug.
41137 * dom/XMLTokenizer.cpp:
41138 (WebCore::XMLTokenizer::write):
41139 (WebCore::hackAroundLibXMLEntityBug): added.
41140 (WebCore::startElementNsHandler):
41141 (WebCore::endElementNsHandler):
41142 (WebCore::charactersHandler):
41143 (WebCore::processingInstructionHandler):
41144 (WebCore::cdataBlockHandler):
41145 (WebCore::commentHandler):
41146 (WebCore::getEntityHandler):
41148 2006-07-27 Rob Buis <buis@kde.org>
41152 http://bugs.webkit.org/show_bug.cgi?id=9938
41153 Fix viewBox issues in Hixie's test
41155 Do a more accurate and quicker job of parsing the viewBox
41156 attribute. Handle properly on negative width/height and
41157 invalid syntax in general.
41159 * ksvg2/svg/SVGFitToViewBox.cpp:
41160 (SVGFitToViewBox::parseViewBox):
41162 2006-07-27 Eric Seidel <eric@webkit.org>
41166 Enables getSVGDocument() support for HTMLObjectElement and HTMLEmbedElement
41167 http://bugs.webkit.org/show_bug.cgi?id=9237
41168 This patch does not try to autogenerate anything, but enables the SVG functionality.
41169 Also fix HTMLObjectElement vspace and hspace to be numbers instead of strings to match IE & Firefox.
41171 * bindings/js/kjs_dom.cpp:
41173 * bindings/js/kjs_html.cpp:
41174 (KJS::JSHTMLElement::objectGetter):
41175 (KJS::HTMLElementFunction::callAsFunction):
41176 (KJS::JSHTMLElement::objectSetter):
41177 * bindings/js/kjs_html.h:
41178 (KJS::JSHTMLElement::):
41180 (WebCore::Document::isSVGDocument):
41181 * html/HTMLEmbedElement.cpp:
41182 (WebCore::HTMLEmbedElement::contentDocument):
41183 (WebCore::HTMLEmbedElement::getSVGDocument):
41184 * html/HTMLEmbedElement.h:
41185 * html/HTMLObjectElement.cpp:
41186 (WebCore::HTMLObjectElement::HTMLObjectElement):
41187 (WebCore::HTMLObjectElement::getInstance):
41188 (WebCore::HTMLObjectElement::parseMappedAttribute):
41189 (WebCore::HTMLObjectElement::contentDocument):
41190 (WebCore::HTMLObjectElement::rendererIsNeeded):
41191 (WebCore::HTMLObjectElement::createRenderer):
41192 (WebCore::HTMLObjectElement::setCode):
41193 (WebCore::HTMLObjectElement::setArchive):
41194 (WebCore::HTMLObjectElement::setBorder):
41195 (WebCore::HTMLObjectElement::setCodeBase):
41196 (WebCore::HTMLObjectElement::setCodeType):
41197 (WebCore::HTMLObjectElement::setData):
41198 (WebCore::HTMLObjectElement::hspace):
41199 (WebCore::HTMLObjectElement::setHspace):
41200 (WebCore::HTMLObjectElement::setStandby):
41201 (WebCore::HTMLObjectElement::setType):
41202 (WebCore::HTMLObjectElement::setUseMap):
41203 (WebCore::HTMLObjectElement::vspace):
41204 (WebCore::HTMLObjectElement::setVspace):
41205 (WebCore::HTMLObjectElement::getSVGDocument):
41206 * html/HTMLObjectElement.h:
41207 * ksvg2/svg/SVGDocument.h:
41208 (WebCore::SVGDocument::isSVGDocument):
41209 * rendering/RenderWidget.h:
41210 (WebCore::RenderWidget::frameView):
41212 2006-07-26 Alexey Proskuryakov <ap@nypop.com>
41216 Fix http://bugs.webkit.org/show_bug.cgi?id=9901
41217 XSLTProcessor cannot parse text nodes for INPUT ELEMENTS in an XSLT stylesheet
41219 Test: fast/js/xhtml-serialize.html
41221 * editing/markup.cpp:
41222 (WebCore::endMarkup): If the element has child nodes, write a closing tag even if it
41223 is not permitted in HTML, to make it valid XML.
41225 2006-07-26 Alice Liu <alice.liu@apple.com>
41227 Reviewed by John Sullivan (and Kevin and Timo).
41229 landing this patch for John et al.
41230 Fixed <rdar://problem/4651380> REGRESSION (9A232->9A234): existing web clips don't render if you restart Dashboard
41232 * page/FrameView.cpp:
41233 (WebCore::FrameView::layout):
41234 moved the call to didFirstLayout to above the check for needsLayout
41235 because we need to call didFirstLayout for every webview, not just
41236 ones we think need layout.
41238 2006-07-26 Justin Garcia <justin.garcia@apple.com>
41242 <rdar://problem/4652788>
41243 REGRESSION: Can't change size or style of any text in message body
41246 (WebCore::Node::isContentRichlyEditable): Mimic Node::isContentEditable.
41247 * html/HTMLElement.cpp:
41248 (WebCore::HTMLElement::isContentRichlyEditable): First check
41249 the frame for editability, then userModify, like what
41250 HTMLElement::isContentEditable() does.
41251 * html/HTMLElement.h:
41253 2006-07-26 Mitz Pettel <opendarwin.org@mitzpettel.com>
41257 - fix debug-only information() string for table cells
41259 * rendering/RenderObject.cpp:
41260 (WebCore::RenderObject::information):
41262 2006-07-25 David Harrison <harrison@apple.com>
41264 Reviewed by timo and Darin.
41266 <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
41268 * WebCore.xcodeproj/project.pbxproj:
41269 * bridge/mac/WebCoreFrameBridge.h:
41270 * bridge/mac/WebCoreFrameBridge.mm:
41271 (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
41272 Add matchStyle parameter for use by WebKit.
41274 2006-07-25 Justin Garcia <justin.garcia@apple.com>
41278 <rdar://problem/4649560>
41279 REGRESSION: Can't Select All when the body is contentEditable="true"
41281 * editing/VisiblePosition.cpp:
41282 (WebCore::VisiblePosition::canonicalPosition): Allow descent from a non-editable html
41283 element into an editable body as a convenience.
41285 2006-07-25 Justin Garcia <justin.garcia@apple.com>
41289 <rdar://problem/4468458> Incoming HTML message is editable <body contenteditable="true">
41291 * dom/Document.cpp:
41292 (WebCore::Document::inDesignMode): Removed some spaces.
41294 (WebCore::Frame::applyEditingStyleToElement): Just add CSS properties needed for editing.
41295 (WebCore::Frame::removeEditingStyleFromElement): Made this a no-op, we'll remove
41298 2006-07-25 David Kilzer <ddkilzer@kilzer.net>
41302 - fix http://bugs.webkit.org/show_bug.cgi?id=9717
41303 Replace IDL ConvertUndefinedToTrue parameter attribute with Optional attribute
41305 No test added because there is no change in functionality.
41307 * bindings/js/kjs_binding.cpp: Removed valueToBooleanTreatUndefinedAsTrue() method.
41308 * bindings/js/kjs_binding.h: Ditto.
41309 * bindings/scripts/CodeGeneratorJS.pm: Removed support for ConvertUndefinedToTrue parameter attribute.
41310 * dom/Element.h: Set default value to true for scrollIntoView() and scrollIntoViewIfNeeded() arguments.
41311 * dom/Element.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
41312 Fixed name of scrollIntoViewIfNeeded() argument to match implementation.
41313 * page/DOMWindow.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
41315 2006-07-24 Dan Waylonis <waylonis@google.com>
41317 Reviewed and tweaked a bunch by Darin.
41319 Test: plugins/bindings-test.html
41321 - fix http://bugs.webkit.org/show_bug.cgi?id=9902
41322 jsNull and NSNull not properly converted between JS and ObjC
41324 * bindings/objc/WebScriptObject.mm:
41325 (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
41326 Added case that converts jsNull to NSNull.
41328 2006-07-24 Darin Adler <darin@apple.com>
41330 Reviewed by Adele and Justin.
41332 - fix <rdar://problem/4613616> REGRESSION: some spaces typed in <textarea> are posted as non-breaking spaces (9630)
41333 http://bugs.webkit.org/show_bug.cgi?id=9630
41334 - also fixes http://bugs.webkit.org/show_bug.cgi?id=9939
41335 REGRESSION: Pasting text into native text area with newline at end does not preserve newline
41336 - removed some uses of DeprecatedPtrList in the markup code
41338 Test: fast/forms/textarea-type-spaces.html
41339 Test: fast/forms/textarea-paste-newline.html
41341 * bindings/objc/DOMHTML.mm: (-[DOMHTMLDocument createDocumentFragmentWithText:]):
41342 Updated call to pass a range -- in this case it is the range of the entire document,
41343 so this will not handle the whitespace properly.
41345 * bridge/mac/WebCoreFrameBridge.h: Added range context parameter to the
41346 documentFragmentWithText: method, so we can handle whitespace properly.
41347 * bridge/mac/WebCoreFrameBridge.mm:
41348 (-[WebCoreFrameBridge nodesFromList:]): Changed from DeprecatedPtrList to Vector.
41349 (-[WebCoreFrameBridge markupStringFromNode:nodes:]): Ditto.
41350 (-[WebCoreFrameBridge markupStringFromRange:nodes:]): Ditto.
41351 (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Added range context
41352 parameter -- pass it on to createFragmentFromText.
41353 (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]): Changed from
41354 DeprecatedPtrList to Vector.
41355 (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
41356 Pass the range of the current selection as context when creating the fragment.
41358 * dom/Position.cpp: (WebCore::Position::inRenderedText): Replace range check with
41359 a call to the new containsCaretOffset function -- helps make the caret work right when
41360 it is past the end of the last line in a textarea.
41362 * editing/CompositeEditCommand.cpp:
41363 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Don't do anything if the
41364 style does not call for collapsing whitespace.
41365 (WebCore::CompositeEditCommand::rebalanceWhitespace): Call replaceWhitespaceAt
41366 to share code, including the new logic mentioned above.
41368 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
41369 Use a text node instead of a break element when inserting and the style is preserveNewline.
41371 * editing/JSEditor.cpp: (WebCore::execRemoveFormat): Pass the selection range
41372 to createFragmentFromText.
41374 * editing/RebalanceWhitespaceCommand.cpp: (WebCore::RebalanceWhitespaceCommand::doApply):
41375 Assert that we're in a style that collapses whitespace. It's the caller's responsibility
41376 not to call otherwise.
41378 * editing/ReplaceSelectionCommand.h: Removed unused destructor, type, isSingleTextNode,
41379 isTreeFragment, m_type, and added a context parameter to inertFragmentForTestRendering.
41380 Also changed the constructor to take a selection rather than a pointer to the root
41381 editable element, replaced removeEndBRIfNeeded with shouldRemoveEndBR and removed an
41382 unused parameter from shouldMergeEnd.
41383 * editing/ReplaceSelectionCommand.cpp:
41384 (WebCore::ReplacementFragment::ReplacementFragment): Removed code to set up m_type.
41385 Compute root editable element from passed-in selection. Used the start of the selection
41386 as a base node for style purposes for the test rendering. Removed the special case
41387 "single text node" alternative to createFragmentFromText in the plain text case, since
41388 createFragmentFromText now handles that correctly.
41389 (WebCore::ReplacementFragment::insertFragmentForTestRendering): Copy the whitespace
41390 property from the source location when creating a temporary element for test rendering.
41391 (WebCore::ReplacementFragment::shouldMergeEnd): Removed unneeded boolean
41392 parameter fragmentHadInterchangeNewlineAtEnd, which is always false.
41393 (WebCore::ReplaceSelectionCommand::doApply): Update for ReplacementFragment changes,
41394 change code to not remove end BR when it can be re-used instead, don't call the
41395 paragraph separator insertion when the position is at the start of a paragraph already,
41396 removed redundant computation of identical "next" value, removed unneeded boolean
41397 parameter to shouldMergeEnd, add case for merging when all we need to do is to delete
41398 a newline character, removed unneeded code to set insertionPos after all code that uses
41399 it, and use spaces instead of non-breaking spaces when doing smart paste if the
41400 context is one where we do not collapse white space.
41401 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): Renamed and changed to return
41402 a boolean instead of doing the removal.
41404 * editing/markup.h: Use Vector instead of DeprecatedPtrList. Change the
41405 createFragmentFromText function to take a range for context instead of a document.
41406 * editing/markup.cpp:
41407 (WebCore::markup): Use Vector instead of DeprecatedPtrList.
41408 (WebCore::createMarkup): Ditto.
41409 (WebCore::createParagraphContentsFromString): Remove unneeded document parameter
41410 and changed a couple places to use isEmpty instead of comparing with "".
41411 (WebCore::createFragmentFromText): Given the new context parameter, if the context
41412 is one that preserves newlines, then use "\n" instead of <br> elements.
41413 (WebCore::createFragmentFromNodes): Use Vector instead of DeprecatedPtrList.
41415 * html/HTMLElement.cpp: (WebCore::HTMLElement::setInnerText): Do not use <br>
41416 elements if the context of this node is one where we preserve newlines.
41418 * rendering/InlineTextBox.h:
41419 * rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::containsCaretOffset):
41420 Added. Implements the appropriate rule for determining if a caret position is
41421 in this line or not. Returns true for both one line and the next in cases where
41422 affinity must be considered to determine which line the caret is on.
41424 * rendering/RenderText.h: Make atLineWrap no longer be a member function.
41425 * rendering/RenderText.cpp:
41426 (WebCore::atLineWrap): Remove special rule about preserveNewline and isLineBreak,
41427 which will no longer apply due to the new containsCaretOffset function logic.
41428 (WebCore::RenderText::caretRect): Use containsCaretOffset.
41429 (WebCore::RenderText::inlineBox): Ditto.
41431 * rendering/RenderTextControl.cpp:
41432 (WebCore::RenderTextControl::updateFromElement): Make a placeholder <br> element
41433 after calling setInnerText so that the last newline in the string has the effect
41434 we expect outside the HTML world (an additional line).
41435 (WebCore::RenderTextControl::setSelectionRange): Set granularity of the selection
41436 too. The layout tests caught this problem, which needs a better solution long term.
41437 (WebCore::RenderTextControl::text): Call textContent with the parameter false
41438 so it will not include newlines for <br> elements. Now the only <br> element
41439 that will ever be in the shadow DOM tree is the one to prevent collapsing, and
41440 that one should not show up in the text value.
41442 * rendering/bidi.cpp: (WebCore::RenderBlock::findNextLineBreak): Took a rule
41443 that specifically called out the pre whitespace mode and made it work for all
41444 the modes that preserve newlines. This makes sure we get a last line box for
41445 text after the last "\n" even in cases where there is no <br> afterward.
41447 * editing/DeleteSelectionCommand.cpp:
41448 (WebCore::DeleteSelectionCommand::fixupWhitespace):
41449 * editing/InsertParagraphSeparatorCommand.cpp:
41450 (WebCore::InsertParagraphSeparatorCommand::doApply):
41451 Added assertions to make sure we don't do anything when we're not collapsing
41454 * html/HTMLTextAreaElement.cpp: (WebCore::HTMLTextAreaElement::setDefaultValue):
41455 Changed to use Vector instead of DeprecatedPtrList.
41457 * editing/HTMLInterchange.cpp: Removed obsolete comment.
41459 * loader/Cache.h: Removed a stray include.
41461 2006-07-24 Adele Peterson <adele@apple.com>
41463 Reviewed by Justin.
41465 - Fix for <rdar://problem/4632132> Changing style of content with mixed editability fails
41467 Test: * editing/style/apple-style-editable-mix.html
41469 * dom/Node.cpp: (WebCore::Node::isContentRichlyEditable): Doesn't need to check the editable root. It now just
41470 checks the user modify property of its own renderer, since that is inherited.
41471 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::applyInlineStyle): If the end position is in a table,
41472 Adjust the end node to the last descendant of the table, so we don't skip over any runs.
41474 2006-07-24 Darin Adler <darin@apple.com>
41478 - implement String::createCFString
41480 * WebCore.xcodeproj/project.pbxproj: Added StringImplMac.mm and StringMac.mm.
41482 * bindings/objc/DOMInternal.mm: Moved NSString conversion functions out of here.
41484 * platform/mac/StringImplMac.mm: Added. Moved NSString conversion members here
41485 and added the CFStringRef ones.
41486 * platform/mac/StringMac.mm: Added. Ditto.
41488 2006-07-24 David Hyatt <hyatt@apple.com>
41492 (1) Make sure to mark positioned objects that depend on line position to
41493 mark themselves as needing layout when their line box placeholder gets
41496 * rendering/RenderBox.cpp:
41497 (WebCore::RenderBox::position):
41499 (2) Improve highlighting to factor the inflation into overflow so that
41500 invalidation and repainting will work properly.
41502 * rendering/RootInlineBox.cpp:
41503 (WebCore::RootInlineBox::addHighlightOverflow):
41504 * rendering/RootInlineBox.h:
41505 * rendering/bidi.cpp:
41506 (WebCore::RenderBlock::layoutInlineChildren):
41508 2006-07-24 Anders Carlsson <acarlsson@apple.com>
41512 <rdar://problem/4641824> REGRESSION: Wikipedia widget fails to complete a search after pressing return key
41514 * html/HTMLInputElement.cpp:
41515 (WebCore::HTMLInputElement::defaultEventHandler):
41516 Don't eat enter events for search fields that have no enclosing form; they need to be passed to AppKit so
41517 that onsearch can be invoked.
41519 * manual-tests/onsearch-enter.html: Added.
41521 2006-07-24 Dave MacLachlan <dmaclach@mac.com>
41523 Reviewed by Darin and Alexey.
41525 Fix for: <http://bugs.webkit.org/show_bug.cgi?id=8425>
41526 and <http://bugs.webkit.org/show_bug.cgi?id=6947>
41528 Test: svg/custom/non-opaque-filters.svg
41530 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
41531 (WebCore::KCanvasFilterQuartz::prepareFilter):
41532 We create an autorelease pool so we can control the deallocation of the
41533 CIContext that we're creating. The CIContext retains the CGContext that
41534 you pass it internally so when the CIContext is released, the
41535 CGContext is released as well.
41536 This is all fine and dandy unless you wrap the creation of the CIFilter
41537 with a pair of CGBegin/EndTransparencyLayer calls which swap the context
41538 out from underneath you. So if you start with context A,
41539 CGBeginTransparencyLayer swaps it out and gives you B. You create a CIFilter
41540 with it and add a reference to B. CGEndTransparencyLayer swaps out B and
41541 gives you back A. Autorelease pool comes and cleans up the Filter, and calls
41542 release on A, but A never got the refcount in the first place. B did. BOOM!
41543 So we create a pool, then do a retain, then release the pool so that we
41544 don't have to worry about the pool releasing it at a later time.
41545 See <rdar://problem/4647735> for reduction of CGEndTransparencyLayer case
41547 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
41551 - fix http://bugs.webkit.org/show_bug.cgi?id=9669
41552 Incomplete repaint when changing an inline's border
41554 Test: fast/repaint/line-overflow.html
41556 * rendering/RenderBlock.h:
41557 * rendering/bidi.cpp:
41558 (WebCore::RenderBlock::layoutInlineChildren): Added repaintTop and repaintBottom
41559 variables to track the vertical edges of the area that changed, accounting for
41560 lines that were deleted, inserted or moved. Removed unnecessary updating of
41562 (WebCore::RenderBlock::determineStartPosition): Removed unnecessary updating of
41564 (WebCore::RenderBlock::determineEndPosition):
41565 (WebCore::RenderBlock::matchedEndLine): Added repaintTop and repaintBottom
41566 arguments, which this method updates to account for deleted lines.
41567 (WebCore::RenderBlock::checkLinesForOverflow): Removed outdated FIXME.
41569 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
41573 - fix http://bugs.webkit.org/show_bug.cgi?id=10075
41574 REGRESSION: Reversed pop-up text in visually-ordered Hebrew pages
41576 Test: fast/forms/select-visual-hebrew.html
41578 * css/html4.css: Set "-webkit-rtl-ordering: logical" on select elements.
41580 2006-07-24 Alexey Proskuryakov <ap@nypop.com>
41584 Fix http://bugs.webkit.org/show_bug.cgi?id=10009
41585 REGRESSION: Schubert-IT PDF Plug-in not working for full page (works in frames)
41588 (WebCore::Frame::begin): Give PDF plugins a chance to handle frame content, before ImageDocument
41591 2006-07-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
41595 - fix http://bugs.webkit.org/show_bug.cgi?id=10083
41596 REGRESSION (r15584): editing/selection/select-from-textfield-outwards failing
41598 * rendering/RenderBlock.cpp:
41599 (WebCore::RenderBlock::positionForCoordinates): Added back change from the fix
41600 for bug 9312: For coordinates outside a replaced object, return the position
41601 just before (after) the element if the coordinates are above or to the left (below
41604 2006-07-23 Mark Rowe <opendarwin.org@bdash.net.nz>
41606 Reviewed by maciej.
41608 Bug 9686: [Drosera] Need the ability to break into Drosera on Javascript exceptions
41609 http://bugs.webkit.org/show_bug.cgi?id=9686
41611 WebCore portion of the fix.
41613 * bridge/mac/WebCoreScriptDebugger.h:
41614 (-[WebScriptDebugger exceptionRaised:sourceId:line::]): Add delegate method.
41615 * bridge/mac/WebCoreScriptDebugger.mm:
41616 (WebCoreScriptDebuggerImp::exception): Call delegate method when an exception is raised.
41618 2006-07-23 Alice Liu <alice.liu@apple.com>
41621 Actually Adele figured out how to fix the layout test failures. Landing this patch for her. Layout test failures exposed but not caused by r15584 (my patch earlier today).
41623 * editing/visible_units.cpp:
41624 (WebCore::previousLinePosition):
41625 When setting selection endpoints, don't traverse down into nodes where editing would ignore its contents. Use the parent node instead.
41626 (WebCore::nextLinePosition):
41629 2006-07-23 David Harrison <harrison@apple.com>
41633 <rdar://problem/4646759> Mail crash editing To Do - WebCore::InsertTextCommand::prepareForTextInsertion
41635 * Test: editing/deleting/delete-mixed-editable-content-001.html
41637 * editing/visible_units.cpp:
41638 (WebCore::startOfParagraph):
41639 Respect editable boundary the same way endOfParagraph does.
41641 2006-07-23 Beth Dakin <bdakin@apple.com>
41643 Reviewed by Maciej. (Patch by me, Maciej, and Harrison.)
41645 Fix for <rdar://problem/4529398> WebCore crashes when pasting rich
41646 text - WebCore::InlineBox::root()
41648 The initial rendering crash was due to a render object having a
41649 stale reference to an inline box that had already been deleted and
41650 then recreated in the exact same location in memory. (Crazy, I
41651 know.) The situation seemed pretty specific to list markers
41652 according to Hyatt according to Maciej, so that is what I patched
41653 specifically. Fixing this crash unearthed a separate editing crash
41654 where we were trying to insert a block into itself. I worked on
41655 that with Maciej and Harrison, and Harrison came up with a fix.
41657 * editing/CompositeEditCommand.cpp:
41658 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): This is the fix for the editing crash. If paragraphStart is an atomic
41659 node, insert the new block into the parent instead.
41660 * rendering/InlineBox.cpp:
41661 (WebCore::InlineBox::isChildOfParent): This function is for
41662 posterity. It will help keep the linebox tree in check.
41663 * rendering/InlineBox.h:
41664 * rendering/InlineFlowBox.cpp:
41665 (WebCore::InlineFlowBox::addToLine): Added assert.
41666 (WebCore::InlineFlowBox::deleteLine): Added assert.
41667 * rendering/ListMarkerBox.cpp:
41668 (WebCore::ListMarkerBox::destroy): If this has a parent, call
41669 removeChild on this.
41670 (WebCore::ListMarkerBox::operator delete):
41671 * rendering/ListMarkerBox.h:
41673 2006-07-23 Alice Liu <alice.liu@apple.com>
41677 fixed <rdar://problem/4617841> REGRESSION (NativeTextField): You can move keyboard focus to a field without getting insertion point
41679 * rendering/RenderBlock.cpp:
41680 (WebCore::RenderBlock::positionForCoordinates):
41681 removed some unnecessary vertical position checks and added a fudge factor to be more forgiving for clicks near lines.
41682 * rendering/RenderTextControl.cpp:
41683 (WebCore::RenderTextControl::nodeAtPoint):
41684 added implementation
41685 * rendering/RenderTextControl.h:
41686 added function protocol
41688 2006-07-23 Adele Peterson <adele@apple.com>
41692 Updating fix from last checkin.
41694 * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
41695 Only tell the view about this flexbox if there isn't another flexbox already cached.
41697 2006-07-23 Adele Peterson <adele@apple.com>
41699 Reviewed by Maciej.
41701 - Fix for <rdar://problem/4644614> REGRESSION: Typing, pasting or dragging in new text areas causes unnecessary scrolling
41703 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::layoutBlock): Don't updateScrollInfoAfterLayout if an ancestor flexible box is just on
41705 * rendering/RenderFlexibleBox.cpp:
41706 (WebCore::RenderFlexibleBox::layoutBlock): ditto.
41707 (WebCore::RenderFlexibleBox::layoutVerticalBox): Let the view know if this flex box is doing its first pass at layout.
41709 * rendering/RenderView.cpp: (WebCore::RenderView::RenderView): Caches a flexible box that's doing its first layout.
41710 * rendering/RenderView.h:
41711 (WebCore::RenderView::setFlexBoxInFirstLayout):
41712 (WebCore::RenderView::flexBoxInFirstLayout):
41714 2006-07-22 Alexey Proskuryakov <ap@nypop.com>
41718 Fix http://bugs.webkit.org/show_bug.cgi?id=10038
41719 REGRESSION: Length of navigator.mimeTypes collection returns number of installed plugins, not number
41720 of registered mime types
41722 * bindings/js/kjs_navigator.cpp:
41723 (KJS::MimeTypes::getValueProperty): Return the length of the mime types vector, not the plugins one.
41724 (KJS::MimeTypes::getOwnPropertySlot): Fixed another typo, which prevented MimeTypes::getValueProperty()
41725 from even being called.
41727 2006-07-21 Maciej Stachowiak <mjs@apple.com>
41729 Reviewed by Adele and Tim Omernick.
41731 <rdar://problem/4641004> 9A224: Safari crashes in WebCore::RenderMenuList::showPopup when changing a input select field to input text field
41733 Couldn't figure out how to make layout test, here's a manual test:
41734 * manual-tests/remove-select-onchange.html: Added.
41736 * rendering/RenderMenuList.cpp:
41737 (WebCore::RenderMenuList::showPopup): Don't add the RenderPopupMenu to the render
41738 tree so it doesn't get destroyed if we do.
41740 The remaining changes are to let the RenderPopupMenu know its menu list w/o having
41741 to be in the render tree:
41743 * rendering/RenderPopupMenu.cpp:
41744 (WebCore::RenderPopupMenu::RenderPopupMenu):
41745 * rendering/RenderPopupMenu.h:
41746 (WebCore::RenderPopupMenu::menuList):
41747 * rendering/RenderPopupMenuMac.h:
41748 * rendering/RenderPopupMenuMac.mm:
41749 (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
41750 * rendering/RenderPopupMenuWin.h:
41751 (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
41752 * rendering/RenderTheme.h:
41753 * rendering/RenderThemeMac.h:
41754 * rendering/RenderThemeMac.mm:
41755 (WebCore::RenderThemeMac::createPopupMenu):
41756 * rendering/RenderThemeWin.cpp:
41757 (WebCore::RenderThemeWin::createPopupMenu):
41758 * rendering/RenderThemeWin.h:
41760 2006-07-21 Adele Peterson <adele@apple.com>
41764 Fix for: <rdar://problem/4643238> REGRESSION: Can't set insertion point at the end of a line of text
41766 Test: fast/forms/textarea-scrolled-endline-caret.html
41768 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::positionForCoordinates):
41769 When looking for the closest line box, take the scroll offset into account.
41771 2006-07-21 Tim Omernick <timo@apple.com>
41773 Reviewed by Geoff & Maciej.
41775 <rdar://problem/4632505> REGRESSION: Crash at WebCore::Widget::getView() const + 6
41777 Geoff is working on a layout test for this.
41779 * bridge/mac/FrameMac.mm:
41780 (WebCore::FrameMac::focusWindow):
41781 (WebCore::FrameMac::unfocusWindow):
41782 Check for a NULL view. The view can be NULL if the frame has not yet loaded any data. This fixes the crash, but the behavior is still
41783 wrong -- we should focus the frame once it gets a view. I've filed <rdar://problem/4645685> to track that. It's not as urgent as this
41786 2006-07-21 Maciej Stachowiak <mjs@apple.com>
41790 <rdar://problem/4523976> REGRESSION (NativeTextField): Crash occurs when choosing "Undo Typing" after typing and setting the value
41792 * rendering/RenderTextControl.cpp:
41793 (WebCore::RenderTextControl::updateFromElement): Clear the undo
41794 chain when the text control contents have been set
41796 * bridge/mac/FrameMac.mm:
41797 (WebCore::FrameMac::clearUndoRedoOperations): Before clearing undo
41798 stack, close all open undo groups and then open an equal number,
41799 since otherwise NSUndoManager ends up in an inconsistent state
41800 leading to uncaught ObjC exceptions.
41802 2006-07-21 Beth Dakin <bdakin@apple.com>
41806 Just moving this assertion down a couple of lines. It was hitting
41807 every time you try to print a page because we put it too early in
41810 * bridge/mac/WebCoreFrameBridge.mm:
41811 (-[WebCoreFrameBridge drawRect:]):
41813 2006-07-21 Justin Garcia <justin.garcia@apple.com>
41817 <rdar://problem/4548238>
41818 REGRESSION: Can't remove the first OL/UL list item in a Mail's compose window
41820 * editing/CompositeEditCommand.cpp:
41821 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
41822 Moved from InsertParagraphSeparator. Does its own typing style restoration.
41823 * editing/CompositeEditCommand.h:
41824 * editing/InsertParagraphSeparatorCommand.cpp:
41825 (WebCore::InsertParagraphSeparatorCommand::doApply): Call breakOutOfEmptyListItem.
41826 * editing/TypingCommand.cpp:
41827 (WebCore::TypingCommand::deleteKeyPressed): Call breakOutOfEmptyListItem if
41828 the endingSelection is at the start of an editable region.
41829 * editing/htmlediting.cpp:
41830 (WebCore::embeddedSublist): Moved from InsertParagraphSeparator.
41831 (WebCore::appendedSublist): Ditto.
41832 (WebCore::enclosingEmptyListItem): Ditto.
41833 * editing/htmlediting.h:
41835 === Safari-521.20 ===
41837 2006-07-21 Tim Omernick <timo@apple.com>
41839 Reviewed by Beth Dakin & John Sullivan.
41841 <rdar://problem/4633717> 9A218: Reproducible crash in -[NSScroller mouseDown:]
41843 Beth is in the middle of making a layout test for this; she will land it soon.
41845 * platform/mac/ScrollBarMac.mm:
41846 (ScrollBar::~ScrollBar):
41847 Call Widget::removeFromSuperview() rather than -removeFromSuperview directly on the scroll bar view.
41848 Widget::removeFromSuperview() obeys the "mustStayInWindow" flag, which is set while tracking the mouse
41849 in view-based widgets to prevent their destruction while the tracking is in progress.
41850 I searched around WebCore and this is the only Widget subclass that directly removes its view rather
41851 than using removeFromSuperview().
41853 2006-07-21 Mitz Pettel <opendarwin.org@mitzpettel.com>
41857 - fix http://bugs.webkit.org/show_bug.cgi?id=9312
41858 REGRESSION: Selection bug in new text fields when selecting past the first letter
41860 Test: editing/selection/select-from-textfield-outwards.html
41862 * editing/Selection.cpp:
41863 (WebCore::Selection::adjustForEditableContent): Added code to handle the case
41864 where the selection starts (resp. ends) in the last (resp. first) visual position
41865 inside an editable root.
41866 * editing/htmlediting.cpp:
41867 (WebCore::comparePositions): Fixed the case of comparing a position inside a shadow
41868 tree with a position in the shadow ancestor.
41869 * rendering/RenderBlock.cpp:
41870 (WebCore::RenderBlock::positionForCoordinates): For coordinates outside a replaced
41871 object, return the position just before (after) the element if the coordinates are above or
41872 to the left (below or to the right).
41873 * rendering/RenderObject.cpp:
41874 (WebCore::RenderObject::caretMaxOffset): Changed to return 1 for replaced objects.
41875 * rendering/RenderText.cpp:
41876 (WebCore::RenderText::positionForCoordinates): Changed to return the last position
41877 in the lowest text box if the y coordinate is below all text boxes.
41879 2006-07-21 Geoffrey Garen <ggaren@apple.com>
41883 - Fixed <rdar://problem/4507265> REGRESSION: overlays don't work on
41884 HousingMaps.com (Google Maps-based site)
41886 - Made style.filter undetectable, like document.all.
41888 Unfortunately, the SVG spec-makers invented a CSS attribute named 'filter',
41889 which conflicts with IE's custom CSS attribute by the same name. Web programs
41890 like the Google maps API test for style.filter, and assume it's the IE
41891 style.filter if they find it, so we need to make style.filter undetectable
41892 to avoid breaking them.
41894 An alternative solution would be to hotwire a delorean, go back in time,
41895 and beg the web standards makers to make standards that work on the web.
41897 * bindings/js/kjs_css.cpp:
41898 (KJS::DOMCSSStyleDeclaration::cssPropertyGetter):
41900 2006-07-20 Justin Garcia <justin.garcia@apple.com>
41904 <rdar://problem/4641033>
41905 REGRESSION: Pasting from web pages into Mail (or Blot) often loses most of the content
41907 * editing/markup.cpp:
41908 (WebCore::createMarkup): We surround the currently accumulated markup with markup
41909 for ancestors of the startNode when the pre-order traversal leaves the trees rooted
41910 at those ancestors. We assumed that any ancestors of the current node not in the
41911 ancestorsToClose list were those kind of ancestors. But we don't add renderer-less
41912 containers to the ancestorsToClose list. So, we were incorrectly surrounding the
41913 currently accumulated markup with markup for render-less containers. Most of the
41914 content at apple.com was being put inside an <optgroup> inside a <select> element.
41915 Then on Paste createContextualFragment would drop it.
41917 2006-07-21 Anders Carlsson <acarlsson@apple.com>
41922 (WebCore::Document::):
41923 * dom/EventTargetNode.cpp:
41924 (WebCore::EventTargetNode::addEventListener):
41925 * page/FrameView.cpp:
41926 (WebCore::FrameView::layout):
41927 * rendering/RenderLayer.cpp:
41928 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
41929 Only dispatch overflowchanged events if overflowchanged event listeners have been registered on the document.
41931 2006-07-20 Anders Carlsson <acarlsson@apple.com>
41935 <rdar://problem/4637807> REGRESSION: "Features & Options" page at volvocars.us fails
41937 * xml/XSLTProcessor.cpp:
41938 (WebCore::xsltParamArrayFromParameterMap):
41939 Turns out parameters never worked. String parameters need to be escaped so we create a transform context,
41940 add the parameters to it quoted and then use xsltApplyStylesheetUser which lets us pass the transform context to it.
41941 This also works around a bug in libxslt where a hash table isn't allocated.
41943 2006-07-20 Alice Liu <alice.liu@apple.com>
41945 Reviewed by Tim Omernick.
41947 Fixed <rdar://problem/4621649> repro crash: Upload link causes crash on pages.google.com in Frame::nodeForWidget
41948 added manual test because there is no way to change the value of an <input type=file> via the DOM. It's not supported because it's a security risk.
41950 * manual-tests/remove-input-file-onchange.html: Added.
41951 * platform/mac/FileButtonMac.mm:
41952 (-[WebFileChooserButton chooseFilename:]):
41953 swapped the calls to changeFilename and bridgeForWidget because changeFilename will destroy the widget that is accessed in bridgeForWidget
41955 2006-07-20 Alice Liu <alice.liu@apple.com>
41959 Fixed <rdar://problem/4532113> REGRESSION (NativeTextField): Crash occurs after modifying field then reloading page -[FormDelegate frameLayoutHasChanged:]
41960 added a manual test because of the need to use AutoFill.
41963 (WebCore::Node::aboutToUnload):
41964 added virtual function prototype
41965 * html/HTMLInputElement.cpp:
41966 (WebCore::HTMLInputElement::aboutToUnload):
41967 added implementation that sends textFieldDidEndEditing notification
41968 * html/HTMLInputElement.h:
41969 added virtual function prototype
41970 * manual-tests/input-type-file-autocomplete-frame-1.html: Added.
41971 * manual-tests/input-type-file-autocomplete-frame-2.html: Added.
41972 * manual-tests/input-type-file-autocomplete-refresh.html: Added.
41974 (WebCore::Frame::stopLoading):
41975 before unloading, call aboutToUnload on the current focused node
41977 2006-07-20 Brady Eidson <beidson@apple.com>
41981 fixed <rdar://problem/4611303> REGRESSION: repro crash in WebCore::EventTargetNode::dispatchWindowEvent at aeropostale.com
41982 There was an attempt to deref an EventListener that got cleaned up in GC. Changing Document's EventListener list from
41983 vanilla ptrs to refptrs to prevent GC, following EventTargetNode's proven example.
41985 * dom/Document.cpp:
41986 (WebCore::Document::Document):
41987 (WebCore::Document::clear):
41988 (WebCore::Document::handleWindowEvent):
41989 (WebCore::Document::getHTMLWindowEventListener):
41990 (WebCore::Document::removeHTMLWindowEventListener):
41991 (WebCore::Document::removeWindowEventListener):
41992 (WebCore::Document::hasWindowEventListener):
41993 Changed all of the list iterators to work with RefPtrs instead of vanilla ptrs
41996 Changed the EventListener list to be a vanilla pointer list to a refptr list
41998 2006-07-20 John Sullivan <sullivan@apple.com>
42002 - WebCore part of fix for:
42003 <rdar://problem/4557386> REGRESSION (419.3-521.19): repro Safari world leak involving
42004 closing tabs after clicking in a web page
42006 * bridge/mac/WebCoreFrameBridge.h:
42007 (-[WebCoreFrameBridge textViewWasFirstResponderAtMouseDownTime:])
42008 renamed to be more specific (formerly wasFirstResponderAtMouseDownTime:)
42009 * bridge/mac/FrameMac.mm:
42010 (WebCore::FrameMac::passMouseDownEventToWidget):
42011 updated for name change
42013 2006-07-19 Alexey Proskuryakov <ap@nypop.com>
42017 Fix http://bugs.webkit.org/show_bug.cgi?id=8272
42018 Use of window.open & window.close can cause crash
42020 * platform/PlatformMouseEvent.h:
42021 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
42022 * platform/mac/PlatformMouseEventMac.mm:
42023 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
42024 The default constructor now creates a "zero" event, and a new one was added to create the "current" one.
42026 * bridge/mac/FrameMac.mm:
42027 (WebCore::FrameMac::handleMouseMoveEvent):
42028 * rendering/RenderFormElement.cpp:
42029 (WebCore::RenderFormElement::clicked):
42030 Updated for the above changes.
42032 * platform/gdk/MouseEventGdk.cpp:
42033 * platform/gdk/TemporaryLinkStubs.cpp:
42034 (PlatformMouseEvent::PlatformMouseEvent):
42035 * platform/win/MouseEventWin.cpp:
42036 * platform/win/TemporaryLinkStubs.cpp:
42037 (PlatformMouseEvent::PlatformMouseEvent):
42038 Trying not to break other platforms.
42040 * manual-tests/invalid-mouse-event.html: Added.
42042 2006-07-20 Maciej Stachowiak <mjs@apple.com>
42044 Reviewed by Anders.
42046 - delete line that I only commented in the last patch - meant to do this before landing
42048 * html/HTMLFrameElement.cpp:
42049 (WebCore::HTMLFrameElement::close):
42051 2006-07-19 Maciej Stachowiak <mjs@apple.com>
42055 - fixed <rdar://problem/4634484> REGRESSION: Project Change Request form should have vertical scroll bar, but doesn't
42057 I couldn't figure out how to make an automated test case for this,
42058 or even a manual one. It seems to be timing-related in some way.
42060 * html/HTMLFrameElement.cpp:
42061 (WebCore::HTMLFrameElement::close): detach the child frame from
42062 its element, not the frame containing this element.
42064 2006-07-20 Anders Carlsson <acarlsson@apple.com>
42068 * bridge/mac/FrameMac.mm:
42069 (WebCore::FrameMac::nextKeyViewInFrame):
42070 Hold a ref to the node in case it gets destroyed by an event handler.
42072 2006-07-19 Mark Rowe <opendarwin.org@bdash.net.nz>
42076 http://bugs.webkit.org/show_bug.cgi?id=10021
42077 Bug 10021: REGRESSION: Stack overflow due to infinite recursion in
42078 Image::checkForSolidColor
42080 * platform/Image.cpp:
42081 (WebCore::Image::cacheFrame): Don't call checkForSolidColor unless
42082 the frame was decoded successfully.
42084 2006-07-19 Adele Peterson <adele@apple.com>
42086 Reviewed by Maciej.
42089 <rdar://problem/4422657> REGRESSION: member name field or password field should have focus after loading webmail.mac.com (7405)
42090 http://bugs.webkit.org/show_bug.cgi?id=7405
42092 <rdar://problem/4614181> REGRESSION: Crash in WebCore::RenderTextField::text() when quoting post at the Ars Technica forum (9707)
42093 http://bugs.webkit.org/show_bug.cgi?id=9707
42095 Needs an http test. (http://bugs.webkit.org/show_bug.cgi?id=10020)
42097 These bugs were both cases where focus() was called on an element which didn't have a renderer yet because stylesheets hadn't finished loading yet.
42098 Now, we detect this case and let setFocusNode be called. And when the stylesheet finishes loading, and the element attaches, a timer will fire,
42099 which will cause the correct selection & scrolling behavior to occur.
42101 This fix removes selection and scrolling behavior from the focus method. This code is now in a new method, updateFocusAppearance.
42102 updateFocusAppearance can now be called directly from focus(), but it can also be called when a timer fires. This timer gets set
42103 up when an element attaches, and its already been focused by the focus method. We have to use a timer, because updateFocusAppearance can cause
42104 a layout to happen, and we don't want that to happen in the middle of attach().
42106 * bindings/objc/DOM.mm: (-[DOMElement isFocused]): Added SPI for autofill.
42107 * bindings/objc/DOMPrivate.h:
42110 (WebCore::Element::Element): Initializes timer and needFocusAppearanceUpdate bool.
42111 (WebCore::Element::attach): Checks needsFocusAppearanceUpdate, and if the node is focused, then starts the timer.
42112 (WebCore::Element::focus): Updated to check supportsFocus before calling setFocusNode,
42113 and only requiring the element to be focusable now before updating focus appearance.
42114 (WebCore::Element::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
42115 (WebCore::Element::updateFocusAppearanceTimerFired): Stops the timer, and if the element is focusable, calls updateFocusAppearance.
42116 (WebCore::Element::stopUpdateFocusAppearanceTimer): Cancels timer, and setsNeedsFocusAppearanceUpdate(false).
42117 (WebCore::Element::detach): Calls stopUpdateFocusAppearanceTimer.
42118 (WebCore::Element::blur): ditto.
42120 (WebCore::Element::needsFocusAppearanceUpdate): Added so the timer only fires when focus() methods have caused an element to be focused.
42121 (WebCore::Element::setNeedsFocusAppearanceUpdate): Added so focus methods can set this flag.
42123 * dom/Node.h: (WebCore::Node::supportsFocus): Added. Base class just calls isFocusable.
42124 * html/HTMLAnchorElement.h: Added supportsFocus.
42125 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::supportsFocus): Added. Checks for the case where stylesheets haven't loaded yet,
42126 so we can still focus the node without a renderer, and when it gets a renderer, we'll update the focus appearance.
42127 * html/HTMLGenericFormElement.h: (WebCore::HTMLGenericFormElement::supportsFocus): ditto.
42128 * html/HTMLGenericFormElement.cpp: Removed include of Document.h since this is now in the header.
42130 * html/HTMLInputElement.cpp:
42131 (WebCore::HTMLInputElement::focus): Updated to check supportsFocus before calling setFocusNode,
42132 and only requiring the element to be focusable now before updating focus appearance.
42133 (WebCore::HTMLInputElement::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
42134 * html/HTMLInputElement.h:
42136 * html/HTMLTextAreaElement.cpp:
42137 (WebCore::HTMLTextAreaElement::focus): Updated to check supportsFocus before calling setFocusNode,
42138 and only requiring the element to be focusable now before updating focus appearance.
42139 (WebCore::HTMLTextAreaElement::updateFocusAppearance): Added. Separates the selection, and the scrolling from focusing the node.
42140 * html/HTMLTextAreaElement.h:
42142 2006-07-19 Justin Garcia <justin.garcia@apple.com>
42146 <rdar://problem/4631972>
42147 REGRESSION: Mail crashes when pasting entire contents of http://www.apple.com/support/ into a new mail message
42149 * dom/Position.cpp:
42150 (WebCore::Position::upstream): Deployed isBlock and enclosingBlock.
42151 (WebCore::Position::downstream): Ditto.
42152 * editing/CompositeEditCommand.cpp:
42153 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary): Ditto.
42154 * editing/htmlediting.cpp:
42155 (WebCore::canHaveChildrenForEditing): Added !iframe.
42156 (WebCore::isBlock): Added, returns !node->renderer()->isInline()
42157 (WebCore::enclosingBlock): Added.
42158 * editing/htmlediting.h:
42160 2006-07-19 Anders Carlsson <acarlsson@apple.com>
42164 <rdar://problem/4631272> REGRESSION: Crash tabbing out of hostname field at autorestore.apple.com
42166 * bridge/mac/FrameMac.mm:
42167 (WebCore::FrameMac::nextKeyViewInFrame):
42168 Take into account that focus handlers can cause a node's renderer to be destroyed.
42170 2006-07-19 David Hyatt <hyatt@apple.com>
42172 Fix for 4638376. The 1x1 solid color image optimization was broken when
42173 I re-architected image. This patch restores the optimization for CG. Cairo
42174 will still need the optimization.
42178 WARNING: NO TEST CASES ADDED OR CHANGED (need test cases still)
42180 * platform/Image.cpp:
42181 (WebCore::Image::Image):
42182 (WebCore::Image::invalidateData):
42183 (WebCore::Image::cacheFrame):
42184 * platform/Image.h:
42185 (WebCore::Image::setIsPDF):
42186 * platform/cairo/ImageCairo.cpp:
42187 (WebCore::Image::checkForSolidColor):
42188 * platform/mac/ImageMac.mm:
42189 (WebCore::Image::initNativeData):
42190 (WebCore::Image::invalidateNativeData):
42191 (WebCore::Image::checkForSolidColor):
42192 (WebCore::Image::draw):
42193 (WebCore::Image::drawTiled):
42195 2006-07-19 Justin Garcia <justin.garcia@apple.com>
42199 <rdar://problem/4613519>
42200 REGRESSION: Pasting text in native text area inserts text one character before it should (9527)
42202 * editing/InsertParagraphSeparatorCommand.cpp:
42203 (WebCore::InsertParagraphSeparatorCommand::doApply): Turn into an InsertLineBreakCommand instead of bailing
42204 if the enclosingBlockFlowElement doesn't have a parent.
42206 2006-07-19 David Harrison <harrison@apple.com>
42208 Reviewed by Tim Hatcher.
42210 <rdar://problem/4629307> -[DOMRange markupString] does not include the initial table element if it is at the beginning of the range
42211 <rdar://problem/4062218> pasting in contents of web.apple.com strips off the <table> element from the first table
42213 Better patch than previous checkin.
42215 * test: editing/pasteboard/paste-table-003.html
42217 * editing/markup.cpp:
42218 (WebCore::createMarkup):
42219 Make sure to include the table when including a tbody.
42221 === Safari-521.19 ===
42223 2006-07-19 David Harrison <harrison@apple.com>
42225 Reviewed by Tim Hatcher.
42227 <rdar://problem/4629307> -[DOMRange markupString] does not include the initial table element if it is at the beginning of the range
42229 No test case as this can only be reproduced through ObjC APIs.
42231 * editing/markup.cpp:
42232 (WebCore::createMarkup):
42233 Adjust the range for ancestor markup handling when main loop skips first node.
42235 2006-07-18 David Hyatt <hyatt@apple.com>
42237 Fix for radar 4611287, make resizable text fields opt-in rather than
42238 opt-out. Open source users will need to write the pref into their defaults
42239 to see the resizers on textareas now.
42241 Reviewed by mjs and adele
42243 * WebCore.xcodeproj/project.pbxproj:
42244 * bridge/mac/WebCoreSettings.mm:
42245 (-[WebCoreSettings setTextAreasAreResizable:]):
42246 * css/cssparser.cpp:
42247 (WebCore::CSSParser::parseValue):
42248 * css/cssstyleselector.cpp:
42249 (WebCore::CSSStyleSelector::applyProperty):
42252 2006-07-18 Anders Carlsson <acarlsson@apple.com>
42256 http://bugs.webkit.org/show_bug.cgi?id=9959
42257 REGRESSION: iframes stop rendering after 200th one on successive reloads
42259 * html/HTMLFrameElement.cpp:
42260 (WebCore::HTMLFrameElement::attach):
42261 (WebCore::HTMLFrameElement::close):
42262 * html/HTMLIFrameElement.cpp:
42263 (WebCore::HTMLIFrameElement::insertedIntoDocument):
42264 (WebCore::HTMLIFrameElement::willRemove):
42265 Remove calls to incrementFrameCount and decrementFrameCount.
42268 (WebCore::Frame::Frame):
42269 Call incrementFrameCount here.
42271 (WebCore::Frame::~Frame):
42272 Call disconnectOwnerElement.
42274 (WebCore::Frame::disconnectOwnerElement):
42275 Call decrementFrameCount here.
42277 2006-07-18 Alexey Proskuryakov <ap@nypop.com>
42281 Fix http://bugs.webkit.org/show_bug.cgi?id=9013
42282 Let correct CSS custom cursor declarations parse
42284 * css/cssparser.cpp:
42285 (WebCore::CSSParser::parseValue): Ignore any values following a custom CSS cursor URI, instead of
42286 requiring that it is the only one in the list (which is actually illegal, according to the spec).
42287 This is only a temporary hack, with a real implementation to follow in bug 6001/6002.
42289 * manual-tests/custom-cursors.html: Added a test for this issue.
42290 * manual-tests/resources/helpCursor.tiff: A cursor image used in the test.
42292 2006-07-18 Timothy Hatcher <timothy@apple.com>
42294 Reviewed by Anders.
42296 <rdar://problem/4636216> NetNewsWire fails to launch on 9A224 - missing symbols
42298 WebCore needs to add -sub_library libobjc to maintain
42299 backwards compatibility with binaries linked with WebKit
42300 before JavaScriptCore moved out of WebKit.
42302 * WebCore.xcodeproj/project.pbxproj:
42304 2006-07-18 Mitz Pettel <opendarwin.org@mitzpettel.com>
42306 Reviewed by Justin.
42308 - fix http://bugs.webkit.org/show_bug.cgi?id=9978
42309 REGRESSION (r12949-r12988): Clicking the first letter on a line places the caret at the end of the previous line
42311 Test: editing/selection/click-start-of-line.html
42313 * rendering/RenderText.cpp:
42314 (WebCore::RenderText::positionForCoordinates): Changed to return downstream
42315 affinity if the x coordinate is to the left of the middle of the first character
42318 2006-07-18 Anders Carlsson <acarlsson@apple.com>
42322 http://bugs.webkit.org/show_bug.cgi?id=9695
42323 <rdar://problem/4614085>
42324 TOT REGRESSION: NativeTextArea: Text area does not respond to Cmd-UpArrow/Cmd-DownArrow (9695)
42326 * editing/SelectionController.cpp:
42327 (WebCore::SelectionController::modifyExtendingRightForward):
42328 (WebCore::SelectionController::modifyMovingRightForward):
42329 (WebCore::SelectionController::modifyExtendingLeftBackward):
42330 (WebCore::SelectionController::modifyMovingLeftBackward):
42331 If the caret is inside an editable region, the beginning/end of the document should actually be the
42332 beginning/end of the editable region.
42334 2006-07-17 Tim Omernick <timo@apple.com>
42336 Reviewed by Maciej.
42338 <rdar://problem/4612079> need a way to prevent pages from scrolling to reveal elements that are focused
42341 * bridge/mac/WebCoreFrameBridge.h:
42342 * bridge/mac/WebCoreFrameBridge.mm:
42343 (-[WebCoreFrameBridge setProhibitsScrolling:]):
42345 (WebCore::Frame::prohibitsScrolling):
42346 (WebCore::Frame::setProhibitsScrolling):
42348 * page/FramePrivate.h:
42349 (WebCore::FramePrivate::FramePrivate):
42350 * page/FrameView.cpp:
42351 (WebCore::FrameView::scrollPointRecursively):
42352 (WebCore::FrameView::setContentsPos):
42353 * page/FrameView.h:
42354 * platform/ScrollView.h:
42356 2006-07-17 Maciej Stachowiak <mjs@apple.com>
42358 Reviewed by Dave Harrison.
42360 - fixed <rdar://problem/4618089> Blot crashes when I paste in all the contents of http://www.apple.com/startpage/
42362 * editing/htmlediting.cpp:
42363 (WebCore::editingIgnoresContent):
42365 2006-07-17 Justin Garcia <justin.garcia@apple.com>
42369 <rdar://problem/4621728>
42370 REGRESSION: Selecting by dragging down creates selection in wrong direction, with certain steps
42371 <rdar://problem/4604932>
42372 REGRESSION: Dragging too far left on a line will select all lines above it.
42374 No layout test because of 9980.
42376 * rendering/RenderBlock.cpp:
42377 (WebCore::RenderBlock::positionForCoordinates): Don't return positions inside editable roots
42378 for coordinates outside those roots, except for coordinates outside a document that is entirely
42381 2006-07-17 Timothy Hatcher <timothy@apple.com>
42385 <rdar://problem/4635281> JSCanvasRenderingContext2D::drawImage needs to initialize the exception code to zero
42387 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
42388 (WebCore::JSCanvasRenderingContext2D::drawImage): initialize ec to zero
42389 * html/CanvasRenderingContext2D.cpp:
42390 (WebCore::CanvasRenderingContext2D::drawImage): initialize ec before earlier return
42392 2006-07-17 Timothy Hatcher <timothy@apple.com>
42394 Reviewed by Maciej.
42396 <rdar://problem/4634874> WebScriptObject and WebUndefined are no longer defined by WebKit
42398 Moves WebScriptObject and WebUndefined to WebCore.
42401 * WebCore.xcodeproj/project.pbxproj:
42402 * bindings/objc/DOM.mm:
42403 * bindings/objc/DOMCore.h:
42404 * bindings/objc/DOMInternal.mm:
42405 * bindings/objc/DOMUtility.mm:
42406 * bindings/objc/WebScriptObject.mm: Added.
42407 (+[WebUndefined allocWithZone:]):
42408 (-[WebUndefined initWithCoder:]):
42409 (-[WebUndefined encodeWithCoder:]):
42410 (-[WebUndefined copyWithZone:]):
42411 * bindings/objc/WebScriptObjectPrivate.h: Added.
42412 * bridge/mac/FrameMac.mm:
42413 * bridge/mac/WebCoreScriptDebugger.mm:
42415 2006-07-17 David Hyatt <hyatt@apple.com>
42417 Back out the fix for 5564, since it turns out font:x-small; is a pretty
42418 prominent IE-specific CSS hack. Because Web sites rely on IE's incorrect
42419 font parsing as a means of also correcting IE's incorrect font size rules.
42421 This fixes Yahoo.com.
42425 * css/cssparser.cpp:
42426 (WebCore::CSSParser::parseFont):
42428 2006-07-17 Justin Garcia <justin.garcia@apple.com>
42432 <rdar://problem/4618389> REGRESSION: After applying a link to the last word of a sentence, a new selection is created at the start of the sentence
42434 * dom/Document.cpp:
42435 (WebCore::Document::updateSelection):
42437 2006-07-17 Maciej Stachowiak <mjs@apple.com>
42441 <rdar://problem/4604946> REGRESSION: 'checkboxRef.checked = true' fires onchange event in Leopard
42443 * html/HTMLInputElement.cpp:
42444 (WebCore::HTMLInputElement::setChecked):
42445 (WebCore::HTMLInputElement::preDispatchEventHandler):
42446 * html/HTMLInputElement.h:
42448 2006-07-16 David Kilzer <ddkilzer@kilzer.net>
42452 - fix for http://bugs.webkit.org/show_bug.cgi?id=9954
42453 REGRESSION: document.dir should return empty string in <head>
42455 Test: fast/dom/document-dir-property.html
42457 * bindings/js/kjs_html.cpp:
42458 (KJS::JSHTMLDocument::getValueProperty): Return an empty string instead of an
42459 undefined value for an unset document.dir property.
42461 2006-07-16 David Kilzer <ddkilzer@kilzer.net>
42465 * dom/NodeFilter.idl:
42466 Removed "No newline at end of file" that snuck in as part of the "apply patch" process.
42467 * manual-tests/input-empty-on-focus.html:
42468 Removed "Property changes" that snuck in as part of the "apply patch" process.
42470 2006-07-16 Darin Adler <darin@apple.com>
42472 Reviewed by John Sullivan.
42474 - fix http://bugs.webkit.org/show_bug.cgi?id=9943
42475 <rdar://problem/4590613>
42476 REGRESSION (Tiger-TOT): menus are offset to the right at http://movies.aol.com/movie-photo-bts/superman-returns
42478 The problem turns out to be the fact that body.offsetLeft is returning a non-zero value.
42479 I have no idea why the menus worked in Tiger Safari, because body.offsetLeft behavior has not changed.
42480 Presumably some other bug that we fixed had been compensating.
42482 Test: fast/html/body-offset-properties.html
42484 * rendering/RenderObject.cpp:
42485 (WebCore::RenderObject::offsetLeft): Always return 0 for any object without an offsetParent.
42486 (WebCore::RenderObject::offsetTop): Ditto.
42487 (WebCore::RenderObject::offsetParent): Return 0 for the body (treat as a special case).
42489 2006-07-16 Beth Dakin <bdakin@apple.com>
42491 Reviewed by Maciej.
42493 Fix for <rdar://problem/4616595> REGRESSION: Problems with world
42494 clock widget clock hand motion on 9A211 + 4604574
42496 The second hand on the widget was jiggling because the rotation was
42497 messing up the use of the affine transformation matrix while
42498 rounding to pixel boundaries in device space. We are mainly
42499 concerned with rounding to pixel boundaries with the scale in mind,
42500 so this patch extracts the scale to device space from the matrix,
42501 and rounds to pixel boundaries using only the scale. This doesn't
42502 seem like it is a perfect solution, but it definitely solves the
42503 immediate problem. We will probably need to re-address what should
42504 happen to avoid pixel cracks with rotations at non-integral scale
42507 * platform/cg/GraphicsContextCG.cpp:
42508 (WebCore::GraphicsContext::roundToDevicePixels):
42510 2006-07-15 Darin Adler <darin@apple.com>
42512 - fix mistake from fix for 8952 that was breaking layout tests
42514 * editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved):
42515 Justin was right! I changed the behavior of the function by accident. Changed it
42516 back so that it doesn't blow away the selection on the DOM side in the case where
42519 I will write 100 times on the blackboard: "When Justin says something about editing,
42520 assume he is right."
42522 2006-07-15 Darin Adler <darin@apple.com>
42524 - try to fix Windows build
42526 * WebCore.vcproj/WebCore/WebCore.vcproj: Added StreamingTextDecoderICU.cpp/h.
42528 2006-07-15 Darin Adler <darin@apple.com>
42530 Reviewed by John Sullivan.
42532 - fix http://bugs.webkit.org/show_bug.cgi?id=8952
42533 <rdar://problem/4575185>
42534 REGRESSION: crash on drag of highlighted Google custom home page modules
42536 Test: fast/dynamic/move-node-with-selection.html
42538 * editing/SelectionController.cpp: (WebCore::SelectionController::nodeWillBeRemoved):
42539 Call updateRendering before calling clearSelection(), since it's important to do any
42540 work beforehand, and there are calls inside clearSelection that will indirectly do an
42541 updateRendering. Also change code to make fewer assumptions about object lifetime.
42543 2006-07-15 Darin Adler <darin@apple.com>
42545 Reviewed by John Sullivan.
42547 - fix http://bugs.webkit.org/show_bug.cgi?id=8587
42548 <rdar://problem/4631844>
42549 REGRESSION: {display:list-item} on items outside an ol or ul element no longer causes incremental numbering
42551 Test: fast/lists/numeric-markers-outside-list.html
42553 * rendering/RenderListItem.cpp: (WebCore::previousListItem):
42554 Look for list items, even when we're outside any list.
42556 2006-07-15 Adele Peterson <adele@apple.com>
42560 - Fix for <rdar://problem/4593970> REGRESSION (NativeTextField): autofill menu disappears after typing a 2nd character
42562 This was caused by composite editing commands, (like typing or pasting) that include a DeleteCommand, being
42563 interpreted by the form delegate as an actual delete. This fix doesn't notify the form delegate if the deletion is
42564 part of an editing command to replace the selected text.
42566 * editing/DeleteSelectionCommand.h: Added m_replace to keep track of whether this deletion is
42567 part of a composite command to replace the text being deleted.
42568 * editing/DeleteSelectionCommand.cpp:
42569 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Initialize m_replace.
42570 (WebCore::DeleteSelectionCommand::doApply): Only notify the form delegate of the deletion if the text is not being replaced.
42571 * editing/CompositeEditCommand.h:
42572 * editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::deleteSelection):
42573 Added replace argument to construct DeleteSelectionCommand.
42575 * editing/InsertTextCommand.cpp: (WebCore::InsertTextCommand::input): Call deleteSelection with replace argument.
42576 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::doApply): ditto.
42578 2006-07-15 Geoffrey Garen <ggaren@apple.com>
42580 Reviewed by Maciej, tweaked to match Darin's patch.
42582 - Fixed <rdar://problem/4631837> REGRESSION: Reproducible crash on
42583 FCKeditor demo (9911)
42585 * WebCore.xcodeproj/project.pbxproj:
42586 * bindings/js/kjs_html.cpp:
42587 (KJS::JSHTMLDocument::putValueProperty): Check for a null body element before
42588 forwarding the put request to it. I confirmed that no other parts of the
42589 file use 'body' or 'bodyElement' without checking for null.
42591 Also, use 'body' rather than 'bodyElement' because dir can bet set on
42592 any element, not just HTMLBodyElement.
42594 2006-07-15 Darin Adler <darin@apple.com>
42598 - fix http://bugs.webkit.org/show_bug.cgi?id=8871
42599 <rdar://problem/4575417>
42600 REGRESSION: Pressing Enter/Return in a text input removes the selected text
42602 - fix http://bugs.webkit.org/show_bug.cgi?id=9743
42603 <rdar://problem/4614228>
42604 REGRESSION: crash dispatching JavaScript-created keyboard event to input element
42606 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::doTextFieldCommandFromEvent):
42607 Add a null check to fix the crash, and a FIXME explaining why this is not necessarily
42608 enough for the future.
42610 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
42611 Consume Enter key keypress events even if the element is not in a form.
42613 * platform/mac/KeyEventMac.mm: (WebCore::keyIdentifierForKeyEvent): Added \n to the
42614 characters that turn into "Enter". Actual keyboard events always are \r or \003 on
42615 the Macintosh, but in layout tests we can use \n, and everything other than the
42616 code path here works, so worth fixing.
42618 2006-07-15 Darin Adler <darin@apple.com>
42620 Reviewed by John Sullivan.
42622 - fix http://bugs.webkit.org/show_bug.cgi?id=9883
42623 <rdar://problem/4631821>
42624 REGRESSION: NativePopups don't work correctly in some forum software
42626 Test: fast/forms/select-selected.html
42628 * rendering/RenderMenuList.h:
42629 * rendering/RenderMenuList.cpp:
42630 (WebCore::RenderMenuList::updateFromElement): Added code to map the selected option
42631 index to a list index before using it to index into the list.
42632 (WebCore::RenderMenuList::showPopup): Added code to map the selection option index
42633 to a list index before passing it to the menu renderer.
42634 (WebCore::RenderMenuList::valueChanged): Added code to map the list index back to a
42635 option index before calling setSelectedIndex (that function takes an option index).
42637 2006-07-15 Darin Adler <darin@apple.com>
42639 Reviewed by John Sullivan.
42641 - fix http://bugs.webkit.org/show_bug.cgi?id=9928
42642 REGRESSION: Text Encoding menu inoperative (after gcc protocol build fix)
42644 * bindings/objc/DOM.mm:
42645 (-[DOMNode addEventListener:::]): Moved into DOMEventTarget category.
42646 (-[DOMNode removeEventListener:::]): Ditto.
42647 (-[DOMNode dispatchEvent:]): Ditto.
42649 * WebCore.xcodeproj/project.pbxproj: Allow Xcode to do its thing.
42651 2006-07-15 Maciej Stachowiak <mjs@apple.com>
42653 Reviewed by Anders.
42655 <rdar://problem/4632144> REGRESSION: table column tests failing as a result of very recent fix
42657 * rendering/RenderTable.cpp:
42658 (WebCore::RenderTable::addChild): columns and colgroups are valid children of a table too, not
42659 just table sections!
42661 2006-07-15 Anders Carlsson <acarlsson@apple.com>
42665 http://bugs.webkit.org/show_bug.cgi?id=9866
42666 <rdar://problem/4631561>
42667 REGRESSION: Repro crash from mangleme using iframe, only from server.
42669 * html/HTMLIFrameElement.cpp:
42670 (WebCore::HTMLIFrameElement::attach):
42671 Add null check for contentFrame() since content frames won't be created for invalid URLs.
42673 2006-07-14 Alexey Proskuryakov <ap@nypop.com>
42677 Fix http://bugs.webkit.org/show_bug.cgi?id=4195
42678 REGRESSION: KOI8-U encoding no longer supported.
42681 * http/tests/misc/BOM-override.pl
42682 * http/tests/misc/BOM-override-script.html
42683 * fast/encoding/charset-koi8-u.html
42684 * fast/encoding/charset-x-nextstep.html
42686 Restored a TEC code path for encodings that are not supported by ICU (but which currently
42687 passes all layout tests even by itself with ICU disabled). A lot of refactoring is
42688 still needed - most importantly, round-tripping encoding names via CFStringEncoding
42689 makes little sense now.
42692 * bridge/mac/WebCoreTextDecoder.h: Removed.
42693 * bridge/mac/WebCoreTextDecoder.mm: Removed.
42694 WebCoreTextDecoder was not used anywhere since WebTextView was moved into WebCore.
42696 * loader/Decoder.cpp:
42697 (Decoder::Decoder):
42698 (Decoder::setEncodingName):
42700 Use StreamingTextDecoder::create().
42702 * platform/StreamingTextDecoder.cpp:
42703 (WebCore::StreamingTextDecoder::create):
42704 (WebCore::StreamingTextDecoder::~StreamingTextDecoder):
42705 * platform/StreamingTextDecoder.h:
42706 StreamingTextDecoder is just an abstract interface to implementations now.
42708 * platform/StreamingTextDecoderICU.cpp: Added.
42709 (WebCore::StreamingTextDecoderICU::StreamingTextDecoderICU):
42710 (WebCore::StreamingTextDecoderICU::~StreamingTextDecoderICU):
42711 (WebCore::StreamingTextDecoderICU::releaseICUConverter):
42712 (WebCore::StreamingTextDecoderICU::textEncodingSupported):
42713 (WebCore::StreamingTextDecoderICU::convertUTF16):
42714 (WebCore::StreamingTextDecoderICU::convertIfASCII):
42715 (WebCore::StreamingTextDecoderICU::createICUConverter):
42716 (WebCore::StreamingTextDecoderICU::appendOmittingBOM):
42717 (WebCore::StreamingTextDecoderICU::convertUsingICU):
42718 (WebCore::StreamingTextDecoderICU::convert):
42719 (WebCore::StreamingTextDecoderICU::toUnicode):
42720 (WebCore::StreamingTextDecoderICU::fromUnicode):
42721 * platform/StreamingTextDecoderICU.h: Added.
42722 Renamed from StreamingTextDecoder; added a way to tell whether the encoding is actually
42723 supported by the decoder; minor cleanup.
42725 * platform/TextEncoding.cpp:
42726 (WebCore::TextEncoding::effectiveEncoding): Moved from StreamingTextDecoder.
42727 (WebCore::TextEncoding::toUnicode): Use StreamingTextDecoder::create().
42728 (WebCore::TextEncoding::fromUnicode): Moved to StreamingTextDecoderICU.
42730 * platform/TextEncoding.h: Changed __APPLE__ to PLATFORM(MAC); added effectiveEncoding().
42732 * platform/mac/StreamingTextDecoderMac.cpp: Added.
42733 (WebCore::StreamingTextDecoderMac::StreamingTextDecoderMac):
42734 (WebCore::StreamingTextDecoderMac::~StreamingTextDecoderMac):
42735 (WebCore::StreamingTextDecoderMac::releaseTECConverter):
42736 (WebCore::StreamingTextDecoderMac::textEncodingSupported):
42737 (WebCore::StreamingTextDecoderMac::convertUTF16):
42738 (WebCore::StreamingTextDecoderMac::convertIfASCII):
42739 (WebCore::StreamingTextDecoderMac::createTECConverter):
42740 (WebCore::StreamingTextDecoderMac::appendOmittingBOM):
42741 (WebCore::StreamingTextDecoderMac::convertOneChunkUsingTEC):
42742 (WebCore::StreamingTextDecoderMac::convertUsingTEC):
42743 (WebCore::StreamingTextDecoderMac::convert):
42744 (WebCore::StreamingTextDecoderMac::toUnicode):
42745 (WebCore::StreamingTextDecoderMac::fromUnicode):
42746 * platform/mac/StreamingTextDecoderMac.h: Added.
42747 (WebCore::StreamingTextDecoderMac::convert):
42748 This is a TEC+CFString code path for decoding, basically restored from a year-old revision.
42750 * platform/mac/TextEncodingMac.cpp: Removed. Code moved to StreamingTextDecoderMac.
42752 * WebCore.xcodeproj/project.pbxproj:
42754 === Safari-521.17 ===
42756 2006-07-14 Timothy Hatcher <timothy@apple.com>
42758 <rdar://problem/4623957> SWB: gcc-5412 (new?) objc warning causes WebCore project failure
42760 Made a DOMNode category in DOMEvents.h that lets DOMNode conform to the
42761 DOMEventTarget protocol that works with GCC 5412.
42763 Removed forward declarations of WebCoreWidgetHolder and imported WebCoreWidgetHolder.h.
42765 Removed all <Cocoa/Cocoa.h> and <Foundation/Foundation.h> imports in other headers,
42766 we import <Cocoa/Cocoa.h> in the prefix header for ObjC.
42768 * WebCore.xcodeproj/project.pbxproj:
42769 * bindings/objc/DOMCore.h:
42770 * bindings/objc/DOMEvents.h:
42771 * bridge/mac/FormDataMac.h:
42772 * bridge/mac/WebCoreAXObject.h:
42773 * bridge/mac/WebCoreCache.h:
42774 * bridge/mac/WebCoreEncodings.h:
42775 * bridge/mac/WebCoreFrameBridge.h:
42776 * bridge/mac/WebCoreFrameNamespaces.h:
42777 * bridge/mac/WebCoreJavaScript.h:
42778 * bridge/mac/WebCorePageBridge.h:
42779 * bridge/mac/WebCorePageState.h:
42780 * bridge/mac/WebCoreResourceLoader.h:
42781 * bridge/mac/WebCoreScriptDebugger.h:
42782 * bridge/mac/WebCoreSettings.h:
42783 * bridge/mac/WebCoreStringTruncator.h:
42784 * bridge/mac/WebCoreStringTruncator.mm:
42785 * bridge/mac/WebCoreTextDecoder.h:
42786 * bridge/mac/WebDashboardRegion.h:
42787 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
42788 * platform/mac/CookieJar.mm:
42789 * platform/mac/DeprecatedStringMac.mm:
42790 * platform/mac/FontDataMac.mm:
42791 * platform/mac/FoundationExtras.h:
42792 * platform/mac/TextBoundaries.mm:
42793 * platform/mac/WebCoreHistory.h:
42794 * platform/mac/WebCoreHistory.m:
42795 * platform/mac/WebCoreKeyGenerator.h:
42796 * platform/mac/WebCoreTextArea.h:
42797 * platform/mac/WebCoreTextField.h:
42798 * platform/mac/WebCoreTextRenderer.h:
42799 * platform/mac/WebCoreView.h:
42800 * platform/mac/WebCoreWidgetHolder.h:
42802 2006-07-14 Geoffrey Garen <ggaren@apple.com>
42804 Reviewed by Maciej.
42806 - Updated ScriptInterpreter to work with Interpreter ref-counting in
42809 (KJS::ScriptInterpreter::~ScriptInterpreter): Now protected to catch
42812 2006-07-14 Anders Carlsson <acarlsson@apple.com>
42814 Reviewed by Adele and Justin.
42816 http://bugs.webkit.org/show_bug.cgi?id=9658
42817 <rdar://problem/4613948>
42818 REGRESSION: Check Spelling does not work in textarea elements
42820 * bridge/mac/FrameMac.mm:
42821 (WebCore::FrameMac::advanceToNextMisspelling):
42822 Don't use setStartBefore or setEndAfter on the search range because for shadow trees, there
42823 is no notion of before and after. Instead, use setStart and setEnd and pass in the start and end
42824 indices respectively.
42827 (WebCore::Range::checkNodeBA):
42828 Allow range operations on shadow trees.
42830 * manual-tests/form-element-spelling.html: Added.
42832 2006-07-14 Beth Dakin <bdakin@apple.com>
42836 Fix for <rdar://problem/4621660> REGRESSION: Safari crashing in
42837 WebCore::FrameView::updateOverflowStatus
42839 m_viewportRenderer is never initialized for framesets, and it
42840 shouldn't be. So we just need to nil-check for it in
42841 updateOverflowStatus() and return early.
42843 * page/FrameView.cpp:
42844 (WebCore::FrameView::updateOverflowStatus): Nil check.
42846 2006-07-14 Adele Peterson <adele@apple.com>
42850 Backing out fix for <rdar://problem/4604703>
42851 REGRESSION (NativeTextField): Focus is not removed from password field after I ctrl-click into a different field
42853 Darin had a better fix in WebKit for this.
42855 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::sendContextMenuEvent):
42857 2006-07-14 Adele Peterson <adele@apple.com>
42861 - Fix for <rdar://problem/4614054> REGRESSION: Safari submits forms when the Return key is hit to complete inline inputs
42863 * page/Frame.h: (WebCore::Frame::inputManagerHasMarkedText): Added.
42864 * bridge/mac/FrameMac.h: ditto.
42865 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::inputManagerHasMarkedText): Added. Asks the input manager if there's marked text.
42866 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): For text fields, don't submit the form on Enter
42867 if the input manager says there's marked text. I added this code for all text field paths. For widgets, WebCoreTextField.mm
42868 has code to deal with this case. But as we convert search, password, and isindex, they will need to do this check too.
42870 2006-07-14 Mitz Pettel <opendarwin.org@mitzpettel.com>
42874 - fix http://bugs.webkit.org/show_bug.cgi?id=9907
42875 REGRESSION (r15418): editing/pasteboard/paste-table-001 fails in pixel mode
42877 * rendering/RenderText.cpp:
42878 (WebCore::RenderText::caretRect): Fixed the calculation of the max/min allowed caret
42881 2006-07-14 Mitz Pettel <opendarwin.org@mitzpettel.com>
42885 - fix http://bugs.webkit.org/show_bug.cgi?id=9905
42886 REGRESSION (r15404-r15415): Repro crash when pressing delete in an empty editable div
42888 Test: editing/deleting/delete-at-start-or-end.html
42890 * editing/TypingCommand.cpp:
42891 (WebCore::TypingCommand::deleteKeyPressed): Added null check.
42892 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
42894 2006-07-14 David Kilzer <ddkilzer@kilzer.net>
42896 Reviewed by Geoffrey.
42898 - fix http://bugs.webkit.org/show_bug.cgi?id=9903
42899 Simplify logic in JSHTMLOptionsCollection::setLength() by using no-arg getNumber()
42901 No test cases since there is no change in functionality.
42903 * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
42904 (WebCore::JSHTMLOptionsCollection::setLength): Simplified logic by using the
42905 no-argument getNumber() method.
42907 2006-07-14 Geoffrey Garen <ggaren@apple.com>
42911 - Build fix: don't need BLOCK_OBJC_EXCEPTIONS because we already have
42912 one surrounding this function, and the nested one makes the compiler
42913 think our local variable is volatile (seems like a compiler bug to me).
42915 * bridge/mac/FrameMac.mm:
42916 (WebCore::FrameMac::sendContextMenuEvent):
42918 2006-07-14 Timothy Hatcher <timothy@apple.com>
42920 Reviewed by Maciej.
42922 Make JavaScriptCore a public framework. Adjusted the paths.
42924 * WebCore.xcodeproj/project.pbxproj:
42926 2006-07-14 Maciej Stachowiak <mjs@apple.com>
42930 - fixed <rdar://problem/4567031> REGRESSION: Crash at WebCore::RenderBlock::createLineBoxes (seems to be a security hole?)
42932 I also fixed all the similar crash / assertion failure cases I could think of.
42935 (WebCore::Node::nextRendererWithSameParent): Helper function for some of the above.
42937 * rendering/RenderTable.cpp:
42938 (WebCore::RenderTable::addChild): Don't allow inserting forms when not in
42939 an HTML document, since we don't need that quirk and because parsing won't
42940 do certain render tree fixups. Also watch out for case when inserting before
42941 the renderer of a misnested child.
42942 * rendering/RenderTableRow.cpp:
42943 (WebCore::RenderTableRow::addChild): ditto
42944 * rendering/RenderTableSection.cpp:
42945 (WebCore::RenderTableSection::addChild): ditto
42947 2006-07-13 Adele Peterson <adele@apple.com>
42949 Reviewed by Maciej.
42951 - Fix for <rdar://problem/4604703>
42952 REGRESSION (NativeTextField): Focus is not removed from password field after I ctrl-click into a different field
42955 * manual-tests/password-ctrl-click-lose-focus.html: Added.
42957 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::sendContextMenuEvent):
42958 If we're about to set a selection in the current view, make sure its the first responder.
42959 In this case, this will cause the password field to resign first responder at the right time.
42961 2006-07-13 Mitz Pettel <opendarwin.org@mitzpettel.com>
42965 - fix http://bugs.webkit.org/show_bug.cgi?id=9670
42966 REGRESSION: RTL white-space:pre-wrap text is offset to the right
42968 Test: fast/text/international/rtl-white-space-pre-wrap.html
42970 * rendering/RenderText.cpp:
42971 (WebCore::RenderText::caretRect): Fixed LTR case and added the RTL case
42972 of clipping the caret position to the text box when the caret is after
42973 the trailing space of an autowrapped line.
42974 * rendering/bidi.cpp:
42975 (WebCore::RenderBlock::computeHorizontalPositionsForLine): Changed to truncate-
42976 to-fit the logically last text box if it contains the trailing spaces of an
42978 (WebCore::RenderBlock::bidiReorderLine): Remember the logically last text run.
42979 In the case of autowrapped text with white space that overflows beyond the line,
42980 the last text run is the one containing the overflowing white space.
42981 (WebCore::RenderBlock::findNextLineBreak): Split overflowing white space on a
42982 line that autowraps only after white space into a separate text run.
42984 2006-07-13 David Harrison <harrison@apple.com>
42986 Reviewed by Dave Hyatt.
42988 <rdar://problem/4624203> -webkit-highlight should be behind images
42990 * rendering/RenderImage.cpp:
42991 (WebCore::RenderImage::paint):
42992 * rendering/RenderListMarker.cpp:
42993 (WebCore::RenderListMarker::paint):
42994 * rendering/RenderWidget.cpp:
42995 (WebCore::RenderWidget::paint):
42996 Call custom highlighter before painting the image, marker, or widget.
42998 2006-07-13 David Harrison <harrison@apple.com>
43000 Reviewed by Justin and Levi.
43002 <rdar://problem/4620743> REGRESSION: Option-Delete doesn't delete words during typing
43005 editing/deleting/delete-by-word-001.html
43006 editing/deleting/delete-by-word-002.html
43008 * editing/TypingCommand.cpp:
43009 (WebCore::TypingCommand::deleteKeyPressed):
43010 (WebCore::TypingCommand::forwardDeleteKeyPressed):
43011 (WebCore::TypingCommand::doApply):
43012 * editing/TypingCommand.h:
43013 Delete and forward delete to use specified granularity.
43014 Undo of delete and forward delete to select what had been deleted (non-char granularity only).
43017 (WebCore::Frame::setSelection):
43018 Close typing and end style even if selection is not changing.
43020 Remove unused setSelection parameter keepTypingStyle.
43022 2006-07-12 Levi Weintraub <lweintraub@apple.com>
43026 <rdar://problem/4622763> Deleting from beginning of paragraph following a table deletes rather than selects the table
43028 * editing/DeleteSelectionCommand.cpp:
43029 (WebCore::DeleteSelectionCommand::initializeStartEnd): Added selection expansion for HRs.
43030 (WebCore::DeleteSelectionCommand::initializePositionData): Now uses enclosingBlockFlowOrTableElement
43031 instead of enclosingBlockFlowElement.
43032 (WebCore::DeleteSelectionCommand::removeNode): Use to identify that we need a placeholder
43033 when the start or end block is removed.
43034 (WebCore::DeleteSelectionCommand::handleGeneralDelete): Added check for canHaveChildrenForEditing
43035 to keep things like HRs from being given children.
43036 (WebCore::DeleteSelectionCommand::doApply): Switched to use member variable for needPlaceholder.
43037 * editing/DeleteSelectionCommand.h: Made needPlaceholder a member variable.
43038 * editing/TypingCommand.cpp:
43039 (WebCore::TypingCommand::deleteKeyPressed): Fixed selection bug for tables and open typing commands.
43040 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
43041 * editing/htmlediting.cpp:
43042 (WebCore::editingIgnoresContent): Added check for HRs, since it's not considered a widget.
43043 * editing/visible_units.cpp:
43044 (WebCore::startOfParagraph): Fix for HRs and tables.
43045 (WebCore::endOfParagraph): Ditto.
43047 2006-07-13 Alexey Proskuryakov <ap@nypop.com>
43051 - fix http://bugs.webkit.org/show_bug.cgi?id=9880
43052 Memory leaks running DOM-Hanoi
43054 No change in behavior, thus no test included.
43056 * bridge/mac/FrameMac.mm:
43057 (WebCore::FrameMac::setStatusBarText): Use a local autorelease pool to release the temporaries -
43058 the test runs non-stop, and the enclosing pool doesn't get a chance to be drained.
43060 2006-07-12 Mitz Pettel <opendarwin.org@mitzpettel.com>
43064 - fix http://bugs.webkit.org/show_bug.cgi?id=9862
43065 REGRESSION: GMail: Crash in RenderView::repaintViewRectangle when spoofing as FF
43066 - see also <rdar://problem/4622407>
43068 Test: fast/frames/repaint-display-none-crash.html
43070 * rendering/RenderView.cpp:
43071 (WebCore::RenderView::repaintViewRectangle): Added null checking of the owner element's
43072 renderer, which can be null if the iframe is set to display:none.
43074 2006-07-12 Justin Garcia <justin.garcia@apple.com>
43078 <rdar://problem/4509393>
43079 selected DOM range starts with <object>, 0 offset but selection should include the <object>
43081 * editing/ReplaceSelectionCommand.cpp:
43082 (WebCore::ReplaceSelectionCommand::shouldMergeStart):
43083 Don't pull content out of a table cell.
43084 * editing/htmlediting.cpp:
43085 (WebCore::editingIgnoresContent): Added <select> nodes.
43086 (WebCore::rangeCompliantEquivalent): Convert [node, 0] positions to positionBeforeNode(node)
43087 for more types of nodes.
43088 * rendering/RenderContainer.cpp:
43089 (WebCore::RenderContainer::positionForCoordinates):
43090 Fix a crasher when right clicking on an anonymous table.
43092 2006-07-12 John Sullivan <sullivan@apple.com>
43094 Reviewed by Brady Eidson
43096 - fixed <rdar://problem/4611164> REGRESSION: Crash occurs when undoing a series of
43097 misspelled words (WebCore::RenderObject::repaint(bool)
43099 * dom/Document.cpp:
43100 (WebCore::Document::removeMarkers):
43101 put (it - markers.begin()) in a local variable before altering markers, in every case where this was
43102 happening. One of the cases like this was fixed a while back, but other cases were
43103 either missed at that time or crept in since.
43105 2006-07-13 Anders Carlsson <acarlsson@apple.com>
43107 Reviewed by Justin.
43109 http://bugs.webkit.org/show_bug.cgi?id=9663
43110 REGRESSION (r14948-r14956): Selection in text field remains highlighted when the text field loses focus
43112 * dom/Document.cpp:
43113 (WebCore::Document::updateSelection):
43114 Don't return early if the selection is empty.
43116 2006-07-12 Anders Carlsson <acarlsson@apple.com>
43120 <rdar://problem/4614656> REGRESSION: onpaste() handlers don't run for textarea elements
43122 * bridge/mac/FrameMac.mm:
43123 (WebCore::FrameMac::dispatchCPPEvent):
43124 If the element is a shadow node, dispatch the event to its real parent.
43126 * manual-tests/textarea-onpaste.html: Added.
43128 2006-07-12 Beth Dakin <bdakin@apple.com>
43130 Reviewed by Anders.
43132 Fix for layout test regressions after my check-in last night. Just
43133 a silly mistake where I should have asked if we were NOT printing
43134 instead of if we were in the listbox code.
43136 * WebCore.xcodeproj/project.pbxproj: Project file wars. Back to
43138 * platform/mac/ListBoxMac.mm:
43139 (itemTextRenderer): Inverted check.
43140 (groupLabelTextRenderer): Inverted check.
43142 2006-07-12 Darin Adler <darin@apple.com>
43144 Reviewed by Maciej.
43146 - fix http://bugs.webkit.org/show_bug.cgi?id=9806
43147 <rdar://problem/4622622>
43148 REGRESSION: Large rowspan causes WebKit to call abort()
43150 Test: fast/table/large-rowspan-crash.html
43152 * rendering/RenderTableSection.cpp:
43153 (WebCore::RenderTableSection::ensureRows):
43154 Use sizeof(RowStruct) instead of sizeof(int).
43155 Clearly we'll need something better to solve this completely.
43156 I expect another smaller, but still huge, value will still cause a problem.
43158 2006-07-12 Anders Carlsson <acarlsson@apple.com>
43160 Reviewed by Maciej.
43162 <rdar://problem/4586665> REGRESSION: autorestore.apple.com: Crashes Safari in WebCore::Widget::client() const
43164 * bridge/mac/FrameMac.h:
43165 Add focusCallResultedInViewBeingCreated argument.
43167 * bridge/mac/FrameMac.mm:
43168 (WebCore::FrameMac::nextKeyViewInFrame):
43169 If the call to focus() caused the node to get a native widget, set focusCallResultedInViewBeingCreated to true.
43171 (WebCore::FrameMac::nextKeyViewInFrameHierarchy):
43172 Don't reset the focus node if focusCallResultedInViewBeingCreated is true. Also, add magic to prevent setting
43173 a text field as the first responder if its field editor already is the current first responder.
43175 * page/FrameView.cpp:
43176 (WebCore::FrameView::handleMousePressEvent):
43177 In some cases, get the event target node again after dispatching the mouse event.
43179 2006-07-12 Beth Dakin <bdakin@apple.com>
43183 Fix for <rdar://problem/4615765> Input[type='search' fields
43184 initially render too large in Widgets
43186 Fundamentally, the problem here is that we were miscalculating
43187 things because [NSGraphicsContext currentContextDrawingToScreen]
43188 was evaluating to false when widgets first load. We only ever used
43189 this check, however, to determine if we were printing or not, so it
43190 should not have evaluated to false for loading in Dashbaord.
43191 Instead, if we query the RenderView about whether or not we are
43192 printing, we will get the right answer.
43194 No test case added since this appears only to affect Dashboard.
43196 * bridge/mac/WebCoreFrameBridge.mm:
43197 (-[WebCoreFrameBridge drawRect:]): Ask the RenderView if we are
43198 printing instead. This is not part of the actual bug fix, but it
43199 seems wise to get rid of all calls to [NSGraphicsContext
43200 currentContextDrawingToScreen] when we are just trying to determine
43201 if we are printing or not.
43202 * platform/mac/ListBoxMac.mm:
43203 (itemTextRenderer):This function now takes a boolean, isPrinting.
43204 (groupLabelTextRenderer): Same as above.
43205 (ListBox::sizeForNumberOfLines): Ask the RenderView if we are
43207 (-[WebCoreTableView drawRow:clipRect:]): Same as above.
43208 * platform/mac/PopUpButtonMac.mm:
43209 (PopUpButton::sizeHint): Same as above.
43210 * platform/mac/TextFieldMac.mm:
43211 (-[NSSearchFieldCell _addStringToRecentSearches:]):
43212 * rendering/RenderLineEdit.cpp: Same as above.
43214 2006-07-12 Adele Peterson <adele@apple.com>
43216 Reviewed by Maciej.
43218 Fix for: http://bugs.webkit.org/show_bug.cgi?id=9813
43219 OPTION text can paint over select element's scrollbar
43221 Test: fast/forms/option-text-clip.html
43223 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::paintObject):
43224 When calculating the clip to apply to the button text, also consider padding.
43225 In the future, we may have separate renderers for the text part, and the arrow part
43226 of the control, and then the separation should be natural. For now, we use padding.
43228 2006-07-11 David Kilzer <ddkilzer@kilzer.net>
43230 Windows build fix. Reviewed by NOBODY.
43232 * WebCore.vcproj/WebCore/WebCore.vcproj: Added JSHTMLOptionsCollection.cpp/h
43233 and JSHTMLOptionsCollectionCuston.cpp. VC++ Express realphabetized the file list.
43235 2006-07-11 Darin Adler <darin@apple.com>
43239 - fix http://bugs.webkit.org/show_bug.cgi?id=9809
43240 <rdar://problem/4619515>
43241 focus ring fails to appear on select element after choosing item from popup
43243 - includes http://bugs.webkit.org/show_bug.cgi?id=9853
43244 improvements to select element, including some storage leak fixes
43246 * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::index): Use a const
43247 reference for the list items, so we don't have to copy a vector.
43248 * html/HTMLSelectElement.cpp:
43249 (WebCore::HTMLSelectElement::selectedIndex): Ditto.
43250 (WebCore::HTMLSelectElement::setSelectedIndex): Ditto.
43251 (WebCore::HTMLSelectElement::length): Ditto.
43252 (WebCore::HTMLSelectElement::remove): Ditto.
43253 (WebCore::HTMLSelectElement::value): Ditto.
43254 (WebCore::HTMLSelectElement::setValue): Ditto.
43255 (WebCore::HTMLSelectElement::stateValue): Ditto.
43256 (WebCore::HTMLSelectElement::restoreState): Ditto.
43257 (WebCore::HTMLSelectElement::appendFormData): Ditto.
43258 (WebCore::HTMLSelectElement::optionToListIndex): Ditto.
43259 (WebCore::HTMLSelectElement::listToOptionIndex): Ditto.
43260 (WebCore::HTMLSelectElement::recalcListItems): Made const, with the appropriate
43262 (WebCore::HTMLSelectElement::reset): Use a const reference for
43263 the list items, so we don't have to copy the vector. Remove the call to
43264 setSelectionChanged for the RenderMenuList case.
43265 (WebCore::HTMLSelectElement::notifyOptionSelected): Ditto, on both counts.
43266 (WebCore::HTMLSelectElement::defaultEventHandler): Call focus() before showing
43268 * html/HTMLSelectElement.h: The RenderMenuList class is no longer a friend.
43269 Changed the listItems function to return a const reference to the vector so
43270 it no longer copies the vector. Removed the const_cast to the call to
43271 recalcListItems and changed it to a const member function. Made m_recalcListItems
43273 * rendering/DeprecatedRenderSelect.cpp:
43274 (WebCore::DeprecatedRenderSelect::updateFromElement): Removed an unnecessary call
43275 to recalcListItems, which is called automatically. Use a const reference for the
43276 list items so we don't have to copy a vector.
43277 (WebCore::DeprecatedRenderSelect::layout): Ditto.
43278 (WebCore::DeprecatedRenderSelect::selectionChanged): Ditto.
43279 (WebCore::DeprecatedRenderSelect::updateSelection): Ditto.
43280 * rendering/RenderMenuList.cpp:
43281 (WebCore::RenderMenuList::RenderMenuList): Updated for renamed data members.
43282 (WebCore::RenderMenuList::createInnerBlock): Ditto.
43283 (WebCore::RenderMenuList::addChild): Ditto.
43284 (WebCore::RenderMenuList::removeChild): Ditto.
43285 (WebCore::RenderMenuList::setStyle): Ditto. Also removed code to set the style
43286 on the pop-up menu, because it's created with the correct style and destroyed
43287 before it a style change could occur.
43288 (WebCore::RenderMenuList::updateFromElement): Rearranged code to compute the
43289 maximum width in a simpler fashion, and to not bother trying to maintain
43290 the "selected" flags on the elements, since the HTMLSelectElement class
43291 takes care of that. Store the width as an int. Call setText to set the text
43292 based on the selected element's option text.
43293 (WebCore::RenderMenuList::paintObject): Don't check m_inner when setting
43294 up the clip -- always set up the clip.
43295 (WebCore::RenderMenuList::calcMinMaxWidth): Use m_optionsWidth directly
43296 instead of calling ceilf on m_longestWidth.
43297 (WebCore::RenderMenuList::showPopup): Don't use m_popupMenu to store the
43298 menu -- instead keep the pointer in a local variable. Get the selected
43299 index from the HTMLSelectElement.
43300 (WebCore::RenderMenuList::valueChanged): Call HTMLSelectElement::setSelectedIndex
43301 to do most of the work.
43302 * rendering/RenderMenuList.h: Renamed m_inner to m_innerBlock. Removed
43303 m_popupMenu, m_size, m_selectionChanged, and m_selectedIndex. Renamed
43304 m_longestWidth to m_optionsWidth and changed it to be an int. Removed
43305 unneeded override of removeLeftoverAnonymousBoxes function. Removed
43306 unneeded selectionChanged, setSelectionChanged, updateSelection, and
43307 hasPopupMenu functions. Removed extra includes.
43308 * rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::populate):
43309 Change to iterate the list items instead of iterating all children
43310 of the select node.
43311 * rendering/RenderPopupMenu.h: Renamed getRenderMenuList to menuList.
43312 * rendering/RenderPopupMenuMac.mm:
43313 (WebCore::RenderPopupMenuMac::populate): Moved code to clear and create
43314 the pop-up here from the caller. Removed an extra retain that would cause
43315 the NSPopUpButtonCell to leak.
43316 (WebCore::RenderPopupMenuMac::showPopup): Removed unnecessary code to
43317 create the pop-up, which is now in populate, and also the call to the
43318 clear function, for the same reason. Reorganized code to make it a bit
43319 more readable. Removed an unnecessary if to check if frame is nil.
43320 Used a RefPtr to make sure we don't make a call on a frame after it's
43321 deleted. As part of the reorganization fixed a problem where we'd retain
43322 the event and then return early without releasing it in one case.
43323 (WebCore::RenderPopupMenuMac::addSeparator): Tweaked a little.
43324 (WebCore::RenderPopupMenuMac::addGroupLabel): Grouped all the code to
43325 manage the NSMenu at the bottom of the function.
43326 (WebCore::RenderPopupMenuMac::addOption): Ditto.
43328 2006-07-11 Justin Garcia <justin.garcia@apple.com>
43332 <rdar://problem/4620686>
43333 REGRESSION: Mispelling markers are still displayed when using the delete key to place caret into a misspelled word
43335 * bridge/mac/FrameMac.mm:
43336 (WebCore::FrameMac::respondToChangedSelection): Remove markers from newAdjacentWords
43337 even if oldAdjacentWords is equal to newAdjacentWords. This happens during a deletion.
43340 2006-07-11 Tim Omernick <timo@apple.com>
43342 Reviewed by NOBODY (build fix)
43344 * bindings/objc/DOMPrivate.h:
43345 Don't @class NPObject; that breaks files that actually #import <JavaScriptCore/npruntime.h>, since the NPObject
43346 there is of a different type.
43347 Also clarified a highly misleading comment from my last commit. I meant to clarify the comment
43350 2006-07-12 Anders Carlsson <acarlsson@apple.com>
43354 http://bugs.webkit.org/show_bug.cgi?id=9635
43355 REGRESSION: Crash when adding to cart at <http://www.yemeksepeti.com/>
43357 * html/HTMLTokenizer.cpp:
43358 (WebCore::HTMLTokenizer::scriptHandler):
43359 Don't load external scripts if the parser is stopped.
43361 * manual-tests/open-close-tokenizer-crash.html: Added.
43362 * manual-tests/resources/empty-file.js: Added.
43363 * manual-tests/resources/open-close-tokenizer-crash.html: Added.
43366 2006-07-11 John Sullivan <sullivan@apple.com>
43368 Reviewed by Kevin, Timo O, Brady, Darin, and Hyatt (whee!)
43370 - added support for creating a selection image with white text
43372 * rendering/RenderObject.h:
43374 add PaintRestriction enum
43375 (WebCore::RenderObject::PaintInfo::PaintInfo):
43376 add forceWhiteText boolean to PaintInfo struct
43378 * page/FramePrivate.h:
43379 (WebCore::FramePrivate::FramePrivate):
43380 replaced m_selectionOnly bool with m_paintRestriction, which also handles forcing the
43384 (WebCore::Frame::paint):
43385 updated to use & pass m_paintRestriction where it used to use & pass just m_selectionOnly
43387 * bridge/mac/FrameMac.h:
43388 * bridge/mac/FrameMac.mm:
43389 (WebCore::FrameMac::selectionImage):
43390 now takes forceWhiteText parameter, stored in FramePrivate as part of PaintRestriction
43392 * bridge/mac/WebCoreFrameBridge.h:
43393 * bridge/mac/WebCoreFrameBridge.mm:
43394 (-[WebCoreFrameBridge selectionImageForcingWhiteText:]):
43395 renamed from selectionImage, now takes forceWhiteText parameter, which is passed
43398 * rendering/RenderLayer.h:
43399 * rendering/RenderLayer.cpp:
43400 (WebCore::RenderLayer::paint):
43401 use a PaintRestriction value where we used to use a selectionOnly bool
43402 (WebCore::RenderLayer::paintLayer):
43403 ditto; also stores forceWhiteText in PaintInfo struct
43405 * kcanvas/KCanvasResources.cpp:
43406 (WebCore::KCanvasMarker::draw):
43407 updated for changed signature of PaintInfo constructor
43409 * ksvg2/svg/SVGMaskElement.cpp:
43410 (WebCore::SVGMaskElement::drawMaskerContent):
43413 * ksvg2/svg/SVGPatternElement.cpp:
43414 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
43417 * rendering/InlineTextBox.cpp:
43418 (WebCore::InlineTextBox::paint):
43419 paint with white text color if forceWhiteText is set in PaintInfo struct
43421 2006-07-11 Tim Omernick <timo@apple.com>
43423 Reviewed by Anders.
43425 <http://bugs.webkit.org/show_bug.cgi?id=9843>:
43426 Give Netscape plug-ins access to their own DOM element
43428 * html/HTMLPlugInElement.h:
43429 Just import JSC headers on Mac. The NPObject and Bindings::Instance stuff is only used on Mac anyway.
43430 Changed __APPLE__ to PLATFORM(MAC).
43431 Added m_NPObject ivar.
43432 * html/HTMLPlugInElement.cpp:
43433 (WebCore::HTMLPlugInElement::HTMLPlugInElement):
43434 Initialize the NPObject.
43435 (WebCore::HTMLPlugInElement::~HTMLPlugInElement):
43436 Release the NPObject when the element is destroyed.
43437 (WebCore::HTMLPlugInElement::createNPObject):
43438 Creates an NPObject for the element.
43439 (WebCore::HTMLPlugInElement::getNPObject):
43440 Returns the NPObject for the element, creating and caching it if necessary.
43442 * html/HTMLAppletElement.h:
43443 Changed __APPLE__ to PLATFORM(MAC).
43444 * html/HTMLAppletElement.cpp:
43446 * html/HTMLEmbedElement.h:
43448 * html/HTMLEmbedElement.cpp:
43450 * html/HTMLObjectElement.h:
43452 * html/HTMLObjectElement.cpp:
43455 * bindings/objc/DOMPrivate.h:
43456 Added -[DOMElement _NPObject].
43458 * bindings/objc/DOM.mm:
43459 (-[DOMElement _NPObject]):
43460 Returns the NPObject for the element. Since this is only needed by the Netscape plug-in API, you can only get
43461 the NPObject for applet, embed, and object elements.
43463 2006-07-11 Adele Peterson <adele@apple.com>
43467 - Fix for http://bugs.webkit.org/show_bug.cgi?id=9861
43468 REGRESSION: Can't dynamically change list box to popup
43470 and updated fix for http://bugs.webkit.org/show_bug.cgi?id=9859
43471 REGRESSION: Can't dynamically change popup to list box
43473 The original fix for 9859 was in the renderer, and I think we can catch the change
43474 earlier in the element to detach and reattach.
43476 I also did some cleanup to remove the PopupButton code path from DeprecatedRenderSelect
43478 Test: fast/forms/select-change-listbox-to-popup.html
43480 * html/HTMLSelectElement.cpp:
43481 (WebCore::HTMLSelectElement::parseMappedAttribute): If the new attribute value is going to require us to change from listbox to popup or vice versa,
43482 and we're already attached, then detach and reattach to create the correct renderer. If we're not attached, then we'll create the correct renderer
43484 (WebCore::HTMLSelectElement::recalcStyle): Updated shouldUseMenuList since it no longer takes a RenderStyle.
43485 (WebCore::HTMLSelectElement::isKeyboardFocusable): ditto.
43486 (WebCore::HTMLSelectElement::isMouseFocusable): ditto.
43487 (WebCore::HTMLSelectElement::createRenderer): ditto.
43488 (WebCore::HTMLSelectElement::setRecalcListItems): ditto.
43489 (WebCore::HTMLSelectElement::reset): ditto.
43490 (WebCore::HTMLSelectElement::notifyOptionSelected): ditto.
43491 (WebCore::HTMLSelectElement::defaultEventHandler): ditto.
43493 * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList):
43494 This method no longer takes a RenderStyle. That was leftover from when we used to use the appearance
43495 to determine whether or not to use the new menu list implementation.
43497 * rendering/DeprecatedRenderSelect.h: Removed PopupButton code path.
43498 * rendering/DeprecatedRenderSelect.cpp:
43499 (WebCore::DeprecatedRenderSelect::DeprecatedRenderSelect):
43500 (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
43501 (WebCore::DeprecatedRenderSelect::updateFromElement):
43502 (WebCore::DeprecatedRenderSelect::baselinePosition):
43503 (WebCore::DeprecatedRenderSelect::layout):
43504 (WebCore::DeprecatedRenderSelect::updateSelection):
43506 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
43507 Backed out previous fix since this is now done in HTMLSelectElement.
43509 2006-07-11 Adele Peterson <adele@apple.com>
43513 Fix for http://bugs.webkit.org/show_bug.cgi?id=9859
43514 REGRESSION: Can't dynamically change popup to list box
43516 Test: fast/forms/select-change-popup-to-listbox.html
43518 * rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::updateFromElement):
43519 If the select element has the multiple property set, or has a size > 1, then it
43520 really should be a list box, so we detach and attach the element so it creates the
43521 correct type of renderer.
43523 2006-07-11 John Sullivan <sullivan@apple.com>
43525 Reviewed by Beth Dakin and Tim Omernick
43527 - fixed <rdar://problem/4622794> HiDPI: dragging the selection in Safari can show pixel cracks
43528 at non-integral scale factors
43530 * bridge/mac/FrameMac.mm:
43531 (WebCore::FrameMac::imageFromRect):
43532 round image rect in window coordinate space
43534 2006-07-10 Darin Adler <darin@apple.com>
43538 - fix http://bugs.webkit.org/show_bug.cgi?id=9811
43539 rdar://problem/4619572
43540 OPTION text contained in OPTGROUP appears at the wrong size
43543 * dom/Node.cpp: (WebCore::Node::renderStyle): Made a const member function.
43544 The derived classes were overriding with const member functions, and I could
43545 change either this or the derived -- decided to do this.
43547 2006-07-10 Darin Adler <darin@apple.com>
43551 - fix http://bugs.webkit.org/show_bug.cgi?id=9810
43552 rdar://problem/4619534
43553 OPTGROUP label text is using the default font instead of Lucida Grande
43555 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::setFontFromControlSize):
43556 Code wants the family name, but was calling fontName, which is not the same thing.
43557 Also removed the unneeded conversion to DeprecatedString.
43559 === Safari-521.16 ===
43561 2006-07-10 David Kilzer <ddkilzer@kilzer.net>
43565 - fix http://bugs.webkit.org/show_bug.cgi?id=9179
43566 Implement select.options.add() method
43569 - fast/dom/select-selectedIndex-multiple.html
43570 - fast/dom/select-selectedIndex.html
43571 - fast/js/select-options-add.html
43573 * DerivedSources.make: Added JSHTMLOptionsCollection.h.
43574 * ForwardingHeaders/kjs/operations.h: Added.
43575 * WebCore.xcodeproj/project.pbxproj: Added new source files.
43576 * bindings/js/JSHTMLOptionsCollectionCustom.cpp: Added.
43577 (WebCore::JSHTMLOptionsCollection::length):
43578 (WebCore::JSHTMLOptionsCollection::setLength):
43579 (WebCore::JSHTMLOptionsCollection::indexSetter):
43580 * bindings/js/kjs_html.cpp: Removed JSHTMLOptionsCollection implementation.
43581 Renamed classes and methods for consistency.
43582 (KJS::JSHTMLElement::selectGetter):
43583 (KJS::JSHTMLElement::put):
43584 (KJS::JSHTMLElement::selectSetter):
43585 (KJS::JSHTMLCollection::JSHTMLCollection):
43586 (KJS::JSHTMLCollectionProtoFunc::callAsFunction):
43587 (KJS::getHTMLOptionsCollection):
43588 * bindings/js/kjs_html.h: Ditto.
43589 * bindings/scripts/CodeGeneratorJS.pm: Added support for HasCustomIndexSetter class attribute.
43590 Added support for Optional parameter attribute, which makes generated code assume overloaded
43591 implementation methods are available for a JavaScript function with optional arguments. Changed
43592 local 'impl' variables to 'imp' so that impl() methods could be called without class designation.
43593 * html/HTMLOptionElement.idl: Added GenerateNativeConverter attribute.
43594 * html/HTMLOptionsCollection.cpp: Added methods used by generated JSHTMLOptionsCollection class.
43595 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
43596 (WebCore::HTMLOptionsCollection::add):
43597 (WebCore::HTMLOptionsCollection::selectedIndex):
43598 (WebCore::HTMLOptionsCollection::setSelectedIndex):
43599 (WebCore::HTMLOptionsCollection::setLength):
43600 * html/HTMLOptionsCollection.h: Ditto.
43601 * html/HTMLOptionsCollection.idl: Added.
43603 2006-07-10 David Harrison <harrison@apple.com>
43605 Reviewed by Dave Hyatt.
43607 <rdar://problem/4602408> -webkit-highlight needs to support images and elements other than text
43609 * rendering/RenderBox.cpp:
43610 (WebCore::RenderBox::paintCustomHighlight):
43611 * rendering/RenderBox.h:
43612 Utility for subclasses.
43614 * rendering/RenderImage.cpp:
43615 (WebCore::RenderImage::paint):
43616 Custom highlight in front of images.
43618 * rendering/RenderListMarker.cpp:
43619 (WebCore::RenderListMarker::paint):
43620 Custom highlight in front of list markers.
43622 * rendering/RenderWidget.cpp:
43623 (WebCore::RenderWidget::paint):
43624 Custom highlight in front of objects.
43626 2006-07-10 David Hyatt <hyatt@apple.com>
43628 <rdar://problem/4620557> REGRESSION: In a mail message, text isn't painted
43629 correctly after choosing Redo Typing
43631 Better fix for repainting issue with positioned objects when height
43632 changes. Optimize when only a positioned child changes so that we don't
43633 incorrectly do normal flow layout.
43637 * WebCore.xcodeproj/project.pbxproj:
43638 * rendering/RenderBlock.cpp:
43639 (WebCore::RenderBlock::layoutBlock):
43640 * rendering/RenderFlexibleBox.cpp:
43641 (WebCore::RenderFlexibleBox::layoutBlock):
43642 * rendering/RenderTable.cpp:
43643 (WebCore::RenderTable::layout):
43644 * rendering/RenderView.cpp:
43645 (WebCore::RenderView::layout):
43646 * rendering/bidi.cpp:
43647 (WebCore::RenderBlock::layoutInlineChildren):
43649 2006-07-10 Adele Peterson <adele@apple.com>
43653 - Fix for <rdar://problem/4621442> REGRESSION (NativePopup) : Popup menus aren't drawn correctly on page at orbitz.com; cheaptickets.com
43655 Test: fast/forms/select-style.html
43657 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
43658 Don't let popups be style-able for now. We'll allow it later, when we
43659 have a good way to handle border & backgrounds and still having it look like a control.
43661 2006-07-10 Justin Garcia <justin.garcia@apple.com>
43663 Reviewed by harrison
43665 <rdar://problem/4619260>
43666 9A213 + Safari 521.15.1 Crash with To Do's alarm icon (WebCore::maxDeepOffset(WebCore::Node const*) )
43667 <rdar://problem/4619841>
43668 REGRESSION: Dragging selection over input field results in a crash (WebCore::maxDeepOffset(WebCore::Node const*)
43670 * WebCore.xcodeproj/project.pbxproj:
43671 * editing/Selection.cpp:
43672 (WebCore::Selection::adjustForEditableContent): Iterate using next/previousVisuallyDistinctCandidate
43673 instead of traverseNext/Previous node because we were skipping positions. Jump out of shadow trees.
43674 Migrate to isEditablePosition instead of isContentEditable.
43677 2006-07-10 Beth Dakin <bdakin@apple.com>
43681 Shuffling comments around from my last check-in to make things read
43684 * page/DOMWindow.h:
43685 * page/DOMWindow.idl:
43687 2006-07-10 Beth Dakin <bdakin@apple.com>
43691 Fix for <rdar://problem/4621095> The should be a way to
43692 access the user interface scale factor through the DOM
43694 window.devicePixelRatio returns the user interface scale factor.
43696 * page/DOMWindow.cpp:
43697 (WebCore::DOMWindow::devicePixelRatio):
43698 * page/DOMWindow.h:
43699 * page/DOMWindow.idl:
43701 2006-07-10 Brady Eidson <beidson@apple.com>
43705 Resolved the console error messages people got from the new DB even if they didn't have it enabled
43707 * icon/IconDatabase.cpp:
43708 (WebCore::IconDatabase::pruneUnreferencedIcons):
43709 (WebCore::IconDatabase::pruneUnretainedIcons):
43710 Added quick check to bail if the DB isn't open
43712 2006-07-10 David Harrison <harrison@apple.com>
43714 Reviewed by Tim Hatcher
43717 <rdar://problem/4619260> 9A213 + Safari 521.15.1 Crash with To Do's alarm icon (WebCore::maxDeepOffset(WebCore::Node const*) )
43719 * editing/Selection.cpp:
43720 (WebCore::Selection::adjustForEditableContent):
43721 Allow for node being 0. This is a bandaid fix to prevent the crash. It will still assert in a debug build. See bug for more info.
43723 2006-07-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
43727 - fix http://bugs.webkit.org/show_bug.cgi?id=9808
43728 REGRESSION: Incorrect layout (and ERROR) when forcing ATSU For All Text
43730 * manual-tests/ATSU-bad-layout.html: Added.
43731 * platform/mac/FontMac.mm:
43732 (WebCore::Font::floatWidthForComplexText): Return 0 immediately for empty runs.
43734 2006-07-10 Darin Adler <darin@apple.com>
43736 - try to fix the no-SVG build
43738 * ksvg2/misc/SVGImageLoader.cpp: Move namespace brace inside the #if.
43740 2006-07-10 Darin Adler <darin@apple.com>
43742 Reviewed by Anders.
43744 - fix http://bugs.webkit.org/show_bug.cgi?id=9833
43745 REGRESSION: Reproducible crash: RenderMenuList.cpp:58: failed assertion `!m_first'
43747 * manual-tests/empty-title-popup.html: Added.
43749 * rendering/RenderMenuList.h: Add createInnerBlock.
43750 * rendering/RenderMenuList.cpp:
43751 (WebCore::RenderMenuList::createInnerBlock): Factored out of addChild.
43752 (WebCore::RenderMenuList::addChild): Call createInnerBlock.
43753 (WebCore::RenderMenuList::setText): Changed parameter type.
43754 (WebCore::RenderMenuList::showPopup): Call createInnerBlock before calling
43755 the parent class's addChild.
43757 2006-07-10 Rob Buis <buis@kde.org>
43759 Reviewed by Maciej via IRC.
43761 Make sure the attributes are calculated against viewport width value,
43762 as defined in the spec. http://paste.lisp.org/display/22342
43764 * ksvg2/svg/SVGEllipseElement.cpp:
43765 (WebCore::SVGEllipseElement::rx): Changed LM_HEIGHT to LM_WIDTH.
43766 * ksvg2/svg/SVGLineElement.cpp:
43767 (SVGLineElement::x2): Ditto.
43769 2006-07-10 Beth Dakin <bdakin@apple.com>
43771 Reviewed by Maciej.
43773 Fix for <rdar://problem/4610314> Support the CSS3 content property
43776 This patch provides initial support for the CSS3 content property.
43777 It lacks support for any content other than images, and only allows
43778 content for elements that seemed safe for now.
43780 * css/cssstyleselector.cpp:
43781 (WebCore::CSSStyleSelector::applyProperty): Remove restrictions for
43782 just :before and :after
43783 * html/HTMLBRElement.cpp:
43784 (WebCore::HTMLBRElement::createRenderer):
43785 * html/HTMLFrameSetElement.cpp:
43786 (WebCore::HTMLFrameSetElement::createRenderer):
43787 * html/HTMLImageElement.cpp:
43788 (WebCore::HTMLImageElement::createRenderer):
43789 * html/HTMLLegendElement.cpp:
43790 (WebCore::HTMLLegendElement::createRenderer):
43791 * rendering/RenderImage.cpp:
43792 (WebCore::RenderImage::RenderImage):
43793 (WebCore::RenderImage::setCachedImage): Don't allow the image to be
43794 set this way if it was already set with the content property.
43795 * rendering/RenderImage.h:
43796 (WebCore::RenderImage::setIsAnonymousImage): Anonymous images are
43797 those set through the content property.
43798 (WebCore::RenderImage::isAnonymousImage):
43799 * rendering/RenderObject.cpp:
43800 (WebCore::RenderObject::createObject): If there is content
43801 specified, create a RenderImage with the content and initialize the
43802 cached image to whatever was specified in the CSS.
43804 2006-07-10 Brady Eidson <beidson@apple.com>
43806 Reviewed by NOBODY (Build Fix!)
43808 * icon/SiteIcon.cpp:
43809 (SiteIcon::getImage):
43810 Release build made an "unused variable" warning, which is, of course, an error. fixed that.
43812 2006-07-10 Brady Eidson <beidson@apple.com>
43816 SQLite Icon DB now fully replicates functionality of the old DB, including pruning to keep unused
43817 information out to keep down disk usage. For now, it is still off by default, as the critical
43818 feature of importing old icons into the new DB is still unrealized.
43819 If you'd like to test, add #define ICONDEBUG to your WebKitPrefix.h
43821 * icon/IconDatabase.cpp:
43822 (WebCore::IconDatabase::IconDatabase):
43823 (WebCore::IconDatabase::open):
43824 -Sets up a timer for initial pruning
43825 (WebCore::IconDatabase::iconForPageURL):
43826 -Switched away from "dirty blob hack" as the problem is provisionally solved
43827 (WebCore::IconDatabase::retainIconForURL):
43828 (WebCore::IconDatabase::releaseIconForURL):
43829 -Same as found in WebKit
43830 (WebCore::IconDatabase::totalRetainCountForIconURL):
43831 -Adds up all retainers of icon
43832 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
43833 -Wipes an Icon table entry out
43834 (WebCore::IconDatabase::establishTemporaryIconIDForIconURL):
43835 (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
43836 (WebCore::IconDatabase::establishIconIDForIconURL):
43837 (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
43838 -Added ability to get an iconID without creating a new one if a lookup is all
43839 that is genuinely wanted
43840 (WebCore::IconDatabase::pruneUnreferencedIcons):
43841 (WebCore::IconDatabase::pruneUnretainedIcons):
43842 -Called on a timer on DB startup to clean it out
43843 * icon/IconDatabase.h:
43844 * icon/SiteIcon.cpp:
43845 (SiteIcon::SiteIcon):
43846 (SiteIcon::~SiteIcon):
43847 -Deletes the image on deletion
43848 (SiteIcon::getImage):
43849 -Cut down on no-longer-necessary debug info
43851 2006-07-10 Anders Carlsson <acarlsson@apple.com>
43855 http://bugs.webkit.org/show_bug.cgi?id=9245
43856 Quirksmode: Incorrect handling of disabled BUTTON elements
43858 * html/HTMLButtonElement.cpp:
43859 (WebCore::HTMLButtonElement::defaultEventHandler):
43860 Don't call prepareSubmit if the element is disabled.
43862 * html/HTMLInputElement.cpp:
43863 (WebCore::HTMLInputElement::defaultEventHandler):
43864 Don't call prepareSubmit if the element is disabled.
43866 2006-07-10 Darin Adler <darin@apple.com>
43868 - try to fix Windows build
43870 * platform/win/TemporaryLinkStubs.cpp: Put a few functions in the WebCore namespace.
43871 * platform/gdk/TemporaryLinkStubs.cpp: Ditto.
43873 2006-07-10 Darin Adler <darin@apple.com>
43877 - fix failures seen in layout tests
43879 * bindings/js/kjs_dom.cpp: (KJS::toJS): Restore one of the few WebCore:: prefixes
43880 that really needed to be there -- because we have two classes named JSHTMLDocument
43881 at the moment! (One in KJS and one in WebCore namespace.)
43883 2006-07-10 Darin Adler <darin@apple.com>
43885 - try to fix Windows build
43887 * rendering/RenderLayer.h: Correct a forward declaration of ScrollBar.
43889 2006-07-09 Adele Peterson <adele@apple.com>
43891 Reviewed by Maciej.
43893 Fix for <rdar://problem/4463835> Switch to use new popup menu implementation for <select>
43895 * css/html4.css: Added style for new selects, and for list boxes.
43896 * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList): Removed check for appearance so new popups can be styled.
43898 * rendering/RenderMenuList.cpp:
43899 (WebCore::RenderMenuList::setStyle): Removed padding. This is now set by the theme.
43900 (WebCore::RenderMenuList::calcMinMaxWidth): Now takes minimum text size into account.
43901 * rendering/RenderMenuList.h: Removed baselinePosition since we're letting the theme calculate that.
43903 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isControlContainer): Added menuList as a ControlContainer,
43904 so RenderThemeMac will compute its baseline.
43905 * rendering/RenderTheme.h: (WebCore::RenderTheme::minimumTextSize): Added.
43906 * rendering/RenderThemeMac.h: Added minimumTextSize, setPopupPaddingFromControlSize, popupButtonSizes, popupButtonMargins, popupButtonPadding.
43907 Removed sizeOfArrowControl.
43908 * rendering/RenderThemeMac.mm:
43909 (WebCore::): Added enum for padding.
43910 (WebCore::RenderThemeMac::adjustRepaintRect): Now inflates rect to account for control shadow.
43911 (WebCore::RenderThemeMac::baselinePosition): Now calculates baseline for menulist.
43912 (WebCore::RenderThemeMac::popupButtonMargins): Tweaked values.
43913 (WebCore::RenderThemeMac::popupButtonSizes): Added.
43914 (WebCore::RenderThemeMac::popupButtonPadding): Added, so different padding can be set for different control sizes.
43915 (WebCore::RenderThemeMac::setPopupPaddingFromControlSize): Added.
43916 (WebCore::RenderThemeMac::paintMenuList): Now inflates rect to account for control shadow.
43917 (WebCore::RenderThemeMac::adjustMenuListStyle): Resets border, sets padding, sets control size.
43918 (WebCore::RenderThemeMac::setPopupButtonCellState): Removed unnecessary class name.
43919 (WebCore::RenderThemeMac::minimumTextSize): Added.
43921 2006-07-09 Darin Adler <darin@apple.com>
43923 - add back "unused code" for plain text fields, still used by <isindex>!
43925 * platform/TextField.h:
43926 * platform/mac/TextFieldMac.mm:
43927 * platform/mac/WebCoreTextField.h:
43928 * platform/mac/WebCoreTextField.mm:
43929 * rendering/RenderLineEdit.cpp:
43931 2006-07-09 Darin Adler <darin@apple.com>
43933 Reviewed by Tim Hatcher.
43935 - put more into the WebCore namespace
43936 - removed unused code for plain text fields
43938 Put more classes, class templates, enums, functions, and constants into
43939 the WebCore namespace, including all the headers in the platform directory.
43941 Removed lots of unneeded "WebCore::" qualifiers and "using" directives.
43943 Added some "WebCore::" qualifiers in a few places.
43945 Removed "uses WebCore::" in headers that we said we'd remove "when
43946 everything is in the WebCore namespace".
43948 * bindings/js/JSDOMParser.cpp:
43949 * bindings/js/JSHTMLElementWrapperFactory.cpp:
43950 * bindings/js/JSXSLTProcessor.cpp:
43951 * bindings/js/kjs_binding.cpp:
43952 * bindings/js/kjs_css.cpp:
43953 * bindings/js/kjs_dom.cpp:
43954 * bindings/js/kjs_dom.h:
43955 * bindings/js/kjs_events.cpp:
43956 * bindings/js/kjs_proxy.h:
43957 * bindings/js/kjs_window.h:
43958 * bindings/objc/DOM.mm:
43959 * bridge/History.h:
43960 * bridge/JavaAppletWidget.h:
43961 * bridge/mac/FormDataMac.h:
43962 * bridge/mac/FormDataMac.mm:
43963 * bridge/mac/WebCoreAXObject.mm:
43964 * bridge/mac/WebCoreEncodings.mm:
43965 * bridge/mac/WebCoreFrameBridge.h:
43966 * bridge/mac/WebCoreIconDatabaseBridge.mm:
43967 * bridge/mac/WebCorePageState.h:
43968 * bridge/mac/WebCoreScriptDebugger.mm:
43969 * bridge/mac/WebCoreSettings.h:
43970 * css/CSSGrammar.y:
43971 * css/CSSPageRule.cpp:
43972 * css/CSSPageRule.h:
43973 * css/MediaList.cpp:
43974 * css/cssstyleselector.h:
43976 * dom/Document.cpp:
43978 * dom/EventTargetNode.h:
43983 * dom/XMLTokenizer.cpp:
43984 * editing/AppendNodeCommand.h:
43985 * editing/ApplyStyleCommand.cpp:
43986 * editing/BreakBlockquoteCommand.cpp:
43987 * editing/BreakBlockquoteCommand.h:
43988 * editing/CompositeEditCommand.cpp:
43989 * editing/CompositeEditCommand.h:
43990 * editing/CreateLinkCommand.h:
43991 * editing/DeleteFromTextNodeCommand.h:
43992 * editing/DeleteSelectionCommand.h:
43993 * editing/FormatBlockCommand.h:
43994 * editing/HTMLInterchange.cpp:
43995 * editing/HTMLInterchange.h:
43996 * editing/IndentOutdentCommand.h:
43997 * editing/InsertIntoTextNodeCommand.h:
43998 * editing/InsertLineBreakCommand.h:
43999 * editing/InsertListCommand.h:
44000 * editing/InsertNodeBeforeCommand.h:
44001 * editing/InsertTextCommand.cpp:
44002 * editing/InsertTextCommand.h:
44003 * editing/JSEditor.cpp:
44004 * editing/JSEditor.h:
44005 * editing/JoinTextNodesCommand.h:
44006 * editing/MergeIdenticalElementsCommand.cpp:
44007 * editing/MergeIdenticalElementsCommand.h:
44008 * editing/ModifySelectionListLevel.h:
44009 * editing/MoveSelectionCommand.h:
44010 * editing/RebalanceWhitespaceCommand.h:
44011 * editing/RemoveNodeAttributeCommand.h:
44012 * editing/RemoveNodeCommand.h:
44013 * editing/RemoveNodePreservingChildrenCommand.h:
44014 * editing/ReplaceSelectionCommand.h:
44015 * editing/SetNodeAttributeCommand.h:
44016 * editing/SplitElementCommand.cpp:
44017 * editing/SplitElementCommand.h:
44018 * editing/SplitTextNodeCommand.cpp:
44019 * editing/SplitTextNodeCommand.h:
44020 * editing/SplitTextNodeContainingElementCommand.h:
44021 * editing/TypingCommand.cpp:
44022 * editing/TypingCommand.h:
44023 * editing/UnlinkCommand.h:
44024 * editing/VisiblePosition.cpp:
44025 * editing/WrapContentsInDummySpanCommand.cpp:
44026 * editing/WrapContentsInDummySpanCommand.h:
44027 * editing/markup.cpp:
44028 * editing/markup.h:
44029 * html/HTMLAnchorElement.cpp:
44030 * html/HTMLBodyElement.cpp:
44031 * html/HTMLButtonElement.h:
44032 * html/HTMLCollection.h:
44033 * html/HTMLDocument.h:
44034 * html/HTMLEmbedElement.cpp:
44035 * html/HTMLFormElement.cpp:
44036 * html/HTMLFormElement.h:
44037 * html/HTMLFrameElement.cpp:
44038 * html/HTMLFrameSetElement.cpp:
44039 * html/HTMLKeygenElement.cpp:
44040 * html/HTMLLabelElement.cpp:
44041 * html/HTMLObjectElement.cpp:
44042 * html/HTMLObjectElement.h:
44043 * html/HTMLTableElement.cpp:
44044 * html/HTMLTablePartElement.cpp:
44045 * icon/IconDatabase.h:
44046 * kcanvas/KCanvasPath.h:
44047 * kcanvas/KCanvasResources.cpp:
44048 * kcanvas/KCanvasResources.h:
44049 * kcanvas/KCanvasTreeDebug.cpp:
44050 * kcanvas/KCanvasTreeDebug.h:
44051 * kcanvas/RenderSVGContainer.cpp:
44052 * kcanvas/RenderSVGText.h:
44053 * kcanvas/device/KRenderingPaintServer.h:
44054 * kcanvas/device/KRenderingPaintServerGradient.h:
44055 * kcanvas/device/KRenderingPaintServerSolid.cpp:
44056 * ksvg2/misc/SVGImageLoader.cpp:
44057 * ksvg2/svg/SVGElement.cpp:
44058 * ksvg2/svg/SVGElement.h:
44059 * ksvg2/svg/SVGForeignObjectElement.cpp:
44060 * ksvg2/svg/SVGForeignObjectElement.h:
44061 * ksvg2/svg/SVGImageElement.cpp:
44062 * ksvg2/svg/SVGPoint.h:
44063 * ksvg2/svg/SVGStylable.h:
44064 * ksvg2/svg/SVGTRefElement.cpp:
44065 * ksvg2/svg/SVGTRefElement.h:
44066 * ksvg2/svg/SVGTSpanElement.cpp:
44067 * ksvg2/svg/SVGTSpanElement.h:
44068 * ksvg2/svg/SVGTextElement.h:
44069 * ksvg2/svg/svgpathparser.cpp:
44070 * ksvg2/svg/svgpathparser.h:
44072 * loader/DocLoader.h:
44073 * loader/LoaderFunctions.h:
44074 * loader/mac/LoaderFunctionsMac.mm:
44076 * page/FrameView.h:
44079 * platform/AffineTransform.cpp:
44080 * platform/AffineTransform.h:
44081 * platform/Arena.cpp:
44082 * platform/Arena.h:
44083 * platform/CookieJar.h:
44084 * platform/DeprecatedCString.cpp:
44085 * platform/DeprecatedCString.h:
44086 * platform/DeprecatedPtrList.h:
44087 * platform/DeprecatedPtrListImpl.cpp:
44088 * platform/DeprecatedPtrListImpl.h:
44089 * platform/DeprecatedPtrQueue.h:
44090 * platform/DeprecatedString.cpp:
44091 * platform/DeprecatedString.h:
44092 * platform/DeprecatedStringList.cpp:
44093 * platform/DeprecatedStringList.h:
44094 * platform/DeprecatedValueList.h:
44095 * platform/DeprecatedValueListImpl.cpp:
44096 * platform/DeprecatedValueListImpl.h:
44097 * platform/FileButton.h:
44098 * platform/FloatPoint.h:
44099 * platform/FloatRect.h:
44100 * platform/FloatSize.h:
44101 * platform/FontData.h:
44102 * platform/FontFallbackList.h:
44103 * platform/GraphicsContext.h:
44104 * platform/IntPoint.h:
44105 * platform/IntRect.h:
44106 * platform/IntSize.h:
44107 * platform/KURL.cpp:
44109 * platform/ListBox.h:
44110 * platform/Logging.cpp:
44111 * platform/Logging.h:
44113 * platform/PopUpButton.h:
44114 * platform/RegularExpression.cpp:
44115 * platform/RegularExpression.h:
44116 * platform/SSLKeyGenerator.h:
44117 * platform/ScrollBar.h:
44118 * platform/SegmentedString.h:
44119 * platform/Shared.h:
44120 * platform/Slider.h:
44121 * platform/StringImpl.h:
44122 * platform/TextBox.h:
44123 * platform/TextField.h:
44124 * platform/TextStream.cpp:
44125 * platform/TextStream.h:
44126 * platform/TransferJob.h:
44127 * platform/TransferJobClient.h:
44128 * platform/Widget.h:
44129 * platform/cg/AffineTransformCG.cpp:
44130 * platform/mac/ClipboardMac.h:
44131 * platform/mac/ClipboardMac.mm:
44132 * platform/mac/DeprecatedStringListMac.mm:
44133 * platform/mac/FontCacheMac.mm:
44134 * platform/mac/KURLMac.mm:
44135 * platform/mac/ListBoxMac.mm:
44136 * platform/mac/PopUpButtonMac.mm:
44137 * platform/mac/SSLKeyGeneratorMac.mm:
44138 * platform/mac/TextBoxMac.mm:
44139 * platform/mac/TextFieldMac.mm:
44140 * platform/mac/WebCoreTextArea.h:
44141 * platform/mac/WebCoreTextArea.mm:
44142 * platform/mac/WebCoreTextField.h:
44143 * platform/mac/WebCoreTextField.mm:
44144 * rendering/DeprecatedRenderSelect.h:
44145 * rendering/RenderArena.cpp:
44146 * rendering/RenderArena.h:
44147 * rendering/RenderBlock.cpp:
44148 * rendering/RenderBox.cpp:
44149 * rendering/RenderContainer.cpp:
44150 * rendering/RenderFlexibleBox.cpp:
44151 * rendering/RenderFlow.cpp:
44152 * rendering/RenderLayer.cpp:
44153 * rendering/RenderLineEdit.cpp:
44154 * rendering/RenderObject.h:
44155 * rendering/RenderStyle.cpp:
44156 * rendering/RenderStyle.h:
44157 * rendering/RenderText.cpp:
44158 * rendering/RenderTextFragment.cpp:
44159 * rendering/RenderTheme.h:
44160 * rendering/RenderTreeAsText.cpp:
44161 * rendering/RenderTreeAsText.h:
44162 * rendering/RenderView.h:
44163 * rendering/bidi.h:
44164 * xml/XSLStyleSheet.cpp:
44165 * xml/XSLTProcessor.cpp:
44167 2006-07-09 Geoffrey Garen <ggaren@apple.com>
44171 * bindings/js/kjs_window.cpp:
44172 (KJS::Window::clear): Garbage collect after reinitalizing the global
44173 object, not before, since the reinitialization tends to create garbage.
44175 2006-07-09 Timothy Hatcher <timothy@apple.com>
44179 Bug 9820: Move new DOM API that has been through API review to public headers
44180 http://bugs.webkit.org/show_bug.cgi?id=9820
44182 * bindings/objc/DOM.mm:
44183 (-[DOMElement focus]):
44184 (-[DOMElement blur]):
44185 (-[DOMRange text]):
44186 (-[DOMRange _text]):
44187 * bindings/objc/DOMCSS.mm:
44188 (-[DOMRGBColor color]):
44189 (-[DOMRGBColor _color]):
44190 * bindings/objc/DOMCore.h:
44191 * bindings/objc/DOMEvents.h:
44192 * bindings/objc/DOMExtensions.h:
44193 * bindings/objc/DOMHTML.mm:
44194 (-[DOMHTMLElement titleDisplayString]):
44195 (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
44196 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
44197 (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
44198 (-[DOMHTMLDocument _createDocumentFragmentWithText:]):
44199 * bindings/objc/DOMPrivate.h:
44200 * bindings/objc/DOMXPath.h:
44201 * bindings/objc/DOMXPath.mm:
44203 2006-07-09 Beth Dakin <bdakin@apple.com>
44205 Reviewed by Maciej.
44207 Fix for http://bugs.webkit.org/show_bug.cgi?id=9749 A
44208 nested content editable div causes unnecessary screen redraws.
44210 We were repainting too much because we were deciding that we needed
44211 a full layout because we didn't have a first line box. Our code
44212 used to hold a lot of assumptions that positioned elements would
44213 always have line boxes, but I fixed a few bugs a while back that
44214 appeared because this assumption isn't true. This assumption was
44215 also causing the extra redraws because the check meant that we
44216 would decide to do a full layout for any positioned element that
44217 did not have any line boxes in the first place. Maciej and I talked
44218 about this, and we couldn't figure out why the check for line boxes
44219 was part of determining if we need a full layout in the first
44220 place. After hunting around the code, we decided to assume that
44221 this check is antiquated. Removing it fixes the bug and doesn't
44222 seem to break any layout tests. So, fingers crossed!
44224 Will add layout test so soon.
44226 * rendering/bidi.cpp:
44227 (WebCore::RenderBlock::layoutInlineChildren): Remove firstLineBox
44230 2006-07-09 David Harrison <harrison@apple.com>
44232 Reviewed by John Sullivan.
44234 <rdar://problem/4598149> Deleting the contents of a DOMRange and then inserting a node into it crashes in WebCore::Font::canUseGlyphCache
44236 Test: fast/dom/delete-contents.html
44239 (WebCore::Range::processContents):
44241 2006-07-09 Darin Adler <darin@apple.com>
44243 - another round of renaming; and KWQ is dead
44245 * WebCore.vcproj/WebCore/WebCore.vcproj: Remove paths for kwq and khtml directories.
44246 Move files to their new locations. Did rename.
44247 * WebCore.xcodeproj/project.pbxproj: Move files to their new locations. Did rename.
44248 * WebCoreSources.bkl: Did rename.
44249 * webcore-base.bkl: Removed kwq.
44251 * kwq/AccessibilityObjectCache.h: Removed.
44252 * kwq/AccessibilityObjectCache.mm: Removed.
44253 * kwq/FormDataMac.h: Removed.
44254 * kwq/FormDataMac.mm: Removed.
44255 * kwq/WebCoreAXObject.h: Removed.
44256 * kwq/WebCoreAXObject.mm: Removed.
44257 * kwq/WebCoreEditCommand.h: Removed.
44258 * kwq/WebCoreEditCommand.mm: Removed.
44259 * kwq/WebCorePageState.h: Removed.
44260 * kwq/WebCorePageState.mm: Removed.
44261 * kwq/WebCoreResourceLoaderImp.h: Removed.
44262 * kwq/WebCoreResourceLoaderImp.mm: Removed.
44264 * bridge/AXObjectCache.h: Added.
44265 * bridge/mac/AXObjectCacheMac.mm: Added.
44266 * bridge/mac/WebCoreAXObject.h: Added.
44267 * bridge/mac/WebCoreAXObject.mm: Added.
44269 * loader/CachedObject.cpp: Removed.
44270 * loader/CachedObject.h: Removed.
44271 * loader/CachedObjectClient.h: Removed.
44272 * loader/CachedObjectClientWalker.cpp: Removed.
44273 * loader/CachedObjectClientWalker.h: Removed.
44275 * loader/CachedResource.cpp: Added.
44276 * loader/CachedResource.h: Added.
44277 * loader/CachedResourceClient.h: Added.
44278 * loader/CachedResourceClientWalker.cpp: Added.
44279 * loader/CachedResourceClientWalker.h: Added.
44281 * bridge/mac/FrameMac.mm:
44282 * bridge/mac/WebCoreFrameBridge.mm:
44283 * css/CSSImageValue.h:
44284 * css/CSSImportRule.h:
44285 * dom/Document.cpp:
44288 * dom/ProcessingInstruction.h:
44289 * dom/XMLTokenizer.cpp:
44290 * html/CanvasPattern.h:
44291 * html/HTMLDocument.h:
44292 * html/HTMLImageLoader.cpp:
44293 * html/HTMLImageLoader.h:
44294 * html/HTMLLinkElement.h:
44295 * html/HTMLScriptElement.cpp:
44296 * html/HTMLScriptElement.h:
44297 * html/HTMLTokenizer.cpp:
44298 * html/HTMLTokenizer.h:
44299 * kcanvas/KCanvasFilters.h:
44300 * ksvg2/svg/SVGCursorElement.cpp:
44301 * ksvg2/svg/SVGCursorElement.h:
44302 * ksvg2/svg/SVGFEImageElement.cpp:
44303 * ksvg2/svg/SVGFEImageElement.h:
44304 * loader/Cache.cpp:
44306 * loader/CachedCSSStyleSheet.cpp:
44307 * loader/CachedCSSStyleSheet.h:
44308 * loader/CachedImage.cpp:
44309 * loader/CachedImage.h:
44310 * loader/CachedScript.cpp:
44311 * loader/CachedScript.h:
44312 * loader/CachedXBLDocument.cpp:
44313 * loader/CachedXBLDocument.h:
44314 * loader/CachedXSLStyleSheet.cpp:
44315 * loader/CachedXSLStyleSheet.h:
44316 * loader/DocLoader.cpp:
44317 * loader/DocLoader.h:
44318 * loader/LoaderFunctions.h:
44319 * loader/Request.cpp:
44320 * loader/Request.h:
44321 * loader/loader.cpp:
44323 * loader/mac/LoaderFunctionsMac.mm:
44325 * page/FrameView.cpp:
44326 * platform/gdk/TemporaryLinkStubs.cpp:
44327 * platform/mac/ClipboardMac.h:
44328 * platform/win/TemporaryLinkStubs.cpp:
44329 * rendering/RenderBox.h:
44330 * rendering/RenderContainer.cpp:
44331 * rendering/RenderImage.cpp:
44332 * rendering/RenderImage.h:
44333 * rendering/RenderLayer.h:
44334 * rendering/RenderObject.cpp:
44335 * rendering/RenderObject.h:
44336 * rendering/RenderStyle.cpp:
44337 * rendering/RenderStyle.h:
44338 * xml/XSLImportRule.h:
44341 * platform/mac/can-convert.mm: Removed.
44343 2006-07-09 Anders Carlsson <acarlsson@apple.com>
44348 Add wkPathFromFont.
44350 * platform/mac/FontDataMac.mm:
44351 (-[NSFont WebCore]):
44352 Use wkPathFromFont.
44354 * platform/mac/WebCoreSystemInterface.h:
44355 * platform/mac/WebCoreSystemInterface.mm:
44356 Declare wkPathFromFont.
44358 2006-07-09 Brady Eidson <beidson@apple.com>
44362 Set the stage to remove the workaround for the SQLite BLOB corruption. A few other small cleanups, and
44363 preparation for pruning unreferenced and unretained icons.
44365 * icon/IconDatabase.cpp:
44366 (WebCore::IconDatabase::recreateDatabase): Added another trigger to assist in icon removal
44367 (WebCore::IconDatabase::deletePrivateTables): Cleaned up logging messages
44368 (WebCore::IconDatabase::imageDataForIconID): #ifdefed the blobbing hack for impending removal, use the real blob by default
44369 (WebCore::IconDatabase::imageDataForIconURL): same
44370 (WebCore::IconDatabase::imageDataForPageURL): same
44371 (WebCore::IconDatabase::pruneUnreferencedIcons): Will delete any icons and their data that are not referenced
44373 * icon/IconDatabase.h:
44375 * icon/SQLDatabase.h: Changed BlobAsVector to be unsigned char as thats the most reasonable type for
44376 a byte-buffer, and is what CFData expects
44377 * icon/SQLStatement.cpp:
44378 (WebCore::SQLStatement::getColumnBlobAsVector):
44380 2006-07-09 Darin Adler <darin@apple.com>
44382 - move all but the last 12 files out of kwq directory
44383 - removed a few unused source files I discovered
44385 * WebCore.vcproj/WebCore/WebCore.vcproj: Update for new file locations.
44386 * WebCore.xcodeproj/project.pbxproj: Ditto.
44388 * bridge/mac/FrameMac.mm:
44390 * html/HTMLImageLoader.cpp:
44391 * loader/Cache.cpp:
44393 * loader/CachedCSSStyleSheet.cpp:
44394 * loader/CachedCSSStyleSheet.h:
44395 * loader/CachedImage.cpp:
44396 * loader/CachedImage.h:
44397 * loader/CachedObject.h:
44398 * loader/CachedScript.cpp:
44399 * loader/CachedScript.h:
44400 * loader/CachedXBLDocument.cpp:
44401 * loader/CachedXBLDocument.h:
44402 * loader/CachedXSLStyleSheet.cpp:
44403 * loader/CachedXSLStyleSheet.h:
44404 * loader/DocLoader.cpp:
44405 * loader/DocLoader.h:
44408 * page/FramePrivate.h:
44409 * platform/gdk/TemporaryLinkStubs.cpp:
44410 * platform/win/TemporaryLinkStubs.cpp:
44411 * rendering/DeprecatedSlider.cpp:
44412 * rendering/RenderObject.h:
44413 * xml/xmlhttprequest.cpp:
44414 Updated includes as needed for file location changes. Changed
44415 CachePolicy uses to match new filename and enum names.
44417 * loader/CachedResource.cpp: Removed.
44418 * loader/CachedResource.h: Removed.
44419 * loader/CachedResourceClient.h: Removed.
44420 * loader/CachedResourceClientWalker.cpp: Removed.
44421 * loader/CachedResourceClientWalker.h: Removed.
44422 The above files were checked in by accident a while back. The rename of
44423 CachedObject to CachedResource is now reflected in do-webcore-rename,
44424 and will be done soon.
44426 * kwq/AffineTransform.cpp: Removed.
44427 * kwq/AffineTransform.h: Removed.
44428 * kwq/CacheControl.h: Removed.
44429 * kwq/DeprecatedPtrQueue.h: Removed.
44430 * kwq/FileButton.h: Removed.
44431 * kwq/FileButton.mm: Removed.
44432 * kwq/ListBox.h: Removed.
44433 * kwq/ListBox.mm: Removed.
44434 * kwq/LoaderFunctions.h: Removed.
44435 * kwq/LoaderFunctions.mm: Removed.
44436 * kwq/PopUpButton.h: Removed.
44437 * kwq/PopUpButton.mm: Removed.
44438 * kwq/SSLKeyGenerator.h: Removed.
44439 * kwq/SSLKeyGenerator.mm: Removed.
44440 * kwq/Settings.h: Removed.
44441 * kwq/TextBox.h: Removed.
44442 * kwq/TextBox.mm: Removed.
44443 * kwq/TextField.h: Removed.
44444 * kwq/TextField.mm: Removed.
44445 * kwq/WebCoreScrollBar.h: Removed.
44446 * kwq/WebCoreScrollBar.mm: Removed.
44447 * kwq/WebCoreSlider.h: Removed.
44448 * kwq/WebCoreSlider.mm: Removed.
44450 * loader/CachePolicy.h: Added.
44451 * loader/LoaderFunctions.h: Added.
44453 * loader/mac/LoaderFunctionsMac.mm: Added.
44455 * page/Settings.h: Added.
44457 * platform/AffineTransform.cpp: Added.
44458 * platform/AffineTransform.h: Added.
44459 * platform/DeprecatedPtrQueue.h: Added.
44460 * platform/FileButton.h: Added.
44461 * platform/ListBox.h: Added.
44462 * platform/PopUpButton.h: Added.
44463 * platform/SSLKeyGenerator.h: Added.
44464 * platform/ScrollBar.h: Added.
44465 * platform/Slider.h: Added.
44466 * platform/TextBox.h: Added.
44467 * platform/TextField.h: Added.
44469 * platform/cg/AffineTransformCG.cpp: Added.
44471 * platform/mac/FileButtonMac.mm: Added.
44472 * platform/mac/ListBoxMac.mm: Added.
44473 * platform/mac/PopUpButtonMac.mm: Added.
44474 * platform/mac/SSLKeyGeneratorMac.mm: Added.
44475 * platform/mac/ScrollBarMac.mm: Added.
44476 * platform/mac/ScrollBarMac.mm: Added.
44477 * platform/mac/SliderMac.mm: Added.
44478 * platform/mac/SliderMac.mm: Added.
44479 * platform/mac/TextBoxMac.mm: Added.
44480 * platform/mac/TextFieldMac.mm: Added.
44482 2006-07-09 Darin Adler <darin@apple.com>
44484 - move 4 files out of kwq directory
44485 - make some minor project adjustments for the WebCore project
44487 * WebCore.xcodeproj/project.pbxproj: Link libsqlite3 the same way we do other
44488 libraries, rather than using a custom linker option. Moved the files from their
44489 old locations to the new ones. Removed "khtml" from the list of header search
44490 paths since that directory doesn't exist any more. Eliminated STYLE_LDFLAGS
44491 and just put -umbrella WebKit in OTHER_LDFLAGS in the Production configuration
44492 (was a leftover from "build styles" in Xcode 1). Changed to use EXPORTED_SYMBOLS_FILE
44493 instead of using -exported_symbols_list directly again now that Xcode has fixed the
44494 "strip twice" bug. Removed unneeded explicit SECTORDER_FLAGS = "" settings.
44495 Removed the explicit -Y,3 option now that Xcode does that by default.
44497 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed some obsolete uneeded files,
44498 many of which didn't exist any more. Moved the files from their old locations
44501 * WebCoreSources.bkl: Moved the files from their old locations to the new ones.
44503 * kwq/DeprecatedCString.cpp: Removed.
44504 * kwq/DeprecatedCString.h: Removed.
44505 * kwq/TextStream.cpp: Removed.
44506 * kwq/TextStream.h: Removed.
44507 * platform/DeprecatedCString.cpp: Added.
44508 * platform/DeprecatedCString.h: Added.
44509 * platform/TextStream.cpp: Added.
44510 * platform/TextStream.h: Added.
44512 2006-07-09 Darin Adler <darin@apple.com>
44514 Rubber stamped by Maciej (kinda).
44516 - did the next pass of renaming (used do-webcore-rename script)
44517 this takes care of most of the remaining KWQ names (almost all)
44519 * WebCore+SVG/DOMList.h:
44520 * WebCore.vcproj/WebCore/WebCore.vcproj:
44521 * WebCore.xcodeproj/project.pbxproj:
44522 * WebCoreSources.bkl:
44523 * bindings/js/kjs_dom.cpp:
44524 * bindings/js/kjs_window.cpp:
44525 * bindings/objc/DOMHTML.mm:
44526 * bridge/mac/FrameMac.h:
44527 * bridge/mac/FrameMac.mm:
44528 * bridge/mac/WebCoreFrameBridge.mm:
44529 * bridge/mac/WebCoreSettings.h:
44530 * bridge/mac/WebCoreSettings.mm:
44531 * bridge/win/FrameWin.cpp:
44532 * css/CSSPrimitiveValue.cpp:
44533 * css/CSSValueKeywords.in:
44534 * css/MediaQueryEvaluator.cpp:
44535 * css/cssparser.cpp:
44536 * css/cssstyleselector.cpp:
44537 * css/cssstyleselector.h:
44538 * dom/CharacterData.cpp:
44539 * dom/CharacterData.h:
44540 * dom/Document.cpp:
44543 * dom/EventTargetNode.cpp:
44544 * dom/EventTargetNode.h:
44547 * dom/Position.cpp:
44548 * dom/ProcessingInstruction.cpp:
44549 * dom/QualifiedName.cpp:
44550 * dom/QualifiedName.h:
44551 * dom/XMLTokenizer.cpp: Added.
44552 * dom/xml_tokenizer.cpp: Removed.
44553 * dom/xml_tokenizer.h: Removed.
44554 * editing/EditAction.h:
44555 * editing/HTMLInterchange.cpp:
44556 * editing/HTMLInterchange.h:
44557 * editing/Selection.h:
44558 * editing/SelectionController.h:
44559 * editing/TextAffinity.h:
44560 * editing/TextIterator.cpp:
44561 * editing/TextIterator.h:
44562 * editing/VisiblePosition.h:
44563 * editing/htmlediting.cpp:
44564 * editing/markup.cpp:
44565 * editing/markup.h:
44566 * editing/visible_units.cpp:
44567 * editing/visible_units.h:
44568 * html/HTMLDocument.cpp:
44569 * html/HTMLFontElement.cpp:
44570 * html/HTMLInputElement.cpp:
44571 * html/HTMLKeygenElement.cpp:
44572 * html/HTMLSelectElement.h:
44573 * html/HTMLTextAreaElement.cpp:
44574 * html/HTMLTextFieldInnerElement.cpp:
44575 * html/HTMLTokenizer.cpp:
44576 * html/HTMLTokenizer.h:
44577 * kcanvas/KCanvasContainer.cpp: Removed.
44578 * kcanvas/KCanvasContainer.h: Removed.
44579 * kcanvas/KCanvasCreator.cpp:
44580 * kcanvas/KCanvasFilters.cpp:
44581 * kcanvas/KCanvasFilters.h:
44582 * kcanvas/KCanvasMatrix.cpp:
44583 * kcanvas/KCanvasMatrix.h:
44584 * kcanvas/KCanvasPath.cpp:
44585 * kcanvas/KCanvasPath.h:
44586 * kcanvas/KCanvasResources.cpp:
44587 * kcanvas/KCanvasResources.h:
44588 * kcanvas/KCanvasTreeDebug.cpp:
44589 * kcanvas/KCanvasTreeDebug.h:
44590 * kcanvas/RenderForeignObject.cpp:
44591 * kcanvas/RenderForeignObject.h:
44592 * kcanvas/RenderPath.cpp:
44593 * kcanvas/RenderPath.h:
44594 * kcanvas/RenderSVGContainer.cpp: Added.
44595 * kcanvas/RenderSVGContainer.h: Added.
44596 * kcanvas/RenderSVGImage.cpp:
44597 * kcanvas/RenderSVGImage.h:
44598 * kcanvas/RenderSVGText.cpp:
44599 * kcanvas/RenderSVGText.h:
44600 * kcanvas/device/KRenderingPaintServer.h:
44601 * kcanvas/device/KRenderingPaintServerGradient.cpp:
44602 * kcanvas/device/KRenderingPaintServerGradient.h:
44603 * kcanvas/device/KRenderingPaintServerPattern.cpp:
44604 * kcanvas/device/KRenderingPaintServerPattern.h:
44605 * kcanvas/device/KRenderingPaintServerSolid.cpp:
44606 * kcanvas/device/KRenderingPaintServerSolid.h:
44607 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
44608 * kcanvas/device/quartz/KCanvasItemQuartz.h:
44609 * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
44610 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
44611 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
44612 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
44613 * ksvg2/css/CSSValueKeywords.in:
44614 * ksvg2/css/SVGRenderStyleDefs.cpp:
44615 * ksvg2/misc/KCanvasRenderingStyle.cpp:
44616 * ksvg2/misc/KSVGTimeScheduler.cpp:
44617 * ksvg2/svg/SVGAElement.cpp:
44618 * ksvg2/svg/SVGAnimateTransformElement.cpp:
44619 * ksvg2/svg/SVGAnimateTransformElement.h:
44620 * ksvg2/svg/SVGGElement.cpp:
44621 * ksvg2/svg/SVGHelper.cpp:
44622 * ksvg2/svg/SVGHelper.h:
44623 * ksvg2/svg/SVGImageElement.cpp:
44624 * ksvg2/svg/SVGLinearGradientElement.cpp:
44625 * ksvg2/svg/SVGMarkerElement.cpp:
44626 * ksvg2/svg/SVGMaskElement.cpp:
44627 * ksvg2/svg/SVGMatrix.cpp:
44628 * ksvg2/svg/SVGMatrix.h:
44629 * ksvg2/svg/SVGPatternElement.cpp:
44630 * ksvg2/svg/SVGRadialGradientElement.cpp:
44631 * ksvg2/svg/SVGSVGElement.cpp:
44632 * ksvg2/svg/SVGStyledElement.h:
44633 * ksvg2/svg/SVGStyledTransformableElement.cpp:
44634 * ksvg2/svg/SVGStyledTransformableElement.h:
44635 * ksvg2/svg/SVGSwitchElement.cpp:
44636 * ksvg2/svg/SVGTextElement.cpp:
44637 * ksvg2/svg/SVGTransformable.h:
44638 * ksvg2/svg/SVGUseElement.cpp:
44639 * kwq/AffineTransform.cpp: Added.
44640 * kwq/AffineTransform.h: Added.
44641 * kwq/DeprecatedCString.cpp: Added.
44642 * kwq/DeprecatedCString.h: Added.
44643 * kwq/DeprecatedPtrQueue.h: Added.
44644 * kwq/FileButton.h: Added.
44645 * kwq/FileButton.mm: Added.
44646 * kwq/FormDataMac.mm: Added.
44647 * kwq/KWQCString.cpp: Removed.
44648 * kwq/KWQCString.h: Removed.
44649 * kwq/KWQComboBox.h: Removed.
44650 * kwq/KWQComboBox.mm: Removed.
44651 * kwq/KWQEditCommand.h: Removed.
44652 * kwq/KWQEditCommand.mm: Removed.
44653 * kwq/KWQFileButton.h: Removed.
44654 * kwq/KWQFileButton.mm: Removed.
44655 * kwq/KWQFormData.h: Removed.
44656 * kwq/KWQFormData.mm: Removed.
44657 * kwq/KWQKHTMLSettings.h: Removed.
44658 * kwq/KWQKIOGlobal.h: Removed.
44659 * kwq/KWQKSSLKeyGen.h: Removed.
44660 * kwq/KWQKSSLKeyGen.mm: Removed.
44661 * kwq/KWQLineEdit.h: Removed.
44662 * kwq/KWQLineEdit.mm: Removed.
44663 * kwq/KWQListBox.h: Removed.
44664 * kwq/KWQListBox.mm: Removed.
44665 * kwq/KWQLoader.h: Removed.
44666 * kwq/KWQLoader.mm: Removed.
44667 * kwq/KWQPageState.h: Removed.
44668 * kwq/KWQPageState.mm: Removed.
44669 * kwq/KWQPtrQueue.h: Removed.
44670 * kwq/KWQResourceLoader.h: Removed.
44671 * kwq/KWQResourceLoader.mm: Removed.
44672 * kwq/KWQScrollBar.h: Removed.
44673 * kwq/KWQScrollBar.mm: Removed.
44674 * kwq/KWQSlider.h: Removed.
44675 * kwq/KWQSlider.mm: Removed.
44676 * kwq/KWQTextEdit.h: Removed.
44677 * kwq/KWQTextEdit.mm: Removed.
44678 * kwq/KWQTextStream.cpp: Removed.
44679 * kwq/KWQTextStream.h: Removed.
44680 * kwq/KWQWMatrix.cpp: Removed.
44681 * kwq/KWQWMatrix.h: Removed.
44682 * kwq/ListBox.h: Added.
44683 * kwq/ListBox.mm: Added.
44684 * kwq/LoaderFunctions.h: Added.
44685 * kwq/LoaderFunctions.mm: Added.
44686 * kwq/PopUpButton.h: Added.
44687 * kwq/PopUpButton.mm: Added.
44688 * kwq/SSLKeyGenerator.h: Added.
44689 * kwq/SSLKeyGenerator.mm: Added.
44690 * kwq/Settings.h: Added.
44691 * kwq/TextBox.h: Added.
44692 * kwq/TextBox.mm: Added.
44693 * kwq/TextField.h: Added.
44694 * kwq/TextField.mm: Added.
44695 * kwq/TextStream.cpp: Added.
44696 * kwq/TextStream.h: Added.
44697 * kwq/WebCoreEditCommand.h: Added.
44698 * kwq/WebCoreEditCommand.mm: Added.
44699 * kwq/WebCorePageState.h: Added.
44700 * kwq/WebCorePageState.mm: Added.
44701 * kwq/WebCoreResourceLoaderImp.h: Added.
44702 * kwq/WebCoreResourceLoaderImp.mm: Added.
44703 * kwq/WebCoreScrollBar.h: Added.
44704 * kwq/WebCoreScrollBar.mm: Added.
44705 * kwq/WebCoreSlider.h: Added.
44706 * kwq/WebCoreSlider.mm: Added.
44708 * loader/CachedCSSStyleSheet.cpp:
44709 * loader/CachedImage.cpp:
44710 * loader/CachedObject.h:
44711 * loader/CachedObjectClientWalker.h:
44712 * loader/CachedResource.h:
44713 * loader/CachedResourceClientWalker.h:
44714 * loader/CachedScript.h:
44715 * loader/CachedXBLDocument.h:
44716 * loader/Decoder.h:
44717 * loader/DocLoader.cpp:
44718 * loader/DocLoader.h:
44719 * loader/FormData.h:
44720 * loader/ImageDocument.cpp:
44721 * loader/PluginDocument.cpp:
44722 * loader/TextDocument.cpp:
44723 * loader/loader.cpp:
44727 * page/FramePrivate.h:
44730 * platform/DeprecatedPtrList.h:
44731 * platform/DeprecatedPtrListImpl.cpp:
44732 * platform/DeprecatedPtrListImpl.h:
44733 * platform/DeprecatedString.cpp:
44734 * platform/DeprecatedString.h:
44735 * platform/DeprecatedStringList.cpp:
44736 * platform/DeprecatedStringList.h:
44737 * platform/DeprecatedValueList.h:
44738 * platform/DeprecatedValueListImpl.cpp:
44739 * platform/DeprecatedValueListImpl.h:
44740 * platform/FloatSize.h:
44741 * platform/Font.cpp:
44742 * platform/KURL.cpp:
44743 * platform/RegularExpression.cpp:
44744 * platform/RegularExpression.h:
44745 * platform/SegmentedString.h:
44746 * platform/StreamingTextDecoder.cpp:
44747 * platform/String.cpp:
44748 * platform/StringImpl.cpp:
44749 * platform/TextEncoding.cpp:
44750 * platform/TransferJob.cpp:
44751 * platform/TransferJob.h:
44752 * platform/TransferJobInternal.h:
44753 * platform/gdk/FrameGdk.cpp:
44754 * platform/gdk/TemporaryLinkStubs.cpp:
44755 * platform/mac/ClipboardMac.h:
44756 * platform/mac/ClipboardMac.mm:
44757 * platform/mac/CursorMac.mm:
44758 * platform/mac/DeprecatedStringMac.mm: Added.
44759 * platform/mac/FontCacheMac.mm:
44760 * platform/mac/FontMac.mm:
44761 * platform/mac/FoundationExtras.h:
44762 * platform/mac/ImageMac.mm:
44763 * platform/mac/KURLMac.mm:
44764 * platform/mac/MouseEventMac.mm: Removed.
44765 * platform/mac/QStringListMac.mm: Removed.
44766 * platform/mac/QStringMac.mm: Removed.
44767 * platform/mac/TransferJobMac.mm:
44768 * platform/mac/WebCoreTextArea.h:
44769 * platform/mac/WebCoreTextArea.mm:
44770 * platform/mac/WebCoreTextField.h:
44771 * platform/mac/WebCoreTextField.mm:
44772 * platform/mac/WidgetMac.mm:
44773 * platform/win/TemporaryLinkStubs.cpp:
44774 * rendering/DataRef.h:
44775 * rendering/DeprecatedRenderSelect.cpp:
44776 * rendering/DeprecatedRenderSelect.h:
44777 * rendering/DeprecatedSlider.cpp:
44778 * rendering/InlineFlowBox.cpp:
44779 * rendering/RenderApplet.cpp:
44780 * rendering/RenderBlock.cpp:
44781 * rendering/RenderBlock.h:
44782 * rendering/RenderContainer.cpp:
44783 * rendering/RenderFileButton.cpp:
44784 * rendering/RenderFlexibleBox.cpp:
44785 * rendering/RenderFlow.cpp:
44786 * rendering/RenderFormElement.cpp:
44787 * rendering/RenderFrameSet.cpp:
44788 * rendering/RenderFrameSet.h:
44789 * rendering/RenderImage.cpp:
44790 * rendering/RenderInline.cpp:
44791 * rendering/RenderLayer.cpp:
44792 * rendering/RenderLayer.h:
44793 * rendering/RenderLineEdit.cpp:
44794 * rendering/RenderListItem.cpp:
44795 * rendering/RenderListMarker.cpp:
44796 * rendering/RenderObject.cpp:
44797 * rendering/RenderObject.h:
44798 * rendering/RenderPartObject.cpp:
44799 * rendering/RenderReplaced.cpp:
44800 * rendering/RenderStyle.cpp: Added.
44801 * rendering/RenderStyle.h: Added.
44802 * rendering/RenderTable.cpp:
44803 * rendering/RenderTable.h:
44804 * rendering/RenderTableCell.cpp:
44805 * rendering/RenderTableCell.h:
44806 * rendering/RenderTableCol.cpp:
44807 * rendering/RenderTableCol.h:
44808 * rendering/RenderTableRow.cpp:
44809 * rendering/RenderTableSection.cpp:
44810 * rendering/RenderTableSection.h:
44811 * rendering/RenderText.cpp:
44812 * rendering/RenderText.h:
44813 * rendering/RenderTextArea.cpp:
44814 * rendering/RenderTextControl.cpp: Added.
44815 * rendering/RenderTextControl.h: Added.
44816 * rendering/RenderTextField.cpp: Removed.
44817 * rendering/RenderTextField.h: Removed.
44818 * rendering/RenderTheme.cpp:
44819 * rendering/RenderThemeMac.mm:
44820 * rendering/RenderTreeAsText.cpp:
44821 * rendering/RenderTreeAsText.h:
44822 * rendering/RenderView.cpp:
44823 * rendering/RenderWidget.cpp:
44824 * rendering/bidi.cpp:
44825 * rendering/render_style.cpp: Removed.
44826 * rendering/render_style.h: Removed.
44827 * xml/XSLStyleSheet.cpp:
44828 * xml/XSLTProcessor.cpp:
44829 * xml/xmlhttprequest.cpp:
44830 * xpath/impl/XPathParser.cpp:
44832 2006-07-09 Rob Buis <buis@kde.org>
44836 http://bugs.webkit.org/show_bug.cgi?id=8251
44837 navigator.platform incorrect in WebKit.app on Intel Macs
44839 For navigator.platform return "MacIntel" for Intel processors, "MacPPC"
44842 * bindings/js/kjs_navigator.cpp:
44843 (KJS::Navigator::getValueProperty):
44845 2006-07-08 Timothy Hatcher <timothy@apple.com>
44847 Reviewed by Maciej.
44849 Bug 5312: comments aren't available via DOM
44850 http://bugs.webkit.org/show_bug.cgi?id=5312
44852 <rdar://problem/4564414> getting comments via DOM isn't working (5312)
44853 <rdar://problem/4545691> DOM_COMMENT node masking out real DOM elements
44855 * dom/Document.cpp:
44856 (WebCore::Document::removedLastRef): set m_documentElement to 0
44857 (WebCore::Document::childrenChanged): invalidate the document element we have cached in case it was replaced
44858 (WebCore::Document::documentElement): cache the first element as the document node if m_documentElement is 0
44859 * dom/Document.h: added m_documentElement
44860 * html/HTMLDocument.cpp: removed documentElement(), HTML documents just use Document's documentElement()
44861 * html/HTMLDocument.h: ditto
44862 * html/HTMLParser.cpp:
44863 (WebCore::HTMLParser::handleError): make a new HTML node is the document's firstChild is NULL or
44864 the firstChild is not a HTML element (like a comment)
44865 * html/HTMLTokenizer.cpp:
44866 (WebCore::HTMLTokenizer::parseComment): removed the #ifdef to include comment nodes
44868 2006-07-08 Anders Carlsson <acarlsson@apple.com>
44870 Reviewed by Darin, tweaked slightly and landed by Maciej.
44872 http://bugs.webkit.org/show_bug.cgi?id=9787
44873 fast/frames tests failing (bad pointer to owner element) under MallocScribble
44875 * html/HTMLFrameElement.cpp:
44876 (WebCore::HTMLFrameElement::close):
44877 Disconnect the owner element of our frame.
44879 * html/HTMLIFrameElement.cpp:
44880 (WebCore::HTMLIFrameElement::attach):
44881 Don't call setFrame here.
44883 * html/HTMLPlugInElement.cpp:
44884 (WebCore::HTMLPlugInElement::detach):
44885 Disconnect the owner element of our frame.
44887 * html/HTMLPlugInElement.h:
44888 (WebCore::HTMLPlugInElement::setFrameName):
44892 (WebCore::Frame::Frame):
44893 Don't call setFrame.
44895 (WebCore::Frame::~Frame):
44896 Null out the owner element.
44898 (WebCore::Frame::requestObject):
44899 When an object creates a child frame, assign it a name so it can be
44900 accessed from HTMLPlugInElement.
44902 * rendering/RenderPart.cpp:
44903 (WebCore::RenderPart::RenderPart):
44904 (WebCore::RenderPart::~RenderPart):
44905 * rendering/RenderPart.h:
44906 Get rid of setFrame.
44908 2006-07-08 Darin Adler <darin@apple.com>
44912 - better fix for http://bugs.webkit.org/show_bug.cgi?id=9622
44913 REGRESSION: showModalDialog returnValue ignored, function result is always "undefined"
44915 * bindings/js/kjs_window.cpp:
44916 (KJS::showModalDialog): Set the return value after returning from the function if the
44917 window is not cleared; this is a better way to handle the case where the window does
44918 not get cleared before returning, and handles some new cases created by slight changes
44919 in the latest Safari properly too.
44920 (KJS::Window::clear): Changed logic slightly so we always store the result of getDirect
44921 into the return value slot -- the old code left the storage untouched if it was 0.
44922 Also made it only overwrite the return value slot if it's 0.
44924 * bindings/js/kjs_proxy.h:
44925 * bindings/js/kjs_proxy.cpp:
44926 * bindings/js/kjs_window.h:
44927 * bindings/js/kjs_window.cpp:
44929 Roll the previous fix out.
44931 2006-07-08 Darin Adler <darin@apple.com>
44933 - try to fix Windows build
44935 * WebCore.vcproj/WebCore/WebCore.vcproj: Add missing source files.
44937 === Safari-521.15 ===
44939 2006-07-07 Justin Garcia <justin.garcia@apple.com>
44943 Fix Mail ToDo crashers.
44946 (WebCore::Range::compareBoundaryPoints): Added an ASSERT that both
44947 containers are non-null and an early return.
44948 * editing/Selection.cpp:
44949 (WebCore::Selection::validate): Fix a dangling start/end.
44950 (WebCore::Selection::adjustForEditableContent): Added an early return if
44951 m_start or m_end are null.
44952 (WebCore::Selection::isContentEditable): Use isRichlyEditablePosition.
44953 (WebCore::Selection::isContentRichlyEditable): Ditto.
44954 * editing/Selection.h:
44955 * editing/VisiblePosition.cpp:
44956 (WebCore::VisiblePosition::next): Use the new highestEditableRoot.
44957 (WebCore::VisiblePosition::previous): Ditto.
44958 * editing/htmlediting.cpp:
44959 (WebCore::highestEditableRoot): Takes in a position.
44960 (WebCore::isEditablePosition): Added.
44961 (WebCore::isRichlyEditablePosition): Added.
44962 (WebCore::rootEditableElement): Added.
44963 (WebCore::nextCandidate): Moved and split out from nextVisiblePosition.
44964 (WebCore::nextVisuallyDistinctCandidate): Ditto.
44965 (WebCore::previousCandidate): Moved and split out from previousVisiblePosition.
44966 (WebCore::previousVisuallyDistinctCandidate): Ditto.
44967 (WebCore::firstEditablePositionAfterPositionInRoot): Iterate over positions,
44968 using nextVisuallyDistinctCandidate, skipping atomic nodes that are non-editable.
44969 (WebCore::lastEditablePositionBeforePositionInRoot): Ditto.
44970 * editing/htmlediting.h:
44971 * editing/visible_units.cpp:
44972 (WebCore::startOfWord): Added a FIXME.
44974 2006-07-07 Levi Weintraub <lweintraub@apple.com>
44978 Allowed deletion typing commands to take in a granularity
44980 * bridge/mac/WebCoreFrameBridge.h: Pass granularity across the bridge
44981 * bridge/mac/WebCoreFrameBridge.mm: Ditto
44982 (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
44983 (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
44984 * editing/TypingCommand.cpp: Constructors take in a granularity
44985 (WebCore::TypingCommand::TypingCommand):
44986 (WebCore::TypingCommand::deleteKeyPressed):
44987 (WebCore::TypingCommand::forwardDeleteKeyPressed):
44988 * editing/TypingCommand.h: ditto
44989 * page/Frame.h: Fixed bug that shouldDeleteSelection wasn't virtual
44991 2006-07-07 Brady Eidson <beidson@apple.com>
44993 Reviewed by Anders and Tim Hatcher
44995 Added an accessor to a SQLite config option to change its disk-syncing behavior.
44996 Used this accessor to significantly speed up writes to the Icon DB.
44998 * icon/IconDatabase.cpp:
44999 (WebCore::IconDatabase::open): Disable full syncing to the SQLite db to speed up writes to the icondb
45001 * icon/SQLDatabase.cpp:
45002 (SQLDatabase::setFullsync):
45003 (SQLDatabase::setSynchronous):
45004 * icon/SQLDatabase.h:
45005 (WebCore::SQLDatabase::): Added accessor to the SQLite config pragma "synchronous"
45007 2006-07-07 Darin Adler <darin@apple.com>
45009 Reviewed by Maciej.
45011 - fixed a storage leak noticed by the buildbot
45013 * dom/Document.cpp: (WebCore::Document::removedLastRef):
45014 Call delete on the markers before clearing the map containing them.
45016 2006-07-08 Anders Carlsson <acarlsson@apple.com>
45020 http://bugs.webkit.org/show_bug.cgi?id=9777
45021 Reproducible crash in Loading/Frames in ToT.
45023 The problem was that the renderpart destructor resets the frame's
45024 owner element. For iframes, this should only be done when the element is
45025 going to be removed from the document.
45027 * html/HTMLIFrameElement.cpp:
45028 (WebCore::HTMLIFrameElement::~HTMLIFrameElement):
45029 (WebCore::HTMLIFrameElement::willRemove):
45030 (WebCore::HTMLIFrameElement::removedFromDocument):
45031 (WebCore::HTMLIFrameElement::detach):
45032 * html/HTMLIFrameElement.h:
45033 Remove the frame in willRemove instead.
45035 * rendering/RenderPart.cpp:
45036 (WebCore::RenderPart::RenderPart):
45037 (WebCore::RenderPart::~RenderPart):
45038 * rendering/RenderPart.h:
45039 Don't call setFrame(0) in the destructor when the element is an iframe element.
45041 2006-07-07 Darin Adler <darin@apple.com>
45043 Reviewed by Anders.
45045 - fixed a storage leak noticed by the buildbot
45047 * page/FrameView.cpp: (WebCore::FrameViewPrivate::~FrameViewPrivate):
45048 Delete m_scheduledEvents.
45050 2006-07-07 Darin Adler <darin@apple.com>
45054 - fixed a couple of storage leaks noticed by the buildbot
45056 * html/HTMLOptGroupElement.cpp: (WebCore::HTMLOptGroupElement::attach):
45057 Call deref on the style after calling setRenderStyle, since styleForRenderer
45058 returns us a "ref'd" RenderStyle object.
45059 * html/HTMLOptionElement.cpp: (WebCore::HTMLOptionElement::attach): Ditto.
45061 2006-07-07 Darin Adler <darin@apple.com>
45065 - fix some license mistakes
45067 * LICENSE-APPLE: Added more years of publication to the copyright here.
45069 * html/CanvasGradient.idl: Corrected license on this file. It had the wrong one.
45070 * html/CanvasPattern.idl: Ditto.
45071 * html/CanvasRenderingContext2D.idl: Ditto.
45072 * html/HTMLCanvasElement.idl: Ditto.
45074 2006-07-06 Levi Weintraub <lweintraub@apple.com>
45078 Improved table editing: pressing delete directly before or after a table will now select
45079 the table first, then delete it, instead of just deleting it. Useful for when the table's
45080 existence is non-obvious.
45082 * bridge/mac/FrameMac.h: Added shouldDeleteSelection, which allows WebCore to trigger
45083 deletion editing deligates
45084 * bridge/mac/FrameMac.mm: ditto
45085 (WebCore::FrameMac::shouldDeleteSelection):
45086 * bridge/mac/WebCoreFrameBridge.h: ditto
45087 * editing/TypingCommand.cpp: Implemented check for a caret position next to a table, and
45088 subsequent selection (as opposed to removal)
45089 (WebCore::TypingCommand::deleteKeyPressed):
45090 (WebCore::TypingCommand::forwardDeleteKeyPressed):
45091 * page/Frame.cpp: shouldDeleteSelection added
45092 (WebCore::Frame::shouldDeleteSelection):
45093 * page/Frame.h: ditto
45095 2006-07-07 Sam Weinig <sam.weinig@gmail.com>
45099 - fix http://bugs.webkit.org/show_bug.cgi?id=9768
45100 Split XSLImportRule out of XSLStyleSheet.* into separate
45101 files (one class per file).
45103 * WebCore.xcodeproj/project.pbxproj:
45104 * xml/XSLImportRule.cpp: Added.
45105 (WebCore::XSLImportRule::XSLImportRule):
45106 (WebCore::XSLImportRule::parentStyleSheet):
45107 (WebCore::XSLImportRule::loadSheet):
45108 * xml/XSLImportRule.h: Added.
45109 * xml/XSLStyleSheet.cpp:
45110 * xml/XSLStyleSheet.h:
45112 2006-07-07 Anders Carlsson <acarlsson@apple.com>
45116 http://bugs.webkit.org/show_bug.cgi?id=8300
45117 REGRESSION: First mouse click is randomly ignored when clicking on checkbox and radio buttons
45120 Set "-webkit-user-select: ignore" on radio buttons and check boxes .
45122 2006-07-07 Maciej Stachowiak <mjs@apple.com>
45124 Reviewed by Tim Hatcher.
45126 - fix 20 Node leaks on fast/events tests - these should be the last ones
45128 * bindings/objc/DOMEvents.mm:
45129 (-[DOMEvent dealloc]): implement - deref the event!
45130 (-[DOMEvent finalize]): ditto
45132 2006-07-06 Maciej Stachowiak <mjs@apple.com>
45134 Reviewed by Tim Hatcher.
45136 - fix 26 Node leaks on fast/dom tests
45138 * dom/Document.cpp:
45139 (WebCore::Document::removedLastRef): delete tokenizer - if we are still parsing at this point, we don't
45140 want nodes held by the parser to keep the document alive.
45141 * html/HTMLParser.cpp:
45142 (WebCore::RefNonDocNodePtr::RefNonDocNodePtr): Smart pointer that acts like RefPtr for Node,
45143 but avoids refing document nodes to avoid cycles.
45144 (WebCore::RefNonDocNodePtr::~RefNonDocNodePtr):
45145 (WebCore::RefNonDocNodePtr::get):
45146 (WebCore::RefNonDocNodePtr::operator*):
45147 (WebCore::RefNonDocNodePtr::operator->):
45148 (WebCore::RefNonDocNodePtr::operator!):
45149 (WebCore::RefNonDocNodePtr::operator UnspecifiedBoolType):
45150 (WebCore::RefNonDocNodePtr::operator=):
45151 (WebCore::operator==):
45152 (WebCore::operator!=):
45153 (WebCore::HTMLStackElem): Use a RefNonDocNodePtr instead of RefPtr<Node>
45154 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Use a RefPtr here to avoid crashing
45156 2006-07-06 Adele Peterson <adele@apple.com>
45158 Reviewed by Maciej.
45160 Fixed new popup control to open up when the spacebar and the up and down arrows are pressed.
45162 - Fixed http://bugs.webkit.org/show_bug.cgi?id=9762
45163 [Native pop up] Highlighted item text is black instead of white
45165 * html/HTMLSelectElement.cpp:
45166 (WebCore::HTMLSelectElement::isKeyboardFocusable): Added.
45167 (WebCore::HTMLSelectElement::isMouseFocusable): Added.
45168 (WebCore::HTMLSelectElement::defaultEventHandler): Updated to showPopup for up and down arrow keys and spacebar.
45169 * html/HTMLSelectElement.h: (WebCore::HTMLSelectElement::shouldUseMenuList): Made this const.
45170 * rendering/RenderPopupMenu.cpp: (WebCore::RenderPopupMenu::populate): Added FIXME.
45171 * rendering/RenderPopupMenuMac.mm:
45172 (WebCore::RenderPopupMenuMac::showPopup): Updated to save the NSEvent that triggers the popup, so we can send
45173 fake mouseUp and keyUp events when the NSMenu returns.
45174 (WebCore::RenderPopupMenuMac::addGroupLabel): Only set the NSForegroundColorAttributeName attribute if the text isn't black.
45175 Follow-up bug about other colors: http://bugs.webkit.org/show_bug.cgi?id=9769
45176 (WebCore::RenderPopupMenuMac::addOption): ditto.
45177 * bridge/mac/FrameMac.h: (WebCore::FrameMac::currentEvent): Returns the current NSEvent.
45179 2006-07-06 Justin Garcia <justin.garcia@apple.com>
45183 <rdar://problem/4609184>
45184 Mail crashes at WebCore::Selection::adjustForEditableContent
45185 <rdar://problem/4609140>
45186 Crash at WebCore::Range::compareBoundaryPoints
45188 * editing/Selection.cpp:
45189 (WebCore::Selection::adjustForEditableContent):
45190 * editing/VisiblePosition.cpp:
45191 (WebCore::VisiblePosition::next): Moved code into a helper function.
45192 (WebCore::VisiblePosition::previous): Ditto.
45193 * editing/htmlediting.cpp:
45194 (WebCore::comparePositions): Moved from Selection.cpp.
45195 (WebCore::lowestEditableAncestor): Added. Returns rootEditableElement
45196 for a node in editable content and the rootEditableElement for the first
45197 ancestor that's editable for a node in non-editable content.
45198 (WebCore::firstEditablePositionAfterPositionInRoot):
45199 (WebCore::lastEditablePositionBeforePositionInRoot):
45200 * editing/htmlediting.h:
45202 2006-07-06 Anders Carlsson <acarlsson@apple.com>
45206 http://bugs.webkit.org/show_bug.cgi?id=9528
45207 REGRESSION: arrow key skips '>' in Bugzilla replies due to '\n' in text nodes
45209 Patch by Darin, tweaked by Anders.
45211 * html/HTMLElement.cpp:
45212 (WebCore::HTMLElement::setInnerText):
45213 Convert newline characters to <br> elements. I've verified that what's done here is what WinIE does when setting innerText.
45215 (WebCore::HTMLElement::setOuterText):
45218 * rendering/RenderTextField.cpp:
45219 (WebCore::RenderTextField::textWithHardLineBreaks):
45220 Remove assert. m_div->firstChild() can be null now because setInnerText doesn't create
45221 text nodes for empty strings anymore.
45223 2006-07-06 Adele Peterson <adele@apple.com>
45225 Reviewed by Tim Hatcher.
45227 - Speculative fix for <rdar://problem/4605532> unrepro crash at cnn.com after upgrading to 10.4.7 (but happening with 10.4.6 too)
45229 * page/FrameView.cpp: (WebCore::FrameView::layout): Ref's the view during layout, since a recalcStyle could cause the view to be deleted.
45230 If we get back from recalcStyle, and there's only one ref, return early since the the view will be deleted when we exit layout.
45231 * page/FrameView.h: (WebCore::FrameView::hasOneRef): Added.
45233 2006-07-06 Anders Carlsson <acarlsson@apple.com>
45235 Reviewed by Maciej.
45237 <rdar://problem/4610891> Support overflow events
45239 * DerivedSources.make:
45240 Add generated sources.
45242 * WebCore.xcodeproj/project.pbxproj:
45245 * bindings/js/kjs_events.cpp:
45247 Support creating wrappers for overflow events..
45249 * bindings/objc/DOMEvents.h:
45250 * bindings/objc/DOMEvents.mm:
45251 (+[DOMEvent _eventWith:]):
45252 (-[DOMOverflowEvent _overflowEvent]):
45253 (-[DOMOverflowEvent orient]):
45254 (-[DOMOverflowEvent horizontalOverflow]):
45255 (-[DOMOverflowEvent verticalOverflow]):
45256 Add Objective-C wrapper for overflow events.
45259 (WebCore::Event::isOverflowEvent):
45261 * dom/EventNames.h:
45262 * dom/OverflowEvent.cpp: Added.
45263 (WebCore::OverflowEvent::OverflowEvent):
45264 (WebCore::OverflowEvent::isOverflowEvent):
45265 * dom/OverflowEvent.h: Added.
45266 (WebCore::OverflowEvent::):
45267 (WebCore::OverflowEvent::orient):
45268 (WebCore::OverflowEvent::horizontalOverflow):
45269 (WebCore::OverflowEvent::verticalOverflow):
45270 * dom/OverflowEvent.idl: Added.
45271 Add overflow events.
45273 * page/FrameView.cpp:
45274 (WebCore::FrameViewPrivate::FrameViewPrivate):
45275 (WebCore::FrameView::applyOverflowToViewport):
45276 (WebCore::FrameView::layout):
45277 Dispatch any scheduled events when layout is done.
45279 (WebCore::FrameView::scheduleEvent):
45280 New function which schedules an event.
45282 (WebCore::FrameView::updateOverflowStatus):
45283 Update overflow status for the viewport.
45285 (WebCore::FrameView::dispatchScheduledEvents):
45286 New function which dispatches all scheduled events.
45288 * page/FrameView.h:
45291 * rendering/RenderLayer.cpp:
45292 (WebCore::RenderLayer::RenderLayer):
45293 (WebCore::RenderLayer::updateOverflowStatus):
45294 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
45295 * rendering/RenderLayer.h:
45296 Schedule overflow events when overflow status changes.
45298 2006-07-06 Timothy Hatcher <timothy@apple.com>
45302 <rdar://problem/4610881> Expose scroll-related JS properties to ObjC DOM interface
45303 <rdar://problem/4519675> offsetLeft, offsetTop, offsetHeight, and offsetWidth
45304 properties are not exposed to ObjC
45306 * bindings/objc/DOMPrivate.h:
45307 * bindings/objc/DOMHTML.mm:
45308 (-[DOMHTMLElement offsetLeft]):
45309 (-[DOMHTMLElement offsetTop]):
45310 (-[DOMHTMLElement offsetWidth]):
45311 (-[DOMHTMLElement offsetHeight]):
45312 (-[DOMHTMLElement offsetParent]):
45313 (-[DOMHTMLElement clientWidth]):
45314 (-[DOMHTMLElement clientHeight]):
45315 (-[DOMHTMLElement scrollLeft]):
45316 (-[DOMHTMLElement setScrollLeft:]):
45317 (-[DOMHTMLElement scrollTop]):
45318 (-[DOMHTMLElement setScrollTop:]):
45319 (-[DOMHTMLElement scrollWidth]):
45320 (-[DOMHTMLElement scrollHeight]):
45322 2006-07-06 Maciej Stachowiak <mjs@apple.com>
45326 - fix 435 more layout tests Node leaks
45328 * editing/CompositeEditCommand.cpp:
45329 (WebCore::CompositeEditCommand::moveParagraphs): fix more instances of leaked DOM ranges
45331 2006-07-06 David Harrison <harrison@apple.com>
45335 <rdar://problem/4565031> innerHTML of XMP tag returns special characters like '>' instead of '>'
45337 Test: fast/innerHTML/006.html
45339 * editing/markup.cpp:
45340 (WebCore::startMarkup):
45341 (WebCore::createMarkup):
45342 Do not special quote content of XMP nodes.
45344 2006-07-06 Maciej Stachowiak <mjs@apple.com>
45346 - back out earlier leak fix, as it caused a crash on one of the fast/invalid layout tests
45348 * dom/Document.cpp:
45349 (WebCore::Document::removedLastRef):
45350 * html/HTMLParser.cpp:
45351 (WebCore::HTMLStackElem::HTMLStackElem):
45352 (WebCore::HTMLParser::popNestedHeaderTag):
45353 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
45354 (WebCore::HTMLParser::reopenResidualStyleTags):
45355 (WebCore::HTMLParser::popBlock):
45356 (WebCore::HTMLParser::popOneBlock):
45358 2006-07-06 Maciej Stachowiak <mjs@apple.com>
45360 Reviewed by Anders.
45362 - fix ~3000 Node leaks on the editing tests
45364 * editing/CompositeEditCommand.cpp:
45365 (WebCore::CompositeEditCommand::moveParagraphs): put a newly created Range in a RefPtr
45366 to avoid leaking it, as this leaks the whole document.
45368 2006-07-06 Maciej Stachowiak <mjs@apple.com>
45370 Reviewed by Anders.
45372 - fix 26 Node leaks on various fast/dom tests
45374 * dom/Document.cpp:
45375 (WebCore::Document::removedLastRef): Delete the tokenizer here, since if we are in mid-parse,
45376 the parser might hold refs on some of our children that have self-only refs.
45377 * html/HTMLParser.cpp:
45378 (WebCore::HTMLStackElem::HTMLStackElem): don't ref the node if it is a document to avoid ref cycles
45379 (WebCore::HTMLStackElem::~HTMLStackElem): ditto
45380 (WebCore::HTMLStackElem::node): changed interface a bit to support the above
45381 (WebCore::HTMLStackElem::setNode): ditto
45382 (WebCore::HTMLParser::popNestedHeaderTag): use new interface to HTMLStackElem
45383 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): ditto
45384 (WebCore::HTMLParser::reopenResidualStyleTags): ditto
45385 (WebCore::HTMLParser::popBlock): ditto
45386 (WebCore::HTMLParser::popOneBlock): ditto
45388 2006-07-06 Mitz Pettel <opendarwin.org@mitzpettel.com>
45392 * rendering/RenderMenuList.h:
45393 (WebCore::RenderMenuList::createsAnonymousWrapper): This method replaces
45394 allowsReusingAnonymousChild() and has the opposite meaning.
45396 2006-07-05 Adele Peterson <adele@apple.com>
45400 * WebCore.vcproj/WebCore/WebCore.vcproj:
45401 * platform/win/TemporaryLinkStubs.cpp:
45402 * rendering/RenderMenuList.cpp:
45403 (WebCore::RenderMenuList::calcMinMaxWidth):
45404 * rendering/RenderPopupMenuWin.h:
45405 (WebCore::RenderPopupMenuWin::RenderPopupMenuWin):
45406 * rendering/RenderThemeWin.cpp:
45408 2006-07-05 Maciej Stachowiak <mjs@apple.com>
45412 - fix 308 Node leaks on the editing layout tests
45414 * dom/Document.cpp: (WebCore::Document::removedLastRef): Clear the markers once there
45415 are no real refs on the document, otherwise a self-only reference cycle w/ the document
45418 2006-07-05 Adele Peterson <adele@apple.com>
45420 Reviewed by Maciej and Hyatt.
45422 Initial implementation of popup menu control. This can be turned on by setting -webkit-appearance: menulist on a select element.
45424 * WebCore.xcodeproj/project.pbxproj: Added RenderMenuList.h, RenderMenuList.cpp, RenderPopupMenu.h, RenderPopupMenu.cpp,
45425 RenderPopupMenuWin.h, RenderPopupMenuMac.h, RenderPopupMenuMac.mm,
45428 (WebCore::Node::renderStyle): Added. Returns the renderer's style. If there's no renderer, returns's a RenderStyle that's kept by the node.
45429 This is important for HTMLOptGroupElement and HTMLOptionElement, which don't have renderers.
45430 (WebCore::Node::setRenderStyle): Added.
45432 * dom/Element.cpp: (WebCore::Element::recalcStyle): Updated to use renderStyle so recalcStyle will work for HTMLOptionElements and HTMLOptGroupElements.
45434 * css/cssstyleselector.cpp: Updated to call renderStyle method on the node, so resolving style works on elements w/o renderers that cache style.
45435 (WebCore::CSSStyleSelector::initForStyleResolve):
45436 (WebCore::CSSStyleSelector::locateCousinList):
45437 (WebCore::CSSStyleSelector::canShareStyleWithElement):
45438 (WebCore::CSSStyleSelector::locateSharedStyle):
45439 (WebCore::CSSStyleSelector::checkOneSelector):
45441 * css/html4.css: Removed display:none from options and optgroups, since we're now caching style for these elements.
45442 Added font-weight styles for option and optgroup.
45444 * html/HTMLOptGroupElement.h: Added m_style to keep track of a RenderStyle for the element, even though we aren't creating a renderer.
45445 This will allow us to honor style for optgroups and options for popup menus (and eventually list boxes too).
45446 (WebCore::HTMLOptGroupElement::rendererIsNeeded): Added.
45447 (WebCore::HTMLOptGroupElement::renderStyle): Added.
45448 * html/HTMLOptionElement.h: ditto.
45449 (WebCore::HTMLOptionElement::rendererIsNeeded): Added.
45450 (WebCore::HTMLOptionElement::renderStyle): Added.
45452 * html/HTMLOptGroupElement.cpp:
45453 (WebCore::HTMLOptGroupElement::HTMLOptGroupElement): Initialize m_style.
45454 (WebCore::HTMLOptGroupElement::attach): Set the renderStyle.
45455 (WebCore::HTMLOptGroupElement::detach): Clear m_style.
45456 (WebCore::HTMLOptGroupElement::setRenderStyle): Added.
45457 (WebCore::HTMLOptGroupElement::groupLabelText): Added.
45458 * html/HTMLOptionElement.cpp: ditto.
45459 (WebCore::HTMLOptionElement::HTMLOptionElement):
45460 (WebCore::HTMLOptionElement::attach):
45461 (WebCore::HTMLOptionElement::detach):
45462 (WebCore::HTMLOptionElement::setRenderStyle):
45463 (WebCore::HTMLOptionElement::optionText):
45465 * html/HTMLSelectElement.cpp: Added code to use the new RenderMenuList if the appearance is set to MenuListAppearance,
45466 and if we're not creating a list box renderer.
45467 (WebCore::HTMLSelectElement::recalcStyle):
45468 (WebCore::HTMLSelectElement::createRenderer):
45469 (WebCore::HTMLSelectElement::setRecalcListItems):
45470 (WebCore::HTMLSelectElement::reset):
45471 (WebCore::HTMLSelectElement::notifyOptionSelected):
45472 (WebCore::HTMLSelectElement::defaultEventHandler):
45473 * html/HTMLSelectElement.h:
45475 * WebCore.exp: Added _wkPopupMenu.
45476 * platform/mac/WebCoreSystemInterface.h: Added wkPopupMenu to get the NSMenu to pop up.
45477 * platform/mac/WebCoreSystemInterface.mm:
45479 * platform/win/TemporaryLinkStubs.cpp: Added stubs for RenderPopupMenuWin.
45480 (RenderPopupMenuWin::RenderPopupMenuWin):
45481 (RenderPopupMenuWin::~RenderPopupMenuWin):
45482 (RenderPopupMenuWin::clear):
45483 (RenderPopupMenuWin::populate):
45484 (RenderPopupMenuWin::showPopup):
45485 (RenderPopupMenuWin::addSeparator):
45486 (RenderPopupMenuWin::addGroupLabel):
45487 (RenderPopupMenuWin::addOption):
45488 * rendering/RenderPopupMenuWin.h: Added.
45490 * rendering/RenderPopupMenu.cpp: Added.
45491 (WebCore::RenderPopupMenu::RenderPopupMenu):
45492 (WebCore::RenderPopupMenu::~RenderPopupMenu):
45493 (WebCore::RenderPopupMenu::clear):
45494 (WebCore::RenderPopupMenu::populate): Walks the DOM tree, and adds separators, options, and group labels to the RenderPopupMenu.
45495 (WebCore::RenderPopupMenu::showPopup):
45496 (WebCore::RenderPopupMenu::addSeparator):
45497 (WebCore::RenderPopupMenu::addGroupLabel):
45498 (WebCore::RenderPopupMenu::addOption):
45499 * rendering/RenderPopupMenu.h: Added.
45500 (WebCore::RenderPopupMenu::renderName):
45501 (WebCore::RenderPopupMenu::getRenderMenuList):
45502 * rendering/RenderPopupMenuMac.h: Added.
45503 * rendering/RenderPopupMenuMac.mm: Added.
45504 (WebCore::RenderPopupMenuMac::RenderPopupMenuMac):
45505 (WebCore::RenderPopupMenuMac::~RenderPopupMenuMac):
45506 (WebCore::RenderPopupMenuMac::clear): Removes all items from the menu.
45507 (WebCore::RenderPopupMenuMac::populate): Disables menuChangedMessages before populating the menu.
45508 (WebCore::RenderPopupMenuMac::showPopup): Calculates the right position, and calls wkPopupMenu.
45509 (WebCore::RenderPopupMenuMac::addSeparator):
45510 (WebCore::RenderPopupMenuMac::addGroupLabel):
45511 (WebCore::RenderPopupMenuMac::addOption):
45513 * rendering/RenderMenuList.cpp: Added.
45514 (WebCore::RenderMenuList::RenderMenuList):
45515 (WebCore::RenderMenuList::addChild):
45516 (WebCore::RenderMenuList::removeChild):
45517 (WebCore::RenderMenuList::setStyle):
45518 (WebCore::RenderMenuList::updateFromElement): If the options have changed, iterate through the children to find the menu item with the widest text.
45519 Set the button text to the selected item's text.
45520 (WebCore::RenderMenuList::setText):
45521 (WebCore::RenderMenuList::paintObject):
45522 (WebCore::RenderMenuList::baselinePosition):
45523 (WebCore::RenderMenuList::calcMinMaxWidth):
45524 (WebCore::RenderMenuList::showPopup):
45525 (WebCore::RenderMenuList::layout):
45526 (WebCore::RenderMenuList::updateSelection):
45527 (WebCore::RenderMenuList::valueChanged):
45528 * rendering/RenderMenuList.h: Added.
45529 (WebCore::RenderMenuList::removeLeftoverAnonymousBoxes):
45530 (WebCore::RenderMenuList::allowsReusingAnonymousChild):
45531 (WebCore::RenderMenuList::canHaveChildren):
45532 (WebCore::RenderMenuList::renderName):
45533 (WebCore::RenderMenuList::setOptionsChanged):
45534 (WebCore::RenderMenuList::selectionChanged):
45535 (WebCore::RenderMenuList::setSelectionChanged):
45536 (WebCore::RenderMenuList::hasPopupMenu):
45538 * rendering/RenderTheme.cpp: Added cases for MenuListAppearance.
45539 (WebCore::RenderTheme::adjustStyle):
45540 (WebCore::RenderTheme::paint):
45541 (WebCore::RenderTheme::paintBorderOnly):
45542 (WebCore::RenderTheme::isControlStyled):
45543 (WebCore::RenderTheme::adjustMenuListStyle):
45544 (WebCore::RenderTheme::createPopupMenu): creates platform-specific RenderPopupMenu.
45545 * rendering/RenderTheme.h:
45546 (WebCore::RenderTheme::sizeOfArrowControl): Added.
45547 (WebCore::RenderTheme::paintMenuList): Added.
45548 * rendering/RenderThemeMac.h:
45549 * rendering/RenderThemeMac.mm:
45550 (WebCore::RenderThemeMac::adjustRepaintRect):
45551 (WebCore::RenderThemeMac::paintMenuList):
45552 (WebCore::RenderThemeMac::adjustMenuListStyle):
45553 (WebCore::RenderThemeMac::setPopupButtonCellState):
45554 (WebCore::RenderThemeMac::createPopupMenu):
45555 (WebCore::RenderThemeMac::sizeOfArrowControl):
45556 * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::createPopupMenu):
45557 * rendering/RenderThemeWin.h:
45559 2006-07-05 Brady Eidson <beidson@apple.com>
45561 Reviewed by Tim Omernick.
45563 IconDatabase now respects private browsing via the use of in memory, temporary tables
45565 * bridge/mac/WebCoreIconDatabaseBridge.mm:
45566 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
45567 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]): Renamed WebCore::IconDatabase methods, changes reflected here
45569 * icon/IconDatabase.cpp:
45570 (WebCore::IconDatabase::clearDatabase):
45571 (WebCore::IconDatabase::deletePrivateTables):
45572 (WebCore::IconDatabase::imageDataForIconID):
45573 (WebCore::IconDatabase::imageDataForIconURL):
45574 (WebCore::IconDatabase::imageDataForPageURL):
45575 (WebCore::IconDatabase::setPrivateBrowsingEnabled):
45576 (WebCore::IconDatabase::iconForPageURL):
45577 (WebCore::IconDatabase::iconURLForPageURL):
45578 (WebCore::IconDatabase::setIconDataForIconURL):
45579 (WebCore::IconDatabase::performSetIconDataForIconID):
45580 (WebCore::IconDatabase::establishTemporaryIconIDForEscapedIconURL):
45581 (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
45582 (WebCore::IconDatabase::setHaveNoIconForIconURL):
45583 (WebCore::IconDatabase::setIconURLForPageURL):
45584 (WebCore::IconDatabase::performSetIconURLForPageURL):
45585 (WebCore::IconDatabase::hasIconForIconURL):
45586 -Some style/comment cleanups, but mainly putting private browsing handling in place
45588 * icon/IconDatabase.h: Some methods added, others renamed, some comments added
45590 * icon/SQLStatement.cpp:
45591 (WebCore::SQLStatement::getColumnName):
45592 (WebCore::SQLStatement::getColumnName16):
45593 (WebCore::SQLStatement::getColumnText):
45594 (WebCore::SQLStatement::getColumnText16):
45595 -The above 4 had changes to return String() for empty results instead of "" as it's less expensive;
45597 2006-07-05 John Sullivan <sullivan@apple.com>
45599 Reviewed by Darin and Adele.
45601 - fixed <rdar://problem/4609162> REGRESSION: When tabbing between links on a page,
45602 the window doesn't scroll to link that's not in view
45604 * html/HTMLAnchorElement.cpp:
45605 * html/HTMLAnchorElement.h:
45606 removed HTMLAnchorElement::focus and HTMLAnchorElement::blur.
45608 HTMLAnchorElement::focus just called document()->setFocusNode(). The scroll-to-reveal
45609 code used to be inside document()->setFocusNode(), but now it's in Element::focus, and this override
45610 was preventing that code from running.
45612 HTMLAnchorElement::blur was exactly the same implementation as Element::blur (and there aren't any
45613 other implementations of ::blur in the class hierarchy in between). This change has no practical
45614 effect, other than removing duplicate code.
45616 Adele and I think that it was an oversight not to remove these two methods on 12/20/05
45617 these methods were removed from HTMLButtonElementImpl and HTMLInputElementImpl.
45619 2006-07-05 Anders Carlsson <acarlsson@apple.com>
45621 * bridge/win/FrameWin.cpp:
45622 (WebCore::FrameWin::FrameWin):
45623 * bridge/win/FrameWin.h:
45624 * platform/win/TemporaryLinkStubs.cpp:
45625 (FrameWin::createFrame):
45628 2006-07-05 Anders Carlsson <acarlsson@apple.com>
45630 * WebCore.xcodeproj/project.pbxproj:
45631 Revert accidental change of debug format to DWARF.
45633 2006-07-05 Anders Carlsson <acarlsson@apple.com>
45635 Reviewed by Maciej.
45637 http://bugs.webkit.org/show_bug.cgi?id=3581
45638 iFrames set to display:none are Missing from frames array
45640 * bridge/mac/FrameMac.h:
45641 * bridge/mac/FrameMac.mm:
45642 (WebCore::FrameMac::FrameMac):
45643 (WebCore::FrameMac::createFrame):
45644 * bridge/mac/WebCoreFrameBridge.h:
45645 * bridge/mac/WebCoreFrameBridge.mm:
45646 (-[WebCoreFrameBridge initSubframeWithOwnerElement:]):
45647 (-[WebCoreFrameBridge installInFrame:]):
45648 Modify to pass the owner element instead of the owner renderer.
45650 * dom/ContainerNode.cpp:
45651 (WebCore::ContainerNode::insertBefore):
45652 (WebCore::ContainerNode::replaceChild):
45653 (WebCore::ContainerNode::appendChild):
45654 Dispatch the node inserted events before attaching the nodes. This is what the
45657 * html/HTMLFrameElement.cpp:
45658 (WebCore::HTMLFrameElement::openURL):
45659 (WebCore::HTMLFrameElement::attach):
45660 Pass the element to requestFrame.
45662 (WebCore::HTMLFrameElement::setLocation):
45663 Don't call attach/detach on an iframe.
45665 * html/HTMLIFrameElement.cpp:
45666 (WebCore::HTMLIFrameElement::insertedIntoDocument):
45667 Load the frame here (using openURL).
45669 (WebCore::HTMLIFrameElement::removedFromDocument):
45670 Call frameDetached.
45672 (WebCore::HTMLIFrameElement::attach):
45673 If there's a renderer, attach the content frame to it.
45675 (WebCore::HTMLIFrameElement::detach):
45676 Reset the renderer's frame.
45678 (WebCore::HTMLIFrameElement::openURL):
45679 Modify to request the frame.
45681 * html/HTMLIFrameElement.h:
45685 (WebCore::parentFromOwnerElement):
45686 (WebCore::Frame::Frame):
45687 (WebCore::Frame::~Frame):
45688 (WebCore::Frame::requestFrame):
45689 (WebCore::Frame::requestObject):
45690 (WebCore::Frame::loadSubframe):
45691 (WebCore::Frame::ownerElement):
45692 (WebCore::Frame::ownerRenderer):
45693 (WebCore::Frame::disconnectOwnerElement):
45695 * page/FramePrivate.h:
45696 (WebCore::FramePrivate::FramePrivate):
45697 * rendering/RenderPart.cpp:
45698 (WebCore::RenderPart::setFrame):
45699 Modify to keep an owner element around instead of the renderer.
45701 * rendering/RenderPartObject.cpp:
45702 (WebCore::RenderPartObject::updateWidget):
45703 Don't do anything for iframes.
45705 2006-07-04 Kevin Ollivier <kevino@theolliviers.com>
45707 Reviewed by Maciej, reworked a bit by Darin.
45709 Compile fixes for wx port / gcc 4.0.2
45711 * platform/PlatformString.h:
45712 * platform/StringImpl.h:
45713 Include CoreFoundation for CF-specific code.
45716 * doc/EventTargetNode.h:
45717 Silence warnings about 'extra tokens' after #endif on gcc 4.0.2.
45718 (Not an error but warnings appear frequently.)
45720 * WebCoreSources.bkl:
45721 * webcore-base.bkl:
45722 Synching ports sources file with TOT. Also, making sure SRCDIR variable
45723 overrides any previous values.
45725 * loader/ImageDocument.cpp:
45726 Use PLATFORM(MAC) for the parts that are specific to the Macintosh version,
45727 and move the Objective-C parts to another file.
45729 * loader/mac/ImageDocumentMac.h: Added.
45730 * loader/mac/ImageDocumentMac.mm: Added.
45732 2006-07-04 Sam Weinig <sam.weinig@gmail.com>
45736 * platform/Color.cpp:
45737 (WebCore::makeRGBAFromHSLA):
45739 2006-07-02 David Carson <dacarson@gmail.com>
45743 - Added HSL color support as specified in CSS3 spec.
45744 http://bugs.webkit.org/show_bug.cgi?id=9506
45745 Added parsing support of hsl(h,s,l) and hsla(h,s,l,a)
45746 Added converting code to convert HSL to RGB
45748 * css/cssparser.cpp:
45749 (WebCore::CSSParser::parseColorParameters):
45750 Moved common code to parse RGB/RGBA values into it's
45751 own function. This code was duplicated in the parseColorFromValue()
45753 (WebCore::CSSParser::parseHSLParameters):
45754 Common code to parse HSL/HSLA values.
45755 (WebCore::CSSParser::parseColorFromValue):
45756 Moved RGB/RGBA parsing out to seperate function as the code was
45758 Added parsing support for hsl( and hsla(
45760 Added two new functions parseColorParameters() and
45761 parseHSLParameters().
45762 * platform/Color.cpp:
45763 (WebCore::calcHue):
45764 Added Hue parameter to RGB color.
45765 (WebCore::makeRGBAFromHSLA):
45766 New function to convert HSLA to RGBA.
45767 * platform/Color.h:
45768 Added new functions makeRGBAFromHSLA() and calcHue().
45770 2006-07-02 Mike Emmel <mike.emmel@gmail.com>
45772 Reviewed and landed by ggaren.
45774 * platform/gdk/TransferJobManager.cpp
45775 Fixed broken dowload logic
45776 * platform/gdk/ScrollViewGdk.cpp
45777 Add comment that scrollbarSize is a temporary variable
45778 * Projects/gdk/webcore-gdk.bkl
45779 Defined NDEBUG build executable is miscompiled otherwise
45780 * WebCoreSources.bkl
45781 added icon/SiteIcon.cpp editing/IndentOutdentCommand.cpp
45782 html/HTMLViewSourceDocument.cpp
45784 2006-07-02 Shawn Stricker <kb1ibt@gmail.com>
45786 Reviewed by Timothy Hatcher. Build fix for Linux.
45788 - fix http://bugs.webkit.org/show_bug.cgi?id=9684
45789 [GDK] multiple little fixes and a few new things for Templinkstubs
45791 * platform/gdk/ScrollViewGdk.cpp:
45792 (WebCore::ScrollView::setDrawable): Changed SCROLLBAR_SIZE to scrollbarSize.
45793 * platform/gdk/TemporaryLinkStubs.cpp:
45794 (Image::drawTiled): Added missing parameter to argument list.
45795 * platform/gdk/TransferJobManager.cpp:
45796 (WebCore::writeCallback): Added missing parenthesis to static_cast.
45798 2006-07-02 Mitz Pettel <opendarwin.org@mitzpettel.com>
45802 - fix http://bugs.webkit.org/show_bug.cgi?id=9674
45803 REGRESSION (r15075): Blank or incomplete pages on digg.com
45805 Replaced the requestingScript state bit added in the fix for bug 9317
45806 with a m_requestingScript bool that is set before and restored
45807 after calling ref() on a CachedScript.
45809 Test: fast/tokenizer/nested-cached-scripts.html
45811 * html/HTMLTokenizer.cpp:
45812 (WebCore::HTMLTokenizer::HTMLTokenizer):
45813 (WebCore::HTMLTokenizer::begin):
45814 (WebCore::HTMLTokenizer::scriptHandler):
45815 (WebCore::HTMLTokenizer::notifyFinished):
45816 * html/HTMLTokenizer.h:
45817 (WebCore::HTMLTokenizer::State::):
45819 2006-07-01 David Kilzer <ddkilzer@kilzer.net>
45821 Reviewed by NOBODY (build fix).
45823 * platform/gdk/TransferJobManager.cpp:
45824 (WebCore::writeCallback): Changed 'static_cat' to 'static_cast'.
45826 2006-06-30 Mike Emmel <mike.emmel@gmail.com>
45828 Reviewed and worked over a lot by Darin.
45830 - check in first set of GDK-specific sources
45832 * platform/gdk/BrowserExtensionGdk.h: Added.
45833 * platform/gdk/CookieJarGdk.cpp: Added.
45834 * platform/gdk/CursorGdk.cpp: Added.
45835 * platform/gdk/FontCacheGdk.cpp: Added.
45836 * platform/gdk/FontDataGdk.cpp: Added.
45837 * platform/gdk/FontGdk.cpp: Added.
45838 * platform/gdk/FontPlatformData.h: Added.
45839 * platform/gdk/FontPlatformDataGdk.cpp: Added.
45840 * platform/gdk/FrameGdk.cpp: Added.
45841 * platform/gdk/FrameGdk.h: Added.
45842 * platform/gdk/GlyphMapGdk.cpp: Added.
45843 * platform/gdk/KeyEventGdk.cpp: Added.
45844 * platform/gdk/KeyboardCodes.h: Added.
45845 * platform/gdk/MouseEventGdk.cpp: Added.
45846 * platform/gdk/PageGdk.cpp: Added.
45847 * platform/gdk/RenderThemeGdk.cpp: Added.
45848 * platform/gdk/RenderThemeGdk.h: Added.
45849 * platform/gdk/ScreenGdk.cpp: Added.
45850 * platform/gdk/ScrollViewGdk.cpp: Added.
45851 * platform/gdk/SharedTimerLinux.cpp: Added.
45852 * platform/gdk/SystemTimeLinux.cpp: Added.
45853 * platform/gdk/TemporaryLinkStubs.cpp: Added.
45854 * platform/gdk/TransferJobCurl.cpp: Added.
45855 * platform/gdk/TransferJobManager.cpp: Added.
45856 * platform/gdk/TransferJobManager.h: Added.
45857 * platform/gdk/WheelEventGdk.cpp: Added.
45858 * platform/gdk/WidgetGdk.cpp: Added.
45859 * platform/gdk/gdk-encodings.txt: Added.
45861 2006-06-30 Mike Emmel <mike.emmel@gmail.com>
45865 * WebCoreSources.bkl: Updated for recent file changes.
45867 2006-06-30 Mike Emmel <mike.emmel@gmail.com>
45869 Reviewed and enhanced by Darin.
45871 Compilation fixes for Linux/Gdk.
45873 * WebCore/platform/FontData.h: Added forward declaration of a class.
45874 * WebCore/platform/cairo/GraphicsContextCairo.cpp: Fixed case on include.
45875 * WebCore/bindings/js/kjs_html.cpp: Added <math.h> include.
45877 * WebCore/css/maketokenizer: Fixed incorrect check for Linux that was
45878 already true even on Mac OS X. Added some additional includes and
45879 defines to the Linux extra generated code.
45881 2006-06-30 Mitz Pettel <opendarwin.org@mitzpettel.com>
45885 - fix http://bugs.webkit.org/show_bug.cgi?id=7204
45886 float inserted in fixed height block via DOM not repainted
45888 Test: fast/repaint/float-move-during-layout.html
45890 * rendering/RenderBlock.cpp:
45891 (WebCore::RenderBlock::layoutBlockChildren):
45892 (WebCore::RenderBlock::repaintOverhangingFloats): Renamed repaintFloatingDescendants()
45893 to this and limited it to repainting overhanging floats. Added a boolean parameter that forces
45894 all descendant overhanging floats (that don't have their own layer) to paint.
45895 * rendering/RenderBlock.h:
45896 * rendering/RenderBox.cpp:
45897 (WebCore::RenderBox::repaintDuringLayoutIfMoved): Changed to paint all descendant
45899 * rendering/RenderObject.cpp:
45900 (WebCore::RenderObject::repaintOverhangingFloats):
45901 * rendering/RenderObject.h:
45903 2006-06-30 Levi Weintraub <lweintraub@apple.com>
45907 * editing/VisiblePosition.cpp: Removed is[Not]EqualIgnoringAffinity and made operator== use the logic that ignores affinity.
45908 * editing/VisiblePosition.h: Ditto.
45909 (WebCore::operator==):
45910 * editing/visible_units.cpp:
45911 (WebCore::isStartOfParagraph): Changed to compare VisiblePositions using ==.
45912 (WebCore::isEndOfParagraph): Ditto.
45913 (WebCore::isStartOfBlock): Ditto.
45914 (WebCore::isEndOfBlock): Ditto.
45916 === Safari-521.14 ===
45918 2006-06-30 Justin Garcia <justin.garcia@apple.com>
45922 * editing/htmlediting.cpp:
45923 (WebCore::canHaveChildrenForEditing): Don't insert children into
45924 object tags while editing.
45926 2006-06-30 Justin Garcia <justin.garcia@apple.com>
45928 Reviewed by harrison
45930 <rdar://problem/4598309
45931 Caret gets stuck when it hits non editable content within an editable body
45932 <http://bugs.webkit.org/show_bug.cgi?id=9510>
45933 Caret will jump out of an editable region
45935 * dom/Position.cpp:
45936 (WebCore::Position::upstream): Don't move into a new editable region so that
45937 candidates that that straddle an editable/non-editable boundary will
45938 correspond to different VisiblePositions.
45939 (WebCore::Position::downstream): Ditto.
45940 * editing/SelectionController.cpp:
45941 (WebCore::SelectionController::modifyMovingRightForward): Use VisiblePosition::next(true)
45942 (WebCore::SelectionController::modifyMovingLeftBackward): Use VisiblePosition::previous(true)
45943 * editing/VisiblePosition.cpp:
45944 (WebCore::VisiblePosition::next): Added code to jump to the next editable region as long
45945 as it has the same highest editable root.
45946 (WebCore::VisiblePosition::previous): Ditto.
45947 * editing/VisiblePosition.h:
45948 * editing/htmlediting.cpp:
45949 (WebCore::highestEditableRoot): Added, returns the highest editable root of a node if that
45950 node is in editable content, otherwise 0.
45951 * editing/htmlediting.h:
45953 2006-06-30 David Kilzer <ddkilzer@kilzer.net>
45957 - Fix http://bugs.webkit.org/show_bug.cgi?id=9358
45958 REGRESSION: Assertion failure in HTMLInputElement::setValueFromRenderer
45959 (value == constrainValue(value)) when deleting all text
45961 Test: editing/deleting/delete-all-text-in-text-field-assertion.html
45963 Bug 9661 filed to fix the follow-up issue:
45964 http://bugs.webkit.org/show_bug.cgi?id=9661
45965 textContent returns "\n" for a <br> even if it is collapsed
45967 * html/HTMLInputElement.cpp:
45968 (WebCore::HTMLInputElement::setValueFromRenderer): Work around "\n" value
45969 when all characters are deleted from a text field.
45971 2006-06-30 David Harrison <harrison@apple.com>
45973 Reviewed by Tim Omernick
45975 <rdar://problem/4609481> Crash calling -[WebScriptObject valueForKey:] when JS disabled
45977 * bridge/mac/FrameMac.mm:
45978 (WebCore::FrameMac::executionContextForDOM):
45979 Early return if JS is not enabled.
45981 2006-06-30 Mitz Pettel <opendarwin.org@mitzpettel.com>
45985 - fix http://bugs.webkit.org/show_bug.cgi?id=9664
45986 REGRESSION (r15106): Crash in fast/events/mouseover-mouseout2.html
45988 * page/FrameView.cpp:
45989 (WebCore::FrameView::handleMouseMoveEvent): Added a check that oldSubframe is
45990 still a subframe of the view's frame before passing the event to it.
45992 2006-06-29 Timothy Hatcher <timothy@apple.com>
45996 <rdar://problem/3694163> -[KWQPageState finalize] is incorrect; design change needed
45997 <rdar://problem/3694165> -[WebCoreFrameBridge finalize] is incorrect; design change needed
45999 Added close methods that need to be called before these
46000 objects can be released. This ensures proper tear-down under GC.
46002 * WebCore.xcodeproj/project.pbxproj:
46003 * bridge/mac/WebCoreFrameBridge.h:
46004 * bridge/mac/WebCoreFrameBridge.mm:
46005 (-[WebCoreFrameBridge dealloc]):
46006 (-[WebCoreFrameBridge finalize]):
46007 (-[WebCoreFrameBridge close]):
46008 * bridge/mac/WebCorePageBridge.h:
46009 * bridge/mac/WebCorePageBridge.mm:
46010 (-[WebCorePageBridge setMainFrame:]):
46011 (-[WebCorePageBridge dealloc]):
46012 (-[WebCorePageBridge finalize]):
46013 (-[WebCorePageBridge close]):
46014 (-[WebCorePageBridge mainFrame]):
46015 (-[WebCorePageBridge setGroupName:]):
46016 (-[WebCorePageBridge groupName]):
46017 * kwq/KWQPageState.h:
46018 * kwq/KWQPageState.mm:
46019 (-[KWQPageState dealloc]):
46020 (-[KWQPageState finalize]):
46021 (-[KWQPageState close]):
46023 2006-06-29 Sam Weinig <sam.weinig@gmail.com>
46027 - test for http://bugs.webkit.org/show_bug.cgi?id=4874
46028 Table with absolute bottom positioning is positioned incorrectly
46030 Note: patch originally from Mitz, spruced up by Weinig.
46032 * rendering/RenderBox.cpp:
46033 (WebCore::RenderBox::calcAbsoluteVerticalValues):
46034 * rendering/RenderTable.cpp:
46035 (WebCore::RenderTable::layout):
46037 2006-06-29 Graham Dennis <Graham.Dennis@gmail.com>
46039 Reviewed by Justin.
46041 - fix http://bugs.webkit.org/show_bug.cgi?id=9505
46042 moveParagraphContentsToNewBlockIfNecessary creates a new block outside the current position
46044 * editing/CompositeEditCommand.cpp:
46045 Added sanity checking to prevent modifying nodes outside of
46047 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
46049 2006-06-29 Brady Eidson <beidson@apple.com>
46053 In addition to a few small details, logging changes, and style cleanups, this is a stop-gap hack
46054 for a problem in SQLite's blob handling. Querying for a blob in a void* form is reproducibly
46055 returning a corrupt buffer. The temporary solution is to query for the blob as "quoted text" and
46056 manually convert the return string into a character buffer.
46058 * icon/IconDatabase.cpp:
46059 (WebCore::IconDatabase::recreateDatabase):
46060 (WebCore::IconDatabase::createPrivateTables):
46062 (WebCore::hexToUnsignedChar): These two functions are the text-to-character-data converters for the time being
46063 (WebCore::hexStringToVector):
46065 (WebCore::IconDatabase::imageDataForIconID):
46066 (WebCore::IconDatabase::imageDataForIconURL):
46067 (WebCore::IconDatabase::imageDataForPageURL):
46068 (WebCore::IconDatabase::iconForPageURL):
46069 (WebCore::IconDatabase::hasIconForIconURL):
46070 * icon/IconDatabase.h: changes the icon data accessors to return a Vector<unsigned char> instead of void*
46072 * icon/SQLStatement.cpp:
46073 (WebCore::SQLStatement::columnCount):
46074 (WebCore::SQLStatement::getColumnBlob):
46075 * icon/SiteIcon.cpp:
46076 (SiteIcon::getImage):
46078 2006-06-29 Mitz Pettel <opendarwin.org@mitzpettel.com>
46082 - fix http://bugs.webkit.org/show_bug.cgi?id=9652
46083 Assertion failure when changing an RTL table cell to display:none
46085 Test: fast/table/rtl-cell-display-none-assert.html
46087 * rendering/RenderTableSection.cpp:
46088 (WebCore::RenderTableSection::layoutRows): Corrected the index used as
46089 the last index in the columnPos vector.
46091 2006-06-29 Darin Adler <darin@apple.com>
46093 Reviewed by Anders.
46095 - fix http://bugs.webkit.org/show_bug.cgi?id=9622
46096 showModalDialog returnValue ignored, function result is always "undefined"
46098 * manual-tests/modal-dialog.html: Added.
46099 * manual-tests/show-modal-dialog-test.html: Added.
46101 * page/Frame.cpp: (WebCore::Frame::clear): Call KJSProxy::clear with the
46102 clearWindowProperties parameter instead of not calling it at all when
46103 clearWindowProperties is false.
46105 * bindings/js/kjs_proxy.h: Add boolean clearWindowProperties parameter.
46106 * bindings/js/kjs_proxy.cpp: (WebCore::KJSProxy::clear): Pass clearWindowProperties
46107 variable through to Window::clear instead of not calling it at all.
46109 * bindings/js/kjs_window.h: Add boolean clearWindowProperties parameter.
46110 * bindings/js/kjs_window.cpp: (KJS::Window::clear): If clearWindowProperties
46111 is false, do only the returnValue work, not the rest of the work.
46113 * manual-tests/modal-dialog.html: Added.
46114 * manual-tests/show-modal-dialog-test.html: Added.
46116 2006-06-29 Beth Dakin <bdakin@apple.com>
46120 Fix for <rdar://problem/4450615> Add composite mode to background
46123 -webkit-background-composite will set a composite mode on a
46126 * css/CSSComputedStyleDeclaration.cpp:
46128 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
46129 * css/CSSPropertyNames.in: Add -webkit-background-composite
46130 * css/CSSValueKeywords.in: Add all possible values (clear, copy,
46131 source-over, source-in, source-out, source-atop, destination-over,
46132 destination-in, destination-out, destination-atop, xor, plus-
46133 darker, highlight, and plus-lighter)
46134 * css/cssparser.cpp:
46135 (WebCore::CSSParser::parseValue):
46136 (WebCore::CSSParser::parseBackgroundProperty):
46137 * css/cssstyleselector.cpp:
46138 (WebCore::CSSStyleSelector::applyProperty):
46139 (WebCore::CSSStyleSelector::mapBackgroundComposite):
46140 * css/cssstyleselector.h:
46141 * platform/GraphicsContext.cpp:
46142 (WebCore::GraphicsContext::drawTiledImage):
46143 * platform/GraphicsContext.h: drawTiledImage() now takes a
46144 composite operator.
46145 * platform/Image.h: drawTiled() now takes a composite operator.
46146 * platform/cairo/ImageCairo.cpp:
46147 (WebCore::Image::drawTiled): Set the composite operator.
46148 * platform/mac/ImageMac.mm:
46149 (WebCore::Image::drawTiled): Set the composite operator.
46150 * platform/win/TemporaryLinkStubs.cpp:
46151 (Image::drawTiled):
46152 * rendering/RenderBox.cpp:
46153 (WebCore::RenderBox::paintBackgroundExtended): Send the composite
46154 operator in the render style over to the graphics context.
46155 * rendering/render_style.cpp:
46156 (WebCore::BackgroundLayer::BackgroundLayer):
46157 (WebCore::BackgroundLayer::operator=):
46158 (WebCore::BackgroundLayer::operator==):
46159 (WebCore::BackgroundLayer::fillUnsetProperties):
46160 (WebCore::BackgroundLayer::cullEmptyLayers):
46161 * rendering/render_style.h:
46162 (WebCore::BackgroundLayer::backgroundComposite):
46163 (WebCore::BackgroundLayer::isBackgroundCompositeSet):
46164 (WebCore::BackgroundLayer::setBackgroundComposite):
46165 (WebCore::BackgroundLayer::clearBackgroundComposite):
46166 (WebCore::RenderStyle::backgroundComposite):
46167 (WebCore::RenderStyle::initialBackgroundComposite):
46169 2006-06-29 David Kilzer <ddkilzer@kilzer.net>
46173 http://bugs.webkit.org/show_bug.cgi?id=9649
46174 The no-svg build broke after r15091
46176 * bindings/objc/DOMInternal.h: Added #if XPATH_SUPPORT/#endif.
46177 * bindings/objc/DOMInternal.mm: Ditto.
46178 (raiseDOMException):
46179 * bindings/objc/DOMXPath.h: Ditto.
46180 * bindings/objc/DOMXPath.mm: Ditto.
46181 * bindings/objc/DOMXPathInternal.h: Ditto.
46183 2006-06-29 Anders Carlsson <acarlsson@apple.com>
46187 <rdar://problem/4599760> Objective-C XPath support
46189 * WebCore.xcodeproj/project.pbxproj:
46192 * bindings/objc/DOMInternal.h:
46193 * bindings/objc/DOMInternal.mm:
46194 (raiseDOMException):
46195 Handle XPath exceptions
46197 * bindings/objc/DOMXPath.h: Added.
46198 (-[DOMXPathNSResolver lookupNamespaceURI:]):
46199 * bindings/objc/DOMXPath.mm: Added.
46200 (-[DOMNativeXPathNSResolver dealloc]):
46201 (-[DOMNativeXPathNSResolver finalize]):
46202 (-[DOMNativeXPathNSResolver _xpathNSResolver]):
46203 (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:]):
46204 (+[DOMNativeXPathNSResolver _xpathNSResolverWith:]):
46205 (-[DOMNativeXPathNSResolver lookupNamespaceURI:]):
46206 (-[DOMXPathResult dealloc]):
46207 (-[DOMXPathResult finalize]):
46208 (-[DOMXPathResult resultType]):
46209 (-[DOMXPathResult numberValue]):
46210 (-[DOMXPathResult stringValue]):
46211 (-[DOMXPathResult booleanValue]):
46212 (-[DOMXPathResult singleNodeValue]):
46213 (-[DOMXPathResult invalidIteratorState]):
46214 (-[DOMXPathResult snapshotLength]):
46215 (-[DOMXPathResult iterateNext]):
46216 (-[DOMXPathResult snapshotItem:]):
46217 (-[DOMXPathResult _xpathResult]):
46218 (-[DOMXPathResult _initWithXPathResult:]):
46219 (+[DOMXPathResult _xpathResultWith:]):
46220 (-[DOMXPathExpression evaluate:::]):
46221 (-[DOMXPathExpression _xpathExpression]):
46222 (-[DOMXPathExpression _initWithXPathExpression:]):
46223 (+[DOMXPathExpression _xpathExpressionWith:]):
46224 (-[DOMDocument createExpression::]):
46225 (-[DOMDocument createNSResolver:]):
46226 (-[DOMDocument evaluate:::::]):
46227 * bindings/objc/DOMXPathInternal.h: Added.
46228 Add Objective-C XPath API.
46230 2006-06-28 David Hyatt <hyatt@apple.com>
46232 Add support for custom highlighting to paint at the root line box level
46233 (and to inflate the box it uses so that it can go outside the bounds of
46234 the line if necessary).
46236 Reviewed by harrison
46238 * bridge/mac/FrameMac.h:
46239 * bridge/mac/FrameMac.mm:
46240 (WebCore::FrameMac::customHighlightLineRect):
46241 (WebCore::FrameMac::paintCustomHighlight):
46242 * bridge/mac/WebCoreFrameBridge.h:
46243 * rendering/InlineTextBox.cpp:
46244 (WebCore::InlineTextBox::paintCustomHighlight):
46245 * rendering/RootInlineBox.cpp:
46246 (WebCore::RootInlineBox::paintCustomHighlight):
46247 (WebCore::RootInlineBox::paint):
46248 * rendering/RootInlineBox.h:
46250 2006-06-28 Levi Weintraub <lweintraub@apple.com>
46254 <rdar://problem/4592005> FormatBlock inserts in the wrong place, disregarding editable content
46255 <rdar://problem/4590763> FormatBlock for paragraph style doesn't work
46258 (WebCore::Node::rootEditableElement): Return inline nodes
46259 * editing/FormatBlockCommand.cpp:
46260 (WebCore::FormatBlockCommand::doApply): Keep from inserting before editable content
46261 * editing/JSEditor.cpp: Support html braces (<>) around tag names
46263 2006-06-28 Justin Garcia <justin.garcia@apple.com>
46267 svg/custom/text-hit-test.svg was failing
46269 * rendering/RenderContainer.cpp:
46270 (WebCore::RenderContainer::positionForCoordinates): Don't skip child
46271 renderers that have a height of 0 when looking for the closest child
46272 renderer, they may contain content that overflows.
46273 * rendering/RenderText.cpp:
46274 (WebCore::RenderText::positionForCoordinates): Fixed typos.
46276 2006-06-28 David Hyatt <hyatt@apple.com>
46278 Make the view source document properly handle <script>. We don't syntax
46279 highlight the JS yet, but it shows up properly now.
46283 * WebCore.xcodeproj/project.pbxproj:
46284 * html/HTMLTokenizer.cpp:
46285 (WebCore::HTMLTokenizer::scriptHandler):
46287 2006-06-28 Timothy Hatcher <timothy@apple.com>
46289 Prefer the Stabs debugging symbols format until DWARF bugs are fixed.
46291 * WebCore.xcodeproj/project.pbxproj:
46293 2006-06-28 Justin Garcia <justin.garcia@apple.com>
46297 Fixed EditActions for InsertHorizontalRule and RemoveFormat.
46299 * editing/JSEditor.cpp:
46300 * editing/ReplaceSelectionCommand.cpp:
46301 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
46302 (WebCore::ReplaceSelectionCommand::editingAction):
46303 * editing/ReplaceSelectionCommand.h:
46305 2006-06-28 Levi Weintraub <lweintraub@apple.com>
46307 Build Fix. Reviewed by NOBODY
46309 * editing/IndentOutdentCommand.cpp:
46310 (WebCore::IndentOutdentCommand::indentRegion):
46312 2006-06-28 Levi Weintraub <lweintraub@apple.com>
46316 http://bugs.webkit.org/show_bug.cgi?id=7568
46317 Bug 7568: Implement Indent/Outdent
46319 * WebCore.vcproj/WebCore/WebCore.vcproj: Added IndentOutdentCommand.h/cpp
46320 * WebCore.xcodeproj/project.pbxproj: Ditto.
46321 * editing/IndentOutdentCommand.cpp: Added.
46322 (WebCore::IndentOutdentCommand::IndentOutdentCommand):
46323 (WebCore::enclosingListOrBlockquote):
46324 (WebCore::IndentOutdentCommand::splitTreeToNode): Splits the DOM tree from a
46325 descendent node to an ending ancestor, duplicating nodes when necessary. Returns
46326 the last node split. Used to insert blockquotes at the topmost level.
46327 (WebCore::IndentOutdentCommand::indentRegion):
46328 (WebCore::IndentOutdentCommand::outdentParagraph):
46329 (WebCore::IndentOutdentCommand::outdentRegion):
46330 (WebCore::IndentOutdentCommand::doApply):
46331 * editing/IndentOutdentCommand.h: Added.
46332 (WebCore::IndentOutdentCommand::):
46333 * editing/JSEditor.cpp: Added the execCommands Indent and Outdent
46334 * editing/htmlediting.cpp:
46335 (WebCore::enclosingNodeWithTag): Finds the enclosing node with any specified tag.
46336 (WebCore::enclosingListChild): Added checks for nill and editable boundaries.
46337 (WebCore::outermostEnclosingListChild): Returns the highest ancestor list child.
46338 (WebCore::highestAncestor): Added.
46339 (WebCore::createElement): Changed the passed in string to a const reference.
46340 * editing/htmlediting.h:
46342 2006-06-28 Mitz Pettel <opendarwin.org@mitzpettel.com>
46344 Reviewed by Darin and Hyatt.
46346 - fix http://bugs.webkit.org/show_bug.cgi?id=9561
46347 REGRESSION: Content property on :before of button causes hang on click or hover
46349 Test: fast/forms/button-generated-content.html
46351 * rendering/RenderBlock.cpp:
46352 (WebCore::RenderBlock::setStyle):
46353 * rendering/RenderButton.cpp:
46354 (WebCore::RenderButton::updatePseudoChild): Added. Calls updatePseudoChildForObject()
46355 on the button itself or on its inner div, if it has one.
46356 * rendering/RenderButton.h:
46357 (WebCore::RenderButton::createsAnonymousWrapper): Added. Returns true.
46358 * rendering/RenderContainer.cpp:
46359 (WebCore::RenderContainer::pseudoChild): Added. Returns the child containing
46360 generated content of the requested type if there is one, or otherwise the
46361 child before/after which such generated content should come.
46362 (WebCore::RenderContainer::updatePseudoChild): Removed the child parameter and moved the guts
46363 of this method into updatePseudoChildForObject, which this method calls unless the object
46364 is an anonymous wrapper.
46365 (WebCore::RenderContainer::updatePseudoChildForObject): Added. Does the what
46366 updatePseudoChildForObject did previously, but fetches the pseudo style from
46367 the styledObject parameter.
46368 * rendering/RenderContainer.h:
46369 * rendering/RenderInline.cpp:
46370 (WebCore::RenderInline::setStyle):
46371 (WebCore::RenderInline::addChildToFlow):
46372 (WebCore::RenderInline::splitInlines):
46373 (WebCore::RenderInline::splitFlow):
46374 * rendering/RenderObject.h:
46375 (WebCore::RenderObject::createsAnonymousWrapper): Added. This method replaces
46376 allowsReusingAnonymousChild and returns the opposite of what that method used to
46377 return. Returns true if the object creates an anonymous child to contain all its
46380 2006-06-27 Brady Eidson <beidson@apple.com>
46384 Hookup the new semi-functional SQLite icon database.
46385 For now, it is living side-by-side with the old DB so one can compare the
46386 two for debugging purposes. Also, it is disabled (in WebKit) by default unless you
46387 compile with ICONDEBUG #defined.
46389 * WebCore.xcodeproj/project.pbxproj: Added file SiteIcon.cpp
46391 * bridge/mac/WebCoreIconDatabaseBridge.h:
46392 * bridge/mac/WebCoreIconDatabaseBridge.mm:
46393 (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
46394 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
46395 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
46396 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
46398 * icon/IconDatabase.cpp:
46399 (WebCore::IconDatabase::isValidDatabase):
46400 (WebCore::IconDatabase::recreateDatabase):
46401 (WebCore::IconDatabase::createPrivateTables):
46402 (WebCore::IconDatabase::deletePrivateTables):
46403 (WebCore::IconDatabase::imageDataForIconID):
46404 (WebCore::IconDatabase::imageDataForIconURL):
46405 (WebCore::IconDatabase::imageDataForPageURL):
46406 (WebCore::IconDatabase::setPrivateBrowsingEnabled):
46407 (WebCore::IconDatabase::iconForPageURL):
46408 (WebCore::IconDatabase::iconURLForURL):
46409 (WebCore::IconDatabase::setIconDataForIconURL):
46410 (WebCore::IconDatabase::establishIconIDForEscapedIconURL):
46411 (WebCore::IconDatabase::setHaveNoIconForIconURL):
46412 (WebCore::IconDatabase::setIconURLForPageURL):
46413 (WebCore::IconDatabase::hasIconForIconURL):
46414 * icon/IconDatabase.h:
46415 (WebCore::SiteIcon::getIconURL):
46416 (WebCore::IconDatabase::getPrivateBrowsingEnabled):
46418 * icon/SiteIcon.cpp: Added.
46419 (SiteIcon::SiteIcon):
46420 (SiteIcon::~SiteIcon):
46421 (SiteIcon::getImage):
46422 (SiteIcon::resetExpiration):
46423 (SiteIcon::getExpiration):
46425 2006-06-27 Rob Buis <buis@kde.org>
46429 http://bugs.webkit.org/show_bug.cgi?id=9605
46430 REGRESSION: pageX and pageY are both 0 for events created with initMouseEvent
46432 Calculate pageX/pageY and clientX/clientY values when using initMouseEvent.
46434 * dom/MouseEvent.cpp:
46435 (WebCore::MouseEvent::initMouseEvent):
46436 * dom/MouseRelatedEvent.cpp:
46437 (WebCore::MouseRelatedEvent::initCoordinates):
46438 * dom/MouseRelatedEvent.h:
46440 2006-06-27 Mitz Pettel <opendarwin.org@mitzpettel.com>
46442 Reviewed by Maciej and Darin.
46444 - fix http://bugs.webkit.org/show_bug.cgi?id=9317
46445 REGRESSION: crash in HTML tokenizer at Japanese Apple support page
46447 Test: fast/tokenizer/write-unclosed-script.html
46449 * html/HTMLTokenizer.cpp:
46450 (WebCore::HTMLTokenizer::scriptHandler): Changed to reset the inScript flag
46451 and scriptCodeSize before possible script execution, but not afterwards.
46452 This way, if script execution write()s a <script> tag without closing it,
46453 the tokenizer is left in inScript state. Added code to set the requestingScript
46454 flag around the request for the cached script, to let notifiyFinished() know
46455 that it's being called under scriptHandler().
46456 (WebCore::HTMLTokenizer::scriptExecution): Removed code that saved and restored
46457 the inScript flag. This function is always entered now with inScript being false.
46458 (WebCore::HTMLTokenizer::notifyFinished): Changed to use the new requestingScript
46459 state flag instead of the inScript flag, which is always false now when entering
46461 * html/HTMLTokenizer.h:
46462 Added the requestingScript state bit, used to tell notifyFinished() that it
46463 is being called under scriptHandler() (which happens when the script is already
46466 2006-06-27 Justin Garcia <justin.garcia@apple.com>
46470 * editing/JSEditor.cpp: Added RemoveFormat.
46472 2006-06-27 Kevin Decker <kdecker@apple.com>
46476 Fixed: <rdar://problem/4597679> TOT REGRESSION: popup blocker DOA
46478 Need to add window.open() support to DumpRenderTree before landing an actual layout test.
46480 * bindings/js/kjs_window.cpp:
46481 (KJS::WindowFunc::callAsFunction): Because FrameTree::find() returns true for empty strings,
46482 we must check for empty framenames. Otherwise, illegitimate window.open() calls with no name
46483 will pass right through the popup blocker.
46485 2006-06-28 Anders Carlsson <acarlsson@apple.com>
46489 * css/CSSComputedStyleDeclaration.cpp:
46490 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
46491 Move FIXME comment here.
46493 * page/DOMWindow.cpp:
46494 (WebCore::DOMWindow::getComputedStyle):
46495 Don't do a null check on the renderer here. Everything's handled by
46496 CSSComputedStyleDeclaration anyway.
46498 2006-06-27 Justin Garcia <justin.garcia@apple.com>
46502 * rendering/RenderContainer.cpp: Fixed #include formatting.
46504 2006-06-27 Justin Garcia <justin.garcia@apple.com>
46508 <rdar://problem/4599735> Clicking out of a table at the extremes of an editable document doesn't appear to work
46510 * rendering/RenderBlock.cpp:
46511 (WebCore::RenderBlock::positionForCoordinates): In the fall through case,
46512 where we can't find a child block that contains (x, y), pass to RenderFlow
46513 instead of the last visible child block.
46514 * rendering/RenderContainer.cpp:
46515 (WebCore::RenderContainer::positionForCoordinates): Don't pass to the closest
46516 child renderer if this is a table and (x, y) is outside the table. Return
46517 a VisiblePosition before or after the table.
46518 Fixed the code that finds the closest child renderer.
46520 2006-06-27 David Hyatt <hyatt@apple.com>
46522 Preserve entity text in view source mode. This patch doesn't highlight the
46523 the entities yet, but it at least prevents their resolution and removal.
46527 * WebCore.xcodeproj/project.pbxproj:
46528 * html/HTMLTokenizer.cpp:
46529 (WebCore::HTMLTokenizer::parseEntity):
46531 2006-06-27 Anders Carlsson <acarlsson@apple.com>
46535 http://bugs.webkit.org/show_bug.cgi?id=9623
46536 REGRESSION: getComputedStyle should do a relayout
46538 * page/DOMWindow.cpp:
46539 (WebCore::DOMWindow::getComputedStyle):
46542 2006-06-27 Maciej Stachowiak <mjs@apple.com>
46546 - fixed <rdar://problem/4550473> Reproducible hang on www.digg.com
46548 * dom/NodeList.cpp:
46549 (WebCore::NodeList::recursiveItem): Make NodeList caching also
46550 work for backwards iteration - if the requested index is before
46551 the last cached, but closer to it than to the start of the list,
46552 then search backwards from there.
46553 (WebCore::NodeList::itemForwardsFromCurrent): Split this out as a
46555 (WebCore::NodeList::itemBackwardsFromCurrent): New helper, similar
46559 2006-06-27 Brady Eidson <beidson@apple.com>
46563 Some SQLDatabase cleanup (style stuff) and enhancements
46565 * icon/SQLDatabase.cpp:
46566 (SQLDatabase::open):
46567 (SQLDatabase::executeCommand):
46568 (SQLDatabase::returnsAtLeastOneResult): Accessor to see if this query returns results
46569 (SQLDatabase::lastInsertRowID): Accessor for the rowid of the last insert
46570 * icon/SQLDatabase.h:
46571 (WebCore::SQLStatement::prepareAndStep):
46572 * icon/SQLStatement.cpp:
46573 (WebCore::SQLStatement::bindInt64):
46574 -All of the following used to require the user to manually prepare and step a statement
46575 before asking for the result. Now it will prepare and step itself so you can use a temporary
46576 object to get a quick result
46577 (WebCore::SQLStatement::getColumnName):
46578 (WebCore::SQLStatement::getColumnName16):
46579 (WebCore::SQLStatement::getColumnText):
46580 (WebCore::SQLStatement::getColumnText16):
46581 (WebCore::SQLStatement::getColumnDouble):
46582 (WebCore::SQLStatement::getColumnInt):
46583 (WebCore::SQLStatement::getColumnInt64):
46584 (WebCore::SQLStatement::getColumnBlobAsVector):
46585 (WebCore::SQLStatement::getColumnBlob):
46587 2006-06-27 Ada Chan <adachan@apple.com>
46589 Reviewed by sfalken.
46593 * WebCore.vcproj/WebCore/WebCore.vcproj:
46595 2006-06-27 Beth Dakin <bdakin@apple.com>
46599 Fix for <rdar://problem/4602635> Media queries must be extended to
46600 address CSS pixel scaling factor
46602 * css/MediaFeatureNames.h: Add -webkit-device-pixel-ratio, -webkit-
46603 min-device-pixel-ratio, and -webkit-max-device-pixel-ratio to the
46604 list of feature names.
46605 * css/MediaQueryEvaluator.cpp:
46606 (WebCore::cmpvalue): Added a version of cmpvalue that compares
46608 (WebCore::device_pixel_ratioMediaFeatureEval):
46609 (WebCore::min_device_pixel_ratioMediaFeatureEval):
46610 (WebCore::max_device_pixel_ratioMediaFeatureEval):
46612 2006-06-27 Darin Adler <darin@apple.com>
46616 - finish with http://bugs.webkit.org/show_bug.cgi?id=9606
46617 REGRESSION: some callers are still using clientX/Y to get pageX/Y
46619 * rendering/RenderFrameSet.cpp: (WebCore::RenderFrameSet::userResize):
46620 Change to use pageX/Y, but this really doesn't matter since framesets
46621 can't be scrolled -- it's the frames that are scrolled. So this change
46622 has no user-visible effect, but it's still better this way.
46624 2006-06-27 Darin Adler <darin@apple.com>
46628 - fix 2/3 of http://bugs.webkit.org/show_bug.cgi?id=9606
46629 REGRESSION: some callers are still using clientX/Y to get pageX/Y
46631 Test: fast/events/anchor-image-scrolled-x-y.html
46632 Test: fast/events/input-image-scrolled-x-y.html
46634 * html/HTMLAnchorElement.cpp: (WebCore::HTMLAnchorElement::defaultEventHandler): Use pageX/Y.
46635 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler): Ditto.
46637 2006-06-27 Brady Eidson <beidson@apple.com>
46641 Added functionality to WebCore::Image to get multiple representations/sizes into TIFF data
46643 * platform/mac/ImageMac.mm:
46644 (WebCore::Image::getTIFFRepresentation):
46646 2006-06-26 David Hyatt <hyatt@apple.com>
46648 Fix for 9538, support syntax highlighted HTML source. Lots of loose
46649 ends still (script/style/comments/doctype/entities/accurate whitespace).
46653 * DerivedSources.make:
46654 * WebCore.xcodeproj/project.pbxproj:
46655 * bridge/mac/WebCoreFrameBridge.h:
46656 * bridge/mac/WebCoreFrameBridge.mm:
46657 (-[WebCoreFrameBridge setInViewSourceMode:]):
46658 (-[WebCoreFrameBridge inViewSourceMode]):
46659 * css/cssstyleselector.cpp:
46660 (WebCore::CSSStyleSelector::loadDefaultStyle):
46661 (WebCore::CSSStyleSelector::matchUARules):
46662 * css/cssstyleselector.h:
46663 * css/view-source.css: Added.
46664 * dom/Document.cpp:
46665 (WebCore::Document::implicitClose):
46666 * dom/xml_tokenizer.h:
46667 (WebCore::Tokenizer::Tokenizer):
46668 (WebCore::Tokenizer::~Tokenizer):
46669 (WebCore::Tokenizer::inViewSourceMode):
46670 (WebCore::Tokenizer::setInViewSourceMode):
46671 * html/HTMLAttributeNames.in:
46672 * html/HTMLFrameElement.cpp:
46673 (WebCore::HTMLFrameElement::init):
46674 (WebCore::HTMLFrameElement::parseMappedAttribute):
46675 (WebCore::HTMLFrameElement::attach):
46676 * html/HTMLFrameElement.h:
46677 (WebCore::HTMLFrameElement::viewSourceMode):
46678 * html/HTMLTokenizer.cpp:
46679 (WebCore::HTMLTokenizer::HTMLTokenizer):
46680 (WebCore::HTMLTokenizer::scriptHandler):
46681 (WebCore::HTMLTokenizer::scriptExecution):
46682 (WebCore::HTMLTokenizer::parseTag):
46683 (WebCore::HTMLTokenizer::continueProcessing):
46684 (WebCore::HTMLTokenizer::write):
46685 (WebCore::HTMLTokenizer::timerFired):
46686 (WebCore::HTMLTokenizer::end):
46687 (WebCore::HTMLTokenizer::processToken):
46688 (WebCore::HTMLTokenizer::notifyFinished):
46689 * html/HTMLTokenizer.h:
46690 * html/HTMLViewSourceDocument.cpp: Added.
46691 (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
46692 (WebCore::HTMLViewSourceDocument::createTokenizer):
46693 (WebCore::HTMLViewSourceDocument::addViewSourceToken):
46694 (WebCore::HTMLViewSourceDocument::addViewSourceAttribute):
46695 (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
46696 * html/HTMLViewSourceDocument.h: Added.
46698 (WebCore::Frame::begin):
46699 (WebCore::Frame::inViewSourceMode):
46700 (WebCore::Frame::setInViewSourceMode):
46702 * page/FramePrivate.h:
46703 (WebCore::FramePrivate::FramePrivate):
46704 * rendering/RenderPartObject.cpp:
46705 (WebCore::RenderPartObject::updateWidget):
46707 2006-06-26 Anders Carlsson <acarlsson@apple.com>
46711 http://bugs.webkit.org/show_bug.cgi?id=9031
46712 REGRESSION: Crash when closing tabs on newegg.com
46715 (WebCore::Frame::pageDestroyed):
46717 Add new method which is invoked when the frame's page has been destroyed.
46718 Currently this function disassociates the JS Window object with the frame,
46719 stopping any running JS timers.
46722 (WebCore::Page::~Page):
46723 Call pageDestroyed on all frames.
46725 2006-06-26 Rob Buis <buis@kde.org>
46727 Reviewed and reworked by Darin.
46729 Code cleanup, calculate clientX/clientY in one central place.
46731 * dom/EventTargetNode.h:
46732 * dom/EventTargetNode.cpp: (WebCore::EventTargetNode::dispatchMouseEvent):
46733 Renamed parameters to pageX/Y since they aren't clientX/Y values.
46734 Removed code to compute clientX/Y (was a bit confused in naming before),
46735 because that's now done inside MouseEvent.
46737 * dom/MouseEvent.h:
46738 * dom/MouseEvent.cpp:
46739 (WebCore::MouseEvent::MouseEvent): Removed clientX/Y parameters.
46740 (WebCore::MouseEvent::initMouseEvent): Added comments about problems I noticed.
46741 (WebCore::MouseEvent::which): Fixed comment that confusingly mentioned KHTML,
46742 when it was talking about the DOM standard.
46744 * dom/MouseRelatedEvent.h:
46745 * dom/MouseRelatedEvent.cpp:
46746 (WebCore::contentsX): Added helper function.
46747 (WebCore::contentsY): Ditto.
46748 (WebCore::MouseRelatedEvent::MouseRelatedEvent): Removed clientX/Y parameter,
46749 and added code to compute clientX/Y based on pageX/Y.
46750 (WebCore::MouseRelatedEvent::receivedTarget): Fixed comments.
46752 * dom/WheelEvent.h:
46753 * dom/WheelEvent.cpp: (WebCore::WheelEvent::WheelEvent): Removed clientX/Y
46756 * page/FrameView.cpp: (WebCore::FrameView::dispatchDragEvent): Removed the code
46757 to compute coordinates, and renamed the confusingly named clientPos (which was
46758 a page-relative position) to contentsPos.
46760 2006-06-25 David Carson <dacarson@gmail.com>
46762 Reviewed and tweaked by Darin.
46764 - http://bugs.webkit.org/show_bug.cgi?id=9185
46765 REGRESSION: UserID field appears with an incorrect height
46766 on americanexpresslogin page
46767 - Height and Width attribute only applies to IMAGE and HIDDEN
46770 * dom/NamedMappedAttrMap.h:
46771 (WebCore::NamedMappedAttrMap::getAttributeItem):
46772 Added to static_cast method.
46774 * html/HTMLInputElement.cpp:
46775 (WebCore::HTMLInputElement::setInputType):
46776 Update the style decl if input type has changed.
46777 (WebCore::HTMLInputElement::mapToEntry):
46778 Only Cache height and width if it is an IMAGE or HIDDEN
46779 (WebCore::HTMLInputElement::parseMappedAttribute):
46780 Check type before adding height and width style.
46781 (WebCore::HTMLInputElement::attach):
46782 Remove code for discarding width.
46784 * html/HTMLInputElement.h:
46785 (WebCore::HTMLInputElement::respectHeightAndWidthAttrs):
46786 New method added to report if this input type uses height & width.
46788 2006-06-25 David Kilzer <ddkilzer@kilzer.net>
46792 - http://bugs.webkit.org/show_bug.cgi?id=9537
46793 REGRESSION: Reproducible crash in WebCore::RenderTextField::textWithHardLineBreaks()
46795 Test: fast/forms/textarea-hard-linewrap-empty.html
46797 * rendering/RenderTextField.cpp:
46798 (WebCore::RenderTextField::textWithHardLineBreaks): Added null check for
46799 m_div->firstChild()->renderer().
46801 2006-06-25 Mitz Pettel <opendarwin.org@mitzpettel.com>
46805 - fix http://bugs.webkit.org/show_bug.cgi?id=9388
46806 REGRESSION: outlines don't get erased when removed in some cases
46808 Test: fast/repaint/outline-shrinking.html
46810 * rendering/RenderObject.cpp:
46811 (WebCore::RenderObject::setStyle): Always repaint with the old style if the outline is
46812 becoming narrower, even if we are going to relayout.
46814 2006-06-25 Rob Buis <buis@kde.org>
46818 Fix for http://bugs.webkit.org/show_bug.cgi?id=8707:
46819 event.clientX and event.clientY should be relative to the viewport, not the canvas
46821 Make sure clientX and clientY take into account the scroll offsets
46824 * dom/EventTargetNode.cpp:
46825 (WebCore::EventTargetNode::dispatchMouseEvent):
46826 * dom/MouseEvent.cpp:
46827 (WebCore::MouseEvent::MouseEvent):
46828 * dom/MouseEvent.h:
46829 * dom/MouseRelatedEvent.cpp:
46830 (WebCore::MouseRelatedEvent::MouseRelatedEvent):
46831 (WebCore::MouseRelatedEvent::initCoordinates):
46832 * dom/MouseRelatedEvent.h:
46833 * dom/WheelEvent.cpp:
46834 (WebCore::WheelEvent::WheelEvent):
46835 * page/FrameView.cpp:
46836 (WebCore::FrameView::dispatchDragEvent):
46838 2006-06-25 Timothy Hatcher <timothy@apple.com>
46842 Bug 9574: Drosera should show inline scripts within the original HTML
46843 http://bugs.webkit.org/show_bug.cgi?id=9574
46845 * Pass the starting line number and error message to the debugger.
46846 * Call parsedSource even if there was a script parse error so the
46847 debugger can show the parse error.
46848 * Pass NSURL objects to the ObjC delegate for the script URLs.
46850 * bridge/mac/WebCoreScriptDebugger.h:
46851 * bridge/mac/WebCoreScriptDebugger.mm:
46853 (WebCoreScriptDebuggerImp::sourceParsed):
46855 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
46857 Build fix. Reviewed by NOBODY.
46859 - Backed out patch for http://bugs.webkit.org/show_bug.cgi?id=8707
46860 event.clientX and event.clientY should be relative to the viewport, not the canvas
46862 * dom/EventTargetNode.cpp:
46863 (WebCore::EventTargetNode::dispatchMouseEvent):
46864 * dom/MouseEvent.cpp:
46865 (WebCore::MouseEvent::MouseEvent):
46866 * dom/MouseEvent.h:
46867 * dom/MouseRelatedEvent.cpp:
46868 (WebCore::MouseRelatedEvent::MouseRelatedEvent):
46869 (WebCore::MouseRelatedEvent::initCoordinates):
46870 * dom/MouseRelatedEvent.h:
46871 * dom/WheelEvent.cpp:
46872 (WebCore::WheelEvent::WheelEvent):
46874 2006-06-24 Rob Buis <buis@kde.org>
46878 Fix for http://bugs.webkit.org/show_bug.cgi?id=8707:
46879 event.clientX and event.clientY should be relative to the viewport, not the canvas
46881 Make sure clientX and clientY take into account the scroll offsets
46884 Test: fast/dom/window-xy-properties.html
46886 * dom/EventTargetNode.cpp:
46887 (WebCore::EventTargetNode::dispatchMouseEvent):
46888 * dom/MouseEvent.cpp:
46889 (WebCore::MouseEvent::MouseEvent):
46890 * dom/MouseEvent.h:
46891 * dom/MouseRelatedEvent.cpp:
46892 (WebCore::MouseRelatedEvent::MouseRelatedEvent):
46893 (WebCore::MouseRelatedEvent::initCoordinates):
46894 * dom/MouseRelatedEvent.h:
46895 * dom/WheelEvent.cpp:
46896 (WebCore::WheelEvent::WheelEvent):
46898 2006-06-24 Rob Buis <buis@kde.org>
46902 http://bugs.webkit.org/show_bug.cgi?id=9352
46903 Webkit doesn't respect stroke-width in SVG for smaller <circle>s
46905 Make sure the stroke path is set before applying gradient transforms.
46907 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
46908 (WebCore::KRenderingPaintServerGradientQuartz::setup):
46909 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
46911 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
46913 Rubber-stamped by Eric.
46915 Add a -h (do not follow symlinks) option to ln in derived sources build script (without it,
46916 a symlink was created inside the source directory on second build).
46918 * WebCore.xcodeproj/project.pbxproj:
46920 2006-06-24 James G. Speth <speth@end.com>
46922 Reviewed by Darin. Copyrights tweaked by ddkilzer.
46924 Bug 8331: DOMNodeLists returned to Objective-C are not properly wrapped
46925 http://bugs.webkit.org/show_bug.cgi?id=8331
46927 DOMNodes were the only objects handled by createObjcInstanceForValue.
46928 now it handles all of these: DOMNode, DOMNodeList, DOMNamedNodeMap, DOMStyleSheetList,
46929 DOMStyleSheet, DOMMediaList, DOMCSSRuleList, DOMCSSRule, DOMCSSStyleDeclaration, and DOMCSSValue
46931 * WebCore.xcodeproj/project.pbxproj: added file DOMCSSInternal.h to project
46932 * bindings/js/kjs_css.cpp:
46933 (KJS::): changed ClassInfo for DOMCSSStyleSheet to have DOMStyleSheet as its parent class
46934 * bindings/objc/DOM.mm:
46935 (-[DOMDocumentType :]): moved DOMNamedNodeMap (WebCoreInternal) interface to DOMInternal.h
46936 * bindings/objc/DOMCSS.mm: moved WebCoreInternal interfaces to DOMCSSInternal.h
46937 * bindings/objc/DOMCSSInternal.h: Added file, contains WebCoreInternal interface for CSS classes
46938 * bindings/objc/DOMInternal.h: added DOMNamedNodeMap (WebCoreInternal) interface
46939 * bindings/objc/DOMUtility.mm:
46940 (KJS::ScriptInterpreter::createObjcInstanceForValue): support for more classes
46942 2006-06-24 David Kilzer <ddkilzer@kilzer.net>
46944 Reviewed by Timothy.
46946 * Info.plist: Fixed copyright to include 2003-2006.
46947 * manual-tests/NPN_Invoke/Info.plist: Added copyright statement.
46949 2006-06-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
46951 Reviewed by Darin, landed by ap.
46953 - fix http://bugs.webkit.org/show_bug.cgi?id=9547
46954 Resize corner does not track the mouse accurately
46956 Test: fast/css/resize-corner-tracking.html
46958 * page/FrameView.cpp:
46959 (WebCore::FrameView::handleMousePressEvent): Store the offset from the layer's
46960 resizing corner where dragging has started.
46961 (WebCore::FrameView::handleMouseMoveEvent): Pass the stored offset to the
46962 layer's resize method.
46963 * rendering/RenderLayer.cpp:
46964 (WebCore::RenderLayer::resize): Added an offset parameter, which is added to
46965 the mouse location.
46966 For objects that may have intrinsic margins applied to them,
46967 added code to lift the margins into the object's style in order to keep them
46969 Changed to take the content size as the base size if the box-sizing property
46971 (WebCore::RenderLayer::offsetFromResizeCorner): Added. Returns the offset of the
46972 given point from the corner that tracks the mouse when resizing.
46973 * rendering/RenderLayer.h:
46975 2006-06-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
46977 Reviewed by Darin, landed by ap.
46979 - fix http://bugs.webkit.org/show_bug.cgi?id=9316
46980 REGRESSION: text field width shrinks on first keystroke
46982 Test: fast/forms/floating-textfield-relayout.html
46984 * page/FrameView.cpp:
46985 (WebCore::FrameView::layoutRoot): Added. During subtree relayout, returns
46986 the subtree root. Otherwise returns 0.
46987 (WebCore::FrameView::layoutPending): Made const.
46988 * page/FrameView.h:
46989 * rendering/RenderBox.cpp:
46990 (WebCore::RenderBox::calcWidth): Added early return if this is the root
46991 of a subtree being laid out.
46993 2006-06-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
46997 - fix http://bugs.webkit.org/show_bug.cgi?id=9531
46998 Pages that need only a horizontal scroll bar get a vertical one as well
47000 The change affects many existing tests.
47002 * page/FrameView.cpp:
47003 (WebCore::FrameView::layout): Mark the body renderer as needing layout if
47004 the view's height has changed and the body stretches to the view's height.
47005 * rendering/RenderBox.cpp:
47006 (WebCore::RenderBox::calcHeight):
47007 * rendering/RenderBox.h:
47008 (WebCore::RenderBox::stretchesToViewHeight): Added. Moved the logic for when
47009 the HTML block needs to stretch to the view's height from calcHeight() here.
47011 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
47015 - fix http://bugs.webkit.org/show_bug.cgi?id=7461
47016 Always encode the path part of an URI as UTF-8
47018 Test: http/tests/uri/utf8-path.html
47020 * platform/KURL.cpp:
47021 (encodeRelativeString): Always set pathEncoding to UTF-8.
47023 2006-06-24 Graham Dennis <Graham.Dennis@gmail.com>
47025 Reviewed by Darin, landed by ap.
47027 - fix http://bugs.webkit.org/show_bug.cgi?id=9467
47028 TreeWalker/NodeIterator do not restrict the traversal
47030 Test: traversal/stay-within-root.html
47033 (WebCore::Node::traversePreviousNode):
47035 Add a stayWithin argument to traversePreviousNode just like the other
47036 traversal functions
47037 * dom/NodeIterator.cpp:
47038 (WebCore::NodeIterator::findNextNode):
47039 (WebCore::NodeIterator::findPreviousNode):
47040 Ensure that when moving forward or backward that the root node is not
47042 * dom/TreeWalker.cpp:
47043 (WebCore::TreeWalker::previousNode):
47044 (WebCore::TreeWalker::nextNode):
47046 (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
47048 2006-06-24 Jonas Witt <jonas.witt@gmail.com>
47050 Reviewed by ggaren, landed by ap.
47052 - http://bugs.webkit.org/show_bug.cgi?id=9181
47053 Complete DOMUIEvent Obj-C API to reflect UIEvent
47055 * WebCore.exp: add new classes DOMKeyboardEvent and DOMWheelEvent to the exported
47056 symbols list of WebCore.framework
47058 Updated DOMUIEvent to include all DOM Level 2 properties
47059 Added DOMKeyboardEvent (DOM Level 3)
47060 Added two non-W3C accessors (keyCode, charCode) of DOMKeyboardEvent to a separate file (DOMEventsNonstandard)
47061 Added DOMWheelEvent (non-W3C) in separate file (DOMEventsNonstandard)
47062 Added this file (DOMEventsNonstandard) to the build process
47064 * WebCore.xcodeproj/project.pbxproj:
47065 * bindings/objc/DOM.h:
47066 * bindings/objc/DOMEvents.h:
47067 * bindings/objc/DOMEvents.mm:
47068 (+[DOMEvent _eventWith:]):
47069 (-[DOMUIEvent _UIEvent]):
47070 (-[DOMUIEvent view]):
47071 (-[DOMUIEvent detail]):
47072 (-[DOMUIEvent initUIEvent:::::]):
47073 (-[DOMKeyboardEvent _keyboardEvent]):
47074 (-[DOMKeyboardEvent keyIdentifier]):
47075 (-[DOMKeyboardEvent keyLocation]):
47076 (-[DOMKeyboardEvent ctrlKey]):
47077 (-[DOMKeyboardEvent shiftKey]):
47078 (-[DOMKeyboardEvent altKey]):
47079 (-[DOMKeyboardEvent metaKey]):
47080 (-[DOMKeyboardEvent getModifierState:]):
47081 (-[DOMMouseEvent button]):
47082 * bindings/objc/DOMEventsNonstandard.mm: Added.
47083 (-[DOMWheelEvent _wheelEvent]):
47084 (-[DOMWheelEvent screenX]):
47085 (-[DOMWheelEvent screenY]):
47086 (-[DOMWheelEvent clientX]):
47087 (-[DOMWheelEvent clientY]):
47088 (-[DOMWheelEvent ctrlKey]):
47089 (-[DOMWheelEvent shiftKey]):
47090 (-[DOMWheelEvent altKey]):
47091 (-[DOMWheelEvent metaKey]):
47092 (-[DOMWheelEvent isHorizontal]):
47093 (-[DOMWheelEvent wheelDelta]):
47094 (-[DOMKeyboardEvent _keyboardEvent]):
47095 (-[DOMKeyboardEvent keyCode]):
47096 (-[DOMKeyboardEvent charCode]):
47097 * bindings/objc/DOMPrivate.h:
47099 2006-06-24 Mitz Pettel <opendarwin.org@mitzpettel.com>
47101 Reviewed and landed by ap.
47103 - http://bugs.webkit.org/show_bug.cgi?id=9563
47104 Remove unused layoutSuppressed field and inLayout() method
47106 No test added because there is no change in functionality.
47108 * page/FrameView.cpp:
47109 (WebCore::FrameViewPrivate::reset):
47110 (WebCore::FrameView::layout):
47111 * page/FrameView.h:
47112 * rendering/RenderView.cpp:
47113 (WebCore::RenderView::layout):
47115 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
47119 - http://bugs.webkit.org/show_bug.cgi?id=8177
47120 Javascript search incredibly slow
47122 No change in functionality, thus no test.
47124 Use info sharing for named collections, too. Moved shared HTMLCollection infos from HTMLDocument
47125 to Document. Renamed collection types to use the preferred WebKit style. Replaced direct
47126 HTMLCollection creation with using accessors from Document in a few places.
47128 * bindings/objc/DOMHTML.mm:
47129 (-[DOMHTMLElement children]):
47130 (-[DOMHTMLDocument images]):
47131 (-[DOMHTMLDocument applets]):
47132 (-[DOMHTMLDocument links]):
47133 (-[DOMHTMLDocument forms]):
47134 (-[DOMHTMLDocument anchors]):
47135 (-[DOMHTMLMapElement areas]):
47136 (-[DOMHTMLTableSectionElement rows]):
47137 (-[DOMHTMLTableElement rows]):
47138 (-[DOMHTMLTableElement tBodies]):
47139 (-[DOMHTMLTableRowElement cells]):
47140 * dom/Document.cpp:
47141 (WebCore::Document::images):
47142 (WebCore::Document::applets):
47143 (WebCore::Document::embeds):
47144 (WebCore::Document::objects):
47145 (WebCore::Document::scripts):
47146 (WebCore::Document::links):
47147 (WebCore::Document::forms):
47148 (WebCore::Document::anchors):
47149 (WebCore::Document::all):
47150 (WebCore::Document::windowNamedItems):
47151 (WebCore::Document::documentNamedItems):
47152 (WebCore::Document::nameCollectionInfo):
47154 (WebCore::Document::collectionInfo):
47155 * html/HTMLCollection.cpp:
47156 (WebCore::HTMLCollection::HTMLCollection):
47157 (WebCore::HTMLCollection::traverseNextItem):
47158 (WebCore::HTMLCollection::checkForNameMatch):
47159 (WebCore::HTMLCollection::updateNameCache):
47160 * html/HTMLCollection.h:
47161 (WebCore::HTMLCollection::):
47162 * html/HTMLDocument.h:
47163 * html/HTMLElement.cpp:
47164 (WebCore::HTMLElement::children):
47165 * html/HTMLMapElement.cpp:
47166 (WebCore::HTMLMapElement::areas):
47167 * html/HTMLNameCollection.h:
47168 * html/HTMLNameCollection.cpp:
47169 (WebCore::HTMLNameCollection::HTMLNameCollection):
47170 (WebCore::HTMLNameCollection::traverseNextItem):
47171 * html/HTMLFormCollection.cpp:
47172 * html/HTMLOptionsCollection.cpp:
47173 (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
47174 * html/HTMLSelectElement.h:
47175 (WebCore::HTMLSelectElement::collectionInfo):
47176 * html/HTMLTableElement.cpp:
47177 (WebCore::HTMLTableElement::rows):
47178 (WebCore::HTMLTableElement::tBodies):
47179 * html/HTMLTableRowElement.cpp:
47180 (WebCore::HTMLTableRowElement::cells):
47181 * html/HTMLTableSectionElement.cpp:
47182 (WebCore::HTMLTableSectionElement::rows):
47183 * kwq/WebCoreAXObject.mm:
47184 (-[WebCoreAXObject accessibilityAttributeValue:]):
47186 (WebCore::Frame::gotoAnchor):
47188 2006-06-24 Alexey Proskuryakov <ap@nypop.com>
47192 - http://bugs.webkit.org/show_bug.cgi?id=9418
47193 WebKit will not build when Space exists in path
47195 * WebCore.xcodeproj/project.pbxproj: Enclose search paths in quotes; create symlinks to
47196 avoid passing paths with spaces to make.
47198 2006-06-23 Tim Omernick <timo@apple.com>
47200 Reviewed by Tim Hatcher.
47202 <rdar://problem/4560947> Leopard REGRESSION: Dragging to TileGame Widget is broken
47204 * page/FrameView.cpp:
47205 (WebCore::FrameView::updateDragAndDrop):
47206 Use the passed mouse event, instead of the "current" event. There is no such thing as
47207 a "drag event". Asking for the current event during a drag returns a weird system-
47208 internal event with an invalid mouse location.
47210 2006-06-23 Timothy Hatcher <timothy@apple.com>
47214 Manual test added: cursor.html
47216 Bug 9560: should support new CSS3 cursor types to get more resizing directions
47217 http://bugs.webkit.org/show_bug.cgi?id=9560
47219 Adds support for ew-resize, ns-resize, nesw-resize, nwse-resize,
47220 col-resize and row-resize CSS3 cursor values.
47222 Also converted some of the cursor images to grayscale tiffs,
47223 some were RGB but had no color data.
47225 * Resources/eastResizeCursor.tiff:
47226 * Resources/eastWestResizeCursor.tiff: Added.
47227 * Resources/helpCursor.tiff:
47228 * Resources/moveCursor.tiff:
47229 * Resources/northEastResizeCursor.tiff:
47230 * Resources/northEastSouthWestResizeCursor.tiff: Added.
47231 * Resources/northResizeCursor.tiff:
47232 * Resources/northSouthResizeCursor.tiff: Added.
47233 * Resources/northWestResizeCursor.tiff:
47234 * Resources/northWestSouthEastResizeCursor.tiff: Added.
47235 * Resources/southEastResizeCursor.tiff:
47236 * Resources/southResizeCursor.tiff:
47237 * Resources/southWestResizeCursor.tiff:
47238 * Resources/textAreaResizeCorner.tiff:
47239 * Resources/waitCursor.tiff:
47240 * Resources/westResizeCursor.tiff:
47241 * WebCore.xcodeproj/project.pbxproj:
47242 * css/CSSComputedStyleDeclaration.cpp:
47243 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
47244 * css/CSSValueKeywords.in:
47245 * css/cssparser.cpp:
47246 (WebCore::CSSParser::parseValue):
47247 * manual-tests/cursor.html: Added.
47248 * page/FrameView.cpp:
47249 (WebCore::selectCursor):
47250 * platform/Cursor.h:
47251 * platform/mac/CursorMac.mm:
47252 (WebCore::northSouthResizeCursor):
47253 (WebCore::eastWestResizeCursor):
47254 (WebCore::northEastSouthWestResizeCursor):
47255 (WebCore::northWestSouthEastResizeCursor):
47256 (WebCore::columnResizeCursor):
47257 (WebCore::rowResizeCursor):
47258 * platform/win/CursorWin.cpp:
47259 (WebCore::northSouthResizeCursor):
47260 (WebCore::eastWestResizeCursor):
47261 (WebCore::northEastSouthWestResizeCursor):
47262 (WebCore::northWestSouthEastResizeCursor):
47263 (WebCore::columnResizeCursor):
47264 (WebCore::rowResizeCursor):
47265 * rendering/render_style.h: cursor needs 5 bits now
47267 2006-06-23 John Sullivan <sullivan@apple.com>
47269 Reviewed by Tim Omernick
47271 - fixed <rdar://problem/4597685> stale rects for document markers can be left behind in certain cases
47274 * dom/Document.cpp:
47275 (WebCore::Document::setRenderedRectForMarker):
47276 changed parameter from IntRect to const IntRect& at Darin's request
47277 (WebCore::Document::invalidateRenderedRectsForMarkersInRect):
47278 new method, tests whether the rendered rect for each marker intersects the
47279 passed rect. If so, sets the rendered rect back to the placeholder rect that
47280 means that the rect for this marker isn't known.
47283 (WebCore::Frame::paint):
47284 call invalidateRenderedRectsForMarkersInRect on the rect we're about to paint.
47285 This ensures that old stale rects won't be preserved if the associated marker
47286 has moved such that it is out of the painted area.
47288 2006-06-23 Justin Garcia <justin.garcia@apple.com>
47292 <rdar://problem/4527702>
47293 REGRESSION: Quote bars go away on first paragraph when I delete reply text
47295 * editing/DeleteSelectionCommand.cpp:
47296 (WebCore::DeleteSelectionCommand::mergeParagraphs):
47297 Add a rule for when to merge into empty blocks.
47299 === WebCore-521.13 ===
47301 2006-06-23 Patrick Beard <beard@apple.com>
47303 Reviewed by Tim Hatcher.
47305 <rdar://problem/4223619> Safari crashed in -[NSFont __isSystemFont]
47306 CFRetain and CFRelease NSFont's when FontPlatformData has a reference.
47307 We only do this when GC is enabled for performance reasons.
47310 * platform/mac/FontPlatformData.h:
47311 (WebCore::FontPlatformData::FontPlatformData):
47312 (WebCore::FontPlatformData::~FontPlatformData):
47314 2006-06-23 Justin Garcia <justin.garcia@apple.com>
47318 <http://bugs.webkit.org/show_bug.cgi?id=8074>
47319 Caret before/after block tables is too small
47320 <rdar://problem/4598331>
47321 right arrow out of a table shows cursor in a weird place
47323 * rendering/RenderBox.cpp:
47324 (WebCore::RenderBox::caretRect): Don't propagate to children,
47325 VisiblePositions inside containers don't refer to children.
47326 Don't use the font height for tables.
47328 2006-06-23 Brady Eidson <beidson@apple.com>
47332 Added 64-bit String::number() functions
47334 * platform/PlatformString.h:
47335 * platform/String.cpp:
47336 (WebCore::String::number):
47338 2006-06-22 Mitz Pettel <opendarwin.org@mitzpettel.com>
47342 - fix http://bugs.webkit.org/show_bug.cgi?id=9497
47343 REGRESSION: Incomplete repainting when scrolling thumbnails on Flickr
47345 Test: fast/repaint/clipped-relative.html
47347 * page/FrameView.cpp:
47348 (WebCore::FrameView::layout):
47349 * rendering/RenderBlock.cpp:
47350 (WebCore::RenderBlock::removePositionedObjects): Removed call to computeRepaintRects().
47351 Previously, it was needed to update the cached rects before RenderBox::setStyle()
47352 called updateLayerPositions().
47353 * rendering/RenderBox.cpp:
47354 (WebCore::RenderBox::setStyle): Changed to call updateLayerPositions() for a newly-
47355 created layer only if it does not need layout. Otherwise, updateLayerPositions() will
47356 be called after layout. This saves a repaint in some cases.
47357 * rendering/RenderLayer.cpp:
47358 (WebCore::RenderLayer::checkForRepaintOnResize): Renamed computeRepaintRects() to
47359 this and deleted the code that cached the absolute position and repaint rects.
47360 (WebCore::RenderLayer::updateLayerPositions): Added code to cache the absolute
47361 position and repaint rects right after updating the layer's position.
47362 * rendering/RenderLayer.h:
47364 2006-06-22 Beth Dakin <bdakin@apple.com>
47366 Reviewed by Maciej.
47368 Fix for <rdar://problem/4599015> REGRESSION: Hand on clock widget
47369 don't appear at all
47371 This regression was caused by <rdar://problem/4567520> HIDPI: pixel
47372 cracks in weather widget at 1.83 scaling
47374 * html/CanvasRenderingContext2D.cpp:
47375 (WebCore::CanvasRenderingContext2D::drawImage): Do the contains
47376 check before rounding to integral device pixels.
47378 2006-06-22 Anders Carlsson <acarlsson@apple.com>
47382 <rdar://problem/4529334> REGRESSION: Can't configure RadarInMotion widget for U.S. locations on Leopard (Javascript errors)
47384 * dom/Document.cpp:
47385 (WebCore::Document::completeURL):
47386 Check if both the URL and base URL are empty instead of using URL() which returns "about:blank" if the URL is empty.
47388 2006-06-22 Anders Carlsson <acarlsson@apple.com>
47390 Reviewed by Maciej.
47392 <rdar://problem/4499675> Package Tracker widget always crashes in WebCore::Frame::jScriptEnabled() const + 0
47394 * html/HTMLParser.cpp:
47395 (WebCore::HTMLParser::noscriptCreateErrorCheck):
47396 (WebCore::HTMLParser::canvasCreateErrorCheck):
47397 (WebCore::HTMLParser::isInline):
47398 Add null-checks for document->frame() since it can be 0 for documents created using createHTMLDocument.
47400 2006-06-22 Anders Carlsson <acarlsson@apple.com>
47402 Reviewed by Maciej.
47404 <rdar://problem/4524840> Entities contained in DOCTYPE referenced DTD in XSLT source document are unknown
47406 * dom/xml_tokenizer.cpp:
47407 (WebCore::shouldAllowExternalLoad):
47408 Use correct path for the catalog.
47410 (WebCore::errorFunc):
47411 Add error function to keep parser errors from going to the console.
47413 (WebCore::XMLTokenizer::write):
47416 (WebCore::XMLTokenizer::end):
47417 Pass DocLoader to xmlDocPtrForString.
47419 (WebCore::xmlDocPtrForString):
47420 * dom/xml_tokenizer.h:
47421 Add DocLoader argument to xmlDocPtrForString so external DTDs and entities can be loaded.
47423 * xml/XSLTProcessor.cpp:
47424 (WebCore::xmlDocPtrFromNode):
47425 Pass DocLoader to xmlDocPtrForString
47427 2006-06-21 David Hyatt <hyatt@apple.com>
47429 Back out -webkit-overlay and just rename it back to overlay.
47433 * css/CSSComputedStyleDeclaration.cpp:
47434 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
47435 * css/CSSValueKeywords.in:
47436 * css/cssparser.cpp:
47437 (WebCore::CSSParser::parseValue):
47438 * css/cssstyleselector.cpp:
47439 (WebCore::CSSStyleSelector::applyProperty):
47441 2006-06-21 Justin Garcia <justin.garcia@apple.com>
47445 * editing/DeleteSelectionCommand.cpp:
47446 (WebCore::DeleteSelectionCommand::initializePositionData): Fix a bug in the code
47447 to stop merges across table cells.
47448 (WebCore::DeleteSelectionCommand::mergeParagraphs): Move the code to stop merges
47449 across table cells to initializePositionData so that its changes to
47450 m_mergeBlocksAfterDelete can take effect on the endingPosition.
47451 * editing/InsertParagraphSeparatorCommand.cpp:
47452 (WebCore::InsertParagraphSeparatorCommand::doApply): Turn into an InsertLineBreak
47453 instead of splitting/cloning a table cell.
47455 2006-06-21 Beth Dakin <bdakin@apple.com>
47459 Fix for <rdar://problem/3914965> Misspelled text underline doesn't
47460 look right at non-standard scale factors
47462 * platform/mac/GraphicsContextMac.mm:
47463 (WebCore::GraphicsContext::drawLineForMisspelling): We need to call
47464 into our previously-created SPI for pattern-drawing so that the
47465 phase is right at all scale factors.
47467 2006-06-21 David Hyatt <hyatt@apple.com>
47469 Fix for 7362, implement the CSS3 overflow-x and overflow-y properties.
47473 * WebCore.xcodeproj/project.pbxproj:
47474 * css/CSSComputedStyleDeclaration.cpp:
47476 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
47477 * css/CSSPropertyNames.in:
47478 * css/cssparser.cpp:
47479 (WebCore::CSSParser::parseValue):
47480 * css/cssstyleselector.cpp:
47481 (WebCore::CSSStyleSelector::adjustRenderStyle):
47482 (WebCore::CSSStyleSelector::applyProperty):
47483 * page/FrameView.cpp:
47484 (WebCore::FrameView::applyOverflowToViewport):
47485 (WebCore::FrameView::layout):
47486 * rendering/RenderBlock.cpp:
47487 (WebCore::RenderBlock::layoutBlock):
47488 (WebCore::RenderBlock::determineHorizontalPosition):
47489 (WebCore::RenderBlock::layoutBlockChildren):
47490 (WebCore::RenderBlock::rightOffset):
47491 (WebCore::RenderBlock::rightmostPosition):
47492 (WebCore::RenderBlock::calcMinMaxWidth):
47493 * rendering/RenderBox.cpp:
47494 (WebCore::RenderBox::setStyle):
47495 (WebCore::RenderBox::contentWidth):
47496 (WebCore::RenderBox::contentHeight):
47497 (WebCore::RenderBox::sizesToIntrinsicWidth):
47498 (WebCore::RenderBox::calcHeight):
47499 (WebCore::RenderBox::calcPercentageHeight):
47500 * rendering/RenderFlexibleBox.cpp:
47501 (WebCore::RenderFlexibleBox::layoutBlock):
47502 * rendering/RenderLayer.cpp:
47503 (WebCore::RenderLayer::scrollToOffset):
47504 (WebCore::RenderLayer::shouldAutoscroll):
47505 (WebCore::RenderLayer::updateScrollInfoAfterLayout):
47506 (WebCore::RenderLayer::styleChanged):
47507 * rendering/RenderLayer.h:
47508 * rendering/RenderObject.cpp:
47509 (WebCore::RenderObject::clientWidth):
47510 (WebCore::RenderObject::clientHeight):
47511 * rendering/RenderObject.h:
47512 (WebCore::RenderObject::hasAutoVerticalScrollbar):
47513 (WebCore::RenderObject::hasAutoHorizontalScrollbar):
47514 (WebCore::RenderObject::scrollsOverflow):
47515 (WebCore::RenderObject::scrollsOverflowX):
47516 (WebCore::RenderObject::scrollsOverflowY):
47517 (WebCore::RenderObject::includeVerticalScrollbarSize):
47518 (WebCore::RenderObject::includeHorizontalScrollbarSize):
47519 * rendering/RenderTextArea.cpp:
47520 (WebCore::RenderTextArea::setStyle):
47521 * rendering/RenderTextField.cpp:
47522 (WebCore::RenderTextField::createDivStyle):
47523 (WebCore::RenderTextField::calcHeight):
47524 (WebCore::RenderTextField::calcMinMaxWidth):
47525 * rendering/bidi.cpp:
47526 (WebCore::RenderBlock::layoutInlineChildren):
47527 * rendering/render_style.cpp:
47528 (WebCore::RenderStyle::diff):
47529 * rendering/render_style.h:
47531 (WebCore::RenderStyle::NonInheritedFlags::operator==):
47532 (WebCore::RenderStyle::setBitDefaults):
47533 (WebCore::RenderStyle::overflowX):
47534 (WebCore::RenderStyle::overflowY):
47535 (WebCore::RenderStyle::setOverflowX):
47536 (WebCore::RenderStyle::setOverflowY):
47537 (WebCore::RenderStyle::initialOverflowX):
47538 (WebCore::RenderStyle::initialOverflowY):
47540 2006-06-21 Justin Garcia <justin.garcia@apple.com>
47544 <rdar://problem/4590366>
47545 REGRESSION: Selection incorrectly paints gaps on TOT
47547 * dom/Document.cpp:
47548 (WebCore::Document::updateSelection): Use the leftmost candidate for the end of the
47549 selection and the rightmost candidate for the start of the selection.
47550 * dom/Position.cpp:
47551 (WebCore::Position::upstream): Cross line wraps so that we can use upstream/downstream
47552 to get to candidates before/after linewraps.
47553 (WebCore::Position::downstream):
47554 (WebCore::Position::inRenderedContent):
47555 * editing/DeleteSelectionCommand.cpp:
47556 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
47557 (WebCore::DeleteSelectionCommand::mergeParagraphs):
47558 * editing/InsertParagraphSeparatorCommand.cpp:
47559 (WebCore::InsertParagraphSeparatorCommand::doApply):
47560 Ensure that the leftmost candidate is used. We should sample the style from that one.
47561 When the block to insert is after a br, a br should be inserted even in strict mode.
47562 * editing/InsertTextCommand.cpp:
47563 (WebCore::InsertTextCommand::input):
47564 Insert at the leftmost candidate, get rid of a use of trailingWhitespacePosition.
47565 Don't apply a style if its unnecessary.
47566 * editing/ReplaceSelectionCommand.cpp:
47567 (WebCore::ReplaceSelectionCommand::doApply): "pos" can be invalidated, don't use it.
47568 * editing/VisiblePosition.cpp:
47569 Renamed initDeepPosition and made it return the canonical position.
47570 (WebCore::VisiblePosition::init):
47571 (WebCore::VisiblePosition::canonicalPosition):
47572 * editing/VisiblePosition.h:
47573 (WebCore::VisiblePosition::characterBefore): Added.
47574 * editing/visible_units.cpp:
47575 (WebCore::startOfParagraph):
47576 * rendering/InlineTextBox.cpp:
47577 (WebCore::InlineTextBox::selectionState): When a selection ends at a line wrap, it shouldn't extend
47578 onto the next line.
47580 2006-06-21 David Hyatt <hyatt@apple.com>
47582 Reviewed and committed by Beth.
47584 Fix for <rdar://problem/4595337> Resizing a containing block
47585 strictly vertically does not cause contained height:100% element to
47588 * rendering/RenderBlock.cpp:
47589 (WebCore::RenderBlock::layoutBlockChildren): Also layout if the
47590 child's min or max height is a percent.
47592 2006-06-21 Anders Carlsson <acarlsson@apple.com>
47596 http://bugs.webkit.org/show_bug.cgi?id=6058
47597 XMLTokenizer runs all <script> tags at once instead of as they're encountered
47599 * dom/xml_tokenizer.cpp:
47600 (WebCore::XMLTokenizer::XMLTokenizer):
47601 Initialize new members.
47603 (WebCore::XMLTokenizer::endElementNs):
47604 If we've encountered a script tag, execute the script here. If the script
47605 tag refers to an external resource, pause the parser while loading it.
47607 (WebCore::XMLTokenizer::end):
47608 Move code from finish() to here
47610 (WebCore::XMLTokenizer::finish):
47611 Only call end() if the parser isn't paused.
47613 (WebCore::XMLTokenizer::notifyFinished):
47614 Evaluate the script here and resume the parser.
47616 (WebCore::XMLTokenizer::resumeParsing):
47617 If finish() was called, call end() after writing all data.
47619 2006-06-21 Steve Falkenburg <sfalken@apple.com>
47623 * platform/win/TemporaryLinkStubs.cpp:
47624 (FrameWin::shouldInterruptJavaScript):
47626 2006-06-21 Anders Carlsson <acarlsson@apple.com>
47628 Move FrameWin::shouldInterruptJavaScript to TemporaryLinkStubs.cpp
47630 * bridge/win/FrameWin.cpp:
47631 * platform/win/TemporaryLinkStubs.cpp:
47632 (FrameWin::shouldInterruptJavaScript):
47634 2006-06-21 Ben Goodger <bengoodger@gmail.com>
47636 Reviewed by Maciej.
47638 Fix for: http://bugs.webkit.org/show_bug.cgi?id=9523
47639 More Win32 build bustage.
47641 * WebCore.vcproj/WebCore/WebCore.vcproj:
47642 * bridge/win/FrameWin.cpp:
47643 (WebCore::FrameWin::shouldInterruptJavaScript):
47644 * bridge/win/FrameWin.h:
47646 2006-06-20 Adele Peterson <adele@apple.com>
47648 Reviewed by Anders.
47650 Fix for: http://bugs.webkit.org/show_bug.cgi?id=8948
47651 Switch to use new text field implementation for <textarea>
47654 * html/HTMLTextAreaElement.cpp:
47655 (WebCore::HTMLTextAreaElement::selectionStart):
47656 (WebCore::HTMLTextAreaElement::selectionEnd):
47657 (WebCore::HTMLTextAreaElement::setSelectionStart):
47658 (WebCore::HTMLTextAreaElement::setSelectionEnd):
47659 (WebCore::HTMLTextAreaElement::select):
47660 (WebCore::HTMLTextAreaElement::setSelectionRange):
47661 (WebCore::HTMLTextAreaElement::createRenderer):
47662 (WebCore::HTMLTextAreaElement::appendFormData):
47663 (WebCore::HTMLTextAreaElement::isKeyboardFocusable):
47664 (WebCore::HTMLTextAreaElement::isMouseFocusable):
47665 (WebCore::HTMLTextAreaElement::focus):
47666 (WebCore::HTMLTextAreaElement::defaultEventHandler):
47667 (WebCore::HTMLTextAreaElement::updateValue):
47668 (WebCore::HTMLTextAreaElement::setValue):
47670 2006-06-20 Brady Eidson <beidson@apple.com>
47674 Fixed capitalization mistake that I made, someone else fixed, then I accidentally made it go back to the old way
47676 * icon/SQLStatement.cpp:
47678 2006-06-20 Brady Eidson <beidson@apple.com>
47680 Reviewed by Maciej.
47682 More changes/additions setting the stage for the major IconDatabase hookup.
47684 * WebCore.xcodeproj/project.pbxproj: Added SQLTransaction.cpp
47686 * bridge/mac/WebCoreIconDatabaseBridge.h: Added call-throughs and translations to pass WebKit DB to WebCore DB
47687 * bridge/mac/WebCoreIconDatabaseBridge.mm:
47688 (+[WebCoreIconDatabaseBridge sharedBridgeInstance]):
47689 (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
47690 (-[WebCoreIconDatabaseBridge iconForURL:withSize:]):
47691 (-[WebCoreIconDatabaseBridge iconURLForURL:]):
47692 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
47693 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
47694 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
47695 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
47696 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
47697 (-[WebCoreIconDatabaseBridge _setIconURL:forURL:]):
47698 (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
47700 * bridge/mac/WebCorePageBridge.mm: Added WebCore's IconDatabase logging channel to the user-prefs check
47701 (initializeLoggingChannelsIfNecessary):
47703 * icon/IconDatabase.cpp: Added stubs and basic SQL usage to create the sqlite DB and respond to WebKit calls
47704 (WebCore::IconDatabase::IconDatabase):
47705 (WebCore::IconDatabase::open):
47706 (WebCore::IconDatabase::close):
47707 (WebCore::IconDatabase::isValidDatabase):
47708 (WebCore::IconDatabase::recreateDatabase):
47709 (WebCore::IconDatabase::setPrivateBrowsingEnabled):
47710 (WebCore::IconDatabase::iconForURL):
47711 (WebCore::IconDatabase::iconURLForURL):
47712 (WebCore::IconDatabase::defaultIcon):
47713 (WebCore::IconDatabase::retainIconForURL):
47714 (WebCore::IconDatabase::releaseIconForURL):
47715 (WebCore::IconDatabase::setIconForIconURL):
47716 (WebCore::IconDatabase::setHaveNoIconForIconURL):
47717 (WebCore::IconDatabase::setIconURLForPageURL):
47718 (WebCore::IconDatabase::hasIconForIconURL):
47720 * icon/IconDatabase.h: WebIcon will be an internal class used in IconDatabase but is not complete yet
47721 (WebCore::WebIcon::getExpiration):
47722 (WebCore::WebIcon::getTouch):
47724 * icon/SQLDatabase.cpp: Added more SQLite convenience methods
47725 (SQLDatabase::setFullsync):
47726 (SQLDatabase::setBusyTimeout):
47727 (SQLDatabase::setBusyHandler):
47728 * icon/SQLDatabase.h:
47729 * icon/SQLStatement.cpp:
47730 (WebCore::SQLStatement::returnsAtLeastOneResult):
47732 * icon/SQLTransaction.cpp: Added basic commit/rollback support with this simple class
47733 (SQLTransaction::SQLTransaction):
47734 (SQLTransaction::~SQLTransaction):
47735 (SQLTransaction::begin):
47736 (SQLTransaction::commit):
47737 (SQLTransaction::rollback):
47739 2006-06-20 Adele Peterson <adele@apple.com>
47741 Reviewed by Maciej.
47744 http://bugs.webkit.org/show_bug.cgi?id=8724
47745 REGRESSION: onSelect handler doesn't work for text fields
47747 http://bugs.webkit.org/show_bug.cgi?id=7676
47748 REGRESSION: Selection methods on new text fields don't work if text field is hidden
47750 http://bugs.webkit.org/show_bug.cgi?id=8867
47751 REGRESSION: selectionStart/End return 0 for input element once it no longer has focus
47753 Implemented onSelect for new text fields and textareas. Also fixed selection restore
47754 behavior to better match other browsers and Safari 2.0 behavior.
47757 * fast/forms/input-selection-restore.html
47758 * fast/forms/input-selection-hidden.html
47759 * fast/forms/onselect-textarea.html
47760 * fast/forms/onselect-textfield.html
47762 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::cacheSelection): Added.
47763 * html/HTMLInputElement.cpp:
47764 (WebCore::HTMLInputElement::init): Initializes cached selection.
47765 (WebCore::HTMLInputElement::selectionStart): If this element doesn't have focus, return the cached selection value.
47766 (WebCore::HTMLInputElement::selectionEnd): ditto.
47767 (WebCore::HTMLInputElement::setValue): Restore a caret at the starting point of the old selection. Matches Safari 2.0 behavior.
47769 * html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::cacheSelection): Added.
47770 * html/HTMLTextAreaElement.cpp:
47771 (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Initializes cached selection.
47772 (WebCore::HTMLTextAreaElement::selectionStart): If this element doesn't have focus, return the cached selection value.
47773 (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
47774 (WebCore::HTMLTextAreaElement::focus): If this is the first focus, set a caret at the end of the text. Otherwise,
47775 restore the cached selection. This matches other browsers' behavior.
47776 (WebCore::HTMLTextAreaElement::setValue): Restore a caret at the starting point of the old selection. Matches Safari 2.0 behavior.
47778 * page/Frame.h: Added notifyRendererOfSelectionChange method.
47780 (WebCore::Frame::notifyRendererOfSelectionChange): Added. Calls selectionChanged for text fields and textareas. Forwards a userTriggered
47781 argument so selectionChanged knows whether or not to fire onSelect.
47782 (WebCore::Frame::setSelection): Calls notifyRendererOfSelectionChange(false). This gets called for all selection changes, so the renderer
47783 can always update its cached selection values.
47784 (WebCore::Frame::handleMouseReleaseEvent): Calls notifyRendererOfSelectionChange(true) so onSelect will get fired when the user is done
47785 making a selection with the mouse.
47786 * bridge/mac/WebCoreFrameBridge.mm:
47787 (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]): Calls notifyRendererOfSelectionChange(true) so onSelect gets
47788 fired when the user makes a selection with the keyboard.
47789 (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]): ditto.
47791 * rendering/RenderTextField.h: Add userTriggered parameter to selectionChanged.
47792 * rendering/RenderTextField.cpp:
47793 (WebCore::RenderTextField::setSelectionRange): For visibility:hidden, cache the selection and
47794 return early since we won't be able to actually set the selection.
47795 (WebCore::RenderTextField::selectionChanged): Caches the selection.
47796 If the selection is a range, and its triggered by user action, then fire the onSelect event.
47798 2006-06-21 Anders Carlsson <acarlsson@apple.com>
47800 * bridge/win/FrameWin.cpp:
47801 (WebCore::shouldInterruptJavaScript):
47802 * bridge/win/FrameWin.h:
47803 Try fixing the Windows build.
47805 2006-06-20 Adele Peterson <adele@apple.com>
47809 Renamed RenderSelect to DeprecatedRenderSelect to prepare for new popup menu and list menu implementations.
47811 * WebCore.xcodeproj/project.pbxproj:
47812 * html/HTMLOptionElement.h:
47813 * html/HTMLSelectElement.cpp:
47814 (WebCore::HTMLSelectElement::recalcStyle):
47815 (WebCore::HTMLSelectElement::createRenderer):
47816 (WebCore::HTMLSelectElement::setRecalcListItems):
47817 (WebCore::HTMLSelectElement::reset):
47818 (WebCore::HTMLSelectElement::notifyOptionSelected):
47819 * html/HTMLSelectElement.h:
47820 * rendering/DeprecatedRenderSelect.cpp: Added.
47821 (WebCore::DeprecatedRenderSelect::DeprecatedRenderSelect):
47822 (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
47823 (WebCore::DeprecatedRenderSelect::setStyle):
47824 (WebCore::DeprecatedRenderSelect::updateFromElement):
47825 (WebCore::DeprecatedRenderSelect::baselinePosition):
47826 (WebCore::DeprecatedRenderSelect::calcMinMaxWidth):
47827 (WebCore::DeprecatedRenderSelect::layout):
47828 (WebCore::DeprecatedRenderSelect::valueChanged):
47829 (WebCore::DeprecatedRenderSelect::selectionChanged):
47830 (WebCore::DeprecatedRenderSelect::setOptionsChanged):
47831 (WebCore::DeprecatedRenderSelect::createListBox):
47832 (WebCore::DeprecatedRenderSelect::updateSelection):
47833 * rendering/DeprecatedRenderSelect.h: Added.
47834 (WebCore::DeprecatedRenderSelect::renderName):
47835 * rendering/RenderSelect.cpp: Removed.
47836 * rendering/RenderSelect.h: Removed.
47838 2006-06-20 Anders Carlsson <acarlsson@apple.com>
47842 http://bugs.webkit.org/show_bug.cgi?id=9509
47843 Would like a way to pause/resume XML parsing
47845 * dom/xml_tokenizer.cpp:
47846 (WebCore::PendingCallbacks::PendingCallbacks):
47847 (WebCore::PendingCallbacks::appendStartElementNSCallback):
47848 (WebCore::PendingCallbacks::appendEndElementNSCallback):
47849 (WebCore::PendingCallbacks::appendCharactersCallback):
47850 (WebCore::PendingCallbacks::appendProcessingInstructionCallback):
47851 (WebCore::PendingCallbacks::appendCDATABlockCallback):
47852 (WebCore::PendingCallbacks::appendCommentCallback):
47853 (WebCore::PendingCallbacks::appendInternalSubsetCallback):
47854 (WebCore::PendingCallbacks::appendErrorCallback):
47855 (WebCore::PendingCallbacks::callAndRemoveFirstCallback):
47856 (WebCore::PendingCallbacks::isEmpty):
47857 (WebCore::PendingCallbacks::PendingCallback::~PendingCallback):
47858 (WebCore::PendingCallbacks::PendingStartElementNSCallback::~PendingStartElementNSCallback):
47859 (WebCore::PendingCallbacks::PendingStartElementNSCallback::call):
47860 (WebCore::PendingCallbacks::PendingEndElementNSCallback::call):
47861 (WebCore::PendingCallbacks::PendingCharactersCallback::~PendingCharactersCallback):
47862 (WebCore::PendingCallbacks::PendingCharactersCallback::call):
47863 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::~PendingProcessingInstructionCallback):
47864 (WebCore::PendingCallbacks::PendingProcessingInstructionCallback::call):
47865 (WebCore::PendingCallbacks::PendingCDATABlockCallback::~PendingCDATABlockCallback):
47866 (WebCore::PendingCallbacks::PendingCDATABlockCallback::call):
47867 (WebCore::PendingCallbacks::PendingCommentCallback::~PendingCommentCallback):
47868 (WebCore::PendingCallbacks::PendingCommentCallback::call):
47869 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::~PendingInternalSubsetCallback):
47870 (WebCore::PendingCallbacks::PendingInternalSubsetCallback::call):
47871 (WebCore::PendingCallbacks::):
47872 New classes which manage a list of pending SAX callbacks that have not yet
47873 been sent to the tokenizer.
47875 (WebCore::XMLTokenizer::XMLTokenizer):
47876 Initialize new member variables.
47878 (WebCore::XMLTokenizer::~XMLTokenizer):
47879 Delete PendingCallbacks object.
47881 (WebCore::XMLTokenizer::write):
47882 If the parser is paused, queue the data to be written.
47884 (WebCore::XMLTokenizer::startElementNs):
47885 (WebCore::XMLTokenizer::endElementNs):
47886 (WebCore::XMLTokenizer::characters):
47887 (WebCore::XMLTokenizer::error):
47888 (WebCore::XMLTokenizer::processingInstruction):
47889 (WebCore::XMLTokenizer::cdataBlock):
47890 (WebCore::XMLTokenizer::comment):
47891 (WebCore::XMLTokenizer::internalSubset):
47892 If the parser has been paused, queue the callbacks instead.
47894 (WebCore::XMLTokenizer::handleError):
47895 New function, called by both ::error and :PendingCallbacks::callAndRemoveFirstCallback
47897 (WebCore::XMLTokenizer::finish):
47898 (WebCore::XMLTokenizer::pauseParsing):
47899 Set m_parserPaused to true.
47901 (WebCore::XMLTokenizer::resumeParsing):
47902 Call the pending callbacks and then parse the pending source.
47904 2006-06-20 David Hyatt <hyatt@apple.com>
47906 Don't send the custom highlighter callback when painting is disabled.
47908 Reviewed by harrison
47910 * WebCore.xcodeproj/project.pbxproj:
47911 * rendering/InlineTextBox.cpp:
47912 (WebCore::InlineTextBox::paint):
47914 2006-06-20 Anders Carlsson <acarlsson@apple.com>
47918 <rdar://problem/4592244> REGRESSION (417.9.3 - 420+): (some?) plain text files have all lines concatenated into one line
47920 * loader/TextDocument.cpp:
47921 (WebCore::TextTokenizer::checkBuffer):
47922 (WebCore::TextTokenizer::TextTokenizer):
47923 (WebCore::TextTokenizer::write):
47924 (WebCore::TextTokenizer::finish):
47925 Add a text buffer which is used for translation of CR and CRLF to plain LF,
47926 like the HTML tokenizer does.
47928 2006-06-20 Maciej Stachowiak <mjs@apple.com>
47932 - fix crasher on one of the layout tests caused by my recent checkin
47934 * kcanvas/RenderSVGText.cpp:
47935 (WebCore::RenderSVGText::paint):
47937 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
47941 - http://bugs.webkit.org/show_bug.cgi?id=5499
47942 Page reload does not send any cache control headers
47944 Test: http/tests/misc/refresh-headers.php
47946 * bindings/js/kjs_window.cpp:
47947 (KJS::LocationFunc::callAsFunction): Call scheduleRefresh() for Location::Reload.
47949 * page/Frame.h: Add scheduleRefresh(). Don't derive from TransferJob or implement its methods - that was
47950 used only for storing response HTTP headers, which was an overkill.
47952 * page/FramePrivate.h: Replace TransferJob with a HashMap for storing response headers.
47955 (WebCore::Frame::didOpenURL): Don't needlessly change d->m_cachePolicy. Don't create a TransferJob.
47956 (WebCore::Frame::stopLoading): Directly access the metadata map, instead of going through a TransferJob.
47957 (WebCore::Frame::receivedFirstData): Ditto.
47958 (WebCore::Frame::addMetaData): Ditto.
47959 (WebCore::Frame::scheduleRefresh): A new function that schedules a refresh, similarly to what
47960 scheduleRedirection() does.
47961 (WebCore::Frame::changeLocation): Set request.reload attribute based on the current cache policy.
47963 2006-06-19 Ben Goodger <bengoodger@gmail.com>
47967 http://bugs.webkit.org/show_bug.cgi?id=9501
47968 Windows build fails with link error CharsetTable not defined
47970 * platform/make-charset-table.pl:
47971 (process_iana_charsets): Move test for equality to alias "None" until after
47972 normalization steps to ensure escape characters in the input data don't
47973 interfere with processing. Convert nearby tabs to 4 spaces in this function.
47975 2006-06-18 Maciej Stachowiak <mjs@apple.com>
47979 - fixed http://bugs.webkit.org/show_bug.cgi?id=9488
47980 "Animated GIFs do not respect transforms in SVG"
47982 http://bugs.webkit.org/show_bug.cgi?id=6946
47983 "SVG shows invalidation issues in WebKit"
47985 http://www.treebuilder.de/default.asp?file=441875.xml
47986 "Invalidation issues with "SVG 3d" demo"
47988 http://code.google.com/webstats/2005-12/pages.html
47989 "SVG text doesn't repaint correctly"
47991 * kcanvas/KCanvasContainer.cpp:
47992 (WebCore::KCanvasContainer::computeAbsoluteRepaintRect): Override base class, and apply
47993 appropriate transforms, so damage rects in transformed SVG content get propagated up properly.
47994 (WebCore::KCanvasContainer::getAbsoluteRepaintRect): note a FIXME; this method
47996 * kcanvas/KCanvasContainer.h: Prototype new method.
47998 * css/svg.css: Don't apply overflow:hidden to foreignObject, since that makes it a RenderLayer
47999 so it paints twice.
48000 * kcanvas/RenderForeignObject.cpp:
48001 (WebCore::RenderForeignObject::paint): Transform the damage rect before passing it down to HTML content,
48002 so everything paints that is supposed to. Also handle opacity here since we won't get layers.
48003 (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
48004 appropriate transforms, so damage rects in HTML embedded in SVG get propagated up properly.
48005 (WebCore::RenderForeignObject::requiresLayer): Never use a RenderLayer.
48006 (WebCore::RenderForeignObject::layout): Make sure to dirty our previous bounds when layout
48007 changes, as by transform.
48008 * kcanvas/RenderForeignObject.h:
48010 * kcanvas/RenderSVGImage.cpp:
48011 (WebCore::RenderSVGImage::paint): Transform the damage rect when painting. Also handle opacity
48012 here since we won't get layers.
48013 (WebCore::RenderForeignObject::computeAbsoluteRepaintRect): Override base class, and apply
48014 appropriate transforms, so damage rects in SVG images get propagated up properly.
48015 (WebCore::RenderSVGImage::translationForAttributes): New helper method, factored out of below.
48016 (WebCore::RenderSVGImage::translateForAttributes): Use above.
48017 (WebCore::RenderSVGImage::requiresLayer): Never use a RenderLayer.
48018 (WebCore::RenderSVGImage::layout): Make sure to properly dirty the old bounds, accounting
48020 (WebCore::RenderSVGImage::relativeBBox): Correct bbox computation.
48021 * kcanvas/RenderSVGImage.h:
48023 * kcanvas/RenderSVGText.cpp:
48024 (WebCore::RenderSVGText::paint): Transform incoming damage rect. Handle opacity here since we
48026 (WebCore::RenderSVGText::computeAbsoluteRepaintRect): Apply transforms.
48027 (WebCore::RenderSVGText::requiresLayer): Never use a RenderLayer.
48028 (WebCore::RenderSVGText::layout): Make sure to dirty the old bounds.
48030 * platform/cg/GraphicsContextCG.cpp:
48031 (WebCore::GraphicsContext::roundToDevicePixels): Instead of transforming rect to device space
48032 and back to user space, do this for the origin and lower right corner of the rect. Otherwise the
48033 rect will get inflated if user space is rotated or skewed.
48035 * kcanvas/RenderPath.cpp:
48036 (WebCore::RenderPath::layout): Make sure to dirty the old bounds.
48037 (WebCore::RenderPath::paint): Hhandle opacity here.
48041 * kcanvas/RenderSVGImage.cpp:
48042 (WebCore::RenderSVGImage::nodeAtPoint): Fix hit testing. Wasn't applying the x/y
48043 attribute transform.
48045 2006-06-19 Sam Weinig <sam.weinig@gmail.com>
48049 - fix for http://bugs.webkit.org/show_bug.cgi?id=9500
48050 Split dom2_eventsimpl.* into separate files (one class per file).
48052 * WebCore.xcodeproj/project.pbxproj:
48053 * bindings/js/kjs_binding.cpp:
48054 * bindings/js/kjs_dom.cpp:
48055 * bindings/js/kjs_events.cpp:
48056 * bindings/js/kjs_html.cpp:
48057 * bindings/js/kjs_window.cpp:
48058 * bindings/objc/DOM.mm:
48059 * bindings/objc/DOMEvents.mm:
48060 * bindings/objc/DOMInternal.mm:
48061 * bindings/scripts/CodeGeneratorJS.pm:
48062 * bridge/mac/FrameMac.mm:
48063 * dom/BeforeTextInsertedEvent.h:
48064 * dom/BeforeUnloadEvent.cpp: Added.
48065 * dom/BeforeUnloadEvent.h: Added.
48066 (WebCore::BeforeUnloadEvent::result):
48067 * dom/CharacterData.cpp:
48068 * dom/Clipboard.h: Added.
48069 (WebCore::Clipboard::~Clipboard):
48070 * dom/ClipboardEvent.cpp: Added.
48071 (WebCore::ClipboardEvent::ClipboardEvent):
48072 * dom/ClipboardEvent.h: Added.
48073 (WebCore::ClipboardEvent::clipboard):
48074 * dom/ContainerNode.cpp:
48075 * dom/Document.cpp:
48076 * dom/Event.cpp: Added.
48077 (WebCore::Event::Event):
48078 (WebCore::Event::initEvent):
48079 * dom/Event.h: Added.
48081 (WebCore::Event::):
48082 (WebCore::Event::type):
48083 (WebCore::Event::target):
48084 (WebCore::Event::currentTarget):
48085 (WebCore::Event::setCurrentTarget):
48086 (WebCore::Event::eventPhase):
48087 (WebCore::Event::setEventPhase):
48088 (WebCore::Event::bubbles):
48089 (WebCore::Event::cancelable):
48090 (WebCore::Event::timeStamp):
48091 (WebCore::Event::stopPropagation):
48092 (WebCore::Event::propagationStopped):
48093 (WebCore::Event::defaultPrevented):
48094 (WebCore::Event::setDefaultHandled):
48095 (WebCore::Event::defaultHandled):
48096 (WebCore::Event::preventDefault):
48097 (WebCore::Event::setDefaultPrevented):
48098 (WebCore::Event::setCancelBubble):
48099 (WebCore::Event::getCancelBubble):
48100 (WebCore::Event::dispatched):
48101 * dom/EventTargetNode.cpp:
48102 * dom/KeyboardEvent.cpp: Added.
48103 (WebCore::KeyboardEvent::KeyboardEvent):
48104 (WebCore::KeyboardEvent::initKeyboardEvent):
48105 * dom/KeyboardEvent.h: Added.
48106 (WebCore::KeyboardEvent::):
48107 (WebCore::KeyboardEvent::keyIdentifier):
48108 (WebCore::KeyboardEvent::keyLocation):
48109 (WebCore::KeyboardEvent::altGraphKey):
48110 (WebCore::KeyboardEvent::keyEvent):
48111 * dom/MouseEvent.cpp: Added.
48112 (WebCore::MouseEvent::MouseEvent):
48113 (WebCore::MouseEvent::initMouseEvent):
48114 (WebCore::MouseEvent::isDragEvent):
48115 (WebCore::MouseEvent::toElement):
48116 (WebCore::MouseEvent::fromElement):
48117 * dom/MouseEvent.h: Added.
48118 (WebCore::MouseEvent::button):
48119 (WebCore::MouseEvent::relatedTarget):
48120 (WebCore::MouseEvent::clipboard):
48121 * dom/MouseRelatedEvent.cpp: Added.
48122 (WebCore::MouseRelatedEvent::MouseRelatedEvent):
48123 * dom/MouseRelatedEvent.h: Added.
48124 (WebCore::MouseRelatedEvent::screenX):
48125 (WebCore::MouseRelatedEvent::screenY):
48126 (WebCore::MouseRelatedEvent::clientX):
48127 (WebCore::MouseRelatedEvent::clientY):
48128 (WebCore::MouseRelatedEvent::layerX):
48129 (WebCore::MouseRelatedEvent::layerY):
48130 (WebCore::MouseRelatedEvent::offsetX):
48131 (WebCore::MouseRelatedEvent::offsetY):
48132 (WebCore::MouseRelatedEvent::isSimulated):
48133 * dom/MutationEvent.cpp: Added.
48134 (WebCore::MutationEvent::MutationEvent):
48135 (WebCore::MutationEvent::initMutationEvent):
48136 * dom/MutationEvent.h: Added.
48137 (WebCore::MutationEvent::):
48138 (WebCore::MutationEvent::relatedNode):
48139 (WebCore::MutationEvent::prevValue):
48140 (WebCore::MutationEvent::newValue):
48141 (WebCore::MutationEvent::attrName):
48142 (WebCore::MutationEvent::attrChange):
48143 * dom/RegisteredEventListener.cpp: Added.
48144 (WebCore::RegisteredEventListener::RegisteredEventListener):
48145 (WebCore::operator==):
48146 * dom/RegisteredEventListener.h: Added.
48147 (WebCore::RegisteredEventListener::eventType):
48148 (WebCore::RegisteredEventListener::listener):
48149 (WebCore::RegisteredEventListener::useCapture):
48150 (WebCore::RegisteredEventListener::removed):
48151 (WebCore::RegisteredEventListener::setRemoved):
48152 (WebCore::operator!=):
48153 * dom/UIEvent.cpp: Added.
48154 (WebCore::UIEvent::UIEvent):
48155 (WebCore::UIEvent::initUIEvent):
48156 * dom/UIEvent.h: Added.
48157 (WebCore::UIEvent::view):
48158 (WebCore::UIEvent::detail):
48159 * dom/UIEventWithKeyState.h: Added.
48160 (WebCore::UIEventWithKeyState::UIEventWithKeyState):
48161 (WebCore::UIEventWithKeyState::ctrlKey):
48162 (WebCore::UIEventWithKeyState::shiftKey):
48163 (WebCore::UIEventWithKeyState::altKey):
48164 (WebCore::UIEventWithKeyState::metaKey):
48165 * dom/WheelEvent.cpp: Added.
48166 (WebCore::WheelEvent::WheelEvent):
48167 * dom/WheelEvent.h: Added.
48168 (WebCore::WheelEvent::isHorizontal):
48169 (WebCore::WheelEvent::wheelDelta):
48170 * dom/dom2_eventsimpl.cpp: Removed.
48171 * dom/dom2_eventsimpl.h: Removed.
48172 * editing/EditCommand.cpp:
48173 * editing/SelectionController.cpp:
48174 * html/HTMLAnchorElement.cpp:
48175 * html/HTMLButtonElement.cpp:
48176 * html/HTMLDocument.cpp:
48177 * html/HTMLElement.cpp:
48178 * html/HTMLFrameSetElement.cpp:
48179 * html/HTMLInputElement.cpp:
48180 * html/HTMLSelectElement.cpp:
48181 * html/HTMLTextAreaElement.cpp:
48182 * ksvg2/events/SVGZoomEvent.h:
48183 * ksvg2/svg/SVGAElement.cpp:
48185 * page/FrameView.cpp:
48186 * platform/PlatformKeyboardEvent.h:
48187 * platform/PlatformMouseEvent.h:
48188 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
48189 * platform/PlatformWheelEvent.h:
48190 * platform/mac/ClipboardMac.h:
48191 * rendering/RenderFrameSet.cpp:
48192 * rendering/RenderLayer.cpp:
48193 * rendering/RenderObject.cpp:
48194 * rendering/RenderTextField.cpp:
48195 * xml/xmlhttprequest.cpp:
48197 2006-06-19 Darin Adler <darin@apple.com>
48201 - removed a few empty/unused files Brady found by tracking down the nm error message
48203 * editing/VisibleRange.cpp: Removed.
48204 * editing/VisibleRange.h: Removed.
48205 * kcanvas/KCanvasImage.cpp: Removed.
48207 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed VisibleRange.cpp/h.
48208 * WebCore.xcodeproj/project.pbxproj: Removed VisibleRange.cpp/h and KCanvasImage.cpp.
48209 * WebCoreSources.bkl: Removed VisibleRange.cpp.
48211 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
48215 - http://bugs.webkit.org/show_bug.cgi?id=9492
48216 Fix or remove window.debug.
48218 It was only available in newly created windows, and became undefined after changing the URL
48219 or reloading. Let's try removing it; hopefully, no-one will notice.
48221 * bindings/js/kjs_proxy.cpp:
48222 (WebCore::KJSProxy::initScriptIfNeeded): Don't add window.debug.
48224 2006-06-19 Alexey Proskuryakov <ap@nypop.com>
48228 - http://bugs.webkit.org/show_bug.cgi?id=8972
48229 REGRESSION: invalid UTF-8 sequences are not displayed
48231 Test: LayoutTests/fast/encoding/invalid-UTF-8.html
48233 * dom/xml_tokenizer.cpp:
48234 (WebCore::getXHTMLEntity): Properly null-terminate the result. This didn't matter
48235 before, because the garbage at the end was guaranteed to be invalid UTF-8, and was
48236 omitted in appendOmittingUnwanted();
48238 * platform/StreamingTextDecoder.cpp:
48239 (WebCore::StreamingTextDecoder::appendOmittingBOM): Only omit BOM characters.
48240 Renamed back from appendOmittingUnwanted();
48242 (WebCore::StreamingTextDecoder::convertUsingICU):
48243 * platform/StreamingTextDecoder.h:
48244 Update for the above function renaming.
48246 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
48250 http://bugs.webkit.org/show_bug.cgi?id=9498
48251 Remove dead code left in JSHTMLDocument::getOwnPropertySlot() from r14298 (Bug 7838)
48253 * bindings/js/kjs_html.cpp:
48254 (KJS::JSHTMLDocument::getOwnPropertySlot): Remove dead code.
48256 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
48258 Reviewed by ggaren.
48260 * manual-tests/redraw-page-cache-visited-links.html: Changed to use DOM mouse event.
48262 2006-06-18 David Kilzer <ddkilzer@kilzer.net>
48264 Reviewed by ggaren.
48266 - Update a manual test for http://bugs.webkit.org/show_bug.cgi?id=9150
48267 DumpRenderTree should be able to keep URL history during runs
48269 * manual-tests/redraw-page-cache-visited-links.html: Added note about window.history hack.
48270 Fixed coordinates for mouse events. Added call to keepWebHistory().
48271 * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added note about
48272 window.history hack.
48274 2006-06-17 Anders Carlsson <acarlsson@apple.com>
48278 * bindings/js/kjs_binding.cpp:
48279 (KJS::ScriptInterpreter::ScriptInterpreter):
48280 Set the default script timeout.
48282 (KJS::ScriptInterpreter::shouldInterruptScript):
48283 New function which asks the frame if the script should be interrupted.
48285 * bindings/js/kjs_binding.h:
48287 * bindings/js/kjs_events.cpp:
48288 (KJS::JSAbstractEventListener::handleEvent):
48289 * bindings/js/kjs_proxy.cpp:
48290 (WebCore::KJSProxy::evaluate):
48291 Add calls to startTimeoutCheck/stopTimeoutCheck
48293 * bindings/js/kjs_window.cpp:
48294 (KJS::WindowFunc::callAsFunction):
48295 Add calls to pauseTimeoutCheck/unpauseTimeoutCheck
48297 (KJS::ScheduledAction::execute):
48298 Add calls to startTimeoutCheck/stopTimeoutCheck
48300 * bridge/mac/FrameMac.h:
48301 * bridge/mac/FrameMac.mm:
48302 (WebCore::FrameMac::shouldInterruptJavaScript):
48303 New function which asks the bridge if the script should be interrupted.
48305 * bridge/mac/WebCoreFrameBridge.h:
48307 Add function declarations.
48309 2006-06-17 Alexey Proskuryakov <ap@nypop.com>
48311 Reviewed by ggaren.
48313 - http://bugs.webkit.org/show_bug.cgi?id=8131
48314 Some properties and methods of window and document objects cannot be converted to a string
48316 Most of the properties were already fixed, this just adds adds a prototype to window.debug.
48318 Test: fast/dom/everything-to-string.html
48320 * bindings/js/kjs_proxy.cpp:
48321 (WebCore::TestFunctionImp::TestFunctionImp):
48322 (WebCore::KJSProxy::initScriptIfNeeded):
48324 2006-06-17 David Kilzer <ddkilzer@kilzer.net>
48326 Reviewed by Maciej.
48328 - Fix capitalization issue for case-sensitive filesystems.
48330 * icon/SQLStatement.cpp: Change assertions.h to Assertions.h.
48332 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
48336 - fix http://bugs.webkit.org/show_bug.cgi?id=7395
48337 Table not properly re-flowed when floated div removed from layout
48339 Test: fast/block/float/table-relayout.html
48341 * rendering/RenderBlock.cpp:
48342 (WebCore::RenderBlock::markAllDescendantsWithFloatsForLayout): Added marking
48343 of children that use lineWidth.
48344 * rendering/RenderBlock.h: Added a FIXME.
48346 2006-06-17 Rob Buis <buis@kde.org>
48350 Fix for http://bugs.webkit.org/show_bug.cgi?id=6282:
48351 Adding new Option with new Option(text, value, defaultSelected, selected) fails to update selectedIndex
48353 Update selectedIndex when a new option is added using javascript.
48355 * bindings/js/kjs_html.cpp:
48356 (KJS::JSHTMLSelectCollection::put):
48357 * html/HTMLSelectElement.cpp:
48358 (WebCore::HTMLSelectElement::setSelectedIndex):
48359 (WebCore::HTMLSelectElement::setOption):
48360 (WebCore::HTMLSelectElement::setLength):
48361 * html/HTMLSelectElement.h:
48363 2006-06-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
48367 - test for http://bugs.webkit.org/show_bug.cgi?id=9466
48368 Assertion failure when dragging an image from the document into Safari's address bar
48370 * manual-tests/reset-initiatedDrag.html: Added.
48372 2006-06-16 David Kilzer <ddkilzer@kilzer.net>
48376 http://bugs.webkit.org/show_bug.cgi?id=9463
48377 REGRESSION (r14879): Assertion failure in CSSParser::sinkFloatingSelector()
48378 (m_floatingSelectors.contains(selector)) in some CSS tests
48380 * css/CSSGrammar.y: Create CSSSelector for FUNCTION using CSSParser::createFloatingSelector()
48381 instead of the bare constructor.
48383 2006-06-16 David Harrison <harrison@apple.com>
48385 Reviewed by Hatcher.
48387 <rdar://problem/4565312> Mail has a weird drawing artifact with dotted red lines running across the window
48389 Problem was that revision lost a check to not draw the markers
48390 when paintingDisabled(). This led the markers to be drawn when
48391 the window deactivated, at which time the view happens to be flipped.
48393 It is similar but not the same as the Mail ToDo highlighting
48394 issue, which is due to the custom highlight method
48395 drawing when the focusView is nil. Mail team knows this
48396 and has tested the fix.
48398 * platform/mac/GraphicsContextMac.mm:
48399 (WebCore::GraphicsContext::drawLineForMisspelling):
48400 Early return if paintingDisabled().
48402 2006-06-16 Adele Peterson <adele@apple.com>
48406 Adjust padding of inner div so text lines up with text fields.
48407 Adjust height of textarea so it only leaves room for the horizontal
48408 scrollbar if overflow is set to scroll, or if overflow is set to
48409 auto and there's no word wrap.
48411 These changes will be tested by current layout tests when the
48412 new textarea implementation takes effect.
48414 * rendering/RenderTextField.cpp:
48415 (WebCore::RenderTextField::createDivStyle):
48416 (WebCore::RenderTextField::calcHeight):
48418 2006-06-16 John Sullivan <sullivan@apple.com>
48422 - fixed <rdar://problem/4590062> crash in marker code with particular set of steps on daringfireball.net
48424 * dom/Document.cpp:
48425 (WebCore::Document::addMarker):
48426 Store [it - markers.begin()] in a local variable before modifying markers, since modifying markers can
48427 change value of [it - markers.begin()].
48429 2006-06-16 Adele Peterson <adele@apple.com>
48433 Added code to draw Cocoa-like border for textareas instead of just using CSS.
48436 * css/html4.css: Sets a 1px solid border.
48437 * platform/mac/WebCoreSystemInterface.h:
48438 * platform/mac/WebCoreSystemInterface.mm:
48439 * rendering/RenderThemeMac.h: Formatting changes.
48440 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextArea):
48441 Uses new wkDrawBezeledTextArea to draw border.
48443 2006-06-16 Mitz Pettel <opendarwin.org@mitzpettel.com>
48447 - fix http://bugs.webkit.org/show_bug.cgi?id=9432
48448 REGRESSION: crash in capitalization code due to empty-string generated content
48450 Test: fast/text/capitalize-empty-generated-string.html
48452 * rendering/RenderText.cpp:
48453 (WebCore::RenderText::setText): Skip empty-string text renderers when
48454 looking for the previous character.
48456 2006-06-15 Justin Garcia <justin.garcia@apple.com>
48460 <http://bugs.webkit.org/show_bug.cgi?id=8637>
48461 REGRESSION (11-16-05): Selection gaps left behind after delete
48463 * editing/SelectionController.cpp:
48464 (WebCore::SelectionController::nodeWillBeRemoved): Invalidate the selection so that
48465 selection gaps are invalidated.
48467 2006-06-15 Timothy Hatcher <timothy@apple.com>
48469 Reviewed by Geoff and Darin.
48471 Prefer the DWARF debugging symbols format for use in Xcode 2.3.
48473 * WebCore.xcodeproj/project.pbxproj:
48475 2006-06-15 Justin Garcia <justin.garcia@apple.com>
48477 Reviewed by harrison
48479 * editing/CompositeEditCommand.cpp:
48480 (WebCore::hasARenderedDescendant):
48481 (WebCore::CompositeEditCommand::prune): Ascend using the DOM
48482 (WebCore::CompositeEditCommand::moveParagraphs): Placeholder insertion
48483 during deletion is fixed, removing the fall back.
48485 2006-06-15 Nicholas Shanks <contact@nickshanks.com>
48487 Reviewed by Hyatt, landed by Joost de Valk.
48489 Fix http://bugs.webkit.org/show_bug.cgi?id=3233
48491 Add support for the :lang pseudo-class.
48493 * css/CSSGrammar.y:
48494 * css/CSSSelector.cpp:
48495 (WebCore::CSSSelector::operator == ):
48496 * css/CSSSelector.h:
48497 (WebCore::CSSSelector::CSSSelector):
48498 * css/cssparser.cpp:
48499 (WebCore::CSSParser::lex):
48500 * css/cssstyleselector.cpp:
48501 (WebCore::CSSStyleSelector::checkOneSelector):
48502 * css/tokenizer.flex:
48504 2006-06-15 Justin Garcia <justin.garcia@apple.com>
48506 Reviewed by harrison
48508 <http://bugs.webkit.org/show_bug.cgi?id=9456>
48509 REGRESSION (417.9.2-420+): Cmd-G doesn't work in Safari after double-click and Cmd-E
48512 (WebCore::Frame::findString): When comparing the found range with
48513 what's currently selected a) build a selection with the found
48514 range to remove collapsed whitespace and b) compare ranges
48515 instead of selection objects to ignore the way that the
48516 current selection was made (to ignore the base and extent).
48518 2006-06-15 David Kilzer <ddkilzer@kilzer.net>
48522 http://bugs.webkit.org/show_bug.cgi?id=9382
48523 IDL files missing copyright/license headers
48525 Add Apple BSD license and copyright to IDL files.
48527 * ksvg2/bindings/idl/svg/GetSVGDocument.idl:
48528 * ksvg2/bindings/idl/svg/SVGAElement.idl:
48529 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl:
48530 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl:
48531 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl:
48532 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl:
48533 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl:
48534 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl:
48535 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl:
48536 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl:
48537 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl:
48538 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl:
48539 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl:
48540 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl:
48541 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl:
48542 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl:
48543 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl:
48544 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl:
48545 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl:
48546 * ksvg2/bindings/idl/svg/SVGCircleElement.idl:
48547 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl:
48548 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl:
48549 * ksvg2/bindings/idl/svg/SVGCursorElement.idl:
48550 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl:
48551 * ksvg2/bindings/idl/svg/SVGDefsElement.idl:
48552 * ksvg2/bindings/idl/svg/SVGDescElement.idl:
48553 * ksvg2/bindings/idl/svg/SVGElementInstance.idl:
48554 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl:
48555 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl:
48556 * ksvg2/bindings/idl/svg/SVGEvent.idl:
48557 * ksvg2/bindings/idl/svg/SVGException.idl:
48558 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl:
48559 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl:
48560 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl:
48561 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl:
48562 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl:
48563 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl:
48564 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl:
48565 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl:
48566 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl:
48567 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl:
48568 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl:
48569 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl:
48570 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl:
48571 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl:
48572 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl:
48573 * ksvg2/bindings/idl/svg/SVGFETileElement.idl:
48574 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl:
48575 * ksvg2/bindings/idl/svg/SVGFilterElement.idl:
48576 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl:
48577 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl:
48578 * ksvg2/bindings/idl/svg/SVGGElement.idl:
48579 * ksvg2/bindings/idl/svg/SVGGradientElement.idl:
48580 * ksvg2/bindings/idl/svg/SVGICCColor.idl:
48581 * ksvg2/bindings/idl/svg/SVGImageElement.idl:
48582 * ksvg2/bindings/idl/svg/SVGLangSpace.idl:
48583 * ksvg2/bindings/idl/svg/SVGLengthList.idl:
48584 * ksvg2/bindings/idl/svg/SVGLineElement.idl:
48585 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl:
48586 * ksvg2/bindings/idl/svg/SVGLocatable.idl:
48587 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl:
48588 * ksvg2/bindings/idl/svg/SVGNumberList.idl:
48589 * ksvg2/bindings/idl/svg/SVGPaint.idl:
48590 * ksvg2/bindings/idl/svg/SVGPathElement.idl:
48591 * ksvg2/bindings/idl/svg/SVGPathSeg.idl:
48592 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl:
48593 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl:
48594 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl:
48595 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl:
48596 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl:
48597 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl:
48598 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl:
48599 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl:
48600 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl:
48601 * ksvg2/bindings/idl/svg/SVGPathSegList.idl:
48602 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl:
48603 * ksvg2/bindings/idl/svg/SVGPatternElement.idl:
48604 * ksvg2/bindings/idl/svg/SVGPointList.idl:
48605 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl:
48606 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl:
48607 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl:
48608 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl:
48609 * ksvg2/bindings/idl/svg/SVGRectElement.idl:
48610 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl:
48611 * ksvg2/bindings/idl/svg/SVGScriptElement.idl:
48612 * ksvg2/bindings/idl/svg/SVGSetElement.idl:
48613 * ksvg2/bindings/idl/svg/SVGStopElement.idl:
48614 * ksvg2/bindings/idl/svg/SVGStringList.idl:
48615 * ksvg2/bindings/idl/svg/SVGStylable.idl:
48616 * ksvg2/bindings/idl/svg/SVGStyleElement.idl:
48617 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl:
48618 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl:
48619 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl:
48620 * ksvg2/bindings/idl/svg/SVGTests.idl:
48621 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl:
48622 * ksvg2/bindings/idl/svg/SVGTextElement.idl:
48623 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl:
48624 * ksvg2/bindings/idl/svg/SVGTitleElement.idl:
48625 * ksvg2/bindings/idl/svg/SVGTransformList.idl:
48626 * ksvg2/bindings/idl/svg/SVGTransformable.idl:
48627 * ksvg2/bindings/idl/svg/SVGURIReference.idl:
48628 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl:
48629 * ksvg2/bindings/idl/svg/SVGUseElement.idl:
48630 * ksvg2/bindings/idl/svg/SVGViewElement.idl:
48631 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl:
48632 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl:
48633 * ksvg2/svg/SVGAnimatedLength.idl:
48635 2006-06-14 Justin Garcia <justin.garcia@apple.com>
48639 <rdar://problem/4439248>
48640 REGRESSION(412-417): [RTL] Serious problem with RTL signatures in Mail.app in 10.4.4 (7766)
48642 * editing/markup.cpp:
48643 (WebCore::renderedText): Use plainText so that we'll pull rendered text but in DOM order.
48645 2006-06-14 Levi Weintraub <lweintraub@apple.com>
48649 <http://bugs.webkit.org/show_bug.cgi?id=7580>
48650 TinyMCE: Implement execCommand(formatBlock, ...)
48652 * WebCore.xcodeproj/project.pbxproj: Added FormatBlock.{h,cpp} to the project.
48653 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
48654 * bridge/mac/WebCoreFrameBridge.h: Added WebUndoActions
48655 * editing/CompositeEditCommand.cpp:
48656 (WebCore::CompositeEditCommand::moveParagraph): Added a preserveStyle bool.
48657 (WebCore::CompositeEditCommand::moveParagraphs): Ditto. downstream() the start
48658 or else we'll move collapsed whitespace and uncollapse it.
48659 * editing/CompositeEditCommand.h:
48660 * editing/DeleteSelectionCommand.cpp:
48661 (WebCore::DeleteSelectionCommand::initializePositionData):
48662 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Don't update m_endingPosition
48663 because that's removeNode's responsibility.
48664 (WebCore::updatePositionForNodeRemoval): Added.
48665 (WebCore::DeleteSelectionCommand::removeNode): Turned removeFullySelectedNode into a virtual
48666 overload of removeNode so that we can update positions as we remove nodes.
48667 (WebCore::updatePositionForTextRemoval): Added.
48668 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
48669 (WebCore::DeleteSelectionCommand::handleGeneralDelete):
48670 (WebCore::DeleteSelectionCommand::fixupWhitespace): Got rid of m_trailingWhitespaceValid
48671 since m_trailingWhitespace is always valid (we update it as we remove nodes).
48672 (WebCore::DeleteSelectionCommand::mergeParagraphs):
48673 (WebCore::DeleteSelectionCommand::doApply): Leading and trailing spaces should
48674 be fixed if they have collapsed before merging paragraphs.
48675 * editing/DeleteSelectionCommand.h:
48676 * editing/EditAction.h:
48678 * editing/FormatBlockCommand.cpp: Added.
48679 (WebCore::FormatBlockCommand::FormatBlockCommand):
48680 (WebCore::FormatBlockCommand::modifyRange): Similar to InsertListCommand::modifyRange().
48681 (WebCore::FormatBlockCommand::doApply):
48682 * editing/FormatBlockCommand.h: Added.
48683 (WebCore::FormatBlockCommand::editingAction):
48684 * editing/InsertListCommand.h:
48685 (WebCore::InsertListCommand::editingAction):
48686 * editing/JSEditor.cpp:
48687 * editing/MergeIdenticalElementsCommand.cpp:
48688 (WebCore::MergeIdenticalElementsCommand::doApply):
48689 * editing/htmlediting.cpp:
48690 (WebCore::validBlockTag):
48691 (WebCore::createElement):
48692 * editing/htmlediting.h:
48694 2006-06-14 Maciej Stachowiak <mjs@apple.com>
48696 Reviewed by Anders.
48698 - fixed <rdar://problem/4586051> 10.4.7 regression: 'Saved and recent' button on mapquest.com does not work
48700 * dom/EventTargetNode.cpp:
48701 (WebCore::EventTargetNode::dispatchWindowEvent):
48703 2006-06-14 David Hyatt <hyatt@apple.com>
48705 Rename RenderSlider to DeprecatedSlider, so that I can start work on
48706 the new NSView-less slider.
48710 * WebCore.vcproj/WebCore/WebCore.vcproj:
48711 * WebCore.xcodeproj/project.pbxproj:
48712 * html/HTMLInputElement.cpp:
48713 (WebCore::HTMLInputElement::createRenderer):
48714 * rendering/DeprecatedSlider.cpp: Added.
48715 (WebCore::DeprecatedSlider::DeprecatedSlider):
48716 (WebCore::DeprecatedSlider::calcMinMaxWidth):
48717 (WebCore::DeprecatedSlider::updateFromElement):
48718 (WebCore::DeprecatedSlider::valueChanged):
48719 * rendering/DeprecatedSlider.h: Added.
48720 (WebCore::DeprecatedSlider::renderName):
48721 * rendering/RenderSlider.cpp: Removed.
48722 * rendering/RenderSlider.h: Removed.
48724 2006-06-13 Geoffrey Garen <ggaren@apple.com>
48726 Reviewed by Maciej.
48728 - Fixed <rdar://problem/4562192> Creating a new DOMHTMLDocument
48729 appears challenging.
48731 - Added createHTMLDocument to Objc bindings, fixed up implementation
48732 to comply with the DOM 2 Candidate Recommendation in which is was defined.
48733 (It never made the final spec.) Also removed use of deprecatedString,
48734 to avoid unnecessary killing of puppies.
48736 * WebCore.xcodeproj/project.pbxproj:
48737 * bindings/objc/DOM.mm:
48738 (-[DOMImplementation createHTMLDocument:]):
48739 * bindings/objc/DOMPrivate.h:
48740 * dom/DOMImplementation.cpp:
48741 (WebCore::DOMImplementation::createDocument):
48742 (WebCore::DOMImplementation::createHTMLDocument):
48744 2006-06-13 Alice Liu <alice.liu@apple.com>
48748 fixed <rdar://problem/4457902> HTMLSelectElement.remove() can't handle an option obj being passed to it, results in hang on http://www.ibc-solar.de/www_ibc/fst_solarmonitoring.jsp
48750 * bindings/js/kjs_html.cpp:
48751 (KJS::HTMLElementFunction::callAsFunction):
48752 support this by converting the argument to an options object
48753 before passing to remove()
48755 2006-06-13 Darin Adler <darin@apple.com>
48759 - fix <rdar://problem/4585333> Changing location for weather on yahoo.com home page redirects to another page
48761 This patch fixes a bug where the event listener cache does not distinguish
48762 HTML and non-HTML listeners. Incorrect behavior where stopPropagation also
48763 prevented default masked a case of this bug on the yahoo.com home page until
48764 we fixed bug 5180 on 2005-10-03.
48766 Test: fast/events/event-listener-html-non-html-confusion.html
48768 * bindings/js/kjs_window.h: Add additional listener maps for HTML event listeners.
48770 * bindings/js/kjs_window.cpp:
48771 (KJS::Window::~Window): Go through the additional maps when clearing the window object
48772 pointer in event listeners.
48773 (KJS::Window::getJSEventListener): Look in the HTML or non-HTML map depending on the
48775 (KJS::Window::getJSUnprotectedEventListener): Ditto.
48777 * bindings/js/kjs_events.cpp:
48778 (KJS::JSUnprotectedEventListener::JSUnprotectedEventListener): Add to either the HTML
48779 or non-HTML map depending on the argument passed.
48780 (KJS::JSUnprotectedEventListener::~JSUnprotectedEventListener): Remove from either the
48781 HTML or non-HTML map depending on whether the HTML flag is set.
48782 (KJS::JSEventListener::JSEventListener): More of the same.
48783 (KJS::JSEventListener::~JSEventListener): Ditto.
48784 (KJS::JSLazyEventListener::parseCode): Same thing here. In a lazy event listener there
48785 is not a listener at construction time, thus the code here to put the listener into a
48786 map needs the HTML vs. non-HTML logic.
48788 2006-06-13 Maciej Stachowiak <mjs@apple.com>
48792 <rdar://problem/4583892> 10.4.7 regression: Hang occurs when attempting to load search results at mapquest.com
48794 * dom/EventTargetNode.cpp:
48795 (WebCore::EventTargetNode::dispatchGenericEvent): Don't allow
48796 "load" events to propagate up to the window. We need this quirk to
48797 avoid site hangs, because they depend on an old Mozilla bug.
48799 2006-06-13 Antti Koivisto <koivisto@iki.fi>
48803 http://bugs.webkit.org/show_bug.cgi?id=9314
48804 Relative positioned block size doesnt update root layer size
48806 - take relative positioning into account in leftmost/rightmost/lowestPosition()
48807 - ignore zero width/height boxes in leftmost/rightmost/lowestPosition()
48808 - split relativePositionOffset() to x and y functions
48810 * rendering/RenderBox.cpp:
48811 (WebCore::RenderBox::absolutePosition):
48812 (WebCore::RenderBox::relativePositionOffsetX):
48813 (WebCore::RenderBox::relativePositionOffsetY):
48814 (WebCore::RenderBox::lowestPosition):
48815 (WebCore::RenderBox::rightmostPosition):
48816 (WebCore::RenderBox::leftmostPosition):
48817 * rendering/RenderBox.h:
48818 * rendering/RenderFlow.cpp:
48819 (WebCore::RenderFlow::lowestPosition):
48820 (WebCore::RenderFlow::rightmostPosition):
48821 (WebCore::RenderFlow::leftmostPosition):
48822 * rendering/RenderLayer.cpp:
48823 (WebCore::RenderLayer::updateLayerPosition):
48824 * rendering/RenderObject.cpp:
48825 (WebCore::RenderObject::offsetLeft):
48826 (WebCore::RenderObject::offsetTop):
48828 2006-06-13 Anders Carlsson <acarlsson@apple.com>
48830 Reviewed by Dave Hyatt.
48832 http://bugs.webkit.org/show_bug.cgi?id=9427
48833 xml-stylesheet processing instructions outside of the prolog should have no effect.
48835 * dom/ProcessingInstruction.cpp:
48836 (WebCore::ProcessingInstruction::checkStyleSheet):
48837 Remove todo comment.
48839 * dom/xml_tokenizer.cpp:
48840 (WebCore::XMLTokenizer::processingInstruction):
48841 Only check for style sheet if the root element hasn't yet been encountered.
48843 2006-06-13 Anders Carlsson <acarlsson@apple.com>
48847 http://bugs.webkit.org/show_bug.cgi?id=9406
48848 REGRESSION: fix for bug 9390 broke two layout tests
48850 * loader/PluginDocument.cpp:
48851 (WebCore::PluginTokenizer::writeRawData):
48852 Call finished() after setting up the document structure so we'll emit onload events.
48854 2006-06-12 Geoffrey Garen <ggaren@apple.com>
48856 build fix -- forgot to svn add this file
48858 * ForwardingHeaders/kjs/SavedBuiltins.h: Added.
48860 2006-06-12 Brady Eidson <beidson@apple.com>
48862 Reviewed by Maciej.
48864 Fixed a bug in append(char) and append(UChar) where our intended copy-on-write semantics was ignored!
48866 * platform/String.cpp:
48867 (WebCore::String::append):
48869 2006-06-12 Geoffrey Garen <ggaren@apple.com>
48871 Reviewed by TimO, Maciej.
48873 - WebCore part of merging InterpreterImp into Interpreter. No test
48874 because there's no behavior change.
48876 A substantive change here is that ScriptInterpreter::mark must now chain to
48877 Interpreter::mark, since Interpreter needs to mark the things that
48878 InterpreterImp used to mark.
48880 * WebCore.xcodeproj/project.pbxproj:
48881 * bindings/js/kjs_binding.cpp:
48882 * bindings/js/kjs_window.cpp:
48883 (KJS::Window::put):
48884 * bridge/mac/WebCoreFrameBridge.mm:
48885 * bridge/mac/WebCoreScriptDebugger.mm:
48886 (-[WebCoreScriptCallFrame evaluateWebScript:]):
48887 * kwq/KWQPageState.mm:
48889 2006-06-12 Brady Eidson <beidson@apple.com>
48891 Reviewed by Maciej.
48893 Changed String::ascii() to return a Vector<char> instead of const char*
48894 This allows us to use it "regularly" as the returned vector will destruct
48895 and not leak memory like the previous approach.
48896 We can now do a String.ascii().data() to get a char* buffer instead of
48897 String.deprecatedString().ascii(). It doesn't improve the style much but
48898 dumping the memory-leak issue is a plus.
48900 * icon/IconDatabase.cpp:
48901 (WebCore::IconDatabase::open):
48902 (WebCore::IconDatabase::clearDatabase):
48903 * icon/SQLDatabase.cpp:
48904 (SQLDatabase::open):
48905 * icon/SQLStatement.cpp:
48906 (WebCore::SQLStatement::prepare):
48907 (WebCore::SQLStatement::step):
48908 (WebCore::SQLStatement::returnTextResults):
48909 (WebCore::SQLStatement::returnTextResults16):
48910 (WebCore::SQLStatement::returnIntResults):
48911 (WebCore::SQLStatement::returnInt64Results):
48912 (WebCore::SQLStatement::returnDoubleResults):
48913 In addition to the changes to the string classes, changed my database code over to the new
48916 * platform/PlatformString.h:
48917 * platform/String.cpp:
48918 (WebCore::String::ascii):
48919 * platform/StringImpl.cpp:
48920 (WebCore::StringImpl::ascii):
48921 * platform/StringImpl.h:
48923 2006-06-12 Dave Hyatt <hyatt@apple.com>
48925 Add the notion of a selection foreground color to the engine for
48926 Win32. Rename existing selectionColor methods to be
48927 selectionBackgroundColor instead.
48929 Change the 60% alpha blend rule for transparent selection to
48930 instead be a range from 60-80%, with less transparency being
48931 used as needed to ensure the transformed color more closely
48932 approximates the original operating system color when blended
48933 with a white background.
48937 * platform/Color.cpp:
48939 (WebCore::Color::blendWithWhite):
48940 * platform/Color.h:
48941 * rendering/InlineTextBox.cpp:
48942 (WebCore::InlineTextBox::paint):
48943 (WebCore::InlineTextBox::paintSelection):
48944 * rendering/RenderBlock.cpp:
48945 (WebCore::RenderBlock::fillHorizontalSelectionGap):
48946 (WebCore::RenderBlock::fillVerticalSelectionGap):
48947 (WebCore::RenderBlock::fillLeftSelectionGap):
48948 (WebCore::RenderBlock::fillRightSelectionGap):
48949 * rendering/RenderHTMLCanvas.cpp:
48950 (WebCore::RenderHTMLCanvas::paint):
48951 * rendering/RenderImage.cpp:
48952 (WebCore::RenderImage::paint):
48953 * rendering/RenderListMarker.cpp:
48954 (WebCore::RenderListMarker::paint):
48955 * rendering/RenderObject.cpp:
48956 (WebCore::RenderObject::selectionBackgroundColor):
48957 (WebCore::RenderObject::selectionForegroundColor):
48958 * rendering/RenderObject.h:
48959 * rendering/RenderTheme.cpp:
48960 (WebCore::RenderTheme::activeSelectionBackgroundColor):
48961 (WebCore::RenderTheme::inactiveSelectionBackgroundColor):
48962 (WebCore::RenderTheme::platformActiveSelectionBackgroundColor):
48963 (WebCore::RenderTheme::platformInactiveSelectionBackgroundColor):
48964 (WebCore::RenderTheme::platformActiveSelectionForegroundColor):
48965 (WebCore::RenderTheme::platformInactiveSelectionForegroundColor):
48966 * rendering/RenderTheme.h:
48967 * rendering/RenderThemeMac.h:
48968 * rendering/RenderThemeMac.mm:
48969 (WebCore::RenderThemeMac::platformActiveSelectionBackgroundColor):
48970 (WebCore::RenderThemeMac::platformInactiveSelectionBackgroundColor):
48971 * rendering/RenderThemeWin.cpp:
48972 (WebCore::RenderThemeWin::platformActiveSelectionBackgroundColor):
48973 (WebCore::RenderThemeWin::platformInactiveSelectionBackgroundColor):
48974 (WebCore::RenderThemeWin::platformActiveSelectionForegroundColor):
48975 (WebCore::RenderThemeWin::platformInactiveSelectionForegroundColor):
48976 * rendering/RenderThemeWin.h:
48977 * rendering/RenderWidget.cpp:
48978 (WebCore::RenderWidget::paint):
48980 2006-06-12 John Sullivan <sullivan@apple.com>
48982 Reviewed by Darin Adler.
48985 (WebCore::Frame::markAllMatchesForText):
48986 Do a "fake" paint here so that the rectangles for the text matches will have been
48987 computed by the time this method returns.
48989 2006-06-12 Brady Eidson <beidson@apple.com>
48991 Reviewed by Levi and Tim Omernick.
48993 -Added a skeleton sqlite3 icon database file to IconDatabase
48994 -Added functionality to validate and recreate this icon.db file
48995 -Fixed some buggys in SQLDatabase.cpp
48997 * icon/IconDatabase.cpp:
48998 (WebCore::IconDatabase::open):
48999 (WebCore::IconDatabase::isValidDatabase):
49000 (WebCore::IconDatabase::clearDatabase):
49001 (WebCore::IconDatabase::recreateDatabase):
49002 * icon/IconDatabase.h:
49004 * icon/SQLStatement.cpp:
49005 (WebCore::SQLStatement::columnCount):
49006 (WebCore::SQLStatement::getColumnName):
49007 (WebCore::SQLStatement::getColumnName16):
49008 (WebCore::SQLStatement::getColumnText):
49009 (WebCore::SQLStatement::getColumnText16):
49010 (WebCore::SQLStatement::getColumnDouble):
49011 (WebCore::SQLStatement::getColumnInt):
49012 (WebCore::SQLStatement::getColumnInt64):
49013 (WebCore::SQLStatement::getColumnBlob):
49014 -Added checks to make sure we had a valid working sqlite3_statement as the sqlite3_*
49015 function calls weren't as error-tolerant as documentation advertised
49016 (maybe differences between the 3.3 docs I looked at and the 3.1.3 version installed on OSX)
49018 2006-06-12 Brady Eidson <beidson@apple.com>
49022 -Added SQLite helper wrappers to ease use of SQLite in the IconDatabase.
49023 -Changed the base IconDatabase over to this new framework.
49025 * WebCore.xcodeproj/project.pbxproj:
49026 * bridge/mac/WebCoreIconDatabaseBridge.mm:
49027 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
49028 -By popular request, removed an annoying log message I'd accidentally left in
49030 * icon/IconDatabase.cpp:
49031 (WebCore::IconDatabase::IconDatabase):
49032 (WebCore::IconDatabase::open):
49033 (WebCore::IconDatabase::close):
49034 (WebCore::IconDatabase::~IconDatabase):
49035 * icon/IconDatabase.h:
49036 (WebCore::IconDatabase::isOpen):
49037 -Changed over IconDatabase from direct sqlite3_* calls to the new SQLDatabase calls
49039 * icon/SQLDatabase.cpp: Added.
49040 (SQLDatabase::SQLDatabase):
49041 (SQLDatabase::open):
49042 (SQLDatabase::close):
49043 (SQLDatabase::executeCommand):
49044 (SQLDatabase::tableExists):
49045 * icon/SQLDatabase.h: Added.
49046 (WebCore::SQLDatabase::isOpen):
49047 (WebCore::SQLDatabase::getPath):
49048 (WebCore::SQLDatabase::lastError):
49049 (WebCore::SQLDatabase::lastErrorMsg):
49050 (WebCore::SQLStatement::isPrepared):
49051 (WebCore::SQLStatement::lastError):
49052 (WebCore::SQLStatement::lastErrorMsg):
49053 * icon/SQLStatement.cpp: Added.
49054 (WebCore::SQLStatement::SQLStatement):
49055 (WebCore::SQLStatement::~SQLStatement):
49056 (WebCore::SQLStatement::prepare):
49057 (WebCore::SQLStatement::step):
49058 (WebCore::SQLStatement::finalize):
49059 (WebCore::SQLStatement::reset):
49060 (WebCore::SQLStatement::executeCommand):
49061 (WebCore::SQLStatement::bindBlob):
49062 (WebCore::SQLStatement::bindText):
49063 (WebCore::SQLStatement::columnCount):
49064 (WebCore::SQLStatement::getColumnName):
49065 (WebCore::SQLStatement::getColumnName16):
49066 (WebCore::SQLStatement::getColumnText):
49067 (WebCore::SQLStatement::getColumnText16):
49068 (WebCore::SQLStatement::getColumnDouble):
49069 (WebCore::SQLStatement::getColumnInt):
49070 (WebCore::SQLStatement::getColumnInt64):
49071 (WebCore::SQLStatement::getColumnBlob):
49072 (WebCore::SQLStatement::returnTextResults):
49073 (WebCore::SQLStatement::returnTextResults16):
49074 (WebCore::SQLStatement::returnIntResults):
49075 (WebCore::SQLStatement::returnInt64Results):
49076 (WebCore::SQLStatement::returnDoubleResults):
49077 -Initial checking of SQLDatabase framework
49079 * platform/PlatformString.h:
49080 * platform/String.cpp:
49081 (WebCore::String::String):
49082 -Added an explicit UChar* constructor to our string class as much of sqlite3's UTF16 handling is based on
49083 null-terminated UTF16 which we didn't yet support.
49085 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
49087 Reviewed by Maciej.
49089 http://bugs.webkit.org/show_bug.cgi?id=9408
49090 Clean build fails with "make: *** No rule to make target `SVGElementFactory.cpp', needed by `all'. Stop"
49092 * DerivedSources.make: Fix clean builds.
49094 2006-06-11 Darin Adler <darin@apple.com>
49096 - another try at fixing Windows
49098 * loader/CachedResource.h:
49099 * platform/cairo/GraphicsContextCairo.cpp:
49100 * platform/image-decoders/ImageDecoder.h:
49101 (WebCore::ImageDecoder::setData):
49102 * platform/image-decoders/gif/GIFImageDecoder.cpp:
49103 (WebCore::GIFImageDecoderPrivate::decode):
49104 (WebCore::GIFImageDecoder::setData):
49105 * platform/image-decoders/gif/GIFImageDecoder.h:
49106 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
49107 (WebCore::JPEGImageReader::decode):
49108 (WebCore::JPEGImageDecoder::setData):
49109 * platform/image-decoders/jpeg/JPEGImageDecoder.h:
49110 * platform/image-decoders/png/PNGImageDecoder.cpp:
49111 (WebCore::PNGImageReader::decode):
49112 (WebCore::PNGImageDecoder::setData):
49113 * platform/image-decoders/png/PNGImageDecoder.h:
49114 s/DeprecatedByteArray/Vector<char>/
49116 2006-06-11 Darin Adler <darin@apple.com>
49118 - try to fix Windows build
49120 * platform/cairo/ImageCairo.cpp: (WebCore::Image::loadResource):
49121 Use Vector<char> instead of DeprecatedByteArray.
49123 * platform/win/TemporaryLinkStubs.cpp: (KWQServeSynchronousRequest):
49124 Don't try to return 0 from a function that returns a Vector<char>.
49126 2006-06-11 Sam Weinig <sam.weinig@gmail.com>
49128 Reviewed by Hyatt, tweaked quite a bit and landed by Darin.
49130 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8039
49131 Remove use of DeprecatedArray in favor of new Vector class
49133 This removes most of the uses of DeprecatedArray and
49134 DeprecatedByteArray, with the exception of DeprecatedCString.
49136 No test cases added because there is no change in
49139 * loader/CachedCSSStyleSheet.cpp:
49140 (WebCore::CachedCSSStyleSheet::data):
49141 * loader/CachedCSSStyleSheet.h:
49142 * loader/CachedImage.cpp:
49143 (WebCore::CachedImage::bufferData):
49144 (WebCore::CachedImage::data):
49145 (WebCore::CachedImage::checkNotify):
49146 (WebCore::CachedImage::shouldStopAnimation):
49147 * loader/CachedImage.h:
49148 * loader/CachedObject.cpp:
49149 (WebCore::CachedObject::bufferData):
49150 (WebCore::CachedObject::setExpireDate):
49151 * loader/CachedObject.h:
49152 (WebCore::CachedObject::setCharset):
49153 * loader/CachedScript.cpp:
49154 (WebCore::CachedScript::data):
49155 * loader/CachedScript.h:
49156 * loader/CachedXBLDocument.cpp:
49157 (WebCore::CachedXBLDocument::data):
49158 (WebCore::CachedXBLDocument::checkNotify):
49159 * loader/CachedXBLDocument.h:
49160 * loader/CachedXSLStyleSheet.cpp:
49161 (WebCore::CachedXSLStyleSheet::data):
49162 * loader/CachedXSLStyleSheet.h:
49163 * loader/Request.cpp:
49164 (WebCore::Request::Request):
49165 (WebCore::Request::~Request):
49166 * loader/Request.h:
49167 (WebCore::Request::buffer):
49168 (WebCore::Request::cachedObject):
49169 (WebCore::Request::docLoader):
49170 (WebCore::Request::isIncremental):
49171 (WebCore::Request::setIsIncremental):
49172 (WebCore::Request::isMultipart):
49173 (WebCore::Request::setIsMultipart):
49174 * loader/loader.cpp:
49175 (WebCore::crossDomain):
49176 (WebCore::Loader::Loader):
49177 (WebCore::Loader::load):
49178 (WebCore::Loader::servePendingRequests):
49179 (WebCore::Loader::receivedAllData):
49180 (WebCore::Loader::receivedResponse):
49181 (WebCore::Loader::receivedData):
49182 (WebCore::Loader::numRequests):
49183 (WebCore::Loader::cancelRequests):
49184 (WebCore::Loader::removeBackgroundDecodingRequest):
49185 (WebCore::Loader::jobForRequest):
49186 * platform/Image.cpp:
49187 (WebCore::Image::setData):
49188 * platform/Image.h:
49189 (WebCore::Image::dataBuffer):
49191 * css/cssstyleselector.cpp:
49192 (WebCore::CSSStyleSelector::init):
49193 (WebCore::CSSStyleSelector::matchRules):
49194 (WebCore::CSSStyleSelector::matchRulesForList):
49195 (WebCore::CSSStyleSelector::sortMatchedRules):
49196 (WebCore::CSSStyleSelector::initForStyleResolve):
49197 (WebCore::CSSStyleSelector::createStyleForElement):
49198 (WebCore::CSSStyleSelector::createPseudoStyleForElement):
49199 * css/cssstyleselector.h:
49200 (WebCore::CSSStyleSelector::addMatchedRule):
49201 (WebCore::CSSStyleSelector::addMatchedDeclaration):
49202 * dom/xml_tokenizer.cpp:
49203 (WebCore::OffsetBuffer::OffsetBuffer):
49204 (WebCore::openFunc):
49205 * html/HTMLOptionElement.cpp:
49206 (WebCore::HTMLOptionElement::index):
49207 * html/HTMLSelectElement.cpp:
49208 (WebCore::HTMLSelectElement::selectedIndex):
49209 (WebCore::HTMLSelectElement::setSelectedIndex):
49210 (WebCore::HTMLSelectElement::length):
49211 (WebCore::HTMLSelectElement::remove):
49212 (WebCore::HTMLSelectElement::value):
49213 (WebCore::HTMLSelectElement::setValue):
49214 (WebCore::HTMLSelectElement::state):
49215 (WebCore::HTMLSelectElement::restoreState):
49216 (WebCore::HTMLSelectElement::appendFormData):
49217 (WebCore::HTMLSelectElement::optionToListIndex):
49218 (WebCore::HTMLSelectElement::listToOptionIndex):
49219 (WebCore::HTMLSelectElement::recalcListItems):
49220 (WebCore::HTMLSelectElement::reset):
49221 (WebCore::HTMLSelectElement::notifyOptionSelected):
49222 * html/HTMLSelectElement.h:
49223 (WebCore::HTMLSelectElement::listItems):
49225 * kwq/KWQLoader.mm:
49226 (KWQServeSynchronousRequest):
49227 * kwq/KWQTextStream.cpp:
49228 (QTextStream::operator<<):
49229 * kwq/KWQTextStream.h:
49230 * loader/FormData.cpp:
49231 (WebCore::FormData::flatten):
49232 (WebCore::FormData::flattenToString):
49233 * loader/FormData.h:
49234 (WebCore::FormDataElement::FormDataElement):
49235 * platform/DeprecatedString.cpp:
49236 * platform/DeprecatedString.h:
49237 * platform/IntPointArray.cpp: Removed.
49238 * platform/IntPointArray.h: Removed.
49239 * platform/TextEncoding.cpp:
49240 (WebCore::TextEncoding::toUnicode):
49241 * platform/TextEncoding.h:
49242 * platform/cairo/pixman/src/pixregion.c:
49243 * platform/cg/PathCG.cpp:
49244 (WebCore::Path::Path):
49245 * rendering/RenderObject.cpp:
49246 (WebCore::RenderObject::drawBorder):
49247 * rendering/RenderTable.h:
49248 (WebCore::RenderTable::colToEffCol):
49249 (WebCore::RenderTable::effColToCol):
49250 * rendering/RenderTableSection.cpp:
49251 (WebCore::RenderTableSection::ensureRows):
49252 (WebCore::RenderTableSection::addCell):
49253 (WebCore::RenderTableSection::setCellWidths):
49254 * rendering/RenderTableSection.h:
49255 * rendering/bidi.cpp:
49256 (WebCore::addMidpoint):
49257 (WebCore::RenderBlock::layoutInlineChildren):
49258 * rendering/render_form.cpp:
49259 (WebCore::RenderSelect::updateFromElement):
49260 (WebCore::RenderSelect::layout):
49261 (WebCore::RenderSelect::valueChanged):
49262 (WebCore::RenderSelect::selectionChanged):
49263 (WebCore::RenderSelect::updateSelection):
49264 * rendering/table_layout.cpp:
49265 (WebCore::FixedTableLayout::layout):
49266 * rendering/table_layout.h:
49267 * xml/XSLTProcessor.cpp:
49268 (WebCore::docLoaderFunc):
49269 * xml/xmlhttprequest.cpp:
49270 (WebCore::XMLHttpRequest::send):
49271 (WebCore::XMLHttpRequest::processSyncLoadResults):
49272 * xml/xmlhttprequest.h:
49274 2006-06-11 David Kilzer <ddkilzer@kilzer.net>
49278 http://bugs.webkit.org/show_bug.cgi?id=9394
49281 * DerivedSources.make: Removed tabs. Create empty SVGElementFactory.cpp on no-svg build.
49282 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp: Added #if SVG_SUPPORT/#endif.
49283 * ksvg2/bindings/js/JSSVGElementWrapperFactory.h: Ditto.
49284 * ksvg2/bindings/idl/svg/SVGAElement.idl: Add "Conditional=SVG" to all interfaces.
49285 * ksvg2/bindings/idl/svg/SVGAnimateColorElement.idl: Ditto.
49286 * ksvg2/bindings/idl/svg/SVGAnimateElement.idl: Ditto.
49287 * ksvg2/bindings/idl/svg/SVGAnimateTransformElement.idl: Ditto.
49288 * ksvg2/bindings/idl/svg/SVGAnimatedAngle.idl: Ditto.
49289 * ksvg2/bindings/idl/svg/SVGAnimatedBoolean.idl: Ditto.
49290 * ksvg2/bindings/idl/svg/SVGAnimatedEnumeration.idl: Ditto.
49291 * ksvg2/bindings/idl/svg/SVGAnimatedInteger.idl: Ditto.
49292 * ksvg2/bindings/idl/svg/SVGAnimatedLengthList.idl: Ditto.
49293 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Ditto.
49294 * ksvg2/bindings/idl/svg/SVGAnimatedNumberList.idl: Ditto.
49295 * ksvg2/bindings/idl/svg/SVGAnimatedPathData.idl: Ditto.
49296 * ksvg2/bindings/idl/svg/SVGAnimatedPoints.idl: Ditto.
49297 * ksvg2/bindings/idl/svg/SVGAnimatedPreserveAspectRatio.idl: Ditto.
49298 * ksvg2/bindings/idl/svg/SVGAnimatedRect.idl: Ditto.
49299 * ksvg2/bindings/idl/svg/SVGAnimatedString.idl: Ditto.
49300 * ksvg2/bindings/idl/svg/SVGAnimatedTransformList.idl: Ditto.
49301 * ksvg2/bindings/idl/svg/SVGAnimationElement.idl: Ditto.
49302 * ksvg2/bindings/idl/svg/SVGCircleElement.idl: Ditto.
49303 * ksvg2/bindings/idl/svg/SVGClipPathElement.idl: Ditto.
49304 * ksvg2/bindings/idl/svg/SVGComponentTransferFunctionElement.idl: Ditto.
49305 * ksvg2/bindings/idl/svg/SVGCursorElement.idl: Ditto.
49306 * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Ditto.
49307 * ksvg2/bindings/idl/svg/SVGDefsElement.idl: Ditto.
49308 * ksvg2/bindings/idl/svg/SVGDescElement.idl: Ditto.
49309 * ksvg2/bindings/idl/svg/SVGElementInstance.idl: Ditto.
49310 * ksvg2/bindings/idl/svg/SVGElementInstanceList.idl: Ditto.
49311 * ksvg2/bindings/idl/svg/SVGEllipseElement.idl: Ditto.
49312 * ksvg2/bindings/idl/svg/SVGEvent.idl: Ditto.
49313 * ksvg2/bindings/idl/svg/SVGException.idl: Ditto.
49314 * ksvg2/bindings/idl/svg/SVGExternalResourcesRequired.idl: Ditto.
49315 * ksvg2/bindings/idl/svg/SVGFEBlendElement.idl: Ditto.
49316 * ksvg2/bindings/idl/svg/SVGFEColorMatrixElement.idl: Ditto.
49317 * ksvg2/bindings/idl/svg/SVGFEComponentTransferElement.idl: Ditto.
49318 * ksvg2/bindings/idl/svg/SVGFECompositeElement.idl: Ditto.
49319 * ksvg2/bindings/idl/svg/SVGFEFloodElement.idl: Ditto.
49320 * ksvg2/bindings/idl/svg/SVGFEFuncAElement.idl: Ditto.
49321 * ksvg2/bindings/idl/svg/SVGFEFuncBElement.idl: Ditto.
49322 * ksvg2/bindings/idl/svg/SVGFEFuncGElement.idl: Ditto.
49323 * ksvg2/bindings/idl/svg/SVGFEFuncRElement.idl: Ditto.
49324 * ksvg2/bindings/idl/svg/SVGFEGaussianBlurElement.idl: Ditto.
49325 * ksvg2/bindings/idl/svg/SVGFEImageElement.idl: Ditto.
49326 * ksvg2/bindings/idl/svg/SVGFEMergeElement.idl: Ditto.
49327 * ksvg2/bindings/idl/svg/SVGFEMergeNodeElement.idl: Ditto.
49328 * ksvg2/bindings/idl/svg/SVGFEOffsetElement.idl: Ditto.
49329 * ksvg2/bindings/idl/svg/SVGFETileElement.idl: Ditto.
49330 * ksvg2/bindings/idl/svg/SVGFETurbulenceElement.idl: Ditto.
49331 * ksvg2/bindings/idl/svg/SVGFilterElement.idl: Ditto.
49332 * ksvg2/bindings/idl/svg/SVGFilterPrimitiveStandardAttributes.idl: Ditto.
49333 * ksvg2/bindings/idl/svg/SVGFitToViewBox.idl: Ditto.
49334 * ksvg2/bindings/idl/svg/SVGGElement.idl: Ditto.
49335 * ksvg2/bindings/idl/svg/SVGGradientElement.idl: Ditto.
49336 * ksvg2/bindings/idl/svg/SVGICCColor.idl: Ditto.
49337 * ksvg2/bindings/idl/svg/SVGImageElement.idl: Ditto.
49338 * ksvg2/bindings/idl/svg/SVGLangSpace.idl: Ditto.
49339 * ksvg2/bindings/idl/svg/SVGLengthList.idl: Ditto.
49340 * ksvg2/bindings/idl/svg/SVGLineElement.idl: Ditto.
49341 * ksvg2/bindings/idl/svg/SVGLinearGradientElement.idl: Ditto.
49342 * ksvg2/bindings/idl/svg/SVGLocatable.idl: Ditto.
49343 * ksvg2/bindings/idl/svg/SVGMarkerElement.idl: Ditto.
49344 * ksvg2/bindings/idl/svg/SVGNumberList.idl: Ditto.
49345 * ksvg2/bindings/idl/svg/SVGPaint.idl: Ditto.
49346 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Ditto.
49347 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Ditto.
49348 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Ditto.
49349 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Ditto.
49350 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Ditto.
49351 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Ditto.
49352 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Ditto.
49353 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Ditto.
49354 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Ditto.
49355 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Ditto.
49356 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Ditto.
49357 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Ditto.
49358 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Ditto.
49359 * ksvg2/bindings/idl/svg/SVGPatternElement.idl: Ditto.
49360 * ksvg2/bindings/idl/svg/SVGPointList.idl: Ditto.
49361 * ksvg2/bindings/idl/svg/SVGPolygonElement.idl: Ditto.
49362 * ksvg2/bindings/idl/svg/SVGPolylineElement.idl: Ditto.
49363 * ksvg2/bindings/idl/svg/SVGPreserveAspectRatio.idl: Ditto.
49364 * ksvg2/bindings/idl/svg/SVGRadialGradientElement.idl: Ditto.
49365 * ksvg2/bindings/idl/svg/SVGRectElement.idl: Ditto.
49366 * ksvg2/bindings/idl/svg/SVGRenderingIntent.idl: Ditto.
49367 * ksvg2/bindings/idl/svg/SVGScriptElement.idl: Ditto.
49368 * ksvg2/bindings/idl/svg/SVGSetElement.idl: Ditto.
49369 * ksvg2/bindings/idl/svg/SVGStopElement.idl: Ditto.
49370 * ksvg2/bindings/idl/svg/SVGStringList.idl: Ditto.
49371 * ksvg2/bindings/idl/svg/SVGStylable.idl: Ditto.
49372 * ksvg2/bindings/idl/svg/SVGStyleElement.idl: Ditto.
49373 * ksvg2/bindings/idl/svg/SVGSwitchElement.idl: Ditto.
49374 * ksvg2/bindings/idl/svg/SVGSymbolElement.idl: Ditto.
49375 * ksvg2/bindings/idl/svg/SVGTSpanElement.idl: Ditto.
49376 * ksvg2/bindings/idl/svg/SVGTests.idl: Ditto.
49377 * ksvg2/bindings/idl/svg/SVGTextContentElement.idl: Ditto.
49378 * ksvg2/bindings/idl/svg/SVGTextElement.idl: Ditto.
49379 * ksvg2/bindings/idl/svg/SVGTextPositioningElement.idl: Ditto.
49380 * ksvg2/bindings/idl/svg/SVGTitleElement.idl: Ditto.
49381 * ksvg2/bindings/idl/svg/SVGTransformList.idl: Ditto.
49382 * ksvg2/bindings/idl/svg/SVGTransformable.idl: Ditto.
49383 * ksvg2/bindings/idl/svg/SVGURIReference.idl: Ditto.
49384 * ksvg2/bindings/idl/svg/SVGUnitTypes.idl: Ditto.
49385 * ksvg2/bindings/idl/svg/SVGUseElement.idl: Ditto.
49386 * ksvg2/bindings/idl/svg/SVGViewElement.idl: Ditto.
49387 * ksvg2/bindings/idl/svg/SVGZoomAndPan.idl: Ditto.
49388 * ksvg2/bindings/idl/svg/SVGZoomEvent.idl: Ditto.
49389 * ksvg2/svg/SVGAngle.idl: Ditto.
49390 * ksvg2/svg/SVGAnimatedLength.idl: Ditto.
49391 * ksvg2/svg/SVGColor.idl: Ditto.
49392 * ksvg2/svg/SVGDocument.idl: Ditto.
49393 * ksvg2/svg/SVGElement.idl: Ditto.
49394 * ksvg2/svg/SVGEvent.idl: Ditto.
49395 * ksvg2/svg/SVGLength.idl: Ditto.
49396 * ksvg2/svg/SVGMatrix.idl: Ditto.
49397 * ksvg2/svg/SVGNumber.idl: Ditto.
49398 * ksvg2/svg/SVGPoint.idl: Ditto.
49399 * ksvg2/svg/SVGRect.idl: Ditto.
49400 * ksvg2/svg/SVGSVGElement.idl: Ditto.
49401 * ksvg2/svg/SVGTransform.idl: Ditto.
49403 2006-06-11 Anders Carlsson <acarlsson@apple.com>
49407 http://bugs.webkit.org/show_bug.cgi?id=9390
49408 Move full-frame plugins to WebCore
49410 * WebCore.vcproj/WebCore/WebCore.vcproj:
49411 * WebCore.xcodeproj/project.pbxproj:
49414 * bridge/mac/FrameMac.h:
49415 * bridge/mac/FrameMac.mm:
49416 (WebCore::FrameMac::redirectDataToPlugin):
49419 * bridge/mac/WebCoreFrameBridge.h:
49420 * bridge/mac/WebCoreFrameBridge.mm:
49421 Add redirectDataToPlugin which is used to redirect incoming data
49424 * bridge/mac/WebCoreViewFactory.h:
49425 Add pluginSupportsMIMEType which returns whether any plugins support a given MIME type.
49427 * dom/DOMImplementation.cpp:
49428 * dom/DOMImplementation.h:
49429 Get rid of createTextDocument and just create a text document explicitly when needed.
49432 (WebCore::Document::isPluginDocument):
49433 * loader/PluginDocument.cpp: Added.
49434 (WebCore::PluginTokenizer::PluginTokenizer):
49435 (WebCore::PluginTokenizer::wantsRawData):
49436 (WebCore::PluginTokenizer::write):
49437 (WebCore::PluginTokenizer::createDocumentStructure):
49438 (WebCore::PluginTokenizer::writeRawData):
49439 (WebCore::PluginTokenizer::stopParsing):
49440 (WebCore::PluginTokenizer::finish):
49441 (WebCore::PluginTokenizer::isWaitingForScripts):
49442 (WebCore::PluginDocument::PluginDocument):
49443 (WebCore::PluginDocument::createTokenizer):
49444 * loader/PluginDocument.h: Added.
49445 (WebCore::PluginDocument::isPluginDocument):
49446 Add PluginDocument.
49449 (WebCore::Frame::begin):
49450 Possibly create a plugin document.
49453 (WebCore::Frame::redirectDataToPlugin):
49456 * platform/PlugInInfoStore.h:
49457 * platform/mac/PlugInInfoStoreMac.mm:
49458 (WebCore::PlugInInfoStore::supportsMIMEType):
49459 Ask WebCoreViewFactory if the MIME type is supported.
49461 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
49465 - fix http://bugs.webkit.org/show_bug.cgi?id=9334
49466 Incomplete repaint when changing block from non-positioned to positioned
49468 Test: fast/repaint/static-to-positioned.html
49470 * rendering/RenderObject.cpp:
49471 (WebCore::RenderObject::setStyle): If changing from static to positioned, repaint
49474 2006-06-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
49478 - fix http://bugs.webkit.org/show_bug.cgi?id=9193
49479 REGRESSION: setting an opacity on an element with an outline causes the outline to disappear completely
49481 Test: fast/layers/opacity-outline.html
49483 - fix repainting of layer children's outlines that extend beyond the layer
49485 Test: fast/repaint/layer-child-outline.html
49487 * rendering/RenderLayer.cpp:
49488 (WebCore::RenderLayer::intersectsDamageRect): Account for outlines.
49489 (WebCore::RenderLayer::absoluteBoundingBox): Ditto.
49490 * rendering/RenderObject.cpp:
49491 (WebCore::RenderObject::maximalOutlineSize): Changed to return the view's maximal
49492 outline size rather than 0 for PaintPhaseChildOutlines.
49494 2006-06-10 Steve Falkenburg <sfalken@apple.com>
49498 * platform/cairo/GraphicsContextCairo.cpp:
49499 * platform/win/TemporaryLinkStubs.cpp:
49500 (GraphicsContext::scale):
49502 2006-06-10 Geoffrey Garen <ggaren@apple.com>
49504 - http://bugs.webkit.org/show_bug.cgi?id=8515
49505 Linux porting compile bug
49507 Fix by Mike Emmel, Reviewed by Darin.
49509 * Projects/gdk/webcore-gdk.bkl:
49510 * WebCoreSources.bkl:
49511 * css/maketokenizer:
49512 * html/HTMLCanvasElement.cpp:
49513 * html/HTMLImageElement.h:
49514 * icon/IconDatabase.cpp:
49515 * make-generated-sources.sh:
49517 * page/FramePrivate.h:
49518 * platform/Cursor.h:
49519 * platform/FontData.h:
49520 (WebCore::FontData::getGlyphIndex):
49521 * platform/GlyphBuffer.h:
49522 (WebCore::GlyphBuffer::glyphAt):
49523 (WebCore::GlyphBuffer::advanceAt):
49524 (WebCore::GlyphBuffer::add):
49525 * platform/GraphicsContext.h:
49526 * platform/PlatformKeyboardEvent.h:
49527 * platform/PlatformMouseEvent.h:
49528 * platform/PlatformWheelEvent.h:
49529 * platform/ScrollView.h:
49530 * platform/TransferJob.h:
49531 (WebCore::TransferJob::getInternal):
49532 * platform/TransferJobInternal.h:
49533 (WebCore::TransferJobInternal::TransferJobInternal):
49534 * platform/Widget.h:
49535 * platform/cairo/GraphicsContextCairo.cpp:
49536 (WebCore::GraphicsContext::GraphicsContext):
49537 (WebCore::GraphicsContext::roundToDevicePixels):
49538 * webcore-base.bkl:
49539 * xpath/impl/XPathValue.cpp:
49541 2006-06-09 John Sullivan <sullivan@apple.com>
49543 Reviewed by Tim Omernick and Dave Hyatt.
49545 WebCore support for computing but not highlighting rects for text matches.
49548 added setRenderedRectForMarker() and renderedRectsForMarkers(), and redefined
49549 MarkerMap to be a hashtable of node -> (pair of vectors), one vector of markers
49550 and one vector of rects
49552 * dom/Document.cpp:
49553 (placeholderRectForMarker()):
49554 new function, returns a recognizable degenerate rect used until a real rect has been set
49555 (WebCore::Document::addMarker):
49556 Reworked for new MarkerMap data structure; now adds parallel placeholder rect
49558 (WebCore::Document::copyMarkers):
49559 Reworked for new MarkerMap data structure
49560 (WebCore::Document::removeMarkers):
49561 Reworked for new MarkerMap data structure; now removed corresponding rect along
49563 (WebCore::Document::markersForNode):
49564 Reworked for new MarkerMap data structure
49565 (WebCore::Document::renderedRectsForMarkers):
49566 New method, returns an array of all non-placeholder rects for the given marker type
49567 (WebCore::Document::repaintMarkers):
49568 Reworked for new MarkerMap data structure
49569 (WebCore::Document::setRenderedRectForMarker):
49570 New method, sets the rendered rect for a given marker
49571 (WebCore::Document::shiftMarkers):
49572 Reworked for new MarkerMap data structure; resets rendered rects to placeholders.
49574 * rendering/InlineTextBox.cpp:
49575 (WebCore::InlineTextBox::paint):
49576 removed markedTextMatchesAreHighlighted guard; we always want to call paintTextMatchMarker
49577 now, but sometimes we will end up only computing the rect, not actually highlighting it.
49578 (Maybe some names should be improved here?)
49579 (WebCore::InlineTextBox::paintTextMatchMarker):
49580 Reorganized to move all the code that actually draws into a block that's guarded by
49581 markedTextMatchesAreHighlighted. The rest of the code computes where the highlight will
49582 go, and now we always use that computation in order to call setRenderedRectForMarker.
49584 * bridge/mac/WebCoreFrameBridge.h:
49585 * bridge/mac/WebCoreFrameBridge.mm:
49586 (-[WebCoreFrameBridge rectsForTextMatches]):
49587 New method, returns an array of NSValues representing NSRects. Gets them
49588 from Document::renderedRectsForMarkers
49590 2006-06-10 Anders Carlsson <acarlsson@apple.com>
49594 * bindings/js/kjs_html.cpp:
49595 (KJS::JSHTMLElement::put):
49596 Call WebCore::JSHTMLElement::put so that autogenerated setters will work
49599 2006-06-09 Geoffrey Garen <ggaren@apple.com>
49601 - Build fix after last JSC check-in (oops!)
49603 * bridge/mac/WebCoreScriptDebugger.mm:
49604 (-[WebCoreScriptCallFrame scopeChain]):
49605 (-[WebCoreScriptCallFrame functionName]):
49606 (-[WebCoreScriptCallFrame evaluateWebScript:]):
49608 2006-06-09 David Hyatt <hyatt@apple.com>
49610 Rename m_isFocused on the frame to m_isActive, since it isn't really
49611 about focus but is instead about whether or not the top-level window is
49614 Pull code that was incorrectly factored into Mac-only code out of FrameMac
49615 and back up into Frame.
49617 Reviewed by andersca
49619 * bridge/mac/FrameMac.h:
49620 * bridge/mac/FrameMac.mm:
49622 (WebCore::Frame::setFocusNodeIfNeeded):
49623 (WebCore::Frame::isActive):
49624 (WebCore::Frame::setIsActive):
49625 * page/FramePrivate.h:
49626 (WebCore::FramePrivate::FramePrivate):
49628 2006-06-09 David Hyatt <hyatt@apple.com>
49630 Rework selection coloring. Rename displaysWithFocusAttributes
49631 to isActive. Move the white-blending code onto the Color API to make
49632 it more convenient to mutate colors for selection blending. Eliminate all
49633 the selection state from the GraphicsContext and move it to the RenderTheme.
49634 Implement both Win32 and Mac theme selection colors.
49636 Reviewed by sfalken
49638 * bridge/mac/FrameMac.h:
49639 * bridge/mac/FrameMac.mm:
49640 (WebCore::FrameMac::setIsActive):
49641 * bridge/mac/WebCoreFrameBridge.h:
49642 * bridge/mac/WebCoreFrameBridge.mm:
49643 (-[WebCoreFrameBridge drawRect:]):
49644 (-[WebCoreFrameBridge setIsActive:]):
49645 (-[WebCoreFrameBridge selectionColor]):
49646 * css/cssstyleselector.cpp:
49647 (WebCore::CSSStyleSelector::checkOneSelector):
49649 (WebCore::Frame::isActive):
49650 (WebCore::Frame::setIsActive):
49652 * platform/Color.cpp:
49654 (WebCore::Color::blendWithWhite):
49655 * platform/Color.h:
49656 (WebCore::Color::hasAlpha):
49657 * platform/GraphicsContext.cpp:
49658 (WebCore::GraphicsContextPrivate::GraphicsContextPrivate):
49659 * platform/GraphicsContext.h:
49660 * platform/mac/GraphicsContextMac.mm:
49661 * platform/win/TemporaryLinkStubs.cpp:
49662 (GraphicsContext::endTransparencyLayer):
49663 * rendering/InlineTextBox.cpp:
49664 (WebCore::InlineTextBox::paintSelection):
49665 * rendering/RenderBlock.cpp:
49666 (WebCore::RenderBlock::fillHorizontalSelectionGap):
49667 (WebCore::RenderBlock::fillVerticalSelectionGap):
49668 (WebCore::RenderBlock::fillLeftSelectionGap):
49669 (WebCore::RenderBlock::fillRightSelectionGap):
49670 * rendering/RenderHTMLCanvas.cpp:
49671 (WebCore::RenderHTMLCanvas::paint):
49672 * rendering/RenderImage.cpp:
49673 (WebCore::RenderImage::paint):
49674 * rendering/RenderListMarker.cpp:
49675 (WebCore::RenderListMarker::paint):
49676 * rendering/RenderListMarker.h:
49677 * rendering/RenderObject.cpp:
49678 (WebCore::RenderObject::selectionColor):
49679 * rendering/RenderObject.h:
49680 * rendering/RenderReplaced.cpp:
49681 * rendering/RenderReplaced.h:
49682 * rendering/RenderTheme.cpp:
49683 (WebCore::RenderTheme::activeSelectionColor):
49684 (WebCore::RenderTheme::inactiveSelectionColor):
49685 (WebCore::RenderTheme::platformActiveSelectionColor):
49686 (WebCore::RenderTheme::platformInactiveSelectionColor):
49687 * rendering/RenderTheme.h:
49688 * rendering/RenderThemeMac.h:
49689 * rendering/RenderThemeMac.mm:
49690 (WebCore::RenderThemeMac::platformActiveSelectionColor):
49691 (WebCore::RenderThemeMac::platformInactiveSelectionColor):
49692 * rendering/RenderThemeWin.cpp:
49693 (WebCore::RenderThemeWin::platformActiveSelectionColor):
49694 (WebCore::RenderThemeWin::platformInactiveSelectionColor):
49695 * rendering/RenderThemeWin.h:
49696 * rendering/RenderWidget.cpp:
49697 (WebCore::RenderWidget::paint):
49699 2006-06-09 Justin Garcia <justin.garcia@apple.com>
49703 <rdar://problem/4549980>
49704 REGRESSION: "Find Again" can get stuck when searching for string with a trailing space
49706 * bridge/mac/FrameMac.h: Moved findString to Frame.
49707 * bridge/mac/FrameMac.mm: Ditto.
49708 * bridge/mac/WebCoreFrameBridge.mm:
49709 (-[WebCoreFrameBridge searchFor:direction:caseSensitive:wrap:]):
49710 Convert the NSString to a String.
49711 * editing/JSEditor.cpp: Added execCommand(FindString, ...)
49712 * editing/Selection.cpp: Added a constructor for Ranges
49713 (WebCore::Selection::Selection):
49714 * editing/Selection.h:
49716 (WebCore::Frame::findString): Moved from FrameMac. Compare a selection created
49717 using the found range with the current selection in case the current selection is
49718 the found range minus some collapsed whitespace on the edges.
49721 2006-06-09 Steve Falkenburg <sfalken@apple.com>
49725 * WebCore.vcproj/WebCore/WebCore.vcproj:
49726 * css/MediaQueryEvaluator.cpp:
49727 * platform/win/TemporaryLinkStubs.cpp:
49728 (GraphicsContext::addRoundedRectClip):
49729 (GraphicsContext::addInnerRoundedRectClip):
49730 (WebCore::screenDepthPerComponent):
49731 (WebCore::screenIsMonochrome):
49733 2006-06-09 Kimmo Kinnunen <kimmo.t.kinnunen@nokia.com>
49735 Reviewed by Hyatt. Tweaked by Maciej. Tweaks reviewed by Beth.
49738 CSS3 Media Queries implementation.
49739 <http://bugs.webkit.org/show_bug.cgi?id=4127>
49741 * WebCore.xcodeproj/project.pbxproj:
49742 * bindings/js/kjs_css.cpp:
49743 (KJS::DOMMediaList::put):
49744 (KJS::KJS::DOMMediaListProtoFunc::callAsFunction):
49745 * bindings/objc/DOMCSS.mm:
49746 (-[DOMMediaList setMediaText:]):
49747 (-[DOMMediaList deleteMedium:]):
49748 (-[DOMMediaList appendMedium:]):
49749 * css/CSSGrammar.y:
49750 * css/MediaFeatureNames.cpp: Added.
49751 (WebCore::MediaFeatureNames::init):
49752 * css/MediaFeatureNames.h: Added.
49753 * css/MediaList.cpp:
49754 (WebCore::MediaList::MediaList):
49755 (WebCore::MediaList::~MediaList):
49756 (WebCore::parseMediaDescriptor):
49757 (WebCore::MediaList::deleteMedium):
49758 (WebCore::MediaList::mediaText):
49759 (WebCore::MediaList::setMediaText):
49760 (WebCore::MediaList::item):
49761 (WebCore::MediaList::appendMedium):
49762 (WebCore::MediaList::appendMediaQuery):
49764 (WebCore::MediaList::MediaList):
49765 (WebCore::MediaList::length):
49766 (WebCore::MediaList::mediaQueries):
49767 * css/MediaQuery.cpp: Added.
49768 (WebCore::MediaQuery::MediaQuery):
49769 (WebCore::MediaQuery::~MediaQuery):
49770 (WebCore::MediaQuery::operator==):
49771 (WebCore::MediaQuery::cssText):
49772 * css/MediaQuery.h: Added.
49773 (WebCore::MediaQuery::):
49774 (WebCore::MediaQuery::restrictor):
49775 (WebCore::MediaQuery::expressions):
49776 (WebCore::MediaQuery::mediaType):
49777 (WebCore::MediaQuery::append):
49778 * css/MediaQueryEvaluator.cpp: Added.
49780 (WebCore::MediaQueryEvaluator):
49781 (WebCore::MediaQueryEvaluator::~MediaQueryEvaluator):
49782 (WebCore::MediaQueryEvaluator::mediaTypeMatch):
49783 (WebCore::applyRestrictor):
49784 (WebCore::MediaQueryEvaluator::eval):
49785 (WebCore::parseAspectRatio):
49786 (WebCore::cmpvalue):
49787 (WebCore::numberValue):
49788 (WebCore::colorMediaFeatureEval):
49789 (WebCore::monochromeMediaFeatureEval):
49790 (WebCore::device_aspect_ratioMediaFeatureEval):
49791 (WebCore::gridMediaFeatureEval):
49792 (WebCore::device_heightMediaFeatureEval):
49793 (WebCore::device_widthMediaFeatureEval):
49794 (WebCore::heightMediaFeatureEval):
49795 (WebCore::widthMediaFeatureEval):
49796 (WebCore::min_colorMediaFeatureEval):
49797 (WebCore::max_colorMediaFeatureEval):
49798 (WebCore::min_monochromeMediaFeatureEval):
49799 (WebCore::max_monochromeMediaFeatureEval):
49800 (WebCore::min_device_aspect_ratioMediaFeatureEval):
49801 (WebCore::max_device_aspect_ratioMediaFeatureEval):
49802 (WebCore::min_heightMediaFeatureEval):
49803 (WebCore::max_heightMediaFeatureEval):
49804 (WebCore::min_widthMediaFeatureEval):
49805 (WebCore::max_widthMediaFeatureEval):
49806 (WebCore::min_device_heightMediaFeatureEval):
49807 (WebCore::max_device_heightMediaFeatureEval):
49808 (WebCore::min_device_widthMediaFeatureEval):
49809 (WebCore::max_device_widthMediaFeatureEval):
49810 (WebCore::createFunctionMap):
49811 * css/MediaQueryEvaluator.h: Added.
49812 * css/MediaQueryExp.cpp: Added.
49813 (WebCore::MediaQueryExp::MediaQueryExp):
49814 (WebCore::MediaQueryExp::~MediaQueryExp):
49815 * css/MediaQueryExp.h: Added.
49816 (WebCore::MediaQueryExp::mediaFeature):
49817 (WebCore::MediaQueryExp::value):
49818 (WebCore::MediaQueryExp::operator==):
49819 * css/StyleSheet.cpp:
49820 (WebCore::StyleSheet::setMedia):
49821 * css/cssparser.cpp:
49822 (WebCore::CSSParser::CSSParser):
49823 (WebCore::CSSParser::~CSSParser):
49824 (WebCore::CSSParser::setupParser):
49825 (WebCore::CSSParser::parseMediaQuery):
49826 (WebCore::CSSParser::createFloatingMediaQueryExp):
49827 (WebCore::CSSParser::sinkFloatingMediaQueryExp):
49828 (WebCore::CSSParser::createFloatingMediaQueryExpList):
49829 (WebCore::CSSParser::sinkFloatingMediaQueryExpList):
49830 (WebCore::CSSParser::createFloatingMediaQuery):
49831 (WebCore::CSSParser::sinkFloatingMediaQuery):
49833 * css/cssstyleselector.cpp:
49834 (WebCore::CSSStyleSelector::CSSStyleSelector):
49835 (WebCore::CSSStyleSelector::init):
49836 (WebCore::CSSStyleSelector::~CSSStyleSelector):
49837 (WebCore::CSSStyleSelector::loadDefaultStyle):
49838 (WebCore::CSSStyleSelector::matchUARules):
49839 (WebCore::CSSStyleSelector::styleForElement):
49840 (WebCore::CSSStyleSelector::pseudoStyleForElement):
49841 (WebCore::CSSStyleSelector::updateFont):
49842 (WebCore::CSSStyleSelector::cacheBorderAndBackground):
49843 (WebCore::CSSStyleSelector::styleRulesForElement):
49844 (WebCore::CSSRuleSet::addRulesFromSheet):
49845 * css/cssstyleselector.h:
49846 * css/maketokenizer:
49847 * css/tokenizer.flex:
49848 * dom/DOMImplementation.cpp:
49849 (WebCore::DOMImplementation::createCSSStyleSheet):
49850 * html/HTMLLinkElement.cpp:
49851 (WebCore::HTMLLinkElement::process):
49852 (WebCore::HTMLLinkElement::setStyleSheet):
49853 * html/HTMLStyleElement.cpp:
49854 (WebCore::HTMLStyleElement::childrenChanged):
49855 * ksvg2/svg/SVGDOMImplementation.cpp:
49856 (SVGDOMImplementation::createCSSStyleSheet):
49857 * ksvg2/svg/SVGStyleElement.cpp:
49858 (WebCore::SVGStyleElement::childrenChanged):
49860 (WebCore::Frame::Frame):
49861 * platform/Screen.h:
49862 * platform/mac/ScreenMac.mm:
49863 (WebCore::screenDepthPerComponent):
49864 (WebCore::screenIsMonochrome):
49866 2006-06-08 Levi Weintraub <lweintraub@apple.com>
49870 <http://bugs.webkit.org/show_bug.cgi?id=4468>
49871 Implement execCommand(Insert{Un}OrderedList)
49873 * WebCore.xcodeproj/project.pbxproj: Added InsertListCommand.{h,cpp} to the project.
49874 * dom/Position.cpp:
49875 (WebCore::hasRenderedNonAnonymousDescendantsWithHeight):
49876 Added. A block with height is only a candidate if this is false. This should fix the problems
49877 getting carets into empty blocks.
49878 (WebCore::Position::inRenderedContent):
49879 * editing/AppendNodeCommand.cpp:
49880 (WebCore::AppendNodeCommand::doApply):
49881 * editing/CompositeEditCommand.cpp:
49882 (WebCore::hasARenderedDescendant):
49883 (WebCore::CompositeEditCommand::prune): A node can have DOM descendants that are rendered, yet
49884 have a renderer with no descendants. Fixed the pruning rule to avoid removing a node like this.
49885 (WebCore::CompositeEditCommand::mergeIdenticalElements): Put the two elements next to
49886 each other if they aren't already, as a convenience.
49887 (WebCore::CompositeEditCommand::moveParagraph): Added code to preserve the current selection.
49888 (WebCore::CompositeEditCommand::moveParagraphs): Ditto.
49889 * editing/CompositeEditCommand.h:
49890 * editing/DeleteSelectionCommand.cpp:
49891 (WebCore::DeleteSelectionCommand::initializeStartEnd): Expansion for special elements should
49892 continue to happen until it is no longer possible.
49893 (WebCore::DeleteSelectionCommand::handleGeneralDelete): The code to adjust the start node
49894 wouldn't always avoid removing the start block.
49895 * editing/InsertListCommand.cpp: Added.
49896 (WebCore::InsertListCommand::fixOrphanedListChild): Puts a list item that isn't inside a list
49898 (WebCore::InsertListCommand::InsertListCommand):
49899 (WebCore::InsertListCommand::modifyRange):
49900 (WebCore::InsertListCommand::doApply):
49901 * editing/InsertListCommand.h: Added.
49902 (WebCore::InsertListCommand::):
49903 * editing/InsertNodeBeforeCommand.cpp:
49904 (WebCore::InsertNodeBeforeCommand::doApply):
49905 * editing/InsertParagraphSeparatorCommand.cpp:
49906 * editing/JSEditor.cpp:
49907 * editing/TextIterator.cpp:
49908 (WebCore::TextIterator::advance): Don't handle a node if the end of the range used to create the
49909 iterator ends at the start of that node.
49910 * editing/VisiblePosition.cpp:
49911 (WebCore::VisiblePosition::next):
49912 (WebCore::VisiblePosition::previous):
49913 * editing/VisiblePosition.h:
49914 Added a parameter to next/previous that can prevent them from leaving the current editable region.
49915 * editing/htmlediting.cpp:
49916 (WebCore::highestAncestor):
49917 (WebCore::enclosingList):
49918 (WebCore::enclosingListChild):
49919 (WebCore::outermostEnclosingList):
49920 (WebCore::createListItemElement):
49921 * editing/htmlediting.h:
49923 (WebCore::Frame::selectionListState): Added.
49926 2006-06-08 David Harrison <harrison@apple.com>
49928 Reviewed by Geoff and John.
49930 <rdar://problem/4558879> -[DOMCSSPrimitiveValue setStringValue:] throws an exception (12)
49932 Problem was the primitive value was getting reset to a generic state before the parameter
49933 check that relies on that state.
49935 Test: fast/dom/setPrimitiveValue.html
49937 * css/CSSPrimitiveValue.cpp:
49938 (WebCore::CSSPrimitiveValue::setFloatValue):
49939 (WebCore::CSSPrimitiveValue::setStringValue):
49940 Move parameter checks ahead of call to cleanup().
49942 2006-06-08 Alice Liu <alice.liu@apple.com>
49944 Reviewed by justin.
49946 - fixed <rdar://problem/4578115> support Range.isPointInRange
49947 - fixed <rdar://problem/4578123> support Range.comparePoint
49950 (WebCore::Range::isPointInRange):
49951 added implementation
49952 (WebCore::Range::comparePoint):
49953 added implementation
49959 2006-06-08 Darin Adler <darin@apple.com>
49961 Reviewed by justin.
49963 - fix http://bugs.webkit.org/show_bug.cgi?id=8616
49964 REGRESSION: TinyMCE: Crash on Undo
49966 * bridge/mac/WebCoreFrameBridge.mm:
49967 (-[WebCoreFrameBridge getInnerNonSharedNode:innerNode:URLElement:atPoint:allowShadowContent:]):
49968 Changed to call nodeInfoAtPoint directly.
49969 (-[WebCoreFrameBridge _visiblePositionForPoint:]): Changed to call nodeInfoAtPoint directly.
49970 Also added code to convert coordinates so it works for points that are in nodes in subframes.
49973 (WebCore::Frame::setMark): Added assertions to catch if we attempt to set selection
49974 endpoints in another document.
49975 (WebCore::Frame::setSelection): Ditto.
49977 2006-06-07 Justin Garcia <justin.garcia@apple.com>
49981 Fixed some comments and removed an unused variable.
49983 * editing/CompositeEditCommand.cpp:
49984 (WebCore::CompositeEditCommand::removeBlockPlaceholder):
49985 Don't remove a br if it isn't at the start of a block, since
49986 it isn't really a "block placeholder".
49987 * editing/DeleteSelectionCommand.cpp:
49988 (WebCore::DeleteSelectionCommand::initializePositionData):
49989 (WebCore::DeleteSelectionCommand::mergeParagraphs):
49990 (WebCore::DeleteSelectionCommand::doApply):
49991 * editing/InsertLineBreakCommand.cpp:
49992 (WebCore::InsertLineBreakCommand::doApply):
49993 * editing/ReplaceSelectionCommand.cpp:
49994 (WebCore::ReplaceSelectionCommand::doApply):
49995 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
49996 * editing/htmlediting.cpp:
49998 2006-06-07 David Hyatt <hyatt@apple.com>
50000 Add support for custom highlighting. This is all ifdefed to be Mac-only.
50004 * WebCore.xcodeproj/project.pbxproj:
50005 * bridge/mac/FrameMac.h:
50006 * bridge/mac/FrameMac.mm:
50007 (WebCore::FrameMac::paintCustomHighlight):
50008 * bridge/mac/WebCoreFrameBridge.h:
50009 * platform/mac/ClipboardMac.h:
50010 * rendering/InlineTextBox.cpp:
50011 (WebCore::InlineTextBox::paint):
50012 (WebCore::InlineTextBox::paintCustomHighlight):
50013 * rendering/InlineTextBox.h:
50015 2006-06-07 Adele Peterson <adele@apple.com>
50019 Added support for cross-platform resize property.
50021 * platform/PlatformMouseEvent.h: Removed isMouseButtonDown, since we
50022 already cache this info when we handle mouse down and mouse up.
50023 * platform/mac/MouseEventMac.mm: ditto.
50024 * platform/win/TemporaryLinkStubs.cpp: ditto.
50027 (WebCore::Frame::autoscrollTimerFired): Use d->m_bMousePressed instead of isMouseButtonDown.
50028 * page/FrameView.cpp:
50029 (WebCore::FrameView::handleMouseMoveEvent): Passes event to layer resize method.
50030 (WebCore::FrameView::mousePressed): Added.
50031 * page/FrameView.h: Added mousePressed.
50033 * rendering/RenderTheme.h: Removed paintResizeControl.
50034 Since its not dependent on the theme, the layer can just paint this.
50035 * rendering/RenderTheme.cpp: ditto.
50036 * rendering/RenderLayer.cpp:
50037 (WebCore::RenderLayer::RenderLayer): Initializes m_resizeCornerImage.
50038 (WebCore::RenderLayer::~RenderLayer): Deletes m_resizeCornerImage.
50039 (WebCore::RenderLayer::resize): Uses passed in event instead of creating a new one.
50040 (WebCore::RenderLayer::paintResizeControl): Now loads and paints the resize image.
50041 * rendering/RenderLayer.h: Added m_resizeCornerImage. Important to have one per-layer for when we allow
50042 more customization.
50044 * platform/cairo/ImageCairo.cpp:
50045 (WebCore::Image::loadResource): Loads image resources.
50047 2006-06-07 David Hyatt <hyatt@apple.com>
50049 Add support for a new property for custom highlighting. This patch just
50050 adds support for the parsing of the property. It doesn't do anything yet.
50054 * css/CSSComputedStyleDeclaration.cpp:
50056 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
50057 * css/CSSPropertyNames.in:
50058 * css/cssparser.cpp:
50059 (WebCore::CSSParser::parseValue):
50060 * css/cssstyleselector.cpp:
50061 (WebCore::CSSStyleSelector::applyProperty):
50062 * rendering/render_style.cpp:
50063 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData):
50064 (WebCore::StyleCSS3InheritedData::operator==):
50065 (WebCore::RenderStyle::diff):
50066 * rendering/render_style.h:
50067 (WebCore::RenderStyle::highlight):
50068 (WebCore::RenderStyle::setHighlight):
50069 (WebCore::RenderStyle::initialHighlight):
50071 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
50073 Fix suggested by Rob Buis. Reviewed by Darin.
50075 - fix http://bugs.webkit.org/show_bug.cgi?id=9341
50076 REGRESSION: Repro crash caused by style="font:bold"
50078 Test: fast/css/font-shorthand-weight-only.html
50080 * css/cssparser.cpp: (WebCore::CSSParser::parseFont): Revert part of the change
50081 made to fix bug 5564.
50083 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
50087 - fix http://bugs.webkit.org/show_bug.cgi?id=9122
50088 REGRESSION: Incorrect vertical position for text fields in a "display: table" block
50090 Test: fast/table/text-field-baseline.html
50092 * rendering/RenderTableCell.cpp:
50093 (WebCore::RenderTableCell::baselinePosition): Do not descend into replaced objects, just
50094 use their baseline.
50096 2006-06-07 Mitz Pettel <opendarwin.org@mitzpettel.com>
50098 Reviewed by Hyatt (concept) and Darin (some coding details).
50100 - fix http://bugs.webkit.org/show_bug.cgi?id=4334
50101 REGRESSION: Flickering when css-hover should change opacity on floating elements
50103 Pixel test: fast/block/float/nopaint-after-layer-destruction.html
50105 * rendering/RenderBlock.cpp:
50106 (WebCore::RenderBlock::setPaintsFloatingObject): Added. Changes the noPaint flag
50107 in the block's FloatingObject for the given float and calls setChildNeedsLayout.
50108 * rendering/RenderBlock.h:
50109 * rendering/RenderBox.cpp:
50110 (WebCore::blockThatPaintsFloat): Added this helper function.
50111 (WebCore::RenderBox::setStyle): Added. Calls to setPaintsFloatingObject when a float
50112 gains or loses its layer.
50114 2006-06-06 Mitz Pettel <opendarwin.org@mitzpettel.com>
50118 - fix http://bugs.webkit.org/show_bug.cgi?id=9121
50119 REGRESSION: [Incremental Repaint] DHTML movement test failures
50121 Test (repaint): fast/repaint/containing-block-position-change.html
50123 * manual-tests/containing-block-position-chage.html: Added.
50124 * rendering/RenderBlock.cpp:
50125 (WebCore::RenderBlock::layoutBlock): Unrelated change: fixed typo from
50126 the RenderCanvas to RenderView rename.
50127 (WebCore::RenderBlock::removePositionedObject): Added a return immediately
50128 after removing the object.
50129 (WebCore::RenderBlock::removePositionedObjects): Added.
50130 * rendering/RenderBlock.h:
50131 * rendering/RenderObject.cpp:
50132 (WebCore::RenderObject::setStyle): Added code to remove absolutely positioned
50133 descendants from the positioned objects list of their current containing block
50134 when they are going to have a new one as a result of this block's position
50136 * rendering/RenderObject.h:
50137 (WebCore::RenderObject::removePositionedObjects):
50139 2006-06-06 Justin Garcia <justin.garcia@apple.com>
50144 (WebCore::Node::firstDescendant): Added.
50146 * dom/Range.cpp: Added a constructor that takes in Positions.
50147 (WebCore::Range::Range):
50149 * editing/CompositeEditCommand.cpp:
50150 (WebCore::CompositeEditCommand::insertNodeAt):
50151 Let this function insert children into empty containers.
50152 Calls canHaveChildrenForEditing.
50153 (WebCore::CompositeEditCommand::appendNode): Assert that the parent canHaveChildrenForEditing.
50154 (WebCore::CompositeEditCommand::moveParagraph): Tell ReplaceSelectionCommand to select the
50155 replacement so that moveParagraph's callers have a valid destination after the move.
50156 * editing/CompositeEditCommand.h: Moved removeFullySelectedNode to DeleteSelectionCommand,
50157 made deleteTextFromNode virtual so that DeleteSelectionCommand can update it's endingPosition.
50158 * editing/DeleteSelectionCommand.cpp:
50159 (WebCore::DeleteSelectionCommand::DeleteSelectionCommand):
50160 Removed m_startNode, used a local variable.
50161 (WebCore::DeleteSelectionCommand::initializeStartEnd): Fixed special element expansion.
50162 (WebCore::DeleteSelectionCommand::initializePositionData): Compute the endingPosition up
50163 front and keep track of it as nodes and text are removed.
50164 (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete): Removed use of m_startNode.
50165 (WebCore::DeleteSelectionCommand::removeFullySelectedNode): Moved from CompositeEditCommand.
50166 Update m_endingPosition as we remove nodes.
50167 (WebCore::DeleteSelectionCommand::deleteTextFromNode):
50168 Update m_endingPosition as we delete text.
50169 (WebCore::DeleteSelectionCommand::handleGeneralDelete): Retain the start block. Cleaned up.
50170 (WebCore::DeleteSelectionCommand::mergeParagraphs): Recompute m_endingPosition since moveParagraph
50171 clobbers the old one.
50172 (WebCore::DeleteSelectionCommand::doApply): Fixed the logic for placeholder insertion after
50173 deletion. Make the placeholder decision before we do special element expansion.
50174 * editing/DeleteSelectionCommand.h:
50175 * editing/InsertLineBreakCommand.cpp:
50176 (WebCore::InsertLineBreakCommand::doApply): Fixed a bug where an extra br was inserted and cleaned
50178 * editing/InsertParagraphSeparatorCommand.cpp:
50179 (WebCore::InsertParagraphSeparatorCommand::doApply): Deletion of the current selection should do
50180 a merge (added a testcase).
50181 * editing/RebalanceWhitespaceCommand.cpp:
50182 (WebCore::RebalanceWhitespaceCommand::doUnapply): Remove/insert in a way that will trigger a layout.
50183 * editing/ReplaceSelectionCommand.cpp:
50184 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
50185 Merge even when the incoming fragment has interchange newlines (added a testcase).
50186 Merge when the selection being pasted into starts at the start of a block because not
50187 doing so would leave one or more hanging empty blocks.
50188 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement):
50189 Rebalance whitespace using rebalanceWhitespaceAt because rebalanceWhitespace requires
50190 a selection, and a selection can't be created until whitespace has been rebalanced.
50191 * editing/htmlediting.cpp:
50192 (WebCore::canHaveChildrenForEditing): Added.
50193 * editing/htmlediting.h:
50195 2006-06-06 Beth Dakin <bdakin@apple.com>
50197 Reviewed by Maciej.
50199 Fix for <rdar://problem/4570475> Dashboard regions do not scale for
50200 non-1.0 scale factors.
50202 No test cases added since this only affects non-1.0 resolution
50205 * platform/FloatRect.cpp:
50206 (WebCore::FloatRect::scale): Added new function that scales a
50207 rect's origin and size by a given factor.
50208 * platform/FloatRect.h:
50209 * platform/IntRect.cpp:
50210 (WebCore::IntRect::scale): Same as above.
50211 * platform/IntRect.h:
50212 * rendering/RenderObject.cpp:
50213 (WebCore::RenderObject::addDashboardRegions): After the bounds and
50214 clip rects on the Dashboard region have been calculated, get the
50215 user space scale factor, and if it is not 1.0, scale the rects.
50217 2006-06-06 John Sullivan <sullivan@apple.com>
50219 Reviewed by Darin Adler.
50221 - fixed <rdar://problem/4566087> REGRESSION (420+): Crash occurs while completing a find again query at
50222 http://www.apple.com/ (RenderObject::repaint(bool))
50224 This wasn't a new problem in the code, but the recent use of DocumentMarkers for find results brought
50228 Use a RefPtr<Node> instead of a Node* in MarkerMap, so the node will be retained
50230 * dom/Document.cpp:
50231 (WebCore::Document::removeMarkers):
50232 Add a .get() to compensate for using RefPtr. Also, only repaint if this node actually had a marker
50234 (WebCore::Document::repaintMarkers):
50235 Add a .get() to compensate for using RefPtr.
50237 2006-06-06 Anders Carlsson <acarlsson@apple.com>
50241 http://bugs.webkit.org/show_bug.cgi?id=9325
50242 clientWidth/clientHeight on document element in strict mode should return visible frame size
50245 (WebCore::Element::clientWidth):
50246 (WebCore::Element::clientHeight):
50247 If we're the document element, and in strict mode, return the visible size of the frame.
50249 2006-06-06 Anders Carlsson <acarlsson@apple.com>
50253 * bridge/mac/WebCoreFrameBridge.h:
50254 * bridge/mac/WebCoreFrameBridge.mm:
50255 (-[WebCoreFrameBridge containsPlugins]):
50257 (WebCore::Frame::containsPlugins):
50259 Add containsPlugins function which returns whether a frame contains plugins
50262 2006-06-05 Rob Buis <buis@kde.org>
50266 http://bugs.webkit.org/show_bug.cgi?id=5564
50267 'font' shorthand parsing should be more tolerant in quirks mode
50269 When not in strict mode accept font property specifications
50270 lacking a font family part, like WinIE does.
50272 * css/cssparser.cpp:
50273 (WebCore::CSSParser::parseFont):
50275 2006-06-05 Beth Dakin <bdakin@apple.com>
50279 Fix for <rdar://problem/4567520> Pixel cracks in weather widget at
50282 To prevent pixel cracks at non-integral scaling factors, before we
50283 call into CG to draw an image, we have to convert the rect to
50284 device space, round the origin and size to integers in device
50285 space, and convert back to user space.
50287 No test cases added since this only affects non-1.0 resolution
50290 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
50291 (WebCore::JSCanvasRenderingContext2D::drawImage): drawImage() now
50293 * html/CanvasPattern.cpp:
50294 (WebCore::patternCallback): Call roundToDevicePixels()
50295 * html/CanvasRenderingContext2D.cpp:
50296 (WebCore::CanvasRenderingContext2D::drawImage): drawImage() now
50297 takes FloatRects and call roundToDevicePixels()
50298 * html/CanvasRenderingContext2D.h: drawImage() now takes
50300 * html/HTMLCanvasElement.cpp:
50301 (WebCore::HTMLCanvasElement::paint): Call roundToDevicePixels()
50302 * kcanvas/device/quartz/QuartzSupport.mm:
50303 (WebCore::debugDumpCGImageToFile): Same as above.
50304 * platform/GraphicsContext.h:
50305 * platform/cg/GraphicsContextCG.cpp:
50306 (WebCore::GraphicsContext::roundToDevicePixels): Takes care of
50307 converting between coordinate spaces and rounding.
50308 (WebCore::GraphicsContext::drawLineForText):
50309 * platform/mac/ImageMac.mm: Call roundToDevicePixels()
50310 (WebCore::Image::draw): Same as above.
50311 (WebCore::drawPattern): Same as above.
50313 2006-06-05 Geoffrey Garen <ggaren@apple.com>
50317 - http://bugs.webkit.org/show_bug.cgi?id=9310
50318 Add missing DOM prototypes and other DOM cleanup
50320 - Added the built-in object prototype to DOM objects that were missing it
50321 so that primitive operations like == work on them.
50323 - Removed dead EventConstructor class (it's autogenerated now)
50325 - Changed HTML collections to describe themselves as "[object Collection]",
50328 - Made DOMCSSRule constructor private because JSCSSRule is the class
50331 * bindings/js/JSHTMLOptionElementConstructor.cpp:
50332 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
50333 * bindings/js/kjs_css.cpp:
50334 (KJS::DOMStyleSheet::DOMStyleSheet):
50335 (KJS::DOMStyleSheetList::DOMStyleSheetList):
50336 (KJS::DOMCSSRule::DOMCSSRule):
50337 (KJS::DOMCSSValue::DOMCSSValue):
50339 (KJS::DOMRGBColor::DOMRGBColor):
50340 (KJS::getDOMRGBColor):
50341 (KJS::DOMRect::DOMRect):
50342 * bindings/js/kjs_css.h:
50343 * bindings/js/kjs_dom.cpp:
50344 (KJS::DOMNodeList::DOMNodeList):
50345 (KJS::DOMExceptionConstructor::DOMExceptionConstructor):
50346 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
50348 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
50349 * bindings/js/kjs_dom.h:
50350 (KJS::DOMNamedNodesCollection::classInfo):
50351 * bindings/js/kjs_events.h:
50352 * bindings/js/kjs_html.cpp:
50355 2006-06-04 Darin Adler <darin@apple.com>
50357 Reviewed by Maciej.
50359 - fix http://bugs.webkit.org/show_bug.cgi?id=9031
50360 REGRESSION: Crash when closing tabs on newegg.com
50361 - removed a no-longer-needed Win32-specific workaround (not reviewed)
50363 * bindings/js/kjs_window.cpp: Added include of <wtf/MathExtras.h>.
50364 (WebCore::floatFeature): Remove WIN32 ifdef around isnan.
50365 (WebCore::toJS): Add null checks.
50367 2006-06-04 Darin Adler <darin@apple.com>
50369 Reviewed by Maciej.
50371 - fix http://bugs.webkit.org/show_bug.cgi?id=9176
50372 REGRESSION: repro crash in WebCore::StringImpl::hash() const + 28 (StringImpl.h:67)
50374 Test: fast/loader/link-no-URL.html
50377 * loader/Cache.cpp:
50378 (WebCore::Cache::updateCacheStatus): Removed the URL parameter. Instead get the URL
50379 from the cached object itself. Callers were passing in the wrong URL. When it was a
50380 null string, it caused the crash mentioned above. But in other cases it may have
50381 caused some other minor problems as well. Added an assert to catch cases where the
50382 URL is null (should never happen).
50383 (WebCore::Cache::requestImage): Changed call site to not pass URL.
50384 (WebCore::Cache::requestStyleSheet): Ditto.
50385 (WebCore::Cache::requestScript): Ditto.
50386 (WebCore::Cache::requestXSLStyleSheet): Ditto.
50387 (WebCore::Cache::requestXBLDocument): Ditto.
50389 2006-06-04 Darin Adler <darin@apple.com>
50393 - fix http://bugs.webkit.org/show_bug.cgi?id=7291
50394 REGRESSION: delete key does not work in isIndex fields
50396 * platform/mac/WebCoreTextField.mm:
50397 (inputElement): Added. Helper function to get the Objective-C wrapper for an
50398 input element associated with a QTextEdit. Returns nil if the element is not
50399 an input element. The bug was caused by passing a non-input element to the
50401 (-[KWQTextFieldController controlTextDidBeginEditing:]): Use inputElement
50402 and don't make the delegate call at all if there is none. This happens only
50403 with isindex elements; it's not important to have auto-fill work with those.
50404 (-[KWQTextFieldController controlTextDidEndEditing:]): Ditto.
50405 (-[KWQTextFieldController controlTextDidChange:]): Ditto.
50406 (-[KWQTextFieldController control:textShouldEndEditing:]): Ditto.
50407 (-[KWQTextFieldController control:textView:doCommandBySelector:]): Ditto.
50408 (-[KWQTextFieldController textView:shouldHandleEvent:]): Ditto.
50410 2006-06-04 Darin Adler <darin@apple.com>
50412 Reviewed by Anders.
50414 - fix http://bugs.webkit.org/show_bug.cgi?id=8995
50415 memory leak in XPath code -- seen in layout tests
50416 - fixed malloc error on exit due to SVGDOMImplementation destructor
50417 - attempted to fix the no-XPATH_SUPPORT build by adding an #if
50418 - changed around includes and header-file formatting in XPath code
50420 * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h when
50421 generating the bindings for XPathNSResolver.
50423 * dom/DOMImplementation.h: Added a virtual destructor for the benefit of
50424 SVGDOMImplementation.
50425 * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::~DOMImplementation): Added.
50427 * ksvg2/svg/SVGDOMImplementation.h: Reformatted a bit, removed unneeded declarations.
50428 * ksvg2/svg/SVGDOMImplementation.cpp:
50429 (SVGDOMImplementation::~SVGDOMImplementation): Remove commented-out code.
50430 (SVGDOMImplementation::createDocument): Remove a reference to KDOMView.
50432 * xpath/XPathExpression.cpp:
50433 (WebCore::XPathExpression::createExpression): Called release to avoid a tiny bit of
50434 reference count churn.
50435 (WebCore::XPathExpression::evaluate): Set exception code explicitly, because the code
50436 relies on it being 0 when the function succeeds.
50438 * xpath/XPathResult.cpp:
50439 (WebCore::InvalidatingEventListener::InvalidatingEventListener): Removed
50440 unneeded target node data member.
50441 (WebCore::XPathResult::XPathResult): Updated for enum name changes and
50442 InvalidatingEventListener name change. Added an assertion.
50444 * xpath/impl/XPathFunctions.h: Removed the FunctionLibrary class. Changed the parameter
50445 for createFunction to be a String instead of char*.
50446 * xpath/impl/XPathFunctions.cpp: Got rid of local implementation of "round", and
50447 used <wtf/MathExtras.h> instead. Also removed unused Interval::asString. Marked all
50448 the Interval functions inline.
50449 (WebCore::XPath::FunSubstring::doEvaluate): Use lround() instead of (long)round().
50450 (WebCore::XPath::FunLang::doEvaluate): Removed some unneeded temporary String variables.
50451 Use equalIgnoringCase() instead of calling lower() on two strings.
50452 (WebCore::XPath::createFunctionMap): Changed how this works so that it's all local to
50453 this function. Also removed a duplicate entry for the "last" function.
50454 (WebCore::XPath::createFunction): Changed from a member function to a separate function.
50455 Also changed so that if the args are not used in the function they are deleted.
50456 This was one of the sources of the storage leaks.
50458 * xpath/impl/XPathGrammar.y: Put XPATH_SUPPORT ifdef in. Replaced <num> with values of
50459 specific types (numop, eqop). Updated for name change from AxisType to Axis. Changed
50460 tokens that were declared as <str> but weren't actually using the string to be
50461 declared with no type (PLUS, MINUS, OR, AND, DOTDOT, SLASHSLASH). Replaced use of
50462 unregisterString, unregisterPredicateVector, and unregisterExpressionVector to
50463 call delete functions instead that both unregister and delete. Change call sites for
50464 createFunction to just use the String, removing the deprecatedString().latin1() call
50465 that is no longer needed. Added a call to unregisterParseNode that was missing in the
50466 "FilterExpr DescendantOrSelf RelativeLocationPath" production.
50468 * xpath/impl/XPathParser.h: Changed Token to hold a String, Step::Axis, NumericOp::Opcode,
50469 and EqTestOp::Opcode. The token ID number tells us which to use. Rearranged to put the private
50470 part of the Parser class last. Moved a number of private things inside the cpp file.
50471 * xpath/impl/XPathParser.cpp:
50472 (WebCore::XPath::charCat): Made this a separate function, instead of a static member.
50473 (WebCore::XPath::isAxisName): Ditto. Also put the global axis map inside the function,
50474 allowing use of a map instead of a map pointer.
50475 (WebCore::XPath::isNodeTypeName): Ditto.
50476 (WebCore::XPath::Parser::isOperatorContext): Made this const.
50477 (WebCore::XPath::Parser::makeTokenAndAdvance): Got rid of the "int" version of this.
50478 By using the actual types, we can safely use overload instead.
50479 (WebCore::XPath::Parser::lexString): Use substring() instead of deprecatedString().mid().
50480 (WebCore::XPath::Parser::lexNumber): Ditto.
50481 (WebCore::XPath::Parser::lexNCName): Changed to return a bool and a String instead of a
50482 Token. This avoids the hack of using a token value of "ERROR + 1" which I found quite
50483 confusing and is also a bit more explicit.
50484 (WebCore::XPath::Parser::lexQName): Ditto.
50485 (WebCore::XPath::Parser::nextTokenInternal): Changed to adapt to the changes above and
50486 to remove some unneeded else statements.
50487 (WebCore::XPath::Parser::lex): Changed the logic that sets up yylval to use the token ID
50488 to decide what the type is. This matches what the grammar expects, and removes the need
50489 for the token object to track which part of the value is good and the need to reserve 0
50490 to have a special meaning.
50491 (WebCore::XPath::Parser::parseStatement): Added code to delete the predicates and the
50492 expressions in the predicate and expression vectors. Before, we were only deleting
50493 the vectors. This was one of the sources of the storage leaks.
50494 (WebCore::XPath::Parser::deletePredicateVector): Renamed, and changed to delete
50495 the vector. However this does not delete the predicates in the vector.
50496 (WebCore::XPath::Parser::deleteExpressionVector): Renamed, and changed to delete
50497 the vector. However this does not delete the expressions in the vector.
50498 (WebCore::XPath::Parser::deleteString): Renamed, and changed to delete the string.
50500 * xpath/impl/XPathPredicate.h:
50501 * xpath/impl/XPathPredicate.cpp:
50502 (WebCore::XPath::NumericOp::NumericOp): Changed opcode from an int to an enum, and
50503 renamed to "opcode" instead of "opCode".
50504 (WebCore::XPath::NumericOp::doEvaluate): More of the same.
50505 (WebCore::XPath::EqTestOp::EqTestOp): Ditto.
50506 (WebCore::XPath::EqTestOp::doEvaluate): Ditto.
50507 (WebCore::XPath::LogicalOp::LogicalOp): Ditto.
50508 (WebCore::XPath::LogicalOp::shortCircuitOn): Ditto.
50509 (WebCore::XPath::Predicate::evaluate): Removed an unneeded "new".
50511 * xpath/impl/XPathStep.h:
50512 * xpath/impl/XPathStep.cpp: Renamed AxisType to Axis. Removed unused axisAsString
50513 function and default constructor.
50515 * xpath/impl/XPathValue.h: Renamed the type constants to have a Value suffix,
50516 instead of the underscore suffix used before on NodeVector and String.
50517 * xpath/impl/XPathValue.cpp: Updated for name change. Added asserts.
50519 * xpath/impl/XPathVariableReference.cpp: (WebCore::XPath::VariableReference::doEvaluate):
50520 Use a reference instead of a pointer.
50522 * xpath/XPathEvaluator.cpp:
50523 * xpath/XPathEvaluator.h:
50524 * xpath/XPathExpression.h:
50525 * xpath/XPathNSResolver.cpp:
50526 * xpath/XPathNSResolver.h:
50527 * xpath/XPathNamespace.cpp:
50528 * xpath/XPathNamespace.h:
50529 * xpath/XPathResult.h:
50530 * xpath/impl/XPathExpressionNode.cpp:
50531 * xpath/impl/XPathExpressionNode.h:
50532 * xpath/impl/XPathPath.cpp:
50533 * xpath/impl/XPathPath.h:
50534 * xpath/impl/XPathUtil.cpp:
50535 * xpath/impl/XPathUtil.h:
50536 * xpath/impl/XPathVariableReference.h:
50537 Reformatted and changed includes around; no substantive changes.
50539 2006-06-04 Sam Weinig <sam.weinig@gmail.com>
50543 - fix for http://bugs.webkit.org/show_bug.cgi?id=9213
50544 Absolutely positioned objects with relatively positioned inline
50545 containing blocks are rendered incorrectly
50547 * rendering/RenderBox.cpp:
50548 (WebCore::RenderBox::containingBlockWidthForPositioned):
50549 (WebCore::RenderBox::containingBlockHeightForPositioned):
50550 (WebCore::RenderBox::calcAbsoluteHorizontal):
50551 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
50552 (WebCore::RenderBox::calcAbsoluteVertical):
50553 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
50554 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
50555 * rendering/RenderBox.h:
50557 2006-06-04 Anders Carlsson <acarlsson@apple.com>
50561 http://bugs.webkit.org/show_bug.cgi?id=9035
50562 document.evaluate and createNSResolver miss on namespaced elements
50564 * xpath/XPathExpression.cpp:
50565 (WebCore::XPathExpression::createExpression):
50566 Pass the resolver to the parser.
50568 * xpath/XPathResult.cpp:
50569 (WebCore::XPathResult::iterateNext):
50570 Fix off-by-one error.
50572 * xpath/impl/XPathExpressionNode.h:
50573 (WebCore::XPath::EvaluationContext::EvaluationContext):
50574 Get rid of the resolver in the evaluation context.
50576 * xpath/impl/XPathGrammar.y:
50577 Fetch the resolver from the parser. Only return the local name.
50579 * xpath/impl/XPathParser.cpp:
50580 (WebCore::XPath::Parser::parseStatement):
50581 * xpath/impl/XPathParser.h:
50582 (WebCore::XPath::Parser::resolver):
50583 Update to hold the resolver.
50585 * xpath/impl/XPathStep.cpp:
50586 (WebCore::XPath::Step::Step):
50587 If the parser has stored a namespace URI, set it.
50589 (WebCore::XPath::Step::nodeTestMatches):
50590 Check namespace URIs.
50592 * xpath/impl/XPathStep.h:
50593 Add m_namespaceURI.
50595 2006-06-03 Rob Buis <buis@kde.org>
50597 Reviewed by mjs. Tweaked and landed by ddkilzer.
50599 http://bugs.webkit.org/show_bug.cgi?id=7281
50600 With java disabled wrong information is displayed.
50602 Test: fast/replaced/applet-rendering-java-disabled.html
50604 Match WinIE, render applet content inline when java is
50607 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed RenderEmptyApplet.cpp and RenderEmptyApplet.h.
50608 * WebCore.xcodeproj/project.pbxproj: Ditto.
50609 * WebCoreSources.bkl: Ditto.
50610 * html/HTMLAppletElement.cpp:
50611 (WebCore::HTMLAppletElement::createRenderer):
50612 * rendering/RenderEmptyApplet.cpp: Removed.
50613 * rendering/RenderEmptyApplet.h: Removed.
50615 2006-06-03 Mitz Pettel <opendarwin.org@mitzpettel.com>
50619 - fix http://bugs.webkit.org/show_bug.cgi?id=9252
50620 REGRESSION: Very odd roll-over issues (content disappearing)
50622 Test: fast/dom/HTMLLinkElement/pending-stylesheet-count.html
50624 * html/HTMLLinkElement.cpp:
50625 (WebCore::HTMLLinkElement::~HTMLLinkElement): If the stylesheet was being
50626 loaded, call stylesheetLoaded() on the document, to keep the pending stylesheet
50629 2006-06-03 Darin Adler <darin@apple.com>
50631 - fix Windows build
50633 * platform/Widget.h: Moved scaleFactor function out of Apple-specific
50634 section of the header into the common part.
50636 2006-06-03 Beth Dakin <bdakin@apple.com>
50640 Fix for <rdar://problem/4537274> HiDPI: <canvas> needs to apply a
50641 scale. <canvas> needs to scale itself along with whatever scale
50642 factor is set on the window.
50644 * html/HTMLCanvasElement.cpp:
50645 (WebCore::HTMLCanvasElement::createDrawingContext): Get the scale
50646 factor and use it to create a larger buffer and to scale the
50648 * platform/Widget.h: Provide a new function that returns the user
50649 space scale factor.
50650 * platform/mac/WidgetMac.mm:
50651 (WebCore::Widget::scaleFactor): Get the scale factor from the
50652 window and return it.
50653 * platform/win/WidgetWin.cpp:
50654 (WebCore::Widget::scaleFactor): Just return 1.0f for now.
50656 2006-06-03 Steve Falkenburg <sfalken@apple.com>
50660 Don't send empty referrers. Fixes image load fail on Spinneret default content.
50662 * platform/win/TransferJobWin.cpp:
50663 (WebCore::TransferJob::start):
50665 2006-06-02 Adele Peterson <adele@apple.com>
50669 Windows theme for textareas. Also made some formatting changes.
50671 * rendering/RenderThemeWin.cpp:
50672 (WebCore::RenderThemeWin::supportsFocus):
50673 (WebCore::RenderThemeWin::getThemeData):
50674 (WebCore::RenderThemeWin::adjustButtonStyle):
50675 (WebCore::RenderThemeWin::adjustTextFieldStyle):
50676 (WebCore::RenderThemeWin::adjustTextAreaStyle):
50677 (WebCore::RenderThemeWin::paintTextArea):
50678 * rendering/RenderThemeWin.h:
50679 (WebCore::RenderThemeWin::supportsHover):
50681 2006-06-02 Krzysztof Kowalczyk <kkowalczyk@gmail.com>
50683 Reviewed by Hyatt, checked in by Tim H.
50685 Explicitly run perl on *.pl files instead of relying
50686 on Windows shell figuring out which program to run for
50689 * DerivedSources.make:
50691 2006-06-02 David Carson <dacarson@gmail.com>
50693 Reviewed by Hyatt, checked in by Tim H.
50695 fixes http://bugs.webkit.org/show_bug.cgi?id=9115
50696 Changed RenderLayer to only render layers that are not
50697 totally transparent.
50699 * rendering/RenderLayer.cpp
50700 (RenderLayer::paintLayer):
50701 Changed function to also check if the layer is totally transparent
50702 and if it is, don't bother painting it.
50704 2006-06-02 Rob Buis <buis@kde.org>
50706 Reviewed by Hyatt, checked in by Tim H.
50708 http://bugs.webkit.org/show_bug.cgi?id=8223
50709 WebKit fails to update style on element via DOM
50711 Handle !important by detecting it and using a different code
50712 path from normal priority.
50714 * bindings/js/kjs_css.cpp:
50715 (KJS::DOMCSSStyleDeclaration::put):
50716 * css/CSSStyleDeclaration.cpp:
50717 (WebCore::CSSStyleDeclaration::setProperty):
50718 * css/CSSStyleDeclaration.h:
50720 2006-06-02 Darin Adler <darin@apple.com>
50722 Reviewed by Geoff, checked in by Maciej.
50724 - fix http://bugs.webkit.org/show_bug.cgi?id=9236
50725 REGRESSION: focus method does not work on some elements before they are laid out
50727 * dom/Element.cpp: (WebCore::Element::focus): Do the updateLayout call before
50728 calling isFocusable, since isFocusable looks at the size of the renderer.
50730 2006-06-02 Steve Falkenburg <sfalken@apple.com>
50734 Platform hookup fixes
50736 * bridge/win/FrameWin.cpp:
50737 (WebCore::FrameWin::urlSelected):
50738 (WebCore::FrameWin::setTitle):
50739 (WebCore::FrameWin::setStatusBarText):
50740 * bridge/win/FrameWin.h:
50741 * platform/win/TemporaryLinkStubs.cpp:
50742 (FrameWin::overrideMediaType):
50743 * platform/win/TransferJobWin.cpp:
50744 (WebCore::TransferJobWndProc):
50745 (WebCore::TransferJob::start):
50746 (WebCore::TransferJob::fileLoadTimer):
50747 (WebCore::TransferJob::cancel):
50749 2006-06-02 RĂ©mi Zara <remi_zara@mac.com>
50753 - fix http://bugs.webkit.org/show_bug.cgi?id=3379
50754 attr(X) does not work
50756 Test: fast/css-generated-content/016.html
50758 * css/cssstyleselector.cpp:
50759 (WebCore::CSSStyleSelector::canShareStyleWithElement): Don't share style
50760 if the unique bit is set.
50761 (WebCore::CSSStyleSelector::applyProperty): When applying the "attr" property,
50762 set the unique bit and add to m_selectorAttrs.
50764 * rendering/render_style.cpp: Did a lot of reformatting, and this one real change.
50765 (WebCore::RenderStyle::RenderStyle): Initialize m_unique to false.
50767 * rendering/render_style.h:
50768 (WebCore::RenderStyle::unique): Added. Returns value of m_unique.
50769 (WebCore::RenderStyle::setUnique): Added. Sets m_unique.
50771 2006-06-02 David Kilzer <ddkilzer@kilzer.net>
50775 http://bugs.webkit.org/show_bug.cgi?id=9183
50776 Finish renaming of RenderCanvas to RenderView
50778 * rendering/RenderView.h: Changed renderName from "RenderCanvas" to "RenderView".
50780 2006-06-01 Darin Adler <darin@apple.com>
50782 - try to fix Windows build
50784 * bridge/win/FrameWin.cpp: Added include of Decoder.h.
50786 2006-06-01 Darin Adler <darin@apple.com>
50788 Reviewed by Maciej.
50790 - WebCore doesn't need to load WebKit images any more; removed code for that
50792 * WebCore.exp: Removed WebCoreImageRendererFactory.
50793 * WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRendererFactory.h/mm.
50794 * bridge/mac/WebCoreFrameBridge.mm: Removed include of WebCoreImageRendererFactory.h.
50795 * platform/mac/ImageMac.mm: Removed include of WebCoreImageRendererFactory.h.
50796 * platform/mac/WebCoreImageRendererFactory.h: Removed.
50797 * platform/mac/WebCoreImageRendererFactory.m: Removed.
50799 2006-06-01 Sam Weinig <sam.weinig@gmail.com>
50801 Reviewed by Geoff, tweaked a bit by Darin.
50803 - http://bugs.webkit.org/show_bug.cgi?id=9064
50804 Split dom2_traversalimpl.* into separate files (one class per file).
50806 * WebCore.xcodeproj/project.pbxproj: Updated for new files.
50807 * WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
50809 * bindings/js/kjs_traversal.h:
50810 * bindings/scripts/CodeGeneratorJS.pm:
50811 * bindings/objc/DOM.mm:
50812 * dom/Document.cpp:
50816 * dom/NodeFilter.cpp: Added.
50817 * dom/NodeFilter.h: Added.
50818 * dom/NodeFilterCondition.cpp: Added.
50819 * dom/NodeFilterCondition.h: Added.
50820 * dom/NodeIterator.cpp: Added.
50821 * dom/NodeIterator.h: Added.
50822 * dom/Traversal.cpp: Added.
50823 * dom/Traversal.h: Added.
50824 * dom/TreeWalker.cpp: Added.
50825 * dom/TreeWalker.h: Added.
50827 * dom/dom2_traversalimpl.cpp: Removed.
50828 * dom/dom2_traversalimpl.h: Removed.
50830 2006-06-01 David Carson <dacarson@gmail.com>
50832 Reviewed by Maciej and Adele
50834 Fix for http://bugs.webkit.org/show_bug.cgi?id=8398
50835 REGRESSION: LABEL in OPTION element is clobbering display #TEXT
50836 Patch provided by Darin.
50838 * rendering/RenderSelect.cpp
50839 (RenderSelect::updateFromElement):
50840 Changed to use the containing text by default, and not the label text
50842 2006-06-01 David Carson <dacarson@gmail.com>
50846 Fix for http://bugs.webkit.org/show_bug.cgi?id=8646
50847 Correcting the value returned for window.screen.pixelDepth and
50848 window.screen.colorDepth
50850 * platform/mac/ScreenMac.mm
50852 Changed to return the BitsPerPixelFromDepth rather than the WindowDepth
50854 2006-06-01 Adele Peterson <adele@apple.com>
50856 Reviewed by Maciej.
50858 Missed an initialization in my last checkin which caused too many
50859 resizers to be drawn.
50861 * rendering/render_style.cpp: (WebCore::resize):
50862 Initialize resize to RESIZE_NONE.
50864 2006-06-01 Dave Hyatt <hyatt@apple.com>
50866 Implement form POST using WinINet. This code is crazy... CRAZY!
50868 * platform/TransferJobInternal.h:
50869 (WebCore::TransferJobInternal::TransferJobInternal):
50870 * platform/win/CookieJarWin.cpp:
50871 (WebCore::setCookies):
50872 (WebCore::cookies):
50873 * platform/win/TransferJobWin.cpp:
50874 (WebCore::TransferJobWndProc):
50875 (WebCore::TransferJob::start):
50877 2006-06-01 Adele Peterson <adele@apple.com>
50881 Fix for http://bugs.webkit.org/show_bug.cgi?id=9216
50882 Implement CSS3 resize property
50884 * css/html4.css: Sets resize:both for textareas. This won't affect old-style textareas.
50886 * css/CSSPropertyNames.in: Added resize property.
50887 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Added case for CSS_PROP_RESIZE.
50888 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
50889 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): ditto.
50891 * rendering/render_style.cpp: (WebCore::StyleCSS3InheritedData): Initialize resize.
50892 * rendering/render_style.h:
50893 (WebCore::): Added EResize enum.
50894 (WebCore::RenderStyle::resize):
50895 (WebCore::RenderStyle::setResize):
50896 (WebCore::RenderStyle::initialResize):
50898 * page/FrameView.cpp:
50899 (WebCore::FrameViewPrivate::FrameViewPrivate): Added m_resizeLayer to keep track of a layer that has begun resizing.
50900 (WebCore::FrameViewPrivate::reset): Reset m_resizeLayer.
50901 (WebCore::FrameView::handleMousePressEvent): If the mouse was pressed in a layer's resize control, then put the layer into resize mode.
50902 (WebCore::selectCursor): Updated so we get a pointer cursor for the resize control.
50903 (WebCore::FrameView::handleMouseMoveEvent): If there's a layer currently resizing, then tell the layer to continue resizing.
50904 (WebCore::FrameView::handleMouseReleaseEvent): If there's a layer currently resizing, then pull it out of resize mode.
50906 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::isPointInScrollbar): Updated so the resize control isn't considered part of the scrollbar.
50907 * rendering/RenderLayer.cpp:
50908 (WebCore::RenderLayer::RenderLayer): Initialize m_inResizeMode
50909 (WebCore::RenderLayer::updateLayerPositions): Calls positionResizeControl.
50910 (WebCore::RenderLayer::resize): Added. Sets a new width and height based on the current mouse point.
50911 (WebCore::RenderLayer::isPointInResizeControl): Added.
50912 (WebCore::RenderLayer::positionResizeControl): Added.
50913 (WebCore::RenderLayer::positionScrollbars): Calls positionResizeControl.
50914 (WebCore::RenderLayer::paintScrollbars): Calls positionResizeControl.
50915 (WebCore::RenderLayer::paintResizeControl): Added.
50916 (WebCore::RenderLayer::paintLayer): Calls paintResizeControl.
50917 * rendering/RenderLayer.h: Added m_inResizeMode.
50918 (WebCore::RenderLayer::resizeControlRect):
50919 (WebCore::RenderLayer::setResizeControlRect):
50920 (WebCore::RenderLayer::inResizeMode): Added.
50921 (WebCore::RenderLayer::setInResizeMode): Added.
50923 * platform/mac/ImageMac.mm: (WebCore::Image::loadResource): Moved code from WebImageRendererFactory. Now loads images from WebCore's resources.
50924 WebImageRendererFactory is no longer used and should be removed.
50925 * Resources/missingImage.tiff: Added. Copied from WebKit.
50926 * WebCore.xcodeproj/project.pbxproj: Added missingImage.tiff
50927 * loader/Cache.cpp: (WebCore::Cache::init): Updated name from missing_image to missingImage.
50929 * rendering/RenderTheme.h:
50930 * rendering/RenderTheme.cpp: (WebCore::RenderTheme::paintResizeControl): Added.
50931 * rendering/RenderThemeMac.h:
50932 * rendering/RenderThemeMac.mm:
50933 (WebCore::RenderThemeMac::RenderThemeMac): Initialize resizeCornerImage.
50934 (WebCore::RenderThemeMac::paintResizeControl): Paints resizeCornerImage.
50936 2006-06-01 Brady Eidson <beidson@apple.com>
50938 Reviewed by Maciej.
50940 Added the beginnings of sqlite-based code in a WebCore
50941 based version of the Icon Database. Right now the code
50942 is very loosely hooked up through a Bridge and only
50943 creates an sqlite3 database.
50945 There are also changes to our String classes to allow appending
50946 a single character to a String without creating a temporary object.
50949 -Added a symbol export
50951 * WebCore.xcodeproj/project.pbxproj:
50952 * bridge/mac/WebCoreIconDatabaseBridge.h: Added.
50953 * bridge/mac/WebCoreIconDatabaseBridge.mm: Added.
50954 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
50955 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
50956 (-[WebCoreIconDatabaseBridge isOpen]):
50957 -This class will eventually shadow WebIconDatabase but for now
50958 is a minimal interface to make the sql code live
50961 * icon/IconDatabase.cpp: Added.
50962 -This class will eventually resemble WebIconDatabase but for now
50963 is minimal just to make the sql code live
50964 (WebCore::IconDatabase::sharedIconDatabase):
50965 (WebCore::IconDatabase::IconDatabase):
50966 (WebCore::IconDatabase::open):
50967 -This method calls a mkdir to make sure the target directory
50969 (WebCore::IconDatabase::close):
50970 (WebCore::IconDatabase::~IconDatabase):
50972 * icon/IconDatabase.h: Added.
50973 (WebCore::IconDatabase::isOpen):
50974 * platform/Logging.cpp:
50975 * platform/Logging.h:
50976 -Added an IconDatabase logging channel
50978 * platform/PlatformString.h:
50979 * platform/String.cpp:
50980 (WebCore::String::append):
50981 * platform/StringImpl.cpp:
50982 (WebCore::StringImpl::append):
50983 * platform/StringImpl.h:
50984 -Added append(char) and append(UChar) to allow appending a
50985 single character without creating a temporary object. Required
50986 to facilitate manually adding a null character to a unicode 16
50989 2006-06-01 Mitz Pettel <opendarwin.org@mitzpettel.com>
50991 Reviewed and landed by Anders.
50993 - fixed all places in the Canvas to RenderView rename patch where
50994 view() should have been changed to frameView().
50996 * kwq/WebCoreAXObject.mm:
50997 (-[WebCoreAXObject position]):
50998 (-[WebCoreAXObject accessibilityAttributeValue:]):
50999 * rendering/RenderBlock.cpp:
51000 (WebCore::RenderBlock::layoutBlock):
51001 * rendering/RenderBox.cpp:
51002 (WebCore::RenderBox::paintBackgroundExtended):
51003 * rendering/RenderTreeAsText.cpp:
51004 (externalRepresentation):
51006 2006-06-01 Geoffrey Garen <ggaren@apple.com>
51008 Fix by Mitz. Reviewed, tweaked, tested, landed by me.
51010 - Fixed http://bugs.webkit.org/show_bug.cgi?id=9113
51011 REGRESSION (14581): XMLHttpRequest never calls onreadystatechange with
51014 An XMLHttpRequest must be added to the DOMObject cache so that its
51015 DOM implementation object can protect it, and by extension, its event
51018 This design seems slightly backwards to me -- the bindings should know
51019 about the DOM, not the other way around -- but I'm restoring it for
51020 now to fix the regression.
51022 * bindings/js/JSXMLHttpRequest.cpp:
51023 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
51024 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
51026 2006-06-01 Anders Carlsson <acarlsson@apple.com>
51028 * platform/KURL.cpp:
51029 (equalIgnoringRef):
51032 2006-06-01 Anders Carlsson <acarlsson@apple.com>
51036 http://bugs.webkit.org/show_bug.cgi?id=6309
51037 multiple problems prevent bookmarking/back button technique for AJAX/DHTML applications from working
51039 * bindings/js/kjs_window.cpp:
51040 (KJS::Location::put):
51041 Handle the case where the hash starts with a "#". Also, don't do anything if the previous and new hashes
51044 * bridge/BrowserExtension.h:
51045 * bridge/mac/BrowserExtensionMac.h:
51046 * bridge/mac/BrowserExtensionMac.mm:
51047 (WebCore::BrowserExtensionMac::historyURL):
51048 * bridge/mac/WebCoreFrameBridge.h:
51049 * bridge/mac/WebCoreFrameBridge.mm:
51050 New function historyURL which returns the complete URL for a given item in the history.
51053 (WebCore::Frame::scheduleLocationChange):
51054 (WebCore::Frame::scheduleHistoryNavigation):
51055 If the URL of the new location only differs in the hash, don't schedule the load. Instead, load it
51058 * platform/KURL.cpp:
51060 Add equalsIgnoringRef which returns whether two URLs are equal, ignoring the ref.
51062 2006-06-01 Anders Carlsson <acarlsson@apple.com>
51064 Reviewed by Maciej.
51066 http://bugs.webkit.org/show_bug.cgi?id=9212
51067 dispatchEvent13.html crashes under GuardMalloc
51069 * dom/EventTargetNode.cpp:
51070 (WebCore::EventTargetNode::addEventListener):
51071 (WebCore::EventTargetNode::removeEventListener):
51072 (WebCore::EventTargetNode::handleLocalEvents):
51074 (WebCore::EventTargetNode::removeHTMLEventListener):
51075 (WebCore::EventTargetNode::getHTMLEventListener):
51076 * dom/EventTargetNode.h:
51077 Make the list of registered event listeners refcount the listeners
51078 by using a value list of RefPtr objects.
51080 Set removed flag to true in removeEventListener
51081 Only invoke event listeners if they don't have the removed flag.
51083 * dom/dom2_eventsimpl.cpp:
51084 (WebCore::RegisteredEventListener::RegisteredEventListener):
51085 * dom/dom2_eventsimpl.h:
51086 Make RegisteredEventListener refcounted.
51088 (WebCore::RegisteredEventListener::removed):
51089 (WebCore::RegisteredEventListener::setRemoved):
51090 Add removed flag and getter and setter
51092 2006-06-01 Justin Garcia <justin.garcia@apple.com>
51094 Reviewed by harrison
51096 <rdar://problem/4567752> When forwarding a message, pressing TAB key to place caret in body actually selects the entire message instead
51099 (WebCore::Element::focus):
51101 2006-06-01 David Kilzer <ddkilzer@kilzer.net>
51105 http://bugs.webkit.org/show_bug.cgi?id=9144
51106 Test for Bug 8079 (REGRESSION: Redraw from page cache does not show visited links)
51108 * manual-tests/redraw-page-cache-visited-links.html: Added.
51109 * manual-tests/resources/redraw-page-cache-visited-links-2.html: Added.
51111 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
51115 - fix http://bugs.webkit.org/show_bug.cgi?id=9124
51116 Drop shadow obscures "add more stuff" bubble at live.com
51118 Test: fast/css/find-next-layer.html
51120 * rendering/RenderObject.cpp:
51121 (WebCore::RenderObject::findNextLayer): Fixed a bug where this function could reach
51122 two levels down in the layer tree and return 0.
51124 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
51128 - http://bugs.webkit.org/show_bug.cgi?id=9109
51129 Remove bogus assertion in RenderBlock::tabWidth
51131 Changed the uninitialized value of m_tabWidth to -1 and removed the
51132 assertion that it cannot be 0.
51134 * rendering/RenderBlock.cpp:
51135 (WebCore:::RenderBlock::RenderBlock):
51136 (WebCore::RenderBlock::setStyle):
51137 * rendering/bidi.cpp:
51138 (WebCore::RenderBlock::tabWidth):
51140 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
51144 - fix for http://bugs.webkit.org/show_bug.cgi?id=9100
51145 Absolutely positioned replaced elements with all non-auto
51146 values are rendered incorrectly
51148 * rendering/RenderBox.cpp:
51149 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Add support for case when all values are specified.
51150 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto
51152 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
51156 - fix http://bugs.webkit.org/show_bug.cgi?id=9012
51157 Row height not updated when cell heights change
51159 Test: fast/table/row-height-recalc.html
51161 * rendering/RenderTableCell.cpp:
51162 (WebCore::RenderTableCell::setStyle): Mark the section as needing recalculation
51163 if the height property changed.
51164 * rendering/RenderTableRow.cpp:
51165 (WebCore::RenderTableRow::setStyle): Ditto.
51166 * rendering/RenderTableSection.cpp:
51167 (WebCore::RenderTableSection::recalcCells): Initialize the grid row height
51168 to the height of the row element (like addChild() does).
51170 2006-05-31 Mitz Pettel <opendarwin.org@mitzpettel.com>
51174 - fix for http://bugs.webkit.org/show_bug.cgi?id=8969
51175 REGRESSION: typing in textfield repaints whole web page at gamefaqs.com
51177 No test possible (no functionality change)
51179 * dom/Document.cpp:
51180 (WebCore::Document::updateLayout): Changed to ensure that pending subtree
51181 layouts are performed too.
51183 (WebCore::Frame::forceLayout): Force a full layout.
51184 * page/FrameView.cpp:
51185 (WebCore::FrameViewPrivate::reset):
51186 (WebCore::FrameView::layout): Changed to relayout only the subtree rooted
51187 at d->layoutRoot if it's non-zero and allowSubtree is true.
51188 (WebCore::FrameView::scheduleRelayout): Change pending subtree relayout into
51189 normal relayout by clearing d->layoutRoot and propagating needsLayout to the
51191 (WebCore::FrameView::scheduleRelayoutOfSubtree): Added.
51192 * page/FrameView.h:
51193 * rendering/RenderObject.cpp:
51194 (WebCore::RenderObject::markContainingBlocksForLayout): Added scheduleRelayout
51195 parameter. FrameView passes false to force marking all the way to the root
51196 when turning a pending subtree relayout into a full relayout. Otherwise,
51197 marking stops at the first textField (or at the root) and
51198 relayout of the last object reached is scheduled.
51199 (WebCore::RenderObject::scheduleRelayout):
51200 * rendering/RenderObject.h:
51202 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
51206 patch for <http://bugs.webkit.org/show_bug.cgi?id=8910>
51207 Bug 8910: Various code cleanups in RenderBox
51209 Clean up with some slight optimizations.
51211 * rendering/RenderBox.cpp:
51212 (WebCore::RenderBox::contentWidth):
51213 (WebCore::RenderBox::contentHeight):
51214 (WebCore::RenderBox::setPos):
51215 (WebCore::RenderBox::calcWidth):
51216 (WebCore::RenderBox::calcWidthUsing):
51217 * rendering/RenderBox.h:
51219 2006-05-31 Sam Weinig <sam.weinig@gmail.com>
51223 patch for <http://bugs.webkit.org/show_bug.cgi?id=8899>
51224 Bug 8899: Removes some unneeded code from RenderBox
51226 Removes the use of WidthType where not needed to simplify
51229 * rendering/RenderBox.cpp:
51230 (WebCore::RenderBox::calcWidthUsing):
51231 (WebCore::RenderBox::sizesToIntrinsicWidth):
51232 (WebCore::RenderBox::calcReplacedWidth):
51233 (WebCore::RenderBox::calcReplacedWidthUsing):
51234 (WebCore::RenderBox::calcReplacedHeight):
51235 (WebCore::RenderBox::calcReplacedHeightUsing):
51236 * rendering/RenderBox.h:
51238 (WebCore::RenderBox::renderName):
51239 * rendering/RenderImage.cpp:
51240 (WebCore::RenderImage::calcReplacedWidth):
51241 (WebCore::RenderImage::calcReplacedHeight):
51243 2006-05-31 Rob Buis <buis@kde.org>
51247 Fix for http://bugs.webkit.org/show_bug.cgi?id=8455
51248 selectedIndex for a select after a Form reset() has wrong value
51250 Make sure the list items are reset properly by selecting
51251 the first option in case no options have the selected attribute
51254 * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::reset):
51256 2006-05-31 Rob Buis <buis@kde.org>
51260 Fix for http://bugs.webkit.org/show_bug.cgi?id=8024
51261 "Go" button (search) doesn't work at fifa.com (document.all.FormName)
51263 Allow input elements with name attributes as possible named
51264 items for document.all.
51266 * html/HTMLCollection.cpp:
51267 (WebCore::HTMLCollection::checkForNameMatch):
51268 (WebCore::HTMLCollection::updateNameCache):
51270 2006-05-31 Dave Hyatt <hyatt@apple.com>
51272 Adding stubs for BMP/ICO/XBM image decoders. They don't
51273 do anything yet though.
51275 * WebCore.vcproj/WebCore/WebCore.vcproj:
51276 * platform/cairo/ImageSourceCairo.cpp:
51277 (WebCore::createDecoder):
51278 * platform/image-decoders/bmp: Added.
51279 * platform/image-decoders/bmp/BMPImageDecoder.cpp: Added.
51280 (WebCore::BMPImageDecoder::isSizeAvailable):
51281 (WebCore::BMPImageDecoder::frameBufferAtIndex):
51282 * platform/image-decoders/bmp/BMPImageDecoder.h: Added.
51283 * platform/image-decoders/ico: Added.
51284 * platform/image-decoders/ico/ICOImageDecoder.cpp: Added.
51285 (WebCore::ICOImageDecoder::isSizeAvailable):
51286 (WebCore::ICOImageDecoder::frameBufferAtIndex):
51287 * platform/image-decoders/ico/ICOImageDecoder.h: Added.
51288 * platform/image-decoders/xbm: Added.
51289 * platform/image-decoders/xbm/XBMImageDecoder.cpp: Added.
51290 (WebCore::XBMImageDecoder::isSizeAvailable):
51291 (WebCore::XBMImageDecoder::frameBufferAtIndex):
51292 * platform/image-decoders/xbm/XBMImageDecoder.h: Added.
51294 2006-05-31 David Hyatt <hyatt@apple.com>
51296 Fix for the gmail tab-focus-stealing bug.
51300 * bindings/js/kjs_window.cpp:
51301 (KJS::WindowFunc::callAsFunction):
51302 * bridge/mac/BrowserExtensionMac.mm:
51303 (WebCore::BrowserExtensionMac::createNewWindow):
51304 * bridge/mac/FrameMac.h:
51305 * bridge/mac/FrameMac.mm:
51306 (WebCore::FrameMac::focusWindow):
51307 (WebCore::FrameMac::unfocusWindow):
51308 * bridge/mac/WebCoreFrameBridge.h:
51310 * platform/Widget.h:
51311 * platform/mac/WidgetMac.mm:
51312 * platform/win/TemporaryLinkStubs.cpp:
51313 (FrameWin::focusWindow):
51314 * platform/win/WidgetWin.cpp:
51316 2006-05-31 Beth Dakin <bdakin@apple.com>
51320 Fix for http://bugs.webkit.org/show_bug.cgi?id=6755 CSS3:
51321 Borders rounded with border-radius don't draw the roundings
51323 This patch does not draw all of the different border styles
51324 perfectly, so I have filed a few followup bugs that I will
51325 reference from this Bugzilla.
51327 * platform/GraphicsContext.h:
51328 * platform/cairo/GraphicsContextCairo.cpp:
51329 (WebCore::GraphicsContext::drawArc): drawArc() has different
51330 parameters now, but mostly this needs to be implemented to match
51331 the Mac side later.
51332 (WebCore::GraphicsContext::addRoundedRectClip): Just a stub.
51333 Implement this later.
51334 (WebCore::GraphicsContext::addInnerRoundedRectClip): Just a stub.
51335 Implement this later.
51336 * platform/cg/GraphicsContextCG.cpp:
51337 (WebCore::GraphicsContext::drawArc): drawArc() now handles drawing
51338 elliptical arcs as well as circular arcs, it also takes a thickness
51339 parameter to draw an arc of a given thickness and draws with the
51340 appropriate pen style.
51341 (WebCore::GraphicsContext::addInnerRoundedRectClip): Adds a clip to
51342 the inside of an arc instead of to the outside which is already
51343 done by addRoundedClipRect()
51344 * rendering/RenderObject.cpp:
51345 (WebCore::RenderObject::drawBorderArc): Draws the border arcs in
51346 the appropriate styles.
51347 (WebCore::RenderObject::paintBorder): Calls drawBorderArc() when
51348 border arcs are needed.
51349 * rendering/RenderObject.h:
51351 2006-05-30 Eric Seidel <eric@webkit.org>
51353 Reviewed by andersca.
51355 Add first-cut SVG JS bindings autogeneration.
51356 SVGSVGElement and various other support classes are generated.
51357 Various small style fixes.
51358 http://bugs.webkit.org/show_bug.cgi?id=4249
51360 * DerivedSources.make:
51361 * WebCore+SVG/RGBColor.cpp: Removed.
51362 * WebCore+SVG/RGBColor.h: Removed.
51363 * WebCore.xcodeproj/project.pbxproj:
51364 * bindings/js/JSHTMLElementWrapperFactory.cpp:
51365 (WebCore::createJSHTMLWrapper): renamed from createJSWrapper
51366 * bindings/js/JSHTMLElementWrapperFactory.h:
51367 * bindings/js/kjs_dom.cpp:
51368 (KJS::DOMNode::DOMNode):
51369 (KJS::DOMNode::toBoolean):
51370 (KJS::DOMNode::getOwnPropertySlot):
51371 (KJS::DOMNode::getValueProperty):
51372 (KJS::DOMNode::put):
51373 (KJS::DOMNode::putValueProperty):
51374 (KJS::DOMNode::toPrimitive):
51375 (KJS::DOMNode::toString):
51376 (KJS::DOMNodeProtoFunc::callAsFunction):
51377 (KJS::toEventTargetNode):
51378 (KJS::DOMEventTargetNode::getOwnPropertySlot):
51379 (KJS::DOMEventTargetNode::getValueProperty):
51380 (KJS::DOMEventTargetNode::put):
51381 (KJS::DOMEventTargetNode::putValueProperty):
51382 (KJS::DOMEventTargetNode::setListener):
51383 (KJS::DOMEventTargetNode::getListener):
51384 (KJS::DOMEventTargetNode::pushEventHandlerScope):
51385 (KJS::DOMEventTargetNodeProtoFunc::callAsFunction):
51386 (KJS::DOMNodeList::toPrimitive):
51387 (KJS::DOMNodeList::getValueProperty):
51388 (KJS::DOMNodeList::indexGetter):
51389 (KJS::DOMNodeList::nameGetter):
51390 (KJS::DOMNodeList::getOwnPropertySlot):
51391 (KJS::DOMNodeList::callAsFunction):
51392 (KJS::DOMNodeListFunc::callAsFunction):
51394 (KJS::toDocumentType):
51395 (KJS::DOMNamedNodeMap::DOMNamedNodeMap):
51396 (KJS::DOMNamedNodeMap::~DOMNamedNodeMap):
51397 (KJS::DOMNamedNodeMap::lengthGetter):
51398 (KJS::DOMNamedNodeMap::indexGetter):
51399 (KJS::DOMNamedNodeMap::nameGetter):
51400 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
51402 (KJS::checkNodeSecurity):
51403 (KJS::getRuntimeObject):
51404 (KJS::DOMExceptionConstructor::getOwnPropertySlot):
51405 (KJS::DOMExceptionConstructor::getValueProperty):
51406 (KJS::getDOMExceptionConstructor):
51407 (KJS::DOMNamedNodesCollection::DOMNamedNodesCollection):
51408 (KJS::DOMNamedNodesCollection::lengthGetter):
51409 (KJS::DOMNamedNodesCollection::indexGetter):
51410 (KJS::DOMNamedNodesCollection::getOwnPropertySlot):
51411 * bindings/scripts/CodeGenerator.pm:
51412 * bindings/scripts/CodeGeneratorJS.pm:
51413 * dom/Document.cpp:
51414 (WebCore::Document::implicitClose):
51416 * dom/StyledElement.h:
51417 * ksvg2/bindings/idl/svg/SVGAngle.idl: Removed.
51418 * ksvg2/bindings/idl/svg/SVGAnimatedLength.idl: Removed.
51419 * ksvg2/bindings/idl/svg/SVGColor.idl: Removed.
51420 * ksvg2/bindings/idl/svg/SVGDocument.idl: Removed.
51421 * ksvg2/bindings/idl/svg/SVGElement.idl: Removed.
51422 * ksvg2/bindings/idl/svg/SVGLength.idl: Removed.
51423 * ksvg2/bindings/idl/svg/SVGMatrix.idl: Removed.
51424 * ksvg2/bindings/idl/svg/SVGNumber.idl: Removed.
51425 * ksvg2/bindings/idl/svg/SVGPoint.idl: Removed.
51426 * ksvg2/bindings/idl/svg/SVGRect.idl: Removed.
51427 * ksvg2/bindings/idl/svg/SVGSVGElement.idl: Removed.
51428 * ksvg2/bindings/idl/svg/SVGTransform.idl: Removed.
51429 * ksvg2/bindings/idl/svg/kdomdefs.idl: Removed.
51430 * ksvg2/bindings/js: Added.
51431 * ksvg2/bindings/js/JSSVGNumber.cpp: Added.
51433 (WebCore::JSSVGNumber::~JSSVGNumber):
51434 (WebCore::JSSVGNumber::getOwnPropertySlot):
51435 (WebCore::JSSVGNumber::getValue):
51436 (WebCore::getJSSVGNumber):
51437 * ksvg2/bindings/js/JSSVGNumber.h: Added.
51438 (WebCore::JSSVGNumber::JSSVGNumber):
51439 (WebCore::JSSVGNumber::classInfo):
51440 * ksvg2/bindings/js/JSSVGPoint.cpp: Added.
51442 (WebCore::JSSVGPoint::~JSSVGPoint):
51443 (WebCore::JSSVGPoint::getOwnPropertySlot):
51444 (WebCore::JSSVGPoint::getValueProperty):
51445 (WebCore::getJSSVGPoint):
51446 (WebCore::toFloatPoint):
51447 * ksvg2/bindings/js/JSSVGPoint.h: Added.
51448 (WebCore::JSSVGPoint::JSSVGPoint):
51449 (WebCore::JSSVGPoint::classInfo):
51450 (WebCore::JSSVGPoint::):
51451 (WebCore::JSSVGPoint::impl):
51452 * ksvg2/bindings/js/JSSVGRect.cpp: Added.
51454 (WebCore::JSSVGRect::~JSSVGRect):
51455 (WebCore::JSSVGRect::getOwnPropertySlot):
51456 (WebCore::JSSVGRect::getValueProperty):
51457 (WebCore::getJSSVGRect):
51458 (WebCore::toFloatRect):
51459 * ksvg2/bindings/js/JSSVGRect.h: Added.
51460 (WebCore::JSSVGRect::JSSVGRect):
51461 (WebCore::JSSVGRect::classInfo):
51462 (WebCore::JSSVGRect::):
51463 (WebCore::JSSVGRect::impl):
51464 * ksvg2/css/SVGCSSParser.cpp:
51465 (WebCore::CSSParser::parseSVGValue):
51466 * ksvg2/css/SVGCSSStyleSelector.cpp:
51467 (WebCore::CSSStyleSelector::applySVGProperty):
51468 * ksvg2/events/SVGZoomEvent.cpp:
51469 (SVGZoomEvent::SVGZoomEvent):
51470 (SVGZoomEvent::zoomRectScreen):
51471 (SVGZoomEvent::previousTranslate):
51472 (SVGZoomEvent::newTranslate):
51473 * ksvg2/events/SVGZoomEvent.h:
51476 * ksvg2/misc/SVGDocumentExtensions.cpp:
51477 (WebCore::SVGDocumentExtensions::SVGDocumentExtensions):
51478 (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
51479 (WebCore::SVGDocumentExtensions::addTimeContainer):
51480 (WebCore::SVGDocumentExtensions::removeTimeContainer):
51481 (WebCore::SVGDocumentExtensions::startAnimations):
51482 (WebCore::SVGDocumentExtensions::pauseAnimations):
51483 (WebCore::SVGDocumentExtensions::unpauseAnimations):
51484 * ksvg2/misc/SVGDocumentExtensions.h:
51485 * ksvg2/svg/SVGAElement.h:
51486 * ksvg2/svg/SVGAngle.h:
51487 (WebCore::SVGAngle::):
51488 * ksvg2/svg/SVGAngle.idl: Added.
51489 * ksvg2/svg/SVGAnimateColorElement.cpp:
51490 (WebCore::SVGAnimateColorElement::SVGAnimateColorElement):
51491 (WebCore::SVGAnimateColorElement::handleTimerEvent):
51492 (WebCore::SVGAnimateColorElement::clampColor):
51493 * ksvg2/svg/SVGAnimateColorElement.h:
51494 * ksvg2/svg/SVGAnimateElement.cpp:
51495 (SVGAnimateElement::SVGAnimateElement):
51496 (SVGAnimateElement::handleTimerEvent):
51497 * ksvg2/svg/SVGAnimateElement.h:
51498 * ksvg2/svg/SVGAnimateTransformElement.cpp:
51499 (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
51500 (WebCore::SVGAnimateTransformElement::parseMappedAttribute):
51501 (WebCore::SVGAnimateTransformElement::handleTimerEvent):
51502 (WebCore::SVGAnimateTransformElement::parseTransformValue):
51503 (WebCore::SVGAnimateTransformElement::calculateRotationFromMatrix):
51504 (WebCore::SVGAnimateTransformElement::initialMatrix):
51505 * ksvg2/svg/SVGAnimateTransformElement.h:
51506 * ksvg2/svg/SVGAnimatedLength.idl: Added.
51507 * ksvg2/svg/SVGAnimationElement.cpp:
51508 (SVGAnimationElement::closeRenderer):
51509 * ksvg2/svg/SVGAnimationElement.h:
51510 * ksvg2/svg/SVGCircleElement.h:
51511 * ksvg2/svg/SVGClipPathElement.h:
51512 * ksvg2/svg/SVGColor.cpp:
51513 (WebCore::SVGColor::SVGColor):
51514 (WebCore::SVGColor::rgbColor):
51515 (WebCore::SVGColor::setRGBColor):
51516 (WebCore::SVGColor::setRGBColorICCColor):
51517 (WebCore::SVGColor::setColor):
51518 (WebCore::SVGColor::color):
51519 * ksvg2/svg/SVGColor.h:
51520 (WebCore::SVGColor::):
51521 (WebCore::SVGColor::setRGBColor):
51522 * ksvg2/svg/SVGColor.idl: Added.
51523 * ksvg2/svg/SVGComponentTransferFunctionElement.h:
51524 * ksvg2/svg/SVGCursorElement.h:
51525 * ksvg2/svg/SVGDefsElement.h:
51526 * ksvg2/svg/SVGDescElement.h:
51527 * ksvg2/svg/SVGDocument.idl: Added.
51528 * ksvg2/svg/SVGElement.cpp:
51529 (WebCore::SVGElement::SVGElement):
51530 (WebCore::SVGElement::isSupported):
51531 (WebCore::SVGElement::id):
51532 (WebCore::SVGElement::setId):
51533 (WebCore::SVGElement::xmlbase):
51534 (WebCore::SVGElement::setXmlbase):
51535 (WebCore::SVGElement::ownerSVGElement):
51536 (WebCore::SVGElement::viewportElement):
51537 (WebCore::SVGElement::tryGetAttribute):
51538 (WebCore::SVGElement::tryGetAttributeNS):
51539 (WebCore::SVGElement::childShouldCreateRenderer):
51540 * ksvg2/svg/SVGElement.h:
51541 * ksvg2/svg/SVGElement.idl: Added.
51542 * ksvg2/svg/SVGEllipseElement.h:
51543 * ksvg2/svg/SVGEvent.idl: Added.
51544 * ksvg2/svg/SVGFEBlendElement.h:
51545 * ksvg2/svg/SVGFEColorMatrixElement.h:
51546 * ksvg2/svg/SVGFEComponentTransferElement.h:
51547 * ksvg2/svg/SVGFECompositeElement.h:
51548 * ksvg2/svg/SVGFEDiffuseLightingElement.h:
51549 * ksvg2/svg/SVGFEDistantLightElement.h:
51550 * ksvg2/svg/SVGFEFloodElement.h:
51551 * ksvg2/svg/SVGFEFuncAElement.h:
51552 * ksvg2/svg/SVGFEFuncBElement.h:
51553 * ksvg2/svg/SVGFEFuncGElement.h:
51554 * ksvg2/svg/SVGFEFuncRElement.h:
51555 * ksvg2/svg/SVGFEGaussianBlurElement.h:
51556 * ksvg2/svg/SVGFEImageElement.h:
51557 * ksvg2/svg/SVGFELightElement.h:
51558 * ksvg2/svg/SVGFEMergeElement.h:
51559 * ksvg2/svg/SVGFEMergeNodeElement.h:
51560 * ksvg2/svg/SVGFEOffsetElement.h:
51561 * ksvg2/svg/SVGFEPointLightElement.h:
51562 * ksvg2/svg/SVGFESpecularLightingElement.h:
51563 * ksvg2/svg/SVGFESpotLightElement.h:
51564 * ksvg2/svg/SVGFETileElement.h:
51565 * ksvg2/svg/SVGFETurbulenceElement.h:
51566 * ksvg2/svg/SVGFilterElement.h:
51567 * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
51568 * ksvg2/svg/SVGForeignObjectElement.h:
51569 * ksvg2/svg/SVGGElement.h:
51570 * ksvg2/svg/SVGGradientElement.h:
51571 * ksvg2/svg/SVGHelper.cpp:
51572 (WebCore::SVGHelper::PercentageOfViewport):
51573 (WebCore::SVGHelper::ParseSeperatedList):
51574 * ksvg2/svg/SVGImageElement.h:
51575 * ksvg2/svg/SVGLength.h:
51576 (WebCore::SVGLength::):
51577 * ksvg2/svg/SVGLength.idl: Added.
51578 * ksvg2/svg/SVGLineElement.h:
51579 * ksvg2/svg/SVGLinearGradientElement.h:
51580 * ksvg2/svg/SVGLocatable.cpp:
51581 (SVGLocatable::getBBox):
51582 * ksvg2/svg/SVGLocatable.h:
51583 * ksvg2/svg/SVGMarkerElement.h:
51584 * ksvg2/svg/SVGMaskElement.h:
51585 * ksvg2/svg/SVGMatrix.cpp:
51586 (SVGMatrix::inverse):
51587 (SVGMatrix::rotateFromVector):
51588 * ksvg2/svg/SVGMatrix.h:
51589 * ksvg2/svg/SVGMatrix.idl: Added.
51590 * ksvg2/svg/SVGNumber.idl: Added.
51591 * ksvg2/svg/SVGPathElement.cpp:
51592 (WebCore::SVGPathElement::getPointAtLength):
51593 * ksvg2/svg/SVGPathElement.h:
51594 * ksvg2/svg/SVGPatternElement.cpp:
51595 (WebCore::SVGPatternElement::x):
51596 (WebCore::SVGPatternElement::y):
51597 (WebCore::SVGPatternElement::width):
51598 (WebCore::SVGPatternElement::height):
51599 (WebCore::SVGPatternElement::pushAttributeContext):
51600 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
51601 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
51602 (WebCore::SVGPatternElement::notifyClientsToRepaint):
51603 (WebCore::SVGPatternElement::notifyAttributeChange):
51604 (WebCore::SVGPatternElement::canvasResource):
51605 (WebCore::SVGPatternElement::getCTM):
51606 * ksvg2/svg/SVGPatternElement.h:
51607 * ksvg2/svg/SVGPoint.idl: Added.
51608 * ksvg2/svg/SVGPolyElement.h:
51609 * ksvg2/svg/SVGPolygonElement.h:
51610 * ksvg2/svg/SVGPolylineElement.h:
51611 * ksvg2/svg/SVGRadialGradientElement.h:
51612 * ksvg2/svg/SVGRect.idl: Added.
51613 * ksvg2/svg/SVGRectElement.h:
51614 * ksvg2/svg/SVGSVGElement.cpp:
51615 (WebCore::SVGSVGElement::SVGSVGElement):
51616 (WebCore::SVGSVGElement::~SVGSVGElement):
51617 (WebCore::SVGSVGElement::viewport):
51618 (WebCore::SVGSVGElement::currentTranslate):
51619 (WebCore::SVGSVGElement::unsuspendRedraw):
51620 (WebCore::SVGSVGElement::getIntersectionList):
51621 (WebCore::SVGSVGElement::getEnclosureList):
51622 (WebCore::SVGSVGElement::checkIntersection):
51623 (WebCore::SVGSVGElement::checkEnclosure):
51624 (WebCore::SVGSVGElement::createSVGNumber):
51625 (WebCore::SVGSVGElement::createSVGPoint):
51626 (WebCore::SVGSVGElement::createSVGRect):
51627 (WebCore::SVGSVGElement::pauseAnimations):
51628 (WebCore::SVGSVGElement::unpauseAnimations):
51629 (WebCore::SVGSVGElement::animationsPaused):
51630 (WebCore::SVGSVGElement::getCurrentTime):
51631 (WebCore::SVGSVGElement::setCurrentTime):
51632 * ksvg2/svg/SVGSVGElement.h:
51633 (WebCore::SVGSVGElement::timeScheduler):
51634 * ksvg2/svg/SVGSVGElement.idl: Added.
51635 * ksvg2/svg/SVGScriptElement.h:
51636 * ksvg2/svg/SVGSetElement.cpp:
51637 (WebCore::SVGSetElement::SVGSetElement):
51638 (WebCore::SVGSetElement::handleTimerEvent):
51639 * ksvg2/svg/SVGSetElement.h:
51640 * ksvg2/svg/SVGStopElement.h:
51641 * ksvg2/svg/SVGStyleElement.h:
51642 * ksvg2/svg/SVGStyledElement.h:
51643 * ksvg2/svg/SVGStyledLocatableElement.cpp:
51644 (SVGStyledLocatableElement::getBBox):
51645 * ksvg2/svg/SVGStyledLocatableElement.h:
51646 * ksvg2/svg/SVGStyledTransformableElement.cpp:
51647 (SVGStyledTransformableElement::getBBox):
51648 * ksvg2/svg/SVGStyledTransformableElement.h:
51649 * ksvg2/svg/SVGSwitchElement.h:
51650 * ksvg2/svg/SVGSymbolElement.h:
51651 * ksvg2/svg/SVGTRefElement.h:
51652 * ksvg2/svg/SVGTSpanElement.h:
51653 * ksvg2/svg/SVGTextContentElement.cpp:
51654 (SVGTextContentElement::getStartPositionOfChar):
51655 (SVGTextContentElement::getEndPositionOfChar):
51656 (SVGTextContentElement::getExtentOfChar):
51657 (SVGTextContentElement::getCharNumAtPosition):
51658 (SVGTextContentElement::parseMappedAttribute):
51659 * ksvg2/svg/SVGTextContentElement.h:
51660 * ksvg2/svg/SVGTextElement.cpp:
51661 (WebCore::SVGTextElement::getBBox):
51662 * ksvg2/svg/SVGTextElement.h:
51663 * ksvg2/svg/SVGTextPositioningElement.h:
51664 * ksvg2/svg/SVGTitleElement.h:
51665 * ksvg2/svg/SVGTransform.h:
51666 (WebCore::SVGTransform::):
51667 * ksvg2/svg/SVGTransform.idl: Added.
51668 * ksvg2/svg/SVGUseElement.h:
51669 * ksvg2/svg/SVGViewElement.h:
51671 (WebCore::Frame::Frame):
51672 (WebCore::Frame::pauseTimeouts):
51673 (WebCore::Frame::resumeTimeouts):
51674 * platform/Color.h:
51675 * rendering/RenderBR.h:
51676 * rendering/RenderBox.h:
51677 (WebCore::RenderBox::renderName):
51678 * rendering/RenderCanvas.h:
51679 (WebCore::RenderCanvas::view):
51680 * rendering/RenderContainer.h:
51681 * rendering/RenderFlexibleBox.h:
51682 * rendering/RenderFlow.h:
51683 (WebCore::RenderFlow::RenderFlow):
51684 * rendering/RenderInline.h:
51685 * rendering/RenderTableSection.h:
51686 * rendering/RenderTextFragment.h:
51687 (WebCore::RenderTextFragment::contentString):
51688 * xml/xmlattrs.in: Added.
51690 2006-05-30 Geoffrey Garen <ggaren@apple.com>
51692 Reviewed by Maciej.
51694 - Fixed <rdar://problem/4559720> window sizing: make javascript window
51695 and screen sizing methods and properties work @ HIDPI
51697 The general approach here is to change some ints to floats, make
51698 a few key functions that scale between WebView and window/screen
51699 coordinates, and change other functions that work with screen
51700 coordinates to use the scaling functions for their underlying
51703 * manual-tests/window-open-features.html: Removed.
51704 * manual-tests/window-sizing.html: Added. More test coverage.
51706 * bindings/js/kjs_window.cpp: Changed ints to floats and IntRects to
51707 FloatRects, because window coordinates can be fractional when scaled
51708 to WebView/DOM coordinates.
51709 (KJS::floatFeature):
51710 (KJS::showModalDialog):
51711 (KJS::Window::getValueProperty):
51712 (KJS::constrainToVisible):
51713 (KJS::WindowFunc::callAsFunction):
51714 * bridge/BrowserExtension.h:
51715 * bridge/mac/BrowserExtensionMac.mm:
51716 (WebCore::BrowserExtensionMac::createNewWindow): Removed custom scaling
51717 code and replaced with calls to Page::windowRect and
51718 Page::setWindowRect. Renamed 'page' and 'bridge' to 'pageBridge' and
51719 'frameBridge,' respectively.
51720 * bridge/mac/PageMac.mm:
51721 (WebCore::Page::windowRect): Changed to use scaling
51722 (WebCore::Page::setWindowRect): ditto
51723 * bridge/mac/WebCoreFrameBridge.mm:
51726 * platform/IntRect.h:
51727 * platform/Screen.h:
51728 * platform/mac/MouseEventMac.mm:
51729 (WebCore::globalPositionForEvent): Changed to use flipScreenPoint
51730 * platform/mac/ScreenMac.mm:
51731 (WebCore::flipScreenRect): New key function
51732 (WebCore::flipScreenPoint): New key function
51733 (WebCore::scaleScreenRectToView): New key function
51734 (WebCore::scaleViewRectToScreen): New key function
51735 (WebCore::screenRect): Changed to use scaling
51736 (WebCore::usableScreenRect): ditto
51738 Feeble attempt to preserve Windows build:
51740 * platform/win/ScreenWin.cpp:
51741 (WebCore::scaleScreenRectToWidget): stub -- doesn't actually scale
51742 (WebCore::scaleWidgetRectToScreen): ditto
51743 * bridge/win/PageWin.cpp:
51744 (WebCore::Page::Page):
51745 (WebCore::Page::widget):
51747 2006-05-30 David Hyatt <hyatt@apple.com>
51749 Rename RenderCanvas to RenderView. Rename canvas(), isCanvas()
51750 to view(), isView(). Rename the frame view accessor on the old canvas
51751 from view() to frameView() (to avoid view()->view(), since that just looks
51754 Reviewed by andersca
51756 * WebCore.vcproj/WebCore/WebCore.vcproj:
51757 * WebCore.xcodeproj/project.pbxproj:
51758 * bindings/js/kjs_dom.cpp:
51759 * bindings/js/kjs_window.cpp:
51760 * bridge/mac/FrameMac.mm:
51761 * bridge/mac/WebCoreFrameBridge.mm:
51762 (-[WebCoreFrameBridge _setupRootForPrinting:]):
51763 (-[WebCoreFrameBridge computePageRectsWithPrintWidthScaleFactor:printHeight:]):
51764 (-[WebCoreFrameBridge selectionColor]):
51765 (-[WebCoreFrameBridge accessibilityTree]):
51766 * dom/Document.cpp:
51767 (WebCore::Document::attach):
51768 (WebCore::Document::updateSelection):
51769 (WebCore::Document::prepareMouseEvent):
51770 * editing/SelectionController.cpp:
51771 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
51772 * ksvg2/svg/SVGClipPathElement.cpp:
51773 (SVGClipPathElement::canvasResource):
51774 * ksvg2/svg/SVGFEFloodElement.cpp:
51775 (SVGFEFloodElement::filterEffect):
51776 * ksvg2/svg/SVGGradientElement.cpp:
51777 (SVGGradientElement::rebuildStops):
51778 * ksvg2/svg/SVGHelper.cpp:
51779 (SVGHelper::PercentageOfViewport):
51780 * ksvg2/svg/SVGPathElement.cpp:
51781 (WebCore::SVGPathElement::getPointAtLength):
51782 * ksvg2/svg/SVGSVGElement.cpp:
51783 (WebCore::SVGSVGElement::currentTranslate):
51784 * ksvg2/svg/SVGStyledElement.cpp:
51785 (WebCore::SVGStyledElement::view):
51786 (WebCore::SVGStyledElement::pushAttributeContext):
51787 * ksvg2/svg/SVGStyledElement.h:
51788 * kwq/WebCoreAXObject.mm:
51789 (-[WebCoreAXObject accessibilityShouldUseUniqueId]):
51790 (-[WebCoreAXObject role]):
51791 (-[WebCoreAXObject value]):
51792 (-[WebCoreAXObject position]):
51793 (-[WebCoreAXObject accessibilityIsIgnored]):
51794 (-[WebCoreAXObject accessibilityAttributeNames]):
51795 (-[WebCoreAXObject topView]):
51796 (-[WebCoreAXObject accessibilityAttributeValue:]):
51798 (WebCore::Frame::selectionRect):
51799 (WebCore::Frame::paint):
51800 (WebCore::Frame::adjustPageHeight):
51801 (WebCore::Frame::forceLayoutWithPageWidthRange):
51802 * page/FrameView.cpp:
51803 (WebCore::FrameView::adjustViewSize):
51804 (WebCore::FrameView::layout):
51805 * page/FrameView.h:
51806 * rendering/AutoTableLayout.cpp:
51807 (WebCore::shouldScaleColumns):
51808 * rendering/RenderBlock.cpp:
51809 (WebCore::RenderBlock::MarginInfo::MarginInfo):
51810 (WebCore::RenderBlock::isSelfCollapsingBlock):
51811 (WebCore::RenderBlock::layoutBlock):
51812 (WebCore::RenderBlock::paintChildren):
51813 (WebCore::RenderBlock::setSelectionState):
51814 (WebCore::RenderBlock::isSelectionRoot):
51815 (WebCore::RenderBlock::fillInlineSelectionGaps):
51816 (WebCore::RenderBlock::lowestPosition):
51817 (WebCore::RenderBlock::rightmostPosition):
51818 (WebCore::RenderBlock::leftmostPosition):
51819 (WebCore::RenderBlock::clearFloats):
51820 (WebCore::RenderBlock::nodeAtPoint):
51821 (WebCore::RenderBlock::calcBlocminMaxWidth):
51822 (WebCore::RenderBlock::inRootBlockContext):
51823 * rendering/RenderBox.cpp:
51824 (WebCore::RenderBox::setStyle):
51825 (WebCore::RenderBox::paintRootBoxDecorations):
51826 (WebCore::RenderBox::paintBackgroundExtended):
51827 (WebCore::RenderBox::calcHeight):
51828 (WebCore::RenderBox::calcPercentageHeight):
51829 (WebCore::RenderBox::availableHeightUsing):
51830 * rendering/RenderCanvas.cpp: Removed.
51831 * rendering/RenderCanvas.h: Removed.
51832 * rendering/RenderContainer.cpp:
51833 (WebCore::RenderContainer::removeChildNode):
51834 * rendering/RenderFileButton.cpp:
51835 (WebCore::RenderFileButton::RenderFileButton):
51836 * rendering/RenderFlow.cpp:
51837 (WebCore::RenderFlow::destroy):
51838 (WebCore::RenderFlow::paintLines):
51839 * rendering/RenderFrameSet.cpp:
51840 (WebCore::RenderFrameSet::layout):
51841 (WebCore::RenderFrameSet::userResize):
51842 (WebCore::RenderFrameSet::setResizing):
51843 * rendering/RenderImage.cpp:
51844 (WebCore::RenderImage::paint):
51845 * rendering/RenderLayer.cpp:
51846 (WebCore::RenderLayer::updateLayerPositions):
51847 (WebCore::RenderLayer::updateLayerPosition):
51848 (WebCore::RenderLayer::stackingContext):
51849 (WebCore::RenderLayer::enclosingPositionedAncestor):
51850 (WebCore::RenderLayer::convertToLayerCoords):
51851 (WebCore::RenderLayer::scrollToOffset):
51852 (WebCore::isSubframeCanvas):
51853 (WebCore::RenderLayer::intersectsDamageRect):
51854 * rendering/RenderLayer.h:
51855 (WebCore::RenderLayer::isStackingContext):
51856 * rendering/RenderListMarker.cpp:
51857 (WebCore::RenderListMarker::paint):
51858 * rendering/RenderObject.cpp:
51859 (WebCore::RenderObject::scroll):
51860 (WebCore::RenderObject::containingBlock):
51861 (WebCore::RenderObject::repaint):
51862 (WebCore::RenderObject::repaintRectangle):
51863 (WebCore::RenderObject::repaintAfterLayoutIfNeeded):
51864 (WebCore::RenderObject::draggableNode):
51865 (WebCore::RenderObject::selectionStartEnd):
51866 (WebCore::RenderObject::setStyle):
51867 (WebCore::RenderObject::viewRect):
51868 (WebCore::RenderObject::view):
51869 (WebCore::RenderObject::container):
51870 (WebCore::RenderObject::removeFromObjectLists):
51871 (WebCore::RenderObject::scheduleRelayout):
51872 (WebCore::RenderObject::imageChanged):
51873 (WebCore::RenderObject::maximalOutlineSize):
51874 * rendering/RenderObject.h:
51875 (WebCore::RenderObject::isRenderView):
51876 * rendering/RenderTextArea.cpp:
51877 (WebCore::RenderTextArea::RenderTextArea):
51878 * rendering/RenderThemeMac.mm:
51879 (WebCore::RenderThemeMac::paintCheckbox):
51880 (WebCore::RenderThemeMac::paintRadio):
51881 (WebCore::RenderThemeMac::paintButton):
51882 * rendering/RenderTreeAsText.cpp:
51883 (externalRepresentation):
51884 * rendering/RenderView.cpp: Added.
51885 (WebCore::RenderView::RenderView):
51886 (WebCore::RenderView::~RenderView):
51887 (WebCore::RenderView::calcHeight):
51888 (WebCore::RenderView::calcWidth):
51889 (WebCore::RenderView::calcMinMaxWidth):
51890 (WebCore::RenderView::layout):
51891 (WebCore::RenderView::absolutePosition):
51892 (WebCore::RenderView::paint):
51893 (WebCore::RenderView::paintBoxDecorations):
51894 (WebCore::RenderView::repaintViewRectangle):
51895 (WebCore::RenderView::getAbsoluteRepaintRect):
51896 (WebCore::RenderView::computeAbsoluteRepaintRect):
51897 (WebCore::RenderView::absoluteRects):
51898 (WebCore::RenderView::selectionRect):
51899 (WebCore::RenderView::setSelection):
51900 (WebCore::RenderView::clearSelection):
51901 (WebCore::RenderView::selectionStartEnd):
51902 (WebCore::RenderView::updateWidgetPositions):
51903 (WebCore::RenderView::addWidget):
51904 (WebCore::RenderView::removeWidget):
51905 (WebCore::RenderView::viewRect):
51906 (WebCore::RenderView::docHeight):
51907 (WebCore::RenderView::docWidth):
51908 (WebCore::RenderView::setBestTruncatedAt):
51909 * rendering/RenderView.h: Added.
51910 (WebCore::RenderView::renderName):
51911 (WebCore::RenderView::isRenderView):
51912 (WebCore::RenderView::frameView):
51913 * rendering/RenderWidget.cpp:
51914 (WebCore::RenderWidget::RenderWidget):
51915 (WebCore::RenderWidget::destroy):
51916 (WebCore::RenderWidget::updateWidgetPosition):
51917 * rendering/RenderWidget.h:
51918 (WebCore::RenderWidget::widget):
51919 * rendering/bidi.cpp:
51920 (WebCore::RenderBlock::layoutInlineChildren):
51922 2006-05-30 Tim Omernick <timo@apple.com>
51926 <rdar://problem/4567776> REGRESSION: window.open() links do not work at www.newarchery.com
51928 * bindings/js/kjs_window.cpp:
51929 (KJS::WindowFunc::callAsFunction):
51930 Set the URL in the ResourceRequest; otherwise, it'll be uninitialized and createNewWindow() will
51931 not be able to load the URL into a pre-existing frame.
51933 2006-05-30 Sam Weinig <sam.weinig@gmail.com>
51935 Reviewed by Maciej, landed by Beth.
51937 - fix for http://bugs.webkit.org/show_bug.cgi?id=9137
51938 Children with percentage heights of absolutely positioned element
51939 with height: auto and top and bottom non-auto does not lay out
51944 * rendering/RenderBox.cpp:
51945 (WebCore::RenderBox::calcPercentageHeight):
51946 (WebCore::RenderBox::calcReplacedHeightUsing):
51948 2006-05-30 Sam Weinig <sam.weinig@gmail.com>
51950 Reviewed by Hyatt, landed by Beth.
51952 - Fix for http://bugs.webkit.org/show_bug.cgi?id=9085
51953 Absolutely positioned objects with 'height': auto and 'top': and
51954 'bottom': non-auto should not be content based
51956 * rendering/RenderBox.cpp:
51957 (WebCore::RenderBox::calcAbsoluteVertical):
51958 (WebCore::RenderBox::calcAbsoluteVerticalValues):
51959 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
51960 (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
51962 2006-05-30 Eric Seidel <eric@webkit.org>
51964 Reviewed by andersca.
51966 Small amount of svg-related code cleanup.
51967 No test case possible.
51969 * ksvg2/svg/SVGColor.h:
51970 * ksvg2/svg/SVGLength.cpp:
51971 (SVGLength::SVGLength):
51972 (SVGLength::value):
51973 * ksvg2/svg/SVGMarkerElement.cpp:
51974 * ksvg2/svg/SVGMatrix.cpp:
51975 (SVGMatrix::SVGMatrix):
51977 (SVGMatrix::postMultiply):
51978 (SVGMatrix::inverse):
51979 (SVGMatrix::postTranslate):
51980 (SVGMatrix::postScale):
51981 (SVGMatrix::postScaleNonUniform):
51982 (SVGMatrix::postRotate):
51983 (SVGMatrix::postRotateFromVector):
51984 (SVGMatrix::postFlipX):
51985 (SVGMatrix::postFlipY):
51986 (SVGMatrix::postSkewX):
51987 (SVGMatrix::postSkewY):
51988 (SVGMatrix::multiply):
51989 (SVGMatrix::translate):
51990 (SVGMatrix::scale):
51991 (SVGMatrix::scaleNonUniform):
51992 (SVGMatrix::rotate):
51993 (SVGMatrix::rotateFromVector):
51994 (SVGMatrix::flipX):
51995 (SVGMatrix::flipY):
51996 (SVGMatrix::skewX):
51997 (SVGMatrix::skewY):
51998 (SVGMatrix::setMatrix):
51999 (SVGMatrix::qmatrix):
52000 (SVGMatrix::removeScale):
52001 * ksvg2/svg/SVGMatrix.h:
52003 2006-05-30 Eric Seidel <eric@webkit.org>
52005 Reviewed by andersca.
52007 Small amount of bindings-related code cleanup.
52008 No test case possible.
52010 * bindings/js/JSHTMLFormElementCustom.cpp:
52011 (WebCore::JSHTMLFormElement::nameGetter):
52012 * bindings/js/JSXMLSerializer.cpp:
52013 (WebCore::JSXMLSerializerConstructorImp::JSXMLSerializerConstructorImp):
52014 (WebCore::JSXMLSerializerConstructorImp::implementsConstruct):
52015 (WebCore::JSXMLSerializerConstructorImp::construct):
52017 (WebCore::JSXMLSerializer::JSXMLSerializer):
52018 (WebCore::JSXMLSerializerProtoFunc::callAsFunction):
52019 * bindings/js/JSXMLSerializer.h:
52020 (WebCore::JSXMLSerializer::toBoolean):
52021 (WebCore::JSXMLSerializer::classInfo):
52022 (WebCore::JSXMLSerializer::):
52023 * bindings/js/kjs_window.cpp:
52024 (KJS::Window::getValueProperty):
52026 2006-05-27 Anders Carlsson <acarlsson@apple.com>
52028 * bindings/js/JSHTMLElementWrapperFactory.cpp:
52029 Correct include file names.
52031 2006-05-26 Justin Garcia <justin.garcia@apple.com>
52035 <rdar://problem/4564296> Mail crashes on Leopard9A184 when I attempt to compose a new message
52037 * dom/Position.cpp:
52038 (WebCore::Position::inRenderedContent):
52039 Removed a candidate at [html, 0].
52040 * editing/CreateLinkCommand.cpp:
52041 (WebCore::CreateLinkCommand::doApply): Added early return when there is no selection.
52042 * editing/InsertLineBreakCommand.cpp:
52043 (WebCore::InsertLineBreakCommand::doApply): Ditto.
52044 * editing/InsertTextCommand.cpp:
52045 (WebCore::InsertTextCommand::input): Ditto.
52046 * editing/Selection.cpp:
52047 (WebCore::Selection::validate): If visible positions can't be created from the endpoints,
52048 then create a null selection. Not doing this was making editing code think there was
52049 a valid, editable selection even though there wasn't.
52050 * editing/UnlinkCommand.cpp:
52051 (WebCore::UnlinkCommand::doApply): Early return.
52052 * editing/VisiblePosition.cpp:
52053 (WebCore::VisiblePosition::initDeepPosition): Special case the html/body element boundary.
52054 It looks like a non-editable/editable boundary since rootEditableElement stops at the body
52055 even if the html element is editable.
52057 2006-05-26 Adele Peterson <adele@apple.com>
52059 Reviewed by Justin.
52061 Fixes a mistake in my last checkin. Uses maxDeepOffset to get the end position for
52062 the textarea's inner div.
52064 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::textWithHardLineBreaks):
52066 2006-05-26 Adele Peterson <adele@apple.com>
52070 Added support for wrap=hard for new textarea implementation.
52072 Tests: fast/forms/textarea-appearance-wrap.html
52074 * dom/Range.h: Added version of toString that will convert BRs to newlines.
52075 * dom/Range.cpp: (WebCore::Range::toString):
52076 * editing/ReplaceSelectionCommand.cpp: (WebCore::ReplacementFragment::ReplacementFragment):
52077 When in plain-text mode, and a white-space mode that doesn't collapse whitespace, create a fragment with one text node.
52078 * editing/visible_units.cpp:
52079 (WebCore::previousLinePosition): Subtract scroll offset so the absolute position for the containing block is correct.
52080 (WebCore::nextLinePosition): ditto.
52081 * rendering/RenderText.cpp:
52082 (WebCore::RenderText::positionForCoordinates): If the position is equal to the left edge of the box,
52083 make the affinity downstream so the position doesn't jump back to the previous line.
52084 (WebCore::RenderText::atLineWrap): The logic was reversed here in a recent change.
52085 If the box is not at a line break, then its at a line wrap.
52086 (WebCore::RenderText::caretRect): Only go to the next text box if its at a line wrap and the
52087 affinity is also downstream. If its upstream, then the correct box is on the current line.
52088 (WebCore::RenderText::inlineBox): ditto.
52089 * rendering/RenderTextField.cpp:
52090 (WebCore::RenderTextField::updateFromElement): multi line controls don't need to check
52091 valueMatchesRenderer before updating the renderer. For textareas, the renderer should always try to update.
52092 This matches our old textarea behavior.
52093 (WebCore::RenderTextField::text): Pass true to textContent so it converts BRs to newlines.
52094 (WebCore::RenderTextField::textWithHardLineBreaks): Iterate through the RootLineBoxes to find the soft wraps and replace them with newlines.
52096 2006-05-26 Anders Carlsson <acarlsson@apple.com>
52100 http://bugs.webkit.org/show_bug.cgi?id=9127
52101 Invoke capturing event listeners when AT_TARGET
52103 * dom/EventTargetNode.cpp:
52104 (WebCore::EventTargetNode::handleLocalEvents):
52105 Invoke capturing event listeners for the AT_TARGET phase. This violates the
52106 DOM spec but it's what Mozilla does.
52108 2006-05-26 David Harrison <harrison@apple.com>
52110 Reviewed by John Sullivan.
52112 <rdar://problem/4514529> Add a list type parameter and a return value to _increaseSelectionListLevel
52114 * WebCore.vcproj/WebCore/WebCore.vcproj:
52115 * WebCore.xcodeproj/project.pbxproj:
52116 - Renamed ModifySelectionListLevelCommand .cpp and .h to ModifySelectionListLevel .cpp and .h
52118 * bridge/mac/WebCoreFrameBridge.h:
52119 * bridge/mac/WebCoreFrameBridge.mm:
52120 (-[WebCoreFrameBridge canIncreaseSelectionListLevel]):
52121 (-[WebCoreFrameBridge canDecreaseSelectionListLevel]):
52122 (-[WebCoreFrameBridge increaseSelectionListLevel]):
52123 (-[WebCoreFrameBridge decreaseSelectionListLevel]):
52124 - Call functions in IncreaseSelectionListLevelCommand or DecreaseSelectionListLevelCommand instead
52125 of ModifySelectionListLevelCommand.
52127 (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
52128 (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
52131 * editing/ModifySelectionListLevel.cpp: Added.
52132 - Renamed from ModifySelectionListLevelCommand.cpp
52133 - Made ModifySelectionListLevelCommand class into a useful base class for new
52134 classes IncreaseSelectionListLevelCommand and DecreaseSelectionListLevelCommand.
52136 (WebCore::ModifySelectionListLevelCommand::ModifySelectionListLevelCommand):
52137 (WebCore::getStartEndListChildren):
52138 (WebCore::ModifySelectionListLevelCommand::insertSiblingNodeRangeBefore):
52139 (WebCore::ModifySelectionListLevelCommand::appendSiblingNodeRange):
52140 - ModifySelectionListLevelCommand is base class for IncreaseSelectionListLevelCommand and DecreaseSelectionListLevelCommand
52142 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
52143 (WebCore::IncreaseSelectionListLevelCommand::listElement):
52144 (WebCore::canIncreaseListLevel):
52145 (WebCore::IncreaseSelectionListLevelCommand::doApply):
52146 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel):
52147 (WebCore::increaseSelectionListLevelWithType):
52148 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevel):
52149 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelOrdered):
52150 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelUnordered):
52151 - Now a subclass of ModifySelectionListLevelCommand
52152 - Added Ordered and Unordered increaser functions
52153 - Increaser functions return the list element that the items were moved into
52155 (WebCore::DecreaseSelectionListLevelCommand::DecreaseSelectionListLevelCommand):
52156 (WebCore::canDecreaseListLevel):
52157 (WebCore::DecreaseSelectionListLevelCommand::doApply):
52158 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel):
52159 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel):
52160 - No functional changes other than to become a subclass of ModifySelectionListLevelCommand
52162 * editing/ModifySelectionListLevel.h: Added.
52164 - Renamed from ModifySelectionListLevelCommand.cpp
52166 * editing/ModifySelectionListLevelCommand.cpp: Removed.
52167 - Renamed to ModifySelectionListLevel.cpp
52169 * editing/ModifySelectionListLevelCommand.h: Removed.
52170 - Renamed to ModifySelectionListLevel.h
52172 * editing/htmlediting.cpp:
52173 (WebCore::createOrderedListElement):
52174 (WebCore::createUnorderedListElement):
52175 * editing/htmlediting.h:
52177 2006-05-26 Steve Falkenburg <sfalken@apple.com>
52183 * WebCore.vcproj/WebCore/WebCore.vcproj:
52185 * ksvg2/scripts/make_names.pl:
52187 2006-05-26 Steve Falkenburg <sfalken@apple.com>
52193 * WebCore.vcproj/WebCore/WebCore.vcproj:
52196 2006-05-25 Dave Hyatt <hyatt@apple.com>
52198 Change default font size for fixed pitch to 13 to match Safari
52199 on Mac (and every other browser on the planet too).
52203 * bridge/win/FrameWin.cpp:
52204 (WebCore::FrameWin::FrameWin):
52205 * platform/win/FontCacheWin.cpp:
52206 (WebCore::FontCache::getFontLinkInterface):
52208 2006-05-25 Alice Liu <alice.liu@apple.com>
52212 * bindings/js/kjs_html.cpp:
52214 (KJS::HTMLElementFunction::callAsFunction):
52215 added case to handle namedItem for select elements
52216 * bindings/js/kjs_html.h:
52217 added enum value for bindings
52218 (KJS::JSHTMLElement::):
52219 * html/HTMLSelectElement.cpp:
52220 (WebCore::HTMLSelectElement::namedItem):
52221 implemented namedItem method
52222 * html/HTMLSelectElement.h:
52223 added prototype for namedItem method
52225 2006-05-25 Dave Hyatt <hyatt@apple.com>
52227 Make soft hyphens work on Win32 by special casing them
52228 along with normal hyphens.
52232 * rendering/break_lines.cpp:
52233 (WebCore::nextBreakablePosition):
52235 2006-05-25 Dave Hyatt <hyatt@apple.com>
52237 Implement the fallback method containsCharacters for
52238 checking if a font has the necessary glyphs to be
52239 selected as a fallback choide.
52241 * platform/win/FontDataWin.cpp:
52242 (WebCore::FontData::containsCharacters):
52244 2006-05-25 Dave Hyatt <hyatt@apple.com>
52246 For now eliminate the logical scale factor from Cairo.
52247 This enables bitmap fonts like MS Sans Serif to work on
52250 * platform/cairo/cairo/src/cairo-win32-font.c:
52251 (cairo_win32_scaled_font_select_font):
52252 * platform/cairo/cairo/src/cairo-win32-private.h:
52253 * platform/cairo/font-bug-patch.txt: Removed.
52254 * platform/cairo/scale-removal.txt: Added.
52255 * platform/win/FontCacheWin.cpp:
52256 (WebCore::FontCache::createFontPlatformData):
52257 * platform/win/FontDataWin.cpp:
52258 (WebCore::FontData::smallCapsFontData):
52259 (WebCore::FontData::platformWidthForGlyph):
52260 * platform/win/FontPlatformData.h:
52261 * platform/win/GlyphMapWin.cpp:
52262 (WebCore::GlyphMap::fillPage):
52264 2006-05-25 Mitz Pettel <opendarwin.org@mitzpettel.com>
52266 Reviewed by hyatt. Landed by eseidel.
52268 - fix http://bugs.webkit.org/show_bug.cgi?id=8848
52269 TFOOT borders are copied to THEAD and TBODY
52271 Test: fast/table/border-collapsing/border-collapsing-head-foot.html
52273 * rendering/RenderTable.cpp:
52274 (WebCore::RenderTable::sectionAbove): Added.
52275 (WebCore::RenderTable::sectionBelow): Added.
52276 (WebCore::RenderTable::cellAbove): Changed to call sectionAbove.
52277 (WebCore::RenderTable::cellBelow): Changed to call sectionBelow.
52278 * rendering/RenderTable.h:
52279 * rendering/RenderTableCell.cpp:
52280 (WebCore::RenderTableCell::collapsedTopBorder): Changed to call sectionAbove.
52281 (WebCore::RenderTableCell::collapsedBottomBorder): Changed to call sectionBelow.
52283 2006-05-25 Mitz Pettel <opendarwin.org@mitzpettel.com>
52285 Reviewed by hyatt. Landed by eseidel.
52287 - fix http://bugs.webkit.org/show_bug.cgi?id=3297
52288 height property is not honored on table rows
52290 * rendering/RenderTableSection.cpp:
52291 (WebCore::RenderTableSection::addChild): Assign the row renderer to the
52293 (WebCore::RenderTableSection::calcRowHeight): Fix off-by-one index bug
52294 and add vertical spacing only for grid rows that have a renderer.
52295 (WebCore::RenderTableSection::recalcCells): Assign row renderers to
52298 2006-05-25 Rob Buis <buis@kde.org>
52300 Reviewed by darin. Landed by eseidel.
52302 Fix for http://bugs.webkit.org/show_bug.cgi?id=5978
52303 WebKIt+SVG should use SVGDocumentImpl for image/svg+xml
52305 Make sure SVGDocument is created for standalone svg
52308 * ksvg2/svg/SVGDOMImplementation.cpp:
52309 (SVGDOMImplementation::instance):
52310 (SVGDOMImplementation::createDocument):
52311 * ksvg2/svg/SVGDOMImplementation.h:
52312 * ksvg2/svg/SVGDocument.cpp:
52313 (WebCore::SVGDocument::SVGDocument):
52314 (WebCore::SVGDocument::~SVGDocument):
52315 * ksvg2/svg/SVGDocument.h:
52316 * ksvg2/svg/SVGTests.cpp:
52317 (WebCore::SVGTests::isValid):
52318 * ksvg2/svg/SVGTitleElement.cpp:
52319 * ksvg2/svg/SVGTitleElement.h:
52321 (WebCore::Frame::begin):
52323 2006-05-25 Rob Buis <buis@kde.org>
52325 Reviewed by darin. Landed by eseidel.
52327 http://bugs.webkit.org/show_bug.cgi?id=5889
52328 HTMLNames.* should be generated using make_names.pl
52330 Use a patched make_names.pl to autogenerate HTMLNames.*
52332 * DerivedSources.make:
52333 * WebCore.xcodeproj/project.pbxproj:
52334 * html/HTMLNames.cpp: Removed.
52335 * html/HTMLNames.h: Removed.
52336 * html/HTMLTagNames.in: Added.
52337 * html/HTMLAttributeNames.in: Added.
52338 * ksvg2/scripts/make_names.pl:
52340 2006-05-25 Eric Seidel <eric@webkit.org>
52342 Reviewed by andersca.
52344 Add "HasIndexGetter" support to bindings autogen system.
52345 http://bugs.webkit.org/show_bug.cgi?id=9057
52347 * DerivedSources.make:
52348 * WebCore.xcodeproj/project.pbxproj:
52349 * bindings/js/JSHTMLInputElementBase.cpp:
52350 * bindings/js/kjs_css.cpp:
52352 * bindings/js/kjs_css.h:
52353 * bindings/js/kjs_dom.cpp:
52354 (KJS::DOMNamedNodeMap::getOwnPropertySlot):
52355 * bindings/scripts/CodeGeneratorJS.pm:
52356 * css/CSSValueList.idl: Added.
52358 2006-05-24 David Hyatt <hyatt@apple.com>
52360 Implement font aliasing of family names for Courier/Courier New,
52361 Arial/Helvetica, and Times/Times New Roman. This behavior matches
52366 Test cases not really possible, since they would have to rely on people
52367 not having the fonts installed (so not having installed Office).
52369 * platform/FontCache.cpp:
52370 (WebCore::alternateFamilyName):
52371 (WebCore::FontCache::getCachedFontPlatformData):
52372 * platform/FontCache.h:
52373 * rendering/RenderContainer.cpp:
52374 (WebCore::RenderContainer::removeLeftoverAnonymousBoxes):
52376 === WebCore-521.11 ===
52378 2006-05-24 Justin Garcia <justin.garcia@apple.com>
52382 <rdar://problem/4549610> REGRESSION: No initial cursor in Mail reply or Blot document
52383 <rdar://problem/4560698> Mail is very crashy in Leopard9A182, WebCore::Range::compareBoundaryPoints(WebCore::Node*, int, WebCore::Node*, int)
52386 (WebCore::Frame::setSelectionFromNone): Find the body and stick a caret
52389 2006-05-24 Geoffrey Garen <ggaren@apple.com>
52391 Rubber stamped by Anders.
52393 Removed meaningless 'dom::' prefix in IDL files.
52396 * html/CanvasRenderingContext2D.idl:
52397 * html/HTMLOptionElement.idl:
52399 2006-05-24 Geoffrey Garen <ggaren@apple.com>
52401 Reviewed by andersca.
52403 - Fixed http://bugs.webkit.org/show_bug.cgi?id=9095
52404 regression: can't select by setting option.selected to true
52406 'text' and 'selected' were erroneously marked read-only for option elements.
52408 * html/HTMLOptionElement.idl:
52410 2006-05-24 Geoffrey Garen <ggaren@apple.com>
52414 - WebCore half of fix for <rdar://problem/4557926> TOT REGRESSION: Crash
52415 occurs when attempting to view image in slideshow mode at
52416 http://d.smugmug.com/gallery/581716 ( KJS::IfNode::execute
52417 (KJS::ExecState*) + 312)
52419 On alternate threads, DOMObjects remain in the
52420 ScriptInterpreter's cache because they're not collected. So, they
52421 need an opportunity to mark their children.
52423 I'm not particularly happy with this solution because it fails to
52424 resolve many outstanding issues with the DOM object cache. Since none
52425 of those issues is a crasher or a serious compatibility concern,
52426 and since the behavior of other browsers is not much to go on in this
52427 case, I've filed <rdar://problem/4561439> about that, and I'm moving
52430 Also added functionality for testing garbage collection from inside
52433 Also removed XMLHttpRequest from the DOM object cache because XMLHttpRequest
52434 objects aren't accessed through the DOM.
52436 Also added JS locking around access to some shared data structures in
52437 WebCoreJavaScript, even though it probably doesn't matter in practice.
52439 * bindings/js/JSXMLHttpRequest.cpp:
52440 (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
52441 (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
52442 * bindings/js/kjs_binding.cpp:
52443 (KJS::ScriptInterpreter::mark):
52444 * bindings/js/kjs_binding.h:
52445 * bridge/mac/WebCoreJavaScript.h:
52446 * bridge/mac/WebCoreJavaScript.mm:
52448 (+[WebCoreJavaScript objectCount]):
52449 (+[WebCoreJavaScript interpreterCount]):
52450 (+[WebCoreJavaScript protectedObjectCount]):
52451 (+[WebCoreJavaScript garbageCollect]):
52452 (+[WebCoreJavaScript garbageCollectOnAlternateThread:]):
52453 (+[WebCoreJavaScript shouldPrintExceptions]):
52454 (+[WebCoreJavaScript setShouldPrintExceptions:]):
52456 2006-05-24 Dave Hyatt <hyatt@apple.com>
52458 Fix the font cache corruption problems on Win32. Move the
52459 native font destruction code out of FontPlatformData and
52460 into FontData. Implement smallCaps.
52462 * platform/win/FontDataWin.cpp:
52463 (WebCore::FontData::platformDestroy):
52464 (WebCore::FontData::smallCapsFontData):
52465 * platform/win/FontPlatformDataWin.cpp:
52466 (WebCore::FontPlatformData::~FontPlatformData):
52468 2006-05-24 Anders Carlsson <acarlsson@apple.com>
52470 Reviewed by Maciej.
52472 http://bugs.webkit.org/show_bug.cgi?id=9093
52473 Implement document.scripts
52475 * bindings/js/kjs_html.cpp:
52476 (KJS::JSHTMLDocument::getValueProperty):
52477 Return document.scripts() instead of a placeholder object.
52479 * dom/Document.cpp:
52480 (WebCore::Document::scripts):
52482 Add Document::scripts.
52484 * html/HTMLCollection.cpp:
52485 (WebCore::HTMLCollection::traverseNextItem):
52486 * html/HTMLCollection.h:
52487 (WebCore::HTMLCollection::):
52488 Add scripts collection type which traverses all script elements.
52490 2006-05-24 Anders Carlsson <acarlsson@apple.com>
52494 http://bugs.webkit.org/show_bug.cgi?id=9092
52495 innerText is empty for elements without renderers
52498 (WebCore::Node::textContent):
52500 Add optional convertBRsToNewlines argument for textContent.
52502 * html/HTMLElement.cpp:
52503 (WebCore::HTMLElement::innerText):
52504 If the element doesn't have a renderer, return textContent.
52506 2006-05-24 Dave Hyatt <hyatt@apple.com>
52508 Fix a bug with the computation of the Cairo glyph offsets
52509 on the Win32 code path.
52512 * platform/GlyphBuffer.h:
52513 (WebCore::GlyphBuffer::add):
52514 * platform/win/FontWin.cpp:
52515 (WebCore::Font::drawGlyphs):
52517 2006-05-23 Dave Hyatt <hyatt@apple.com>
52519 Disable some code in Cairo that is attempting to clip
52520 runs of text to their glyph boundaries, since:
52522 (a) Why re-measure text again when I just gave you
52523 the glyph bounds anyway.
52524 (b) It gets the measurements wrong.
52526 * platform/GlyphBuffer.h:
52527 (WebCore::GlyphBuffer::add):
52528 * platform/cairo/cairo/src/cairo-surface-fallback.c:
52529 (_cairo_surface_fallback_show_glyphs):
52530 * platform/cairo/clipping-cleartype-font-bug-patch.txt: Added.
52531 * platform/win/FontWin.cpp:
52532 (WebCore::Font::drawGlyphs):
52534 2006-05-23 Timothy Hatcher <timothy@apple.com>
52538 Remove the recent idl files from the WebCore target to prevent them
52539 from being copied into the framework resources.
52541 * WebCore.xcodeproj/project.pbxproj:
52543 2006-05-23 John Sullivan <sullivan@apple.com>
52545 Reviewed by Justin Garcia and Levi Weintraub.
52547 - fixed Bug 9072: REGRESSION: Misspelling marker incorrect in editing/deleting/delete-and-undo.html
52549 * dom/Document.cpp:
52550 (WebCore::Document::removeMarkers):
52551 One more time to get this right, ugh. There is still one case where we don't want to advance the
52552 iterator, and that's when we remove a marker and do not insert a replacement marker. So I undid
52553 my previous patch, and added it++ to each of the two cases that insert a replacement marker. Now
52554 the layout tests pass even with the pixel tests enabled.
52556 2006-05-23 Dave Hyatt <hyatt@apple.com>
52558 Do an initial implementation of CookieJar on Win32. No policy
52559 checking yet and the cookies are just always on.
52563 * WebCore.vcproj/WebCore/WebCore.vcproj:
52564 * platform/win/CookieJarWin.cpp: Added.
52565 (WebCore::setCookies):
52566 (WebCore::cookies):
52567 (WebCore::cookiesEnabled):
52568 * platform/win/TemporaryLinkStubs.cpp:
52570 2006-05-23 Dave Hyatt <hyatt@apple.com>
52572 Fix the JS autogeneration for WebCore so that the hashtables
52573 are correct on Win32.
52575 Switch to using GetCharWidthI so that we can obtain widths
52576 for glyphs instead of having to obtain them from UChars.
52578 Reviewed by eric (autogeneration) and maciej (fonts)
52580 * bindings/scripts/CodeGeneratorJS.pm:
52581 * platform/Font.cpp:
52582 (WebCore::WidthIterator::advance):
52583 * platform/FontData.cpp:
52584 (WebCore::m_smallCapsFontData):
52585 (WebCore::FontData::widthForGlyph):
52586 * platform/FontData.h:
52587 * platform/mac/FontDataMac.mm:
52588 (-[NSFont WebCore]):
52589 * platform/win/FontDataWin.cpp:
52590 (WebCore::FontData::platformWidthForGlyph):
52592 2006-05-23 Levi Weintraub <lweintraub@apple.com>
52596 Cleaned up changes to markup by adding the non-virtual
52597 nodeNamePreservingCase accessor function.
52600 (WebCore::Element::nodeNamePreservingCase):
52602 * editing/markup.cpp:
52603 (WebCore::startMarkup):
52604 (WebCore::endMarkup):
52606 2006-05-23 John Sullivan <sullivan@apple.com>
52608 Reviewed by Anders Carlsson.
52610 * dom/Document.cpp:
52611 (WebCore::Document::removeMarkers):
52612 Fix to my previous checkin (which broke a layout test).
52613 Advance the iterator position every time through the loop; formerly it was not advanced in the
52614 case where a marker was actually removed, causing an infinite loop in certain cases. Also
52615 modified a comment that was confusing the situation by falsely claiming that iterating over a
52616 just-inserted node would always be OK.
52618 2006-05-23 Anders Carlsson <acarlsson@apple.com>
52620 Reviewed by Maciej.
52622 http://bugs.webkit.org/show_bug.cgi?id=9017
52623 Weather2.css incorrectly treated as JavaScript file @ www.live.com
52626 (WebCore::Element::getAttribute):
52627 (WebCore::Element::setAttribute):
52628 (WebCore::Element::removeAttribute):
52629 (WebCore::Element::getAttributeNode):
52630 (WebCore::Element::hasAttribute):
52631 Use new getAttributeItem method.
52633 * dom/NamedAttrMap.cpp:
52634 (WebCore::NamedAttrMap::getNamedItem):
52635 (WebCore::NamedAttrMap::removeNamedItem):
52636 Use new getAttributeItem method.
52638 (WebCore::NamedAttrMap::getAttributeItem):
52639 * dom/NamedAttrMap.h:
52640 New method which returns the attribute based on the nodeName.
52642 2006-05-22 Eric Seidel <eric@webkit.org>
52644 Rubber-stamped by adele.
52646 * bindings/js/kjs_html.h: simple style cleanup.
52648 === WebCore-521.10 ===
52650 2006-05-22 John Sullivan <sullivan@apple.com>
52652 Reviewed by Anders Carlsson.
52654 - fixed Bug 9038: Rework Document::TextMarker mechanism to not use deprecated data structures
52656 Changed Document::markersForNode and Document::MarkerMap to use Vector rather than
52657 DeprecatedValueList and DeprecatedValueListIterator.
52660 * dom/Document.cpp:
52661 (WebCore::Document::addMarker):
52662 (WebCore::Document::copyMarkers):
52663 (WebCore::Document::removeMarkers):
52664 (WebCore::Document::markersForNode):
52665 (WebCore::Document::repaintMarkers):
52666 (WebCore::Document::shiftMarkers):
52668 * rendering/InlineTextBox.cpp:
52669 (WebCore::InlineTextBox::paintAllMarkersOfType):
52671 2006-05-22 Levi Weintraub <lweintraub@apple.com>
52675 - Fix for http://bugs.webkit.org/show_bug.cgi?id=8393
52676 <br>s created by createMarkup aren't valid xhtml
52677 Fixed uppered output from innerHTML
52679 * editing/markup.cpp:
52680 (WebCore::startMarkup):
52681 (WebCore::endMarkup):
52683 2006-05-21 Dave Hyatt <hyatt@apple.com>
52685 Fix Win32 bustage. I forgot to add a bunch of files.
52686 Also tweak some existing functions a bit (just cleanup).
52688 * platform/FontCache.cpp:
52689 (WebCore::FontCache::getCachedFontPlatformData):
52690 (WebCore::FontCache::getFontData):
52691 * platform/FontCache.h:
52692 * platform/mac/FontCacheMac.mm:
52693 (WebCore::FontCache::createFontPlatformData):
52694 * platform/win/FontDataWin.cpp:
52695 (WebCore::FontData::platformDestroy):
52696 (WebCore::FontData::smallCapsFontData):
52698 2006-05-21 Adele Peterson <adele@apple.com>
52700 Reviewed by Maciej.
52702 - Fix for http://bugs.webkit.org/show_bug.cgi?id=9016
52703 crash loading live.com in TreeShared::ref because accessing RenderTextField::text() can destroy the RenderTextField
52705 * rendering/RenderTextField.cpp: (WebCore::RenderTextField::text):
52706 Reverting recent change to user innerText instead of textContent. For textareas,
52707 we need a better solution than textContent that also takes newlines into account,
52708 but this should fix this crasher.
52710 2006-05-21 Anders Carlsson <acarlsson@apple.com>
52714 * ForwardingHeaders/wtf/MathExtras.h: Added.
52716 2006-05-20 Dave Hyatt <hyatt@apple.com>
52718 Switch on Cairo-based text rendering on Win32. This is tracked
52723 * WebCore.vcproj/WebCore/WebCore.vcproj:
52725 * platform/Font.cpp:
52726 (WebCore::WidthIterator::advance):
52727 (WebCore::WidthIterator::normalizeVoicingMarks):
52728 (WebCore::Font::width):
52730 (WebCore::Font::isRoundingHackCharacter):
52731 * platform/FontCache.cpp:
52732 (WebCore::computeHash):
52733 (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
52734 (WebCore::FontPlatformDataCacheKeyTraits::emptyValue):
52735 (WebCore::FontDataCacheKeyTraits::deletedValue):
52736 (WebCore::FontDataCacheKeyTraits::emptyValue):
52737 * platform/FontData.cpp:
52738 (WebCore::m_smallCapsFontData):
52739 (WebCore::FontData::widthForGlyph):
52740 * platform/FontData.h:
52741 * platform/FontPlatformData.h: Removed.
52742 * platform/GlyphBuffer.h:
52743 (WebCore::GlyphBuffer::clear):
52744 (WebCore::GlyphBuffer::glyphs):
52745 (WebCore::GlyphBuffer::advances):
52746 (WebCore::GlyphBuffer::swap):
52747 (WebCore::GlyphBuffer::glyphAt):
52748 (WebCore::GlyphBuffer::advanceAt):
52749 (WebCore::GlyphBuffer::add):
52750 * platform/GlyphMap.cpp:
52751 (WebCore::GlyphMap::locatePage):
52752 * platform/cairo/cairo/src/cairo-win32-font.c:
52753 (cairo_win32_scaled_font_select_font):
52754 * platform/cairo/font-bug-patch.txt: Added.
52755 * platform/mac/FontDataMac.mm:
52756 (-[NSFont WebCore]):
52757 * platform/mac/FontPlatformData.h: Added.
52758 (WebCore::FontPlatformData::FontPlatformData):
52759 * platform/win/FontDataWin.cpp: Added.
52760 (WebCore::FontData::platformInit):
52761 (WebCore::FontData::platformDestroy):
52762 (WebCore::FontData::smallCapsFontData):
52763 (WebCore::FontData::containsCharacters):
52764 (WebCore::FontData::determinePitch):
52765 (WebCore::FontData::platformWidthForGlyph):
52766 * platform/win/FontPlatformDataWin.cpp:
52768 (WebCore::FontPlatformData::~FontPlatformData):
52769 * platform/win/FontWin.cpp:
52770 (WebCore::notImplemented):
52771 (WebCore::Font::drawGlyphs):
52772 (WebCore::Font::selectionRectForComplexText):
52773 (WebCore::Font::drawComplexText):
52774 (WebCore::Font::floatWidthForComplexText):
52775 (WebCore::Font::offsetForPositionForComplexText):
52777 2006-05-20 Alexey Proskuryakov <ap@nypop.com>
52781 - http://bugs.webkit.org/show_bug.cgi?id=8991
52782 REGRESSION: missing or broken CSS custom cursors are displayed as
52783 a missing image icon
52785 * page/FrameView.cpp:
52786 (WebCore::selectCursor): Fallback to CURSOR_AUTO if the image is an error image.
52787 * manual-tests/custom-cursors.html: Added.
52789 2006-05-20 Mitz Pettel <opendarwin.org@mitzpettel.com>
52791 Reviewed and landed by ap.
52793 - fix http://bugs.webkit.org/show_bug.cgi?id=9009
52794 REGRESSION: ToT crash in WebCore at Zap2it
52796 Test: fast/table/empty-section-crash.html
52798 * rendering/RenderTableSection.cpp:
52799 (WebCore::RenderTableSection::paint): Return immediately if the section
52800 has 0 rows or 0 columns.
52802 2006-05-19 Levi Weintraub <lweintraub@apple.com>
52804 Reviewed by justin.
52806 <http://bugs.webkit.org/show_bug.cgi?id=8931>
52807 Drag caret not painted for editable sub-frames
52809 Moved the drag caret out of Frame and into Page.
52810 Only the Frame that contains the drag caret will paint it.
52812 * editing/SelectionController.h:
52814 (WebCore::Frame::dragCaret):
52815 (WebCore::Frame::setDragCaret):
52816 (WebCore::Frame::paintDragCaret):
52817 * page/FramePrivate.h:
52819 (WebCore::Page::dragCaret):
52820 (WebCore::Page::setDragCaret):
52823 2006-05-19 Alice Liu <alice.liu@apple.com>
52827 * html/HTMLButtonElement.idl:
52828 added support for HTMLButtonElement.click()
52830 2006-05-19 Geoffrey Garen <ggaren@apple.com>
52834 - Fixed non-autogenerated global constructors to match autogenerated
52835 ones and FF. (Found this bug while @ the GOOG.)
52837 (1) They're no longer read-only, so they can be overridden.
52838 (2) They now have the default object prototype, so they can do things
52839 like 'toString' and 'valueOf', necessary for general functionality,
52840 including my layout test.
52841 (3) Their prototype properties are now enumerable and not read-only.
52843 * bindings/js/JSDOMParser.cpp:
52844 (KJS::DOMParserConstructorImp::DOMParserConstructorImp):
52845 * bindings/js/JSXMLHttpRequest.cpp:
52846 (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
52847 * bindings/js/JSXMLHttpRequest.h:
52848 * bindings/js/JSXMLSerializer.cpp:
52849 (KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp):
52850 * bindings/js/JSXSLTProcessor.cpp:
52851 (KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
52852 * bindings/js/kjs_html.cpp:
52853 (KJS::OptionConstructorImp::OptionConstructorImp):
52854 (KJS::ImageConstructorImp::ImageConstructorImp):
52855 * bindings/js/kjs_window.cpp:
52857 2006-05-19 Anders Carlsson <acarlsson@apple.com>
52861 http://bugs.webkit.org/show_bug.cgi?id=8983
52862 Autogenerate another 22 HTML classes
52864 Already covered by existing DOM tests.
52866 * DerivedSources.make:
52867 * WebCore.vcproj/WebCore/WebCore.vcproj:
52868 * WebCore.xcodeproj/project.pbxproj:
52869 Add new IDL files and generated sources.
52871 * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
52872 (WebCore::JSCanvasRenderingContext2D::drawImage):
52873 (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
52874 (WebCore::JSCanvasRenderingContext2D::createPattern):
52875 Use JSHTMLImageElement::info in inherits.
52877 * bindings/js/JSHTMLElementWrapperFactory.cpp:
52878 (WebCore::createJSWrapper):
52879 Add macros for the functions and the code to populate the hash set.
52881 * bindings/js/kjs_html.cpp:
52883 (KJS::JSHTMLElement::classInfo):
52884 (KJS::JSHTMLElement::accessors):
52885 (KJS::HTMLElementFunction::callAsFunction):
52886 * bindings/js/kjs_html.h:
52887 (KJS::JSHTMLElement::):
52890 * bindings/scripts/CodeGeneratorJS.pm:
52891 Add support for creating a JS object from a HTMLCollection.
52893 * html/HTMLAreaElement.idl: Added.
52894 * html/HTMLBRElement.idl: Added.
52895 * html/HTMLBaseFontElement.idl: Added.
52896 * html/HTMLBlockquoteElement.idl: Added.
52898 * html/HTMLBodyElement.cpp:
52899 (WebCore::HTMLBodyElement::scrollLeft):
52900 (WebCore::HTMLBodyElement::setScrollLeft):
52901 (WebCore::HTMLBodyElement::scrollTop):
52902 (WebCore::HTMLBodyElement::setScrollTop):
52903 (WebCore::HTMLBodyElement::scrollHeight):
52904 (WebCore::HTMLBodyElement::scrollWidth):
52905 * html/HTMLBodyElement.h:
52906 Add new functions that used to be implemented in kjs_html.cpp
52908 * html/HTMLBodyElement.idl: Added.
52909 * html/HTMLFieldSetElement.idl: Added.
52910 * html/HTMLFontElement.idl: Added.
52911 * html/HTMLHRElement.idl: Added.
52912 * html/HTMLHeadingElement.idl: Added.
52913 * html/HTMLImageElement.idl: Added.
52914 * html/HTMLIsIndexElement.idl: Added.
52915 * html/HTMLLIElement.idl: Added.
52916 * html/HTMLLabelElement.idl: Added.
52917 * html/HTMLLegendElement.idl: Added.
52918 * html/HTMLMapElement.idl: Added.
52919 * html/HTMLMenuElement.idl: Added.
52920 * html/HTMLModElement.idl: Added.
52921 * html/HTMLParagraphElement.idl: Added.
52922 * html/HTMLParamElement.idl: Added.
52923 * html/HTMLPreElement.idl: Added.
52924 * html/HTMLQuoteElement.idl: Added.
52925 * html/HTMLScriptElement.idl: Added.
52927 2006-05-18 David Hyatt <hyatt@apple.com>
52929 Turn off responding to font changes while running. It doesn't work
52934 * platform/FontCache.cpp:
52935 (WebCore::FontCache::getCachedFontPlatformData):
52936 * platform/FontCache.h:
52937 * platform/GlyphMap.h:
52938 (WebCore::GlyphMap::~GlyphMap):
52939 * platform/GlyphWidthMap.h:
52940 (WebCore::GlyphWidthMap::~GlyphWidthMap):
52941 * platform/mac/FontCacheMac.mm:
52942 (WebCore::FontCache::platformInit):
52944 2006-05-18 Darin Adler <darin@apple.com>
52946 - try to fix the Windows build
52948 * platform/TextEncoding.h: Changed a ";" to a ",".
52949 * WebCore.vcproj/WebCore/WebCore.vcproj: Removed
52950 JSCanvasRenderingContext2DBase.cpp and
52951 JSCanvasRenderingContext2DBase.h. Added
52952 JSCanvasRenderingContext2DCustom.cpp.
52954 2006-05-18 Sam Weinig <sam.weinig@gmail.com>
52958 Fix for <http://bugs.webkit.org/show_bug.cgi?id=8896>
52959 Bug 8896: Absolutely positioned elements should use their parent's
52960 direction when left, right and width are auto in quirks mode.
52962 Use the parent's direction instead of the containing
52963 block's in quirks mode for absolute positioning to match
52966 * rendering/RenderBox.cpp:
52967 (WebCore::RenderBox::calcAbsoluteHorizontal):
52968 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
52969 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
52970 * rendering/RenderBox.h:
52972 2006-05-18 Mitz Pettel <opendarwin.org@mitzpettel.com>
52974 Reviewed and tweaked (way too much) by Darin.
52976 - fix http://bugs.webkit.org/show_bug.cgi?id=8937
52977 EncodingMap uses 0 as its empty value but 0 is a valid TextEncodingID
52979 * platform/CharsetNames.cpp:
52980 (WebCore::TextEncodingIDHashTraits::emptyValue): Added a non-zero empty value,
52981 InvalidEncoding, and used InvalidEncoding2 for the deleted value.
52982 (WebCore::buildCharsetMaps): Added an assertion that the deleted and empty
52983 values are not valid encodings.
52984 * platform/TextEncoding.h: Defined InvalidEncoding2.
52986 2006-05-18 David Hyatt <hyatt@apple.com>
52988 Horrible glyph map performance regression fix.
52989 The initial page of the map was being rebuilt over and over again.
52991 Reviewed by andersca
52993 * platform/GlyphMap.cpp:
52994 (WebCore::GlyphMap::locatePage):
52995 * platform/GlyphWidthMap.cpp:
52996 (WebCore::GlyphWidthMap::locatePage):
52998 2006-05-18 Anders Carlsson <acarlsson@apple.com>
53002 http://bugs.webkit.org/show_bug.cgi?id=8964
53003 Autogenerate more HTML classes
53005 * DerivedSources.make:
53006 * WebCore.xcodeproj/project.pbxproj:
53009 * bindings/js/JSHTMLElementWrapperFactory.cpp:
53010 (WebCore::createAnchorWrapper):
53011 (WebCore::createAppletWrapper):
53012 (WebCore::createDivWrapper):
53013 (WebCore::createDirectoryWrapper):
53014 (WebCore::createDListWrapper):
53015 (WebCore::createHtmlWrapper):
53016 (WebCore::createOListWrapper):
53017 (WebCore::createUListWrapper):
53018 (WebCore::createJSWrapper):
53021 * bindings/js/kjs_html.cpp:
53023 (KJS::JSHTMLElement::classInfo):
53024 (KJS::JSHTMLElement::accessors):
53025 (KJS::HTMLElementFunction::callAsFunction):
53026 * bindings/js/kjs_html.h:
53027 (KJS::JSHTMLElement::):
53028 Delete the old implementations.
53030 * html/HTMLAnchorElement.cpp:
53031 (WebCore::HTMLAnchorElement::hash):
53032 (WebCore::HTMLAnchorElement::host):
53033 (WebCore::HTMLAnchorElement::hostname):
53034 (WebCore::HTMLAnchorElement::pathname):
53035 (WebCore::HTMLAnchorElement::port):
53036 (WebCore::HTMLAnchorElement::protocol):
53037 (WebCore::HTMLAnchorElement::search):
53038 (WebCore::HTMLAnchorElement::text):
53039 * html/HTMLAnchorElement.h:
53040 Add some new accessor methods which used to be in kjs_html.cpp.
53042 * html/HTMLAnchorElement.idl: Added.
53043 * html/HTMLAppletElement.idl: Added.
53044 * html/HTMLDListElement.idl: Added.
53045 * html/HTMLDirectoryElement.idl: Added.
53046 * html/HTMLDivElement.idl: Added.
53047 * html/HTMLHtmlElement.idl: Added.
53048 * html/HTMLOListElement.idl: Added.
53049 * html/HTMLUListElement.idl: Added.
53051 2006-05-17 David Hyatt <hyatt@apple.com>
53053 Convert the width map for glyphs into the same new HashMap-style as the
53054 glyph map for characters.
53056 * WebCore.xcodeproj/project.pbxproj:
53057 * platform/FontData.cpp:
53058 (WebCore::FontData::~FontData):
53059 (WebCore::FontData::widthForGlyph):
53060 * platform/FontData.h:
53061 * platform/GlyphWidthMap.cpp: Added.
53062 (WebCore::GlyphWidthMap::widthForGlyph):
53063 (WebCore::GlyphWidthMap::setWidthForGlyph):
53064 (WebCore::GlyphWidthMap::locatePage):
53065 * platform/GlyphWidthMap.h: Added.
53066 (WebCore::GlyphWidthMap::GlyphWidthMap):
53067 (WebCore::GlyphWidthMap::~GlyphWidthMap):
53068 (WebCore::GlyphWidthMap::GlyphWidthPage::widthForGlyph):
53069 (WebCore::GlyphWidthMap::GlyphWidthPage::setWidthForGlyph):
53070 (WebCore::GlyphWidthMap::GlyphWidthPage::setWidthForIndex):
53072 2006-05-17 David Hyatt <hyatt@apple.com>
53074 Rename FontData.mm to FontData.cpp, since it has no obj-c in it.
53076 * WebCore.xcodeproj/project.pbxproj:
53077 * platform/FontData.cpp: Added.
53079 2006-05-17 David Hyatt <hyatt@apple.com>
53081 Split FontData.mm into platform-specific and cross-platform pieces.
53083 Reviewed by andersca
53085 * WebCore.xcodeproj/project.pbxproj:
53086 * platform/FontData.h:
53087 (WebCore::FontData::xHeight):
53088 * platform/mac/FontData.mm:
53089 (WebCore::FontData::widthForGlyph):
53090 (WebCore::m_smallCapsFontData):
53091 (WebCore::FontData::~FontData):
53092 (WebCore::extendWidthMap):
53094 2006-05-17 John Sullivan <sullivan@apple.com>
53096 Reviewed by Darin Adler
53098 Improvement to my previous patch, suggested by Darin
53100 * dom/Document.cpp:
53101 (WebCore::Document::repaintMarkers):
53102 new method, similar in structure to removeMarkers but just repaints each node that
53103 has a marker of the specified type
53105 declare new method, and tweak style in related method declarations
53108 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
53109 if the value changes, call repaintMarkers
53111 2006-05-17 Eric Seidel <eseidel@apple.com>
53113 Reviewed by andersca.
53115 Autogenerate button, optgroup, option, input and textarea js bindings
53116 http://bugs.webkit.org/show_bug.cgi?id=8953
53118 * DerivedSources.make:
53119 * WebCore.xcodeproj/project.pbxproj:
53120 * bindings/js/JSHTMLElementWrapperFactory.cpp:
53121 (WebCore::createButtonWrapper):
53122 (WebCore::createInputWrapper):
53123 (WebCore::createOptGroupWrapper):
53124 (WebCore::createOptionWrapper):
53125 (WebCore::createTextAreaWrapper):
53126 (WebCore::createJSWrapper):
53127 * bindings/js/JSHTMLInputElementBase.cpp: Added.
53128 (WebCore::JSHTMLInputElementBaseProtoFunc::callAsFunction):
53130 (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
53131 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
53132 * bindings/js/JSHTMLInputElementBase.h: Added.
53133 (WebCore::JSHTMLInputElementBase::classInfo):
53134 (WebCore::JSHTMLInputElementBase::):
53135 (WebCore::JSHTMLInputElementBase::impl):
53136 * bindings/js/JSHTMLOptionElementConstructor.cpp: Added.
53137 (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
53138 (WebCore::JSHTMLOptionElementConstructor::implementsConstruct):
53139 (WebCore::JSHTMLOptionElementConstructor::construct):
53140 * bindings/js/JSHTMLOptionElementConstructor.h: Added.
53141 * bindings/js/kjs_domnode.h:
53142 * bindings/js/kjs_html.cpp:
53144 (KJS::JSHTMLElement::classInfo):
53145 (KJS::JSHTMLElement::accessors):
53146 (KJS::JSHTMLElement::getOwnPropertySlot):
53147 (KJS::HTMLElementFunction::callAsFunction):
53148 (KJS::JSHTMLElement::put):
53149 (KJS::JSHTMLElement::htmlSetter):
53150 * bindings/js/kjs_html.h:
53151 (KJS::JSHTMLElement::):
53152 * bindings/js/kjs_window.cpp:
53153 (KJS::Window::getValueProperty):
53154 * bindings/scripts/CodeGeneratorJS.pm:
53155 * html/HTMLButtonElement.idl: Added.
53156 * html/HTMLInputElement.idl: Added.
53157 * html/HTMLOptGroupElement.idl: Added.
53158 * html/HTMLOptionElement.idl: Added.
53159 * html/HTMLTextAreaElement.idl: Added.
53161 2006-05-17 Adele Peterson <adele@apple.com>
53165 First step for http://bugs.webkit.org/show_bug.cgi?id=8948
53166 Switch to use new text field implementation for <textarea>
53168 New textareas can be turned on by setting -webkit-appearance:textarea.
53171 * LayoutTests/fast/block/float/032.html - Updated results.
53173 * bridge/mac/FrameMac.h: Added textDidChangeinTextArea to send notification over the bridge to form delegate.
53174 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::textDidChangeInTextArea): ditto.
53175 * page/Frame.cpp: (WebCore::Frame::textDidChangeInTextArea): ditto.
53176 * page/Frame.h: ditto.
53178 * css/CSSValueKeywords.in: Added textarea.
53179 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): Updates to check for textarea.
53180 * css/html4.css: Added style for textarea. Leaved background-color and appearance values commented out.
53181 * rendering/render_style.h: (WebCore::): Added TextAreaAppearance.
53183 * rendering/RenderTheme.cpp:
53184 (WebCore::RenderTheme::adjustStyle): Updated for textarea.
53185 (WebCore::RenderTheme::paint): ditto.
53186 (WebCore::RenderTheme::paintBorderOnly): ditto.
53187 (WebCore::RenderTheme::isControlStyled): ditto.
53188 (WebCore::RenderTheme::supportsFocusRing): ditto.
53189 (WebCore::RenderTheme::adjustTextFieldStyle): ditto.
53190 (WebCore::RenderTheme::adjustTextAreaStyle): ditto.
53191 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintTextArea): Added.
53192 * rendering/RenderThemeMac.h: Added adjustTextAreaStyle.
53193 Note- I didn't add a paintTextArea function for RenderThemeMac, since we can just paint the border
53194 specified in html4.css to match the NSTextView border. Added a paintTextArea function to the Windows
53195 theme can override that border.
53196 * rendering/RenderThemeMac.mm:
53197 (WebCore::RenderThemeMac::isControlStyled): Updated for textarea.
53198 (WebCore::RenderThemeMac::adjustTextAreaStyle): ditto.
53200 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::HTMLGenericFormElement):
53201 Moved m_valueMatchesRenderer and its setters and getters into this class so HTMLInputElement and
53202 HTMLTextArea can share.
53203 * html/HTMLGenericFormElement.h:
53204 (WebCore::HTMLGenericFormElement::valueMatchesRenderer): Added.
53205 (WebCore::HTMLGenericFormElement::setValueMatchesRenderer): Added.
53206 * html/HTMLInputElement.cpp:
53207 (WebCore::HTMLInputElement::init): Remove m_valueMatchesRenderer intialization.
53208 (WebCore::HTMLInputElement::isKeyboardFocusable): Updated spelling.
53209 (WebCore::HTMLInputElement::createRenderer): Pass multiLine bool to RenderTextField constructor.
53210 (WebCore::HTMLInputElement::parseMappedAttribute): Use setValueMatchesRenderer instead of m_valueMatchesRenderer.
53211 (WebCore::HTMLInputElement::detach): ditto.
53212 (WebCore::HTMLInputElement::setValue): ditto.
53213 (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
53214 * html/HTMLInputElement.h: Remove setValueMatchesRenderer and valueMatchesRenderer and m_valueMatchesRenderer.
53215 * html/HTMLTextAreaElement.cpp:
53216 (WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Calls setValueMatchesRenderer to intialize m_valueMatchesRenderer.
53217 (WebCore::HTMLTextAreaElement::selectionStart): Uses appearance to determine which renderer to use.
53218 (WebCore::HTMLTextAreaElement::selectionEnd): ditto.
53219 (WebCore::HTMLTextAreaElement::setSelectionStart): ditto.
53220 (WebCore::HTMLTextAreaElement::setSelectionEnd): ditto.
53221 (WebCore::HTMLTextAreaElement::select): ditto.
53222 (WebCore::HTMLTextAreaElement::setSelectionRange): ditto.
53223 (WebCore::HTMLTextAreaElement::createRenderer): ditto.
53224 (WebCore::HTMLTextAreaElement::appendFormData): ditto.
53225 (WebCore::HTMLTextAreaElement::updateValue): ditto.
53226 (WebCore::HTMLTextAreaElement::isKeyboardFocusable): Added.
53227 (WebCore::HTMLTextAreaElement::isMouseFocusable): Added.
53228 (WebCore::HTMLTextAreaElement::focus): Added.
53229 (WebCore::HTMLTextAreaElement::defaultEventHandler): Added to forward events to the inner div.
53230 (WebCore::HTMLTextAreaElement::setValue): Calls setValueMatchesRenderer.
53231 * html/HTMLTextAreaElement.h: Added defaultEventHandler, isMouseFocusable, isKeyboardFocusable, and focus methods.
53232 Removed invalidateValue and m_valueMatchesRenderer since those are now handled in the base class.
53233 * html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler):
53234 Updated to handle textareas.
53235 * rendering/RenderTextArea.cpp: (WebCore::RenderTextArea::valueChanged):
53236 Calls setValueMatchesRenderer(false) instead of invalidateValue.
53238 * rendering/RenderTextField.h: Changed to be a RenderFlexibleBox instead of a RenderBlock.
53239 This was necessary to get the inner div's height to grow and shrink with the size of the textarea.
53240 Added m_multiLine bool, and calcHeight, canHaveChildren, baselinePosition, isTextArea, textWithHardLineBreaks, selectionChanged.
53241 (WebCore::RenderTextField::canHaveChildren): Returns false now so that no renderer gets created for
53242 the textarea's child text node for its initial contents.
53243 (WebCore::RenderTextField::isTextField): Returns true if m_multiLine is false.
53244 (WebCore::RenderTextField::isTextArea): Returns true if m_multiLine is true.
53245 * rendering/RenderTextField.cpp:
53246 (WebCore::RenderTextField::RenderTextField): Initializes m_multiLine.
53247 (WebCore::RenderTextField::~RenderTextField): Notifies HTMLTextAreaElement that the renderer is being destroyed so the value gets updated.
53248 (WebCore::RenderTextField::setStyle): Makes sure there's no overflow clip on the RenderTextField, since we're handling overflow on the inner div.
53249 (WebCore::RenderTextField::createDivStyle): Sets white-space, box-flex, overflow, word-wrap styles needed for text area.
53250 (WebCore::RenderTextField::updateFromElement): Updated for textarea elements.
53251 (WebCore::RenderTextField::setSelectionRange): Optimized caret case by checking to see if start is equal to end before calculating
53252 the same VisiblePosition twice.
53253 (WebCore::RenderTextField::subtreeHasChanged): Updated for textarea elements.
53254 (WebCore::RenderTextField::text): Use innerText so newlines are considered.
53255 (WebCore::RenderTextField::textWithHardLineBreaks): Added. Not implemented yet. Just calls text method.
53256 (WebCore::RenderTextField::calcHeight): Added. Sets initial height based on specified number of rows, and then calls the base class.
53257 (WebCore::RenderTextField::baselinePosition): Added. Unlike text fields, textareas align to the bottom.
53258 (WebCore::RenderTextField::calcMinMaxWidth): Updated for textareas.
53259 (WebCore::RenderTextField::selectionChanged): Added. Not implemented yet.
53261 2006-05-17 David Hyatt <hyatt@apple.com>
53263 Fix for 8954, separate the glyph map out into its own files and make it
53268 * WebCore.xcodeproj/project.pbxproj:
53269 * platform/Font.cpp:
53270 (WebCore::WidthIterator::advance):
53271 * platform/FontData.h:
53272 (WebCore::FontData::glyphDataForCharacter):
53273 (WebCore::FontData::setGlyphDataForCharacter):
53274 * platform/GlyphMap.cpp: Added.
53275 (WebCore::GlyphMap::glyphDataForCharacter):
53276 (WebCore::GlyphMap::setGlyphDataForCharacter):
53277 (WebCore::GlyphMap::locatePage):
53278 * platform/GlyphMap.h: Added.
53279 (WebCore::GlyphMap::GlyphMap):
53280 (WebCore::GlyphMap::~GlyphMap):
53281 (WebCore::GlyphMap::GlyphPage::glyphDataForCharacter):
53282 (WebCore::GlyphMap::GlyphPage::setGlyphDataForCharacter):
53283 (WebCore::GlyphMap::GlyphPage::setGlyphDataForIndex):
53284 * platform/mac/FontData.mm:
53285 (-[NSFont WebCore]):
53286 (WidthMap::m_ATSUMirrors):
53287 (WidthMap::FontData::~FontData):
53288 (WidthMap::FontData::xHeight):
53289 (WidthMap::FontData::platformInit):
53290 (WidthMap::extendWidthMap):
53291 * platform/mac/GlyphMapMac.cpp: Added.
53292 (WebCore::GlyphMap::fillPage):
53293 * platform/mac/WebCoreSystemInterface.h:
53295 2006-05-17 Anders Carlsson <acarlsson@apple.com>
53297 Reviewed by Maciej.
53299 http://bugs.webkit.org/show_bug.cgi?id=8958
53300 Should be able to have custom implementations for JS methods
53302 * DerivedSources.make:
53303 * WebCore.xcodeproj/project.pbxproj:
53304 * bindings/js/JSCanvasRenderingContext2DBase.cpp: Removed.
53305 * bindings/js/JSCanvasRenderingContext2DBase.h: Removed.
53306 * bindings/js/JSCanvasRenderingContext2DCustom.cpp: Added.
53307 Remove JSCanvasRenderingContext2DBase and add
53308 JSCanvasRenderingContext2DCustom with custom implementations.
53311 (WebCore::toHTMLCanvasStyle):
53312 (WebCore::JSCanvasRenderingContext2D::strokeStyle):
53313 (WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
53314 (WebCore::JSCanvasRenderingContext2D::fillStyle):
53315 (WebCore::JSCanvasRenderingContext2D::setFillStyle):
53316 (WebCore::JSCanvasRenderingContext2D::setFillColor):
53317 (WebCore::JSCanvasRenderingContext2D::setStrokeColor):
53318 (WebCore::JSCanvasRenderingContext2D::strokeRect):
53319 (WebCore::JSCanvasRenderingContext2D::drawImage):
53320 (WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
53321 (WebCore::JSCanvasRenderingContext2D::setShadow):
53322 (WebCore::JSCanvasRenderingContext2D::createPattern):
53323 Move implementations from JSCanvasRenderingContext2DBase.
53325 * bindings/scripts/CodeGeneratorJS.pm:
53326 Add new "Custom" extended attribute for functions and attributes. When a function or
53327 attribute has this attribute, a custom implementation is called instead of calling down to
53330 * html/CanvasRenderingContext2D.idl:
53331 Add bunch of custom attributes and functions.
53333 2006-05-17 John Sullivan <sullivan@apple.com>
53335 Reviewed by Maciej.
53337 First step towards making text-matching mechanism more flexible; now caller can
53338 control whether or not the matches are highlighted.
53340 * bridge/mac/WebCoreFrameBridge.h:
53341 * bridge/mac/WebCoreFrameBridge.mm:
53342 (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:]):
53343 renamed from highlightAllMatchesForString:
53344 (-[WebCoreFrameBridge markedTextMatchesAreHighlighted]):
53346 (-[WebCoreFrameBridge setMarkedTextMatchesAreHighlighted:]):
53348 (-[WebCoreFrameBridge unmarkAllTextMatches]):
53349 renamed from clearHighlightedMatches
53353 (WebCore::Frame::markAllMatchesForText):
53354 renamed from highlightAllMatchesForString
53355 (WebCore::Ferame::markedTextMatchesAreHighlighted):
53356 new getter method, uses boolean ivar in FramePrivate
53357 (WebCore::Frame::setMarkedTextMatchesAreHighlighted):
53358 new setter method, uses boolean ivar in FramePrivate
53360 * page/FramePrivate.h:
53361 (WebCore::FramePrivate::FramePrivate):
53362 added boolean ivar m_highlightTextMatches, initialized to 0
53364 * rendering/InlineTextBox.cpp:
53365 (WebCore::InlineTextBox::paint):
53366 respect markedTextMatchesAreHighlighted
53368 * WebCore.xcodeproj/project.pbxproj:
53369 newer Xcode removed some obsolete settings
53371 2006-05-17 Adele Peterson <adele@apple.com>
53375 * editing/htmlediting.cpp: (WebCore::editingIgnoresContent):
53376 Reverting change that Darin made a few weeks ago. He was trying
53377 to make editingIgnoresContent return true for the new text fields, but the code
53378 actually didn't change that result. When the new text fields actually do return
53379 true for editingIgnoresContent, other editing problems are exposed. For example,
53380 moving the cursor around an editable area that contains a text field will cross the
53381 text field boundary and descend into the shadow tree. So for now, we'll revert this
53384 2006-05-17 Mitz Pettel <opendarwin.org@mitzpettel.com>
53386 Reviewed by Maciej, tweaked by Darin.
53388 - fix http://bugs.webkit.org/show_bug.cgi?id=8951
53389 AtomicString hash corrupted by high-bit Latin-1
53391 Test: fast/encoding/high-bit-latin1.html
53393 * platform/AtomicString.cpp: (WebCore::CStringTranslator::equal): Use an
53394 unsigned char local.
53395 * platform/StringImpl.cpp: (WebCore::StringImpl::init): Ditto.
53397 2006-05-17 Rob Buis <buis@kde.org>
53399 Reviewed by Maciej.
53401 Fix for http://bugs.webkit.org/show_bug.cgi?id=7492
53402 CSS attribute selectors fail when the setAttribute() method is used
53403 to create an attribute and the attribute name is not Class or ID.
53405 Keep track of attributes used in attribute selectors to
53406 check after setAttribute whether a style recalc is needed.
53408 Test: fast/css/selector-set-attribute.html
53410 * css/cssstyleselector.cpp:
53411 (WebCore::CSSStyleSelector::checkOneSelector):
53412 (WebCore::CSSStyleSelector::hasSelectorForAttribute):
53413 * css/cssstyleselector.h:
53414 * dom/StyledElement.cpp:
53415 (WebCore::StyledElement::attributeChanged):
53417 2006-05-17 Rob Buis <buis@kde.org>
53421 Fix for http://bugs.webkit.org/show_bug.cgi?id=5264
53422 document.createElementNS() should not allow to insert a second <html> element
53424 Do extra checks for document nodes to detect multiple document elements
53425 and document types.
53427 Test: fast/dom/createDocumentType2.html
53428 Test: fast/dom/createElementNS.html
53430 * dom/Document.cpp:
53431 (WebCore::Document::childTypeAllowed):
53434 2006-05-17 Anders Carlsson <acarlsson@apple.com>
53438 * DerivedSources.make:
53439 Conditionally generate the SVG and XPath related files based on the value of
53440 FEATURE_DEFINES. Also, pass FEATURE_DEFINES to the bindings generator.
53442 * WebCore.xcodeproj/project.pbxproj:
53443 Add FEATURE_DEFINES as a toplevel build setting and set it to "SVG_SUPPORT XPATH_SUPPORT"
53444 to keep SVG and XPath support turned on. Add FEATURE_DEFINES to the CPP defines.
53446 * bindings/js/kjs_binding.cpp:
53447 (KJS::setDOMException):
53448 Add #ifdefs around the XPath code.
53450 * bindings/scripts/CodeGeneratorJS.pm:
53451 Add "Conditional" extended attribute for interfaces. If this is set, the generated code will be
53452 surrounded by an #if.
53454 * bindings/scripts/IDLParser.pm:
53455 Pass the define flags on to the preprocessor.
53457 * bindings/scripts/generate-bindings.pl:
53458 Add a --defines property and pass it on to the parser.
53460 * css/cssstyleselector.h:
53461 Add DeprecatedString.h include.
53463 * dom/Document.idl:
53464 Put back #if around the XPath functions
53466 * page/DOMWindow.idl:
53467 Put #if around the XPath constructors
53469 * xpath/XPathEvaluator.idl:
53470 * xpath/XPathExpression.idl:
53471 * xpath/XPathNSResolver.cpp:
53472 * xpath/XPathNSResolver.idl:
53473 * xpath/XPathNamespace.cpp:
53474 * xpath/XPathResult.idl:
53475 Add "Conditional=XPATH" to all interfaces.
53477 2006-05-16 Darin Adler <darin@apple.com>
53479 Reviewed by Anders.
53481 - http://bugs.webkit.org/show_bug.cgi?id=8940
53482 remove extra copy of image code
53484 * WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRenderer.h.
53485 * platform/mac/WebCoreImageRenderer.h: Removed.
53487 * bridge/mac/WebCoreFrameBridge.h: Added supportedImageResourceMIMETypes.
53488 Like supportedImageMIMETypes, but includes PDF and PostScript.
53489 * bridge/mac/WebCoreFrameBridge.mm:
53490 (+[WebCoreFrameBridge supportedImageResourceMIMETypes]): Added.
53491 Has code that came from -[WebImageRendererFactory supportedMIMETypes].
53492 (+[WebCoreFrameBridge supportedImageMIMETypes]):
53494 * platform/mac/ImageMac.mm:
53495 (WebCore::Image::supportsType): Instead of calling the old
53496 -[WebCoreImageRendererFactory supportedMIMETypes], call the new
53497 +[WebCoreFrameBridge supportedImageResourceMIMETypes].
53498 (WebCore::Image::drawTiled): Use wkSetPatternPhaseInUserSpace instead of
53499 the WebCoreImageRendererFactory.
53501 * platform/mac/ClipboardMac.mm: Removed an unneeded include of
53502 WebCoreImageRenderer.h.
53504 * platform/mac/WebCoreImageRendererFactory.h: Removed everything except
53505 for the one remaining method, imageDataForName:, which gets resources
53506 from the WebKit localized resources. We should figure out how to remove
53507 that one too later.
53508 * platform/mac/WebCoreImageRendererFactory.m: Ditto.
53510 * platform/mac/WebCoreSystemInterface.h: Added some new calls.
53511 * platform/mac/WebCoreSystemInterface.mm: Ditto.
53512 * WebCore.exp: Ditto.
53514 * platform/cairo/ImageCairo.cpp: Moved a stub to the stubs file. If it's
53515 here it has to have a FIXME comment and also it contains a big commented-out
53516 pile of code. Better to have it in the stubs file with all the other stubs.
53517 * platform/win/TemporaryLinkStubs.cpp: (Image::drawTiled): Put stub here
53518 instead of having it in ImageCairo.cpp.
53520 2006-05-16 Anders Carlsson <acarlsson@apple.com>
53522 Reviewed by Dave Hyatt.
53524 http://bugs.webkit.org/show_bug.cgi?id=8941
53525 document.cookie undefined for documents of type text/javascript
53527 * loader/TextDocument.cpp:
53528 (WebCore::TextDocument::TextDocument):
53529 * loader/TextDocument.h:
53530 Inherit from HTMLDocument.
53532 2006-05-16 Darin Adler <darin@apple.com>
53536 - fix http://bugs.webkit.org/show_bug.cgi?id=8898
53537 REGRESSION: Attempting to right-click image in own tab on website causes crash
53538 - fix http://bugs.webkit.org/show_bug.cgi?id=8919
53539 REGRESSION: image could not be dragged, subsequent click-drag activity caused crash
53541 * bridge/mac/WebCoreFrameBridge.mm:
53542 (-[WebCoreFrameBridge domain]): Removed unneeded check of isHTMLDocument.
53543 (-[WebCoreFrameBridge getData:andResponse:forURL:]): Handle document() of 0.
53544 (-[WebCoreFrameBridge getAllResourceDatas:andResponses:]): Ditto.
53546 2006-05-16 Eric Seidel <eseidel@apple.com>
53548 Reviewed by andersca.
53550 Autogenerate BASE, HEAD, LINK, STYLE and TITLE JS bindings.
53552 Already covered by existing dom tests.
53554 * DerivedSources.make:
53555 * WebCore.xcodeproj/project.pbxproj:
53556 * bindings/js/JSHTMLElementWrapperFactory.cpp:
53557 (WebCore::createBaseWrapper):
53558 (WebCore::createHeadWrapper):
53559 (WebCore::createLinkWrapper):
53560 (WebCore::createStyleWrapper):
53561 (WebCore::createTitleWrapper):
53562 (WebCore::createJSWrapper):
53563 * bindings/js/kjs_html.cpp:
53565 (KJS::JSHTMLElement::classInfo):
53566 (KJS::JSHTMLElement::accessors):
53567 * bindings/js/kjs_html.h:
53568 * html/HTMLBaseElement.idl: Added.
53569 * html/HTMLHeadElement.idl: Added.
53570 * html/HTMLLinkElement.idl: Added.
53571 * html/HTMLStyleElement.idl: Added.
53572 * html/HTMLTitleElement.idl: Added.
53574 2006-05-16 Anders Carlsson <acarlsson@apple.com>
53576 Reviewed by Maciej.
53578 http://bugs.webkit.org/show_bug.cgi?id=8921
53579 Use WebCore to render full-frame images.
53581 * WebCore.xcodeproj/project.pbxproj:
53584 * bridge/mac/WebCoreFrameBridge.h:
53585 Add mainResourceURLResponse and imageTitleForFilename.
53587 * bridge/mac/WebCoreFrameBridge.mm:
53588 (+[WebCoreFrameBridge supportedNonImageMIMETypes]):
53589 This used to be supportedMIMETypes but WebKit requires that we handle the
53590 image MIME types separately.
53592 (+[WebCoreFrameBridge supportedImageMIMETypes]):
53593 Add image types from WebCoreImageRendererFactory.
53595 (-[WebCoreFrameBridge canProvideDocumentSource]):
53596 Return no for image types.
53598 * dom/xml_tokenizer.h:
53599 (WebCore::Tokenizer::wantsRawData):
53600 (WebCore::Tokenizer::writeRawData):
53601 New virtual functions which tokenizers can override if they want to get
53602 raw data (which isn't fed through the decoder)
53604 * html/HTMLImageElement.h:
53605 (WebCore::HTMLImageElement::setLoadManually):
53606 New function which calls HTMLImageLoader::setLoadManually
53608 * html/HTMLImageLoader.cpp:
53609 (WebCore::HTMLImageLoader::HTMLImageLoader):
53610 (WebCore::HTMLImageLoader::updateFromElement):
53611 Don't request the image from the loader if the load is set to be manual.
53613 * html/HTMLImageLoader.h:
53614 (WebCore::HTMLImageLoader::setLoadManually):
53615 New function which decides if the image data should be fed manually or loaded
53618 * loader/DocLoader.h:
53619 Add HTMLImageLoader as a friend.
53621 * loader/ImageDocument.cpp: Added.
53622 (WebCore::ImageTokenizer::ImageTokenizer):
53623 (WebCore::ImageTokenizer::wantsRawData):
53624 (WebCore::ImageTokenizer::write):
53625 (WebCore::ImageTokenizer::writeRawData):
53626 (WebCore::ImageTokenizer::stopParsing):
53627 (WebCore::ImageTokenizer::finish):
53628 (WebCore::ImageTokenizer::isWaitingForScripts):
53629 (WebCore::ImageDocument::ImageDocument):
53630 (WebCore::ImageDocument::createTokenizer):
53631 * loader/ImageDocument.h: Added.
53632 Add new ImageDocument class which will feed its data to a created image element.
53634 * loader/TextDocument.h:
53635 Inherit from HTMLDocument here too, in case any broken web pages want to manipulate
53636 the DOM of any plain text documents.
53639 (WebCore::Frame::begin):
53640 (WebCore::Frame::write):
53641 Don't create or use the decoder if the tokenizer is in "raw mode".
53643 2006-05-16 Eric Seidel <eseidel@apple.com>
53645 Reviewed by andersca.
53647 Autogenerate JSHTMLMetaElement.
53648 http://bugs.webkit.org/show_bug.cgi?id=8938
53650 Test: fast/dom/HTMLMetaElement/meta-attributes.html
53652 * DerivedSources.make:
53653 * WebCore.xcodeproj/project.pbxproj:
53654 * bindings/js/JSHTMLElementWrapperFactory.cpp:
53655 (WebCore::createMetaWrapper):
53656 (WebCore::createJSWrapper):
53657 * bindings/js/kjs_html.cpp:
53659 (KJS::JSHTMLElement::classInfo):
53660 (KJS::JSHTMLElement::accessors):
53661 * bindings/js/kjs_html.h:
53662 * html/HTMLMetaElement.h:
53664 2006-05-16 David Hyatt <hyatt@apple.com>
53666 Bug 8936, eliminate WebTextRendererFactory and convert it over to the
53669 Reviewed by andersca
53671 * WebCore.xcodeproj/project.pbxproj:
53672 * bridge/mac/WebCoreStringTruncator.mm:
53673 * kwq/KWQComboBox.mm:
53674 * kwq/KWQLineEdit.mm:
53675 * kwq/KWQListBox.mm:
53677 (WebCore::Font::bold):
53678 * platform/FontCache.cpp: Added.
53679 (WebCore::FontPlatformDataCacheKey::m_italic):
53680 (WebCore::FontPlatformDataCacheKey::operator==):
53681 (WebCore::computeHash):
53682 (WebCore::FontPlatformDataCacheKeyHash::hash):
53683 (WebCore::FontPlatformDataCacheKeyHash::equal):
53684 (WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
53685 (WebCore::FontCache::getCachedFontPlatformData):
53686 (WebCore::FontDataCacheKeyHash::hash):
53687 (WebCore::FontDataCacheKeyHash::equal):
53688 (WebCore::FontDataCacheKeyTraits::deletedValue):
53689 (WebCore::FontCache::getCachedFontData):
53690 (WebCore::FontCache::getFontData):
53691 (WebCore::FontCache::clearCommonCaches):
53692 * platform/FontCache.h:
53693 * platform/FontData.h:
53694 * platform/FontFamily.cpp:
53695 (WebCore::FontFamily::FontFamily):
53696 (WebCore::FontFamily::operator=):
53697 (WebCore::FontFamily::setFamily):
53698 * platform/FontFamily.h:
53699 (WebCore::FontFamily::familyIsEmpty):
53700 * platform/FontPlatformData.h:
53701 (WebCore::FontPlatformData::hash):
53702 (WebCore::FontPlatformData::operator==):
53703 * platform/mac/FontCacheMac.mm:
53704 (WebCore::getAppDefaultValue):
53705 (WebCore::getUserDefaultValue):
53706 (WebCore::getLCDScaleParameters):
53707 (WebCore::fontsChanged):
53708 (WebCore::FontCache::registerForFontChanges):
53709 (WebCore::FontCache::clearCaches):
53710 (WebCore::FontCache::getFontDataForCharacters):
53711 (WebCore::FontCache::getSimilarFontPlatformData):
53712 (WebCore::FontCache::getLastResortFallbackFont):
53713 (WebCore::FontCache::createFontPlatformData):
53714 * platform/mac/FontData.mm:
53715 (-[NSFont WebCore]):
53716 (WidthMap::FontData::xHeight):
53717 (WidthMap::FontData::smallCapsFontData):
53718 (WidthMap::computeWidthForSpace):
53719 (WidthMap::setUpFont):
53720 (WidthMap::fillStyleWithAttributes):
53721 (WidthMap::FontData::determinePitch):
53722 * platform/mac/FontFallbackListMac.mm:
53723 (WebCore::FontFallbackList::setPlatformFont):
53724 * platform/mac/FontFamilyMac.mm: Removed.
53725 * platform/mac/FontMac.mm:
53726 * platform/mac/WebCoreTextRenderer.mm:
53728 * platform/mac/WebFontCache.h: Added.
53729 * platform/mac/WebFontCache.mm: Added.
53730 (acceptableChoice):
53732 (+[WebFontCache fontWithFamily:traits:size:]):
53733 * platform/mac/WebTextRendererFactory.h: Removed.
53734 * platform/mac/WebTextRendererFactory.mm: Removed.
53736 2006-05-16 Eric Seidel <eseidel@apple.com>
53738 Reviewed by andersca.
53740 Add Rect.idl, even though it can't be used quite yet due to generator limitations.
53742 * WebCore.xcodeproj/project.pbxproj:
53743 * css/Rect.idl: Added.
53745 2006-05-16 Sam Weinig <sam.weinig@gmail.com>
53747 Reviewed by darin. Landed by eseidel.
53749 Patch for <http://bugs.webkit.org/show_bug.cgi?id=8924>
53750 Bug 8924: re-apply the 'disabled type=file' change
53751 from bug 5882 to RenderFileButton
53753 * rendering/RenderFileButton.cpp:
53754 (WebCore::RenderFileButton::updateFromElement):
53756 2006-05-16 Eric Seidel <eseidel@apple.com>
53760 Split css_base.* into separate files (one per class).
53761 http://bugs.webkit.org/show_bug.cgi?id=8935
53763 * WebCore.xcodeproj/project.pbxproj:
53764 * bindings/js/kjs_css.cpp:
53765 * css/CSSBorderImageValue.cpp:
53766 * css/CSSBorderImageValue.h:
53767 * css/CSSCharsetRule.h:
53768 * css/CSSFontFaceRule.h:
53769 * css/CSSGrammar.y:
53770 * css/CSSImportRule.h:
53771 * css/CSSInheritedValue.cpp:
53772 * css/CSSInitialValue.cpp:
53773 * css/CSSMediaRule.h:
53774 * css/CSSMutableStyleDeclaration.h:
53775 * css/CSSNamespace.h: Added.
53776 (WebCore::CSSNamespace::CSSNamespace):
53777 (WebCore::CSSNamespace::namespaceForPrefix):
53778 * css/CSSPageRule.h:
53779 * css/CSSPrimitiveValue.h:
53780 * css/CSSProperty.cpp:
53781 * css/CSSProperty.h:
53783 * css/CSSRuleList.cpp:
53784 * css/CSSSelector.cpp: Added.
53785 * css/CSSSelector.h: Added.
53786 (WebCore::CSSSelector::CSSSelector):
53787 * css/CSSStyleDeclaration.h:
53788 * css/CSSStyleRule.cpp:
53789 * css/CSSStyleRule.h:
53790 * css/CSSStyleSheet.cpp:
53791 (WebCore::CSSStyleSheet::~CSSStyleSheet):
53792 * css/CSSStyleSheet.h:
53794 * css/CSSValueList.cpp:
53795 * css/CSSValueList.h:
53796 * css/FontFamilyValue.cpp:
53797 * css/FontValue.cpp:
53800 * css/ShadowValue.cpp:
53801 * css/ShadowValue.h:
53802 * css/StyleBase.cpp: Added.
53803 (WebCore::StyleBase::stylesheet):
53804 * css/StyleBase.h: Added.
53805 (WebCore::StyleBase::StyleBase):
53806 * css/StyleList.cpp: Added.
53807 * css/StyleList.h: Added.
53808 * css/StyleSheet.h:
53809 * css/css_base.cpp: Removed.
53810 * css/css_base.h: Removed.
53811 * css/cssparser.cpp:
53812 * css/cssstyleselector.cpp:
53813 (WebCore::CSSStyleSelector::matchRulesForList):
53814 * css/cssstyleselector.h:
53815 * dom/CSSMappedAttributeDeclaration.h:
53816 * ksvg2/svg/SVGColor.cpp:
53817 (WebCore::SVGColor::SVGColor):
53818 (WebCore::SVGColor::setRGBColor):
53819 (WebCore::SVGColor::setRGBColorICCColor):
53820 (WebCore::SVGColor::setColor):
53821 (WebCore::SVGColor::cssText):
53822 (WebCore::SVGColor::color):
53823 * ksvg2/svg/SVGColor.h:
53824 * ksvg2/svg/SVGStyledElement.cpp:
53825 (WebCore::SVGStyledElement::SVGStyledElement):
53826 (WebCore::SVGStyledElement::className):
53827 (WebCore::SVGStyledElement::createRenderer):
53828 (WebCore::SVGStyledElement::parseMappedAttribute):
53829 (WebCore::SVGStyledElement::notifyAttributeChange):
53830 (WebCore::SVGStyledElement::attributeChanged):
53831 (WebCore::SVGStyledElement::canvas):
53832 (WebCore::SVGStyledElement::updateCanvasItem):
53833 (WebCore::SVGStyledElement::pushAttributeContext):
53835 2006-05-15 Eric Seidel <eseidel@apple.com>
53839 Split css_valueimpl.* and css_ruleimpl.* into separate files (one per class).
53840 http://bugs.webkit.org/show_bug.cgi?id=8934
53842 * WebCore+SVG/RGBColor.cpp:
53843 (WebCore::RGBColor::RGBColor):
53844 * WebCore.vcproj/WebCore/WebCore.vcproj:
53845 * WebCore.xcodeproj/project.pbxproj:
53846 * bindings/js/kjs_css.cpp:
53847 (KJS::DOMCSSRule::classInfo):
53848 * bindings/js/kjs_css.h:
53849 * bindings/js/kjs_dom.cpp:
53850 * bindings/js/kjs_html.cpp:
53851 * bindings/js/kjs_window.cpp:
53852 * bindings/objc/DOMCSS.mm:
53853 * bindings/scripts/CodeGeneratorJS.pm:
53854 * css/CSSBorderImageValue.cpp: Added.
53855 (WebCore::CSSBorderImageValue::CSSBorderImageValue):
53856 * css/CSSBorderImageValue.h: Added.
53857 * css/CSSCharsetRule.h: Added.
53858 (WebCore::CSSCharsetRule::CSSCharsetRule):
53859 * css/CSSComputedStyleDeclaration.cpp:
53860 (WebCore::valueForShadow):
53862 * css/CSSComputedStyleDeclaration.h:
53863 * css/CSSFontFaceRule.cpp: Added.
53864 (WebCore::CSSFontFaceRule::CSSFontFaceRule):
53865 * css/CSSFontFaceRule.h: Added.
53866 (WebCore::CSSFontFaceRule::isFontFaceRule):
53867 * css/CSSGrammar.y:
53868 * css/CSSImageValue.cpp: Added.
53869 (WebCore::CSSImageValue::CSSImageValue):
53870 * css/CSSImageValue.h: Added.
53871 * css/CSSImportRule.cpp: Added.
53872 * css/CSSImportRule.h: Added.
53873 * css/CSSInheritedValue.cpp: Added.
53874 * css/CSSInheritedValue.h: Added.
53875 * css/CSSInitialValue.cpp: Added.
53876 * css/CSSInitialValue.h: Added.
53877 * css/CSSMediaRule.cpp: Added.
53878 (WebCore::CSSMediaRule::CSSMediaRule):
53879 (WebCore::CSSMediaRule::~CSSMediaRule):
53880 (WebCore::CSSMediaRule::append):
53881 (WebCore::CSSMediaRule::deleteRule):
53882 (WebCore::CSSMediaRule::cssText):
53883 * css/CSSMediaRule.h: Added.
53884 (WebCore::CSSMediaRule::media):
53885 (WebCore::CSSMediaRule::cssRules):
53886 * css/CSSMutableStyleDeclaration.cpp: Added.
53887 (WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
53888 (WebCore::CSSMutableStyleDeclaration::setChanged):
53889 * css/CSSMutableStyleDeclaration.h: Added.
53890 * css/CSSPageRule.cpp: Added.
53891 (WebCore::CSSPageRule::CSSPageRule):
53892 * css/CSSPageRule.h: Added.
53893 (WebCore::CSSPageRule::isPageRule):
53894 * css/CSSPrimitiveValue.cpp: Added.
53895 * css/CSSPrimitiveValue.h: Added.
53896 * css/CSSProperty.cpp: Added.
53897 (WebCore::CSSProperty::cssText):
53898 * css/CSSProperty.h: Added.
53899 (WebCore::CSSProperty::CSSProperty):
53900 * css/CSSQuirkPrimitiveValue.h: Added.
53901 * css/CSSRule.cpp: Added.
53902 * css/CSSRule.h: Added.
53903 (WebCore::CSSRule::CSSRule):
53904 * css/CSSRuleList.cpp: Added.
53905 (WebCore::CSSRuleList::CSSRuleList):
53906 (WebCore::CSSRuleList::~CSSRuleList):
53907 (WebCore::CSSRuleList::deleteRule):
53908 (WebCore::CSSRuleList::append):
53909 (WebCore::CSSRuleList::insertRule):
53910 * css/CSSRuleList.h: Added.
53911 (WebCore::CSSRuleList::item):
53912 * css/CSSStyleDeclaration.cpp: Added.
53913 (WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
53914 (WebCore::CSSStyleDeclaration::diff):
53915 * css/CSSStyleDeclaration.h: Added.
53916 * css/CSSStyleRule.cpp: Added.
53917 (WebCore::CSSStyleRule::CSSStyleRule):
53918 (WebCore::CSSStyleRule::selectorText):
53919 * css/CSSStyleRule.h: Added.
53920 * css/CSSStyleSheet.cpp:
53921 (WebCore::CSSStyleSheet::ownerRule):
53922 * css/CSSUnknownRule.h: Added.
53923 (WebCore::CSSUnknownRule::CSSUnknownRule):
53924 * css/CSSValue.h: Added.
53925 * css/CSSValueList.cpp: Added.
53926 * css/CSSValueList.h: Added.
53927 * css/Counter.h: Added.
53928 * css/DashboardRegion.h: Added.
53929 * css/FontFamilyValue.cpp: Added.
53930 * css/FontFamilyValue.h: Added.
53931 (WebCore::FontFamilyValue::genericFamilyType):
53932 * css/FontValue.cpp: Added.
53933 (WebCore::FontValue::cssText):
53934 * css/FontValue.h: Added.
53935 * css/MediaList.cpp:
53936 * css/Pair.h: Added.
53937 (WebCore::Pair::~Pair):
53938 * css/RectImpl.h: Added.
53939 (WebCore::RectImpl::~RectImpl):
53940 * css/ShadowValue.cpp: Added.
53941 (WebCore::ShadowValue::ShadowValue):
53942 * css/ShadowValue.h: Added.
53943 * css/css_base.cpp:
53944 * css/css_ruleimpl.cpp: Removed.
53945 * css/css_ruleimpl.h: Removed.
53946 * css/css_valueimpl.cpp: Removed.
53947 * css/css_valueimpl.h: Removed.
53948 * css/cssparser.cpp:
53949 (WebCore::CSSParser::parseColor):
53950 (WebCore::CSSParser::parseFontFamily):
53951 * css/cssstyleselector.cpp:
53952 (WebCore::CSSStyleSelector::locateCousinList):
53953 (WebCore::CSSStyleSelector::checkSelector):
53954 (WebCore::CSSRuleSet::addRulesFromSheet):
53955 (WebCore::CSSStyleSelector::applyProperty):
53956 (WebCore::CSSStyleSelector::mapBackgroundImage):
53957 * css/cssstyleselector.h:
53958 * dom/CSSMappedAttributeDeclaration.h:
53959 (WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
53960 * dom/Document.cpp:
53961 * editing/ApplyStyleCommand.cpp:
53962 * editing/CompositeEditCommand.h:
53963 * editing/EditCommand.cpp:
53964 * editing/InsertLineBreakCommand.cpp:
53965 (WebCore::InsertLineBreakCommand::doApply):
53966 * editing/InsertLineBreakCommand.h:
53967 * editing/InsertTextCommand.cpp:
53968 (WebCore::InsertTextCommand::input):
53969 * editing/RemoveCSSPropertyCommand.cpp:
53970 (WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
53971 (WebCore::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):
53972 * editing/RemoveCSSPropertyCommand.h:
53973 (WebCore::RemoveCSSPropertyCommand::styleDeclaration):
53974 * html/HTMLBodyElement.cpp:
53975 * html/HTMLElement.cpp:
53976 * html/HTMLScriptElement.h:
53977 * html/HTMLTokenizer.h:
53978 * kcanvas/KCanvasFilters.h:
53979 (WebCore::KCanvasFEColorMatrix::values):
53980 (WebCore::KCanvasFEColorMatrix::setValues):
53981 (WebCore::KCanvasFEConvolveMatrix::kernel):
53982 (WebCore::KCanvasFEConvolveMatrix::setKernel):
53983 * kcanvas/KCanvasPath.h:
53984 * kcanvas/KCanvasTreeDebug.h:
53985 (WebCore::operator<<):
53986 * kcanvas/RenderPath.h:
53987 * ksvg2/css/SVGCSSParser.cpp:
53988 (WebCore::CSSParser::parseSVGValue):
53989 (WebCore::CSSParser::parseSVGStrokeDasharray):
53990 (WebCore::CSSParser::parseSVGPaint):
53991 (WebCore::CSSParser::parseSVGColor):
53992 * ksvg2/css/SVGCSSStyleSelector.cpp:
53993 (WebCore::CSSStyleSelector::applySVGProperty):
53994 * ksvg2/css/SVGRenderStyleDefs.h:
53995 * ksvg2/ecma/Ecma.cpp:
53996 * ksvg2/misc/KCanvasRenderingStyle.cpp:
53997 * ksvg2/misc/KCanvasRenderingStyle.h:
53998 * ksvg2/svg/SVGAnimationElement.cpp:
53999 * ksvg2/svg/SVGColor.cpp:
54000 * ksvg2/svg/SVGColor.h:
54001 * ksvg2/svg/SVGCursorElement.h:
54002 * ksvg2/svg/SVGFEColorMatrixElement.cpp:
54003 (SVGFEColorMatrixElement::filterEffect):
54004 * page/DOMWindow.cpp:
54006 * page/FramePrivate.h:
54007 * platform/DeprecatedValueList.h:
54008 * rendering/RenderTextField.cpp:
54010 2006-05-15 Darin Adler <darin@apple.com>
54012 * WebCore.xcodeproj/project.pbxproj: Removed duplicate files that were
54015 2006-05-15 Darin Adler <darin@apple.com>
54017 * make-generated-sources.sh: Changed to be executable and removed
54018 text in the file generated by "svn diff".
54019 * move-js-headers.sh: Ditto.
54021 2006-05-15 Eric Seidel <eseidel@apple.com>
54025 Split css_stylesheetimpl.* into separate files (one per class).
54026 http://bugs.webkit.org/show_bug.cgi?id=8933
54028 * WebCore.vcproj/WebCore/WebCore.vcproj:
54029 * WebCore.xcodeproj/project.pbxproj:
54030 * css/CSSStyleSheet.cpp: Added.
54031 (WebCore::CSSStyleSheet::CSSStyleSheet):
54032 (WebCore::CSSStyleSheet::addRule):
54033 (WebCore::CSSStyleSheet::deleteRule):
54034 (WebCore::CSSStyleSheet::parseString):
54035 (WebCore::CSSStyleSheet::docLoader):
54036 * css/CSSStyleSheet.h: Added.
54037 * css/MediaList.cpp: Added.
54038 (WebCore::MediaList::MediaList):
54039 (WebCore::MediaList::contains):
54040 (WebCore::MediaList::parentStyleSheet):
54041 (WebCore::MediaList::parentRule):
54042 (WebCore::MediaList::deleteMedium):
54043 (WebCore::MediaList::setMediaText):
54044 * css/MediaList.h: Added.
54045 * css/StyleSheet.cpp: Added.
54046 (WebCore::StyleSheet::StyleSheet):
54047 (WebCore::StyleSheet::parentStyleSheet):
54048 (WebCore::StyleSheet::setMedia):
54049 * css/StyleSheet.h: Added.
54050 (WebCore::StyleSheet::ownerNode):
54051 * css/StyleSheetList.cpp: Added.
54052 (WebCore::StyleSheetList::~StyleSheetList):
54053 (WebCore::StyleSheetList::add):
54054 (WebCore::StyleSheetList::remove):
54055 (WebCore::StyleSheetList::item):
54056 * css/StyleSheetList.h: Added.
54057 * css/css_stylesheetimpl.cpp: Removed.
54058 * css/css_stylesheetimpl.h: Removed.
54060 2006-05-15 Eric Seidel <eseidel@apple.com>
54062 * WebCore.xcodeproj/project.pbxproj: build fix.
54064 2006-05-15 Eric Seidel <eseidel@apple.com>
54066 Reviewed by ggaren.
54068 Split dom_xmlimpl.* into separate files (one per class).
54070 * WebCore.xcodeproj/project.pbxproj:
54071 * dom/Entity.cpp: Added.
54072 (WebCore::Entity::Entity):
54073 * dom/Entity.h: Added.
54074 * dom/EntityReference.cpp: Added.
54075 (WebCore::EntityReference::EntityReference):
54076 * dom/EntityReference.h: Added.
54077 * dom/Notation.cpp: Added.
54078 (WebCore::Notation::Notation):
54079 * dom/Notation.h: Added.
54080 * dom/ProcessingInstruction.cpp: Added.
54081 (WebCore::ProcessingInstruction::ProcessingInstruction):
54082 * dom/ProcessingInstruction.h: Added.
54083 * dom/dom_xmlimpl.cpp: Removed.
54084 * dom/dom_xmlimpl.h: Removed.
54086 2006-05-15 Eric Seidel <eseidel@apple.com>
54088 Reviewed by Tim Hatcher.
54090 Split html_imageimpl.* into separate files (one per class).
54091 http://bugs.webkit.org/show_bug.cgi?id=8929
54093 * WebCore.xcodeproj/project.pbxproj:
54094 * bindings/js/JSCanvasRenderingContext2DBase.cpp:
54095 * bindings/js/kjs_events.cpp:
54096 * bindings/js/kjs_html.cpp:
54097 * bindings/objc/DOMHTML.mm:
54098 * bridge/mac/WebCoreFrameBridge.mm:
54099 * dom/Document.cpp:
54100 * editing/JSEditor.cpp:
54101 * html/CanvasRenderingContext2D.cpp:
54102 * html/HTMLAnchorElement.cpp:
54103 * html/HTMLAreaElement.cpp: Added.
54104 (WebCore::HTMLAreaElement::HTMLAreaElement):
54105 (WebCore::HTMLAreaElement::mapMouseEvent):
54106 (WebCore::HTMLAreaElement::getRect):
54107 (WebCore::HTMLAreaElement::getRegion):
54108 * html/HTMLAreaElement.h: Added.
54109 * html/HTMLCanvasElement.h:
54110 * html/HTMLDocument.cpp:
54111 * html/HTMLElementFactory.cpp:
54112 * html/HTMLFormCollection.cpp:
54113 * html/HTMLFormElement.cpp:
54114 * html/HTMLImageElement.cpp: Added.
54115 (WebCore::HTMLImageElement::HTMLImageElement):
54116 * html/HTMLImageElement.h: Added.
54117 * html/HTMLImageLoader.cpp: Added.
54118 (WebCore::HTMLImageLoader::HTMLImageLoader):
54119 * html/HTMLImageLoader.h: Added.
54120 * html/HTMLInputElement.cpp:
54121 * html/HTMLMapElement.cpp: Added.
54122 (WebCore::HTMLMapElement::mapMouseEvent):
54123 (WebCore::HTMLMapElement::parseMappedAttribute):
54124 * html/HTMLMapElement.h: Added.
54125 * html/HTMLObjectElement.cpp:
54126 * html/HTMLParser.cpp:
54127 * html/html_imageimpl.cpp: Removed.
54128 * html/html_imageimpl.h: Removed.
54129 * ksvg2/misc/SVGImageLoader.h:
54130 * kwq/WebCoreAXObject.mm:
54131 (-[WebCoreAXObject addChildrenToArray:]):
54133 * rendering/RenderImage.cpp:
54134 (WebCore::RenderImage::RenderImage):
54135 (WebCore::RenderImage::nodeAtPoint):
54137 2006-05-15 Eric Seidel <eseidel@apple.com>
54141 Split html_blockimpl.* into separate files (one per class).
54142 http://bugs.webkit.org/show_bug.cgi?id=8927
54144 * WebCore.xcodeproj/project.pbxproj:
54145 * bindings/js/kjs_html.cpp:
54146 * bindings/objc/DOMHTML.mm:
54147 * html/HTMLBlockquoteElement.cpp: Added.
54148 (WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
54149 * html/HTMLBlockquoteElement.h: Added.
54150 * html/HTMLDivElement.cpp: Added.
54151 * html/HTMLDivElement.h: Added.
54152 * html/HTMLElementFactory.cpp:
54153 * html/HTMLHRElement.cpp: Added.
54154 * html/HTMLHRElement.h: Added.
54155 * html/HTMLHeadingElement.cpp: Added.
54156 * html/HTMLHeadingElement.h: Added.
54157 * html/HTMLMarqueeElement.cpp: Added.
54158 (WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
54159 (WebCore::HTMLMarqueeElement::parseMappedAttribute):
54160 * html/HTMLMarqueeElement.h: Added.
54161 * html/HTMLParagraphElement.cpp: Added.
54162 * html/HTMLParagraphElement.h: Added.
54163 * html/HTMLParser.cpp:
54164 * html/HTMLPreElement.cpp: Added.
54165 (WebCore::HTMLPreElement::HTMLPreElement):
54166 (WebCore::HTMLPreElement::setWrap):
54167 * html/HTMLPreElement.h: Added.
54168 * html/HTMLTextFieldInnerElement.h:
54169 * html/html_blockimpl.cpp: Removed.
54170 * html/html_blockimpl.h: Removed.
54171 * rendering/RenderLayer.cpp:
54173 2006-05-15 Eric Seidel <eseidel@apple.com>
54175 Reviewed by ggaren.
54177 Split render_list.* and html_listimpl.* into separate files (one per class).
54178 http://bugs.webkit.org/show_bug.cgi?id=8925
54180 * WebCore.xcodeproj/project.pbxproj:
54181 * bindings/js/kjs_html.cpp:
54182 * bindings/objc/DOMHTML.mm:
54183 * bridge/mac/FrameMac.mm:
54184 (WebCore::FrameMac::attributedString):
54185 * html/HTMLDListElement.cpp: Added.
54186 (WebCore::HTMLDListElement::HTMLDListElement):
54187 * html/HTMLDListElement.h: Added.
54188 * html/HTMLDirectoryElement.cpp: Added.
54189 (WebCore::HTMLDirectoryElement::HTMLDirectoryElement):
54190 * html/HTMLDirectoryElement.h: Added.
54191 * html/HTMLElementFactory.cpp:
54192 * html/HTMLKeygenElement.cpp:
54193 * html/HTMLLIElement.cpp: Added.
54194 (WebCore::HTMLLIElement::HTMLLIElement):
54195 (WebCore::HTMLLIElement::parseMappedAttribute):
54196 (WebCore::HTMLLIElement::attach):
54197 (WebCore::HTMLLIElement::setType):
54198 * html/HTMLLIElement.h: Added.
54199 * html/HTMLMenuElement.cpp: Added.
54200 (WebCore::HTMLMenuElement::HTMLMenuElement):
54201 * html/HTMLMenuElement.h: Added.
54202 * html/HTMLOListElement.cpp: Added.
54203 (WebCore::HTMLOListElement::HTMLOListElement):
54204 (WebCore::HTMLOListElement::parseMappedAttribute):
54205 (WebCore::HTMLOListElement::setType):
54206 * html/HTMLOListElement.h: Added.
54207 (WebCore::HTMLOListElement::start):
54208 * html/HTMLOptionElement.cpp:
54209 (WebCore::HTMLOptionElement::HTMLOptionElement):
54210 (WebCore::HTMLOptionElement::checkDTD):
54211 (WebCore::HTMLOptionElement::text):
54212 (WebCore::HTMLOptionElement::setText):
54213 (WebCore::HTMLOptionElement::getSelect):
54214 (WebCore::HTMLOptionElement::setLabel):
54215 * html/HTMLOptionElement.h:
54216 * html/HTMLParser.cpp:
54217 * html/HTMLSelectElement.cpp:
54218 (WebCore::HTMLSelectElement::HTMLSelectElement):
54219 * html/HTMLUListElement.cpp: Added.
54220 (WebCore::HTMLUListElement::HTMLUListElement):
54221 * html/HTMLUListElement.h: Added.
54222 * html/html_listimpl.cpp: Removed.
54223 * html/html_listimpl.h: Removed.
54224 * kwq/WebCoreAXObject.mm:
54225 * rendering/InlineFlowBox.cpp:
54226 * rendering/ListMarkerBox.cpp: Added.
54227 (WebCore::ListMarkerBox::ListMarkerBox):
54228 (WebCore::ListMarkerBox::isText):
54229 * rendering/ListMarkerBox.h: Added.
54230 * rendering/RenderContainer.cpp:
54231 (WebCore::updateListMarkerNumbers):
54232 (WebCore::RenderContainer::addChild):
54233 (WebCore::RenderContainer::removeChild):
54234 (WebCore::RenderContainer::layout):
54235 (WebCore::RenderContainer::removeLeftoverAnonymousBoxes):
54236 (WebCore::RenderContainer::positionForCoordinates):
54237 (WebCore::RenderContainer::lineBoxRects):
54238 * rendering/RenderListItem.cpp: Added.
54239 (WebCore::RenderListItem::RenderListItem):
54240 (WebCore::RenderListItem::setStyle):
54241 (WebCore::RenderListItem::calcValue):
54242 (WebCore::RenderListItem::markerStringValue):
54243 * rendering/RenderListItem.h: Added.
54244 (WebCore::RenderListItem::renderName):
54245 (WebCore::RenderListItem::setValue):
54246 (WebCore::RenderListItem::setNotInList):
54247 (WebCore::RenderListItem::notInList):
54248 * rendering/RenderListMarker.cpp: Added.
54249 (WebCore::RenderListMarker::RenderListMarker):
54250 (WebCore::RenderListMarker::setStyle):
54251 (WebCore::RenderListMarker::paint):
54252 (WebCore::RenderListMarker::layout):
54253 (WebCore::RenderListMarker::calcMinMaxWidth):
54254 * rendering/RenderListMarker.h: Added.
54255 (WebCore::RenderListMarker::renderName):
54256 * rendering/RenderObject.cpp:
54257 * rendering/render_list.cpp: Removed.
54258 * rendering/render_list.h: Removed.
54260 2006-05-15 Sam Weinig <sam.weinig@gmail.com>
54262 Reviewed by eseidel.
54264 Split render_form.* into separate files (one per class).
54265 http://bugs.webkit.org/show_bug.cgi?id=8889
54267 * WebCore.xcodeproj/project.pbxproj:
54268 * html/HTMLButtonElement.cpp:
54269 (WebCore::HTMLButtonElement::HTMLButtonElement):
54270 * html/HTMLFieldSetElement.cpp:
54271 * html/HTMLFormElement.cpp:
54272 * html/HTMLInputElement.cpp:
54273 * html/HTMLLabelElement.cpp:
54274 * html/HTMLLegendElement.cpp:
54275 (WebCore::HTMLLegendElement::createRenderer):
54276 * html/HTMLOptionElement.cpp:
54277 * html/HTMLSelectElement.cpp:
54278 * html/HTMLTextAreaElement.cpp:
54279 (WebCore::HTMLTextAreaElement::selectionStart):
54280 (WebCore::HTMLTextAreaElement::selectionEnd):
54281 (WebCore::HTMLTextAreaElement::setSelectionStart):
54282 (WebCore::HTMLTextAreaElement::setSelectionEnd):
54283 (WebCore::HTMLTextAreaElement::setSelectionRange):
54284 (WebCore::HTMLTextAreaElement::parseMappedAttribute):
54285 (WebCore::HTMLTextAreaElement::createRenderer):
54286 (WebCore::HTMLTextAreaElement::setValue):
54287 (WebCore::HTMLTextAreaElement::setDefaultValue):
54288 (WebCore::HTMLTextAreaElement::setAccessKey):
54289 * kwq/KWQComboBox.mm:
54290 * kwq/KWQFileButton.mm:
54291 * kwq/KWQListBox.mm:
54292 * kwq/KWQSlider.mm:
54293 * platform/mac/WebCoreTextField.mm:
54294 * rendering/RenderFieldset.cpp: Added.
54295 (WebCore::RenderFieldset::RenderFieldset):
54296 (WebCore::RenderFieldset::findLegend):
54297 (WebCore::RenderFieldset::paintBorderMinusLegend):
54298 (WebCore::RenderFieldset::setStyle):
54299 * rendering/RenderFieldset.h: Added.
54300 (WebCore::RenderFieldset::renderName):
54301 * rendering/RenderFileButton.cpp: Added.
54302 (WebCore::RenderFileButton::RenderFileButton):
54303 (WebCore::RenderFileButton::calcMinMaxWidth):
54304 (WebCore::RenderFileButton::updateFromElement):
54305 (WebCore::RenderFileButton::click):
54306 * rendering/RenderFileButton.h: Added.
54307 (WebCore::RenderFileButton::renderName):
54308 (WebCore::RenderFileButton::calcReplacedHeight):
54309 (WebCore::RenderFileButton::isEditable):
54310 * rendering/RenderFormElement.cpp: Added.
54311 (WebCore::RenderFormElement::RenderFormElement):
54312 (WebCore::RenderFormElement::baselinePosition):
54313 (WebCore::RenderFormElement::layout):
54314 * rendering/RenderFormElement.h: Added.
54315 (WebCore::RenderFormElement::renderName):
54316 (WebCore::RenderFormElement::isFormElement):
54317 (WebCore::RenderFormElement::borderTop):
54318 (WebCore::RenderFormElement::borderBottom):
54319 (WebCore::RenderFormElement::borderLeft):
54320 (WebCore::RenderFormElement::borderRight):
54321 (WebCore::RenderFormElement::paddingTop):
54322 (WebCore::RenderFormElement::paddingBottom):
54323 (WebCore::RenderFormElement::paddingLeft):
54324 (WebCore::RenderFormElement::paddingRight):
54325 (WebCore::RenderFormElement::canHaveIntrinsicMargins):
54326 (WebCore::RenderFormElement::intrinsicMargin):
54327 (WebCore::RenderFormElement::isEditable):
54328 * rendering/RenderImageButton.cpp: Added.
54329 (WebCore::RenderImageButton::RenderImageButton):
54330 * rendering/RenderImageButton.h: Added.
54331 (WebCore::RenderImageButton::renderName):
54332 (WebCore::RenderImageButton::isImageButton):
54333 * rendering/RenderLabel.cpp: Added.
54334 (WebCore::RenderLabel::RenderLabel):
54335 * rendering/RenderLabel.h: Added.
54336 (WebCore::RenderLabel::renderName):
54337 * rendering/RenderLegend.cpp: Added.
54338 (WebCore::RenderLegend::RenderLegend):
54339 * rendering/RenderLegend.h: Added.
54340 (WebCore::RenderLegend::renderName):
54341 * rendering/RenderLineEdit.cpp: Added.
54342 (WebCore::RenderLineEdit::RenderLineEdit):
54343 * rendering/RenderLineEdit.h: Added.
54344 (WebCore::RenderLineEdit::renderName):
54345 (WebCore::RenderLineEdit::calcReplacedHeight):
54346 (WebCore::RenderLineEdit::canHaveIntrinsicMargins):
54347 (WebCore::RenderLineEdit::isTextField):
54348 (WebCore::RenderLineEdit::isEditable):
54349 * rendering/RenderSelect.cpp: Added.
54350 (WebCore::RenderSelect::RenderSelect):
54351 (WebCore::RenderSelect::setWidgetWritingDirection):
54352 (WebCore::RenderSelect::setStyle):
54353 (WebCore::RenderSelect::updateFromElement):
54354 (WebCore::RenderSelect::baselinePosition):
54355 (WebCore::RenderSelect::calcMinMaxWidth):
54356 (WebCore::RenderSelect::layout):
54357 (WebCore::RenderSelect::valueChanged):
54358 (WebCore::RenderSelect::selectionChanged):
54359 (WebCore::RenderSelect::updateSelection):
54360 * rendering/RenderSelect.h: Added.
54361 (WebCore::RenderSelect::renderName):
54362 (WebCore::RenderSelect::calcReplacedHeight):
54363 (WebCore::RenderSelect::canHaveIntrinsicMargins):
54364 (WebCore::RenderSelect::selectionChanged):
54365 (WebCore::RenderSelect::setSelectionChanged):
54366 * rendering/RenderSlider.cpp: Added.
54367 (WebCore::RenderSlider::calcMinMaxWidth):
54368 (WebCore::RenderSlider::updateFromElement):
54369 * rendering/RenderSlider.h: Added.
54370 (WebCore::RenderSlider::renderName):
54371 (WebCore::RenderSlider::canHaveIntrinsicMargins):
54372 * rendering/RenderTextArea.cpp: Added.
54373 (WebCore::RenderTextArea::RenderTextArea):
54374 (WebCore::RenderTextArea::calcMinMaxWidth):
54375 (WebCore::RenderTextArea::setStyle):
54376 (WebCore::RenderTextArea::updateFromElement):
54377 (WebCore::RenderTextArea::selectionStart):
54378 (WebCore::RenderTextArea::selectionEnd):
54379 (WebCore::RenderTextArea::setSelectionStart):
54380 (WebCore::RenderTextArea::setSelectionEnd):
54381 (WebCore::RenderTextArea::select):
54382 (WebCore::RenderTextArea::setSelectionRange):
54383 * rendering/RenderTextArea.h: Added.
54384 (WebCore::RenderTextArea::renderName):
54385 (WebCore::RenderTextArea::isTextArea):
54386 (WebCore::RenderTextArea::isEdited):
54387 (WebCore::RenderTextArea::canHaveIntrinsicMargins):
54388 (WebCore::RenderTextArea::isEditable):
54389 * rendering/render_form.cpp: Removed.
54390 * rendering/render_form.h: Removed.
54392 2006-05-15 Anders Carlsson <acarlsson@apple.com>
54396 Remove the XPath log calls. They were causing leaks and were never
54399 * bridge/mac/WebCorePageBridge.mm:
54400 (initializeLoggingChannelsIfNecessary):
54401 * platform/Logging.cpp:
54402 * platform/Logging.h:
54403 * xpath/XPathResult.cpp:
54404 (WebCore::XPathResult::convertTo):
54405 * xpath/impl/XPathFunctions.cpp:
54407 (WebCore::XPath::FunCount::doEvaluate):
54408 (WebCore::XPath::FunSum::doEvaluate):
54409 (WebCore::XPath::FunctionLibrary::createFunction):
54410 * xpath/impl/XPathPath.cpp:
54411 (WebCore::XPath::Filter::doEvaluate):
54412 (WebCore::XPath::LocationPath::doEvaluate):
54413 * xpath/impl/XPathPredicate.cpp:
54414 (WebCore::XPath::Negative::doEvaluate):
54415 (WebCore::XPath::NumericOp::doEvaluate):
54416 (WebCore::XPath::Union::doEvaluate):
54417 * xpath/impl/XPathStep.cpp:
54418 (WebCore::XPath::Step::evaluate):
54419 (WebCore::XPath::Step::nodesInAxis):
54420 (WebCore::XPath::Step::nodeTestMatches):
54421 * xpath/impl/XPathValue.cpp:
54422 (WebCore::XPath::Value::toNodeVector):
54424 2006-05-15 Eric Seidel <eseidel@apple.com>
54428 * html/HTMLBodyElement.cpp: Fix case of #include "cssstyleselector.h"
54430 2006-05-15 Anders Carlsson <acarlsson@apple.com>
54432 Reviewed by Maciej.
54434 http://bugs.webkit.org/show_bug.cgi?id=8913
54435 REGRESSION: Can view source for text files
54437 * bridge/mac/WebCoreFrameBridge.h:
54438 * bridge/mac/WebCoreFrameBridge.mm:
54439 (-[WebCoreFrameBridge canProvideDocumentSource]):
54440 (-[WebCoreFrameBridge canSaveAsWebArchive]):
54442 2006-05-15 David Hyatt <hyatt@apple.com>
54444 Remove the .forPrinter boolean from FontPlatformData. After the initial
54445 acquisition of an NSFont, the font is then adjusted to printer or screen
54446 when put into a FontPlatformData. Then it can simply be used in the hash
54447 lookup to get a FontData.
54451 * platform/Font.cpp:
54452 (WebCore::WidthIterator::advance):
54453 * platform/FontData.h:
54454 * platform/FontDescription.h:
54455 (WebCore::FontDescription::bold):
54456 * platform/FontPlatformData.h:
54457 (WebCore::FontPlatformData::syntheticOblique):
54458 * platform/mac/FontCacheMac.mm:
54459 (WebCore::FontCache::getFontDataForCharacters):
54460 * platform/mac/FontData.mm:
54461 (WebCore::FontData::smallCapsFontData):
54462 (WebCore::getSmallCapsFontData):
54463 (WebCore::setUpFont):
54464 * platform/mac/FontMac.mm:
54465 (WebCore::ATSULayoutParameters::initialize):
54466 * platform/mac/WebTextRendererFactory.h:
54467 * platform/mac/WebTextRendererFactory.mm:
54468 (-[WebTextRendererFactory rendererWithFont:]):
54469 (-[WebTextRendererFactory fontWithDescription:WebCore::familyIndex:]):
54471 2006-05-15 Anders Carlsson <acarlsson@apple.com>
54473 Reviewed by Maciej.
54475 * dom/Document.idl:
54476 Remove #if XPATH_SUPPORT until we have a way to feed defines to the bindings generator
54477 (see http://bugs.webkit.org/show_bug.cgi?id=8912)
54479 2006-05-14 Mitz Pettel <opendarwin.org@mitzpettel.com>
54483 - fix http://bugs.webkit.org/show_bug.cgi?id=6838
54484 Incomplete repaint of collapsed table borders
54486 This patch updates the implementation of collapsing borders to match
54489 Test: fast/repaint/table-collapsed-border.html
54491 * rendering/RenderTable.cpp:
54492 (WebCore::RenderTable::RenderTable):
54493 (WebCore::RenderTable::layout): Calculate horizontal overflows.
54494 (WebCore::RenderTable::calcMinMaxWidth): Added call to recalcHorizontalBorders.
54495 (WebCore::RenderTable::colElement): Made const.
54496 (WebCore::RenderTable::calcBorderLeft): Calculates the left border. In the collapsing
54497 borders model, this is the left border of the leftmost cell of the first row.
54498 (WebCore::RenderTable::calcBorderRight): Ditto for the right border.
54499 (WebCore::RenderTable::recalcHorizontalBorders): Added.
54500 (WebCore::RenderTable::borderTop): Changed to return outerBorderTop in the
54502 (WebCore::RenderTable::borderBottom): Changed to return outerBorderBottom in
54503 the collapsing case.
54504 (WebCore::RenderTable::outerBorderTop): Added. Returns the table half of the
54505 top border, which is half the widest top border on the first row.
54506 (WebCore::RenderTable::outerBorderBottom): Added. Returns the table half of the
54507 bottom border, which is half the widest bottom border on the last row.
54508 (WebCore::RenderTable::outerBorderLeft): Added. Returns the table half of the
54509 left border, which is half the widest left border on the leftmost column.
54510 (WebCore::RenderTable::outerBorderRight): Added. Returns the table half of the
54511 right border, which is half the widest right border on the rightmost column.
54512 (WebCore::RenderTable::cellAbove): Return 0 if the cell is in the first row
54514 (WebCore::RenderTable::cellBelow): Return 0 if the cell is in the last row
54516 * rendering/RenderTable.h:
54517 (WebCore::RenderTable::borderLeft):
54518 (WebCore::RenderTable::borderRight):
54519 (WebCore::RenderTable::overflowHeight):
54520 * rendering/RenderTableCell.cpp:
54521 (WebCore::RenderTableCell::borderLeft): Removed unnecessary use of floats.
54522 (WebCore::RenderTableCell::borderTop): Ditto.
54523 (WebCore::RenderTableCell::paint): Account for the table half of the vertical
54525 (WebCore::RenderTableCell::paintCollapsedBorder): Removed unnecessary use of
54527 * rendering/RenderTableSection.cpp:
54528 (WebCore::RenderTableSection::RenderTableSection):
54529 (WebCore::RenderTableSection::layoutRows): Added call to recalcOuterBorder.
54530 (WebCore::RenderTableSection::calcOuterBorderTop): Added. Calculates the outer half of
54531 the section's top border, which is half the widest top border on the first row.
54532 (WebCore::RenderTableSection::calcOuterBorderBottom): Ditto for the bottom border.
54533 (WebCore::RenderTableSection::calcOuterBorderLeft): Ditto for the left border.
54534 (WebCore::RenderTableSection::calcOuterBorderRight): Ditto for the right border.
54535 (WebCore::RenderTableSection::recalcOuterBorder): Added.
54536 (WebCore::RenderTableSection::paint): Account for the table half of the borders.
54537 * rendering/RenderTableSection.h:
54538 (WebCore::RenderTableSection::outerBorderTop):
54539 (WebCore::RenderTableSection::outerBorderBottom):
54540 (WebCore::RenderTableSection::outerBorderLeft):
54541 (WebCore::RenderTableSection::outerBorderRight):
54542 * rendering/render_style.cpp:
54543 (WebCore::RenderStyle::diff): Changed to return Layout if a border style changed
54544 from 'hidden' to 'none' or vice versa in the collapsing borders model, since
54545 'hidden' suppresses other borders.
54547 2006-05-14 Mitz Pettel <opendarwin.org@mitzpettel.com>
54551 - test for http://bugs.webkit.org/show_bug.cgi?id=8739
54552 Crash in RenderTableSection::paint due to manipulating DOM on resize
54554 * manual-tests/dom-manipulation-on-resize.html: Added.
54556 2006-05-14 Rob Buis <buis@kde.org>
54560 Fix for http://bugs.webkit.org/show_bug.cgi?id=5882:
54561 disabled type="file" element doesn't appear disabled
54563 Be sure to call setDisabled on the file button when in
54564 RenderFileButton::updateFromElement.
54566 * kwq/KWQFileButton.h:
54567 * kwq/KWQFileButton.mm:
54568 (-[WebFileChooserButton setEnabled:]):
54569 (KWQFileButton::setDisabled):
54570 * rendering/render_form.cpp:
54571 (WebCore::RenderFileButton::updateFromElement):
54573 2006-05-14 Steve Falkenburg <sfalken@apple.com>
54577 * platform/win/FontWin.cpp:
54578 (WebCore::FontFallbackList::fontDataAt):
54579 (WebCore::hackishExtentForString):
54580 (WebCore::Font::floatWidth):
54581 (WebCore::Font::drawText):
54582 (WebCore::Font::selectionRectForText):
54583 (WebCore::Font::offsetForPosition):
54585 2006-05-14 David Hyatt <hyatt@apple.com>
54587 Bug 8895. Rework font substitution and fallback. Lift the concept of
54588 substitution and fallback out of FontData and up into the FontFallbackList.
54589 See the bug for details of issues fixed in the fallback code.
54593 * WebCore.xcodeproj/project.pbxproj:
54594 * platform/Font.cpp:
54595 (WebCore::m_finalRoundingWidth):
54596 (WebCore::WidthIterator::advance):
54597 (WebCore::Font::primaryFont):
54598 (WebCore::Font::fontDataAt):
54599 (WebCore::Font::fontDataForCharacters):
54600 (WebCore::Font::ascent):
54601 (WebCore::Font::descent):
54602 (WebCore::Font::lineSpacing):
54603 (WebCore::Font::xHeight):
54604 (WebCore::Font::isFixedPitch):
54606 (WebCore::Font::getNSFont):
54607 * platform/FontCache.h: Added.
54608 * platform/FontData.h:
54609 (WebCore::FontData::pitch):
54610 (WebCore::FontData::getNSFont):
54612 * platform/FontFallbackList.cpp: Added.
54613 (WebCore::m_pitch):
54614 (WebCore::FontFallbackList::~FontFallbackList):
54615 (WebCore::FontFallbackList::invalidate):
54616 (WebCore::FontFallbackList::determinePitch):
54617 (WebCore::FontFallbackList::fontDataAt):
54618 (WebCore::FontFallbackList::fontDataForCharacters):
54619 * platform/FontFallbackList.h:
54620 (WebCore::FontFallbackList::isFixedPitch):
54621 (WebCore::FontFallbackList::primaryFont):
54622 * platform/FontFamily.h:
54623 * platform/mac/FontCacheMac.mm: Added.
54624 (WebCore::FontCache::getFontData):
54625 (WebCore::FontCache::getFontDataForCharacters):
54626 * platform/mac/FontData.mm:
54627 (WebCore::FontData::containsCharacters):
54628 * platform/mac/FontMac.mm:
54629 (WebCore::ATSULayoutParameters::initialize):
54630 * platform/mac/WebTextRendererFactory.h:
54631 * platform/mac/WebTextRendererFactory.mm:
54632 (-[WebTextRendererFactory fallbackFontWithTraits:size:]):
54633 (-[WebTextRendererFactory fontWithDescription:WebCore::familyIndex:]):
54634 * platform/win/FontWin.cpp:
54635 (WebCore::FontFallbackList::determinePitch):
54636 (WebCore::FontFallbackList::primaryFont):
54637 (WebCore::FontFallbackList::fontDataAt):
54638 (WebCore::FontFallbackList::fontDataForCharacters):
54640 2006-05-14 Sam Weinig <sam.weinig@gmail.com>
54642 Reviewed by Hyatt, landed by ap.
54644 Fix for <http://bugs.webkit.org/show_bug.cgi?id=8387>
54645 "border-left/padding-Left do not show up on multiline rtl inline boxes"
54647 Test: fast/inline/inline-borders-with-bidi-override.html: added
54649 * rendering/InlineFlowBox.cpp:
54650 (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
54652 2006-05-14 Steve Falkenburg <sfalken@apple.com>
54654 Fix the Windows build the rest of the way
54656 * WebCore.vcproj/WebCore/WebCore.vcproj:
54658 2006-05-14 Steve Falkenburg <sfalken@apple.com>
54660 Get FontWin.cpp compiling.
54661 WebCore and JSCore now build, but Spinneret still gets link errors.
54663 * platform/win/FontWin.cpp:
54664 (WebCore::Font::offsetForPosition):
54666 2006-05-14 Steve Falkenburg <sfalken@apple.com>
54668 Reviewed by maciej.
54670 Fix Windows build except for fontwin.cpp.
54672 * WebCore/platform/win/FontWin.cpp:
54673 * WebCore.vcproj/WebCore/WebCore.vcproj:
54674 * bridge/win/FrameWin.cpp:
54676 2006-05-13 Kevin M. Ollivier <kevino@theolliviers.com>
54678 Reviewed by Darin, landed by ap.
54680 - http://bugs.webkit.org/show_bug.cgi?id=8528
54681 Bakefiles (and generated Makefiles) for wx and gdk ports
54683 * make-generated-sources.sh:
54684 Added script to configure environment to run DerivedSources.make
54686 * move-js-headers.sh:
54687 Added script to copy JavaScriptCore includes into one dir so that
54688 Framework-style includes will work on all OSes. (written by Mike Emmel)
54690 * platform/wx: New dir, home for the wxWidgets port
54691 * platform/wx/wx-encodings.txt: Added temp. stub for wx encodings file.
54693 * Projects: New dir, for various project files for ports.
54695 * Projects/gdk: New dir, GDK port files.
54696 * Projects/webcore-gdk.bkl: Bakefile to generate GDK port project files
54698 * Projects/wx: New dir, wxWidgets port files.
54699 * Projects/webcore-wx.bkl: Bakefile to generate wxWidgets port project files
54701 2006-05-13 Mitz Pettel <opendarwin.org@mitzpettel.com>
54703 Reviewed by Darin, landed by ap.
54705 - fix http://bugs.webkit.org/show_bug.cgi?id=8485
54706 iExploder(#11705): Freeze in RenderBlock::layout()
54708 Test: fast/text/midword-break-hang.html
54710 * rendering/bidi.cpp:
54711 (WebCore::RenderBlock::findNextLineBreak): If this is a mid-word break,
54712 ignore breakOnlyAfterWhiteSpace.
54714 2006-05-13 Alexey Proskuryakov <ap@nypop.com>
54718 * rendering/RenderBox.cpp:
54719 (WebCore::RenderBox::calcAbsoluteHorizontalValues): Initialize leftValue.
54720 This value will never be used, because 'left' and 'right' cannot both be 'auto'.
54721 (WebCore::RenderBox::calcAbsoluteVerticalValues): Initialize topValue.
54722 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): Same changes as above.
54724 2006-05-13 Alexey Proskuryakov <ap@nypop.com>
54726 Re-applied the fix for bug 8835 (REGRESSION: Line moves but selection
54727 highlight stays behind) to a correct file; removed the stale one.
54729 * rendering/RootInlineBox.cpp:
54730 (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
54731 and m_selectionBottom.
54732 * rendering/render_line.cpp: Removed.
54734 2006-05-13 Rob Buis <buis@kde.org>
54736 Reviewed by Darin, landed by ap.
54738 Fix for http://bugs.webkit.org/show_bug.cgi?id=8132
54739 CSS parser sometimes accepts real number as integer
54741 Add a boolean variable per css value to catch whether values
54742 are specified as floats or integers.
54744 Test: fast/css/rgb-float.html
54746 * css/CSSGrammar.y:
54747 * css/cssparser.cpp:
54748 (WebCore::CSSParser::validUnit):
54749 (WebCore::CSSParser::lex):
54751 * css/tokenizer.flex:
54753 2006-05-13 Sam Weinig <sam.weinig@gmail.com>
54755 Reviewed by Hyatt, landed by ap.
54757 Patch for http://bugs.webkit.org/show_bug.cgi?id=7604
54758 calcAbsoluteHorizontalValues() is being getting passed arguments
54759 in the wrong order in calcAbsoluteHorizontal()
54761 Cleans up the RenderBox code for absolutely positioned elements
54762 and adds new functions for replaced absolutely positioned
54763 elements. Now uses Length so that magic number -666666 for
54764 auto lengths is no longer used.
54766 * rendering/RenderBox.cpp:
54767 (WebCore::RenderBox::calcAbsoluteHorizontal):
54768 (WebCore::RenderBox::calcAbsoluteHorizontalValues):
54769 (WebCore::RenderBox::calcAbsoluteVertical):
54770 (WebCore::RenderBox::calcAbsoluteVerticalValues):
54771 (WebCore::RenderBox::calcAbsoluteHorizontalReplaced): Handle replaced
54773 (WebCore::RenderBox::calcAbsoluteVerticalReplaced): ditto.
54774 * rendering/RenderBox.h:
54776 2006-05-12 David Hyatt <hyatt@apple.com>
54778 Bug 8880, remove the remaining drawing/hit testing code from
54783 * platform/Font.cpp:
54784 (WebCore::m_finalRoundingWidth):
54785 (WebCore::WidthIterator::advanceOneCharacter):
54786 (WebCore::Font::selectionRectForText):
54787 (WebCore::Font::selectionRectForSimpleText):
54788 (WebCore::Font::offsetForPosition):
54789 (WebCore::Font::offsetForPositionForSimpleText):
54791 (WebCore::TextRun::makeComplete):
54792 * platform/FontData.h:
54793 * platform/GlyphBuffer.h:
54794 (WebCore::GlyphBuffer::clear):
54795 * platform/mac/FontData.mm:
54796 * platform/mac/FontMac.mm:
54797 (WebCore::Font::selectionRectForComplexText):
54798 (WebCore::Font::offsetForPositionForComplexText):
54800 2006-05-12 Kevin M. Ollivier <kevino@theolliviers.com>
54802 Reviewed by Maciej.
54804 Add missing include.
54806 * dom/Node.h: Add missing include for DeprecatedString.
54808 2006-05-12 Mitz Pettel <opendarwin.org@mitzpettel.com>
54812 - fix http://bugs.webkit.org/show_bug.cgi?id=8835
54813 REGRESSION: Line moves but selection highlight stays behind
54815 Test: fast/dynamic/selection-highlight-adjust.html
54817 * rendering/render_line.cpp:
54818 (WebCore::RootInlineBox::adjustPosition): Adjust m_selectionTop
54819 and m_selectionBottom.
54821 2006-05-12 Timothy Hatcher <timothy@apple.com>
54825 http://bugs.webkit.org/show_bug.cgi?id=7156
54826 Bug 7156: TinyMCE: Links are actually activated in editable area, not editable.
54828 Links in editable areas will not activate or perform a navigation
54829 change (on par with WinIE and Firefox.) To visit the link
54830 you can shift-click. Manual test added.
54832 * css/cssstyleselector.cpp:
54833 (WebCore::CSSStyleSelector::adjustRenderStyle):
54834 * html/HTMLAnchorElement.cpp:
54835 (WebCore::HTMLAnchorElement::defaultEventHandler):
54836 (WebCore::HTMLAnchorElement::setActive):
54837 * html/HTMLAnchorElement.h:
54838 * manual-tests/contenteditable-link.html: Added.
54839 * page/FrameView.cpp:
54840 (WebCore::selectCursor):
54842 2006-05-12 Eric Seidel <eseidel@apple.com>
54846 Split out html_inlineimpl.* into separate files (one per class).
54848 * WebCore.xcodeproj/project.pbxproj:
54849 * bindings/js/kjs_html.cpp:
54850 * bindings/objc/DOMHTML.mm:
54851 * editing/CreateLinkCommand.cpp:
54852 * editing/UnlinkCommand.cpp:
54853 * html/HTMLAnchorElement.cpp: Added.
54854 (WebCore::HTMLAnchorElement::HTMLAnchorElement):
54855 * html/HTMLAnchorElement.h: Added.
54856 * html/HTMLBRElement.cpp: Added.
54857 * html/HTMLBRElement.h: Added.
54858 * html/HTMLElementFactory.cpp:
54859 * html/HTMLFontElement.cpp: Added.
54860 (WebCore::HTMLFontElement::HTMLFontElement):
54861 (WebCore::HTMLFontElement::setColor):
54862 (WebCore::HTMLFontElement::setFace):
54863 (WebCore::HTMLFontElement::setSize):
54864 * html/HTMLFontElement.h: Added.
54865 * html/HTMLModElement.cpp: Added.
54866 (WebCore::HTMLModElement::setCite):
54867 (WebCore::HTMLModElement::setDateTime):
54868 * html/HTMLModElement.h: Added.
54869 * html/HTMLQuoteElement.cpp: Added.
54870 * html/HTMLQuoteElement.h: Added.
54871 * html/html_imageimpl.h:
54872 * html/html_inlineimpl.cpp: Removed.
54873 * html/html_inlineimpl.h: Removed.
54874 * page/FrameView.cpp:
54876 2006-05-12 Eric Seidel <eseidel@apple.com>
54882 * rendering/InlineFlowBox.cpp:
54883 * rendering/RootInlineBox.cpp:
54885 2006-05-12 Eric Seidel <eseidel@apple.com>
54889 Split out render_line.* into separate files (one per class).
54891 * WebCore.xcodeproj/project.pbxproj:
54892 * dom/ContainerNode.cpp:
54893 * rendering/EllipsisBox.cpp: Added.
54894 * rendering/EllipsisBox.h: Added.
54895 (WebCore::EllipsisBox::EllipsisBox):
54896 * rendering/InlineBox.cpp: Added.
54897 * rendering/InlineBox.h: Added.
54898 (WebCore::InlineBox::InlineBox):
54899 (WebCore::InlineBox::~InlineBox):
54900 (WebCore::InlineBox::bottomOverflow):
54901 (WebCore::InlineBox::rightOverflow):
54902 * rendering/InlineFlowBox.cpp: Added.
54903 (WebCore::InlineFlowBox::placeBoxesHorizontally):
54904 * rendering/InlineFlowBox.h: Added.
54905 * rendering/InlineRunBox.h: Added.
54906 (WebCore::InlineRunBox::InlineRunBox):
54907 (WebCore::InlineRunBox::paintBackgroundAndBorder):
54908 (WebCore::InlineRunBox::paintDecorations):
54909 * rendering/InlineTextBox.h:
54910 * rendering/RenderBlock.h:
54911 * rendering/RenderFlow.h:
54912 * rendering/RenderReplaced.cpp:
54913 * rendering/RootInlineBox.cpp: Added.
54914 * rendering/RootInlineBox.h: Added.
54915 (WebCore::RootInlineBox::RootInlineBox):
54916 * rendering/render_line.h: Removed.
54918 2006-05-12 Eric Seidel <eseidel@apple.com>
54922 Split out table_layout.* into separate files (one per class).
54923 Search replace instance variables "foo" with "m_foo" to comply with modern style.
54925 * WebCore.xcodeproj/project.pbxproj:
54926 * rendering/AutoTableLayout.cpp: Added.
54927 (WebCore::AutoTableLayout::AutoTableLayout):
54928 (WebCore::AutoTableLayout::recalcColumn):
54929 (WebCore::AutoTableLayout::fullRecalc):
54930 (WebCore::AutoTableLayout::calcMinMaxWidth):
54931 (WebCore::AutoTableLayout::calcEffectiveWidth):
54932 (WebCore::AutoTableLayout::insertSpanCell):
54933 (WebCore::AutoTableLayout::layout):
54934 (WebCore::AutoTableLayout::calcPercentages):
54935 * rendering/AutoTableLayout.h: Added.
54936 (WebCore::AutoTableLayout::totalPercent):
54937 (WebCore::AutoTableLayout::Layout::Layout):
54938 * rendering/FixedTableLayout.cpp: Added.
54939 (WebCore::FixedTableLayout::FixedTableLayout):
54940 (WebCore::FixedTableLayout::calcWidthArray):
54941 (WebCore::FixedTableLayout::calcMinMaxWidth):
54942 (WebCore::FixedTableLayout::layout):
54943 * rendering/FixedTableLayout.h: Added.
54944 * rendering/RenderTable.cpp:
54945 * rendering/TableLayout.h: Added.
54946 (WebCore::TableLayout::TableLayout):
54947 * rendering/table_layout.cpp: Removed.
54948 * rendering/table_layout.h: Removed.
54950 2006-05-12 David Hyatt <hyatt@apple.com>
54952 Bug 8877. Change form controls and the bridge entry points from the
54953 Safari UI to use Font instead of FontData.
54957 * bridge/mac/WebCoreStringTruncator.mm:
54960 (+[WebCoreStringTruncator widthOfString:font:]):
54961 (+[WebCoreStringTruncator clear]):
54962 * kwq/KWQComboBox.mm:
54963 (QComboBox::sizeHint):
54964 * kwq/KWQLineEdit.mm:
54965 (QLineEdit::sizeForCharacterWidth):
54966 * kwq/KWQListBox.mm:
54967 (itemTextRenderer):
54968 (groupLabelTextRenderer):
54969 (QListBox::sizeForNumberOfLines):
54970 (QListBox::clearCachedTextRenderers):
54971 (-[KWQTableView drawRow:clipRect:]):
54972 * platform/Font.cpp:
54973 (WebCore::Font::drawSimpleText):
54974 (WebCore::Font::drawText):
54976 (WebCore::TextStyle::disableRoundingHacks):
54977 (WebCore::TextStyle::setRTL):
54978 * platform/FontData.h:
54979 * platform/FontFallbackList.h:
54980 * platform/FontPlatformData.h:
54981 (WebCore::FontPlatformData::syntheticOblique):
54983 * platform/mac/FontData.mm:
54984 (WebCore::FontData::smallCapsFontData):
54985 (WebCore::findSubstituteRenderer):
54986 * platform/mac/FontMac.mm:
54987 (WebCore::FontFallbackList::setPlatformFont):
54988 (WebCore::m_wordSpacing):
54989 (WebCore::Font::drawComplexText):
54990 * platform/mac/WebCoreTextRenderer.mm:
54991 (WebCoreDrawTextAtPoint):
54992 (WebCoreTextFloatWidth):
54993 * platform/win/FontWin.cpp:
54994 (WebCore::Font::drawText):
54995 * rendering/InlineTextBox.cpp:
54996 (WebCore::InlineTextBox::positionForOffset):
54998 2006-05-12 Eric Seidel <eseidel@apple.com>
55002 Move render_button to RenderButton.
55003 Various small style cleanup.
55005 * WebCore.xcodeproj/project.pbxproj:
55006 * html/HTMLButtonElement.cpp:
55007 * html/HTMLElement.cpp:
55008 * html/HTMLGenericFormElement.cpp:
55009 * html/HTMLInputElement.cpp:
55010 * platform/mac/WebCoreTextArea.mm:
55011 * rendering/RenderApplet.h:
55012 * rendering/RenderBox.cpp:
55013 * rendering/RenderButton.cpp: Added.
55014 (WebCore::RenderButton::RenderButton):
55015 (WebCore::RenderButton::addChild):
55016 (WebCore::RenderButton::removeChild):
55017 * rendering/RenderButton.h: Added.
55018 * rendering/RenderEmptyApplet.h:
55019 * rendering/RenderHTMLCanvas.h:
55020 * rendering/RenderTreeAsText.cpp:
55021 * rendering/render_button.cpp: Removed.
55022 * rendering/render_button.h: Removed.
55023 * rendering/table_layout.cpp:
55024 (WebCore::FixedTableLayout::FixedTableLayout):
55025 (WebCore::FixedTableLayout::calcWidthArray):
55026 (WebCore::FixedTableLayout::calcMinMaxWidth):
55027 (WebCore::FixedTableLayout::layout):
55028 (WebCore::AutoTableLayout::AutoTableLayout):
55029 (WebCore::AutoTableLayout::recalcColumn):
55030 (WebCore::AutoTableLayout::fullRecalc):
55031 (WebCore::AutoTableLayout::calcMinMaxWidth):
55032 (WebCore::AutoTableLayout::calcEffectiveWidth):
55033 (WebCore::AutoTableLayout::insertSpanCell):
55034 (WebCore::AutoTableLayout::layout):
55035 * rendering/table_layout.h:
55036 (WebCore::TableLayout::TableLayout):
55037 (WebCore::AutoTableLayout::totalPercent):
55038 (WebCore::AutoTableLayout::Layout::Layout):
55040 2006-05-12 Eric Seidel <eseidel@apple.com>
55044 Split render_frames.* render_replaced.* and html_baseimpl.* into separate files (one class per file).
55045 http://bugs.webkit.org/show_bug.cgi?id=8878
55047 * WebCore.xcodeproj/project.pbxproj:
55048 * bindings/js/kjs_html.cpp:
55049 (KJS::JSHTMLDocumentProtoFunc::callAsFunction):
55050 (KJS::JSHTMLDocument::namedItemGetter):
55051 (KJS::JSHTMLDocument::getValueProperty):
55052 (KJS::JSHTMLDocument::getOwnPropertySlot):
55053 (KJS::JSHTMLDocument::putValueProperty):
55054 (KJS::JSHTMLElement::formIndexGetter):
55055 (KJS::JSHTMLElement::formNameGetter):
55056 (KJS::JSHTMLElement::selectIndexGetter):
55057 (KJS::JSHTMLElement::framesetNameGetter):
55058 (KJS::JSHTMLElement::runtimeObjectGetter):
55059 (KJS::JSHTMLElement::runtimeObjectPropertyGetter):
55060 (KJS::JSHTMLElement::getOwnPropertySlot):
55061 (KJS::JSHTMLElement::implementsCall):
55062 (KJS::JSHTMLElement::callAsFunction):
55063 (KJS::JSHTMLElement::getValueProperty):
55064 (KJS::JSHTMLElement::toString):
55066 (KJS::JSHTMLElement::pushEventHandlerScope):
55067 (KJS::HTMLElementFunction::callAsFunction):
55068 (KJS::JSHTMLElement::put):
55069 (KJS::JSHTMLElement::selectSetter):
55070 (KJS::JSHTMLElement::putValueProperty):
55071 (KJS::toHTMLElement):
55072 (KJS::toHTMLTableCaptionElement):
55073 (KJS::toHTMLTableSectionElement):
55074 (KJS::JSHTMLCollection::lengthGetter):
55075 (KJS::JSHTMLCollection::indexGetter):
55076 (KJS::JSHTMLCollection::nameGetter):
55077 (KJS::JSHTMLCollection::getOwnPropertySlot):
55078 (KJS::HTMLCollectionProtoFunc::callAsFunction):
55079 (KJS::JSHTMLSelectCollection::selectedIndexGetter):
55080 (KJS::JSHTMLSelectCollection::put):
55081 (KJS::OptionConstructorImp::construct):
55082 (KJS::getSelectHTMLCollection):
55083 * bindings/objc/DOMHTML.mm:
55084 * bridge/mac/FrameMac.mm:
55085 (WebCore::FrameMac::createFrame):
55086 * bridge/mac/WebCoreFrameBridge.mm:
55087 (-[WebCoreFrameBridge copyRenderNode:copier:]):
55088 * dom/Document.cpp:
55089 (WebCore::widgetForNode):
55090 * html/HTMLBodyElement.cpp: Added.
55091 (WebCore::HTMLBodyElement::HTMLBodyElement):
55092 (WebCore::HTMLBodyElement::parseMappedAttribute):
55093 * html/HTMLBodyElement.h: Added.
55094 * html/HTMLDocument.cpp:
55095 * html/HTMLElementFactory.cpp:
55096 * html/HTMLEmbedElement.cpp:
55097 * html/HTMLFrameElement.cpp: Added.
55098 (WebCore::HTMLFrameElement::isURLAllowed):
55099 (WebCore::HTMLFrameElement::parseMappedAttribute):
55100 (WebCore::HTMLFrameElement::setLocation):
55101 * html/HTMLFrameElement.h: Added.
55102 * html/HTMLFrameSetElement.cpp: Added.
55103 (WebCore::HTMLFrameSetElement::HTMLFrameSetElement):
55104 (WebCore::HTMLFrameSetElement::parseMappedAttribute):
55105 (WebCore::HTMLFrameSetElement::attach):
55106 (WebCore::HTMLFrameSetElement::defaultEventHandler):
55107 (WebCore::HTMLFrameSetElement::recalcStyle):
55108 * html/HTMLFrameSetElement.h: Added.
55109 * html/HTMLHeadElement.cpp: Added.
55110 (WebCore::HTMLHeadElement::HTMLHeadElement):
55111 * html/HTMLHeadElement.h: Added.
55112 * html/HTMLHtmlElement.cpp: Added.
55113 (WebCore::HTMLHtmlElement::HTMLHtmlElement):
55114 * html/HTMLHtmlElement.h: Added.
55115 * html/HTMLIFrameElement.cpp: Added.
55116 (WebCore::HTMLIFrameElement::HTMLIFrameElement):
55117 * html/HTMLIFrameElement.h: Added.
55118 * html/HTMLObjectElement.cpp:
55119 * html/HTMLParser.cpp:
55120 * html/html_baseimpl.cpp: Removed.
55121 * html/html_baseimpl.h: Removed.
55122 * kwq/WebCoreAXObject.mm:
55124 (WebCore::isFrameElement):
55125 (WebCore::Frame::applyEditingStyleToBodyElement):
55126 (WebCore::Frame::removeEditingStyleFromBodyElement):
55127 (WebCore::Frame::applyEditingStyleToElement):
55128 (WebCore::Frame::removeEditingStyleFromElement):
55129 (WebCore::Frame::selectionRect):
55130 (WebCore::Frame::isFrameSet):
55131 (WebCore::scanForForm):
55132 (WebCore::Frame::currentForm):
55133 (WebCore::Frame::nodeInfoAtPoint):
55134 (WebCore::Frame::adjustPageHeight):
55135 (WebCore::Frame::frameForWidget):
55136 (WebCore::Frame::forceLayoutWithPageWidthRange):
55137 (WebCore::Frame::passWidgetMouseDownEventToWidget):
55138 * page/FrameView.cpp:
55139 * rendering/RenderFrame.cpp: Added.
55140 (WebCore::RenderFrame::viewCleared):
55141 * rendering/RenderFrame.h: Added.
55142 * rendering/RenderFrameSet.cpp: Added.
55143 (WebCore::RenderFrameSet::RenderFrameSet):
55144 (WebCore::RenderFrameSet::~RenderFrameSet):
55145 (WebCore::RenderFrameSet::layout):
55146 (WebCore::RenderFrameSet::positionFrames):
55147 (WebCore::RenderFrameSet::userResize):
55148 (WebCore::RenderFrameSet::canResize):
55149 (WebCore::RenderFrameSet::dump):
55150 * rendering/RenderFrameSet.h: Added.
55151 * rendering/RenderImage.h:
55152 * rendering/RenderPart.cpp: Added.
55153 (WebCore::RenderPart::RenderPart):
55154 * rendering/RenderPart.h: Added.
55155 * rendering/RenderPartObject.cpp: Added.
55156 (WebCore::isURLAllowed):
55157 (WebCore::RenderPartObject::updateWidget):
55158 (WebCore::RenderPartObject::viewCleared):
55159 * rendering/RenderPartObject.h: Added.
55160 * rendering/RenderReplaced.cpp: Added.
55161 (WebCore::RenderReplaced::selectionColor):
55162 * rendering/RenderReplaced.h: Added.
55163 * rendering/RenderWidget.cpp: Added.
55164 (WebCore::RenderWidget::deleteWidget):
55165 * rendering/RenderWidget.h: Added.
55166 * rendering/render_form.h:
55167 * rendering/render_frames.cpp: Removed.
55168 * rendering/render_frames.h: Removed.
55169 * rendering/render_replaced.cpp: Removed.
55170 * rendering/render_replaced.h: Removed.
55172 2006-05-12 Eric Seidel <eseidel@apple.com>
55176 Split html_headimpl.* into separate files (one per class)
55177 http://bugs.webkit.org/show_bug.cgi?id=8875
55179 * WebCore.xcodeproj/project.pbxproj:
55180 * bindings/js/kjs_css.cpp:
55181 * bindings/js/kjs_html.cpp:
55182 (KJS::JSHTMLElement::headGetter):
55183 (KJS::JSHTMLElement::linkGetter):
55184 * bindings/objc/DOMCSS.mm:
55185 (+[DOMCounter _counterWith:]):
55186 (-[DOMCounter finalize]):
55187 (-[DOMCounter _DOMStyleSheet]):
55188 (-[DOMStyleSheet _initWithStyleSheet:]):
55189 (-[DOMStyleSheetList dealloc]):
55190 (-[DOMStyleSheetList finalize]):
55191 (-[DOMStyleSheetList _styleSheetList]):
55192 (-[DOMStyleSheetList _initWithStyleSheetList:]):
55193 (-[DOMCSSStyleSheet _CSSStyleSheet]):
55194 (-[DOMMediaList dealloc]):
55195 (-[DOMMediaList finalize]):
55196 (-[DOMMediaList _mediaList]):
55197 (-[DOMMediaList _initWithMediaList:]):
55198 (-[DOMCSSRuleList dealloc]):
55199 (-[DOMCSSRuleList finalize]):
55200 (-[DOMCSSRuleList _ruleList]):
55201 (-[DOMCSSRuleList _initWithRuleList:]):
55202 (-[DOMCSSRule dealloc]):
55203 (-[DOMCSSRule finalize]):
55204 (-[DOMCSSRule _rule]):
55205 (-[DOMCSSRule _initWithRule:]):
55206 (-[DOMCSSStyleRule _styleRule]):
55207 (-[DOMCSSMediaRule _mediaRule]):
55208 (-[DOMCSSFontFaceRule _fontFaceRule]):
55209 (-[DOMCSSPageRule _pageRule]):
55210 (-[DOMCSSImportRule _importRule]):
55211 (-[DOMCSSCharsetRule _importRule]):
55212 (-[DOMCSSStyleDeclaration dealloc]):
55213 (-[DOMCSSStyleDeclaration finalize]):
55214 (-[DOMCSSStyleDeclaration _initWithStyleDeclaration:]):
55215 (-[DOMCSSStyleDeclaration _styleDeclaration]):
55216 (-[DOMCSSValue dealloc]):
55217 (-[DOMCSSValue finalize]):
55218 (-[DOMCSSValue _value]):
55219 (-[DOMCSSValue _initWithValue:]):
55220 (-[DOMCSSPrimitiveValue _primitiveValue]):
55221 (-[DOMCSSValueList _valueList]):
55222 (getWrapperForRGB):
55223 (setWrapperForRGB):
55224 (removeWrapperForRGB):
55225 (-[DOMRGBColor _initWithRGB:]):
55226 (-[DOMRect dealloc]):
55227 (-[DOMRect finalize]):
55228 (-[DOMRect _rect]):
55229 (-[DOMRect _initWithRect:]):
55230 (-[DOMCounter dealloc]):
55231 (-[DOMCounter _counter]):
55232 (-[DOMCounter _initWithCounter:]):
55233 (-[DOMObject sheet]):
55234 * bindings/objc/DOMHTML.mm:
55235 (-[DOMHTMLCollection dealloc]):
55236 (-[DOMHTMLCollection finalize]):
55237 (-[DOMHTMLCollection _collection]):
55238 (-[DOMHTMLCollection _initWithCollection:]):
55239 (-[DOMHTMLOptionsCollection dealloc]):
55240 (-[DOMHTMLOptionsCollection finalize]):
55241 (-[DOMHTMLOptionsCollection _initWithOptionsCollection:]):
55242 (-[DOMHTMLOptionsCollection _optionsCollection]):
55243 (+[DOMHTMLElement _elementWith:]):
55244 (-[DOMHTMLElement _HTMLElement]):
55245 (-[DOMHTMLDocument _HTMLDocument]):
55246 (-[DOMHTMLHtmlElement _HTMLHtmlElement]):
55247 (-[DOMHTMLHeadElement _headElement]):
55248 (-[DOMHTMLLinkElement _linkElement]):
55249 (-[DOMHTMLTitleElement _titleElement]):
55250 (-[DOMHTMLMetaElement _metaElement]):
55251 (-[DOMHTMLBaseElement _baseElement]):
55252 (-[DOMHTMLStyleElement _styleElement]):
55253 (-[DOMHTMLBodyElement _bodyElement]):
55254 (-[DOMHTMLFormElement _formElement]):
55255 (+[DOMHTMLFormElement _formElementWith:]):
55256 (-[DOMHTMLIsIndexElement _isIndexElement]):
55257 (-[DOMHTMLSelectElement _selectElement]):
55258 (-[DOMHTMLOptGroupElement _optGroupElement]):
55259 (-[DOMHTMLOptionElement _optionElement]):
55260 (-[DOMHTMLInputElement _inputElement]):
55261 (-[DOMHTMLTextAreaElement _textAreaElement]):
55262 (-[DOMHTMLButtonElement _buttonElement]):
55263 (-[DOMHTMLLabelElement _labelElement]):
55264 (-[DOMHTMLLabelElement form]):
55265 (-[DOMHTMLFieldSetElement _fieldSetElement]):
55266 (-[DOMHTMLLegendElement _legendElement]):
55267 (-[DOMHTMLUListElement _uListElement]):
55268 (-[DOMHTMLOListElement _oListElement]):
55269 (-[DOMHTMLDListElement _dListElement]):
55270 (-[DOMHTMLDirectoryElement _directoryListElement]):
55271 (-[DOMHTMLMenuElement _menuListElement]):
55272 (-[DOMHTMLLIElement _liElement]):
55273 (-[DOMHTMLQuoteElement _quoteElement]):
55274 (-[DOMHTMLDivElement _divElement]):
55275 (-[DOMHTMLParagraphElement _paragraphElement]):
55276 (-[DOMHTMLHeadingElement _headingElement]):
55277 (-[DOMHTMLPreElement _preElement]):
55278 (-[DOMHTMLBRElement _BRElement]):
55279 (-[DOMHTMLBaseFontElement _baseFontElement]):
55280 (-[DOMHTMLFontElement _fontElement]):
55281 (-[DOMHTMLHRElement _HRElement]):
55282 (-[DOMHTMLModElement _modElement]):
55283 (-[DOMHTMLAnchorElement _anchorElement]):
55284 (-[DOMHTMLImageElement _imageElement]):
55285 (-[DOMHTMLObjectElement _objectElement]):
55286 (-[DOMHTMLParamElement _paramElement]):
55287 (-[DOMHTMLMapElement _mapElement]):
55288 (-[DOMHTMLAreaElement _areaElement]):
55289 (-[DOMHTMLScriptElement _scriptElement]):
55290 (+[DOMHTMLTableCaptionElement _tableCaptionElementWith:]):
55291 (-[DOMHTMLTableCaptionElement _tableCaptionElement]):
55292 (+[DOMHTMLTableSectionElement _tableSectionElementWith:]):
55293 (-[DOMHTMLTableSectionElement _tableSectionElement]):
55294 (-[DOMHTMLTableElement createTHead]):
55295 (-[DOMHTMLTableElement createTFoot]):
55296 (-[DOMHTMLTableElement createCaption]):
55297 (-[DOMHTMLTableElement insertRow:]):
55298 (+[DOMHTMLTableElement _tableElementWith:]):
55299 (-[DOMHTMLTableElement _tableElement]):
55300 (-[DOMHTMLTableColElement _tableColElement]):
55301 (-[DOMHTMLTableRowElement _tableRowElement]):
55302 (-[DOMHTMLTableRowElement insertCell:]):
55303 (+[DOMHTMLTableCellElement _tableCellElementWith:]):
55304 (-[DOMHTMLTableCellElement _tableCellElement]):
55305 (-[DOMHTMLFrameSetElement _frameSetElement]):
55306 (-[DOMHTMLFrameElement _frameElement]):
55307 (-[DOMHTMLIFrameElement _IFrameElement]):
55308 (-[DOMHTMLEmbedElement _embedElement]):
55310 * bridge/mac/FrameMac.mm:
55311 (WebCore::FrameMac::searchForLabelsAboveCell):
55312 (WebCore::FrameMac::searchForLabelsBeforeElement):
55313 (WebCore::FrameMac::createFrame):
55314 (WebCore::FrameMac::passMouseDownEventToWidget):
55315 (WebCore::FrameMac::passSubframeEventToSubframe):
55316 (WebCore::FrameMac::passWheelEventToChildWidget):
55317 (WebCore::FrameMac::fileWrapperForElement):
55318 (WebCore::listParent):
55319 (WebCore::FrameMac::attributedString):
55320 (WebCore::FrameMac::shouldBeginEditing):
55321 (WebCore::FrameMac::shouldEndEditing):
55322 (WebCore::FrameMac::setMarkedTextRange):
55323 * dom/Document.cpp:
55324 * dom/xml_tokenizer.cpp:
55325 * html/HTMLBaseElement.cpp: Added.
55326 (WebCore::HTMLBaseElement::removedFromDocument):
55327 (WebCore::HTMLBaseElement::process):
55328 * html/HTMLBaseElement.h: Added.
55329 * html/HTMLDocument.cpp:
55330 * html/HTMLElementFactory.cpp:
55331 * html/HTMLLinkElement.cpp: Added.
55332 (WebCore::HTMLLinkElement::HTMLLinkElement):
55333 (WebCore::HTMLLinkElement::process):
55334 * html/HTMLLinkElement.h: Added.
55335 * html/HTMLMetaElement.cpp: Added.
55336 (WebCore::HTMLMetaElement::HTMLMetaElement):
55337 (WebCore::HTMLMetaElement::parseMappedAttribute):
55338 (WebCore::HTMLMetaElement::process):
55339 (WebCore::HTMLMetaElement::setContent):
55340 (WebCore::HTMLMetaElement::setHttpEquiv):
55341 (WebCore::HTMLMetaElement::setName):
55342 * html/HTMLMetaElement.h: Added.
55343 * html/HTMLParser.cpp:
55344 * html/HTMLScriptElement.cpp: Added.
55345 (WebCore::HTMLScriptElement::HTMLScriptElement):
55346 (WebCore::HTMLScriptElement::parseMappedAttribute):
55347 (WebCore::HTMLScriptElement::evaluateScript):
55348 * html/HTMLScriptElement.h: Added.
55349 * html/HTMLStyleElement.cpp: Added.
55350 (WebCore::HTMLStyleElement::HTMLStyleElement):
55351 * html/HTMLStyleElement.h: Added.
55352 * html/HTMLTitleElement.cpp: Added.
55353 (WebCore::HTMLTitleElement::HTMLTitleElement):
55354 (WebCore::HTMLTitleElement::text):
55355 (WebCore::HTMLTitleElement::setText):
55356 * html/HTMLTitleElement.h: Added.
55357 * html/html_headimpl.cpp: Removed.
55358 * html/html_headimpl.h: Removed.
55359 * loader/CachedCSSStyleSheet.h:
55360 * rendering/RenderTableCell.cpp:
55361 (WebCore::RenderTableCell::updateFromElement):
55362 * rendering/RenderTableCol.cpp:
55363 (WebCore::RenderTableCol::updateFromElement):
55365 2006-05-12 Eric Seidel <eseidel@apple.com>
55369 Split out html_tableimpl.* into multiple files (one per class)
55370 http://bugs.webkit.org/show_bug.cgi?id=8873
55372 * WebCore.xcodeproj/project.pbxproj:
55373 * html/HTMLTableCaptionElement.cpp: Added.
55374 (WebCore::HTMLTableCaptionElement::HTMLTableCaptionElement):
55375 * html/HTMLTableCaptionElement.h: Added.
55376 * html/HTMLTableCellElement.cpp: Added.
55377 (WebCore::HTMLTableCellElement::HTMLTableCellElement):
55378 * html/HTMLTableCellElement.h: Added.
55379 * html/HTMLTableColElement.cpp: Added.
55380 (WebCore::HTMLTableColElement::HTMLTableColElement):
55381 (WebCore::HTMLTableColElement::endTagRequirement):
55382 (WebCore::HTMLTableColElement::tagPriority):
55383 (WebCore::HTMLTableColElement::checkDTD):
55384 * html/HTMLTableColElement.h: Added.
55385 * html/HTMLTableElement.cpp: Added.
55386 (WebCore::HTMLTableElement::HTMLTableElement):
55387 (WebCore::HTMLTableElement::setCaption):
55388 (WebCore::HTMLTableElement::setTHead):
55389 (WebCore::HTMLTableElement::setTFoot):
55390 (WebCore::HTMLTableElement::setTBody):
55391 (WebCore::HTMLTableElement::createTHead):
55392 (WebCore::HTMLTableElement::deleteTHead):
55393 (WebCore::HTMLTableElement::createTFoot):
55394 (WebCore::HTMLTableElement::deleteTFoot):
55395 (WebCore::HTMLTableElement::createCaption):
55396 (WebCore::HTMLTableElement::deleteCaption):
55397 (WebCore::HTMLTableElement::insertRow):
55398 (WebCore::HTMLTableElement::deleteRow):
55399 (WebCore::HTMLTableElement::addChild):
55400 (WebCore::HTMLTableElement::parseMappedAttribute):
55401 (WebCore::HTMLTableElement::attach):
55402 * html/HTMLTableElement.h: Added.
55403 * html/HTMLTablePartElement.cpp: Added.
55404 (WebCore::HTMLTablePartElement::parseMappedAttribute):
55405 * html/HTMLTablePartElement.h: Added.
55406 * html/HTMLTableRowElement.cpp: Added.
55407 (WebCore::HTMLTableRowElement::HTMLTableRowElement):
55408 (WebCore::HTMLTableRowElement::rowIndex):
55409 * html/HTMLTableRowElement.h: Added.
55410 * html/HTMLTableSectionElement.cpp: Added.
55411 (WebCore::HTMLTableSectionElement::insertRow):
55412 * html/HTMLTableSectionElement.h: Added.
55413 * html/html_tableimpl.cpp: Removed.
55414 * html/html_tableimpl.h: Removed.
55416 2006-05-10 Eric Seidel <eseidel@apple.com>
55418 Reviewed by mjs & adele.
55420 Split html_objectimpl.* into multiple files (one per class)
55421 http://bugs.webkit.org/show_bug.cgi?id=8836
55423 * WebCore.xcodeproj/project.pbxproj:
55424 * bindings/js/kjs_dom.cpp:
55425 (KJS::DOMNamedNodeMap::lengthGetter):
55426 (KJS::DOMNamedNodeMap::indexGetter):
55427 (KJS::DOMNamedNodeMap::nameGetter):
55428 (KJS::DOMNamedNodeMapProtoFunc::callAsFunction):
55429 (KJS::getRuntimeObject):
55430 * bindings/js/kjs_html.cpp:
55431 * html/HTMLAppletElement.cpp: Added.
55432 * html/HTMLAppletElement.h: Added.
55433 * html/HTMLElementFactory.cpp:
55434 * html/HTMLEmbedElement.cpp: Added.
55435 (WebCore::HTMLEmbedElement::HTMLEmbedElement):
55436 (WebCore::HTMLEmbedElement::getInstance):
55437 (WebCore::HTMLEmbedElement::parseMappedAttribute):
55438 * html/HTMLEmbedElement.h: Added.
55439 * html/HTMLNameCollection.cpp:
55440 (WebCore::HTMLNameCollection::traverseNextItem):
55441 * html/HTMLObjectElement.cpp: Added.
55442 (WebCore::HTMLObjectElement::getInstance):
55443 (WebCore::HTMLObjectElement::form):
55444 (WebCore::HTMLObjectElement::parseMappedAttribute):
55445 (WebCore::HTMLObjectElement::updateDocNamedItem):
55446 * html/HTMLObjectElement.h: Added.
55447 * html/HTMLParamElement.cpp: Added.
55448 * html/HTMLParamElement.h: Added.
55449 * html/HTMLParser.cpp:
55450 * html/HTMLPlugInElement.cpp: Added.
55451 * html/HTMLPlugInElement.h: Added.
55452 * html/html_objectimpl.cpp: Removed.
55453 * html/html_objectimpl.h: Removed.
55455 (WebCore::Frame::handleFallbackContent):
55456 * rendering/RenderApplet.cpp:
55457 * rendering/render_frames.cpp:
55458 (WebCore::RenderPartObject::updateWidget):
55460 2006-05-12 Darin Adler <darin@apple.com>
55464 - fix http://bugs.webkit.org/show_bug.cgi?id=8521
55465 crash bringing up context menu with CSS generated content
55467 * bridge/mac/FrameMac.mm: (WebCore::FrameMac::sendContextMenuEvent):
55468 Added a null check.
55470 * manual-tests/context-click-generated-content.html: Added.
55472 2006-05-12 Darin Adler <darin@apple.com>
55476 - fix http://bugs.webkit.org/show_bug.cgi?id=8715
55477 REGRESSION: Caret to the right of an image is a big black rectangle.
55479 * rendering/RenderBox.cpp: (WebCore::RenderBox::caretRect): Move caret to the
55480 right side of the rect when the offset is non-zero, rather than expanding it.
55482 * manual-tests/caret-image.html: Added.
55484 2006-05-12 Mitz Pettel <opendarwin.org@mitzpettel.com>
55486 Reviewed and landed by Anders.
55488 - fix http://bugs.webkit.org/show_bug.cgi?id=8866
55489 REGRESSION: Incorrect caret position in RTL text
55491 Test: fast/text/international/rtl-caret.html
55493 * rendering/InlineTextBox.cpp:
55494 (WebCore::InlineTextBox::positionForOffset): Added missing m_toAdd argument.
55496 2006-05-12 David Hyatt <hyatt@apple.com>
55498 Bug 8864. Lift WebCoreTextStyle up into the API (as TextStyle).
55502 * platform/Font.cpp:
55503 (WebCore::m_finalRoundingWidth):
55504 (WebCore::WidthIterator::advance):
55505 (WebCore::Font::width):
55506 (WebCore::Font::drawSimpleText):
55507 (WebCore::Font::drawText):
55508 (WebCore::Font::floatWidth):
55509 (WebCore::Font::floatWidthForSimpleText):
55511 (WebCore::TextStyle::m_attemptFontSubstitution):
55512 (WebCore::TextStyle::tabWidth):
55513 (WebCore::TextStyle::xPos):
55514 (WebCore::TextStyle::padding):
55515 (WebCore::TextStyle::rtl):
55516 (WebCore::TextStyle::ltr):
55517 (WebCore::TextStyle::directionalOverride):
55518 (WebCore::TextStyle::applyRunRounding):
55519 (WebCore::TextStyle::applyWordRounding):
55520 (WebCore::TextStyle::attemptFontSubstitution):
55521 (WebCore::Font::operator==):
55522 * platform/GraphicsContext.cpp:
55523 (WebCore::GraphicsContext::drawText):
55524 (WebCore::GraphicsContext::drawHighlightForText):
55525 * platform/GraphicsContext.h:
55526 * platform/mac/FontMac.mm:
55527 (WebCore::overrideLayoutOperation):
55528 (WebCore::ATSULayoutParameters::initialize):
55529 (WebCore::Font::selectionRectForText):
55530 (WebCore::Font::drawComplexText):
55531 (WebCore::Font::floatWidthForComplexText):
55532 (WebCore::Font::offsetForPosition):
55533 * rendering/InlineTextBox.cpp:
55534 (WebCore::InlineTextBox::selectionRect):
55535 (WebCore::InlineTextBox::paint):
55536 (WebCore::InlineTextBox::paintSelection):
55537 (WebCore::InlineTextBox::paintMarkedTextBackground):
55538 (WebCore::InlineTextBox::paintTextMatchMarker):
55539 (WebCore::InlineTextBox::offsetForPosition):
55540 (WebCore::InlineTextBox::positionForOffset):
55541 * rendering/RenderText.cpp:
55542 (WebCore::RenderText::widthFromCache):
55543 (WebCore::RenderText::calcMinMaxWidth):
55544 (WebCore::RenderText::width):
55545 * rendering/RenderTextField.cpp:
55546 (WebCore::RenderTextField::calcMinMaxWidth):
55547 * rendering/render_line.cpp:
55548 (WebCore::EllipsisBox::paint):
55550 2006-05-11 Alexey Proskuryakov <ap@nypop.com>
55554 - http://bugs.webkit.org/show_bug.cgi?id=8770
55555 XMLHttpRequest should strip CR/LF characters from the URL
55557 Test: fast/loader/url-strip-cr-lf-tab.html
55559 * platform/KURL.cpp:
55560 (appendEscapingBadChars): Strip CR, LF and TAB, as Firefox and IE do.
55562 2006-05-11 David Hyatt <hyatt@apple.com>
55564 Remove the misspelling drawing code from Font and FontData. Implement it
55565 natively in GraphicContext instead.
55569 * platform/FontData.h:
55570 * platform/GraphicsContext.cpp:
55571 * platform/GraphicsContext.h:
55572 * platform/cairo/GraphicsContextCairo.cpp:
55573 (WebCore::GraphicsContext::drawLineForMisspelling):
55574 * platform/mac/FontData.mm:
55575 * platform/mac/FontMac.mm:
55576 * platform/mac/GraphicsContextMac.mm:
55577 (WebCore::GraphicsContext::drawLineForMisspelling):
55578 * platform/win/FontWin.cpp:
55579 * rendering/InlineTextBox.cpp:
55580 (WebCore::InlineTextBox::paintSpellingMarker):
55582 2006-05-11 David Hyatt <hyatt@apple.com>
55584 Remove drawLineForText from the Font API. Implement it natively in
55585 the two GraphicsContexts (CG and Cairo) instead.
55590 * platform/FontData.h:
55591 * platform/GraphicsContext.cpp:
55592 * platform/GraphicsContext.h:
55593 * platform/cairo/GraphicsContextCairo.cpp:
55594 (WebCore::GraphicsContext::drawLineForText):
55595 * platform/cg/GraphicsContextCG.cpp:
55596 (WebCore::GraphicsContext::drawLineForText):
55597 * platform/mac/FontData.mm:
55598 * platform/mac/FontMac.mm:
55599 * platform/win/FontWin.cpp:
55600 (WebCore::Font::drawLineForText):
55601 * rendering/InlineTextBox.cpp:
55602 (WebCore::InlineTextBox::paintDecoration):
55603 (WebCore::InlineTextBox::paintMarkedTextUnderline):
55604 * rendering/render_line.cpp:
55605 (WebCore::InlineFlowBox::paintDecorations):
55607 2006-05-11 Steve Falkenburg <sfalken@apple.com>
55613 * dom/QualifiedName.h:
55614 (WebCore::QualifiedName::QualifiedName):
55616 2006-05-11 Steve Falkenburg <sfalken@apple.com>
55620 Fix crash on static constructors builds at exit due to qualified name default constructor not
55621 initializing m_impl.
55623 * dom/QualifiedName.cpp:
55624 (WebCore::QualifiedName::deref):
55626 2006-05-11 Mitz Pettel <opendarwin.org@mitzpettel.com>
55630 - fix http://bugs.webkit.org/show_bug.cgi?id=8851
55631 REGRESSION: RTL text shifted to the right
55633 Already covered by several tests in fast/text
55636 (WebCore::TextRun::TextRun): Added length parameter.
55637 * rendering/InlineTextBox.cpp: Pass the length to the TextRun constructor.
55638 (WebCore::InlineTextBox::selectionRect):
55639 (WebCore::InlineTextBox::paint):
55640 (WebCore::InlineTextBox::paintSelection):
55641 (WebCore::InlineTextBox::paintMarkedTextBackground):
55642 (WebCore::InlineTextBox::paintTextMatchMarker):
55643 (WebCore::InlineTextBox::offsetForPosition):
55644 (WebCore::InlineTextBox::positionForOffset):
55645 * rendering/RenderText.cpp:
55646 (WebCore::RenderText::widthFromCache): Pass length and from instead of from and to
55647 to the TextRun constructor.
55648 (WebCore::RenderText::width): Ditto.
55650 2006-05-11 David Hyatt <hyatt@apple.com>
55652 Fix a regression from the TextRun landing. Delete the characters in
55653 the adjustedRun, not the ones in the original run!
55657 * platform/mac/FontMac.mm:
55658 (WebCore::Font::drawComplexText):
55660 2006-05-10 Justin Garcia <justin.garcia@apple.com>
55662 Reviewed by thatcher, levi
55664 * editing/ReplaceSelectionCommand.cpp:
55665 (WebCore::ReplaceSelectionCommand::doApply):
55666 Removed a use fragment.hasMoreThanOneBlock to decide if the paragraph containing the
55667 position pasted into must be split to avoid block nesting. We now split unnecessarily
55668 some times, but the end merge cleans up for us.
55670 2006-05-11 David Hyatt <hyatt@apple.com>
55672 This patch makes drawHighlightForText a completely cross-platform method
55673 implemented by the GraphicsContext. The platform-specific implementations
55674 of the method in the Font class have been eliminated.
55676 Reviewed by andersca
55679 * platform/FontData.h:
55680 Remove the drawHighlight methods. Change the selectionRect method in
55681 Font to return a FloatRect so that the GraphicsContext can do an accurate
55684 * platform/GraphicsContext.cpp:
55685 (WebCore::GraphicsContext::drawHighlightForText):
55686 Implement the drawHighlightFunction in terms of the cross-platform
55687 Font selectionRect functions and a new float-based fillRect graphics context
55690 * platform/GraphicsContext.h:
55691 * platform/cairo/GraphicsContextCairo.cpp:
55692 (WebCore::GraphicsContext::fillRect):
55693 * platform/cg/GraphicsContextCG.cpp:
55694 (WebCore::GraphicsContext::fillRect):
55695 Add the new float-based fillRect function for Cairo and CG.
55697 * platform/mac/FontData.mm:
55698 (WebCore::CG_draw):
55699 (WebCore::ATSU_draw):
55700 Removed the CG and ATSU drawHighlight methods. Remove the drawing of
55701 the background from the deprecated draw methods (they'll be removed
55704 * platform/mac/FontMac.mm:
55705 (WebCore::Font::selectionRectForText):
55706 * platform/win/FontWin.cpp:
55707 (WebCore::Font::selectionRectForText):
55708 Change selectionRectForText to return a FloatRect instead of an IntRect,
55709 so that the GraphicsContext can do a precise fill.
55711 * rendering/InlineTextBox.cpp:
55712 (WebCore::InlineTextBox::selectionRect):
55713 (WebCore::InlineTextBox::positionForOffset):
55714 Modify the callers who expect an int-based selection rect so that they call
55717 2006-05-11 Darin Adler <darin@apple.com>
55721 - http://bugs.webkit.org/show_bug.cgi?id=8743
55722 REGRESSION: focus() on input field selects all text within it
55723 (was: cannot select cities on British Rail reservation site)
55725 Test: fast/forms/double-focus.html
55727 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::focus):
55728 Changed to only call setFocusNode, select, and revealSelection
55729 if the element is not already focused. Also changed to use return
55730 a bit more rather than else.
55732 2006-05-11 Darin Adler <darin@apple.com>
55734 Reviewed by Tim Hatcher (earlier version).
55736 - http://bugs.webkit.org/show_bug.cgi?id=8821
55737 use the preprocessor for IDL files
55739 * bindings/scripts/IDLParser.pm: Invoke the preprocessor via the "gcc"
55740 driver script, passing "-E" so we only preprocess, "-P" so we don't get
55741 "#line" directives, and "-x c++" so we handle both C and C++ comments.
55742 Removed the code to eliminate comments since the preprocessor handles that.
55743 * css/make-css-file-arrays.pl: This already invoked the preprocessor, but
55744 updated it to do the same way as above.
55746 2006-05-11 Anders Carlsson <acarlsson@apple.com>
55750 http://bugs.webkit.org/show_bug.cgi?id=7838
55751 Add support for mozilla-style node constructors as properties of the window object
55753 * DerivedSources.make:
55754 * WebCore.xcodeproj/project.pbxproj:
55755 Add new generated files.
55757 * bindings/js/JSCanvasRenderingContext2DBase.cpp:
55758 (WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
55759 * bindings/js/JSHTMLElementWrapperFactory.cpp:
55760 (WebCore::createJSWrapper):
55761 Specify the KJS namespace for JSHTMLElmement.
55763 * bindings/js/kjs_dom.cpp:
55765 Create a WebCore::JSHTMLDocument for document nodes. Also, create
55766 JSDocumentFragments for document fragments (instead of plain node objects).
55768 * bindings/js/kjs_html.cpp:
55769 (KJS::JSHTMLDocumentProtoFunc::callAsFunction):
55770 (KJS::JSHTMLDocument::JSHTMLDocument):
55771 (KJS::JSHTMLDocument::getOwnPropertySlot):
55772 Add a prototype for JSHTMLDocument and move all functions there.
55774 (KJS::JSHTMLElement::JSHTMLElement):
55775 (KJS::JSHTMLElement::getOwnPropertySlot):
55776 Update since JSHTMLElement now inherits from WebCore::JSHTMLElement.
55778 (KJS::JSHTMLElement::getValueProperty):
55779 (KJS::JSHTMLElement::putValueProperty):
55780 Remove title setter and getter. Those are autogenerated now.
55782 * bindings/js/kjs_html.h:
55783 (KJS::JSHTMLElement::):
55784 Inherit from WebCore::JSHTMLElement. Clarify the inheritance chain.
55786 * bindings/scripts/CodeGeneratorJS.pm:
55787 Always generate a prototype object, regardless of whether the object has any functions or
55790 Use the type of generator attributes to determine what constructor to use. This is useful for
55791 the XMLDocument property in DOMWindow.idl, since that's just an alias for the Document constructor.
55793 * dom/DocumentFragment.idl: Added.
55794 * html/HTMLDocument.idl: Added.
55795 * html/HTMLElement.idl: Added.
55797 * page/DOMWindow.idl:
55798 Add constructors for DocumentFragment, HTMLElement, HTMLDocument and XMLDocument. XMLDocument is just
55799 an alias for the Document constructor.
55801 2006-05-11 David Hyatt <hyatt@apple.com>
55803 Bug 8845. Define a TextRun (similar to the old WebCoreTextRun) and
55804 make it the new API for Font and GraphicsContext when drawing/measuring
55807 Reviewed by andersca
55809 * platform/Font.cpp:
55810 (WebCore::m_finalRoundingWidth):
55811 (WebCore::WidthIterator::advance):
55812 (WebCore::WidthIterator::normalizeVoicingMarks):
55813 (WebCore::Font::width):
55814 (WebCore::Font::canUseGlyphCache):
55815 (WebCore::Font::drawSimpleText):
55816 (WebCore::Font::drawText):
55817 (WebCore::Font::floatWidth):
55818 (WebCore::Font::floatWidthForSimpleText):
55820 (WebCore::TextRun::m_to):
55821 (WebCore::TextRun::operator[]):
55822 (WebCore::TextRun::data):
55823 (WebCore::TextRun::adjustFrom):
55824 (WebCore::TextRun::adjustTo):
55825 (WebCore::TextRun::characters):
55826 (WebCore::TextRun::length):
55827 (WebCore::TextRun::from):
55828 (WebCore::TextRun::to):
55829 * platform/GraphicsContext.cpp:
55830 (WebCore::GraphicsContext::drawText):
55831 (WebCore::GraphicsContext::drawHighlightForText):
55832 * platform/GraphicsContext.h:
55833 * platform/mac/FontMac.mm:
55834 (WebCore::addDirectionalOverride):
55835 (WebCore::overrideLayoutOperation):
55836 (WebCore::ATSULayoutParameters::initialize):
55837 (WebCore::Font::selectionRectForText):
55838 (WebCore::Font::drawComplexText):
55839 (WebCore::Font::drawHighlightForText):
55840 (WebCore::Font::floatWidthForComplexText):
55841 (WebCore::Font::checkSelectionPoint):
55842 * platform/win/FontWin.cpp:
55843 (WebCore::hackishExtentForString):
55844 (WebCore::Font::floatWidth):
55845 (WebCore::Font::drawText):
55846 (WebCore::Font::drawHighlightForText):
55847 (WebCore::Font::selectionRectForText):
55848 (WebCore::Font::checkSelectionPoint):
55849 * rendering/InlineTextBox.cpp:
55850 (WebCore::InlineTextBox::selectionRect):
55851 (WebCore::InlineTextBox::paint):
55852 (WebCore::InlineTextBox::paintSelection):
55853 (WebCore::InlineTextBox::paintMarkedTextBackground):
55854 (WebCore::InlineTextBox::paintTextMatchMarker):
55855 (WebCore::InlineTextBox::offsetForPosition):
55856 (WebCore::InlineTextBox::positionForOffset):
55857 * rendering/RenderBlock.cpp:
55858 (WebCore::stripTrailingSpace):
55859 * rendering/RenderFlexibleBox.cpp:
55860 (WebCore::RenderFlexibleBox::layoutVerticalBox):
55861 * rendering/RenderImage.cpp:
55862 (WebCore::RenderImage::imageChanged):
55863 (WebCore::RenderImage::paint):
55864 * rendering/RenderText.cpp:
55865 (WebCore::RenderText::cacheWidths):
55866 (WebCore::RenderText::widthFromCache):
55867 (WebCore::RenderText::trimmedMinMaxWidth):
55868 (WebCore::RenderText::calcMinMaxWidth):
55869 (WebCore::RenderText::width):
55870 * rendering/RenderTextField.cpp:
55871 (WebCore::RenderTextField::calcMinMaxWidth):
55872 * rendering/bidi.cpp:
55873 (WebCore::RenderBlock::tabWidth):
55874 (WebCore::RenderBlock::checkLinesForTextOverflow):
55875 * rendering/render_line.cpp:
55876 (WebCore::EllipsisBox::paint):
55877 * rendering/render_list.cpp:
55878 (WebCore::RenderListMarker::paint):
55879 (WebCore::RenderListMarker::calcMinMaxWidth):
55880 (WebCore::RenderListMarker::getRelativeMarkerRect):
55882 2006-05-10 Justin Garcia <justin.garcia@apple.com>
55886 * editing/ReplaceSelectionCommand.cpp:
55887 (WebCore::ReplaceSelectionCommand::doApply):
55888 Removed the code to find out if we must later add smart replace whitespace. We can
55889 wait until we've done the insertion to figure it out, and the position sampled (startPos)
55890 to make the decision about trailing whitespace was wrong.
55891 Changed the order that work is done during a paste: 1) Insert everything 2) Do one of
55892 the following: a) handle a trailing interchange newline, b) uncollapse the last incoming
55893 br if it has been collapsed because of quirks mode, c) do an end merge 3) Add smart replace
55894 whitespace (2 and 3 were reversed because the end merge must happen before we can know
55895 whether or not we need to add a trailing space).
55896 Don't do an end merge if the last node inserted was a br because the end merge will
55899 (WebCore::ReplaceSelectionCommand::removeEndBRIfNeeded):
55900 brs where [br, 0] is at the end of a block and not at the start of a paragraph
55901 are the ones that are collapsed because of quirks mode.
55903 2006-05-10 David Hyatt <hyatt@apple.com>
55905 Rename isSpace to treatAsSpace. Move it and the rounding hack function into
55906 Font and make them static methods (inlined in the header). Make the rounding
55907 hack character table a static member as well. Remove the redundant space/rounding
55908 functions from FontData.mm.
55912 * platform/Font.cpp:
55914 (WebCore::m_finalRoundingWidth):
55915 (WebCore::WidthIterator::advance):
55917 (WebCore::Font::treatAsSpace):
55918 (WebCore::Font::isRoundingHackCharacter):
55919 * platform/mac/FontData.mm:
55920 (WebCore::overrideLayoutOperation):
55921 (WebCore::createATSULayoutParameters):
55922 (WebCore::initializeWidthIterator):
55923 (WebCore::advanceWidthIterator):
55924 * platform/mac/FontMac.mm:
55925 (WebCore::overrideLayoutOperation):
55926 (WebCore::ATSULayoutParameters::initialize):
55928 2006-05-10 Darin Adler <darin@apple.com>
55930 * WebCore: Removed an extra WebCore subtree that somehow got checked in.
55932 2006-05-10 David Carson <dacarson@gmail.com>
55934 - Fix for bug 8833. Removed inline keyword from functions declared
55935 in .mm and .cpp files. inline function code needs to reside in the
55936 header file for the linker to find the code.
55937 http://www.parashift.com/c++-faq-lite/inline-functions.html#faq-9.7
55939 Reviewed by Darin, landed by Timothy.
55941 * platform/Font.cpp:
55942 (WebCore::isSpace):
55943 * platform/mac/FontData.mm:
55944 (WebCore::widthForGlyph):
55945 (WebCore::isRoundingHackCharacter):
55946 (WebCore::glyphForCharacter):
55948 2006-05-10 Mitz Pettel <opendarwin.org@mitzpettel.com>
55950 Reviewed and landed by Anders.
55952 - fix http://bugs.webkit.org/show_bug.cgi?id=8830
55953 REGRESSION: Words render on top of each other when fallback font is used
55955 Already covered by several pixel tests in fast/text
55957 * platform/Font.cpp:
55958 (WebCore::Font::drawSimpleText):
55960 2006-05-10 David Hyatt <hyatt@apple.com>
55962 Fix for bug 8809, lift the Mac-specific WebTextRenderer code for
55963 drawing and measuring of runs up into the Font class. The fast code
55964 path is in Font.cpp and is designed to be mostly cross-platform. The
55965 slow code path is in FontMac.cpp and is Mac-specific.
55969 * WebCore.xcodeproj/project.pbxproj:
55970 * platform/Font.cpp:
55971 (WebCore::isSpace):
55973 (WebCore::isRoundingHackCharacter):
55974 (WebCore::m_finalRoundingWidth):
55975 (WebCore::WidthIterator::advance):
55976 (WebCore::WidthIterator::normalizeVoicingMarks):
55977 (WebCore::Font::primaryFont):
55978 (WebCore::Font::setAlwaysUseComplexPath):
55979 (WebCore::Font::canUseGlyphCache):
55980 (WebCore::Font::drawSimpleText):
55981 (WebCore::Font::drawText):
55982 (WebCore::Font::floatWidth):
55983 (WebCore::Font::floatWidthForSimpleText):
55985 * platform/FontData.h:
55986 (WebCore::FontData::platformData):
55987 * platform/GlyphBuffer.h: Added.
55988 (WebCore::GlyphBuffer::GlyphBuffer):
55989 (WebCore::GlyphBuffer::isEmpty):
55990 (WebCore::GlyphBuffer::size):
55991 (WebCore::GlyphBuffer::glyphs):
55992 (WebCore::GlyphBuffer::advances):
55993 (WebCore::GlyphBuffer::fontDataAt):
55994 (WebCore::GlyphBuffer::swap):
55995 (WebCore::GlyphBuffer::glyphAt):
55996 (WebCore::GlyphBuffer::advanceAt):
55997 (WebCore::GlyphBuffer::add):
55998 * platform/mac/FontData.mm:
55999 (WebCore::isSpace):
56000 (WebCore::isRoundingHackCharacter):
56001 (WebCore::FontData::widthForGlyph):
56002 (WebCore::m_ATSUMirrors):
56003 (WebCore::FontData::xHeight):
56004 (WebCore::FontData::smallCapsFontData):
56005 (WebCore::findSubstituteFont):
56006 (WebCore::rendererForAlternateFont):
56007 (WebCore::findSubstituteRenderer):
56008 (WebCore::FontData::findSubstituteFontData):
56009 (WebCore::computeWidthForSpace):
56010 (WebCore::FontData::updateGlyphMapEntry):
56011 (WebCore::extendGlyphMap):
56012 (WebCore::extendWidthMap):
56013 (WebCore::createATSULayoutParameters):
56014 (WebCore::FontData::glyphForCharacter):
56015 (WebCore::advanceWidthIterator):
56016 (WebCore::shouldUseATSU):
56017 * platform/mac/FontMac.mm:
56018 (WebCore::ATSULayoutParameters::m_padPerSpace):
56019 (WebCore::addDirectionalOverride):
56020 (WebCore::initializeATSUStyle):
56021 (WebCore::overrideLayoutOperation):
56022 (WebCore::ATSULayoutParameters::initialize):
56023 (WebCore::disposeATSULayoutParameters):
56024 (WebCore::Font::drawComplexText):
56025 (WebCore::Font::floatWidthForComplexText):
56026 (WebCore::Font::drawGlyphs):
56027 * platform/mac/WebCoreTextRenderer.mm:
56028 (WebCoreSetAlwaysUseATSU):
56030 2006-05-10 Darin Adler <darin@apple.com>
56032 - another try at fixing the Windows build
56034 * platform/win/FontWin.cpp: (WebCore::getFontData): Use characters()
56035 instead of unicode().
56037 == Rolled over to ChangeLog-2006-05-10 ==