1 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
5 Implementing font hashing properly, fixes weird crashes in HashMap.
7 * platform/qt/FontPlatformData.h:
8 * platform/qt/FontPlatformDataQt.cpp:
9 (WebCore::FontPlatformData::FontPlatformData):
10 (WebCore::FontPlatformData::hash):
12 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
16 Fix scrollbars to reappear after the first layouting.
18 * platform/qt/ScrollViewQt.cpp:
19 (WebCore::ScrollView::suppressScrollBars):
21 2006-08-29 Anders Carlsson <acarlsson@apple.com>
23 Reviewed by Darin and Geoff.
25 Move the CF String functions to separate files in platform/cf.
26 Also, move the files in platform/cfnet to platform/cf.
28 * WebCore.xcodeproj/project.pbxproj:
29 * platform/PlatformString.h:
30 * platform/StringImpl.h:
31 * platform/cf/StringCF.cpp: Added.
32 (WebCore::String::String):
33 * platform/cf/StringImplCF.cpp: Added.
34 (WebCore::StringImpl::createCFString):
35 * platform/cfnet/KURLCFNet.cpp: Removed.
36 * platform/cfnet/ResourceLoaderCFNet.cpp: Removed.
37 * platform/mac/StringImplMac.mm:
38 * platform/mac/StringMac.mm:
40 2006-08-29 Geoffrey Garen <ggaren@apple.com>
42 Rolling out a change I included by accident in my last commit.
44 * bridge/mac/FrameMac.mm:
45 (WebCore::FrameMac::passMouseDownEventToWidget):
46 * platform/mac/SharedTimerMac.cpp:
47 (WebCore::setSharedTimerFireTime):
49 2006-08-28 Geoffrey Garen <ggaren@apple.com>
53 Added support for experimental CFNetwork-based loader (not turned on yet).
55 While I was there, I did the following platform cleanup:
56 - Windows now uses USE(WININET) instead of PLATFORM(WIN_OS), to match the
58 - Removed some #includes of windows.h in platform-independent headers.
59 - Changed #ifdef __APPLE__ to PLATFORM(MAC)
60 - Fixed some build bustage, including case-sensitive filesystem bustage.
63 (WebCore::Loader::receivedAllData):
66 * platform/ResourceLoader.h:
67 * platform/ResourceLoaderClient.h:
68 * platform/ResourceLoaderInternal.h:
69 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
70 * platform/cfnet/KURLCFNet.cpp: Added.
71 (WebCore::KURL::createCFURL):
72 * platform/cfnet/ResourceLoaderCFNet.cpp: Added.
73 (WebCore::willSendRequest):
74 (WebCore::didReceiveChallenge):
75 (WebCore::didCancelChallenge):
76 (WebCore::didReceiveResponse):
77 (WebCore::didReceiveData):
78 (WebCore::didFinishLoading):
80 (WebCore::willCacheResponse):
81 (WebCore::addHeadersFromString):
82 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
83 (WebCore::ResourceLoader::~ResourceLoader):
84 (WebCore::arrayFromFormData):
85 (WebCore::emptyPerform):
86 (WebCore::runLoaderThread):
87 (WebCore::ResourceLoader::start):
88 (WebCore::ResourceLoader::cancel):
89 * platform/win/CursorWin.cpp:
91 2006-08-28 Justin Garcia <justin.garcia@apple.com>
95 <rdar://problem/4700341>
96 REGRESSION: In new mail message, caret isn't placed at end of line after redoing typing
98 * editing/ReplaceSelectionCommand.cpp:
99 (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME.
101 (WebCore::Frame::reappliedEditing): Restore the endingSelection(), not the startingSelection().
103 2006-08-28 Tim Omernick <timo@apple.com>
105 Reviewed by John Sullivan.
107 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
108 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
111 No test cases added, since this is essentially a leak fix.
113 A brief history of NPP_GetValue(), NPObjects, and reference counting.
115 Earlier versions of WebKit incorrectly interpreted the NPRuntime reference counting rules. We failed to take
116 into account the fact that plug-ins are required to retain NPObjects before returning them. This creates several
117 classes of interesting plug-ins:
119 1) Plug-ins tested in WebKit and other browsers. These plug-ins may have WebKit-specific workarounds to not retain
120 the returned NPObject, thus avoiding the memory leak in WebKit.
122 2) Plug-ins tested only in other browsers. These plug-ins must already retain their NPObjects, since other browsers
123 implemented the NPRuntime retain/release rules correctly. These plug-ins likely work in WebKit, but probably leak
124 NPObjects since WebKit adds its own retain in addition to the plug-in's retain.
126 3) Plug-ins tested only in WebKit, that fail to retain their NPObjects before returning them.
127 Such plug-ins are guaranteed to crash in other browsers due to the missing expected retain. These plug-ins
128 work in older WebKits because WebKit did not expect the plug-in to retain the NPObject. Now that our retain
129 rules match other browsers, these plug-ins may crash due to the difference in retain/release behavior. We could
130 potentially detect that situation and correct it here, but I consider it a bug that the plug-in did not follow the
131 documented NPRuntime reference counting rules. Furthermore, it is extremely unlikely that someone would develop
132 a Netscape plug-in and test it *only* in WebKit. The entire purpose of creating a Netscape plugin is so that it
133 works in all browsers!
135 4) Plug-ins tested only in WebKit, that properly retain their NPObjects before returning them.
136 These plug-ins probably work in other browsers, and leak their NPObjects in older WebKits because of WebKit's
137 extra retain. A developer of this type of plug-in is probably unaware of the NPObject leak. A more savvy developer
138 would create a plug-in that fits into category #1.
140 I am changing our NPP_GetValue() behavior to match Firefox and other browsers -- the plug-in is now expected to retain the
141 returned NPObject, and the browser is expected to release it when done. This means that plug-ins in category #3 need to be
142 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
143 this needs to be handled specifically by WebKit.
145 * bridge/mac/FrameMac.mm:
146 Changed -pluginScriptableObject to -createPluginScriptableObject to make clearer the contract that the method must return a
147 retained NPObject. Also changed it to return an actual NPObject* instead of a void*. There is only one caller of this method,
148 and only one implementor. Using void* here is a needless abstraction. It's an NPObject*! Admit it!
149 (WebCore::getInstanceForView):
150 Release the NPObject after creating the bindings instance. This is the actual bug fix.
152 2006-08-28 Alice Liu <alice.liu@apple.com>
156 Fixed <rdar://problem/4548537> Document.domain and other attributes are blank for an iframe created with document.write
159 (WebCore::Document::open):
160 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()
162 (WebCore::Frame::didExplicitOpen):
163 set the frame's url to the document's url
165 2006-08-28 Brady Eidson <beidson@apple.com>
167 Reviewed by Adele and Adam
169 Added an optimization to return early if there's no replacements to be made
171 * platform/StringImpl.cpp:
172 (WebCore::StringImpl::replace):
174 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
176 Reviewed and landed by ap.
178 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
179 Provide stub implementation of RenderPopupMenuQt.
182 * platform/qt/RenderPopupMenuQt.cpp: Added.
183 (WebCore::RenderPopupMenuQt::RenderPopupMenuQt):
184 (WebCore::RenderPopupMenuQt::~RenderPopupMenuQt):
185 (WebCore::RenderPopupMenuQt::clear):
186 (WebCore::RenderPopupMenuQt::populate):
187 (WebCore::RenderPopupMenuQt::showPopup):
188 (WebCore::RenderPopupMenuQt::hidePopup):
189 (WebCore::RenderPopupMenuQt::addSeparator):
190 (WebCore::RenderPopupMenuQt::addGroupLabel):
191 (WebCore::RenderPopupMenuQt::addOption):
192 * platform/qt/RenderPopupMenuQt.h: Added.
193 * platform/qt/RenderThemeQt.cpp:
194 (WebCore::RenderThemeQt::systemFont):
195 (WebCore::RenderThemeQt::createPopupMenu):
197 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
199 Reviewed and landed by ap.
201 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
202 Offer QString -> DeprecatedString conversion.
204 * platform/DeprecatedString.h:
205 * platform/qt/StringQt.cpp:
206 (WebCore::DeprecatedString::DeprecatedString):
208 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
210 Reviewed by Tim Hatcher.
212 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
214 * platform/qt/RenderThemeQt.cpp:
215 (WebCore::RenderThemeQt::systemFont):
216 Remove annoying notImplemented() usage in systemFont()
218 2006-08-28 David Harrison <harrison@apple.com>
222 <rdar://problem/3942647> Support AXStyleTextMarkerRangeForTextMarker parameterized attribute
224 * bridge/mac/WebCoreAXObject.mm:
225 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
226 Add AXStyleTextMarkerRangeForTextMarker.
230 Return first/last VisiblePosition in range having the same style has the specified VisiblePosition.
232 (-[WebCoreAXObject doAXStyleTextMarkerRangeForTextMarker:]):
233 Return AXTextMarkerRange for startOfStyleRange/endOfStyleRange of the specified AXTextMarker.
235 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
236 Call doAXStyleTextMarkerRangeForTextMarker for AXStyleTextMarkerRangeForTextMarker.
238 2006-08-28 David Harrison <harrison@apple.com>
242 <rdar://problem/4517383> Hide all images used for spacing purpose in AX
244 * bridge/mac/WebCoreAXObject.mm:
245 (-[WebCoreAXObject accessibilityIsIgnored]):
246 Check for one-dimensional image
247 Check whether rendered image was stretched from one-dimensional file image
249 2006-08-27 Brady Eidson <beidson@apple.com>
253 Rewrote StringImpl::replace(UChar, StringImpl*)
255 * platform/StringImpl.cpp:
256 (WebCore::StringImpl::replace):
258 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
262 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
263 WebCore needs autogenerated Obj-C DOM bindings
265 First round of auto-generated Objective C DOM bindings, starting
268 * DerivedSources.make:
269 * WebCore.xcodeproj/project.pbxproj:
270 * bindings/objc/DOM.mm:
271 (-[DOMNode description]):
272 (-[DOMNode KJS::Bindings::]):
273 (-[DOMNode dispatchEvent:]):
274 (-[DOMNamedNodeMap _initWithNamedNodeMap:]):
275 (+[DOMNamedNodeMap _namedNodeMapWith:]):
276 (-[DOMNodeList _initWithNodeList:]):
277 (+[DOMNodeList _nodeListWith:]):
278 (-[DOMImplementation _initWithDOMImplementation:]):
279 (+[DOMImplementation _DOMImplementationWith:]):
280 (-[DOMImplementation _DOMImplementation]):
281 (+[DOMDocumentFragment _documentFragmentWith:]):
282 (-[DOMDocumentFragment _fragment]):
283 (-[DOMDocument createCSSStyleDeclaration]):
284 (+[DOMDocument _documentWith:]):
285 (-[DOMDocument _document]):
286 (-[DOMDocument _ownerElement]):
287 (+[DOMAttr _attrWith:]):
289 (+[DOMDocumentType _documentTypeWith:WebCore::]):
290 (-[DOMDocumentType WebCore::]):
291 (+[DOMText _textWith:WebCore::]):
292 (+[DOMComment _commentWith:WebCore::]):
293 (+[DOMCDATASection _CDATASectionWith:WebCore::]):
294 (+[DOMProcessingInstruction _processingInstructionWith:WebCore::]):
295 (+[DOMEntityReference _entityReferenceWith:WebCore::]):
296 * bindings/objc/DOMCSS.h:
297 * bindings/objc/DOMCSS.mm:
298 * bindings/objc/DOMCore.h:
299 * bindings/objc/DOMEvents.h:
300 * bindings/objc/DOMEvents.mm:
301 * bindings/objc/DOMExtensions.h:
302 * bindings/objc/DOMHTML.mm:
303 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
304 * bindings/objc/DOMHTMLInternal.h:
305 * bindings/objc/DOMImplementationFront.h:
306 * bindings/objc/DOMInternal.h:
307 * bindings/objc/DOMNode.h: Added.
308 * bindings/objc/DOMNode.mm: Added.
309 (-[DOMNode dealloc]):
310 (-[DOMNode finalize]):
311 (-[DOMNode nodeName]):
312 (-[DOMNode nodeValue]):
313 (-[DOMNode setNodeValue:]):
314 (-[DOMNode nodeType]):
315 (-[DOMNode parentNode]):
316 (-[DOMNode childNodes]):
317 (-[DOMNode firstChild]):
318 (-[DOMNode lastChild]):
319 (-[DOMNode previousSibling]):
320 (-[DOMNode nextSibling]):
321 (-[DOMNode attributes]):
322 (-[DOMNode ownerDocument]):
323 (-[DOMNode insertBefore::]):
324 (-[DOMNode replaceChild::]):
325 (-[DOMNode removeChild:]):
326 (-[DOMNode appendChild:]):
327 (-[DOMNode hasChildNodes]):
328 (-[DOMNode cloneNode:]):
329 (-[DOMNode normalize]):
330 (-[DOMNode isSupported::]):
331 (-[DOMNode namespaceURI]):
333 (-[DOMNode setPrefix:]):
334 (-[DOMNode localName]):
335 (-[DOMNode hasAttributes]):
336 (-[DOMNode isSameNode:]):
337 (-[DOMNode isEqualNode:]):
338 (-[DOMNode isDefaultNamespace:]):
339 (-[DOMNode lookupPrefix:]):
340 (-[DOMNode lookupNamespaceURI:]):
341 (-[DOMNode textContent]):
342 (-[DOMNode setTextContent:]):
343 (-[DOMNode boundingBox]):
344 (-[DOMNode lineBoxRects]):
345 * bindings/objc/DOMObject.h: Added.
346 * bindings/objc/DOMObject.mm: Added.
348 (-[DOMObject dealloc]):
349 (-[DOMObject finalize]):
350 (-[DOMObject copyWithZone:]):
351 (-[DOMObject sheet]):
352 * bindings/objc/DOMPrivate.h:
353 * bindings/objc/DOMRange.h:
354 * bindings/objc/DOMStylesheets.h:
355 * bindings/objc/DOMTraversal.h:
356 * bindings/objc/DOMViews.h:
357 * bindings/objc/DOMViews.mm:
358 * bindings/objc/DOMXPath.h:
359 * bindings/objc/DOMXPath.mm:
360 * bindings/scripts/CodeGenerator.pm:
361 * bindings/scripts/CodeGeneratorJS.pm:
362 * bindings/scripts/CodeGeneratorObjC.pm: Added.
364 * dom/CDATASection.idl: Added.
365 * dom/Comment.idl: Added.
366 * dom/DOMImplementation.idl:
369 * dom/EntityReference.idl: Added.
370 * dom/NamedNodeMap.idl: Added.
371 * dom/NodeList.idl: Added.
372 * dom/ProcessingInstruction.idl:
374 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
378 Fix crash in LayoutTests/css1/font_properties/font.html,
379 by implementing FontData::smallCapsFontData.
381 * platform/qt/FontDataQt.cpp:
382 (WebCore::FontData::platformDestroy):
383 (WebCore::FontData::smallCapsFontData):
385 2006-08-27 Brady Eidson <beidson@apple.com>
389 Plugged a leak in StringImpl::replace()
391 * platform/StringImpl.cpp:
392 (WebCore::StringImpl::replace):
394 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
396 Reviewed and landed by Anders.
398 Remove most annoying notImplemented() usages and
399 implement some missing ScrollViewQt functions.
400 Much nicer output when invoking run-webkit-tests.
402 * platform/qt/FrameQt.cpp:
403 (WebCore::FrameQt::saveDocumentState):
404 (WebCore::FrameQt::restoreDocumentState):
405 (WebCore::FrameQt::clearUndoRedoOperations):
406 (WebCore::FrameQt::partClearedInBegin):
407 * platform/qt/ResourceLoaderManager.cpp:
408 (WebCore::headerCallback):
409 (WebCore::ResourceLoaderManager::downloadTimerCallback):
410 * platform/qt/ScrollViewQt.cpp:
411 (WebCore::ScrollView::updateContents):
412 (WebCore::ScrollView::suppressScrollBars):
413 (WebCore::ScrollView::setStaticBackground):
414 (WebCore::ScrollView::addChild):
415 (WebCore::ScrollView::removeChild):
416 * platform/qt/TemporaryLinkStubs.cpp:
417 (WebCore::historyContains):
418 (WebCore::CheckCacheObjectStatus):
419 (WebCore::CheckIfReloading):
420 (loadResourceIntoArray):
421 (WebCore::PlugInInfoStore::supportsMIMEType):
423 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
425 Reviewed and landed by Anders.
427 Fix Qt build (add SVGMetaDataElement.cpp to build system)
431 2006-08-27 Eric Seidel <eric@eseidel.com>
433 Reviewed by andersca.
435 No logic changes. Just cleanup.
437 * ksvg2/svg/SVGAngle.cpp:
438 (SVGAngle::SVGAngle):
439 (SVGAngle::unitType):
440 (SVGAngle::valueAsString):
441 (SVGAngle::newValueSpecifiedUnits):
442 (SVGAngle::convertToSpecifiedUnits):
443 * ksvg2/svg/SVGAngle.h:
444 * ksvg2/svg/SVGLength.cpp:
445 (WebCore::SVGLength::unitType):
446 (WebCore::SVGLength::newValueSpecifiedUnits):
447 (WebCore::SVGLength::convertToSpecifiedUnits):
448 (WebCore::SVGLength::updateValue):
449 (WebCore::SVGLength::updateValueInSpecifiedUnits):
450 * ksvg2/svg/SVGLength.h:
451 * platform/BitmapImage.cpp: Removed.
452 * platform/BitmapImage.h: Removed.
454 2006-08-27 Brady Eidson <beidson@apple.com>
458 -Changed all of the commonly used queries to keep around pre-prepared statements and bind
459 their arguments instead of constructing a new, messy, string appended statement each time
460 -Changed some code in pruneUnretainedIconsOnStartup regarding transactions
462 * loader/icon/IconDatabase.cpp:
463 (WebCore::IconDatabase::IconDatabase): Initializers
464 (WebCore::IconDatabase::close): Wipe all the preprepared statements
465 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Better handling of transactions
466 (WebCore::readySQLStatement): Make sure a preprepared statement is ready to go for a fooQuery()
467 (WebCore::IconDatabase::pageURLTableIsEmptyQuery): Added a comment
468 (WebCore::IconDatabase::imageDataForIconURLQuery): Use preprepared statement + binding
469 (WebCore::IconDatabase::timeStampForIconURLQuery): ditto
470 (WebCore::IconDatabase::iconURLForPageURLQuery): ditto
471 (WebCore::IconDatabase::forgetPageURLQuery): ditto
472 (WebCore::IconDatabase::setIconIDForPageURLQuery): ditto
473 (WebCore::IconDatabase::getIconIDForIconURLQuery): ditto
474 (WebCore::IconDatabase::addIconForIconURLQuery): ditto
475 (WebCore::IconDatabase::hasIconForIconURLQuery): ditto
476 * loader/icon/IconDatabase.h: Added fooQuery() and *m_fooStatements
477 * loader/icon/SQLStatement.h:
478 (WebCore::SQLStatement::database): Added
480 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
486 * platform/qt/ScrollViewQt.cpp:
487 (WebCore::ScrollView::setHScrollBarMode):
488 (WebCore::ScrollView::setVScrollBarMode):
490 2006-08-27 Rob Buis <buis@kde.org>
494 http://bugzilla.opendarwin.org/show_bug.cgi?id=10557
495 KCanvasPath should be replace by platform/Path
497 Refactoring out the KCanvasPath class.
500 * WebCore.xcodeproj/project.pbxproj:
501 * kcanvas/KCanvasCreator.cpp:
502 (WebCore::KCanvasCreator::createRoundedRectangle):
503 (WebCore::KCanvasCreator::createRectangle):
504 (WebCore::KCanvasCreator::createEllipse):
505 (WebCore::KCanvasCreator::createCircle):
506 (WebCore::KCanvasCreator::createLine):
507 * kcanvas/KCanvasCreator.h:
508 * kcanvas/KCanvasPath.cpp: Removed.
509 * kcanvas/KCanvasPath.h: Removed.
510 * kcanvas/KCanvasResources.cpp:
511 (WebCore::operator<<):
512 (WebCore::KCanvasResource::clients):
513 (WebCore::KCanvasResource::invalidate):
514 (WebCore::KCanvasClipper::addClipData):
515 * kcanvas/KCanvasResources.h:
516 (WebCore::KCClipData::windRule):
517 (WebCore::KCClipDataList::KCClipDataList):
518 (WebCore::KCClipDataList::addPath):
519 * kcanvas/KCanvasTreeDebug.cpp:
520 (WebCore::operator<<):
521 * kcanvas/RenderPath.cpp:
522 (WebCore::RenderPath::fillContains):
523 (WebCore::RenderPath::relativeBBox):
524 (WebCore::RenderPath::setPath):
525 (WebCore::RenderPath::path):
526 (WebCore::RenderPath::paint):
527 (WebCore::RenderPath::nodeAtPoint):
528 * kcanvas/RenderPath.h:
529 * kcanvas/device/KRenderingDevice.h:
530 * kcanvas/device/KRenderingFillPainter.cpp:
531 (WebCore::KRenderingFillPainter::fillRule):
532 (WebCore::KRenderingFillPainter::setFillRule):
533 * kcanvas/device/KRenderingFillPainter.h:
534 * kcanvas/device/qt/KCanvasClipperQt.cpp:
535 (WebCore::KCanvasClipperQt::applyClip):
536 * kcanvas/device/qt/KCanvasPathQt.cpp: Removed.
537 * kcanvas/device/qt/KCanvasPathQt.h: Removed.
538 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
539 (WebCore::KRenderingDeviceContextQt::addPath):
540 (WebCore::KRenderingDeviceContextQt::setFillRule):
541 (WebCore::KRenderingDeviceQt::createItem):
542 * kcanvas/device/qt/KRenderingDeviceQt.h:
543 * kcanvas/device/qt/RenderPathQt.cpp:
544 (WebCore::RenderPathQt::drawMarkersIfNeeded):
545 (WebCore::RenderPathQt::strokeContains):
546 (WebCore::getPathStroke):
547 (WebCore::RenderPathQt::strokeBBox):
548 * kcanvas/device/qt/RenderPathQt.h:
549 * kcanvas/device/quartz/KCanvasItemQuartz.h:
550 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
551 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded):
552 (WebCore::KCanvasItemQuartz::strokeBBox):
553 (WebCore::KCanvasItemQuartz::strokeContains):
554 * kcanvas/device/quartz/KCanvasPathQuartz.h: Removed.
555 * kcanvas/device/quartz/KCanvasPathQuartz.mm: Removed.
556 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
557 (WebCore::KCanvasClipperQuartz::applyClip):
558 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
559 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
560 (WebCore::KRenderingDeviceContextQuartz::addPath):
561 (WebCore::KRenderingDeviceQuartz::createItem):
562 * kcanvas/device/quartz/QuartzSupport.h:
563 * kcanvas/device/quartz/QuartzSupport.mm:
564 (WebCore::scratchContext):
565 (WebCore::strokeBoundingBox):
566 (WebCore::pathContainsPoint):
567 * ksvg2/css/SVGCSSParser.cpp:
568 (WebCore::CSSParser::parseSVGValue):
569 * ksvg2/css/SVGCSSStyleSelector.cpp:
570 (WebCore::CSSStyleSelector::applySVGProperty):
571 * ksvg2/css/SVGRenderStyle.h:
572 (WebCore::SVGRenderStyle::InheritedFlags::):
573 * ksvg2/css/SVGRenderStyleDefs.h:
574 * ksvg2/misc/KCanvasRenderingStyle.cpp:
575 (WebCore::KSVGPainterFactory::fillPainter):
576 * ksvg2/svg/SVGCircleElement.cpp:
577 (SVGCircleElement::toPathData):
578 * ksvg2/svg/SVGCircleElement.h:
579 * ksvg2/svg/SVGClipPathElement.cpp:
580 (SVGClipPathElement::canvasResource):
581 * ksvg2/svg/SVGEllipseElement.cpp:
582 (WebCore::SVGEllipseElement::toPathData):
583 * ksvg2/svg/SVGEllipseElement.h:
584 * ksvg2/svg/SVGGradientElement.cpp:
585 (SVGGradientElement::notifyAttributeChange):
586 * ksvg2/svg/SVGImageElement.cpp:
587 * ksvg2/svg/SVGLineElement.cpp:
588 (SVGLineElement::toPathData):
589 * ksvg2/svg/SVGLineElement.h:
590 * ksvg2/svg/SVGMaskElement.cpp:
591 * ksvg2/svg/SVGPathElement.cpp:
592 (WebCore::SVGPathElement::toPathData):
593 * ksvg2/svg/SVGPathElement.h:
594 * ksvg2/svg/SVGPatternElement.cpp:
595 (WebCore::SVGPatternElement::notifyClientsToRepaint):
596 * ksvg2/svg/SVGPolygonElement.cpp:
597 (SVGPolygonElement::toPathData):
598 * ksvg2/svg/SVGPolygonElement.h:
599 * ksvg2/svg/SVGPolylineElement.cpp:
600 (SVGPolylineElement::toPathData):
601 * ksvg2/svg/SVGPolylineElement.h:
602 * ksvg2/svg/SVGRectElement.cpp:
603 (WebCore::SVGRectElement::toPathData):
604 * ksvg2/svg/SVGRectElement.h:
605 * ksvg2/svg/SVGStyledElement.cpp:
606 (WebCore::SVGStyledElement::createRenderer):
607 * ksvg2/svg/SVGStyledElement.h:
608 (WebCore::SVGStyledElement::toPathData):
609 * ksvg2/svg/SVGTextContentElement.cpp:
610 * ksvg2/svg/SVGTextElement.cpp:
613 (WebCore::Path::setWindingRule):
614 (WebCore::Path::windingRule):
615 * platform/cg/PathCG.cpp:
616 (WebCore::Path::contains):
617 (WebCore::Path::isEmpty):
618 (WebCore::CGPathToCFStringApplierFunction):
619 (WebCore::CFStringFromCGPath):
620 (WebCore::Path::debugString):
621 * platform/qt/FrameQt.cpp:
622 (WebCore::FrameQt::openURL):
623 * platform/qt/PathQt.cpp:
624 (WebCore::Path::contains):
625 (WebCore::Path::isEmpty):
626 (WebCore::Path::debugString):
628 2006-08-26 Eric Seidel <eric@eseidel.com>
632 pointer-events attribute does not work.
633 http://bugzilla.opendarwin.org/show_bug.cgi?id=10415
635 * kcanvas/RenderPath.cpp:
636 (WebCore::RenderPath::pointerEventsHitRules): new function to contain pointer-events hit logic
637 (WebCore::RenderPath::nodeAtPoint): respect pointer-events property
638 * kcanvas/RenderPath.h:
639 (WebCore::RenderPath::PointerEventsHitRules::PointerEventsHitRules):
640 * ksvg2/css/SVGCSSParser.cpp:
641 (WebCore::CSSParser::parseSVGValue):
642 * ksvg2/svg/SVGPaint.cpp: Fix this to use a real enum value
643 (WebCore::SVGPaint::SVGPaint):
644 (WebCore::SVGPaint::paintType):
645 (WebCore::SVGPaint::uri):
646 (WebCore::SVGPaint::setUri):
647 (WebCore::SVGPaint::setPaint):
648 * ksvg2/svg/SVGPaint.h:
650 2006-08-27 Rob Buis <buis@kde.org>
654 http://bugzilla.opendarwin.org/show_bug.cgi?id=10558
655 SVG should have support for <metadata> element
657 Add support for metadata tag.
659 * DerivedSources.make:
660 * WebCore.xcodeproj/project.pbxproj:
661 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
662 * ksvg2/svg/SVGMetadataElement.cpp: Added.
663 (SVGMetadataElement::SVGMetadataElement):
664 (SVGMetadataElement::~SVGMetadataElement):
665 * ksvg2/svg/SVGMetadataElement.h: Added.
666 * ksvg2/svg/SVGMetadataElement.idl: Added.
667 * ksvg2/svg/svgtags.in:
669 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
673 Daily Qt build fixes :-)
675 * platform/qt/GraphicsContextQt.cpp:
676 (WebCore::GraphicsContext::drawConvexPolygon):
677 * platform/qt/ImageQt.cpp:
678 (WebCore::Image::initPlatformData):
679 (WebCore::Image::invalidatePlatformData):
680 (WebCore::Image::loadPlatformResource):
682 2006-08-26 David Hyatt <hyatt@apple.com>
684 Fix the ifdef in Path.h to be CG.
688 2006-08-26 David Hyatt <hyatt@apple.com>
690 Fix Mac build bustage (lots of float/int confusion). I am not sure
691 whether rounding was desired or not... this is just a band-aid to get
692 the build working again.
694 * rendering/RenderThemeMac.mm:
695 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
696 (WebCore::RenderThemeMac::paintMenuListButton):
697 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
699 2006-08-25 David Hyatt <hyatt@apple.com>
701 More refactoring of image to disentangle graphics (e.g., Cairo) from
702 platform (e.g., Windows).
704 * WebCore.vcproj/WebCore/WebCore.vcproj:
705 Add ImageWin to project.
708 (WebCore::Cache::init):
709 * loader/icon/IconDataCache.cpp:
710 (WebCore::IconDataCache::loadImageFromResource):
711 Renamed loadResource to loadPlatformResource to try to make it more clear
712 that this call is implemented on each OS (and not by graphics libraries).
714 * platform/Image.cpp:
715 (WebCore::Image::Image):
716 (WebCore::Image::~Image):
717 (WebCore::Image::invalidateData):
718 (WebCore::Image::size):
719 (WebCore::Image::setData):
720 (WebCore::Image::setNativeData):
721 Fix up the PDF code to not be considered platform data any more, since
722 PDF rendering is not for a specific OS.
724 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
725 instead of NativeData.
728 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
729 Renamed methods to reflect that they are OS-specific and not
730 graphics-library-specific.
732 * platform/cairo/ImageCairo.cpp:
733 Removed the platform data methods. Other platforms besides Windows that
734 use Cairo will need to account for this change by adding these methods
735 to their OS Image***.cpp file.
737 * platform/cg/ImageCG.cpp:
738 (WebCore::Image::drawTiled):
739 Add FIXMEs to the wkpattern stuff.
741 * platform/cg/PDFDocumentImage.cpp:
742 Shouldn't have #imports in .cpp.
744 * platform/mac/ImageMac.mm:
745 (WebCore::Image::initPlatformData):
746 (WebCore::Image::invalidatePlatformData):
747 (WebCore::Image::loadPlatformResource):
748 (WebCore::Image::getTIFFRepresentation):
749 Add the platform data initializers to the Mac Image file. Move the
750 TIFF representation there as well, since this is only used by Mac code.
752 * platform/win/ImageWin.cpp: Added.
753 (WebCore::Image::initPlatformData):
754 (WebCore::Image::invalidatePlatformData):
755 (WebCore::Image::loadPlatformResource):
756 (WebCore::Image::supportsType):
757 Similar work for Windows. Add stubs for possible future HBITMAP returns
758 in the platform data methods.
760 * rendering/RenderLayer.cpp:
761 (WebCore::RenderLayer::paintResizeControl):
762 * rendering/RenderThemeMac.mm:
763 (WebCore::RenderThemeMac::paintResizeControl):
764 loadResource -> loadPlatformResource
766 2006-08-26 Adam Roben <aroben@apple.com>
768 Rubber-stamped by Adele.
772 * platform/cairo/GraphicsContextCairo.cpp:
773 (WebCore::GraphicsContext::drawConvexPolygon):
775 2006-08-25 Adele Peterson <adele@apple.com>
777 Patch by Francisco, Reviewed by me.
779 Preparation for switch to new text field implementation of password field.
781 Added -webkit-text-security property.
783 Tests: updated fast/css/computed-style-expected.txt
785 * css/CSSPropertyNames.in: Added -webkit-text-security.
786 * css/CSSComputedStyleDeclaration.cpp:
788 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
789 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
790 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
791 * css/html4.css: Added style for password field to use -webkit-text-security.
793 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
794 (WebCore::HTMLInputElement::selectionStart):
795 (WebCore::HTMLInputElement::selectionEnd):
796 (WebCore::HTMLInputElement::setSelectionStart):
797 (WebCore::HTMLInputElement::setSelectionEnd):
798 (WebCore::HTMLInputElement::select):
799 (WebCore::HTMLInputElement::setSelectionRange):
800 (WebCore::HTMLInputElement::createRenderer):
801 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
803 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
804 characters with one character, like a bullet.
805 * platform/StringImpl.h:
807 * rendering/RenderStyle.cpp:
808 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
809 (WebCore::RenderStyle::diff): Added case for textSecurity.
810 * rendering/RenderStyle.h:
812 (WebCore::RenderStyle::textSecurity): Added.
813 (WebCore::RenderStyle::setTextSecurity): Added.
814 (WebCore::RenderStyle::initialTextSecurity): Added.
815 * rendering/RenderText.cpp:
816 (WebCore::RenderText::setStyle): Added case for textSecurity.
817 (WebCore::RenderText::setText): ditto.
819 2006-08-25 Adele Peterson <adele@apple.com>
823 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
825 Tests: fast/forms/select-baseline.html
826 fast/borders/borderRadiusInvalidColor.html
827 updated: fast/forms/select-style-expected.txt and more...
829 * css/html4.css: Added style rules for styled select elements.
831 * platform/GraphicsContext.h: Added argument for antialiasing.
832 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
833 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
835 * rendering/RenderObject.cpp:
836 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
837 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
838 (any callers that set this to true were already ensuring that their color was valid).
839 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
840 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
841 (WebCore::RenderObject::paintOutline): ditto.
842 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
843 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
845 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
846 Added case for when there's no children to check for hasLineIfEmpty.
847 * rendering/RenderBlock.h:
848 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
849 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
850 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
851 * rendering/RenderFlexibleBox.cpp:
852 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
853 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
855 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
856 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
857 immediately after painting the background.
859 * rendering/RenderTheme.cpp:
860 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
861 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
862 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
863 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
864 so the arrow control will draw at the right time (after the background).
865 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
866 (WebCore::RenderTheme::paintBorderOnly): ditto.
867 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
868 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
869 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
871 * rendering/RenderThemeMac.h:
872 * rendering/RenderThemeMac.mm:
873 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
874 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
875 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
876 (WebCore::TopGradientInterpolate): Added.
877 (WebCore::BottomGradientInterpolate): Added.
878 (WebCore::MainGradientInterpolate): Added.
879 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
880 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
881 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
883 2006-08-25 Brady Eidson <beidson@apple.com>
887 Changed some time()-related code to be more platform independent
889 * loader/icon/IconDatabase.cpp:
890 (WebCore::IconDatabase::isIconExpiredForIconURL):
891 (WebCore::IconDatabase::getOrCreateIconDataCache):
892 (WebCore::IconDatabase::setIconDataForIconURL):
894 2006-08-25 David Harrison <harrison@apple.com>
898 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
900 * bridge/mac/WebCoreAXObject.mm:
902 New. Returns the HTMLLabelElement, if any, for the specified Element.
904 (-[WebCoreAXObject title]):
905 For input elements, return the innerHTML() of the labelForElement().
907 2006-08-25 Brady Eidson <beidson@apple.com>
909 Reviewed by Tim Hatcher
911 Changed some debugging-only code to be more platform independent
913 * WebCore.xcodeproj/project.pbxproj:
914 * loader/icon/IconDatabase.cpp:
915 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
916 (WebCore::IconDatabase::syncDatabase):
918 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
920 Reviewed/landed by Adam.
922 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10561
923 Qt platform build fixes.
925 * platform/qt/FrameQt.h:
926 * platform/qt/ScreenQt.cpp:
927 (WebCore::qwidgetForPage):
928 (WebCore::screenRect):
929 (WebCore::screenDepth):
930 (WebCore::usableScreenRect):
931 * platform/qt/TemporaryLinkStubs.cpp:
932 (WebCore::screenDepthPerComponent):
933 (WebCore::screenIsMonochrome):
934 * platform/qt/WidgetQt.cpp:
936 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
938 Reviewed/landed by Adam.
940 Finally fix font caching. WebKit+Qt now works
941 out of the box without any further patches :-)
943 * platform/qt/FontDataQt.cpp:
944 (WebCore::FontData::platformDestroy):
945 * platform/qt/FontPlatformData.h:
946 * platform/qt/FontPlatformDataQt.cpp:
947 (WebCore::FontPlatformData::FontPlatformData):
948 (WebCore::FontPlatformData::isFixedPitch):
949 (WebCore::FontPlatformData::font):
950 (WebCore::FontPlatformData::fontPtr):
951 (WebCore::FontPlatformData::hash):
952 (WebCore::FontPlatformData::operator==):
954 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
956 Reviewed/landed by Adam.
958 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10559
959 Confirm to WebKit style guide - last fixes :-)
961 * platform/ResourceLoaderClient.h:
962 * platform/qt/ComboBoxQt.cpp:
963 * platform/qt/FrameQt.cpp:
965 (WebCore::FrameQt::FrameQt):
966 (WebCore::FrameQt::openURL):
967 (WebCore::FrameQt::submitForm):
968 (WebCore::FrameQt::setTitle):
969 (WebCore::FrameQt::passSubframeEventToSubframe):
970 (WebCore::FrameQt::registerCommandForUndo):
971 (WebCore::FrameQt::registerCommandForRedo):
972 (WebCore::FrameQt::keyEvent):
973 (WebCore::FrameQt::setFrameGeometry):
974 * platform/qt/GlyphMapQt.cpp:
975 (WebCore::GlyphMap::fillPage):
976 * platform/qt/GraphicsContextQt.cpp:
977 (WebCore::toQtCompositionMode):
978 (WebCore::toQtLineCap):
979 (WebCore::toQtLineJoin):
980 (WebCore::TextShadow::TextShadow):
981 (WebCore::GraphicsContextPlatformPrivate::p):
982 * platform/qt/ImageQt.cpp:
983 (WebCore::FrameData::clear):
984 (WebCore::Image::supportsType):
985 * platform/qt/IntSizeQt.cpp:
986 * platform/qt/LineEditQt.cpp:
987 * platform/qt/ListBoxQt.cpp:
988 * platform/qt/PageQt.cpp:
989 (WebCore::Page::windowRect):
990 * platform/qt/PathQt.cpp:
991 (WebCore::Path::~Path):
992 * platform/qt/ResourceLoaderCurl.cpp:
993 (WebCore::ResourceLoader::assembleResponseHeaders):
994 (WebCore::ResourceLoader::retrieveCharset):
995 (WebCore::ResourceLoader::receivedResponse):
996 * platform/qt/ResourceLoaderManager.cpp:
997 (WebCore::headerCallback):
998 (WebCore::ResourceLoaderManager::downloadTimerCallback):
999 (WebCore::ResourceLoaderManager::add):
1000 * platform/qt/ScreenQt.cpp:
1001 (WebCore::screenRect):
1002 (WebCore::usableScreenRect):
1003 * platform/qt/ScrollViewQt.cpp:
1004 (WebCore::ScrollView::ScrollView):
1005 (WebCore::ScrollView::~ScrollView):
1006 (WebCore::ScrollView::setParentWidget):
1007 (WebCore::ScrollView::addChild):
1008 * platform/qt/SharedTimerQt.cpp:
1009 (WebCore::setSharedTimerFiredFunction):
1010 * platform/qt/SharedTimerQt.h:
1011 (WebCore::SharedTimerQt::SharedTimerQt):
1012 (WebCore::SharedTimerQt::fire):
1013 * platform/qt/SystemTimeQt.cpp:
1014 (WebCore::currentTime):
1015 * platform/qt/TextEditQt.cpp:
1016 (WebCore::PlatformTextEdit::setParentWidget):
1017 (WebCore::PlatformTextEdit::text):
1018 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
1020 2006-08-24 David Harrison <harrison@apple.com>
1025 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
1027 Fix bug I introduced in r15959.
1029 * bridge/mac/WebCoreAXObject.mm:
1030 (-[WebCoreAXObject accessibilityAttributeValue:]):
1031 Use topDocument in case we are in a subframe (we want the start/end of the overall page).
1033 2006-08-24 Brady Eidson <beidson@apple.com>
1037 Fixed my previous checkin, which was pruning the users entire icon db on startup everytime
1039 * loader/icon/IconDatabase.cpp:
1040 (WebCore::IconDatabase::retainIconForPageURL): Bind the PageURL to argument 1, as SQL bindings
1041 are indexed to 1, not 0
1043 2006-08-24 Geoffrey Garen <ggaren@apple.com>
1047 Frame refactoring: changed FrameView clients so they no longer assume that
1048 FrameViews are Widgets that can tell you things about the platform, in
1049 preparation for divorcing FrameViews from heavy-weight Widgets altogether.
1051 This patch makes Page, rather than Widget, responsible for answering
1052 questions about the screen (scale factor, color depth, etc.). Refactoring
1053 aside, I think this makes more sense, since (a) the screen has nothing to do
1054 with any particular widget and (b) Page was already half-responsible for
1055 answering those questions, anyway.
1057 Plus some random Windows build fix goodness.
1059 Layout tests still pass.
1061 2006-08-24 Timothy Hatcher <timothy@apple.com>
1065 Allow changing the background color WebCore draws under transparent page backgrounds.
1066 No automated way to test. All tests pass, no performance regression.
1068 * bridge/mac/WebCoreFrameBridge.h:
1069 * bridge/mac/WebCoreFrameBridge.mm:
1070 (-[WebCoreFrameBridge setBaseBackgroundColor:]):
1071 * page/FrameView.cpp:
1072 (WebCore::FrameViewPrivate::FrameViewPrivate):
1073 (WebCore::FrameView::baseBackgroundColor):
1074 (WebCore::FrameView::setBaseBackgroundColor):
1076 * rendering/RenderBox.cpp:
1077 (WebCore::RenderBox::paintBackgroundExtended):
1078 * rendering/RenderView.cpp:
1079 (WebCore::RenderView::paintBoxDecorations):
1081 2006-08-24 Darin Adler <darin@apple.com>
1085 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10169
1086 REGRESSION: NativeTextArea: Text dragged from <input type=text> to textarea disappears
1087 - eliminate the EditCommandPtr class from editing; use PassRefPtr and RefPtr instead
1088 - other editing-related cleanup
1090 Test: fast/forms/drag-into-textarea.html
1092 * bridge/mac/FrameMac.h: Changed EditCommandPtr parameters to use PassRefPtr<EditCommand> instead.
1093 * bridge/win/FrameWin.h: Ditto.
1094 * bridge/mac/FrameMac.mm:
1095 (WebCore::FrameMac::registerCommandForUndoOrRedo): Ditto.
1096 (WebCore::FrameMac::registerCommandForUndo): Ditto.
1097 (WebCore::FrameMac::registerCommandForRedo): Ditto.
1099 * bridge/mac/WebCoreFrameBridge.mm:
1100 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1101 Use applyCommand instead of EditCommandPtr. Also remove now-unneeded document parameter.
1102 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]): Ditto.
1103 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): Ditto.
1105 * editing/AppendNodeCommand.h: Removed document parameter from constructor. Changed new child
1106 parameter to be a PassRefPtr. Reversed order of child and parent parameters.
1107 * editing/AppendNodeCommand.cpp:
1108 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
1109 (WebCore::AppendNodeCommand::doApply): Ditto.
1110 (WebCore::AppendNodeCommand::doUnapply): Ditto.
1112 * editing/ApplyStyleCommand.h: Removed document parameter from constructor.
1113 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): Ditto.
1115 * editing/BreakBlockquoteCommand.h: Removed unneeded include of DeprecatedPtrList.h.
1116 * editing/BreakBlockquoteCommand.cpp: Moved the include of DeprecatedPtrList.h here.
1117 (WebCore::BreakBlockquoteCommand::doApply): Changed code to construct a Selection explicitly
1118 since setEndingSelection is no longer overloaded for Position.
1120 * editing/CompositeEditCommand.h: Added isFirstCommand function. Changed m_cmds from
1121 a DeprecatedValueList<EditCommandPtr> to a Vector<RefPtr<EditCommand>> and renamed it
1122 m_commands and made both doUnapply and doReapply private.
1123 * editing/CompositeEditCommand.cpp:
1124 (WebCore::CompositeEditCommand::doUnapply): Rewrote to use m_commands.
1125 (WebCore::CompositeEditCommand::doReapply): Ditto.
1126 (WebCore::CompositeEditCommand::applyCommandToComposite): Removed code to explicitly set up
1127 starting and ending selection -- now done inside setParent. Rewrote to use m_commands.
1128 (WebCore::CompositeEditCommand::applyStyle): Changed to not use EditCommandPtr.
1129 (WebCore::CompositeEditCommand::applyStyledElement): Ditto.
1130 (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
1131 (WebCore::CompositeEditCommand::insertParagraphSeparator): Ditto.
1132 (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
1133 (WebCore::CompositeEditCommand::appendNode): Ditto.
1134 (WebCore::CompositeEditCommand::removeNode): Ditto.
1135 (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
1136 (WebCore::CompositeEditCommand::splitTextNode): Ditto.
1137 (WebCore::CompositeEditCommand::splitElement): Ditto.
1138 (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
1139 (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
1140 (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
1141 (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
1142 (WebCore::CompositeEditCommand::inputText): Ditto.
1143 (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
1144 (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
1145 (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
1146 (WebCore::CompositeEditCommand::deleteSelection): Ditto.
1147 (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
1148 (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Also fixed a bug where the code
1149 would not remove an empty attribute -- will not come up in practice, but wrong in theory.
1150 (WebCore::CompositeEditCommand::setNodeAttribute): Changed to not use EditCommandPtr.
1151 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Ditto.
1152 (WebCore::CompositeEditCommand::deleteInsignificantText): Rewrote to use a for loop.
1153 (WebCore::CompositeEditCommand::moveParagraphs): Changed to not use EditCommandPtr.
1154 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Changed code to construct a
1155 Selection explicitly since setEndingSelection is no longer overloaded for Position.
1156 (WebCore::createBlockPlaceholderElement): Collapsed this code so that the
1157 block placeholder class string is no longer spread across multiple functions.
1158 Perhaps we can get rid of this altogether at some point.
1160 * editing/DeleteFromTextNodeCommand.h: Removed unneeded document parameter from one constructor.
1161 Also removed unneeded destructor.
1162 * editing/DeleteFromTextNodeCommand.cpp:
1163 (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Ditto.
1165 * editing/DeleteSelectionCommand.h: Removed unneeded document parameter from one constructor.
1166 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Ditto.
1168 * editing/EditCommand.h: Removed ECommandState, isCompositeStep(), parent(), state(), setState(),
1169 and most overloads of setStartingSelection() and setEndingSelection(). Made document() protected
1170 and non-virtual. Made setStartingSelection() setEndingSelection(), and styleAtPosition() protected.
1171 Made doApply(), doUnapply(), and doReapply() private. Added startingRootEditableElement(),
1172 endingRootEditableElement(), m_startingRootEditableElement, and m_endingRootEditableElement, which
1173 are needed so we can determine which editable elements an editing operation affects. Changed setParent()
1174 and m_parent to use CompositeEditCommand instead of EditCommand. Removed EditCommandPtr. Added
1175 applyCommand() function that's convenient to use on a newly-created command.
1176 * editing/EditCommand.cpp:
1177 (WebCore::EditCommand::EditCommand): Removed initialization for m_state, and added it for starting
1178 and ending root editable elements.
1179 (WebCore::EditCommand::apply): Simplified check for top level by just checking m_parent. Removed
1180 code to assert and set m_start. Eliminated use of EditCommandPtr.
1181 (WebCore::EditCommand::unapply): Ditto.
1182 (WebCore::EditCommand::reapply): Ditto.
1183 (WebCore::EditCommand::setStartingSelection): Changed to set root editable element too. Also made this
1184 not change the starting selection of the parent unless this is the first command in the parent -- didn't
1185 make sense the way it was.
1186 (WebCore::EditCommand::setEndingSelection): Changed to set root editable element too.
1187 (WebCore::EditCommand::setParent): Added code to set the starting and ending selection on the child
1188 based on the ending selection of the parent, formerly done by callers.
1189 (WebCore::applyCommand): Added.
1191 * editing/FormatBlockCommand.h: Tweaked formatting.
1192 * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::FormatBlockCommand): Ditto.
1193 * editing/InsertLineBreakCommand.h: Ditto.
1194 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
1196 * editing/IndentOutdentCommand.cpp:
1197 (WebCore::IndentOutdentCommand::splitTreeToNode): Removed use of EditCommandPtr.
1198 (WebCore::IndentOutdentCommand::outdentParagraph): Updated for change to list type enum.
1199 (WebCore::IndentOutdentCommand::outdentRegion): Removed use of EditCommandPtr.
1201 * editing/InsertIntoTextNodeCommand.h: Removed unneeded document parameter to constructor.
1202 * editing/InsertIntoTextNodeCommand.cpp:
1203 (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Ditto.
1205 * editing/InsertListCommand.h: Renamed EListType to EList, and took the "Type" suffix off
1207 * editing/InsertListCommand.cpp:
1208 (WebCore::InsertListCommand::InsertListCommand): Ditto.
1209 (WebCore::InsertListCommand::doApply): Ditto.
1211 * editing/InsertNodeBeforeCommand.h: Removed unneeded document parameter from constructor
1212 and changed the parameter of the node to insert to a PassRefPtr.
1213 * editing/InsertNodeBeforeCommand.cpp:
1214 (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Ditto.
1216 * editing/InsertParagraphSeparatorCommand.cpp:
1217 (WebCore::InsertParagraphSeparatorCommand::doApply): Remvoed use of EditCommandPtr.
1219 * editing/InsertTextCommand.h: Changed insertTab to take const Position&.
1220 * editing/InsertTextCommand.cpp:
1221 (WebCore::InsertTextCommand::input): Ditto.
1222 (WebCore::InsertTextCommand::insertTab): Ditto.
1224 * editing/JSEditor.h: Tweaked formatting and names.
1225 * editing/JSEditor.cpp: Ditto. Also changed places that use EditCommandPtr.
1227 * editing/JoinTextNodesCommand.h: Removed unneeeded document pointer
1228 * editing/JoinTextNodesCommand.cpp:
1229 (WebCore::JoinTextNodesCommand::JoinTextNodesCommand): Ditto.
1230 * editing/MergeIdenticalElementsCommand.h: Ditto.
1231 * editing/MergeIdenticalElementsCommand.cpp:
1232 (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Ditto.
1234 * editing/ModifySelectionListLevel.h: Changed EListType to be named Type and be a member of
1235 IncreaseSelectionListLevelCommand. Also changed m_listElement to be a RefPtr<Node>.
1236 * editing/ModifySelectionListLevel.cpp:
1237 (WebCore::getStartEndListChildren): Changed parameters to be references instead of pointers.
1238 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
1239 Changed to use Type instead of EListType.
1240 (WebCore::canIncreaseListLevel): Changed parameters to be references instead of pointers.
1241 (WebCore::IncreaseSelectionListLevelCommand::doApply): Updated for change to canIncreaseListLevel.
1242 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): Ditto.
1243 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
1244 Changed to not use EditCommandPtr.
1245 (WebCore::canDecreaseListLevel): Changed parameters to be references instead of pointers.
1246 (WebCore::DecreaseSelectionListLevelCommand::doApply): Updated for change to canDecreaseListLevel.
1247 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel): Ditto.
1248 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Changed to not use
1251 * editing/MoveSelectionCommand.h: Removed unnecessary document parameter and changed the fragment
1252 parameter to be a PassRefPtr.
1253 * editing/MoveSelectionCommand.cpp:
1254 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Ditto.
1255 (WebCore::MoveSelectionCommand::doApply): Got rid of use of EditCommandPtr.
1257 * editing/RebalanceWhitespaceCommand.h: Removed unnecessary document parameter.
1258 * editing/RebalanceWhitespaceCommand.cpp:
1259 (WebCore::RebalanceWhitespaceCommand::RebalanceWhitespaceCommand): Ditto.
1260 (WebCore::RebalanceWhitespaceCommand::doApply): Got rid of use of EditCommandPtr.
1262 * editing/RemoveCSSPropertyCommand.h: Tweaked formatting.
1264 * editing/RemoveNodeAttributeCommand.h: Removed unnecessary document parameter.
1265 * editing/RemoveNodeAttributeCommand.cpp:
1266 (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand): Ditto.
1268 * editing/RemoveNodeCommand.h: Removed unnecessary document parameter.
1269 * editing/RemoveNodeCommand.cpp:
1270 (WebCore::RemoveNodeCommand::RemoveNodeCommand): Ditto.
1272 * editing/RemoveNodePreservingChildrenCommand.h: Removed unnecessary document parameter.
1273 * editing/RemoveNodePreservingChildrenCommand.cpp:
1274 (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): Ditto.
1276 * editing/ReplaceSelectionCommand.h: Change fragment parameter to a PassRefPtr.
1277 * editing/ReplaceSelectionCommand.cpp:
1278 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
1279 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Ditto.
1280 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1281 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
1283 * editing/Selection.h: Changed SEL_DEFAULT_AFFINITY to be a constant rather than
1284 a macro. Added constructors that take visible positions. Changed setBase and
1285 setExtent to take const Position& for better efficiency.
1286 * editing/Selection.cpp:
1287 (WebCore::Selection::Selection): Removed unnecessary double initialization of m_state
1288 and m_baseIsFirst in existing constructors. Added VisiblePosition-based constructors.
1290 * editing/SetNodeAttributeCommand.h: Removed unnneeded document parameter.
1291 * editing/SetNodeAttributeCommand.cpp:
1292 (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Ditto.
1294 * editing/SplitElementCommand.h: Removed unnneeded document parameter.
1295 * editing/SplitElementCommand.cpp:
1296 (WebCore::SplitElementCommand::SplitElementCommand): Ditto.
1298 * editing/SplitTextNodeCommand.h: Removed unnneeded document parameter.
1299 * editing/SplitTextNodeCommand.cpp:
1300 (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Ditto.
1302 * editing/SplitTextNodeContainingElementCommand.h: Removed unnneeded document parameter.
1303 * editing/SplitTextNodeContainingElementCommand.cpp:
1304 (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): Ditto.
1306 * editing/TypingCommand.h: Replaced uses of EditCommandPtr with EditCommand*.
1307 Renamed openForMoveTyping() with isOpenForMoreTyping().
1308 * editing/TypingCommand.cpp:
1309 (WebCore::TypingCommand::deleteKeyPressed): Updated to remove use of EditCommandPtr.
1310 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
1311 (WebCore::TypingCommand::insertText): Ditto.
1312 (WebCore::TypingCommand::insertLineBreak): Ditto.
1313 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Ditto.
1314 (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
1315 (WebCore::TypingCommand::isOpenForMoreTypingCommand): Ditto.
1316 (WebCore::TypingCommand::closeTyping): Ditto.
1317 (WebCore::TypingCommand::typingAddedToOpenCommand): Ditto.
1318 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Ditto.
1320 * editing/WrapContentsInDummySpanCommand.h: Removed unnneeded document parameter.
1321 * editing/WrapContentsInDummySpanCommand.cpp:
1322 (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): Ditto.
1324 * editing/htmlediting.h: Changed type of NON_BREAKING_SPACE to UChar instead of
1327 * page/Frame.h: Changed lastEditCommand() to return an EditCommand* and changed
1328 appliedEditing(), unappliedEditing(), reappliedEditing(), registerCommandForUndo(),
1329 and registerCommandForRedo() to take PassRefPtr<EditCommand>.
1330 * page/FramePrivate.h: Changed m_lastEditCommand to be a RefPtr<EditCommand>.
1332 (WebCore::Frame::didOpenURL): Fixed for change to m_lastEditCommand.
1333 (WebCore::Frame::setFocusNodeIfNeeded): Call the rootEditableElement function
1334 from Selection to simplify the code.
1335 (WebCore::Frame::selectAll): Ditto.
1336 (WebCore::Frame::lastEditCommand): Updated for change to m_lastEditCommand.
1337 (WebCore::dispatchEditableContentChangedEvents): Added. This sends an event to
1338 both of the root editable elements involved in a change -- the start selection
1339 might be in a different element than the end selection.
1340 (WebCore::Frame::appliedEditing): Changed to call dispatchEditableContentChangedEvents,
1341 and to do it before setting the ending selection. Also update to use PassRefPtr instead
1342 of EditCommandPtr and change the order of setting m_lastEditCommand since passing it
1343 to registerCommandForUndo will take ownership and set it to 0.
1344 (WebCore::Frame::unappliedEditing): Ditto.
1345 (WebCore::Frame::reappliedEditing): Ditto.
1346 (WebCore::Frame::computeAndSetTypingStyle): Updated for removal of EditCommandPtr.
1347 (WebCore::Frame::applyStyle): Ditto.
1348 (WebCore::Frame::applyParagraphStyle): Ditto.
1350 * platform/gdk/FrameGdk.h: Updated for above changes.
1351 * platform/gdk/TemporaryLinkStubs.cpp: Updated for above changes.
1352 * platform/win/TemporaryLinkStubs.cpp: Updated for above changes.
1354 2006-08-24 Brady Eidson <beidson@apple.com>
1358 <rdar://problem/4697973> - Unacceptable delay on startup
1359 <rdar://problem/4690949> - Need to correctly prune unretained pageurls and icons on startup
1361 This patch was started by me and finished by Mark Rowe - we now special case all retains during
1362 startup into one huge sql transaction. Also we track PageURL retains instead of IconURLs so pruning works right.
1363 Testing with reasonable sets of bookmarks/history (3000), startup time is neglibile. Testing with a huge set of
1364 bookmarks (40,000), startup has a noticable delay, but reasonable, and is inline with shipping safari which also
1365 has a noticeable delay.
1367 * loader/icon/IconDatabase.cpp:
1368 (WebCore::IconDatabase::IconDatabase):
1369 (WebCore::IconDatabase::open): adding an initialStartupTransaction and pageRetainStatement
1370 (WebCore::IconDatabase::close): do cleanup on the initialStartupSQL stuff
1371 (WebCore::IconDatabase::retainIconForPageURL): Track initial PageURL retains in the temporary table
1372 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
1373 (WebCore::IconDatabase::retainIconURL): We no longer special case this on startup
1374 (WebCore::IconDatabase::releaseIconURL): We no longer special case this on startup
1375 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Handle the big transaction correctly and quickly
1376 (WebCore::IconDatabase::syncDatabase): Change the timing log message
1377 * loader/icon/IconDatabase.h:
1378 * loader/icon/SQLStatement.cpp:
1379 (WebCore::SQLStatement::bindText16): Added this - for reusing commonly used statements by just rebinding parameters.
1380 * loader/icon/SQLStatement.h:
1382 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1384 Reviewed/landed by Adam.
1386 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1387 WebKit should have Qt platform support
1390 Remove KCanvasMatrix.cpp because it no longer exists
1391 Remove platform/qt/test
1392 * platform/FloatSize.h:
1393 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1394 * platform/image-decoders/gif/GIFImageDecoder.cpp:
1395 * platform/image-decoders/gif/GIFImageReader.cpp:
1396 * platform/image-decoders/ico/ICOImageDecoder.cpp:
1397 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1398 * platform/image-decoders/png/PNGImageDecoder.cpp:
1399 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
1400 Added PLATFORM(QT) hooks in the image-decoders/, as they also need
1401 to work for Qt, not only for Cairo.
1402 * platform/qt/qt-encodings.txt: Added (required for build).
1404 2006-08-24 Adam Roben <aroben@apple.com>
1406 Fixing a typo from last patch.
1408 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1409 (WebCore::KRenderingPaintServerQt::setPenProperties):
1411 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1413 Reviewed/landed by Adam.
1415 Final cleanup to conform to WebKit coding style!
1417 * kcanvas/device/qt/KCanvasClipperQt.cpp:
1418 (WebCore::KCanvasClipperQt::applyClip):
1419 * kcanvas/device/qt/KCanvasClipperQt.h:
1420 * kcanvas/device/qt/KCanvasPathQt.cpp:
1421 * kcanvas/device/qt/KCanvasPathQt.h:
1422 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1423 * kcanvas/device/qt/KRenderingDeviceQt.h:
1424 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1425 (WebCore::KRenderingPaintServerLinearGradientQt::KRenderingPaintServerLinearGradientQt):
1426 (WebCore::KRenderingPaintServerRadialGradientQt::KRenderingPaintServerRadialGradientQt):
1427 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h:
1428 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
1429 (WebCore::KRenderingPaintServerPatternQt::KRenderingPaintServerPatternQt):
1430 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h:
1431 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1432 (WebCore::KRenderingPaintServerQt::setPenProperties):
1433 * kcanvas/device/qt/KRenderingPaintServerQt.h:
1434 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
1435 (WebCore::KRenderingPaintServerSolidQt::KRenderingPaintServerSolidQt):
1436 (WebCore::KRenderingPaintServerSolidQt::renderPath):
1437 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h:
1438 * kcanvas/device/qt/RenderPathQt.cpp:
1439 * kcanvas/device/qt/RenderPathQt.h:
1440 * platform/qt/AffineTransformQt.cpp:
1441 * platform/qt/BrowserExtensionQt.cpp:
1442 * platform/qt/BrowserExtensionQt.h:
1443 * platform/qt/ColorQt.cpp:
1444 (WebCore::Color::Color):
1445 * platform/qt/ComboBoxQt.cpp:
1446 (WebCore::PlatformComboBox::PlatformComboBox):
1447 (WebCore::PlatformComboBox::~PlatformComboBox):
1448 (WebCore::PlatformComboBox::setParentWidget):
1449 (WebCore::PlatformComboBox::appendGroupLabel):
1450 * platform/qt/CookieJarQt.cpp:
1451 * platform/qt/CursorQt.cpp:
1452 (WebCore::Cursors::Cursors::self):
1453 * platform/qt/FloatPointQt.cpp:
1454 * platform/qt/FloatRectQt.cpp:
1455 * platform/qt/FontCacheQt.cpp:
1456 (WebCore::FontCache::getSimilarFontPlatformData):
1457 (WebCore::FontCache::createFontPlatformData):
1458 * platform/qt/FontDataQt.cpp:
1459 * platform/qt/FontPlatformData.h:
1460 * platform/qt/FontPlatformDataQt.cpp:
1461 * platform/qt/FontQt.cpp:
1462 (WebCore::Font::operator QFont):
1463 (WebCore::Font::drawComplexText):
1464 (WebCore::Font::floatWidthForComplexText):
1465 * platform/qt/FrameQt.cpp:
1466 (WebCore::FrameQt::openURL):
1467 (WebCore::FrameQt::submitForm):
1468 (WebCore::FrameQt::urlSelected):
1469 (WebCore::FrameQt::keyEvent):
1470 * platform/qt/FrameQt.h:
1471 * platform/qt/GlyphMapQt.cpp:
1472 * platform/qt/GraphicsContextQt.cpp:
1473 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1474 (WebCore::GraphicsContext::GraphicsContext):
1475 (WebCore::GraphicsContext::drawConvexPolygon):
1476 (WebCore::GraphicsContext::setFocusRingClip):
1477 (WebCore::GraphicsContext::clip):
1478 * platform/qt/ImageQt.cpp:
1479 (WebCore::Image::draw):
1480 (WebCore::Image::drawTiled):
1481 * platform/qt/ImageSourceQt.cpp:
1482 * platform/qt/IntPointQt.cpp:
1483 * platform/qt/IntRectQt.cpp:
1484 * platform/qt/IntSizeQt.cpp:
1485 * platform/qt/LineEditQt.cpp:
1486 (WebCore::PlatformLineEdit::PlatformLineEdit):
1487 (WebCore::PlatformLineEdit::~PlatformLineEdit):
1488 (WebCore::PlatformLineEdit::setParentWidget):
1489 (WebCore::PlatformLineEdit::addSearchResult):
1490 * platform/qt/ListBoxQt.cpp:
1491 (WebCore::ListBox::ListBox):
1492 (WebCore::ListBox::~ListBox):
1493 (WebCore::ListBox::setParentWidget):
1494 * platform/qt/PageQt.cpp:
1495 (WebCore::Page::windowRect):
1496 (WebCore::Page::setWindowRect):
1497 * platform/qt/PathQt.cpp:
1498 (WebCore::Path::addArc):
1499 * platform/qt/PlatformKeyboardEventQt.cpp:
1500 (WebCore::windowsKeyCodeForKeyEvent):
1501 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1502 * platform/qt/PlatformMouseEventQt.cpp:
1503 * platform/qt/RenderThemeQt.cpp:
1504 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
1505 (WebCore::RenderThemeQt::applyTheme):
1506 (WebCore::RenderThemeQt::paintButton):
1507 (WebCore::RenderThemeQt::paintTextField):
1508 * platform/qt/ResourceLoaderCurl.cpp:
1509 (WebCore::ResourceLoader::assembleResponseHeaders):
1510 (WebCore::ResourceLoader::retrieveCharset):
1511 (WebCore::ResourceLoader::receivedResponse):
1512 * platform/qt/ResourceLoaderManager.cpp:
1513 (WebCore::ResourceLoaderManager::add):
1514 * platform/qt/ResourceLoaderManager.h:
1515 * platform/qt/ScreenQt.cpp:
1516 * platform/qt/ScrollViewCanvasQt.cpp:
1517 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1518 * platform/qt/ScrollViewCanvasQt.h:
1519 * platform/qt/ScrollViewQt.cpp:
1520 * platform/qt/SharedTimerQt.cpp:
1521 * platform/qt/SharedTimerQt.h:
1522 (WebCore::SharedTimerQt::inst):
1523 * platform/qt/StringQt.cpp:
1524 * platform/qt/SystemTimeQt.cpp:
1525 * platform/qt/TemporaryLinkStubs.cpp:
1526 * platform/qt/TextEditQt.cpp:
1527 (WebCore::PlatformTextEdit::PlatformTextEdit):
1528 (WebCore::PlatformTextEdit::~PlatformTextEdit):
1529 (WebCore::PlatformTextEdit::setParentWidget):
1530 * platform/qt/WidgetQt.cpp:
1531 (WebCore::Widget::setQWidget):
1533 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1535 Reviewed and landed by Anders.
1537 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1538 WebKit should have Qt platform support
1541 * platform/qt/FrameQt.cpp: Added.
1542 (WebCore::doScroll):
1543 (WebCore::FrameView::isFrameView):
1544 (WebCore::FrameQt::FrameQt):
1545 (WebCore::FrameQt::init):
1546 (WebCore::FrameQt::~FrameQt):
1547 (WebCore::FrameQt::openURL):
1548 (WebCore::FrameQt::submitForm):
1549 (WebCore::FrameQt::urlSelected):
1550 (WebCore::FrameQt::userAgent):
1551 (WebCore::FrameQt::runJavaScriptAlert):
1552 (WebCore::FrameQt::runJavaScriptConfirm):
1553 (WebCore::FrameQt::locationbarVisible):
1554 (WebCore::FrameQt::setTitle):
1555 (WebCore::FrameQt::createFrame):
1556 (WebCore::FrameQt::passWheelEventToChildWidget):
1557 (WebCore::FrameQt::passSubframeEventToSubframe):
1558 (WebCore::FrameQt::objectContentType):
1559 (WebCore::FrameQt::createPlugin):
1560 (WebCore::FrameQt::passMouseDownEventToWidget):
1561 (WebCore::FrameQt::menubarVisible):
1562 (WebCore::FrameQt::personalbarVisible):
1563 (WebCore::FrameQt::statusbarVisible):
1564 (WebCore::FrameQt::toolbarVisible):
1565 (WebCore::FrameQt::createEmptyDocument):
1566 (WebCore::FrameQt::markedTextRange):
1567 (WebCore::FrameQt::incomingReferrer):
1568 (WebCore::FrameQt::mimeTypeForFileName):
1569 (WebCore::FrameQt::markMisspellingsInAdjacentWords):
1570 (WebCore::FrameQt::markMisspellings):
1571 (WebCore::FrameQt::lastEventIsMouseUp):
1572 (WebCore::FrameQt::saveDocumentState):
1573 (WebCore::FrameQt::restoreDocumentState):
1574 (WebCore::FrameQt::openURLRequest):
1575 (WebCore::FrameQt::scheduleClose):
1576 (WebCore::FrameQt::unfocusWindow):
1577 (WebCore::FrameQt::focusWindow):
1578 (WebCore::FrameQt::overrideMediaType):
1579 (WebCore::FrameQt::addMessageToConsole):
1580 (WebCore::FrameQt::runJavaScriptPrompt):
1581 (WebCore::FrameQt::getEmbedInstanceForWidget):
1582 (WebCore::FrameQt::getObjectInstanceForWidget):
1583 (WebCore::FrameQt::getAppletInstanceForWidget):
1584 (WebCore::FrameQt::registerCommandForUndo):
1585 (WebCore::FrameQt::registerCommandForRedo):
1586 (WebCore::FrameQt::clearUndoRedoOperations):
1587 (WebCore::FrameQt::issueUndoCommand):
1588 (WebCore::FrameQt::issueRedoCommand):
1589 (WebCore::FrameQt::issueCutCommand):
1590 (WebCore::FrameQt::issueCopyCommand):
1591 (WebCore::FrameQt::issuePasteCommand):
1592 (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
1593 (WebCore::FrameQt::issueTransposeCommand):
1594 (WebCore::FrameQt::respondToChangedSelection):
1595 (WebCore::FrameQt::respondToChangedContents):
1596 (WebCore::FrameQt::shouldChangeSelection):
1597 (WebCore::FrameQt::partClearedInBegin):
1598 (WebCore::FrameQt::canGoBackOrForward):
1599 (WebCore::FrameQt::handledOnloadEvents):
1600 (WebCore::FrameQt::canPaste):
1601 (WebCore::FrameQt::canRedo):
1602 (WebCore::FrameQt::canUndo):
1603 (WebCore::FrameQt::print):
1604 (WebCore::FrameQt::shouldInterruptJavaScript):
1605 (WebCore::FrameQt::keyEvent):
1606 (WebCore::FrameQt::receivedResponse):
1607 (WebCore::FrameQt::receivedData):
1608 (WebCore::FrameQt::receivedAllData):
1609 (WebCore::FrameQt::setFrameGeometry):
1610 * platform/qt/FrameQt.h: Added.
1611 * platform/qt/ScrollViewCanvasQt.cpp: Added.
1612 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
1613 (WebCore::ScrollViewCanvasQt::paintEvent):
1614 (WebCore::ScrollViewCanvasQt::sizeHint):
1615 (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
1616 (WebCore::ScrollViewCanvasQt::mousePressEvent):
1617 (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
1618 (WebCore::ScrollViewCanvasQt::keyPressEvent):
1619 (WebCore::ScrollViewCanvasQt::keyReleaseEvent):
1620 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1621 * platform/qt/ScrollViewCanvasQt.h: Added.
1622 * platform/qt/ScrollViewQt.cpp:
1623 (WebCore::ScrollView::setParentWidget):
1625 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1629 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1630 WebKit should have Qt platform support
1632 * platform/qt/FontCacheQt.cpp: Added.
1633 (WebCore::FontCache::platformInit):
1634 (WebCore::FontCache::getFontDataForCharacters):
1635 (WebCore::FontCache::getSimilarFontPlatformData):
1636 (WebCore::FontCache::getLastResortFallbackFont):
1637 (WebCore::FontCache::createFontPlatformData):
1638 * platform/qt/FontDataQt.cpp: Added.
1639 (WebCore::FontData::platformInit):
1640 (WebCore::FontData::platformDestroy):
1641 (WebCore::FontData::smallCapsFontData):
1642 (WebCore::FontData::containsCharacters):
1643 (WebCore::FontData::determinePitch):
1644 (WebCore::FontData::platformWidthForGlyph):
1645 * platform/qt/FontPlatformData.h: Added.
1646 * platform/qt/FontPlatformDataQt.cpp: Added.
1647 (WebCore::FontPlatformData::FontPlatformData):
1648 (WebCore::FontPlatformData::operator=):
1649 (WebCore::FontPlatformData::~FontPlatformData):
1650 (WebCore::FontPlatformData::isFixedPitch):
1651 (WebCore::FontPlatformData::setFont):
1652 (WebCore::FontPlatformData::font):
1653 (WebCore::FontPlatformData::hash):
1654 (WebCore::FontPlatformData::operator==):
1655 * platform/qt/FontQt.cpp: Added.
1656 (WebCore::Font::operator QFont):
1657 (WebCore::Font::drawGlyphs):
1658 (WebCore::Font::drawComplexText):
1659 (WebCore::Font::floatWidthForComplexText):
1660 * platform/qt/GlyphMapQt.cpp: Added.
1661 (WebCore::GlyphMap::fillPage):
1663 2006-08-24 David Harrison <harrison@apple.com>
1665 Reinstate r15966 because layout test changes are correct.
1667 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
1669 * editing/TextIterator.cpp:
1670 (WebCore::TextIterator::advance):
1672 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1676 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1677 WebKit should have Qt platform support (Part II)
1679 Adapt the KCanvas Qt device to Rob's KCanvasMatrix removal.
1680 Use AffineTransform everywhere instead.
1682 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1683 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
1684 (WebCore::KRenderingDeviceContextQt::concatCTM):
1685 (WebCore::KRenderingDeviceContextQt::ctm):
1686 * kcanvas/device/qt/KRenderingDeviceQt.h:
1687 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1688 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
1689 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
1691 2006-08-24 Rob Buis <buis@kde.org>
1695 http://bugzilla.opendarwin.org/show_bug.cgi?id=10524
1696 svg transform: comma delimiting breaks display
1698 Properly parse transforms which use ',' as seperators.
1700 * ksvg2/svg/SVGTransformable.cpp:
1701 (SVGTransformable::parseTransformAttribute):
1703 2006-08-23 Darin Adler <darin@apple.com>
1707 - added an assert to make it slightly easier to debug the common case of
1708 calling document() on a node of 0
1710 * dom/Node.h: (WebCore::Node::document): ASSERT(this).
1712 2006-08-23 David Hyatt <hyatt@apple.com>
1714 Refactor Cairo and CoreGraphics to use platform ifdefs. This patch
1715 separates the graphics engines from their respective platforms and replaces
1716 #ifdef PLATFORM(MAC) and PLATFORM(WIN) with PLATFORM(CG) and PLATFORM(CAIRO).
1720 * WebCore.xcodeproj/project.pbxproj:
1721 * platform/AffineTransform.h:
1723 * platform/Cursor.h:
1724 * platform/FloatPoint.h:
1725 * platform/FloatRect.h:
1726 * platform/FloatSize.h:
1728 * platform/FontData.h:
1729 * platform/GlyphBuffer.h:
1730 (WebCore::GlyphBuffer::glyphAt):
1731 (WebCore::GlyphBuffer::advanceAt):
1732 (WebCore::GlyphBuffer::add):
1733 * platform/GraphicsContext.h:
1735 * platform/ImageSource.h:
1736 * platform/IntPoint.h:
1737 * platform/IntRect.h:
1738 * platform/IntSize.h:
1739 * platform/ResourceLoader.h:
1740 * platform/ResourceLoaderClient.h:
1741 * platform/Widget.h:
1742 * platform/cairo/GraphicsContextCairo.cpp:
1743 * platform/cairo/ImageCairo.cpp:
1744 * platform/cairo/ImageSourceCairo.cpp:
1745 * platform/cg/AffineTransformCG.cpp:
1746 * platform/cg/FloatPointCG.cpp: Added.
1747 * platform/cg/FloatRectCG.cpp: Added.
1748 * platform/cg/FloatSizeCG.cpp: Added.
1749 * platform/cg/GraphicsContextCG.cpp:
1750 (WebCore::GraphicsContext::GraphicsContext):
1751 (WebCore::GraphicsContext::~GraphicsContext):
1752 (WebCore::GraphicsContext::setFocusRingClip):
1753 (WebCore::GraphicsContext::clearFocusRingClip):
1754 (WebCore::GraphicsContext::platformContext):
1755 (WebCore::GraphicsContext::drawRect):
1756 (WebCore::GraphicsContext::drawLine):
1757 * platform/cg/GraphicsContextPlatformPrivate.h: Added.
1758 (WebCore::GraphicsContextPlatformPrivate:::m_cgContext):
1759 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1760 * platform/cg/ImageCG.cpp: Added.
1761 (WebCore::Image::drawTiled):
1762 * platform/cg/ImageSourceCG.cpp: Added.
1763 * platform/cg/IntPointCG.cpp: Added.
1764 * platform/cg/IntRectCG.cpp: Added.
1765 * platform/cg/IntSizeCG.cpp: Added.
1766 * platform/cg/PDFDocumentImage.cpp: Added.
1767 (WebCore::PDFDocumentImage::adjustCTM):
1768 * platform/cg/PDFDocumentImage.h: Added.
1769 * platform/cg/PathCG.cpp:
1770 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1771 * platform/image-decoders/gif/GIFImageDecoder.cpp:
1772 * platform/image-decoders/gif/GIFImageReader.cpp:
1773 * platform/image-decoders/ico/ICOImageDecoder.cpp:
1774 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1775 * platform/image-decoders/png/PNGImageDecoder.cpp:
1776 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
1777 * platform/mac/FloatPointMac.mm:
1778 * platform/mac/FloatRectMac.mm:
1779 * platform/mac/FloatSizeMac.mm:
1780 * platform/mac/GraphicsContextMac.mm:
1781 * platform/mac/ImageMac.mm:
1782 * platform/mac/ImageSourceMac.cpp: Removed.
1783 * platform/mac/IntPointMac.mm:
1784 * platform/mac/IntRectMac.mm:
1785 * platform/mac/IntSizeMac.mm:
1786 * platform/mac/PDFDocumentImage.h: Removed.
1787 * platform/mac/PDFDocumentImage.mm: Removed.
1789 2006-08-23 David Hyatt <hyatt@apple.com>
1791 Remove the ifdef for platform scrollbars vs. engine scrollbars until
1792 engine scrollbars actually exist.
1794 * platform/ScrollBar.h:
1795 (WebCore::ScrollBar::hasPlatformScrollBars):
1797 2006-08-23 Justin Garcia <justin.garcia@apple.com>
1799 Reviewed by harrison
1801 Removed the poorly named next/previousVisiblePosition
1802 and use next/previousCandidate and next/previousVisuallyDistinctCandidate.
1803 Removed the unused VisiblePosition::maxOffset()
1805 * editing/VisiblePosition.cpp:
1806 (WebCore::VisiblePosition::next):
1807 (WebCore::VisiblePosition::previous):
1808 (WebCore::VisiblePosition::canonicalPosition):
1809 * editing/VisiblePosition.h:
1811 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
1813 Reviewed by Alexey. Landed by rwlbuis.
1815 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1816 WebKit should have Qt platform support (Part II)
1818 * platform/qt/GraphicsContextQt.cpp: Added.
1819 (WebCore::toQtCompositionMode):
1820 (WebCore::toQtLineCap):
1821 (WebCore::toQtLineJoin):
1822 (WebCore::TransparencyLayer::TransparencyLayer):
1823 (WebCore::TransparencyLayer::cleanup):
1824 (WebCore::TextShadow::TextShadow):
1825 (WebCore::TextShadow::isNull):
1826 (WebCore::GraphicsContextPlatformPrivate::p):
1827 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1828 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
1829 (WebCore::GraphicsContext::GraphicsContext):
1830 (WebCore::GraphicsContext::~GraphicsContext):
1831 (WebCore::GraphicsContext::platformContext):
1832 (WebCore::GraphicsContext::savePlatformState):
1833 (WebCore::GraphicsContext::restorePlatformState):
1834 (WebCore::GraphicsContext::drawRect):
1835 (WebCore::adjustLineToPixelBounderies):
1836 (WebCore::GraphicsContext::drawLine):
1837 (WebCore::GraphicsContext::drawEllipse):
1838 (WebCore::GraphicsContext::drawArc):
1839 (WebCore::GraphicsContext::drawConvexPolygon):
1840 (WebCore::GraphicsContext::fillRect):
1841 (WebCore::GraphicsContext::addClip):
1842 (WebCore::GraphicsContext::drawFocusRing):
1843 (WebCore::GraphicsContext::setFocusRingClip):
1844 (WebCore::GraphicsContext::clearFocusRingClip):
1845 (WebCore::GraphicsContext::drawLineForText):
1846 (WebCore::GraphicsContext::drawLineForMisspelling):
1847 (WebCore::GraphicsContext::roundToDevicePixels):
1848 (WebCore::GraphicsContext::setShadow):
1849 (WebCore::GraphicsContext::clearShadow):
1850 (WebCore::GraphicsContext::beginTransparencyLayer):
1851 (WebCore::GraphicsContext::endTransparencyLayer):
1852 (WebCore::GraphicsContext::clearRect):
1853 (WebCore::GraphicsContext::strokeRect):
1854 (WebCore::GraphicsContext::setLineWidth):
1855 (WebCore::GraphicsContext::setLineCap):
1856 (WebCore::GraphicsContext::setLineJoin):
1857 (WebCore::GraphicsContext::setMiterLimit):
1858 (WebCore::GraphicsContext::setAlpha):
1859 (WebCore::GraphicsContext::setCompositeOperation):
1860 (WebCore::GraphicsContext::clip):
1861 (WebCore::GraphicsContext::translate):
1862 (WebCore::GraphicsContext::rotate):
1863 (WebCore::GraphicsContext::scale):
1864 (WebCore::GraphicsContext::addInnerRoundedRectClip):
1865 (WebCore::GraphicsContext::addRoundedRectClip):
1866 (WebCore::GraphicsContext::createRenderingDeviceContext):
1867 * platform/qt/ImageQt.cpp: Added.
1868 (WebCore::FrameData::clear):
1869 (WebCore::Image::initNativeData):
1870 (WebCore::Image::destroyNativeData):
1871 (WebCore::Image::invalidateNativeData):
1872 (WebCore::Image::loadResource):
1873 (WebCore::Image::supportsType):
1874 (WebCore::Image::draw):
1875 (WebCore::Image::drawTiled):
1876 (WebCore::Image::checkForSolidColor):
1877 * platform/qt/ImageSourceQt.cpp: Added.
1878 (WebCore::createDecoder):
1879 (WebCore::ImageSource::ImageSource):
1880 (WebCore::ImageSource::~ImageSource):
1881 (WebCore::ImageSource::initialized):
1882 (WebCore::ImageSource::setData):
1883 (WebCore::ImageSource::isSizeAvailable):
1884 (WebCore::ImageSource::size):
1885 (WebCore::ImageSource::repetitionCount):
1886 (WebCore::ImageSource::frameCount):
1887 (WebCore::ImageSource::createFrameAtIndex):
1888 (WebCore::ImageSource::frameDurationAtIndex):
1889 (WebCore::ImageSource::frameHasAlphaAtIndex):
1891 2006-08-23 Brady Eidson <beidson@apple.com>
1895 Moved default URL icon from WebKit to WebCore
1897 * Resources/urlIcon.tiff: Added.
1898 * WebCore.xcodeproj/project.pbxproj:
1899 * loader/icon/IconDataCache.cpp:
1900 (WebCore::IconDataCache::loadImageFromResource):
1901 * loader/icon/IconDataCache.h:
1902 * loader/icon/IconDatabase.cpp:
1903 (WebCore::IconDatabase::IconDatabase):
1904 (WebCore::IconDatabase::defaultIcon):
1905 * loader/icon/IconDatabase.h:
1907 2006-08-23 Adam Roben <aroben@apple.com>
1909 Reviewed by Darin, Adele.
1911 Some popup refactoring/cleanup.
1913 * html/HTMLSelectElement.cpp:
1914 (WebCore::HTMLSelectElement::defaultEventHandler):
1915 * rendering/RenderMenuList.cpp:
1916 (WebCore::RenderMenuList::RenderMenuList):
1917 (WebCore::RenderMenuList::~RenderMenuList):
1918 (WebCore::RenderMenuList::showPopup):
1919 (WebCore::RenderMenuList::hidePopup):
1920 * rendering/RenderMenuList.h:
1921 (WebCore::RenderMenuList::popup):
1922 (WebCore::RenderMenuList::popupIsVisible):
1923 * rendering/RenderPopupMenu.h:
1924 * rendering/RenderPopupMenuMac.h:
1925 (WebCore::RenderPopupMenuMac::hidePopup):
1927 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
1929 Reviewed by Anders. Landed by rwlbuis.
1931 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1932 WebKit should have Qt platform support
1934 * platform/qt/ResourceLoaderCurl.cpp: Added.
1935 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
1936 (WebCore::ResourceLoader::~ResourceLoader):
1937 (WebCore::ResourceLoader::start):
1938 (WebCore::ResourceLoader::cancel):
1939 (WebCore::ResourceLoader::assembleResponseHeaders):
1940 (WebCore::ResourceLoader::retrieveCharset):
1941 (WebCore::ResourceLoader::receivedResponse):
1942 * platform/qt/ResourceLoaderManager.cpp: Added.
1943 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
1944 (WebCore::ResourceLoaderManager::get):
1945 (WebCore::ResourceLoaderManager::useSimpleTransfer):
1946 (WebCore::writeCallback):
1947 (WebCore::headerCallback):
1948 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1949 (WebCore::ResourceLoaderManager::remove):
1950 (WebCore::ResourceLoaderManager::add):
1951 (WebCore::ResourceLoaderManager::cancel):
1952 * platform/qt/ResourceLoaderManager.h: Added.
1953 * platform/qt/StringQt.cpp: Added.
1954 (WebCore::String::String):
1955 (WebCore::String::operator QString):
1956 (WebCore::DeprecatedString::operator QString):
1958 2006-08-23 Brady Eidson <beidson@apple.com>
1962 Added escapeSQLString() - a helper to escape strings to be used in textual SQL queries
1964 * WebCore.xcodeproj/project.pbxproj: Reordered some files
1965 * loader/icon/IconDataCache.cpp: Use the new escapeSQLString()
1966 (WebCore::IconDataCache::writeToDatabase):
1967 * loader/icon/IconDatabase.cpp: Use the new escapeSQLString() throughout
1968 (WebCore::IconDatabase::retainIconURL):
1969 (WebCore::IconDatabase::releaseIconURL):
1970 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
1971 (WebCore::IconDatabase::establishIconIDForIconURL):
1972 (WebCore::imageDataForIconURLQuery):
1973 (WebCore::timeStampForIconURLQuery):
1974 (WebCore::iconURLForPageURLQuery):
1975 (WebCore::forgetPageURLQuery):
1976 (WebCore::setIconIDForPageURLQuery):
1977 (WebCore::getIconIDForIconURLQuery):
1978 (WebCore::addIconForIconURLQuery):
1979 (WebCore::hasIconForIconURLQuery):
1980 * loader/icon/SQLDatabase.h:
1981 (WebCore::escapeSQLString): Added
1983 2006-08-22 Maciej Stachowiak <mjs@apple.com>
1987 - assorted style cleanup of icon loader code:
1989 - wrapped all implementation files in namespace WebCore {} instead of "using namespace WebCore;" at top
1990 - split headers to be one per class, to match impl files
1991 - made files that are purely local in IconDatabase.cpp static
1992 - make each impl file include config.h as first header (and no config.h includes in other headers)
1993 - avoid multiple copies of Vector<unsigned char> for image data
1995 * WebCore.xcodeproj/project.pbxproj:
1996 * loader/icon/IconDataCache.cpp:
1997 * loader/icon/IconDataCache.h: Added.
1999 (WebCore::IconDataCache::getTimestamp):
2000 (WebCore::IconDataCache::setTimestamp):
2001 (WebCore::IconDataCache::getIconURL):
2002 * loader/icon/IconDatabase.cpp:
2003 (WebCore::IconDatabase::imageDataForIconURL):
2004 (WebCore::IconDatabase::iconForPageURL):
2005 (WebCore::pageURLTableIsEmptyQuery):
2006 (WebCore::imageDataForIconURLQuery):
2007 (WebCore::timeStampForIconURLQuery):
2008 (WebCore::iconURLForPageURLQuery):
2009 (WebCore::forgetPageURLQuery):
2010 (WebCore::setIconIDForPageURLQuery):
2011 (WebCore::getIconIDForIconURLQuery):
2012 (WebCore::addIconForIconURLQuery):
2013 (WebCore::hasIconForIconURLQuery):
2014 * loader/icon/IconDatabase.h:
2015 * loader/icon/SQLDatabase.cpp:
2016 * loader/icon/SQLDatabase.h:
2017 * loader/icon/SQLStatement.cpp:
2018 (WebCore::SQLStatement::getColumnBlobAsVector):
2019 * loader/icon/SQLStatement.h: Added.
2020 (WebCore::SQLStatement::isPrepared):
2021 (WebCore::SQLStatement::prepareAndStep):
2022 (WebCore::SQLStatement::lastError):
2023 (WebCore::SQLStatement::lastErrorMsg):
2024 * loader/icon/SQLTransaction.cpp:
2025 * loader/icon/SQLTransaction.h: Added.
2027 2006-08-22 Brady Eidson <beidson@apple.com>
2031 The role of the SiteIcon is now the original intention - to be a cache of data relating to an Icon
2032 As such, I'm renaming it to IconDataCache.
2033 Also, the IconDatabase has to manually set the image data on the IconDataCache and also sets the
2034 TimeStamp when an icon is created or the data is changed.
2035 IconDataCache now has a method to write itself *to* a given database, instead of read itself from one.
2036 IconDatabase schema changes to have the timestamp set manually instead of via a trigger.
2037 The overall purpose of this change is to cache the timestamp, killing off a very common SQL query.
2039 * WebCore.xcodeproj/project.pbxproj: Renamed a file
2040 * loader/icon/IconDataCache.cpp: Added.
2041 (IconDataCache::IconDataCache):
2042 (IconDataCache::getImage): Now either returns the stored image, or 0 - no attempt to grab data
2043 (IconDataCache::manuallySetImageData): Delete the old image and create the new one
2044 (IconDataCache::writeToDatabase): Write the current iconURL, data, and timestamp to the given DB
2045 (IconDataCache::imageDataStatus): Determine if an IconDataCache is new without data versus actually having null data
2046 * loader/icon/IconDatabase.cpp:
2047 (WebCore::IconDatabase::createDatabaseTables): Changed DB schema to version 5 (hopefully the final version)
2048 (WebCore::IconDatabase::iconForPageURL):
2049 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses the timestamp in the IconDataCache object instead of always querying
2050 (WebCore::IconDatabase::getOrCreateIconDataCache): Added, to handle creation of new IconDataCache when appropriate
2051 (WebCore::IconDatabase::setIconDataForIconURL): Puts data in SiteIcon then marks it for a future write
2052 (WebCore::IconDatabase::syncDatabase): Now syncs SiteIconsPendingUpdate
2053 * loader/icon/IconDatabase.h:
2054 (WebCore::IconDataCache::getTimestamp):
2055 (WebCore::IconDataCache::setTimestamp):
2056 * loader/icon/SiteIcon.cpp: Removed.
2059 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2061 Reviewed by harrison
2063 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10449>
2064 REGRESSION(r15918): drag-into-marker.html failing
2066 * editing/ReplaceSelectionCommand.cpp:
2067 (WebCore::ReplaceSelectionCommand::doApply): Don't avoid nesting
2070 2006-08-22 Brady Eidson <beidson@apple.com>
2074 Added a check in getTIFFRepresentation to not proceed if the frame count is zero
2075 This is an error condition that was handled gracefully before - in certain circumstances
2076 the call to CGImageDestinationCreateWithData will spam the Console if it is passed null/empty data
2077 or invalid data. This small change bails out before that call if that call will definitely fail
2079 * platform/mac/ImageMac.mm:
2080 (WebCore::Image::getTIFFRepresentation):
2082 2006-08-22 David Harrison <harrison@apple.com>
2084 Backed out my last change (r15966) because it broke lots of layout tests.
2086 * editing/TextIterator.cpp:
2087 (WebCore::TextIterator::advance):
2089 2006-08-22 Maciej Stachowiak <mjs@apple.com>
2093 - added some SPI indirections to support the following in WebKit/Loader:
2094 - pull more WebDataSource code into WebFrameLoader
2095 - make WebMainResourceLoader not depend on WebKit or on SPI
2098 * WebCore.xcodeproj/project.pbxproj:
2099 * platform/mac/WebCoreSystemInterface.h:
2100 * platform/mac/WebCoreSystemInterface.mm:
2102 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2104 Reviewed by harrison
2106 <rdar://problem/4052343&4052343&4426622> Mail hung on paste text
2108 * editing/ReplaceSelectionCommand.cpp:
2109 (WebCore::isInterchangeNewlineNode):
2110 (WebCore::isInterchangeConvertedSpaceSpan):
2111 (WebCore::ReplacementFragment::ReplacementFragment):
2112 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Compute the redundant inheritable styles and
2113 remove them and remove style nodes and style spans which were only contributing redundant styles.
2114 (WebCore::ReplaceSelectionCommand::doApply):
2115 * editing/ReplaceSelectionCommand.h:
2117 2006-08-22 David Harrison <harrison@apple.com>
2121 <rdar://problem/4077676> Inline hole line adheres to the Japanese characters in inline hole
2123 This happens because the underline is always 2 pixels thick, and placed 3 pixels above the bottom of the text box.
2126 * manual-tests/inline-input-marking.html: Added.
2127 Check that underlining of the inline input hole does not obscure the glyphs.
2129 * rendering/InlineTextBox.cpp:
2130 (WebCore::InlineTextBox::paintMarkedTextUnderline):
2131 Position underline at bottom of text box.
2132 Height of underline is reduced to 1 px when font's descent is less than or equal to 2 px.
2134 2006-08-22 Rob Buis <buis@kde.org>
2138 http://bugzilla.opendarwin.org/show_bug.cgi?id=10402
2139 REPRO: SVG crashes inside gradient code
2141 Make sure we do not try to update the canvas resource/gradient paintserver when it is not yet built.
2143 * ksvg2/svg/SVGGradientElement.cpp:
2144 (SVGGradientElement::notifyAttributeChange):
2145 (SVGGradientElement::resourceNotification):
2147 2006-08-22 David Harrison <harrison@apple.com>
2151 <rdar://problem/4523606> Represent heading elements in AXAttributedStringForTextMarkerRange
2153 * bridge/mac/WebCoreAXObject.mm:
2155 (-[WebCoreAXObject headingLevel]):
2156 (-[WebCoreAXObject isHeading]):
2157 New. Heading level is per the tag (h1 == 1, h2 == 2, etc.)
2159 (-[WebCoreAXObject role]):
2160 (-[WebCoreAXObject roleDescription]):
2161 Add role and roleDescription for headings.
2163 (-[WebCoreAXObject value]):
2164 Value is the headingLevel.
2166 (AXAttributeStringSetHeadingLevel):
2167 (AXAttributedStringAppendText):
2168 Put text's heading level (if applicable) in the attributes.
2170 2006-08-22 David Harrison <harrison@apple.com>
2174 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
2176 Treat controls as replaced elements, so that AXAttributedStringForTextMarkerRange will, too.
2178 * editing/TextIterator.cpp:
2179 (WebCore::TextIterator::advance):
2182 2006-08-22 David Harrison <harrison@apple.com>
2186 <rdar://problem/4407336> Some non-text elements return AXTextMarkerRangeForUIElement with equal start and end marker
2188 * bridge/mac/WebCoreAXObject.mm:
2189 (-[WebCoreAXObject textMarkerRange]):
2190 Use 0 and maxDeepOffset(), instead of caretMinOffset() and caretMaxRenderedOffset().
2191 Check for VisiblePositions being equal. If so, adjust end one to its next().
2192 That happens with, e.g., buttons.
2194 2006-08-22 Rob Buis <buis@kde.org>
2198 http://bugzilla.opendarwin.org/show_bug.cgi?id=10491
2199 KCanvasMatrix removal
2201 Remove KCanvasMatrix from project, using AffineTransform instead.
2203 * WebCore.xcodeproj/project.pbxproj:
2204 * kcanvas/KCanvasMatrix.cpp: Removed.
2205 * kcanvas/KCanvasMatrix.h: Removed.
2206 * kcanvas/KCanvasResources.cpp:
2207 (WebCore::KCanvasMarker::draw):
2208 * kcanvas/KCanvasResources.h:
2209 * kcanvas/RenderForeignObject.cpp:
2210 * kcanvas/RenderPath.h:
2211 * kcanvas/RenderSVGContainer.cpp:
2212 (WebCore::RenderSVGContainer::viewportTransform):
2213 (WebCore::RenderSVGContainer::getAspectRatio):
2214 * kcanvas/RenderSVGContainer.h:
2215 * kcanvas/RenderSVGText.cpp:
2216 * kcanvas/device/KRenderingDevice.h:
2217 * kcanvas/device/KRenderingPaintServerGradient.cpp:
2218 (WebCore::KRenderingPaintServerGradient::gradientTransform):
2219 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
2220 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2221 * kcanvas/device/KRenderingPaintServerGradient.h:
2222 * kcanvas/device/KRenderingPaintServerPattern.cpp:
2223 (WebCore::KRenderingPaintServerPattern::patternTransform):
2224 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
2225 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2226 * kcanvas/device/KRenderingPaintServerPattern.h:
2227 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2228 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2229 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2230 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2231 (WebCore::KRenderingDeviceContextQuartz::concatCTM):
2232 (WebCore::KRenderingDeviceContextQuartz::ctm):
2233 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2234 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
2235 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2236 (WebCore::KRenderingPaintServerPatternQuartz::setup):
2237 * kcanvas/device/quartz/QuartzSupport.mm:
2238 * ksvg2/misc/KCanvasRenderingStyle.h:
2239 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2240 * ksvg2/svg/SVGAnimateTransformElement.h:
2241 * ksvg2/svg/SVGLinearGradientElement.cpp:
2242 (SVGLinearGradientElement::buildGradient):
2243 * ksvg2/svg/SVGPatternElement.cpp:
2244 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2245 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2246 (WebCore::SVGPatternElement::notifyAttributeChange):
2247 * ksvg2/svg/SVGPatternElement.h:
2248 * ksvg2/svg/SVGRadialGradientElement.cpp:
2249 (WebCore::SVGRadialGradientElement::buildGradient):
2251 2006-08-22 Rob Buis <buis@kde.org>
2255 http://bugzilla.opendarwin.org/show_bug.cgi?id=10405
2256 REPRO: SVG Maze crashes in RenderPath code
2258 Do not render a path when it is empty so maze15.svg does not crash anymore.
2259 Also get rid of a runtime warning issued by CGContextGetPathBoundingBox.
2261 * kcanvas/RenderPath.cpp:
2262 (WebCore::RenderPath::paint):
2263 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
2264 (WebCore::KCanvasPathQuartz::strokeBoundingBox):
2266 2006-08-21 Brady Eidson <beidson@apple.com>
2270 <rdar://4690949> - New IconDB: Need to prune unretained icons on startup
2272 Added a flag to track whether or not the initial pruning has taken place on startup
2273 If that flag is not set, IconURL retain counts will be tracked in a temporary db table
2274 in addition to the in-memory hash. Then when the timer fires after initial retains
2275 are complete, we prune those icons not in the retain table, prune dangling PageURL
2276 references, delete the temporary table, and set the flag - and carry on as normal
2278 * loader/icon/IconDatabase.cpp:
2279 (WebCore::IconDatabase::IconDatabase): initialize the flag
2280 (WebCore::IconDatabase::open): changed the schema of the temporary table
2281 (WebCore::IconDatabase::retainIconURL): store the icon retain to the temp table if starting up
2282 (WebCore::IconDatabase::releaseIconURL): ditto
2283 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): remove all icons *not* in the retain table, then
2284 wipe all the PageURLs who no longer point to a valid IconURL
2285 * loader/icon/IconDatabase.h:
2287 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
2291 http://bugzilla.opendarwin.org/show_bug.cgi?id=10419
2292 XSLTProcessor transformToFragment fails because of an XML declaration
2294 Test: fast/xsl/transformToFragment-XML-declaration.html
2296 * xml/XSLTProcessor.cpp:
2297 (WebCore::XSLTProcessor::transformToString): Always inhibit XML declaration printout.
2299 2006-08-21 David Harrison <harrison@apple.com>
2303 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
2305 Added support for the NSAccessibilityMisspelledTextAttribute.
2307 Test cases added: None. Manual AX testing is way too awkward, and automated testing
2308 is not possible. See following bug...
2309 <rdar://problem/4256882> Need automated testing support for accessibility APIs
2311 * bridge/mac/WebCoreAXObject.mm:
2312 Lots of trivial formatting in many methods.
2314 (-[WebCoreAXObject accessibilityAttributeValue:]):
2315 Fixed AXStartTextMarker and AXEndTextMarker to use startOfDocument and endOfDocument, instead of
2316 of positionForCoordinates. I had seen erroneous endOfDocument results while testing the spelling
2319 (WebCore::AXAttributeStringSetSpelling):
2320 New. Adds the NSAccessibilityMisspelledTextAttribute for misspelled words.
2322 (-[WebCoreAXObject AXAttributedStringAppendText:]):
2323 Added call to AXAttributeStringSetSpelling.
2325 * editing/visible_units.cpp:
2326 (WebCore::startOfDocument):
2327 (WebCore::endOfDocument):
2328 Added for AXStartTextMarker/AXEndTextMarker fix, these forms of the familiar functions take a Node*,
2329 so a previously existing VisiblePosition is not required.
2331 * editing/visible_units.h:
2332 Declare new forms of startOfDocument and endOfDocument.
2334 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2338 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2339 WebKit should have Qt platform support
2341 * platform/qt/TemporaryLinkStubs.cpp: Added.
2342 (JavaAppletWidget::JavaAppletWidget):
2343 (Font::selectionRectForComplexText):
2344 (Font::offsetForPositionForComplexText):
2345 (WebCore::refreshPlugins):
2346 (WebCore::focusRingColor):
2348 (WebCore::TextField::selectAll):
2349 (WebCore::TextField::addSearchResult):
2350 (WebCore::TextField::selectionStart):
2351 (WebCore::TextField::hasSelectedText):
2352 (WebCore::TextField::selectedText):
2353 (WebCore::TextField::setAutoSaveName):
2354 (WebCore::TextField::checksDescendantsForFocus):
2355 (WebCore::TextField::setSelection):
2356 (WebCore::TextField::setMaxResults):
2357 (WebCore::TextField::edited):
2358 (WebCore::TextField::focusPolicy):
2359 (WebCore::TextField::TextField):
2360 (WebCore::TextField::~TextField):
2361 (WebCore::TextField::setFont):
2362 (WebCore::TextField::setAlignment):
2363 (WebCore::TextField::setWritingDirection):
2364 (WebCore::TextField::maxLength):
2365 (WebCore::TextField::setMaxLength):
2366 (WebCore::TextField::text):
2367 (WebCore::TextField::setText):
2368 (WebCore::TextField::cursorPosition):
2369 (WebCore::TextField::setCursorPosition):
2370 (WebCore::TextField::setEdited):
2371 (WebCore::TextField::setReadOnly):
2372 (WebCore::TextField::setPlaceholderString):
2373 (WebCore::TextField::setColors):
2374 (WebCore::TextField::sizeForCharacterWidth):
2375 (WebCore::TextField::baselinePosition):
2376 (WebCore::TextField::setLiveSearch):
2377 (WebCore::Slider::Slider):
2378 (WebCore::Slider::sizeHint):
2379 (WebCore::Slider::~Slider):
2380 (WebCore::Slider::setValue):
2381 (WebCore::Slider::setMaxValue):
2382 (WebCore::Slider::setMinValue):
2383 (WebCore::Slider::setFont):
2384 (WebCore::Slider::value):
2385 (WebCore::Slider::focusPolicy):
2386 (WebCore::ScrollBar::ScrollBar):
2387 (WebCore::ScrollBar::setSteps):
2388 (WebCore::ScrollBar::scroll):
2389 (WebCore::ScrollBar::setValue):
2390 (WebCore::ScrollBar::setKnobProportion):
2391 (WebCore::PlatformScrollBar::PlatformScrollBar):
2392 (WebCore::PlatformScrollBar::~PlatformScrollBar):
2393 (WebCore::PlatformScrollBar::width):
2394 (WebCore::PlatformScrollBar::height):
2395 (WebCore::PlatformScrollBar::setEnabled):
2396 (WebCore::PlatformScrollBar::paint):
2397 (WebCore::PlatformScrollBar::setScrollBarValue):
2398 (WebCore::PlatformScrollBar::setKnobProportion):
2399 (WebCore::PlatformScrollBar::setRect):
2400 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2401 (WebCore::CheckCacheObjectStatus):
2402 (WebCore::CheckIfReloading):
2403 (WebCore::ServeSynchronousRequest):
2404 (WebCore::historyContains):
2405 (WebCore::submitButtonDefaultLabel):
2406 (WebCore::inputElementAltText):
2407 (WebCore::resetButtonDefaultLabel):
2408 (WebCore::defaultLanguage):
2409 (WebCore::findNextSentenceFromIndex):
2410 (WebCore::findSentenceBoundary):
2411 (WebCore::findNextWordFromIndex):
2412 (WebCore::findWordBoundary):
2413 (Frame::setNeedsReapplyStyles):
2414 (WebCore::screenDepthPerComponent):
2415 (WebCore::screenIsMonochrome):
2416 (WebCore::searchableIndexIntroduction):
2417 (WebCore::setFocusRingColorChangeFunction):
2418 (FrameView::updateBorder):
2419 (loadResourceIntoArray):
2420 (PlugInInfoStore::createPluginInfoForPluginAtIndex):
2421 (PlugInInfoStore::pluginCount):
2422 (WebCore::PlugInInfoStore::supportsMIMEType):
2423 (FileButton::FileButton):
2424 (FileButton::click):
2425 (FileButton::sizeForCharacterWidth):
2426 (FileButton::focusPolicy):
2427 (FileButton::frameGeometry):
2428 (FileButton::setFilename):
2429 (FileButton::baselinePosition):
2430 (FileButton::setFrameGeometry):
2431 (FileButton::setDisabled):
2432 (WebCore::supportedKeySizes):
2433 (WebCore::signedPublicKeyAndChallengeString):
2435 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2439 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2440 WebKit should have Qt platform support
2442 * platform/qt/CursorQt.cpp: Added.
2443 (WebCore::Cursor::Cursor):
2444 (WebCore::Cursor::~Cursor):
2445 (WebCore::Cursor::operator=):
2446 (WebCore::Cursors::Cursors::self):
2447 (WebCore::moveCursor):
2448 (WebCore::crossCursor):
2449 (WebCore::handCursor):
2450 (WebCore::iBeamCursor):
2451 (WebCore::waitCursor):
2452 (WebCore::helpCursor):
2453 (WebCore::eastResizeCursor):
2454 (WebCore::northResizeCursor):
2455 (WebCore::northEastResizeCursor):
2456 (WebCore::northWestResizeCursor):
2457 (WebCore::southResizeCursor):
2458 (WebCore::southEastResizeCursor):
2459 (WebCore::southWestResizeCursor):
2460 (WebCore::westResizeCursor):
2461 (WebCore::northSouthResizeCursor):
2462 (WebCore::eastWestResizeCursor):
2463 (WebCore::northEastSouthWestResizeCursor):
2464 (WebCore::northWestSouthEastResizeCursor):
2465 (WebCore::columnResizeCursor):
2466 (WebCore::rowResizeCursor):
2467 * platform/qt/RenderThemeQt.cpp: Added.
2468 (WebCore::RenderThemeQt::RenderThemeQt):
2469 (WebCore::RenderThemeQt::supportsHover):
2470 (WebCore::RenderThemeQt::paintCheckbox):
2471 (WebCore::RenderThemeQt::paintRadio):
2473 (WebCore::RenderThemeQt::isControlStyled):
2474 (WebCore::RenderThemeQt::controlSupportsTints):
2475 (WebCore::RenderThemeQt::systemFont):
2476 (WebCore::RenderThemeQt::createPopupMenu):
2477 (WebCore::RenderThemeQt::addIntrinsicMargins):
2478 (WebCore::RenderThemeQt::stylePainterAndWidgetForPaintInfo):
2479 (WebCore::RenderThemeQt::setCheckboxSize):
2480 (WebCore::RenderThemeQt::setRadioSize):
2481 (WebCore::RenderThemeQt::supportsFocus):
2482 (WebCore::RenderThemeQt::applyTheme):
2483 (WebCore::RenderThemeQt::adjustButtonStyle):
2484 (WebCore::RenderThemeQt::paintButton):
2485 (WebCore::RenderThemeQt::adjustTextFieldStyle):
2486 (WebCore::RenderThemeQt::paintTextField):
2488 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2492 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2493 WebKit should have Qt platform support
2495 * platform/qt/SharedTimerQt.cpp: Added.
2496 (WebCore:setSharedTimerFiredFunction):
2497 (WebCore::setSharedTimerFireTime):
2498 (WebCore::stopSharedTimer):
2499 * platform/qt/SharedTimerQt.h: Added.
2500 (WebCore::SharedTimerQt::SharedTimerQt):
2501 (WebCore::SharedTimerQt::~SharedTimerQt):
2502 (WebCore::SharedTimerQt::inst):
2503 (WebCore::SharedTimerQt::fire):
2504 * platform/qt/SystemTimeQt.cpp: Added.
2505 (WebCore::currentTime):
2507 2006-08-21 Brady Eidson <beidson@apple.com>
2511 -Defers writing to the database via a timer and handles starting the timer
2514 * loader/icon/IconDatabase.cpp:
2515 (WebCore::IconDatabase::IconDatabase):
2516 (WebCore::IconDatabase::open): Don't start the update timer by default
2517 (WebCore::IconDatabase::close): Call syncDatabase()
2518 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Call syncDatabase()
2519 (WebCore::IconDatabase::setIconURLForPageURL): Setup the cached url, but defer the DB call
2520 (WebCore::IconDatabase::setIconURLForPageURLInDatabase): Actually commit the url to the DB
2521 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
2522 (WebCore::IconDatabase::updateDatabase): The updateTimer calls this, which just calls syncDatabase()
2523 (WebCore::IconDatabase::syncDatabase): Add and remove pending pageURLs and iconURLs, and stop the updateTimer
2524 * loader/icon/IconDatabase.h:
2526 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
2530 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10429
2531 XSLTProcessor.transformToFragment crashes if the owner document is empty
2533 Test: fast/js/xslt-fragment-in-empty-doc.html
2535 * dom/XMLTokenizer.cpp:
2536 (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
2538 2006-08-21 Brady Eidson <beidson@apple.com>
2542 -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
2543 In the near future, we'll also have timer-based deferred *addition* of database records
2544 -Keep retain/release counts in a hash instead of a DB table
2545 -Keep only one hash record for the SiteIcons
2546 -Renamed some methods for clarity
2548 * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
2549 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
2550 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
2551 * loader/icon/IconDatabase.cpp:
2552 (WebCore::IconDatabase::IconDatabase):
2553 (WebCore::IconDatabase::open): Added new timer setup
2554 (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
2555 (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
2556 (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
2557 (WebCore::IconDatabase::retainIconURL): Added
2558 (WebCore::IconDatabase::releaseIconURL): Added
2559 (WebCore::IconDatabase::forgetPageURL): Added
2560 (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
2561 (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
2562 (WebCore::IconDatabase::setIconURLForPageURL):
2563 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
2564 (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
2565 (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
2566 * loader/icon/IconDatabase.h: Added multiple stuffs
2568 2006-08-21 Brady Eidson <beidson@apple.com>
2570 Reviewed by Maciej's rubberstamp
2572 Removed stale file references from the Xcode.proj
2574 * WebCore.xcodeproj/project.pbxproj:
2576 2006-08-20 Nikolas Zimmermann <zimmermann@kde.org>
2578 Reviewed by Maciej. Landed by rwlbuis.
2580 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10463
2581 WebKit should have Qt platform support
2583 Removing HelperQt.h usage by creating appropriate operators
2584 constructor in some of the platform classes, as suggested by Darin.
2587 * platform/DeprecatedString.h:
2589 * platform/PlatformString.h:
2590 * platform/qt/ComboBoxQt.cpp:
2591 (WebCore::PlatformComboBox::appendItem):
2592 (WebCore::PlatformComboBox::appendGroupLabel):
2593 (WebCore::PlatformComboBox::setFont):
2594 * platform/qt/LineEditQt.cpp:
2595 (WebCore::PlatformLineEdit::setFont):
2596 (WebCore::PlatformLineEdit::setText):
2597 (WebCore::PlatformLineEdit::text):
2598 (WebCore::PlatformLineEdit::selectedText):
2599 * platform/qt/ListBoxQt.cpp:
2600 (WebCore::ListBox::setFont):
2601 (WebCore::ListBox::appendItem):
2602 * platform/qt/PlatformKeyboardEventQt.cpp:
2603 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2604 * platform/qt/ScrollViewQt.cpp:
2605 * platform/qt/StringQt.cpp: Added.
2606 (WebCore::String::String):
2607 (WebCore::String::operator QString):
2608 (WebCore::DeprecatedString::operator QString):
2609 * platform/qt/TextEditQt.cpp:
2610 * platform/qt/WidgetQt.cpp:
2611 (WebCore::Widget::setFont):
2613 2006-08-18 Steve Falkenburg <sfalken@apple.com>
2615 Rubber stamped by adele.
2617 Fix call to WebFormDelegate's textFieldDidBeginEditing.
2619 * rendering/RenderTextControl.cpp:
2620 (WebCore::RenderTextControl::subtreeHasChanged):
2622 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2624 Reviewed by Eric. Landed by rwlbuis.
2626 Next chunk of the implementation for:
2627 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2629 WebKit should have Qt platform support
2631 * platform/qt/KeyboardCodes.h: Added.
2632 * platform/qt/PlatformKeyboardEventQt.cpp: Added.
2633 (WebCore::keyIdentifierForQtKeyCode):
2634 (WebCore::windowsKeyCodeForKeyEvent):
2635 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2636 * platform/qt/PlatformMouseEventQt.cpp: Added.
2638 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2640 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2642 Reviewed by Eric. Landed by rwlbuis.
2644 Next chunk of the implementation for:
2645 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2647 WebKit should have Qt platform support
2649 * platform/qt/AffineTransformQt.cpp: Added.
2650 (WebCore::AffineTransform::AffineTransform):
2651 (WebCore::AffineTransform::setMatrix):
2652 (WebCore::AffineTransform::map):
2653 (WebCore::AffineTransform::mapRect):
2654 (WebCore::AffineTransform::isIdentity):
2655 (WebCore::AffineTransform::m11):
2656 (WebCore::AffineTransform::m12):
2657 (WebCore::AffineTransform::m21):
2658 (WebCore::AffineTransform::m22):
2659 (WebCore::AffineTransform::dx):
2660 (WebCore::AffineTransform::dy):
2661 (WebCore::AffineTransform::reset):
2662 (WebCore::AffineTransform::scale):
2663 (WebCore::AffineTransform::rotate):
2664 (WebCore::AffineTransform::translate):
2665 (WebCore::AffineTransform::shear):
2666 (WebCore::AffineTransform::det):
2667 (WebCore::AffineTransform::invert):
2668 (WebCore::AffineTransform::operator QMatrix):
2669 (WebCore::AffineTransform::operator==):
2670 (WebCore::AffineTransform::operator*=):
2671 (WebCore::AffineTransform::operator*):
2672 * platform/qt/BrowserExtensionQt.cpp: Added.
2673 (WebCore::BrowserExtensionQt::BrowserExtensionQt):
2674 (WebCore::BrowserExtensionQt::canRunModal):
2675 (WebCore::BrowserExtensionQt::createNewWindow):
2676 (WebCore::BrowserExtensionQt::canRunModalNow):
2677 (WebCore::BrowserExtensionQt::runModal):
2678 (WebCore::BrowserExtensionQt::goBackOrForward):
2679 (WebCore::BrowserExtensionQt::historyURL):
2680 (WebCore::BrowserExtensionQt::setTypedIconURL):
2681 (WebCore::BrowserExtensionQt::setIconURL):
2682 (WebCore::BrowserExtensionQt::getHistoryLength):
2683 * platform/qt/BrowserExtensionQt.h: Added.
2684 * platform/qt/CookieJarQt.cpp: Added.
2685 (WebCore::setCookies):
2687 (WebCore::cookiesEnabled):
2688 * platform/qt/PageQt.cpp: Added.
2689 (WebCore::rootWindowForFrame):
2690 (WebCore::Page::windowRect):
2691 (WebCore::Page::setWindowRect):
2692 * platform/qt/PathQt.cpp: Added.
2693 (WebCore::Path::Path):
2694 (WebCore::Path::~Path):
2695 (WebCore::Path::operator=):
2696 (WebCore::Path::contains):
2697 (WebCore::Path::translate):
2698 (WebCore::Path::boundingRect):
2699 (WebCore::Path::moveTo):
2700 (WebCore::Path::addLineTo):
2701 (WebCore::Path::addQuadCurveTo):
2702 (WebCore::Path::addBezierCurveTo):
2703 (WebCore::Path::addArcTo):
2704 (WebCore::Path::closeSubpath):
2705 (WebCore::Path::addArc):
2706 (WebCore::Path::addRect):
2707 (WebCore::Path::addEllipse):
2708 (WebCore::Path::clear):
2709 * platform/qt/ScreenQt.cpp: Added.
2710 (WebCore::screenRect):
2711 (WebCore::screenDepth):
2712 (WebCore::usableScreenRect):
2715 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2717 Reviewed by Eric. Landed by rwlbuis.
2719 First chunk of the implementation for:
2720 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2722 WebKit should have Qt platform support
2724 * platform/qt/ComboBoxQt.cpp: Added.
2725 (WebCore::PlatformComboBox::PlatformComboBox):
2726 (WebCore::PlatformComboBox::~PlatformComboBox):
2727 (WebCore::PlatformComboBox::setParentWidget):
2728 (WebCore::PlatformComboBox::clear):
2729 (WebCore::PlatformComboBox::appendItem):
2730 (WebCore::PlatformComboBox::appendGroupLabel):
2731 (WebCore::PlatformComboBox::appendSeparator):
2732 (WebCore::PlatformComboBox::setCurrentItem):
2733 (WebCore::PlatformComboBox::sizeHint):
2734 (WebCore::PlatformComboBox::frameGeometry):
2735 (WebCore::PlatformComboBox::setFrameGeometry):
2736 (WebCore::PlatformComboBox::baselinePosition):
2737 (WebCore::PlatformComboBox::setFont):
2738 (WebCore::PlatformComboBox::focusPolicy):
2739 (WebCore::PlatformComboBox::itemSelected):
2740 (WebCore::PlatformComboBox::setWritingDirection):
2741 (WebCore::PlatformComboBox::populate):
2742 (WebCore::PlatformComboBox::populateMenu):
2743 * platform/qt/LineEditQt.cpp: Added.
2744 (WebCore::PlatformLineEdit::PlatformLineEdit):
2745 (WebCore::PlatformLineEdit::~PlatformLineEdit):
2746 (WebCore::PlatformLineEdit::setParentWidget):
2747 (WebCore::PlatformLineEdit::setColors):
2748 (WebCore::PlatformLineEdit::setAlignment):
2749 (WebCore::PlatformLineEdit::setCursorPosition):
2750 (WebCore::PlatformLineEdit::cursorPosition):
2751 (WebCore::PlatformLineEdit::setEdited):
2752 (WebCore::PlatformLineEdit::edited):
2753 (WebCore::PlatformLineEdit::setFont):
2754 (WebCore::PlatformLineEdit::setMaxLength):
2755 (WebCore::PlatformLineEdit::maxLength):
2756 (WebCore::PlatformLineEdit::setReadOnly):
2757 (WebCore::PlatformLineEdit::isReadOnly):
2758 (WebCore::PlatformLineEdit::setText):
2759 (WebCore::PlatformLineEdit::text):
2760 (WebCore::PlatformLineEdit::setWritingDirection):
2761 (WebCore::PlatformLineEdit::selectAll):
2762 (WebCore::PlatformLineEdit::hasSelectedText):
2763 (WebCore::PlatformLineEdit::selectionStart):
2764 (WebCore::PlatformLineEdit::selectedText):
2765 (WebCore::PlatformLineEdit::setSelection):
2766 (WebCore::PlatformLineEdit::sizeForCharacterWidth):
2767 (WebCore::PlatformLineEdit::baselinePosition):
2768 (WebCore::PlatformLineEdit::focusPolicy):
2769 (WebCore::PlatformLineEdit::checksDescendantsForFocus):
2770 (WebCore::PlatformLineEdit::setLiveSearch):
2771 (WebCore::PlatformLineEdit::setAutoSaveName):
2772 (WebCore::PlatformLineEdit::setMaxResults):
2773 (WebCore::PlatformLineEdit::setPlaceholderString):
2774 (WebCore::PlatformLineEdit::addSearchResult):
2775 * platform/qt/ListBoxQt.cpp: Added.
2776 (WebCore::ListBox::ListBox):
2777 (WebCore::ListBox::~ListBox):
2778 (WebCore::ListBox::setParentWidget):
2779 (WebCore::ListBox::sizeForNumberOfLines):
2780 (WebCore::ListBox::setSelectionMode):
2781 (WebCore::ListBox::clear):
2782 (WebCore::ListBox::doneAppendingItems):
2783 (WebCore::ListBox::setSelected):
2784 (WebCore::ListBox::isSelected):
2785 (WebCore::ListBox::setEnabled):
2786 (WebCore::ListBox::isEnabled):
2787 (WebCore::ListBox::setWritingDirection):
2788 (WebCore::ListBox::focusPolicy):
2789 (WebCore::ListBox::checksDescendantsForFocus):
2790 (WebCore::ListBox::clearCachedTextRenderers):
2791 (WebCore::ListBox::setFont):
2792 (WebCore::ListBox::appendItem):
2793 * platform/qt/ScrollViewQt.cpp: Added.
2794 (WebCore::ScrollView::ScrollView):
2795 (WebCore::ScrollView::~ScrollView):
2796 (WebCore::ScrollView::setParentWidget):
2797 (WebCore::ScrollView::updateContents):
2798 (WebCore::ScrollView::visibleWidth):
2799 (WebCore::ScrollView::visibleHeight):
2800 (WebCore::ScrollView::visibleContentRect):
2801 (WebCore::ScrollView::setContentsPos):
2802 (WebCore::ScrollView::resizeContents):
2803 (WebCore::ScrollView::contentsX):
2804 (WebCore::ScrollView::contentsY):
2805 (WebCore::ScrollView::contentsWidth):
2806 (WebCore::ScrollView::contentsHeight):
2807 (WebCore::ScrollView::viewportToContents):
2808 (WebCore::ScrollView::contentsToViewport):
2809 (WebCore::ScrollView::scrollOffset):
2810 (WebCore::ScrollView::scrollBy):
2811 (WebCore::ScrollView::hScrollBarMode):
2812 (WebCore::ScrollView::vScrollBarMode):
2813 (WebCore::ScrollView::suppressScrollBars):
2814 (WebCore::ScrollView::setHScrollBarMode):
2815 (WebCore::ScrollView::setVScrollBarMode):
2816 (WebCore::ScrollView::setScrollBarsMode):
2817 (WebCore::ScrollView::setStaticBackground):
2818 (WebCore::ScrollView::addChild):
2819 (WebCore::ScrollView::removeChild):
2820 (WebCore::ScrollView::scrollPointRecursively):
2821 (WebCore::ScrollView::inWindow):
2822 * platform/qt/TextEditQt.cpp: Added.
2823 (WebCore::PlatformTextEdit::PlatformTextEdit):
2824 (WebCore::PlatformTextEdit::~PlatformTextEdit):
2825 (WebCore::PlatformTextEdit::setParentWidget):
2826 (WebCore::PlatformTextEdit::setColors):
2827 (WebCore::PlatformTextEdit::setAlignment):
2828 (WebCore::PlatformTextEdit::setLineHeight):
2829 (WebCore::PlatformTextEdit::setCursorPosition):
2830 (WebCore::PlatformTextEdit::getCursorPosition):
2831 (WebCore::PlatformTextEdit::setFont):
2832 (WebCore::PlatformTextEdit::setReadOnly):
2833 (WebCore::PlatformTextEdit::isReadOnly):
2834 (WebCore::PlatformTextEdit::setDisabled):
2835 (WebCore::PlatformTextEdit::isDisabled):
2836 (WebCore::PlatformTextEdit::hasSelectedText):
2837 (WebCore::PlatformTextEdit::setText):
2838 (WebCore::PlatformTextEdit::text):
2839 (WebCore::PlatformTextEdit::textWithHardLineBreaks):
2840 (WebCore::PlatformTextEdit::focusPolicy):
2841 (WebCore::PlatformTextEdit::setWordWrap):
2842 (WebCore::PlatformTextEdit::wordWrap):
2843 (WebCore::PlatformTextEdit::setScrollBarModes):
2844 (WebCore::PlatformTextEdit::setWritingDirection):
2845 (WebCore::PlatformTextEdit::selectionStart):
2846 (WebCore::PlatformTextEdit::selectionEnd):
2847 (WebCore::PlatformTextEdit::setSelectionStart):
2848 (WebCore::PlatformTextEdit::setSelectionEnd):
2849 (WebCore::PlatformTextEdit::selectAll):
2850 (WebCore::PlatformTextEdit::setSelectionRange):
2851 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
2852 (WebCore::PlatformTextEdit::checksDescendantsForFocus):
2853 * platform/qt/WidgetQt.cpp: Added.
2854 (WebCore::WidgetPrivate::WidgetPrivate):
2855 (WebCore::WidgetPrivate::~WidgetPrivate):
2856 (WebCore::Widget::Widget):
2857 (WebCore::Widget::~Widget):
2858 (WebCore::Widget::setClient):
2859 (WebCore::Widget::client):
2860 (WebCore::Widget::frameGeometry):
2861 (WebCore::Widget::hasFocus):
2862 (WebCore::Widget::setFocus):
2863 (WebCore::Widget::clearFocus):
2864 (WebCore::Widget::font):
2865 (WebCore::Widget::setFont):
2866 (WebCore::Widget::setCursor):
2867 (WebCore::Widget::show):
2868 (WebCore::Widget::hide):
2869 (WebCore::Widget::setQWidget):
2870 (WebCore::Widget::qwidget):
2871 (WebCore::Widget::setParentWidget):
2872 (WebCore::Widget::parentWidget):
2873 (WebCore::Widget::setFrameGeometry):
2874 (WebCore::Widget::mapFromGlobal):
2875 (WebCore::Widget::scaleFactor):
2876 (WebCore::Widget::lockDrawingFocus):
2877 (WebCore::Widget::unlockDrawingFocus):
2878 (WebCore::Widget::paint):
2879 (WebCore::Widget::enableFlushDrawing):
2880 (WebCore::Widget::isEnabled):
2881 (WebCore::Widget::setIsSelected):
2882 (WebCore::Widget::disableFlushDrawing):
2883 (WebCore::Widget::setEnabled):
2884 (WebCore::Widget::focusPolicy):
2886 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2888 Reviewed by Eric. Landed by rwlbuis.
2890 First chunk of the implementation for:
2891 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2893 WebKit should have Qt platform support
2895 * platform/qt/ColorQt.cpp: Added.
2896 (WebCore::Color::Color):
2897 (WebCore::Color::operator QColor):
2898 * platform/qt/FloatPointQt.cpp: Added.
2899 (WebCore::FloatPoint::FloatPoint):
2900 (WebCore::FloatPoint::operator QPointF):
2901 * platform/qt/FloatRectQt.cpp: Added.
2902 (WebCore::FloatRect::FloatRect):
2903 (WebCore::FloatRect::operator QRectF):
2904 * platform/qt/IntPointQt.cpp: Added.
2905 (WebCore::IntPoint::IntPoint):
2906 (WebCore::IntPoint::operator QPoint):
2907 * platform/qt/IntRectQt.cpp: Added.
2908 (WebCore::IntRect::IntRect):
2909 (WebCore::IntRect::operator QRect):
2910 * platform/qt/IntSizeQt.cpp: Added.
2911 (WebCore::IntSize::IntSize):
2912 (WebCore::IntSize::operator QSize):
2914 2006-08-18 Nikolas Zimmermann <zimmermann@kde.org>
2916 Reviewed by Eric. Landed by rwlbuis.
2918 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10470
2919 The Qt platform needs a KCanvas device.
2921 * kcanvas/device/qt/KCanvasClipperQt.cpp: Added.
2922 (WebCore::KCanvasClipperQt::applyClip):
2923 * kcanvas/device/qt/KCanvasClipperQt.h: Added.
2924 (WebCore::KCanvasClipperQt::KCanvasClipperQt):
2925 * kcanvas/device/qt/KCanvasPathQt.cpp: Added.
2926 (WebCore::KCanvasPathQt::KCanvasPathQt):
2927 (WebCore::KCanvasPathQt::~KCanvasPathQt):
2928 (WebCore::KCanvasPathQt::isEmpty):
2929 (WebCore::KCanvasPathQt::moveTo):
2930 (WebCore::KCanvasPathQt::lineTo):
2931 (WebCore::KCanvasPathQt::curveTo):
2932 (WebCore::KCanvasPathQt::closeSubpath):
2933 (WebCore::KCanvasPathQt::boundingBox):
2934 (WebCore::KCanvasPathQt::strokeBoundingBox):
2935 (WebCore::KCanvasPathQt::strokeContainsPoint):
2936 (WebCore::KCanvasPathQt::containsPoint):
2937 * kcanvas/device/qt/KCanvasPathQt.h: Added.
2938 (WebCore::KCanvasPathQt::qtPath):
2939 * kcanvas/device/qt/KRenderingDeviceQt.cpp: Added.
2940 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
2941 (WebCore::KRenderingDeviceContextQt::~KRenderingDeviceContextQt):
2942 (WebCore::KRenderingDeviceContextQt::concatCTM):
2943 (WebCore::KRenderingDeviceContextQt::ctm):
2944 (WebCore::KRenderingDeviceContextQt::mapFromVisual):
2945 (WebCore::KRenderingDeviceContextQt::mapToVisual):
2946 (WebCore::KRenderingDeviceContextQt::clearPath):
2947 (WebCore::KRenderingDeviceContextQt::addPath):
2948 (WebCore::KRenderingDeviceContextQt::createGraphicsContext):
2949 (WebCore::KRenderingDeviceContextQt::painter):
2950 (WebCore::KRenderingDeviceContextQt::pathBBox):
2951 (WebCore::KRenderingDeviceContextQt::setFillRule):
2952 (WebCore::KRenderingDeviceContextQt::fillPath):
2953 (WebCore::KRenderingDeviceContextQt::strokePath):
2954 (WebCore::KRenderingDeviceQt::KRenderingDeviceQt):
2955 (WebCore::KRenderingDeviceQt::~KRenderingDeviceQt):
2956 (WebCore::KRenderingDeviceQt::popContext):
2957 (WebCore::KRenderingDeviceQt::pushContext):
2958 (WebCore::KRenderingDeviceQt::qtContext):
2959 (WebCore::KRenderingDeviceQt::contextForImage):
2960 (WebCore::KRenderingDeviceQt::stringForPath):
2961 (WebCore::KRenderingDeviceQt::createResource):
2962 (WebCore::KRenderingDeviceQt::createPaintServer):
2963 (WebCore::KRenderingDeviceQt::createFilterEffect):
2965 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2967 Reviewed by Eric. Landed by rwlbuis.
2969 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10466
2970 WebKit should have Qt platform support.
2973 * platform/Cursor.h:
2974 (WebCore::Cursor::Cursor):
2975 * platform/FloatPoint.h:
2976 * platform/FloatRect.h:
2977 * platform/GlyphBuffer.h:
2978 (WebCore::GlyphBuffer::glyphAt):
2979 (WebCore::GlyphBuffer::advanceAt):
2980 (WebCore::GlyphBuffer::add):
2981 * platform/GraphicsContext.h:
2982 * platform/ImageSource.h:
2983 * platform/IntPoint.h:
2984 * platform/IntRect.h:
2985 * platform/IntSize.h:
2986 * platform/ListBox.h:
2988 * platform/PlatformKeyboardEvent.h:
2989 * platform/PlatformMouseEvent.h:
2990 * platform/ResourceLoader.h:
2991 * platform/ResourceLoaderClient.h:
2992 * platform/ResourceLoaderInternal.h:
2993 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2994 * platform/ScrollView.h:
2995 * platform/Widget.h:
2997 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
2999 Reviewed by Eric. Landed by rwlbuis.
3001 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10465
3002 General WebKit Linux build fixes.
3004 * kcanvas/KCanvasFilters.cpp:
3005 (WebCore::operator<<):
3006 * kcanvas/RenderSVGImage.cpp:
3007 * ksvg2/css/SVGCSSStyleSelector.cpp:
3008 * ksvg2/svg/SVGAnimateColorElement.cpp:
3009 * ksvg2/svg/SVGMaskElement.cpp:
3010 * ksvg2/svg/SVGPatternElement.cpp:
3012 * rendering/RenderStyle.h:
3013 (WebCore::RenderStyle::deleteBindingURIs):
3014 * xml/DOMParser.cpp:
3016 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3018 Reviewed by Eric. Landed by rwlbuis.
3020 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10464
3021 Offer a cmake build system for Qt platform.
3023 * CMakeLists.txt: Added.
3025 2006-08-17 David Harrison <harrison@apple.com>
3027 Reviewed by John Sullivan.
3029 <rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons
3031 Accessorized RenderMenuList objects.
3033 * bridge/mac/WebCoreAXObject.mm:
3034 (-[WebCoreAXObject mouseButtonListener]):
3037 (-[WebCoreAXObject actionElement]):
3038 Return the HTMLSelectElement.
3040 (-[WebCoreAXObject firstChild]):
3041 (-[WebCoreAXObject lastChild]):
3042 (-[WebCoreAXObject previousSibling]):
3043 (-[WebCoreAXObject nextSibling]):
3044 (-[WebCoreAXObject parentObject]):
3045 (-[WebCoreAXObject parentObjectUnignored]):
3046 (-[WebCoreAXObject isAttachment]):
3047 (-[WebCoreAXObject attachmentView]):
3050 (-[WebCoreAXObject role]):
3051 Return NSAccessibilityPopUpButtonRole.
3053 (-[WebCoreAXObject subrole]):
3056 (-[WebCoreAXObject roleDescription]):
3057 Return NSAccessibilityPopUpButtonRole.
3059 (-[WebCoreAXObject textUnderElement]):
3062 (-[WebCoreAXObject value]):
3063 Return the RenderMenuList::text().
3065 (-[WebCoreAXObject position]):
3068 (-[WebCoreAXObject accessibilityIsIgnored]):
3069 - Ignore popup menu items because AppKit does.
3070 - Remove redundant check for buttonTag (earlier isControl() check suffices).
3072 (-[WebCoreAXObject accessibilityAttributeNames]):
3073 (-[WebCoreAXObject accessibilityActionNames]):
3074 (-[WebCoreAXObject accessibilityAttributeValue:]):
3077 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
3078 Removed old debugging code that is no longer needed.
3081 (-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
3082 (-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
3083 (-[WebCoreAXObject removeAXObjectID]):
3086 * html/HTMLSelectElement.cpp:
3087 (WebCore::HTMLSelectElement::accessKeyAction):
3088 Call click() instead of focus().
3090 * rendering/RenderMenuList.cpp:
3091 (WebCore::RenderMenuList::text):
3092 Added for easy access to popup's current text.
3094 * rendering/RenderMenuList.h:
3095 (WebCore::RenderMenuList::isMenuList):
3096 * rendering/RenderObject.h:
3097 (WebCore::RenderObject::isMenuList):
3098 Added so popups can be identified.
3100 2006-08-17 David Harrison <harrison@apple.com>
3104 <rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range
3106 Test cases added: None. Manual AX testing is way too awkward, and automated testing
3107 is not possible. See following bug...
3108 <rdar://problem/4256882> Need automated testing support for accessibility APIs
3110 * bridge/mac/AXObjectCacheMac.mm:
3111 (WebCore::AXObjectCache::visiblePositionForTextMarker):
3112 Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
3114 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3118 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10447
3119 AffineTransform should be multi-platform compatible
3121 * platform/AffineTransform.h:
3122 * platform/cg/AffineTransformCG.cpp:
3123 (WebCore::AffineTransform::m11):
3124 (WebCore::AffineTransform::m12):
3125 (WebCore::AffineTransform::m21):
3126 (WebCore::AffineTransform::m22):
3127 (WebCore::AffineTransform::dx):
3128 (WebCore::AffineTransform::dy):
3130 2006-08-16 David Hyatt <hyatt@apple.com>
3132 Fix an issue with CSS2 system fonts where they did not respect text
3133 zoom. This was most visible with the new control fonts used for form
3134 controls (they stopped swapping between small/mini/regular as you zoomed).
3138 * css/cssstyleselector.cpp:
3139 (WebCore::CSSStyleSelector::applyProperty):
3141 2006-08-15 Justin Garcia <justin.garcia@apple.com>
3143 Reviewed by thatcher
3145 First part of fix for:
3146 <rdar://problem/4384589>
3147 Mail hung on paste text
3150 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8592>
3151 Extra line left after deleting whitespace:pre text
3152 <rdar://problem/4128080> Paste as HTML does not yield equivalent style
3153 <rdar://problem/4046469> Box styles on first element aren't copied/pasted
3154 Copy/paste of arstechnica.com
3156 Here's how we avoid adding redundant style information on paste: insert
3157 the fragment and do a test rendering, save away style information for
3158 every node in the fragment, remove all style information from the fragment,
3159 remove the fragment, insert it into the appropriate place in the document,
3160 then restore only those styles gathered during the test insertion that aren't
3161 redundant. Restoring the styles in this way results in an ApplyStyleCommand
3162 and a layout for nearly every inserted node.
3163 Instead we want to insert the fragment into the document without removing the
3164 style information, then mark style nodes and inline style declarations for
3165 removal if they are redundant, and sweep to remove them. This means that we
3166 can't rely on ReplacementFragment::wasBlock anymore, because blocks will now
3167 have style spans around them. This patch removes the use of wasBlock in
3168 ReplaceSelectionCommand.
3170 * editing/CompositeEditCommand.cpp:
3171 (WebCore::CompositeEditCommand::moveParagraphs): Added code
3172 to remove the line placeholder left after a move from preserveNewline text.
3173 * editing/DeleteSelectionCommand.cpp:
3174 (WebCore::DeleteSelectionCommand::doApply): Don't add a placeholder if
3175 we're deleting a paragraph in preserveNewline text.
3176 * editing/JSEditor.cpp: Pass true to prevent nesting.
3177 * editing/ReplaceSelectionCommand.cpp: Removed wasBlock and friends.
3178 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
3179 (WebCore::ReplacementFragment::saveRenderingInfo): Ditto.
3180 (WebCore::RenderingInfo::RenderingInfo): Ditto.
3181 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
3182 (WebCore::ReplaceSelectionCommand::shouldMergeStart): Combined the to/from
3183 merging rules into one method.
3184 (WebCore::ReplaceSelectionCommand::shouldMergeEnd):
3185 (WebCore::ReplaceSelectionCommand::shouldMerge):
3186 (WebCore::ReplaceSelectionCommand::doApply):
3187 Don't do nesting prevention when pasting into an empty paragraph, this
3188 fixes 4046469, the common cause of paste fidelity bugs, but needs
3189 to be tweaked a little because this can lead to margin/border build-up
3190 on repeated copy/pastes.
3191 Don't track startPos in addition to insertionPos. It was never used.
3192 Fixed a bug where a fragment starting with an interchange newline would
3193 cause content to be put outside of an editable region when pasting at the
3195 Adjust insertionPos before insertion (not during) and do not consult wasBlock
3196 to decide whether or not to do so.
3197 Changed the way we do the start merge: insert the fragment, then stich
3198 paragraphs together, in the same way that we do the end merge. This
3199 doesn't require wasBlock and fixes bugs.
3200 Replaced some uses of insertionPos with endOfInsertedContent.
3201 Fixed a bug in the expansion of the last incoming br (a "collapsed" br
3202 is one where !isStartOfParagraph([br,0])).
3203 Removed the special case code that did the end merge for the preserveNewline
3204 case, since this patch fixes the moveParagraph bug in the preserveNewline case.
3205 Removed some unused variables.
3206 (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): An endBR that was
3207 holding a line open should always be displaced by inserted content, unless
3208 the inserted content ends with a br.
3209 (WebCore::ReplaceSelectionCommand::updateNodesInserted):
3210 * editing/ReplaceSelectionCommand.h:
3211 (WebCore::RenderingInfo::style):
3212 * editing/markup.cpp:
3213 (WebCore::createMarkup): Only add mail blockquotes and list/table/pre when
3214 annotate is true (when we're creating markup for the pasteboard).
3216 2006-08-16 John Sullivan <sullivan@apple.com>
3218 Reviewed by Brady Eidson
3220 - fixed <rdar://problem/4637156> underlines appearing in white selection text
3222 * rendering/InlineFlowBox.cpp:
3223 (WebCore::InlineFlowBox::paintDecorations):
3224 bail out if phase is PaintPhaseSelection and forceWhiteText is true
3226 2006-08-16 Brady Eidson <beidson@apple.com>
3230 Updated the DB version number and added a helpful comment explaining its meaning
3232 * loader/icon/IconDatabase.cpp:
3234 2006-08-16 Brady Eidson <beidson@apple.com>
3238 Major refactoring of new iconDB:
3239 -Instead of private browsing being handled by in-memory tables, it's now handled
3240 by a separate in-memory database with the same table names. This allows us to
3241 re-use the same SQL on either the main or private-browsing database
3242 -So it follows, I broke out much of the SQL queries into seperate methods suffixed with
3243 "Query" that take a database as the method's argument so the same language can run on
3244 both private and main tables
3245 -Now that we have two DBs, moved the retain/release count to the m_mainDB
3246 -While I was at it, updated the schema to combine the Icon and IconResource table - cuts
3247 down on some high-usage, low value queries which were too expensive
3248 -Ditched the _url -> url convention for escaping urls for SQL. Now its url and escapedURL
3249 -Pruned tons of unused methods from previous revisions
3251 * bridge/mac/WebCoreIconDatabaseBridge.h: Removed isIconExpiredForPageURL as it was never used
3252 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
3253 * loader/icon/IconDatabase.cpp:
3254 (WebCore::IconDatabase::IconDatabase): Updated initializer list
3255 (WebCore::IconDatabase::open): Sets up both databases
3256 (WebCore::IconDatabase::close): Closes both databases
3257 (WebCore::IconDatabase::isEmpty): Queries both databases for at least 1 record
3258 (WebCore::IconDatabase::isValidDatabase): Reflect the updated schema
3259 (WebCore::IconDatabase::clearDatabaseTables): Ditto - and takes DB as a parameter
3260 (WebCore::IconDatabase::createDatabaseTables): Ditto
3261 (WebCore::IconDatabase::imageDataForIconURL): style cleanup, and using a query-function
3262 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Resets private DB instead of private tables
3263 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses a query-function on each DB
3264 (WebCore::IconDatabase::iconURLForPageURL): Uses a query-function on each DB
3265 (WebCore::IconDatabase::retainIconForPageURL): Retain count DB changes
3266 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
3267 (WebCore::IconDatabase::isIconURLRetained): Determine if it's time to prune a released icon yet
3268 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase): Alot simpler
3269 (WebCore::IconDatabase::setIconDataForIconURL): Style cleanup
3270 (WebCore::IconDatabase::setHaveNoIconForIconURL): Ditto
3271 (WebCore::IconDatabase::setIconURLForPageURL): Ditto - and using a query-function
3272 (WebCore::IconDatabase::establishIconIDForIconURL): Style cleanup
3273 (WebCore::IconDatabase::pruneUnreferencedIcons): DB name change
3274 (WebCore::IconDatabase::pruneUnretainedIcons): Ditto
3275 (WebCore::IconDatabase::hasIconForIconURL): Simpler, using a query-function
3276 (WebCore::IconDatabase::~IconDatabase):
3277 (WebCore::pageURLTableIsEmptyQuery): Self-explanatory SQL query
3278 (WebCore::imageDataForIconURLQuery): Self-explanatory SQL query
3279 (WebCore::timeStampForIconURLQuery): Self-explanatory SQL query
3280 (WebCore::iconURLForPageURLQuery): Self-explanatory SQL query
3281 (WebCore::forgetPageURLQuery): Self-explanatory SQL query
3282 (WebCore::setIconIDForPageURLQuery): Self-explanatory SQL query
3283 (WebCore::getIconIDForIconURLQuery): Self-explanatory SQL query
3284 (WebCore::addIconForIconURLQuery): Self-explanatory SQL query
3285 (WebCore::hasIconForIconURLQuery): Self-explanatory SQL query
3286 * loader/icon/IconDatabase.h: Some new/changed methods, pruned methods, and new comments
3287 (WebCore::IconDatabase::isOpen): Changed our meaning of "isOpen" to reflect the 2 databases
3289 2006-08-15 Jonas Witt <jonas.witt@gmail.com>
3293 - added ObjC wrappers for the KeyboardEvent and WheelEvent initializers
3294 http://bugzilla.opendarwin.org/show_bug.cgi?id=9736
3296 * bindings/objc/DOMEvents.mm:
3297 (-[DOMKeyboardEvent initKeyboardEvent::::::::::]):
3298 * bindings/objc/DOMEventsNonstandard.mm:
3299 (-[DOMWheelEvent initWheelEvent:::::::::::]):
3300 * bindings/objc/DOMPrivate.h:
3302 - added an initializer for the WheelEvent
3304 * dom/WheelEvent.cpp:
3305 (WebCore::WheelEvent::initWheelEvent):
3308 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
3312 Build fix: DWARF and -gfull are incompatible with symbol separation.
3314 * WebCore.xcodeproj/project.pbxproj:
3316 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
3320 http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
3321 Bug 10394: WebKit Release and Production configurations should enable dead code stripping
3323 * WebCore.xcodeproj/project.pbxproj:
3325 2006-08-15 Geoffrey Garen <ggaren@apple.com>
3329 - This patch reworks a previous fix for <rdar://problem/3524912> repro
3330 crash in KHTMLParser::parseToken, due to parser's current element being
3331 destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix
3334 The previous solutions caused a ~2% performance regression on iBench HTML,
3335 due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
3336 for a total win of ~3% vs current TOT.
3338 We can merge this fix to the branch to fix <rdar://problem/4661982>
3339 (crash in KHTMLParser::popBlock).
3341 The solution here is:
3342 (1) Don't let the parser ref document nodes -- that causes leaks.
3343 (2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when
3344 moving a node between stacks or to/from 'current', rather than deref'ing
3345 and then ref'ing again, simply move the node, along with its refcount, to
3346 its new location, and overwrite its old location.
3348 * WebCore.xcodeproj/project.pbxproj:
3349 * html/HTMLParser.cpp:
3350 (WebCore::HTMLStackElem::HTMLStackElem):
3351 (WebCore::HTMLStackElem::derefNode):
3352 (WebCore::HTMLParser::HTMLParser):
3353 (WebCore::HTMLParser::setCurrent):
3354 (WebCore::HTMLParser::insertNode):
3355 (WebCore::HTMLParser::popNestedHeaderTag):
3356 (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
3357 (WebCore::HTMLParser::reopenResidualStyleTags):
3358 (WebCore::HTMLParser::pushBlock):
3359 (WebCore::HTMLParser::popBlock):
3360 (WebCore::HTMLParser::popOneBlockCommon):
3361 (WebCore::HTMLParser::popOneBlock):
3362 (WebCore::HTMLParser::moveOneBlockToStack):
3363 * html/HTMLParser.h:
3365 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
3369 http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
3370 Bug 10384: Switch to DWARF for Release configuration
3372 * WebCore.xcodeproj/project.pbxproj:
3374 2006-08-15 Mark Rowe <opendarwin.org@bdash.net.nz>
3377 Tweaked and landed by Darin.
3379 http://bugzilla.opendarwin.org/show_bug.cgi?id=10399
3380 Bug 10399: RenderTextArea is unused
3382 * WebCore.vcproj/WebCore/WebCore.vcproj:
3383 * WebCore.xcodeproj/project.pbxproj:
3384 * WebCoreSources.bkl:
3385 Removed RenderTextArea source files.
3387 * html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
3388 * html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
3390 * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
3392 * platform/TextBox.h: Removed.
3393 * platform/mac/TextBoxMac.mm: Removed.
3394 * platform/mac/WebCoreTextArea.h: Removed.
3395 * platform/mac/WebCoreTextArea.mm: Removed.
3396 * rendering/RenderTextArea.cpp: Removed.
3397 * rendering/RenderTextArea.h: Removed.
3399 2006-08-15 Brady Eidson <beidson@apple.com>
3401 Reviewed by THE OTHER Maciej...
3404 1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
3405 2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
3406 null dereference later
3408 * bridge/mac/WebCoreIconDatabaseBridge.mm:
3409 (-[WebCoreIconDatabaseBridge retainIconForURL:]): Changed IconDatabase method name
3410 (-[WebCoreIconDatabaseBridge releaseIconForURL:]): ditto
3411 * loader/icon/IconDatabase.cpp:
3412 (WebCore::IconDatabase::retainIconForPageURL): Name change
3413 (WebCore::IconDatabase::releaseIconForPageURL): ditto
3414 (WebCore::IconDatabase::setIconURLForPageURL): Added the null site-icon check when changing a PageURL's iconURL
3415 * loader/icon/IconDatabase.h: Some renames
3417 2006-08-14 Eric Seidel <eric@eseidel.com>
3421 <mask>, <marker>, <pattern> inside <defs> do not work
3422 http://bugzilla.opendarwin.org/show_bug.cgi?id=6548
3424 * ksvg2/svg/SVGDefsElement.cpp:
3425 (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file
3426 (WebCore::SVGDefsElement::isValid): moved to .cpp file
3427 (WebCore::SVGDefsElement::rendererIsNeeded): Added.
3428 (WebCore::SVGDefsElement::createRenderer): Added.
3429 * ksvg2/svg/SVGDefsElement.h:
3430 * ksvg2/svg/SVGGElement.cpp:
3431 (WebCore::SVGGElement::SVGGElement): adjusted spacing
3432 (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing
3433 (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
3435 2006-08-14 Eric Seidel <eric@eseidel.com>
3437 Reviewed by darin and mjs.
3439 Add better SVGLoad event support.
3440 http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
3441 There will still need to be additional support added for <link> and <script> elements.
3442 Not all of the error -> loaded -> error transition cases work yet.
3444 * dom/EventTargetNode.cpp:
3445 (WebCore::EventTargetNode::dispatchGenericEvent):
3446 * html/HTMLImageLoader.cpp:
3447 (WebCore::HTMLImageLoader::dispatchLoadEvent):
3448 * html/HTMLImageLoader.h:
3449 (WebCore::HTMLImageLoader::haveFiredLoadEvent):
3450 (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
3451 * ksvg2/misc/SVGImageLoader.cpp:
3452 (WebCore::SVGImageLoader::SVGImageLoader):
3453 (WebCore::SVGImageLoader::dispatchLoadEvent):
3454 * ksvg2/misc/SVGImageLoader.h:
3455 * ksvg2/svg/SVGAElement.cpp:
3456 (WebCore::SVGAElement::parseMappedAttribute):
3457 * ksvg2/svg/SVGAnimatedBoolean.h:
3458 * ksvg2/svg/SVGElement.cpp:
3459 (WebCore::SVGElement::SVGElement):
3460 (WebCore::SVGElement::parseMappedAttribute):
3461 (WebCore::SVGElement::haveLoadedRequiredResources):
3462 (WebCore::SVGElement::sendSVGLoadEventIfPossible):
3463 (WebCore::SVGElement::closeRenderer):
3464 * ksvg2/svg/SVGElement.h:
3465 (WebCore::SVGElement::rendererIsNeeded):
3466 (WebCore::svg_dynamic_cast):
3467 * ksvg2/svg/SVGExternalResourcesRequired.h:
3468 * ksvg2/svg/SVGImageElement.cpp:
3469 (SVGImageElement::SVGImageElement):
3470 (SVGImageElement::haveLoadedRequiredResources):
3471 * ksvg2/svg/SVGImageElement.h:
3472 * ksvg2/svg/SVGSVGElement.cpp:
3473 (WebCore::SVGSVGElement::parseMappedAttribute):
3474 * ksvg2/svg/SVGScriptElement.cpp:
3475 (WebCore::SVGScriptElement::SVGScriptElement):
3476 (WebCore::SVGScriptElement::parseMappedAttribute):
3477 (WebCore::SVGScriptElement::executeScript):
3478 * xml/xmlhttprequest.cpp:
3479 (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
3481 2006-08-14 Anders Carlsson <acarlsson@apple.com>
3485 http://bugzilla.opendarwin.org/show_bug.cgi?id=10393
3486 Autogenerate NodeIterator and TreeWalker.
3488 * DerivedSources.make:
3489 * WebCore.xcodeproj/project.pbxproj:
3492 * bindings/js/JSNodeIteratorCustom.cpp: Added.
3493 (WebCore::JSNodeIterator::mark):
3494 * bindings/js/JSTreeWalkerCustom.cpp: Added.
3495 (WebCore::JSTreeWalker::mark):
3497 * bindings/js/kjs_traversal.cpp:
3498 * bindings/js/kjs_traversal.h:
3499 Remove implementations of DOMNodeIterator and DOMTreeWalker.
3501 * bindings/scripts/CodeGeneratorJS.pm:
3502 Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.
3504 * bindings/objc/DOM.mm:
3505 (-[DOMNodeIterator detach]):
3506 * dom/NodeIterator.cpp:
3507 (WebCore::NodeIterator::detach):
3508 * dom/NodeIterator.h:
3509 Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
3510 * dom/NodeIterator.idl: Added.
3511 * dom/TreeWalker.idl: Added.
3513 2006-08-14 Brady Eidson <beidson@apple.com>
3517 The changes are plentiful, but small, mostly to improve performance
3518 1) Add a bool flag to SiteIcon to stop it from querying the database over and over
3519 2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
3520 3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon