1 2006-08-29 Justin Garcia <justin.garcia@apple.com>
5 <rdar://problem/4700297>
6 REGRESSION: After replacing a misspelled word in a sentence, the selection extends to end of current line
8 * editing/ReplaceSelectionCommand.cpp:
9 (WebCore::ReplaceSelectionCommand::doApply): Rebalance whitespace
10 around insertionPos before insertion because the content might
11 cause a collapse, e.g. inserting <div>foo</div> at hello^ world.
12 * editing/htmlediting.cpp:
13 (WebCore::rebalanceWhitespaceInTextNode): Rebalance with all nbsps
14 for simplicity, we can produce sequences of regular spaces and
15 nbsps on serialization (10636).
17 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
21 The old solution was slow & does not work correctly.
22 Move the QString -> DeprecatedString conversion into
23 DeprectedString.cpp, to be able to access allocateHandle().
25 * platform/DeprecatedString.cpp:
26 (WebCore::DeprecatedString::DeprecatedString):
27 * platform/qt/StringQt.cpp:
29 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
31 Reviewed/landed by Adam.
33 Implement containsCharacters() / determinePitch() functions.
35 * platform/qt/FontDataQt.cpp:
36 (WebCore::FontData::containsCharacters):
37 (WebCore::FontData::determinePitch):
39 2006-08-30 Brady Eidson <beidson@apple.com>
41 Reviewed by Darin's rubberstamp
43 We apparently have a fancy delateAllValues() helper for HashMap/Sets - I'll use that instead
45 * WebCore.xcodeproj/project.pbxproj:
46 * loader/icon/IconDatabase.cpp:
47 (WebCore::IconDatabase::removeAllIcons):
49 2006-08-29 waylonis <waylonis@google.com>
51 Reviewed, tweaked by ggaren.
53 - Changed to use ExecState on current context rather than global.
54 Part of the fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10114
55 * bindings/objc/WebScriptObject.mm:
56 (+[WebScriptObject throwException:]):
57 (-[WebScriptObject setException:]):
59 2006-08-30 Adele Peterson <adele@apple.com>
63 - WebCore part of fix for:
64 http://bugzilla.opendarwin.org/show_bug.cgi?id=10576
65 Disallow copy from new password fields
67 * page/Frame.cpp: (WebCore::Frame::mayCopy): Added. Checks to see if the selection is within a password field.
68 * page/Frame.h: Added mayCopy.
70 * bridge/mac/FrameMac.h:
71 * bridge/mac/FrameMac.mm:
72 (WebCore::FrameMac::handleMouseMoveEvent): Checks mayCopy before starting a drag.
73 (WebCore::FrameMac::mayDHTMLCut): Renamed to match the bridge method. This also checks mayCopy now.
74 (WebCore::FrameMac::mayDHTMLCopy): ditto.
75 (WebCore::FrameMac::tryDHTMLCut): ditto.
76 (WebCore::FrameMac::tryDHTMLCopy): ditto.
77 (WebCore::FrameMac::mayDHTMLPaste): Renamed to match the bridge function.
78 (WebCore::FrameMac::tryDHTMLPaste): ditto.
79 * bridge/mac/WebCoreFrameBridge.h:
80 * bridge/mac/WebCoreFrameBridge.mm:
81 (-[WebCoreFrameBridge mayCopy]): Calls the renamed method on frame.
82 (-[WebCoreFrameBridge mayDHTMLCut]): ditto.
83 (-[WebCoreFrameBridge mayDHTMLCopy]): ditto.
84 (-[WebCoreFrameBridge mayDHTMLPaste]): ditto.
85 (-[WebCoreFrameBridge tryDHTMLCut]): ditto.
86 (-[WebCoreFrameBridge tryDHTMLCopy]): ditto.
87 (-[WebCoreFrameBridge tryDHTMLPaste]): ditto.
89 * css/html4.css: Added !important to the -webkit-text-security property for password fields.
91 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
95 Commit KDE related tweaks, to be able to
96 differentiate between a Qt-only or a KDE build.
98 * CMakeLists.txt: Move global variables up to trunk/CMakeLists.txt.
99 Also rename USE_WEBKIT_SVG_SUPPORT to WEBKIT_USE_SVG_SUPPORT.
101 2006-08-30 Timothy Hatcher <timothy@apple.com>
103 Rubber-stamped by Brady.
105 Fix for the generated headers to make the build work
106 during "installhdrs" builds. Also export DOM headers
107 using the #import <WebCore/DOM*.h> syntax.
109 * WebCore.xcodeproj/project.pbxproj:
110 * bindings/scripts/CodeGeneratorObjC.pm:
112 2006-08-29 Brady Eidson <beidson@apple.com>
114 Reviewed by Kevin Decker (Sarge)
116 <rdar://problem/4678414> - New IconDB needs to delete icons when asked
117 <rdar://problem/4707718> - If user's Icon directory is unwritable, Safari will crash at startup
119 * bridge/mac/WebCoreIconDatabaseBridge.h:
120 * bridge/mac/WebCoreIconDatabaseBridge.mm:
121 (-[WebCoreIconDatabaseBridge removeAllIcons]): Added
122 * loader/icon/IconDatabase.cpp:
123 (WebCore::IconDatabase::open): If DB file is not writeable, create an in-memory DB for this session
124 (WebCore::IconDatabase::close): Use new deleteAllPreparedStatements()
125 (WebCore::IconDatabase::removeAllIcons): Actually implemented
126 (WebCore::IconDatabase::deleteAllPreparedStatements): Added for convinience/consistency
127 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Use new SQLDatabase::clearAllTables()
128 * loader/icon/IconDatabase.h:
129 * loader/icon/SQLDatabase.cpp:
130 (WebCore::SQLDatabase::clearAllTables): Moved this from IconDatabase as it actually belongs here
131 (WebCore::SQLDatabase::vacuum): Added
132 * loader/icon/SQLDatabase.h:
133 (WebCore::SQLDatabase::path): changed name from getPath()
135 2006-08-29 Brady Eidson <beidson@apple.com>
139 Added a truth value to setIconURLForPageURL so WebKit can avoid sending a notification
140 This is a win on the iBench
142 * bridge/mac/WebCoreIconDatabaseBridge.h:
143 * bridge/mac/WebCoreIconDatabaseBridge.mm:
144 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
145 * loader/icon/IconDatabase.cpp:
146 (WebCore::IconDatabase::setIconURLForPageURL):
147 * loader/icon/IconDatabase.h:
149 2006-08-29 Alice Liu <alice.liu@apple.com>
153 Fixed <rdar://problem/4702021> REGRESSION: WebClip and Weather widgets shift downward vertically on screen after I drag them out from dashboard configure bar
155 * platform/mac/ScreenMac.mm:
156 (WebCore::flipScreenRect):
157 reverted the one line in this method back to what it was before r15765. This changed caused window.screenY to be incorrect.
159 2006-08-29 Darin Adler <darin@apple.com>
163 - fix <rdar://problem/4701494> REGRESSION: Scrollbar on EPSN widget doesn't scroll (also affects Widgets widget, web inspector)
165 The bug was that we would return "none" for computed style properties when they were
168 Test: fast/css/computed-style-negative-top.html
170 * css/CSSComputedStyleDeclaration.cpp:
171 (WebCore::valueForLength): Moved special case for "undefined length" out of here.
172 (WebCore::valueForMaxLength): Moved it into here.
173 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Use valueForMaxLength
174 only for max-height and max-width.
176 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
180 Add path-related SVG JavaScript bindings to generation.
184 2006-08-29 Eric Seidel <eric@eseidel.com>
188 Re-enable path-related SVG JavaScript bindings.
189 http://bugzilla.opendarwin.org/show_bug.cgi?id=10623
190 Split all SVGPathSeg*.idl files into Abs and Rel pieces.
191 Move all SVGPath*.idl files into ksvg2/svg
193 * DerivedSources.make:
194 * WebCore.xcodeproj/project.pbxproj:
195 * bindings/scripts/CodeGeneratorJS.pm: Special case Abs and Rel header includes
196 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Removed.
197 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Removed.
198 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Removed.
199 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Removed.
200 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Removed.
201 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Removed.
202 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Removed.
203 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Removed.
204 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Removed.
205 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Removed.
206 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Removed.
207 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Removed.
208 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Removed.
209 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Removed.
210 * ksvg2/ksvg.h: move SVGPathSegment enum
211 * ksvg2/svg/SVGPathElement.cpp: move SVGPathSegment enum
212 (WebCore::SVGPathElement::toPathData):
213 * ksvg2/svg/SVGPathSeg.cpp:
214 (WebCore::SVGPathSeg::SVGPathSeg):
215 * ksvg2/svg/SVGPathSeg.h:
216 (WebCore::SVGPathSeg::):
217 * ksvg2/svg/SVGPathSegArcAbs.idl: Added.
218 * ksvg2/svg/SVGPathSegArcRel.idl: Added.
219 * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Added.
220 * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Added.
221 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Added.
222 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Added.
223 * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Added.
224 * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Added.
225 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Added.
226 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Added.
227 * ksvg2/svg/SVGPathSegLinetoAbs.idl: Added.
228 * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Added.
229 * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Added.
230 * ksvg2/svg/SVGPathSegLinetoRel.idl: Added.
231 * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Added.
232 * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Added.
233 * ksvg2/svg/SVGPathSegMovetoAbs.idl: Added.
234 * ksvg2/svg/SVGPathSegMovetoRel.idl: Added.
236 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
238 Reviewed by Eric, landed by Anders.
240 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
242 Finish Unity merging. Remove libcurl usage, in favour of KIO.
243 This makes the regression testing fly! IO processing is way faster now.
246 * platform/ResourceLoaderInternal.h:
247 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
248 * platform/qt/FrameQt.cpp:
249 (WebCore::FrameQt::openURL):
250 (WebCore::FrameQt::submitForm):
251 (WebCore::FrameQt::urlSelected):
252 (WebCore::FrameQt::createEmptyDocument):
253 (WebCore::FrameQt::receivedData):
254 (WebCore::FrameQt::receivedAllData):
255 * platform/qt/FrameQt.h:
256 * platform/qt/ResourceLoaderCurl.cpp: Removed.
257 * platform/qt/ResourceLoaderManager.cpp:
258 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
259 (WebCore::ResourceLoaderManager::~ResourceLoaderManager):
260 (WebCore::ResourceLoaderManager::self):
261 (WebCore::ResourceLoaderManager::slotData):
262 (WebCore::ResourceLoaderManager::slotMimetype):
263 (WebCore::ResourceLoaderManager::slotResult):
264 (WebCore::ResourceLoaderManager::remove):
265 (WebCore::ResourceLoaderManager::add):
266 * platform/qt/ResourceLoaderManager.h:
267 * platform/qt/ResourceLoaderQt.cpp: Added.
268 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
269 (WebCore::ResourceLoader::~ResourceLoader):
270 (WebCore::ResourceLoader::start):
271 (WebCore::ResourceLoader::cancel):
272 (WebCore::ResourceLoader::assembleResponseHeaders):
273 (WebCore::ResourceLoader::retrieveCharset):
274 (WebCore::ResourceLoader::receivedResponse):
276 2006-08-29 Timothy Hatcher <timothy@apple.com>
280 Bug 10632: Objective-C DOM should use the @property syntax for DOM attributes
281 http://bugzilla.opendarwin.org/show_bug.cgi?id=10632
283 Generate @property when MACOSX_DEPLOYMENT_TARGET is >= 10.5.
284 This is backwards compatible with the getter/setter methods.
285 Generate setter arguments with a "new" prefix to avoid the property
286 name conflict warning. Also removes some whitespace and the comments
287 that we added to the headers. This makes the headers look like what we ship now.
289 * bindings/objc/DOMCSS.mm:
290 (-[DOMDocument getComputedStyle::]): renamed a local variable to avoid the property name conflict.
291 (-[DOMDocument getMatchedCSSRules::]): ditto.
292 * bindings/scripts/CodeGeneratorObjC.pm: generate @property in the headers.
294 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
296 Reviewed and landed by Anders.
298 Fix time calculation, by using a correct calculation. Calling time()
299 returns a number of seconds, aka. an integer. Fix it by using gettimeofday().
300 Patch originally proposed by Ronan Meneu <rmeneu@origyn.fr>
302 * platform/qt/SystemTimeQt.cpp:
303 (WebCore::currentTime):
305 2006-08-29 Sam Weinig <sam.weinig@gmail.com>
309 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10628
310 Auto-generate the remaining Objective-C DOM bindings
312 Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
313 and DOMHTMLOptionsCollection, and lays groundwork for the rest of the
314 HTML DOM bindings by adding/fixing the appropriate IDL's and updating
315 the CodeGeneratorObjC.pm build script.
317 * DerivedSources.make:
318 * WebCore.xcodeproj/project.pbxproj:
319 * bindings/objc/DOM.mm:
320 * bindings/objc/DOMExtensions.h:
321 * bindings/objc/DOMHTML.h:
322 * bindings/objc/DOMHTML.mm:
323 * bindings/objc/DOMHTMLInternal.h:
324 * bindings/scripts/CodeGeneratorObjC.pm:
325 * html/HTMLAnchorElement.idl:
326 * html/HTMLAreaElement.idl:
327 * html/HTMLBaseFontElement.idl:
328 * html/HTMLBodyElement.idl:
329 * html/HTMLButtonElement.idl:
330 * html/HTMLCollection.idl: Added.
331 * html/HTMLDocument.idl:
332 * html/HTMLElement.idl:
333 * html/HTMLFormElement.idl:
334 * html/HTMLFrameElement.idl: Added.
335 * html/HTMLFrameSetElement.idl: Added.
336 * html/HTMLIFrameElement.idl: Added.
337 * html/HTMLImageElement.idl:
338 * html/HTMLInputElement.idl:
339 * html/HTMLLabelElement.idl:
340 * html/HTMLLegendElement.idl:
341 * html/HTMLLinkElement.idl:
342 * html/HTMLMapElement.idl:
343 * html/HTMLObjectElement.idl: Added.
344 * html/HTMLOptionsCollection.idl:
345 * html/HTMLPreElement.idl:
346 * html/HTMLSelectElement.idl: Added.
347 * html/HTMLStyleElement.idl:
348 * html/HTMLTableCaptionElement.idl: Added.
349 * html/HTMLTableCellElement.idl: Added.
350 * html/HTMLTableColElement.idl: Added.
351 * html/HTMLTableElement.idl: Added.
352 * html/HTMLTableRowElement.idl: Added.
353 * html/HTMLTableSectionElement.idl: Added.
354 * html/HTMLTextAreaElement.idl:
356 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
358 Reviewed and landed by ap.
360 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10629.
361 Drawing convex polygons is broken in the Qt platform.
363 * platform/qt/GraphicsContextQt.cpp:
364 (WebCore::GraphicsContext::drawConvexPolygon):
366 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
370 Implementing font hashing properly, fixes weird crashes in HashMap.
372 * platform/qt/FontPlatformData.h:
373 * platform/qt/FontPlatformDataQt.cpp:
374 (WebCore::FontPlatformData::FontPlatformData):
375 (WebCore::FontPlatformData::hash):
377 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
381 Fix scrollbars to reappear after the first layouting.
383 * platform/qt/ScrollViewQt.cpp:
384 (WebCore::ScrollView::suppressScrollBars):
386 2006-08-29 Anders Carlsson <acarlsson@apple.com>
388 Reviewed by Darin and Geoff.
390 Move the CF String functions to separate files in platform/cf.
391 Also, move the files in platform/cfnet to platform/cf.
393 * WebCore.xcodeproj/project.pbxproj:
394 * platform/PlatformString.h:
395 * platform/StringImpl.h:
396 * platform/cf/StringCF.cpp: Added.
397 (WebCore::String::String):
398 * platform/cf/StringImplCF.cpp: Added.
399 (WebCore::StringImpl::createCFString):
400 * platform/cfnet/KURLCFNet.cpp: Removed.
401 * platform/cfnet/ResourceLoaderCFNet.cpp: Removed.
402 * platform/mac/StringImplMac.mm:
403 * platform/mac/StringMac.mm:
405 2006-08-29 Geoffrey Garen <ggaren@apple.com>
407 Rolling out a change I included by accident in my last commit.
409 * bridge/mac/FrameMac.mm:
410 (WebCore::FrameMac::passMouseDownEventToWidget):
411 * platform/mac/SharedTimerMac.cpp:
412 (WebCore::setSharedTimerFireTime):
414 2006-08-28 Geoffrey Garen <ggaren@apple.com>
418 Added support for experimental CFNetwork-based loader (not turned on yet).
420 While I was there, I did the following platform cleanup:
421 - Windows now uses USE(WININET) instead of PLATFORM(WIN_OS), to match the
422 USE(CFNETWORK) idiom.
423 - Removed some #includes of windows.h in platform-independent headers.
424 - Changed #ifdef __APPLE__ to PLATFORM(MAC)
425 - Fixed some build bustage, including case-sensitive filesystem bustage.
428 (WebCore::Loader::receivedAllData):
431 * platform/ResourceLoader.h:
432 * platform/ResourceLoaderClient.h:
433 * platform/ResourceLoaderInternal.h:
434 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
435 * platform/cfnet/KURLCFNet.cpp: Added.
436 (WebCore::KURL::createCFURL):
437 * platform/cfnet/ResourceLoaderCFNet.cpp: Added.
438 (WebCore::willSendRequest):
439 (WebCore::didReceiveChallenge):
440 (WebCore::didCancelChallenge):
441 (WebCore::didReceiveResponse):
442 (WebCore::didReceiveData):
443 (WebCore::didFinishLoading):
445 (WebCore::willCacheResponse):
446 (WebCore::addHeadersFromString):
447 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
448 (WebCore::ResourceLoader::~ResourceLoader):
449 (WebCore::arrayFromFormData):
450 (WebCore::emptyPerform):
451 (WebCore::runLoaderThread):
452 (WebCore::ResourceLoader::start):
453 (WebCore::ResourceLoader::cancel):
454 * platform/win/CursorWin.cpp:
456 2006-08-28 Justin Garcia <justin.garcia@apple.com>
460 <rdar://problem/4700341>
461 REGRESSION: In new mail message, caret isn't placed at end of line after redoing typing
463 * editing/ReplaceSelectionCommand.cpp:
464 (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME.
466 (WebCore::Frame::reappliedEditing): Restore the endingSelection(), not the startingSelection().
468 2006-08-28 Tim Omernick <timo@apple.com>
470 Reviewed by John Sullivan.
472 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
473 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
476 No test cases added, since this is essentially a leak fix.
478 A brief history of NPP_GetValue(), NPObjects, and reference counting.
480 Earlier versions of WebKit incorrectly interpreted the NPRuntime reference counting rules. We failed to take
481 into account the fact that plug-ins are required to retain NPObjects before returning them. This creates several
482 classes of interesting plug-ins:
484 1) Plug-ins tested in WebKit and other browsers. These plug-ins may have WebKit-specific workarounds to not retain
485 the returned NPObject, thus avoiding the memory leak in WebKit.
487 2) Plug-ins tested only in other browsers. These plug-ins must already retain their NPObjects, since other browsers
488 implemented the NPRuntime retain/release rules correctly. These plug-ins likely work in WebKit, but probably leak
489 NPObjects since WebKit adds its own retain in addition to the plug-in's retain.
491 3) Plug-ins tested only in WebKit, that fail to retain their NPObjects before returning them.
492 Such plug-ins are guaranteed to crash in other browsers due to the missing expected retain. These plug-ins
493 work in older WebKits because WebKit did not expect the plug-in to retain the NPObject. Now that our retain
494 rules match other browsers, these plug-ins may crash due to the difference in retain/release behavior. We could
495 potentially detect that situation and correct it here, but I consider it a bug that the plug-in did not follow the
496 documented NPRuntime reference counting rules. Furthermore, it is extremely unlikely that someone would develop
497 a Netscape plug-in and test it *only* in WebKit. The entire purpose of creating a Netscape plugin is so that it
498 works in all browsers!
500 4) Plug-ins tested only in WebKit, that properly retain their NPObjects before returning them.
501 These plug-ins probably work in other browsers, and leak their NPObjects in older WebKits because of WebKit's
502 extra retain. A developer of this type of plug-in is probably unaware of the NPObject leak. A more savvy developer
503 would create a plug-in that fits into category #1.
505 I am changing our NPP_GetValue() behavior to match Firefox and other browsers -- the plug-in is now expected to retain the
506 returned NPObject, and the browser is expected to release it when done. This means that plug-ins in category #3 need to be
507 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
508 this needs to be handled specifically by WebKit.
510 * bridge/mac/FrameMac.mm:
511 Changed -pluginScriptableObject to -createPluginScriptableObject to make clearer the contract that the method must return a
512 retained NPObject. Also changed it to return an actual NPObject* instead of a void*. There is only one caller of this method,
513 and only one implementor. Using void* here is a needless abstraction. It's an NPObject*! Admit it!
514 (WebCore::getInstanceForView):
515 Release the NPObject after creating the bindings instance. This is the actual bug fix.
517 2006-08-28 Alice Liu <alice.liu@apple.com>
521 Fixed <rdar://problem/4548537> Document.domain and other attributes are blank for an iframe created with document.write
524 (WebCore::Document::open):
525 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()
527 (WebCore::Frame::didExplicitOpen):
528 set the frame's url to the document's url
530 2006-08-28 Brady Eidson <beidson@apple.com>
532 Reviewed by Adele and Adam
534 Added an optimization to return early if there's no replacements to be made
536 * platform/StringImpl.cpp:
537 (WebCore::StringImpl::replace):
539 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
541 Reviewed and landed by ap.
543 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
544 Provide stub implementation of RenderPopupMenuQt.
547 * platform/qt/RenderPopupMenuQt.cpp: Added.
548 (WebCore::RenderPopupMenuQt::RenderPopupMenuQt):
549 (WebCore::RenderPopupMenuQt::~RenderPopupMenuQt):
550 (WebCore::RenderPopupMenuQt::clear):
551 (WebCore::RenderPopupMenuQt::populate):
552 (WebCore::RenderPopupMenuQt::showPopup):
553 (WebCore::RenderPopupMenuQt::hidePopup):
554 (WebCore::RenderPopupMenuQt::addSeparator):
555 (WebCore::RenderPopupMenuQt::addGroupLabel):
556 (WebCore::RenderPopupMenuQt::addOption):
557 * platform/qt/RenderPopupMenuQt.h: Added.
558 * platform/qt/RenderThemeQt.cpp:
559 (WebCore::RenderThemeQt::systemFont):
560 (WebCore::RenderThemeQt::createPopupMenu):
562 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
564 Reviewed and landed by ap.
566 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
567 Offer QString -> DeprecatedString conversion.
569 * platform/DeprecatedString.h:
570 * platform/qt/StringQt.cpp:
571 (WebCore::DeprecatedString::DeprecatedString):
573 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
575 Reviewed by Tim Hatcher.
577 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
579 * platform/qt/RenderThemeQt.cpp:
580 (WebCore::RenderThemeQt::systemFont):
581 Remove annoying notImplemented() usage in systemFont()
583 2006-08-28 David Harrison <harrison@apple.com>
587 <rdar://problem/3942647> Support AXStyleTextMarkerRangeForTextMarker parameterized attribute
589 * bridge/mac/WebCoreAXObject.mm:
590 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
591 Add AXStyleTextMarkerRangeForTextMarker.
595 Return first/last VisiblePosition in range having the same style has the specified VisiblePosition.
597 (-[WebCoreAXObject doAXStyleTextMarkerRangeForTextMarker:]):
598 Return AXTextMarkerRange for startOfStyleRange/endOfStyleRange of the specified AXTextMarker.
600 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
601 Call doAXStyleTextMarkerRangeForTextMarker for AXStyleTextMarkerRangeForTextMarker.
603 2006-08-28 David Harrison <harrison@apple.com>
607 <rdar://problem/4517383> Hide all images used for spacing purpose in AX
609 * bridge/mac/WebCoreAXObject.mm:
610 (-[WebCoreAXObject accessibilityIsIgnored]):
611 Check for one-dimensional image
612 Check whether rendered image was stretched from one-dimensional file image
614 2006-08-27 Brady Eidson <beidson@apple.com>
618 Rewrote StringImpl::replace(UChar, StringImpl*)
620 * platform/StringImpl.cpp:
621 (WebCore::StringImpl::replace):
623 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
627 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
628 WebCore needs autogenerated Obj-C DOM bindings
630 First round of auto-generated Objective C DOM bindings, starting
633 * DerivedSources.make:
634 * WebCore.xcodeproj/project.pbxproj:
635 * bindings/objc/DOM.mm:
636 (-[DOMNode description]):
637 (-[DOMNode KJS::Bindings::]):
638 (-[DOMNode dispatchEvent:]):
639 (-[DOMNamedNodeMap _initWithNamedNodeMap:]):
640 (+[DOMNamedNodeMap _namedNodeMapWith:]):
641 (-[DOMNodeList _initWithNodeList:]):
642 (+[DOMNodeList _nodeListWith:]):
643 (-[DOMImplementation _initWithDOMImplementation:]):
644 (+[DOMImplementation _DOMImplementationWith:]):
645 (-[DOMImplementation _DOMImplementation]):
646 (+[DOMDocumentFragment _documentFragmentWith:]):
647 (-[DOMDocumentFragment _fragment]):
648 (-[DOMDocument createCSSStyleDeclaration]):
649 (+[DOMDocument _documentWith:]):
650 (-[DOMDocument _document]):
651 (-[DOMDocument _ownerElement]):
652 (+[DOMAttr _attrWith:]):
654 (+[DOMDocumentType _documentTypeWith:WebCore::]):
655 (-[DOMDocumentType WebCore::]):
656 (+[DOMText _textWith:WebCore::]):
657 (+[DOMComment _commentWith:WebCore::]):
658 (+[DOMCDATASection _CDATASectionWith:WebCore::]):
659 (+[DOMProcessingInstruction _processingInstructionWith:WebCore::]):
660 (+[DOMEntityReference _entityReferenceWith:WebCore::]):
661 * bindings/objc/DOMCSS.h:
662 * bindings/objc/DOMCSS.mm:
663 * bindings/objc/DOMCore.h:
664 * bindings/objc/DOMEvents.h:
665 * bindings/objc/DOMEvents.mm:
666 * bindings/objc/DOMExtensions.h:
667 * bindings/objc/DOMHTML.mm:
668 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
669 * bindings/objc/DOMHTMLInternal.h:
670 * bindings/objc/DOMImplementationFront.h:
671 * bindings/objc/DOMInternal.h:
672 * bindings/objc/DOMNode.h: Added.
673 * bindings/objc/DOMNode.mm: Added.
674 (-[DOMNode dealloc]):
675 (-[DOMNode finalize]):
676 (-[DOMNode nodeName]):
677 (-[DOMNode nodeValue]):
678 (-[DOMNode setNodeValue:]):
679 (-[DOMNode nodeType]):
680 (-[DOMNode parentNode]):
681 (-[DOMNode childNodes]):
682 (-[DOMNode firstChild]):
683 (-[DOMNode lastChild]):
684 (-[DOMNode previousSibling]):
685 (-[DOMNode nextSibling]):
686 (-[DOMNode attributes]):
687 (-[DOMNode ownerDocument]):
688 (-[DOMNode insertBefore::]):
689 (-[DOMNode replaceChild::]):
690 (-[DOMNode removeChild:]):
691 (-[DOMNode appendChild:]):
692 (-[DOMNode hasChildNodes]):
693 (-[DOMNode cloneNode:]):
694 (-[DOMNode normalize]):
695 (-[DOMNode isSupported::]):
696 (-[DOMNode namespaceURI]):
698 (-[DOMNode setPrefix:]):
699 (-[DOMNode localName]):
700 (-[DOMNode hasAttributes]):
701 (-[DOMNode isSameNode:]):
702 (-[DOMNode isEqualNode:]):
703 (-[DOMNode isDefaultNamespace:]):
704 (-[DOMNode lookupPrefix:]):
705 (-[DOMNode lookupNamespaceURI:]):
706 (-[DOMNode textContent]):
707 (-[DOMNode setTextContent:]):
708 (-[DOMNode boundingBox]):
709 (-[DOMNode lineBoxRects]):
710 * bindings/objc/DOMObject.h: Added.
711 * bindings/objc/DOMObject.mm: Added.
713 (-[DOMObject dealloc]):
714 (-[DOMObject finalize]):
715 (-[DOMObject copyWithZone:]):
716 (-[DOMObject sheet]):
717 * bindings/objc/DOMPrivate.h:
718 * bindings/objc/DOMRange.h:
719 * bindings/objc/DOMStylesheets.h:
720 * bindings/objc/DOMTraversal.h:
721 * bindings/objc/DOMViews.h:
722 * bindings/objc/DOMViews.mm:
723 * bindings/objc/DOMXPath.h:
724 * bindings/objc/DOMXPath.mm:
725 * bindings/scripts/CodeGenerator.pm:
726 * bindings/scripts/CodeGeneratorJS.pm:
727 * bindings/scripts/CodeGeneratorObjC.pm: Added.
729 * dom/CDATASection.idl: Added.
730 * dom/Comment.idl: Added.
731 * dom/DOMImplementation.idl:
734 * dom/EntityReference.idl: Added.
735 * dom/NamedNodeMap.idl: Added.
736 * dom/NodeList.idl: Added.
737 * dom/ProcessingInstruction.idl:
739 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
743 Fix crash in LayoutTests/css1/font_properties/font.html,
744 by implementing FontData::smallCapsFontData.
746 * platform/qt/FontDataQt.cpp:
747 (WebCore::FontData::platformDestroy):
748 (WebCore::FontData::smallCapsFontData):
750 2006-08-27 Brady Eidson <beidson@apple.com>
754 Plugged a leak in StringImpl::replace()
756 * platform/StringImpl.cpp:
757 (WebCore::StringImpl::replace):
759 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
761 Reviewed and landed by Anders.
763 Remove most annoying notImplemented() usages and
764 implement some missing ScrollViewQt functions.
765 Much nicer output when invoking run-webkit-tests.
767 * platform/qt/FrameQt.cpp:
768 (WebCore::FrameQt::saveDocumentState):
769 (WebCore::FrameQt::restoreDocumentState):
770 (WebCore::FrameQt::clearUndoRedoOperations):
771 (WebCore::FrameQt::partClearedInBegin):
772 * platform/qt/ResourceLoaderManager.cpp:
773 (WebCore::headerCallback):
774 (WebCore::ResourceLoaderManager::downloadTimerCallback):
775 * platform/qt/ScrollViewQt.cpp:
776 (WebCore::ScrollView::updateContents):
777 (WebCore::ScrollView::suppressScrollBars):
778 (WebCore::ScrollView::setStaticBackground):
779 (WebCore::ScrollView::addChild):
780 (WebCore::ScrollView::removeChild):
781 * platform/qt/TemporaryLinkStubs.cpp:
782 (WebCore::historyContains):
783 (WebCore::CheckCacheObjectStatus):
784 (WebCore::CheckIfReloading):
785 (loadResourceIntoArray):
786 (WebCore::PlugInInfoStore::supportsMIMEType):
788 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
790 Reviewed and landed by Anders.
792 Fix Qt build (add SVGMetaDataElement.cpp to build system)
796 2006-08-27 Eric Seidel <eric@eseidel.com>
798 Reviewed by andersca.
800 No logic changes. Just cleanup.
802 * ksvg2/svg/SVGAngle.cpp:
803 (SVGAngle::SVGAngle):
804 (SVGAngle::unitType):
805 (SVGAngle::valueAsString):
806 (SVGAngle::newValueSpecifiedUnits):
807 (SVGAngle::convertToSpecifiedUnits):
808 * ksvg2/svg/SVGAngle.h:
809 * ksvg2/svg/SVGLength.cpp:
810 (WebCore::SVGLength::unitType):
811 (WebCore::SVGLength::newValueSpecifiedUnits):
812 (WebCore::SVGLength::convertToSpecifiedUnits):
813 (WebCore::SVGLength::updateValue):
814 (WebCore::SVGLength::updateValueInSpecifiedUnits):
815 * ksvg2/svg/SVGLength.h:
816 * platform/BitmapImage.cpp: Removed.
817 * platform/BitmapImage.h: Removed.
819 2006-08-27 Brady Eidson <beidson@apple.com>
823 -Changed all of the commonly used queries to keep around pre-prepared statements and bind
824 their arguments instead of constructing a new, messy, string appended statement each time
825 -Changed some code in pruneUnretainedIconsOnStartup regarding transactions
827 * loader/icon/IconDatabase.cpp:
828 (WebCore::IconDatabase::IconDatabase): Initializers
829 (WebCore::IconDatabase::close): Wipe all the preprepared statements
830 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Better handling of transactions
831 (WebCore::readySQLStatement): Make sure a preprepared statement is ready to go for a fooQuery()
832 (WebCore::IconDatabase::pageURLTableIsEmptyQuery): Added a comment
833 (WebCore::IconDatabase::imageDataForIconURLQuery): Use preprepared statement + binding
834 (WebCore::IconDatabase::timeStampForIconURLQuery): ditto
835 (WebCore::IconDatabase::iconURLForPageURLQuery): ditto
836 (WebCore::IconDatabase::forgetPageURLQuery): ditto
837 (WebCore::IconDatabase::setIconIDForPageURLQuery): ditto
838 (WebCore::IconDatabase::getIconIDForIconURLQuery): ditto
839 (WebCore::IconDatabase::addIconForIconURLQuery): ditto
840 (WebCore::IconDatabase::hasIconForIconURLQuery): ditto
841 * loader/icon/IconDatabase.h: Added fooQuery() and *m_fooStatements
842 * loader/icon/SQLStatement.h:
843 (WebCore::SQLStatement::database): Added
845 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
851 * platform/qt/ScrollViewQt.cpp:
852 (WebCore::ScrollView::setHScrollBarMode):
853 (WebCore::ScrollView::setVScrollBarMode):
855 2006-08-27 Rob Buis <buis@kde.org>
859 http://bugzilla.opendarwin.org/show_bug.cgi?id=10557
860 KCanvasPath should be replace by platform/Path
862 Refactoring out the KCanvasPath class.
865 * WebCore.xcodeproj/project.pbxproj:
866 * kcanvas/KCanvasCreator.cpp:
867 (WebCore::KCanvasCreator::createRoundedRectangle):
868 (WebCore::KCanvasCreator::createRectangle):
869 (WebCore::KCanvasCreator::createEllipse):
870 (WebCore::KCanvasCreator::createCircle):
871 (WebCore::KCanvasCreator::createLine):
872 * kcanvas/KCanvasCreator.h:
873 * kcanvas/KCanvasPath.cpp: Removed.
874 * kcanvas/KCanvasPath.h: Removed.
875 * kcanvas/KCanvasResources.cpp:
876 (WebCore::operator<<):
877 (WebCore::KCanvasResource::clients):
878 (WebCore::KCanvasResource::invalidate):
879 (WebCore::KCanvasClipper::addClipData):
880 * kcanvas/KCanvasResources.h:
881 (WebCore::KCClipData::windRule):
882 (WebCore::KCClipDataList::KCClipDataList):
883 (WebCore::KCClipDataList::addPath):
884 * kcanvas/KCanvasTreeDebug.cpp:
885 (WebCore::operator<<):
886 * kcanvas/RenderPath.cpp:
887 (WebCore::RenderPath::fillContains):
888 (WebCore::RenderPath::relativeBBox):
889 (WebCore::RenderPath::setPath):
890 (WebCore::RenderPath::path):
891 (WebCore::RenderPath::paint):
892 (WebCore::RenderPath::nodeAtPoint):
893 * kcanvas/RenderPath.h:
894 * kcanvas/device/KRenderingDevice.h:
895 * kcanvas/device/KRenderingFillPainter.cpp:
896 (WebCore::KRenderingFillPainter::fillRule):
897 (WebCore::KRenderingFillPainter::setFillRule):
898 * kcanvas/device/KRenderingFillPainter.h:
899 * kcanvas/device/qt/KCanvasClipperQt.cpp:
900 (WebCore::KCanvasClipperQt::applyClip):
901 * kcanvas/device/qt/KCanvasPathQt.cpp: Removed.
902 * kcanvas/device/qt/KCanvasPathQt.h: Removed.
903 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
904 (WebCore::KRenderingDeviceContextQt::addPath):
905 (WebCore::KRenderingDeviceContextQt::setFillRule):
906 (WebCore::KRenderingDeviceQt::createItem):
907 * kcanvas/device/qt/KRenderingDeviceQt.h:
908 * kcanvas/device/qt/RenderPathQt.cpp:
909 (WebCore::RenderPathQt::drawMarkersIfNeeded):
910 (WebCore::RenderPathQt::strokeContains):
911 (WebCore::getPathStroke):
912 (WebCore::RenderPathQt::strokeBBox):
913 * kcanvas/device/qt/RenderPathQt.h:
914 * kcanvas/device/quartz/KCanvasItemQuartz.h:
915 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
916 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded):
917 (WebCore::KCanvasItemQuartz::strokeBBox):
918 (WebCore::KCanvasItemQuartz::strokeContains):
919 * kcanvas/device/quartz/KCanvasPathQuartz.h: Removed.
920 * kcanvas/device/quartz/KCanvasPathQuartz.mm: Removed.
921 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
922 (WebCore::KCanvasClipperQuartz::applyClip):
923 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
924 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
925 (WebCore::KRenderingDeviceContextQuartz::addPath):
926 (WebCore::KRenderingDeviceQuartz::createItem):
927 * kcanvas/device/quartz/QuartzSupport.h:
928 * kcanvas/device/quartz/QuartzSupport.mm:
929 (WebCore::scratchContext):
930 (WebCore::strokeBoundingBox):
931 (WebCore::pathContainsPoint):
932 * ksvg2/css/SVGCSSParser.cpp:
933 (WebCore::CSSParser::parseSVGValue):
934 * ksvg2/css/SVGCSSStyleSelector.cpp:
935 (WebCore::CSSStyleSelector::applySVGProperty):
936 * ksvg2/css/SVGRenderStyle.h:
937 (WebCore::SVGRenderStyle::InheritedFlags::):
938 * ksvg2/css/SVGRenderStyleDefs.h:
939 * ksvg2/misc/KCanvasRenderingStyle.cpp:
940 (WebCore::KSVGPainterFactory::fillPainter):
941 * ksvg2/svg/SVGCircleElement.cpp:
942 (SVGCircleElement::toPathData):
943 * ksvg2/svg/SVGCircleElement.h:
944 * ksvg2/svg/SVGClipPathElement.cpp:
945 (SVGClipPathElement::canvasResource):
946 * ksvg2/svg/SVGEllipseElement.cpp:
947 (WebCore::SVGEllipseElement::toPathData):
948 * ksvg2/svg/SVGEllipseElement.h:
949 * ksvg2/svg/SVGGradientElement.cpp:
950 (SVGGradientElement::notifyAttributeChange):
951 * ksvg2/svg/SVGImageElement.cpp:
952 * ksvg2/svg/SVGLineElement.cpp:
953 (SVGLineElement::toPathData):
954 * ksvg2/svg/SVGLineElement.h:
955 * ksvg2/svg/SVGMaskElement.cpp:
956 * ksvg2/svg/SVGPathElement.cpp:
957 (WebCore::SVGPathElement::toPathData):
958 * ksvg2/svg/SVGPathElement.h:
959 * ksvg2/svg/SVGPatternElement.cpp:
960 (WebCore::SVGPatternElement::notifyClientsToRepaint):
961 * ksvg2/svg/SVGPolygonElement.cpp:
962 (SVGPolygonElement::toPathData):
963 * ksvg2/svg/SVGPolygonElement.h:
964 * ksvg2/svg/SVGPolylineElement.cpp:
965 (SVGPolylineElement::toPathData):
966 * ksvg2/svg/SVGPolylineElement.h:
967 * ksvg2/svg/SVGRectElement.cpp:
968 (WebCore::SVGRectElement::toPathData):
969 * ksvg2/svg/SVGRectElement.h:
970 * ksvg2/svg/SVGStyledElement.cpp:
971 (WebCore::SVGStyledElement::createRenderer):
972 * ksvg2/svg/SVGStyledElement.h:
973 (WebCore::SVGStyledElement::toPathData):
974 * ksvg2/svg/SVGTextContentElement.cpp:
975 * ksvg2/svg/SVGTextElement.cpp:
978 (WebCore::Path::setWindingRule):
979 (WebCore::Path::windingRule):
980 * platform/cg/PathCG.cpp:
981 (WebCore::Path::contains):
982 (WebCore::Path::isEmpty):
983 (WebCore::CGPathToCFStringApplierFunction):
984 (WebCore::CFStringFromCGPath):
985 (WebCore::Path::debugString):
986 * platform/qt/FrameQt.cpp:
987 (WebCore::FrameQt::openURL):
988 * platform/qt/PathQt.cpp:
989 (WebCore::Path::contains):
990 (WebCore::Path::isEmpty):
991 (WebCore::Path::debugString):
993 2006-08-26 Eric Seidel <eric@eseidel.com>
997 pointer-events attribute does not work.
998 http://bugzilla.opendarwin.org/show_bug.cgi?id=10415
1000 * kcanvas/RenderPath.cpp:
1001 (WebCore::RenderPath::pointerEventsHitRules): new function to contain pointer-events hit logic
1002 (WebCore::RenderPath::nodeAtPoint): respect pointer-events property
1003 * kcanvas/RenderPath.h:
1004 (WebCore::RenderPath::PointerEventsHitRules::PointerEventsHitRules):
1005 * ksvg2/css/SVGCSSParser.cpp:
1006 (WebCore::CSSParser::parseSVGValue):
1007 * ksvg2/svg/SVGPaint.cpp: Fix this to use a real enum value
1008 (WebCore::SVGPaint::SVGPaint):
1009 (WebCore::SVGPaint::paintType):
1010 (WebCore::SVGPaint::uri):
1011 (WebCore::SVGPaint::setUri):
1012 (WebCore::SVGPaint::setPaint):
1013 * ksvg2/svg/SVGPaint.h:
1015 2006-08-27 Rob Buis <buis@kde.org>
1019 http://bugzilla.opendarwin.org/show_bug.cgi?id=10558
1020 SVG should have support for <metadata> element
1022 Add support for metadata tag.
1024 * DerivedSources.make:
1025 * WebCore.xcodeproj/project.pbxproj:
1026 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
1027 * ksvg2/svg/SVGMetadataElement.cpp: Added.
1028 (SVGMetadataElement::SVGMetadataElement):
1029 (SVGMetadataElement::~SVGMetadataElement):
1030 * ksvg2/svg/SVGMetadataElement.h: Added.
1031 * ksvg2/svg/SVGMetadataElement.idl: Added.
1032 * ksvg2/svg/svgtags.in:
1034 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
1038 Daily Qt build fixes :-)
1040 * platform/qt/GraphicsContextQt.cpp:
1041 (WebCore::GraphicsContext::drawConvexPolygon):
1042 * platform/qt/ImageQt.cpp:
1043 (WebCore::Image::initPlatformData):
1044 (WebCore::Image::invalidatePlatformData):
1045 (WebCore::Image::loadPlatformResource):
1047 2006-08-26 David Hyatt <hyatt@apple.com>
1049 Fix the ifdef in Path.h to be CG.
1053 2006-08-26 David Hyatt <hyatt@apple.com>
1055 Fix Mac build bustage (lots of float/int confusion). I am not sure
1056 whether rounding was desired or not... this is just a band-aid to get
1057 the build working again.
1059 * rendering/RenderThemeMac.mm:
1060 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1061 (WebCore::RenderThemeMac::paintMenuListButton):
1062 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
1064 2006-08-25 David Hyatt <hyatt@apple.com>
1066 More refactoring of image to disentangle graphics (e.g., Cairo) from
1067 platform (e.g., Windows).
1069 * WebCore.vcproj/WebCore/WebCore.vcproj:
1070 Add ImageWin to project.
1073 (WebCore::Cache::init):
1074 * loader/icon/IconDataCache.cpp:
1075 (WebCore::IconDataCache::loadImageFromResource):
1076 Renamed loadResource to loadPlatformResource to try to make it more clear
1077 that this call is implemented on each OS (and not by graphics libraries).
1079 * platform/Image.cpp:
1080 (WebCore::Image::Image):
1081 (WebCore::Image::~Image):
1082 (WebCore::Image::invalidateData):
1083 (WebCore::Image::size):
1084 (WebCore::Image::setData):
1085 (WebCore::Image::setNativeData):
1086 Fix up the PDF code to not be considered platform data any more, since
1087 PDF rendering is not for a specific OS.
1089 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
1090 instead of NativeData.
1093 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
1094 Renamed methods to reflect that they are OS-specific and not
1095 graphics-library-specific.
1097 * platform/cairo/ImageCairo.cpp:
1098 Removed the platform data methods. Other platforms besides Windows that
1099 use Cairo will need to account for this change by adding these methods
1100 to their OS Image***.cpp file.
1102 * platform/cg/ImageCG.cpp:
1103 (WebCore::Image::drawTiled):
1104 Add FIXMEs to the wkpattern stuff.
1106 * platform/cg/PDFDocumentImage.cpp:
1107 Shouldn't have #imports in .cpp.
1109 * platform/mac/ImageMac.mm:
1110 (WebCore::Image::initPlatformData):
1111 (WebCore::Image::invalidatePlatformData):
1112 (WebCore::Image::loadPlatformResource):
1113 (WebCore::Image::getTIFFRepresentation):
1114 Add the platform data initializers to the Mac Image file. Move the
1115 TIFF representation there as well, since this is only used by Mac code.
1117 * platform/win/ImageWin.cpp: Added.
1118 (WebCore::Image::initPlatformData):
1119 (WebCore::Image::invalidatePlatformData):
1120 (WebCore::Image::loadPlatformResource):
1121 (WebCore::Image::supportsType):
1122 Similar work for Windows. Add stubs for possible future HBITMAP returns
1123 in the platform data methods.
1125 * rendering/RenderLayer.cpp:
1126 (WebCore::RenderLayer::paintResizeControl):
1127 * rendering/RenderThemeMac.mm:
1128 (WebCore::RenderThemeMac::paintResizeControl):
1129 loadResource -> loadPlatformResource
1131 2006-08-26 Adam Roben <aroben@apple.com>
1133 Rubber-stamped by Adele.
1137 * platform/cairo/GraphicsContextCairo.cpp:
1138 (WebCore::GraphicsContext::drawConvexPolygon):
1140 2006-08-25 Adele Peterson <adele@apple.com>
1142 Patch by Francisco, Reviewed by me.
1144 Preparation for switch to new text field implementation of password field.
1146 Added -webkit-text-security property.
1148 Tests: updated fast/css/computed-style-expected.txt
1150 * css/CSSPropertyNames.in: Added -webkit-text-security.
1151 * css/CSSComputedStyleDeclaration.cpp:
1153 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
1154 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
1155 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
1156 * css/html4.css: Added style for password field to use -webkit-text-security.
1158 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
1159 (WebCore::HTMLInputElement::selectionStart):
1160 (WebCore::HTMLInputElement::selectionEnd):
1161 (WebCore::HTMLInputElement::setSelectionStart):
1162 (WebCore::HTMLInputElement::setSelectionEnd):
1163 (WebCore::HTMLInputElement::select):
1164 (WebCore::HTMLInputElement::setSelectionRange):
1165 (WebCore::HTMLInputElement::createRenderer):
1166 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
1168 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
1169 characters with one character, like a bullet.
1170 * platform/StringImpl.h:
1172 * rendering/RenderStyle.cpp:
1173 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
1174 (WebCore::RenderStyle::diff): Added case for textSecurity.
1175 * rendering/RenderStyle.h:
1177 (WebCore::RenderStyle::textSecurity): Added.
1178 (WebCore::RenderStyle::setTextSecurity): Added.
1179 (WebCore::RenderStyle::initialTextSecurity): Added.
1180 * rendering/RenderText.cpp:
1181 (WebCore::RenderText::setStyle): Added case for textSecurity.
1182 (WebCore::RenderText::setText): ditto.
1184 2006-08-25 Adele Peterson <adele@apple.com>
1188 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
1190 Tests: fast/forms/select-baseline.html
1191 fast/borders/borderRadiusInvalidColor.html
1192 updated: fast/forms/select-style-expected.txt and more...
1194 * css/html4.css: Added style rules for styled select elements.
1196 * platform/GraphicsContext.h: Added argument for antialiasing.
1197 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
1198 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
1200 * rendering/RenderObject.cpp:
1201 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
1202 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
1203 (any callers that set this to true were already ensuring that their color was valid).
1204 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
1205 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
1206 (WebCore::RenderObject::paintOutline): ditto.
1207 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
1208 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
1210 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
1211 Added case for when there's no children to check for hasLineIfEmpty.
1212 * rendering/RenderBlock.h:
1213 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
1214 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
1215 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
1216 * rendering/RenderFlexibleBox.cpp:
1217 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
1218 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
1220 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
1221 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
1222 immediately after painting the background.
1224 * rendering/RenderTheme.cpp:
1225 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
1226 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
1227 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
1228 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
1229 so the arrow control will draw at the right time (after the background).
1230 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
1231 (WebCore::RenderTheme::paintBorderOnly): ditto.
1232 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
1233 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
1234 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
1236 * rendering/RenderThemeMac.h:
1237 * rendering/RenderThemeMac.mm:
1238 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
1239 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
1240 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
1241 (WebCore::TopGradientInterpolate): Added.
1242 (WebCore::BottomGradientInterpolate): Added.
1243 (WebCore::MainGradientInterpolate): Added.
1244 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
1245 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
1246 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
1248 2006-08-25 Brady Eidson <beidson@apple.com>
1252 Changed some time()-related code to be more platform independent
1254 * loader/icon/IconDatabase.cpp:
1255 (WebCore::IconDatabase::isIconExpiredForIconURL):
1256 (WebCore::IconDatabase::getOrCreateIconDataCache):
1257 (WebCore::IconDatabase::setIconDataForIconURL):
1259 2006-08-25 David Harrison <harrison@apple.com>
1263 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
1265 * bridge/mac/WebCoreAXObject.mm:
1267 New. Returns the HTMLLabelElement, if any, for the specified Element.
1269 (-[WebCoreAXObject title]):
1270 For input elements, return the innerHTML() of the labelForElement().
1272 2006-08-25 Brady Eidson <beidson@apple.com>
1274 Reviewed by Tim Hatcher
1276 Changed some debugging-only code to be more platform independent
1278 * WebCore.xcodeproj/project.pbxproj:
1279 * loader/icon/IconDatabase.cpp:
1280 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
1281 (WebCore::IconDatabase::syncDatabase):
1283 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1285 Reviewed/landed by Adam.
1287 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10561
1288 Qt platform build fixes.
1290 * platform/qt/FrameQt.h:
1291 * platform/qt/ScreenQt.cpp:
1292 (WebCore::qwidgetForPage):
1293 (WebCore::screenRect):
1294 (WebCore::screenDepth):
1295 (WebCore::usableScreenRect):
1296 * platform/qt/TemporaryLinkStubs.cpp:
1297 (WebCore::screenDepthPerComponent):
1298 (WebCore::screenIsMonochrome):
1299 * platform/qt/WidgetQt.cpp:
1301 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1303 Reviewed/landed by Adam.
1305 Finally fix font caching. WebKit+Qt now works
1306 out of the box without any further patches :-)
1308 * platform/qt/FontDataQt.cpp:
1309 (WebCore::FontData::platformDestroy):
1310 * platform/qt/FontPlatformData.h:
1311 * platform/qt/FontPlatformDataQt.cpp:
1312 (WebCore::FontPlatformData::FontPlatformData):
1313 (WebCore::FontPlatformData::isFixedPitch):
1314 (WebCore::FontPlatformData::font):
1315 (WebCore::FontPlatformData::fontPtr):
1316 (WebCore::FontPlatformData::hash):
1317 (WebCore::FontPlatformData::operator==):
1319 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1321 Reviewed/landed by Adam.
1323 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10559
1324 Confirm to WebKit style guide - last fixes :-)
1326 * platform/ResourceLoaderClient.h:
1327 * platform/qt/ComboBoxQt.cpp:
1328 * platform/qt/FrameQt.cpp:
1329 (WebCore::doScroll):
1330 (WebCore::FrameQt::FrameQt):
1331 (WebCore::FrameQt::openURL):
1332 (WebCore::FrameQt::submitForm):
1333 (WebCore::FrameQt::setTitle):
1334 (WebCore::FrameQt::passSubframeEventToSubframe):
1335 (WebCore::FrameQt::registerCommandForUndo):
1336 (WebCore::FrameQt::registerCommandForRedo):
1337 (WebCore::FrameQt::keyEvent):
1338 (WebCore::FrameQt::setFrameGeometry):
1339 * platform/qt/GlyphMapQt.cpp:
1340 (WebCore::GlyphMap::fillPage):
1341 * platform/qt/GraphicsContextQt.cpp:
1342 (WebCore::toQtCompositionMode):
1343 (WebCore::toQtLineCap):
1344 (WebCore::toQtLineJoin):
1345 (WebCore::TextShadow::TextShadow):
1346 (WebCore::GraphicsContextPlatformPrivate::p):
1347 * platform/qt/ImageQt.cpp:
1348 (WebCore::FrameData::clear):
1349 (WebCore::Image::supportsType):
1350 * platform/qt/IntSizeQt.cpp:
1351 * platform/qt/LineEditQt.cpp:
1352 * platform/qt/ListBoxQt.cpp:
1353 * platform/qt/PageQt.cpp:
1354 (WebCore::Page::windowRect):
1355 * platform/qt/PathQt.cpp:
1356 (WebCore::Path::~Path):
1357 * platform/qt/ResourceLoaderCurl.cpp:
1358 (WebCore::ResourceLoader::assembleResponseHeaders):
1359 (WebCore::ResourceLoader::retrieveCharset):
1360 (WebCore::ResourceLoader::receivedResponse):
1361 * platform/qt/ResourceLoaderManager.cpp:
1362 (WebCore::headerCallback):
1363 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1364 (WebCore::ResourceLoaderManager::add):
1365 * platform/qt/ScreenQt.cpp:
1366 (WebCore::screenRect):
1367 (WebCore::usableScreenRect):
1368 * platform/qt/ScrollViewQt.cpp:
1369 (WebCore::ScrollView::ScrollView):
1370 (WebCore::ScrollView::~ScrollView):
1371 (WebCore::ScrollView::setParentWidget):
1372 (WebCore::ScrollView::addChild):
1373 * platform/qt/SharedTimerQt.cpp:
1374 (WebCore::setSharedTimerFiredFunction):
1375 * platform/qt/SharedTimerQt.h:
1376 (WebCore::SharedTimerQt::SharedTimerQt):
1377 (WebCore::SharedTimerQt::fire):
1378 * platform/qt/SystemTimeQt.cpp:
1379 (WebCore::currentTime):
1380 * platform/qt/TextEditQt.cpp:
1381 (WebCore::PlatformTextEdit::setParentWidget):
1382 (WebCore::PlatformTextEdit::text):
1383 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
1385 2006-08-24 David Harrison <harrison@apple.com>
1390 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
1392 Fix bug I introduced in r15959.
1394 * bridge/mac/WebCoreAXObject.mm:
1395 (-[WebCoreAXObject accessibilityAttributeValue:]):
1396 Use topDocument in case we are in a subframe (we want the start/end of the overall page).
1398 2006-08-24 Brady Eidson <beidson@apple.com>
1402 Fixed my previous checkin, which was pruning the users entire icon db on startup everytime
1404 * loader/icon/IconDatabase.cpp:
1405 (WebCore::IconDatabase::retainIconForPageURL): Bind the PageURL to argument 1, as SQL bindings
1406 are indexed to 1, not 0
1408 2006-08-24 Geoffrey Garen <ggaren@apple.com>
1412 Frame refactoring: changed FrameView clients so they no longer assume that
1413 FrameViews are Widgets that can tell you things about the platform, in
1414 preparation for divorcing FrameViews from heavy-weight Widgets altogether.
1416 This patch makes Page, rather than Widget, responsible for answering
1417 questions about the screen (scale factor, color depth, etc.). Refactoring
1418 aside, I think this makes more sense, since (a) the screen has nothing to do
1419 with any particular widget and (b) Page was already half-responsible for
1420 answering those questions, anyway.
1422 Plus some random Windows build fix goodness.
1424 Layout tests still pass.
1426 2006-08-24 Timothy Hatcher <timothy@apple.com>
1430 Allow changing the background color WebCore draws under transparent page backgrounds.
1431 No automated way to test. All tests pass, no performance regression.
1433 * bridge/mac/WebCoreFrameBridge.h:
1434 * bridge/mac/WebCoreFrameBridge.mm:
1435 (-[WebCoreFrameBridge setBaseBackgroundColor:]):
1436 * page/FrameView.cpp:
1437 (WebCore::FrameViewPrivate::FrameViewPrivate):
1438 (WebCore::FrameView::baseBackgroundColor):
1439 (WebCore::FrameView::setBaseBackgroundColor):
1441 * rendering/RenderBox.cpp:
1442 (WebCore::RenderBox::paintBackgroundExtended):
1443 * rendering/RenderView.cpp:
1444 (WebCore::RenderView::paintBoxDecorations):
1446 2006-08-24 Darin Adler <darin@apple.com>
1450 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10169
1451 REGRESSION: NativeTextArea: Text dragged from <input type=text> to textarea disappears
1452 - eliminate the EditCommandPtr class from editing; use PassRefPtr and RefPtr instead
1453 - other editing-related cleanup
1455 Test: fast/forms/drag-into-textarea.html
1457 * bridge/mac/FrameMac.h: Changed EditCommandPtr parameters to use PassRefPtr<EditCommand> instead.
1458 * bridge/win/FrameWin.h: Ditto.
1459 * bridge/mac/FrameMac.mm:
1460 (WebCore::FrameMac::registerCommandForUndoOrRedo): Ditto.
1461 (WebCore::FrameMac::registerCommandForUndo): Ditto.
1462 (WebCore::FrameMac::registerCommandForRedo): Ditto.
1464 * bridge/mac/WebCoreFrameBridge.mm:
1465 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1466 Use applyCommand instead of EditCommandPtr. Also remove now-unneeded document parameter.
1467 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]): Ditto.
1468 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): Ditto.
1470 * editing/AppendNodeCommand.h: Removed document parameter from constructor. Changed new child
1471 parameter to be a PassRefPtr. Reversed order of child and parent parameters.
1472 * editing/AppendNodeCommand.cpp:
1473 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
1474 (WebCore::AppendNodeCommand::doApply): Ditto.
1475 (WebCore::AppendNodeCommand::doUnapply): Ditto.
1477 * editing/ApplyStyleCommand.h: Removed document parameter from constructor.
1478 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): Ditto.
1480 * editing/BreakBlockquoteCommand.h: Removed unneeded include of DeprecatedPtrList.h.
1481 * editing/BreakBlockquoteCommand.cpp: Moved the include of DeprecatedPtrList.h here.
1482 (WebCore::BreakBlockquoteCommand::doApply): Changed code to construct a Selection explicitly
1483 since setEndingSelection is no longer overloaded for Position.
1485 * editing/CompositeEditCommand.h: Added isFirstCommand function. Changed m_cmds from
1486 a DeprecatedValueList<EditCommandPtr> to a Vector<RefPtr<EditCommand>> and renamed it
1487 m_commands and made both doUnapply and doReapply private.
1488 * editing/CompositeEditCommand.cpp:
1489 (WebCore::CompositeEditCommand::doUnapply): Rewrote to use m_commands.
1490 (WebCore::CompositeEditCommand::doReapply): Ditto.
1491 (WebCore::CompositeEditCommand::applyCommandToComposite): Removed code to explicitly set up
1492 starting and ending selection -- now done inside setParent. Rewrote to use m_commands.
1493 (WebCore::CompositeEditCommand::applyStyle): Changed to not use EditCommandPtr.
1494 (WebCore::CompositeEditCommand::applyStyledElement): Ditto.
1495 (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
1496 (WebCore::CompositeEditCommand::insertParagraphSeparator): Ditto.
1497 (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
1498 (WebCore::CompositeEditCommand::appendNode): Ditto.
1499 (WebCore::CompositeEditCommand::removeNode): Ditto.
1500 (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
1501 (WebCore::CompositeEditCommand::splitTextNode): Ditto.
1502 (WebCore::CompositeEditCommand::splitElement): Ditto.
1503 (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
1504 (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
1505 (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
1506 (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
1507 (WebCore::CompositeEditCommand::inputText): Ditto.
1508 (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
1509 (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
1510 (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
1511 (WebCore::CompositeEditCommand::deleteSelection): Ditto.
1512 (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
1513 (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Also fixed a bug where the code
1514 would not remove an empty attribute -- will not come up in practice, but wrong in theory.
1515 (WebCore::CompositeEditCommand::setNodeAttribute): Changed to not use EditCommandPtr.
1516 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Ditto.
1517 (WebCore::CompositeEditCommand::deleteInsignificantText): Rewrote to use a for loop.
1518 (WebCore::CompositeEditCommand::moveParagraphs): Changed to not use EditCommandPtr.
1519 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Changed code to construct a
1520 Selection explicitly since setEndingSelection is no longer overloaded for Position.
1521 (WebCore::createBlockPlaceholderElement): Collapsed this code so that the
1522 block placeholder class string is no longer spread across multiple functions.
1523 Perhaps we can get rid of this altogether at some point.
1525 * editing/DeleteFromTextNodeCommand.h: Removed unneeded document parameter from one constructor.
1526 Also removed unneeded destructor.
1527 * editing/DeleteFromTextNodeCommand.cpp:
1528 (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Ditto.
1530 * editing/DeleteSelectionCommand.h: Removed unneeded document parameter from one constructor.
1531 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Ditto.
1533 * editing/EditCommand.h: Removed ECommandState, isCompositeStep(), parent(), state(), setState(),
1534 and most overloads of setStartingSelection() and setEndingSelection(). Made document() protected
1535 and non-virtual. Made setStartingSelection() setEndingSelection(), and styleAtPosition() protected.
1536 Made doApply(), doUnapply(), and doReapply() private. Added startingRootEditableElement(),
1537 endingRootEditableElement(), m_startingRootEditableElement, and m_endingRootEditableElement, which
1538 are needed so we can determine which editable elements an editing operation affects. Changed setParent()
1539 and m_parent to use CompositeEditCommand instead of EditCommand. Removed EditCommandPtr. Added
1540 applyCommand() function that's convenient to use on a newly-created command.
1541 * editing/EditCommand.cpp:
1542 (WebCore::EditCommand::EditCommand): Removed initialization for m_state, and added it for starting
1543 and ending root editable elements.
1544 (WebCore::EditCommand::apply): Simplified check for top level by just checking m_parent. Removed
1545 code to assert and set m_start. Eliminated use of EditCommandPtr.
1546 (WebCore::EditCommand::unapply): Ditto.
1547 (WebCore::EditCommand::reapply): Ditto.
1548 (WebCore::EditCommand::setStartingSelection): Changed to set root editable element too. Also made this
1549 not change the starting selection of the parent unless this is the first command in the parent -- didn't
1550 make sense the way it was.
1551 (WebCore::EditCommand::setEndingSelection): Changed to set root editable element too.
1552 (WebCore::EditCommand::setParent): Added code to set the starting and ending selection on the child
1553 based on the ending selection of the parent, formerly done by callers.
1554 (WebCore::applyCommand): Added.
1556 * editing/FormatBlockCommand.h: Tweaked formatting.
1557 * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::FormatBlockCommand): Ditto.
1558 * editing/InsertLineBreakCommand.h: Ditto.
1559 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
1561 * editing/IndentOutdentCommand.cpp:
1562 (WebCore::IndentOutdentCommand::splitTreeToNode): Removed use of EditCommandPtr.
1563 (WebCore::IndentOutdentCommand::outdentParagraph): Updated for change to list type enum.
1564 (WebCore::IndentOutdentCommand::outdentRegion): Removed use of EditCommandPtr.
1566 * editing/InsertIntoTextNodeCommand.h: Removed unneeded document parameter to constructor.
1567 * editing/InsertIntoTextNodeCommand.cpp:
1568 (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Ditto.
1570 * editing/InsertListCommand.h: Renamed EListType to EList, and took the "Type" suffix off
1572 * editing/InsertListCommand.cpp:
1573 (WebCore::InsertListCommand::InsertListCommand): Ditto.
1574 (WebCore::InsertListCommand::doApply): Ditto.
1576 * editing/InsertNodeBeforeCommand.h: Removed unneeded document parameter from constructor
1577 and changed the parameter of the node to insert to a PassRefPtr.
1578 * editing/InsertNodeBeforeCommand.cpp:
1579 (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Ditto.
1581 * editing/InsertParagraphSeparatorCommand.cpp:
1582 (WebCore::InsertParagraphSeparatorCommand::doApply): Remvoed use of EditCommandPtr.
1584 * editing/InsertTextCommand.h: Changed insertTab to take const Position&.
1585 * editing/InsertTextCommand.cpp:
1586 (WebCore::InsertTextCommand::input): Ditto.
1587 (WebCore::InsertTextCommand::insertTab): Ditto.
1589 * editing/JSEditor.h: Tweaked formatting and names.
1590 * editing/JSEditor.cpp: Ditto. Also changed places that use EditCommandPtr.
1592 * editing/JoinTextNodesCommand.h: Removed unneeeded document pointer
1593 * editing/JoinTextNodesCommand.cpp:
1594 (WebCore::JoinTextNodesCommand::JoinTextNodesCommand): Ditto.
1595 * editing/MergeIdenticalElementsCommand.h: Ditto.
1596 * editing/MergeIdenticalElementsCommand.cpp:
1597 (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Ditto.
1599 * editing/ModifySelectionListLevel.h: Changed EListType to be named Type and be a member of
1600 IncreaseSelectionListLevelCommand. Also changed m_listElement to be a RefPtr<Node>.
1601 * editing/ModifySelectionListLevel.cpp:
1602 (WebCore::getStartEndListChildren): Changed parameters to be references instead of pointers.
1603 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
1604 Changed to use Type instead of EListType.
1605 (WebCore::canIncreaseListLevel): Changed parameters to be references instead of pointers.
1606 (WebCore::IncreaseSelectionListLevelCommand::doApply): Updated for change to canIncreaseListLevel.
1607 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): Ditto.
1608 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
1609 Changed to not use EditCommandPtr.
1610 (WebCore::canDecreaseListLevel): Changed parameters to be references instead of pointers.
1611 (WebCore::DecreaseSelectionListLevelCommand::doApply): Updated for change to canDecreaseListLevel.
1612 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel): Ditto.
1613 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Changed to not use
1616 * editing/MoveSelectionCommand.h: Removed unnecessary document parameter and changed the fragment
1617 parameter to be a PassRefPtr.
1618 * editing/MoveSelectionCommand.cpp:
1619 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Ditto.
1620 (WebCore::MoveSelectionCommand::doApply): Got rid of use of EditCommandPtr.
1622 * editing/RebalanceWhitespaceCommand.h: Removed unnecessary document parameter.
1623 * editing/RebalanceWhitespaceCommand.cpp:
1624 (WebCore::RebalanceWhitespaceCommand::RebalanceWhitespaceCommand): Ditto.
1625 (WebCore::RebalanceWhitespaceCommand::doApply): Got rid of use of EditCommandPtr.
1627 * editing/RemoveCSSPropertyCommand.h: Tweaked formatting.
1629 * editing/RemoveNodeAttributeCommand.h: Removed unnecessary document parameter.
1630 * editing/RemoveNodeAttributeCommand.cpp:
1631 (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand): Ditto.
1633 * editing/RemoveNodeCommand.h: Removed unnecessary document parameter.
1634 * editing/RemoveNodeCommand.cpp:
1635 (WebCore::RemoveNodeCommand::RemoveNodeCommand): Ditto.
1637 * editing/RemoveNodePreservingChildrenCommand.h: Removed unnecessary document parameter.
1638 * editing/RemoveNodePreservingChildrenCommand.cpp:
1639 (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): Ditto.
1641 * editing/ReplaceSelectionCommand.h: Change fragment parameter to a PassRefPtr.
1642 * editing/ReplaceSelectionCommand.cpp:
1643 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
1644 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Ditto.
1645 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
1646 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
1648 * editing/Selection.h: Changed SEL_DEFAULT_AFFINITY to be a constant rather than
1649 a macro. Added constructors that take visible positions. Changed setBase and
1650 setExtent to take const Position& for better efficiency.
1651 * editing/Selection.cpp:
1652 (WebCore::Selection::Selection): Removed unnecessary double initialization of m_state
1653 and m_baseIsFirst in existing constructors. Added VisiblePosition-based constructors.
1655 * editing/SetNodeAttributeCommand.h: Removed unnneeded document parameter.
1656 * editing/SetNodeAttributeCommand.cpp:
1657 (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Ditto.
1659 * editing/SplitElementCommand.h: Removed unnneeded document parameter.
1660 * editing/SplitElementCommand.cpp:
1661 (WebCore::SplitElementCommand::SplitElementCommand): Ditto.
1663 * editing/SplitTextNodeCommand.h: Removed unnneeded document parameter.
1664 * editing/SplitTextNodeCommand.cpp:
1665 (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Ditto.
1667 * editing/SplitTextNodeContainingElementCommand.h: Removed unnneeded document parameter.
1668 * editing/SplitTextNodeContainingElementCommand.cpp:
1669 (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): Ditto.
1671 * editing/TypingCommand.h: Replaced uses of EditCommandPtr with EditCommand*.
1672 Renamed openForMoveTyping() with isOpenForMoreTyping().
1673 * editing/TypingCommand.cpp:
1674 (WebCore::TypingCommand::deleteKeyPressed): Updated to remove use of EditCommandPtr.
1675 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
1676 (WebCore::TypingCommand::insertText): Ditto.
1677 (WebCore::TypingCommand::insertLineBreak): Ditto.
1678 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Ditto.
1679 (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
1680 (WebCore::TypingCommand::isOpenForMoreTypingCommand): Ditto.
1681 (WebCore::TypingCommand::closeTyping): Ditto.
1682 (WebCore::TypingCommand::typingAddedToOpenCommand): Ditto.
1683 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Ditto.
1685 * editing/WrapContentsInDummySpanCommand.h: Removed unnneeded document parameter.
1686 * editing/WrapContentsInDummySpanCommand.cpp:
1687 (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): Ditto.
1689 * editing/htmlediting.h: Changed type of NON_BREAKING_SPACE to UChar instead of
1692 * page/Frame.h: Changed lastEditCommand() to return an EditCommand* and changed
1693 appliedEditing(), unappliedEditing(), reappliedEditing(), registerCommandForUndo(),
1694 and registerCommandForRedo() to take PassRefPtr<EditCommand>.
1695 * page/FramePrivate.h: Changed m_lastEditCommand to be a RefPtr<EditCommand>.
1697 (WebCore::Frame::didOpenURL): Fixed for change to m_lastEditCommand.
1698 (WebCore::Frame::setFocusNodeIfNeeded): Call the rootEditableElement function
1699 from Selection to simplify the code.
1700 (WebCore::Frame::selectAll): Ditto.
1701 (WebCore::Frame::lastEditCommand): Updated for change to m_lastEditCommand.
1702 (WebCore::dispatchEditableContentChangedEvents): Added. This sends an event to
1703 both of the root editable elements involved in a change -- the start selection
1704 might be in a different element than the end selection.
1705 (WebCore::Frame::appliedEditing): Changed to call dispatchEditableContentChangedEvents,
1706 and to do it before setting the ending selection. Also update to use PassRefPtr instead
1707 of EditCommandPtr and change the order of setting m_lastEditCommand since passing it
1708 to registerCommandForUndo will take ownership and set it to 0.
1709 (WebCore::Frame::unappliedEditing): Ditto.
1710 (WebCore::Frame::reappliedEditing): Ditto.
1711 (WebCore::Frame::computeAndSetTypingStyle): Updated for removal of EditCommandPtr.
1712 (WebCore::Frame::applyStyle): Ditto.
1713 (WebCore::Frame::applyParagraphStyle): Ditto.
1715 * platform/gdk/FrameGdk.h: Updated for above changes.
1716 * platform/gdk/TemporaryLinkStubs.cpp: Updated for above changes.
1717 * platform/win/TemporaryLinkStubs.cpp: Updated for above changes.
1719 2006-08-24 Brady Eidson <beidson@apple.com>
1723 <rdar://problem/4697973> - Unacceptable delay on startup
1724 <rdar://problem/4690949> - Need to correctly prune unretained pageurls and icons on startup
1726 This patch was started by me and finished by Mark Rowe - we now special case all retains during
1727 startup into one huge sql transaction. Also we track PageURL retains instead of IconURLs so pruning works right.
1728 Testing with reasonable sets of bookmarks/history (3000), startup time is neglibile. Testing with a huge set of
1729 bookmarks (40,000), startup has a noticable delay, but reasonable, and is inline with shipping safari which also
1730 has a noticeable delay.
1732 * loader/icon/IconDatabase.cpp:
1733 (WebCore::IconDatabase::IconDatabase):
1734 (WebCore::IconDatabase::open): adding an initialStartupTransaction and pageRetainStatement
1735 (WebCore::IconDatabase::close): do cleanup on the initialStartupSQL stuff
1736 (WebCore::IconDatabase::retainIconForPageURL): Track initial PageURL retains in the temporary table
1737 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
1738 (WebCore::IconDatabase::retainIconURL): We no longer special case this on startup
1739 (WebCore::IconDatabase::releaseIconURL): We no longer special case this on startup
1740 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Handle the big transaction correctly and quickly
1741 (WebCore::IconDatabase::syncDatabase): Change the timing log message
1742 * loader/icon/IconDatabase.h:
1743 * loader/icon/SQLStatement.cpp:
1744 (WebCore::SQLStatement::bindText16): Added this - for reusing commonly used statements by just rebinding parameters.
1745 * loader/icon/SQLStatement.h:
1747 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1749 Reviewed/landed by Adam.
1751 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1752 WebKit should have Qt platform support
1755 Remove KCanvasMatrix.cpp because it no longer exists
1756 Remove platform/qt/test
1757 * platform/FloatSize.h:
1758 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1759 * platform/image-decoders/gif/GIFImageDecoder.cpp:
1760 * platform/image-decoders/gif/GIFImageReader.cpp:
1761 * platform/image-decoders/ico/ICOImageDecoder.cpp:
1762 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1763 * platform/image-decoders/png/PNGImageDecoder.cpp:
1764 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
1765 Added PLATFORM(QT) hooks in the image-decoders/, as they also need
1766 to work for Qt, not only for Cairo.
1767 * platform/qt/qt-encodings.txt: Added (required for build).
1769 2006-08-24 Adam Roben <aroben@apple.com>
1771 Fixing a typo from last patch.
1773 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1774 (WebCore::KRenderingPaintServerQt::setPenProperties):
1776 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1778 Reviewed/landed by Adam.
1780 Final cleanup to conform to WebKit coding style!
1782 * kcanvas/device/qt/KCanvasClipperQt.cpp:
1783 (WebCore::KCanvasClipperQt::applyClip):
1784 * kcanvas/device/qt/KCanvasClipperQt.h:
1785 * kcanvas/device/qt/KCanvasPathQt.cpp:
1786 * kcanvas/device/qt/KCanvasPathQt.h:
1787 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1788 * kcanvas/device/qt/KRenderingDeviceQt.h:
1789 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
1790 (WebCore::KRenderingPaintServerLinearGradientQt::KRenderingPaintServerLinearGradientQt):
1791 (WebCore::KRenderingPaintServerRadialGradientQt::KRenderingPaintServerRadialGradientQt):
1792 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h:
1793 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
1794 (WebCore::KRenderingPaintServerPatternQt::KRenderingPaintServerPatternQt):
1795 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h:
1796 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
1797 (WebCore::KRenderingPaintServerQt::setPenProperties):
1798 * kcanvas/device/qt/KRenderingPaintServerQt.h:
1799 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
1800 (WebCore::KRenderingPaintServerSolidQt::KRenderingPaintServerSolidQt):
1801 (WebCore::KRenderingPaintServerSolidQt::renderPath):
1802 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h:
1803 * kcanvas/device/qt/RenderPathQt.cpp:
1804 * kcanvas/device/qt/RenderPathQt.h:
1805 * platform/qt/AffineTransformQt.cpp:
1806 * platform/qt/BrowserExtensionQt.cpp:
1807 * platform/qt/BrowserExtensionQt.h:
1808 * platform/qt/ColorQt.cpp:
1809 (WebCore::Color::Color):
1810 * platform/qt/ComboBoxQt.cpp:
1811 (WebCore::PlatformComboBox::PlatformComboBox):
1812 (WebCore::PlatformComboBox::~PlatformComboBox):
1813 (WebCore::PlatformComboBox::setParentWidget):
1814 (WebCore::PlatformComboBox::appendGroupLabel):
1815 * platform/qt/CookieJarQt.cpp:
1816 * platform/qt/CursorQt.cpp:
1817 (WebCore::Cursors::Cursors::self):
1818 * platform/qt/FloatPointQt.cpp:
1819 * platform/qt/FloatRectQt.cpp:
1820 * platform/qt/FontCacheQt.cpp:
1821 (WebCore::FontCache::getSimilarFontPlatformData):
1822 (WebCore::FontCache::createFontPlatformData):
1823 * platform/qt/FontDataQt.cpp:
1824 * platform/qt/FontPlatformData.h:
1825 * platform/qt/FontPlatformDataQt.cpp:
1826 * platform/qt/FontQt.cpp:
1827 (WebCore::Font::operator QFont):
1828 (WebCore::Font::drawComplexText):
1829 (WebCore::Font::floatWidthForComplexText):
1830 * platform/qt/FrameQt.cpp:
1831 (WebCore::FrameQt::openURL):
1832 (WebCore::FrameQt::submitForm):
1833 (WebCore::FrameQt::urlSelected):
1834 (WebCore::FrameQt::keyEvent):
1835 * platform/qt/FrameQt.h:
1836 * platform/qt/GlyphMapQt.cpp:
1837 * platform/qt/GraphicsContextQt.cpp:
1838 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
1839 (WebCore::GraphicsContext::GraphicsContext):
1840 (WebCore::GraphicsContext::drawConvexPolygon):
1841 (WebCore::GraphicsContext::setFocusRingClip):
1842 (WebCore::GraphicsContext::clip):
1843 * platform/qt/ImageQt.cpp:
1844 (WebCore::Image::draw):
1845 (WebCore::Image::drawTiled):
1846 * platform/qt/ImageSourceQt.cpp:
1847 * platform/qt/IntPointQt.cpp:
1848 * platform/qt/IntRectQt.cpp:
1849 * platform/qt/IntSizeQt.cpp:
1850 * platform/qt/LineEditQt.cpp:
1851 (WebCore::PlatformLineEdit::PlatformLineEdit):
1852 (WebCore::PlatformLineEdit::~PlatformLineEdit):
1853 (WebCore::PlatformLineEdit::setParentWidget):
1854 (WebCore::PlatformLineEdit::addSearchResult):
1855 * platform/qt/ListBoxQt.cpp:
1856 (WebCore::ListBox::ListBox):
1857 (WebCore::ListBox::~ListBox):
1858 (WebCore::ListBox::setParentWidget):
1859 * platform/qt/PageQt.cpp:
1860 (WebCore::Page::windowRect):
1861 (WebCore::Page::setWindowRect):
1862 * platform/qt/PathQt.cpp:
1863 (WebCore::Path::addArc):
1864 * platform/qt/PlatformKeyboardEventQt.cpp:
1865 (WebCore::windowsKeyCodeForKeyEvent):
1866 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1867 * platform/qt/PlatformMouseEventQt.cpp:
1868 * platform/qt/RenderThemeQt.cpp:
1869 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
1870 (WebCore::RenderThemeQt::applyTheme):
1871 (WebCore::RenderThemeQt::paintButton):
1872 (WebCore::RenderThemeQt::paintTextField):
1873 * platform/qt/ResourceLoaderCurl.cpp:
1874 (WebCore::ResourceLoader::assembleResponseHeaders):
1875 (WebCore::ResourceLoader::retrieveCharset):
1876 (WebCore::ResourceLoader::receivedResponse):
1877 * platform/qt/ResourceLoaderManager.cpp:
1878 (WebCore::ResourceLoaderManager::add):
1879 * platform/qt/ResourceLoaderManager.h:
1880 * platform/qt/ScreenQt.cpp:
1881 * platform/qt/ScrollViewCanvasQt.cpp:
1882 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1883 * platform/qt/ScrollViewCanvasQt.h:
1884 * platform/qt/ScrollViewQt.cpp:
1885 * platform/qt/SharedTimerQt.cpp:
1886 * platform/qt/SharedTimerQt.h:
1887 (WebCore::SharedTimerQt::inst):
1888 * platform/qt/StringQt.cpp:
1889 * platform/qt/SystemTimeQt.cpp:
1890 * platform/qt/TemporaryLinkStubs.cpp:
1891 * platform/qt/TextEditQt.cpp:
1892 (WebCore::PlatformTextEdit::PlatformTextEdit):
1893 (WebCore::PlatformTextEdit::~PlatformTextEdit):
1894 (WebCore::PlatformTextEdit::setParentWidget):
1895 * platform/qt/WidgetQt.cpp:
1896 (WebCore::Widget::setQWidget):
1898 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1900 Reviewed and landed by Anders.
1902 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1903 WebKit should have Qt platform support
1906 * platform/qt/FrameQt.cpp: Added.
1907 (WebCore::doScroll):
1908 (WebCore::FrameView::isFrameView):
1909 (WebCore::FrameQt::FrameQt):
1910 (WebCore::FrameQt::init):
1911 (WebCore::FrameQt::~FrameQt):
1912 (WebCore::FrameQt::openURL):
1913 (WebCore::FrameQt::submitForm):
1914 (WebCore::FrameQt::urlSelected):
1915 (WebCore::FrameQt::userAgent):
1916 (WebCore::FrameQt::runJavaScriptAlert):
1917 (WebCore::FrameQt::runJavaScriptConfirm):
1918 (WebCore::FrameQt::locationbarVisible):
1919 (WebCore::FrameQt::setTitle):
1920 (WebCore::FrameQt::createFrame):
1921 (WebCore::FrameQt::passWheelEventToChildWidget):
1922 (WebCore::FrameQt::passSubframeEventToSubframe):
1923 (WebCore::FrameQt::objectContentType):
1924 (WebCore::FrameQt::createPlugin):
1925 (WebCore::FrameQt::passMouseDownEventToWidget):
1926 (WebCore::FrameQt::menubarVisible):
1927 (WebCore::FrameQt::personalbarVisible):
1928 (WebCore::FrameQt::statusbarVisible):
1929 (WebCore::FrameQt::toolbarVisible):
1930 (WebCore::FrameQt::createEmptyDocument):
1931 (WebCore::FrameQt::markedTextRange):
1932 (WebCore::FrameQt::incomingReferrer):
1933 (WebCore::FrameQt::mimeTypeForFileName):
1934 (WebCore::FrameQt::markMisspellingsInAdjacentWords):
1935 (WebCore::FrameQt::markMisspellings):
1936 (WebCore::FrameQt::lastEventIsMouseUp):
1937 (WebCore::FrameQt::saveDocumentState):
1938 (WebCore::FrameQt::restoreDocumentState):
1939 (WebCore::FrameQt::openURLRequest):
1940 (WebCore::FrameQt::scheduleClose):
1941 (WebCore::FrameQt::unfocusWindow):
1942 (WebCore::FrameQt::focusWindow):
1943 (WebCore::FrameQt::overrideMediaType):
1944 (WebCore::FrameQt::addMessageToConsole):
1945 (WebCore::FrameQt::runJavaScriptPrompt):
1946 (WebCore::FrameQt::getEmbedInstanceForWidget):
1947 (WebCore::FrameQt::getObjectInstanceForWidget):
1948 (WebCore::FrameQt::getAppletInstanceForWidget):
1949 (WebCore::FrameQt::registerCommandForUndo):
1950 (WebCore::FrameQt::registerCommandForRedo):
1951 (WebCore::FrameQt::clearUndoRedoOperations):
1952 (WebCore::FrameQt::issueUndoCommand):
1953 (WebCore::FrameQt::issueRedoCommand):
1954 (WebCore::FrameQt::issueCutCommand):
1955 (WebCore::FrameQt::issueCopyCommand):
1956 (WebCore::FrameQt::issuePasteCommand):
1957 (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
1958 (WebCore::FrameQt::issueTransposeCommand):
1959 (WebCore::FrameQt::respondToChangedSelection):
1960 (WebCore::FrameQt::respondToChangedContents):
1961 (WebCore::FrameQt::shouldChangeSelection):
1962 (WebCore::FrameQt::partClearedInBegin):
1963 (WebCore::FrameQt::canGoBackOrForward):
1964 (WebCore::FrameQt::handledOnloadEvents):
1965 (WebCore::FrameQt::canPaste):
1966 (WebCore::FrameQt::canRedo):
1967 (WebCore::FrameQt::canUndo):
1968 (WebCore::FrameQt::print):
1969 (WebCore::FrameQt::shouldInterruptJavaScript):
1970 (WebCore::FrameQt::keyEvent):
1971 (WebCore::FrameQt::receivedResponse):
1972 (WebCore::FrameQt::receivedData):
1973 (WebCore::FrameQt::receivedAllData):
1974 (WebCore::FrameQt::setFrameGeometry):
1975 * platform/qt/FrameQt.h: Added.
1976 * platform/qt/ScrollViewCanvasQt.cpp: Added.
1977 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
1978 (WebCore::ScrollViewCanvasQt::paintEvent):
1979 (WebCore::ScrollViewCanvasQt::sizeHint):
1980 (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
1981 (WebCore::ScrollViewCanvasQt::mousePressEvent):
1982 (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
1983 (WebCore::ScrollViewCanvasQt::keyPressEvent):
1984 (WebCore::ScrollViewCanvasQt::keyReleaseEvent):
1985 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
1986 * platform/qt/ScrollViewCanvasQt.h: Added.
1987 * platform/qt/ScrollViewQt.cpp:
1988 (WebCore::ScrollView::setParentWidget):
1990 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
1994 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
1995 WebKit should have Qt platform support
1997 * platform/qt/FontCacheQt.cpp: Added.
1998 (WebCore::FontCache::platformInit):
1999 (WebCore::FontCache::getFontDataForCharacters):
2000 (WebCore::FontCache::getSimilarFontPlatformData):
2001 (WebCore::FontCache::getLastResortFallbackFont):
2002 (WebCore::FontCache::createFontPlatformData):
2003 * platform/qt/FontDataQt.cpp: Added.
2004 (WebCore::FontData::platformInit):
2005 (WebCore::FontData::platformDestroy):
2006 (WebCore::FontData::smallCapsFontData):
2007 (WebCore::FontData::containsCharacters):
2008 (WebCore::FontData::determinePitch):
2009 (WebCore::FontData::platformWidthForGlyph):
2010 * platform/qt/FontPlatformData.h: Added.
2011 * platform/qt/FontPlatformDataQt.cpp: Added.
2012 (WebCore::FontPlatformData::FontPlatformData):
2013 (WebCore::FontPlatformData::operator=):
2014 (WebCore::FontPlatformData::~FontPlatformData):
2015 (WebCore::FontPlatformData::isFixedPitch):
2016 (WebCore::FontPlatformData::setFont):
2017 (WebCore::FontPlatformData::font):
2018 (WebCore::FontPlatformData::hash):
2019 (WebCore::FontPlatformData::operator==):
2020 * platform/qt/FontQt.cpp: Added.
2021 (WebCore::Font::operator QFont):
2022 (WebCore::Font::drawGlyphs):
2023 (WebCore::Font::drawComplexText):
2024 (WebCore::Font::floatWidthForComplexText):
2025 * platform/qt/GlyphMapQt.cpp: Added.
2026 (WebCore::GlyphMap::fillPage):
2028 2006-08-24 David Harrison <harrison@apple.com>
2030 Reinstate r15966 because layout test changes are correct.
2032 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
2034 * editing/TextIterator.cpp:
2035 (WebCore::TextIterator::advance):
2037 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2041 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2042 WebKit should have Qt platform support (Part II)
2044 Adapt the KCanvas Qt device to Rob's KCanvasMatrix removal.
2045 Use AffineTransform everywhere instead.
2047 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2048 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
2049 (WebCore::KRenderingDeviceContextQt::concatCTM):
2050 (WebCore::KRenderingDeviceContextQt::ctm):
2051 * kcanvas/device/qt/KRenderingDeviceQt.h:
2052 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
2053 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
2054 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
2056 2006-08-24 Rob Buis <buis@kde.org>
2060 http://bugzilla.opendarwin.org/show_bug.cgi?id=10524
2061 svg transform: comma delimiting breaks display
2063 Properly parse transforms which use ',' as seperators.
2065 * ksvg2/svg/SVGTransformable.cpp:
2066 (SVGTransformable::parseTransformAttribute):
2068 2006-08-23 Darin Adler <darin@apple.com>
2072 - added an assert to make it slightly easier to debug the common case of
2073 calling document() on a node of 0
2075 * dom/Node.h: (WebCore::Node::document): ASSERT(this).
2077 2006-08-23 David Hyatt <hyatt@apple.com>
2079 Refactor Cairo and CoreGraphics to use platform ifdefs. This patch
2080 separates the graphics engines from their respective platforms and replaces
2081 #ifdef PLATFORM(MAC) and PLATFORM(WIN) with PLATFORM(CG) and PLATFORM(CAIRO).
2085 * WebCore.xcodeproj/project.pbxproj:
2086 * platform/AffineTransform.h:
2088 * platform/Cursor.h:
2089 * platform/FloatPoint.h:
2090 * platform/FloatRect.h:
2091 * platform/FloatSize.h:
2093 * platform/FontData.h:
2094 * platform/GlyphBuffer.h:
2095 (WebCore::GlyphBuffer::glyphAt):
2096 (WebCore::GlyphBuffer::advanceAt):
2097 (WebCore::GlyphBuffer::add):
2098 * platform/GraphicsContext.h:
2100 * platform/ImageSource.h:
2101 * platform/IntPoint.h:
2102 * platform/IntRect.h:
2103 * platform/IntSize.h:
2104 * platform/ResourceLoader.h:
2105 * platform/ResourceLoaderClient.h:
2106 * platform/Widget.h:
2107 * platform/cairo/GraphicsContextCairo.cpp:
2108 * platform/cairo/ImageCairo.cpp:
2109 * platform/cairo/ImageSourceCairo.cpp:
2110 * platform/cg/AffineTransformCG.cpp:
2111 * platform/cg/FloatPointCG.cpp: Added.
2112 * platform/cg/FloatRectCG.cpp: Added.
2113 * platform/cg/FloatSizeCG.cpp: Added.
2114 * platform/cg/GraphicsContextCG.cpp:
2115 (WebCore::GraphicsContext::GraphicsContext):
2116 (WebCore::GraphicsContext::~GraphicsContext):
2117 (WebCore::GraphicsContext::setFocusRingClip):
2118 (WebCore::GraphicsContext::clearFocusRingClip):
2119 (WebCore::GraphicsContext::platformContext):
2120 (WebCore::GraphicsContext::drawRect):
2121 (WebCore::GraphicsContext::drawLine):
2122 * platform/cg/GraphicsContextPlatformPrivate.h: Added.
2123 (WebCore::GraphicsContextPlatformPrivate:::m_cgContext):
2124 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2125 * platform/cg/ImageCG.cpp: Added.
2126 (WebCore::Image::drawTiled):
2127 * platform/cg/ImageSourceCG.cpp: Added.
2128 * platform/cg/IntPointCG.cpp: Added.
2129 * platform/cg/IntRectCG.cpp: Added.
2130 * platform/cg/IntSizeCG.cpp: Added.
2131 * platform/cg/PDFDocumentImage.cpp: Added.
2132 (WebCore::PDFDocumentImage::adjustCTM):
2133 * platform/cg/PDFDocumentImage.h: Added.
2134 * platform/cg/PathCG.cpp:
2135 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
2136 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2137 * platform/image-decoders/gif/GIFImageReader.cpp:
2138 * platform/image-decoders/ico/ICOImageDecoder.cpp:
2139 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2140 * platform/image-decoders/png/PNGImageDecoder.cpp:
2141 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
2142 * platform/mac/FloatPointMac.mm:
2143 * platform/mac/FloatRectMac.mm:
2144 * platform/mac/FloatSizeMac.mm:
2145 * platform/mac/GraphicsContextMac.mm:
2146 * platform/mac/ImageMac.mm:
2147 * platform/mac/ImageSourceMac.cpp: Removed.
2148 * platform/mac/IntPointMac.mm:
2149 * platform/mac/IntRectMac.mm:
2150 * platform/mac/IntSizeMac.mm:
2151 * platform/mac/PDFDocumentImage.h: Removed.
2152 * platform/mac/PDFDocumentImage.mm: Removed.
2154 2006-08-23 David Hyatt <hyatt@apple.com>
2156 Remove the ifdef for platform scrollbars vs. engine scrollbars until
2157 engine scrollbars actually exist.
2159 * platform/ScrollBar.h:
2160 (WebCore::ScrollBar::hasPlatformScrollBars):
2162 2006-08-23 Justin Garcia <justin.garcia@apple.com>
2164 Reviewed by harrison
2166 Removed the poorly named next/previousVisiblePosition
2167 and use next/previousCandidate and next/previousVisuallyDistinctCandidate.
2168 Removed the unused VisiblePosition::maxOffset()
2170 * editing/VisiblePosition.cpp:
2171 (WebCore::VisiblePosition::next):
2172 (WebCore::VisiblePosition::previous):
2173 (WebCore::VisiblePosition::canonicalPosition):
2174 * editing/VisiblePosition.h:
2176 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
2178 Reviewed by Alexey. Landed by rwlbuis.
2180 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2181 WebKit should have Qt platform support (Part II)
2183 * platform/qt/GraphicsContextQt.cpp: Added.
2184 (WebCore::toQtCompositionMode):
2185 (WebCore::toQtLineCap):
2186 (WebCore::toQtLineJoin):
2187 (WebCore::TransparencyLayer::TransparencyLayer):
2188 (WebCore::TransparencyLayer::cleanup):
2189 (WebCore::TextShadow::TextShadow):
2190 (WebCore::TextShadow::isNull):
2191 (WebCore::GraphicsContextPlatformPrivate::p):
2192 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2193 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2194 (WebCore::GraphicsContext::GraphicsContext):
2195 (WebCore::GraphicsContext::~GraphicsContext):
2196 (WebCore::GraphicsContext::platformContext):
2197 (WebCore::GraphicsContext::savePlatformState):
2198 (WebCore::GraphicsContext::restorePlatformState):
2199 (WebCore::GraphicsContext::drawRect):
2200 (WebCore::adjustLineToPixelBounderies):
2201 (WebCore::GraphicsContext::drawLine):
2202 (WebCore::GraphicsContext::drawEllipse):
2203 (WebCore::GraphicsContext::drawArc):
2204 (WebCore::GraphicsContext::drawConvexPolygon):
2205 (WebCore::GraphicsContext::fillRect):
2206 (WebCore::GraphicsContext::addClip):
2207 (WebCore::GraphicsContext::drawFocusRing):
2208 (WebCore::GraphicsContext::setFocusRingClip):
2209 (WebCore::GraphicsContext::clearFocusRingClip):
2210 (WebCore::GraphicsContext::drawLineForText):
2211 (WebCore::GraphicsContext::drawLineForMisspelling):
2212 (WebCore::GraphicsContext::roundToDevicePixels):
2213 (WebCore::GraphicsContext::setShadow):
2214 (WebCore::GraphicsContext::clearShadow):
2215 (WebCore::GraphicsContext::beginTransparencyLayer):
2216 (WebCore::GraphicsContext::endTransparencyLayer):
2217 (WebCore::GraphicsContext::clearRect):
2218 (WebCore::GraphicsContext::strokeRect):
2219 (WebCore::GraphicsContext::setLineWidth):
2220 (WebCore::GraphicsContext::setLineCap):
2221 (WebCore::GraphicsContext::setLineJoin):
2222 (WebCore::GraphicsContext::setMiterLimit):
2223 (WebCore::GraphicsContext::setAlpha):
2224 (WebCore::GraphicsContext::setCompositeOperation):
2225 (WebCore::GraphicsContext::clip):
2226 (WebCore::GraphicsContext::translate):
2227 (WebCore::GraphicsContext::rotate):
2228 (WebCore::GraphicsContext::scale):
2229 (WebCore::GraphicsContext::addInnerRoundedRectClip):
2230 (WebCore::GraphicsContext::addRoundedRectClip):
2231 (WebCore::GraphicsContext::createRenderingDeviceContext):
2232 * platform/qt/ImageQt.cpp: Added.
2233 (WebCore::FrameData::clear):
2234 (WebCore::Image::initNativeData):
2235 (WebCore::Image::destroyNativeData):
2236 (WebCore::Image::invalidateNativeData):
2237 (WebCore::Image::loadResource):
2238 (WebCore::Image::supportsType):
2239 (WebCore::Image::draw):
2240 (WebCore::Image::drawTiled):
2241 (WebCore::Image::checkForSolidColor):
2242 * platform/qt/ImageSourceQt.cpp: Added.
2243 (WebCore::createDecoder):
2244 (WebCore::ImageSource::ImageSource):
2245 (WebCore::ImageSource::~ImageSource):
2246 (WebCore::ImageSource::initialized):
2247 (WebCore::ImageSource::setData):
2248 (WebCore::ImageSource::isSizeAvailable):
2249 (WebCore::ImageSource::size):
2250 (WebCore::ImageSource::repetitionCount):
2251 (WebCore::ImageSource::frameCount):
2252 (WebCore::ImageSource::createFrameAtIndex):
2253 (WebCore::ImageSource::frameDurationAtIndex):
2254 (WebCore::ImageSource::frameHasAlphaAtIndex):
2256 2006-08-23 Brady Eidson <beidson@apple.com>
2260 Moved default URL icon from WebKit to WebCore
2262 * Resources/urlIcon.tiff: Added.
2263 * WebCore.xcodeproj/project.pbxproj:
2264 * loader/icon/IconDataCache.cpp:
2265 (WebCore::IconDataCache::loadImageFromResource):
2266 * loader/icon/IconDataCache.h:
2267 * loader/icon/IconDatabase.cpp:
2268 (WebCore::IconDatabase::IconDatabase):
2269 (WebCore::IconDatabase::defaultIcon):
2270 * loader/icon/IconDatabase.h:
2272 2006-08-23 Adam Roben <aroben@apple.com>
2274 Reviewed by Darin, Adele.
2276 Some popup refactoring/cleanup.
2278 * html/HTMLSelectElement.cpp:
2279 (WebCore::HTMLSelectElement::defaultEventHandler):
2280 * rendering/RenderMenuList.cpp:
2281 (WebCore::RenderMenuList::RenderMenuList):
2282 (WebCore::RenderMenuList::~RenderMenuList):
2283 (WebCore::RenderMenuList::showPopup):
2284 (WebCore::RenderMenuList::hidePopup):
2285 * rendering/RenderMenuList.h:
2286 (WebCore::RenderMenuList::popup):
2287 (WebCore::RenderMenuList::popupIsVisible):
2288 * rendering/RenderPopupMenu.h:
2289 * rendering/RenderPopupMenuMac.h:
2290 (WebCore::RenderPopupMenuMac::hidePopup):
2292 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
2294 Reviewed by Anders. Landed by rwlbuis.
2296 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2297 WebKit should have Qt platform support
2299 * platform/qt/ResourceLoaderCurl.cpp: Added.
2300 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
2301 (WebCore::ResourceLoader::~ResourceLoader):
2302 (WebCore::ResourceLoader::start):
2303 (WebCore::ResourceLoader::cancel):
2304 (WebCore::ResourceLoader::assembleResponseHeaders):
2305 (WebCore::ResourceLoader::retrieveCharset):
2306 (WebCore::ResourceLoader::receivedResponse):
2307 * platform/qt/ResourceLoaderManager.cpp: Added.
2308 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
2309 (WebCore::ResourceLoaderManager::get):
2310 (WebCore::ResourceLoaderManager::useSimpleTransfer):
2311 (WebCore::writeCallback):
2312 (WebCore::headerCallback):
2313 (WebCore::ResourceLoaderManager::downloadTimerCallback):
2314 (WebCore::ResourceLoaderManager::remove):
2315 (WebCore::ResourceLoaderManager::add):
2316 (WebCore::ResourceLoaderManager::cancel):
2317 * platform/qt/ResourceLoaderManager.h: Added.
2318 * platform/qt/StringQt.cpp: Added.
2319 (WebCore::String::String):
2320 (WebCore::String::operator QString):
2321 (WebCore::DeprecatedString::operator QString):
2323 2006-08-23 Brady Eidson <beidson@apple.com>
2327 Added escapeSQLString() - a helper to escape strings to be used in textual SQL queries
2329 * WebCore.xcodeproj/project.pbxproj: Reordered some files
2330 * loader/icon/IconDataCache.cpp: Use the new escapeSQLString()
2331 (WebCore::IconDataCache::writeToDatabase):
2332 * loader/icon/IconDatabase.cpp: Use the new escapeSQLString() throughout
2333 (WebCore::IconDatabase::retainIconURL):
2334 (WebCore::IconDatabase::releaseIconURL):
2335 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
2336 (WebCore::IconDatabase::establishIconIDForIconURL):
2337 (WebCore::imageDataForIconURLQuery):
2338 (WebCore::timeStampForIconURLQuery):
2339 (WebCore::iconURLForPageURLQuery):
2340 (WebCore::forgetPageURLQuery):
2341 (WebCore::setIconIDForPageURLQuery):
2342 (WebCore::getIconIDForIconURLQuery):
2343 (WebCore::addIconForIconURLQuery):
2344 (WebCore::hasIconForIconURLQuery):
2345 * loader/icon/SQLDatabase.h:
2346 (WebCore::escapeSQLString): Added
2348 2006-08-22 Maciej Stachowiak <mjs@apple.com>
2352 - assorted style cleanup of icon loader code:
2354 - wrapped all implementation files in namespace WebCore {} instead of "using namespace WebCore;" at top
2355 - split headers to be one per class, to match impl files
2356 - made files that are purely local in IconDatabase.cpp static
2357 - make each impl file include config.h as first header (and no config.h includes in other headers)
2358 - avoid multiple copies of Vector<unsigned char> for image data
2360 * WebCore.xcodeproj/project.pbxproj:
2361 * loader/icon/IconDataCache.cpp:
2362 * loader/icon/IconDataCache.h: Added.
2364 (WebCore::IconDataCache::getTimestamp):
2365 (WebCore::IconDataCache::setTimestamp):
2366 (WebCore::IconDataCache::getIconURL):
2367 * loader/icon/IconDatabase.cpp:
2368 (WebCore::IconDatabase::imageDataForIconURL):
2369 (WebCore::IconDatabase::iconForPageURL):
2370 (WebCore::pageURLTableIsEmptyQuery):
2371 (WebCore::imageDataForIconURLQuery):
2372 (WebCore::timeStampForIconURLQuery):
2373 (WebCore::iconURLForPageURLQuery):
2374 (WebCore::forgetPageURLQuery):
2375 (WebCore::setIconIDForPageURLQuery):
2376 (WebCore::getIconIDForIconURLQuery):
2377 (WebCore::addIconForIconURLQuery):
2378 (WebCore::hasIconForIconURLQuery):
2379 * loader/icon/IconDatabase.h:
2380 * loader/icon/SQLDatabase.cpp:
2381 * loader/icon/SQLDatabase.h:
2382 * loader/icon/SQLStatement.cpp:
2383 (WebCore::SQLStatement::getColumnBlobAsVector):
2384 * loader/icon/SQLStatement.h: Added.
2385 (WebCore::SQLStatement::isPrepared):
2386 (WebCore::SQLStatement::prepareAndStep):
2387 (WebCore::SQLStatement::lastError):
2388 (WebCore::SQLStatement::lastErrorMsg):
2389 * loader/icon/SQLTransaction.cpp:
2390 * loader/icon/SQLTransaction.h: Added.
2392 2006-08-22 Brady Eidson <beidson@apple.com>
2396 The role of the SiteIcon is now the original intention - to be a cache of data relating to an Icon
2397 As such, I'm renaming it to IconDataCache.
2398 Also, the IconDatabase has to manually set the image data on the IconDataCache and also sets the
2399 TimeStamp when an icon is created or the data is changed.
2400 IconDataCache now has a method to write itself *to* a given database, instead of read itself from one.
2401 IconDatabase schema changes to have the timestamp set manually instead of via a trigger.
2402 The overall purpose of this change is to cache the timestamp, killing off a very common SQL query.
2404 * WebCore.xcodeproj/project.pbxproj: Renamed a file
2405 * loader/icon/IconDataCache.cpp: Added.
2406 (IconDataCache::IconDataCache):
2407 (IconDataCache::getImage): Now either returns the stored image, or 0 - no attempt to grab data
2408 (IconDataCache::manuallySetImageData): Delete the old image and create the new one
2409 (IconDataCache::writeToDatabase): Write the current iconURL, data, and timestamp to the given DB
2410 (IconDataCache::imageDataStatus): Determine if an IconDataCache is new without data versus actually having null data
2411 * loader/icon/IconDatabase.cpp:
2412 (WebCore::IconDatabase::createDatabaseTables): Changed DB schema to version 5 (hopefully the final version)
2413 (WebCore::IconDatabase::iconForPageURL):
2414 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses the timestamp in the IconDataCache object instead of always querying
2415 (WebCore::IconDatabase::getOrCreateIconDataCache): Added, to handle creation of new IconDataCache when appropriate
2416 (WebCore::IconDatabase::setIconDataForIconURL): Puts data in SiteIcon then marks it for a future write
2417 (WebCore::IconDatabase::syncDatabase): Now syncs SiteIconsPendingUpdate
2418 * loader/icon/IconDatabase.h:
2419 (WebCore::IconDataCache::getTimestamp):
2420 (WebCore::IconDataCache::setTimestamp):
2421 * loader/icon/SiteIcon.cpp: Removed.
2424 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2426 Reviewed by harrison
2428 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10449>
2429 REGRESSION(r15918): drag-into-marker.html failing
2431 * editing/ReplaceSelectionCommand.cpp:
2432 (WebCore::ReplaceSelectionCommand::doApply): Don't avoid nesting
2435 2006-08-22 Brady Eidson <beidson@apple.com>
2439 Added a check in getTIFFRepresentation to not proceed if the frame count is zero
2440 This is an error condition that was handled gracefully before - in certain circumstances
2441 the call to CGImageDestinationCreateWithData will spam the Console if it is passed null/empty data
2442 or invalid data. This small change bails out before that call if that call will definitely fail
2444 * platform/mac/ImageMac.mm:
2445 (WebCore::Image::getTIFFRepresentation):
2447 2006-08-22 David Harrison <harrison@apple.com>
2449 Backed out my last change (r15966) because it broke lots of layout tests.
2451 * editing/TextIterator.cpp:
2452 (WebCore::TextIterator::advance):
2454 2006-08-22 Maciej Stachowiak <mjs@apple.com>
2458 - added some SPI indirections to support the following in WebKit/Loader:
2459 - pull more WebDataSource code into WebFrameLoader
2460 - make WebMainResourceLoader not depend on WebKit or on SPI
2463 * WebCore.xcodeproj/project.pbxproj:
2464 * platform/mac/WebCoreSystemInterface.h:
2465 * platform/mac/WebCoreSystemInterface.mm:
2467 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2469 Reviewed by harrison
2471 <rdar://problem/4052343&4052343&4426622> Mail hung on paste text
2473 * editing/ReplaceSelectionCommand.cpp:
2474 (WebCore::isInterchangeNewlineNode):
2475 (WebCore::isInterchangeConvertedSpaceSpan):
2476 (WebCore::ReplacementFragment::ReplacementFragment):
2477 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Compute the redundant inheritable styles and
2478 remove them and remove style nodes and style spans which were only contributing redundant styles.
2479 (WebCore::ReplaceSelectionCommand::doApply):
2480 * editing/ReplaceSelectionCommand.h:
2482 2006-08-22 David Harrison <harrison@apple.com>
2486 <rdar://problem/4077676> Inline hole line adheres to the Japanese characters in inline hole
2488 This happens because the underline is always 2 pixels thick, and placed 3 pixels above the bottom of the text box.
2491 * manual-tests/inline-input-marking.html: Added.
2492 Check that underlining of the inline input hole does not obscure the glyphs.
2494 * rendering/InlineTextBox.cpp:
2495 (WebCore::InlineTextBox::paintMarkedTextUnderline):
2496 Position underline at bottom of text box.
2497 Height of underline is reduced to 1 px when font's descent is less than or equal to 2 px.
2499 2006-08-22 Rob Buis <buis@kde.org>
2503 http://bugzilla.opendarwin.org/show_bug.cgi?id=10402
2504 REPRO: SVG crashes inside gradient code
2506 Make sure we do not try to update the canvas resource/gradient paintserver when it is not yet built.
2508 * ksvg2/svg/SVGGradientElement.cpp:
2509 (SVGGradientElement::notifyAttributeChange):
2510 (SVGGradientElement::resourceNotification):
2512 2006-08-22 David Harrison <harrison@apple.com>
2516 <rdar://problem/4523606> Represent heading elements in AXAttributedStringForTextMarkerRange
2518 * bridge/mac/WebCoreAXObject.mm:
2520 (-[WebCoreAXObject headingLevel]):
2521 (-[WebCoreAXObject isHeading]):
2522 New. Heading level is per the tag (h1 == 1, h2 == 2, etc.)
2524 (-[WebCoreAXObject role]):
2525 (-[WebCoreAXObject roleDescription]):
2526 Add role and roleDescription for headings.
2528 (-[WebCoreAXObject value]):
2529 Value is the headingLevel.
2531 (AXAttributeStringSetHeadingLevel):
2532 (AXAttributedStringAppendText):
2533 Put text's heading level (if applicable) in the attributes.
2535 2006-08-22 David Harrison <harrison@apple.com>
2539 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
2541 Treat controls as replaced elements, so that AXAttributedStringForTextMarkerRange will, too.
2543 * editing/TextIterator.cpp:
2544 (WebCore::TextIterator::advance):
2547 2006-08-22 David Harrison <harrison@apple.com>
2551 <rdar://problem/4407336> Some non-text elements return AXTextMarkerRangeForUIElement with equal start and end marker
2553 * bridge/mac/WebCoreAXObject.mm:
2554 (-[WebCoreAXObject textMarkerRange]):
2555 Use 0 and maxDeepOffset(), instead of caretMinOffset() and caretMaxRenderedOffset().
2556 Check for VisiblePositions being equal. If so, adjust end one to its next().
2557 That happens with, e.g., buttons.
2559 2006-08-22 Rob Buis <buis@kde.org>
2563 http://bugzilla.opendarwin.org/show_bug.cgi?id=10491
2564 KCanvasMatrix removal
2566 Remove KCanvasMatrix from project, using AffineTransform instead.
2568 * WebCore.xcodeproj/project.pbxproj:
2569 * kcanvas/KCanvasMatrix.cpp: Removed.
2570 * kcanvas/KCanvasMatrix.h: Removed.
2571 * kcanvas/KCanvasResources.cpp:
2572 (WebCore::KCanvasMarker::draw):
2573 * kcanvas/KCanvasResources.h:
2574 * kcanvas/RenderForeignObject.cpp:
2575 * kcanvas/RenderPath.h:
2576 * kcanvas/RenderSVGContainer.cpp:
2577 (WebCore::RenderSVGContainer::viewportTransform):
2578 (WebCore::RenderSVGContainer::getAspectRatio):
2579 * kcanvas/RenderSVGContainer.h:
2580 * kcanvas/RenderSVGText.cpp:
2581 * kcanvas/device/KRenderingDevice.h:
2582 * kcanvas/device/KRenderingPaintServerGradient.cpp:
2583 (WebCore::KRenderingPaintServerGradient::gradientTransform):
2584 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
2585 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2586 * kcanvas/device/KRenderingPaintServerGradient.h:
2587 * kcanvas/device/KRenderingPaintServerPattern.cpp:
2588 (WebCore::KRenderingPaintServerPattern::patternTransform):
2589 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
2590 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2591 * kcanvas/device/KRenderingPaintServerPattern.h:
2592 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2593 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2594 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2595 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2596 (WebCore::KRenderingDeviceContextQuartz::concatCTM):
2597 (WebCore::KRenderingDeviceContextQuartz::ctm):
2598 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2599 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
2600 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2601 (WebCore::KRenderingPaintServerPatternQuartz::setup):
2602 * kcanvas/device/quartz/QuartzSupport.mm:
2603 * ksvg2/misc/KCanvasRenderingStyle.h:
2604 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2605 * ksvg2/svg/SVGAnimateTransformElement.h:
2606 * ksvg2/svg/SVGLinearGradientElement.cpp:
2607 (SVGLinearGradientElement::buildGradient):
2608 * ksvg2/svg/SVGPatternElement.cpp:
2609 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2610 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2611 (WebCore::SVGPatternElement::notifyAttributeChange):
2612 * ksvg2/svg/SVGPatternElement.h:
2613 * ksvg2/svg/SVGRadialGradientElement.cpp:
2614 (WebCore::SVGRadialGradientElement::buildGradient):
2616 2006-08-22 Rob Buis <buis@kde.org>
2620 http://bugzilla.opendarwin.org/show_bug.cgi?id=10405
2621 REPRO: SVG Maze crashes in RenderPath code
2623 Do not render a path when it is empty so maze15.svg does not crash anymore.
2624 Also get rid of a runtime warning issued by CGContextGetPathBoundingBox.
2626 * kcanvas/RenderPath.cpp:
2627 (WebCore::RenderPath::paint):
2628 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
2629 (WebCore::KCanvasPathQuartz::strokeBoundingBox):
2631 2006-08-21 Brady Eidson <beidson@apple.com>
2635 <rdar://4690949> - New IconDB: Need to prune unretained icons on startup
2637 Added a flag to track whether or not the initial pruning has taken place on startup
2638 If that flag is not set, IconURL retain counts will be tracked in a temporary db table
2639 in addition to the in-memory hash. Then when the timer fires after initial retains
2640 are complete, we prune those icons not in the retain table, prune dangling PageURL
2641 references, delete the temporary table, and set the flag - and carry on as normal
2643 * loader/icon/IconDatabase.cpp:
2644 (WebCore::IconDatabase::IconDatabase): initialize the flag
2645 (WebCore::IconDatabase::open): changed the schema of the temporary table
2646 (WebCore::IconDatabase::retainIconURL): store the icon retain to the temp table if starting up
2647 (WebCore::IconDatabase::releaseIconURL): ditto
2648 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): remove all icons *not* in the retain table, then
2649 wipe all the PageURLs who no longer point to a valid IconURL
2650 * loader/icon/IconDatabase.h:
2652 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
2656 http://bugzilla.opendarwin.org/show_bug.cgi?id=10419
2657 XSLTProcessor transformToFragment fails because of an XML declaration
2659 Test: fast/xsl/transformToFragment-XML-declaration.html
2661 * xml/XSLTProcessor.cpp:
2662 (WebCore::XSLTProcessor::transformToString): Always inhibit XML declaration printout.
2664 2006-08-21 David Harrison <harrison@apple.com>
2668 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
2670 Added support for the NSAccessibilityMisspelledTextAttribute.
2672 Test cases added: None. Manual AX testing is way too awkward, and automated testing
2673 is not possible. See following bug...
2674 <rdar://problem/4256882> Need automated testing support for accessibility APIs
2676 * bridge/mac/WebCoreAXObject.mm:
2677 Lots of trivial formatting in many methods.
2679 (-[WebCoreAXObject accessibilityAttributeValue:]):
2680 Fixed AXStartTextMarker and AXEndTextMarker to use startOfDocument and endOfDocument, instead of
2681 of positionForCoordinates. I had seen erroneous endOfDocument results while testing the spelling
2684 (WebCore::AXAttributeStringSetSpelling):
2685 New. Adds the NSAccessibilityMisspelledTextAttribute for misspelled words.
2687 (-[WebCoreAXObject AXAttributedStringAppendText:]):
2688 Added call to AXAttributeStringSetSpelling.
2690 * editing/visible_units.cpp:
2691 (WebCore::startOfDocument):
2692 (WebCore::endOfDocument):
2693 Added for AXStartTextMarker/AXEndTextMarker fix, these forms of the familiar functions take a Node*,
2694 so a previously existing VisiblePosition is not required.
2696 * editing/visible_units.h:
2697 Declare new forms of startOfDocument and endOfDocument.
2699 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2703 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2704 WebKit should have Qt platform support
2706 * platform/qt/TemporaryLinkStubs.cpp: Added.
2707 (JavaAppletWidget::JavaAppletWidget):
2708 (Font::selectionRectForComplexText):
2709 (Font::offsetForPositionForComplexText):
2710 (WebCore::refreshPlugins):
2711 (WebCore::focusRingColor):
2713 (WebCore::TextField::selectAll):
2714 (WebCore::TextField::addSearchResult):
2715 (WebCore::TextField::selectionStart):
2716 (WebCore::TextField::hasSelectedText):
2717 (WebCore::TextField::selectedText):
2718 (WebCore::TextField::setAutoSaveName):
2719 (WebCore::TextField::checksDescendantsForFocus):
2720 (WebCore::TextField::setSelection):
2721 (WebCore::TextField::setMaxResults):
2722 (WebCore::TextField::edited):
2723 (WebCore::TextField::focusPolicy):
2724 (WebCore::TextField::TextField):
2725 (WebCore::TextField::~TextField):
2726 (WebCore::TextField::setFont):
2727 (WebCore::TextField::setAlignment):
2728 (WebCore::TextField::setWritingDirection):
2729 (WebCore::TextField::maxLength):
2730 (WebCore::TextField::setMaxLength):
2731 (WebCore::TextField::text):
2732 (WebCore::TextField::setText):
2733 (WebCore::TextField::cursorPosition):
2734 (WebCore::TextField::setCursorPosition):
2735 (WebCore::TextField::setEdited):
2736 (WebCore::TextField::setReadOnly):
2737 (WebCore::TextField::setPlaceholderString):
2738 (WebCore::TextField::setColors):
2739 (WebCore::TextField::sizeForCharacterWidth):
2740 (WebCore::TextField::baselinePosition):
2741 (WebCore::TextField::setLiveSearch):
2742 (WebCore::Slider::Slider):
2743 (WebCore::Slider::sizeHint):
2744 (WebCore::Slider::~Slider):
2745 (WebCore::Slider::setValue):
2746 (WebCore::Slider::setMaxValue):
2747 (WebCore::Slider::setMinValue):
2748 (WebCore::Slider::setFont):
2749 (WebCore::Slider::value):
2750 (WebCore::Slider::focusPolicy):
2751 (WebCore::ScrollBar::ScrollBar):
2752 (WebCore::ScrollBar::setSteps):
2753 (WebCore::ScrollBar::scroll):
2754 (WebCore::ScrollBar::setValue):
2755 (WebCore::ScrollBar::setKnobProportion):
2756 (WebCore::PlatformScrollBar::PlatformScrollBar):
2757 (WebCore::PlatformScrollBar::~PlatformScrollBar):
2758 (WebCore::PlatformScrollBar::width):
2759 (WebCore::PlatformScrollBar::height):
2760 (WebCore::PlatformScrollBar::setEnabled):
2761 (WebCore::PlatformScrollBar::paint):
2762 (WebCore::PlatformScrollBar::setScrollBarValue):
2763 (WebCore::PlatformScrollBar::setKnobProportion):
2764 (WebCore::PlatformScrollBar::setRect):
2765 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2766 (WebCore::CheckCacheObjectStatus):
2767 (WebCore::CheckIfReloading):
2768 (WebCore::ServeSynchronousRequest):
2769 (WebCore::historyContains):
2770 (WebCore::submitButtonDefaultLabel):
2771 (WebCore::inputElementAltText):
2772 (WebCore::resetButtonDefaultLabel):
2773 (WebCore::defaultLanguage):
2774 (WebCore::findNextSentenceFromIndex):
2775 (WebCore::findSentenceBoundary):
2776 (WebCore::findNextWordFromIndex):
2777 (WebCore::findWordBoundary):
2778 (Frame::setNeedsReapplyStyles):
2779 (WebCore::screenDepthPerComponent):
2780 (WebCore::screenIsMonochrome):
2781 (WebCore::searchableIndexIntroduction):
2782 (WebCore::setFocusRingColorChangeFunction):
2783 (FrameView::updateBorder):
2784 (loadResourceIntoArray):
2785 (PlugInInfoStore::createPluginInfoForPluginAtIndex):
2786 (PlugInInfoStore::pluginCount):
2787 (WebCore::PlugInInfoStore::supportsMIMEType):
2788 (FileButton::FileButton):
2789 (FileButton::click):
2790 (FileButton::sizeForCharacterWidth):
2791 (FileButton::focusPolicy):
2792 (FileButton::frameGeometry):
2793 (FileButton::setFilename):
2794 (FileButton::baselinePosition):
2795 (FileButton::setFrameGeometry):
2796 (FileButton::setDisabled):
2797 (WebCore::supportedKeySizes):
2798 (WebCore::signedPublicKeyAndChallengeString):
2800 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2804 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2805 WebKit should have Qt platform support
2807 * platform/qt/CursorQt.cpp: Added.
2808 (WebCore::Cursor::Cursor):
2809 (WebCore::Cursor::~Cursor):
2810 (WebCore::Cursor::operator=):
2811 (WebCore::Cursors::Cursors::self):
2812 (WebCore::moveCursor):
2813 (WebCore::crossCursor):
2814 (WebCore::handCursor):
2815 (WebCore::iBeamCursor):
2816 (WebCore::waitCursor):
2817 (WebCore::helpCursor):
2818 (WebCore::eastResizeCursor):
2819 (WebCore::northResizeCursor):
2820 (WebCore::northEastResizeCursor):
2821 (WebCore::northWestResizeCursor):
2822 (WebCore::southResizeCursor):
2823 (WebCore::southEastResizeCursor):
2824 (WebCore::southWestResizeCursor):
2825 (WebCore::westResizeCursor):
2826 (WebCore::northSouthResizeCursor):
2827 (WebCore::eastWestResizeCursor):
2828 (WebCore::northEastSouthWestResizeCursor):
2829 (WebCore::northWestSouthEastResizeCursor):
2830 (WebCore::columnResizeCursor):
2831 (WebCore::rowResizeCursor):
2832 * platform/qt/RenderThemeQt.cpp: Added.
2833 (WebCore::RenderThemeQt::RenderThemeQt):
2834 (WebCore::RenderThemeQt::supportsHover):
2835 (WebCore::RenderThemeQt::paintCheckbox):
2836 (WebCore::RenderThemeQt::paintRadio):
2838 (WebCore::RenderThemeQt::isControlStyled):
2839 (WebCore::RenderThemeQt::controlSupportsTints):
2840 (WebCore::RenderThemeQt::systemFont):
2841 (WebCore::RenderThemeQt::createPopupMenu):
2842 (WebCore::RenderThemeQt::addIntrinsicMargins):
2843 (WebCore::RenderThemeQt::stylePainterAndWidgetForPaintInfo):
2844 (WebCore::RenderThemeQt::setCheckboxSize):
2845 (WebCore::RenderThemeQt::setRadioSize):
2846 (WebCore::RenderThemeQt::supportsFocus):
2847 (WebCore::RenderThemeQt::applyTheme):
2848 (WebCore::RenderThemeQt::adjustButtonStyle):
2849 (WebCore::RenderThemeQt::paintButton):
2850 (WebCore::RenderThemeQt::adjustTextFieldStyle):
2851 (WebCore::RenderThemeQt::paintTextField):
2853 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
2857 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2858 WebKit should have Qt platform support
2860 * platform/qt/SharedTimerQt.cpp: Added.
2861 (WebCore:setSharedTimerFiredFunction):
2862 (WebCore::setSharedTimerFireTime):
2863 (WebCore::stopSharedTimer):
2864 * platform/qt/SharedTimerQt.h: Added.
2865 (WebCore::SharedTimerQt::SharedTimerQt):
2866 (WebCore::SharedTimerQt::~SharedTimerQt):
2867 (WebCore::SharedTimerQt::inst):
2868 (WebCore::SharedTimerQt::fire):
2869 * platform/qt/SystemTimeQt.cpp: Added.
2870 (WebCore::currentTime):
2872 2006-08-21 Brady Eidson <beidson@apple.com>
2876 -Defers writing to the database via a timer and handles starting the timer
2879 * loader/icon/IconDatabase.cpp:
2880 (WebCore::IconDatabase::IconDatabase):
2881 (WebCore::IconDatabase::open): Don't start the update timer by default
2882 (WebCore::IconDatabase::close): Call syncDatabase()
2883 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Call syncDatabase()
2884 (WebCore::IconDatabase::setIconURLForPageURL): Setup the cached url, but defer the DB call
2885 (WebCore::IconDatabase::setIconURLForPageURLInDatabase): Actually commit the url to the DB
2886 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
2887 (WebCore::IconDatabase::updateDatabase): The updateTimer calls this, which just calls syncDatabase()
2888 (WebCore::IconDatabase::syncDatabase): Add and remove pending pageURLs and iconURLs, and stop the updateTimer
2889 * loader/icon/IconDatabase.h:
2891 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
2895 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10429
2896 XSLTProcessor.transformToFragment crashes if the owner document is empty
2898 Test: fast/js/xslt-fragment-in-empty-doc.html
2900 * dom/XMLTokenizer.cpp:
2901 (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
2903 2006-08-21 Brady Eidson <beidson@apple.com>
2907 -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
2908 In the near future, we'll also have timer-based deferred *addition* of database records
2909 -Keep retain/release counts in a hash instead of a DB table
2910 -Keep only one hash record for the SiteIcons
2911 -Renamed some methods for clarity
2913 * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
2914 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
2915 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
2916 * loader/icon/IconDatabase.cpp:
2917 (WebCore::IconDatabase::IconDatabase):
2918 (WebCore::IconDatabase::open): Added new timer setup
2919 (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
2920 (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
2921 (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
2922 (WebCore::IconDatabase::retainIconURL): Added
2923 (WebCore::IconDatabase::releaseIconURL): Added
2924 (WebCore::IconDatabase::forgetPageURL): Added
2925 (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
2926 (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
2927 (WebCore::IconDatabase::setIconURLForPageURL):
2928 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
2929 (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
2930 (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
2931 * loader/icon/IconDatabase.h: Added multiple stuffs
2933 2006-08-21 Brady Eidson <beidson@apple.com>
2935 Reviewed by Maciej's rubberstamp
2937 Removed stale file references from the Xcode.proj
2939 * WebCore.xcodeproj/project.pbxproj:
2941 2006-08-20 Nikolas Zimmermann <zimmermann@kde.org>
2943 Reviewed by Maciej. Landed by rwlbuis.
2945 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10463
2946 WebKit should have Qt platform support
2948 Removing HelperQt.h usage by creating appropriate operators
2949 constructor in some of the platform classes, as suggested by Darin.
2952 * platform/DeprecatedString.h:
2954 * platform/PlatformString.h:
2955 * platform/qt/ComboBoxQt.cpp:
2956 (WebCore::PlatformComboBox::appendItem):
2957 (WebCore::PlatformComboBox::appendGroupLabel):
2958 (WebCore::PlatformComboBox::setFont):
2959 * platform/qt/LineEditQt.cpp:
2960 (WebCore::PlatformLineEdit::setFont):
2961 (WebCore::PlatformLineEdit::setText):
2962 (WebCore::PlatformLineEdit::text):
2963 (WebCore::PlatformLineEdit::selectedText):
2964 * platform/qt/ListBoxQt.cpp:
2965 (WebCore::ListBox::setFont):
2966 (WebCore::ListBox::appendItem):
2967 * platform/qt/PlatformKeyboardEventQt.cpp:
2968 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2969 * platform/qt/ScrollViewQt.cpp:
2970 * platform/qt/StringQt.cpp: Added.
2971 (WebCore::String::String):
2972 (WebCore::String::operator QString):
2973 (WebCore::DeprecatedString::operator QString):
2974 * platform/qt/TextEditQt.cpp:
2975 * platform/qt/WidgetQt.cpp:
2976 (WebCore::Widget::setFont):
2978 2006-08-18 Steve Falkenburg <sfalken@apple.com>
2980 Rubber stamped by adele.
2982 Fix call to WebFormDelegate's textFieldDidBeginEditing.
2984 * rendering/RenderTextControl.cpp:
2985 (WebCore::RenderTextControl::subtreeHasChanged):
2987 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
2989 Reviewed by Eric. Landed by rwlbuis.
2991 Next chunk of the implementation for:
2992 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2994 WebKit should have Qt platform support
2996 * platform/qt/KeyboardCodes.h: Added.
2997 * platform/qt/PlatformKeyboardEventQt.cpp: Added.
2998 (WebCore::keyIdentifierForQtKeyCode):
2999 (WebCore::windowsKeyCodeForKeyEvent):
3000 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3001 * platform/qt/PlatformMouseEventQt.cpp: Added.
3003 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3005 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3007 Reviewed by Eric. Landed by rwlbuis.
3009 Next chunk of the implementation for:
3010 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3012 WebKit should have Qt platform support
3014 * platform/qt/AffineTransformQt.cpp: Added.
3015 (WebCore::AffineTransform::AffineTransform):
3016 (WebCore::AffineTransform::setMatrix):
3017 (WebCore::AffineTransform::map):
3018 (WebCore::AffineTransform::mapRect):
3019 (WebCore::AffineTransform::isIdentity):
3020 (WebCore::AffineTransform::m11):
3021 (WebCore::AffineTransform::m12):
3022 (WebCore::AffineTransform::m21):
3023 (WebCore::AffineTransform::m22):
3024 (WebCore::AffineTransform::dx):
3025 (WebCore::AffineTransform::dy):
3026 (WebCore::AffineTransform::reset):
3027 (WebCore::AffineTransform::scale):
3028 (WebCore::AffineTransform::rotate):
3029 (WebCore::AffineTransform::translate):
3030 (WebCore::AffineTransform::shear):
3031 (WebCore::AffineTransform::det):
3032 (WebCore::AffineTransform::invert):
3033 (WebCore::AffineTransform::operator QMatrix):
3034 (WebCore::AffineTransform::operator==):
3035 (WebCore::AffineTransform::operator*=):
3036 (WebCore::AffineTransform::operator*):
3037 * platform/qt/BrowserExtensionQt.cpp: Added.
3038 (WebCore::BrowserExtensionQt::BrowserExtensionQt):
3039 (WebCore::BrowserExtensionQt::canRunModal):
3040 (WebCore::BrowserExtensionQt::createNewWindow):
3041 (WebCore::BrowserExtensionQt::canRunModalNow):
3042 (WebCore::BrowserExtensionQt::runModal):
3043 (WebCore::BrowserExtensionQt::goBackOrForward):
3044 (WebCore::BrowserExtensionQt::historyURL):
3045 (WebCore::BrowserExtensionQt::setTypedIconURL):
3046 (WebCore::BrowserExtensionQt::setIconURL):
3047 (WebCore::BrowserExtensionQt::getHistoryLength):
3048 * platform/qt/BrowserExtensionQt.h: Added.
3049 * platform/qt/CookieJarQt.cpp: Added.
3050 (WebCore::setCookies):
3052 (WebCore::cookiesEnabled):
3053 * platform/qt/PageQt.cpp: Added.
3054 (WebCore::rootWindowForFrame):
3055 (WebCore::Page::windowRect):
3056 (WebCore::Page::setWindowRect):
3057 * platform/qt/PathQt.cpp: Added.
3058 (WebCore::Path::Path):
3059 (WebCore::Path::~Path):
3060 (WebCore::Path::operator=):
3061 (WebCore::Path::contains):
3062 (WebCore::Path::translate):
3063 (WebCore::Path::boundingRect):
3064 (WebCore::Path::moveTo):
3065 (WebCore::Path::addLineTo):
3066 (WebCore::Path::addQuadCurveTo):
3067 (WebCore::Path::addBezierCurveTo):
3068 (WebCore::Path::addArcTo):
3069 (WebCore::Path::closeSubpath):
3070 (WebCore::Path::addArc):
3071 (WebCore::Path::addRect):
3072 (WebCore::Path::addEllipse):
3073 (WebCore::Path::clear):
3074 * platform/qt/ScreenQt.cpp: Added.
3075 (WebCore::screenRect):
3076 (WebCore::screenDepth):
3077 (WebCore::usableScreenRect):
3080 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3082 Reviewed by Eric. Landed by rwlbuis.
3084 First chunk of the implementation for:
3085 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3087 WebKit should have Qt platform support
3089 * platform/qt/ComboBoxQt.cpp: Added.
3090 (WebCore::PlatformComboBox::PlatformComboBox):
3091 (WebCore::PlatformComboBox::~PlatformComboBox):
3092 (WebCore::PlatformComboBox::setParentWidget):
3093 (WebCore::PlatformComboBox::clear):
3094 (WebCore::PlatformComboBox::appendItem):
3095 (WebCore::PlatformComboBox::appendGroupLabel):
3096 (WebCore::PlatformComboBox::appendSeparator):
3097 (WebCore::PlatformComboBox::setCurrentItem):
3098 (WebCore::PlatformComboBox::sizeHint):
3099 (WebCore::PlatformComboBox::frameGeometry):
3100 (WebCore::PlatformComboBox::setFrameGeometry):
3101 (WebCore::PlatformComboBox::baselinePosition):
3102 (WebCore::PlatformComboBox::setFont):
3103 (WebCore::PlatformComboBox::focusPolicy):
3104 (WebCore::PlatformComboBox::itemSelected):
3105 (WebCore::PlatformComboBox::setWritingDirection):
3106 (WebCore::PlatformComboBox::populate):
3107 (WebCore::PlatformComboBox::populateMenu):
3108 * platform/qt/LineEditQt.cpp: Added.
3109 (WebCore::PlatformLineEdit::PlatformLineEdit):
3110 (WebCore::PlatformLineEdit::~PlatformLineEdit):
3111 (WebCore::PlatformLineEdit::setParentWidget):
3112 (WebCore::PlatformLineEdit::setColors):
3113 (WebCore::PlatformLineEdit::setAlignment):
3114 (WebCore::PlatformLineEdit::setCursorPosition):
3115 (WebCore::PlatformLineEdit::cursorPosition):
3116 (WebCore::PlatformLineEdit::setEdited):
3117 (WebCore::PlatformLineEdit::edited):
3118 (WebCore::PlatformLineEdit::setFont):
3119 (WebCore::PlatformLineEdit::setMaxLength):
3120 (WebCore::PlatformLineEdit::maxLength):
3121 (WebCore::PlatformLineEdit::setReadOnly):
3122 (WebCore::PlatformLineEdit::isReadOnly):
3123 (WebCore::PlatformLineEdit::setText):
3124 (WebCore::PlatformLineEdit::text):
3125 (WebCore::PlatformLineEdit::setWritingDirection):
3126 (WebCore::PlatformLineEdit::selectAll):
3127 (WebCore::PlatformLineEdit::hasSelectedText):
3128 (WebCore::PlatformLineEdit::selectionStart):
3129 (WebCore::PlatformLineEdit::selectedText):
3130 (WebCore::PlatformLineEdit::setSelection):
3131 (WebCore::PlatformLineEdit::sizeForCharacterWidth):
3132 (WebCore::PlatformLineEdit::baselinePosition):
3133 (WebCore::PlatformLineEdit::focusPolicy):
3134 (WebCore::PlatformLineEdit::checksDescendantsForFocus):
3135 (WebCore::PlatformLineEdit::setLiveSearch):
3136 (WebCore::PlatformLineEdit::setAutoSaveName):
3137 (WebCore::PlatformLineEdit::setMaxResults):
3138 (WebCore::PlatformLineEdit::setPlaceholderString):
3139 (WebCore::PlatformLineEdit::addSearchResult):
3140 * platform/qt/ListBoxQt.cpp: Added.
3141 (WebCore::ListBox::ListBox):
3142 (WebCore::ListBox::~ListBox):
3143 (WebCore::ListBox::setParentWidget):
3144 (WebCore::ListBox::sizeForNumberOfLines):
3145 (WebCore::ListBox::setSelectionMode):
3146 (WebCore::ListBox::clear):
3147 (WebCore::ListBox::doneAppendingItems):
3148 (WebCore::ListBox::setSelected):
3149 (WebCore::ListBox::isSelected):
3150 (WebCore::ListBox::setEnabled):
3151 (WebCore::ListBox::isEnabled):
3152 (WebCore::ListBox::setWritingDirection):
3153 (WebCore::ListBox::focusPolicy):
3154 (WebCore::ListBox::checksDescendantsForFocus):
3155 (WebCore::ListBox::clearCachedTextRenderers):
3156 (WebCore::ListBox::setFont):
3157 (WebCore::ListBox::appendItem):
3158 * platform/qt/ScrollViewQt.cpp: Added.
3159 (WebCore::ScrollView::ScrollView):
3160 (WebCore::ScrollView::~ScrollView):
3161 (WebCore::ScrollView::setParentWidget):
3162 (WebCore::ScrollView::updateContents):
3163 (WebCore::ScrollView::visibleWidth):
3164 (WebCore::ScrollView::visibleHeight):
3165 (WebCore::ScrollView::visibleContentRect):
3166 (WebCore::ScrollView::setContentsPos):
3167 (WebCore::ScrollView::resizeContents):
3168 (WebCore::ScrollView::contentsX):
3169 (WebCore::ScrollView::contentsY):
3170 (WebCore::ScrollView::contentsWidth):
3171 (WebCore::ScrollView::contentsHeight):
3172 (WebCore::ScrollView::viewportToContents):
3173 (WebCore::ScrollView::contentsToViewport):
3174 (WebCore::ScrollView::scrollOffset):
3175 (WebCore::ScrollView::scrollBy):
3176 (WebCore::ScrollView::hScrollBarMode):
3177 (WebCore::ScrollView::vScrollBarMode):
3178 (WebCore::ScrollView::suppressScrollBars):
3179 (WebCore::ScrollView::setHScrollBarMode):
3180 (WebCore::ScrollView::setVScrollBarMode):
3181 (WebCore::ScrollView::setScrollBarsMode):
3182 (WebCore::ScrollView::setStaticBackground):
3183 (WebCore::ScrollView::addChild):
3184 (WebCore::ScrollView::removeChild):
3185 (WebCore::ScrollView::scrollPointRecursively):
3186 (WebCore::ScrollView::inWindow):
3187 * platform/qt/TextEditQt.cpp: Added.
3188 (WebCore::PlatformTextEdit::PlatformTextEdit):
3189 (WebCore::PlatformTextEdit::~PlatformTextEdit):
3190 (WebCore::PlatformTextEdit::setParentWidget):
3191 (WebCore::PlatformTextEdit::setColors):
3192 (WebCore::PlatformTextEdit::setAlignment):
3193 (WebCore::PlatformTextEdit::setLineHeight):
3194 (WebCore::PlatformTextEdit::setCursorPosition):
3195 (WebCore::PlatformTextEdit::getCursorPosition):
3196 (WebCore::PlatformTextEdit::setFont):
3197 (WebCore::PlatformTextEdit::setReadOnly):
3198 (WebCore::PlatformTextEdit::isReadOnly):
3199 (WebCore::PlatformTextEdit::setDisabled):
3200 (WebCore::PlatformTextEdit::isDisabled):
3201 (WebCore::PlatformTextEdit::hasSelectedText):
3202 (WebCore::PlatformTextEdit::setText):
3203 (WebCore::PlatformTextEdit::text):
3204 (WebCore::PlatformTextEdit::textWithHardLineBreaks):
3205 (WebCore::PlatformTextEdit::focusPolicy):
3206 (WebCore::PlatformTextEdit::setWordWrap):
3207 (WebCore::PlatformTextEdit::wordWrap):
3208 (WebCore::PlatformTextEdit::setScrollBarModes):
3209 (WebCore::PlatformTextEdit::setWritingDirection):
3210 (WebCore::PlatformTextEdit::selectionStart):
3211 (WebCore::PlatformTextEdit::selectionEnd):
3212 (WebCore::PlatformTextEdit::setSelectionStart):
3213 (WebCore::PlatformTextEdit::setSelectionEnd):
3214 (WebCore::PlatformTextEdit::selectAll):
3215 (WebCore::PlatformTextEdit::setSelectionRange):
3216 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
3217 (WebCore::PlatformTextEdit::checksDescendantsForFocus):
3218 * platform/qt/WidgetQt.cpp: Added.
3219 (WebCore::WidgetPrivate::WidgetPrivate):
3220 (WebCore::WidgetPrivate::~WidgetPrivate):
3221 (WebCore::Widget::Widget):
3222 (WebCore::Widget::~Widget):
3223 (WebCore::Widget::setClient):
3224 (WebCore::Widget::client):
3225 (WebCore::Widget::frameGeometry):
3226 (WebCore::Widget::hasFocus):
3227 (WebCore::Widget::setFocus):
3228 (WebCore::Widget::clearFocus):
3229 (WebCore::Widget::font):
3230 (WebCore::Widget::setFont):
3231 (WebCore::Widget::setCursor):
3232 (WebCore::Widget::show):
3233 (WebCore::Widget::hide):
3234 (WebCore::Widget::setQWidget):
3235 (WebCore::Widget::qwidget):
3236 (WebCore::Widget::setParentWidget):
3237 (WebCore::Widget::parentWidget):
3238 (WebCore::Widget::setFrameGeometry):
3239 (WebCore::Widget::mapFromGlobal):
3240 (WebCore::Widget::scaleFactor):
3241 (WebCore::Widget::lockDrawingFocus):
3242 (WebCore::Widget::unlockDrawingFocus):
3243 (WebCore::Widget::paint):
3244 (WebCore::Widget::enableFlushDrawing):
3245 (WebCore::Widget::isEnabled):
3246 (WebCore::Widget::setIsSelected):
3247 (WebCore::Widget::disableFlushDrawing):
3248 (WebCore::Widget::setEnabled):
3249 (WebCore::Widget::focusPolicy):
3251 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3253 Reviewed by Eric. Landed by rwlbuis.
3255 First chunk of the implementation for:
3256 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3258 WebKit should have Qt platform support
3260 * platform/qt/ColorQt.cpp: Added.
3261 (WebCore::Color::Color):
3262 (WebCore::Color::operator QColor):
3263 * platform/qt/FloatPointQt.cpp: Added.
3264 (WebCore::FloatPoint::FloatPoint):
3265 (WebCore::FloatPoint::operator QPointF):
3266 * platform/qt/FloatRectQt.cpp: Added.
3267 (WebCore::FloatRect::FloatRect):
3268 (WebCore::FloatRect::operator QRectF):
3269 * platform/qt/IntPointQt.cpp: Added.
3270 (WebCore::IntPoint::IntPoint):
3271 (WebCore::IntPoint::operator QPoint):
3272 * platform/qt/IntRectQt.cpp: Added.
3273 (WebCore::IntRect::IntRect):
3274 (WebCore::IntRect::operator QRect):
3275 * platform/qt/IntSizeQt.cpp: Added.
3276 (WebCore::IntSize::IntSize):
3277 (WebCore::IntSize::operator QSize):
3279 2006-08-18 Nikolas Zimmermann <zimmermann@kde.org>
3281 Reviewed by Eric. Landed by rwlbuis.
3283 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10470
3284 The Qt platform needs a KCanvas device.
3286 * kcanvas/device/qt/KCanvasClipperQt.cpp: Added.
3287 (WebCore::KCanvasClipperQt::applyClip):
3288 * kcanvas/device/qt/KCanvasClipperQt.h: Added.
3289 (WebCore::KCanvasClipperQt::KCanvasClipperQt):
3290 * kcanvas/device/qt/KCanvasPathQt.cpp: Added.
3291 (WebCore::KCanvasPathQt::KCanvasPathQt):
3292 (WebCore::KCanvasPathQt::~KCanvasPathQt):
3293 (WebCore::KCanvasPathQt::isEmpty):
3294 (WebCore::KCanvasPathQt::moveTo):
3295 (WebCore::KCanvasPathQt::lineTo):
3296 (WebCore::KCanvasPathQt::curveTo):
3297 (WebCore::KCanvasPathQt::closeSubpath):
3298 (WebCore::KCanvasPathQt::boundingBox):
3299 (WebCore::KCanvasPathQt::strokeBoundingBox):
3300 (WebCore::KCanvasPathQt::strokeContainsPoint):
3301 (WebCore::KCanvasPathQt::containsPoint):
3302 * kcanvas/device/qt/KCanvasPathQt.h: Added.
3303 (WebCore::KCanvasPathQt::qtPath):
3304 * kcanvas/device/qt/KRenderingDeviceQt.cpp: Added.
3305 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
3306 (WebCore::KRenderingDeviceContextQt::~KRenderingDeviceContextQt):
3307 (WebCore::KRenderingDeviceContextQt::concatCTM):
3308 (WebCore::KRenderingDeviceContextQt::ctm):
3309 (WebCore::KRenderingDeviceContextQt::mapFromVisual):
3310 (WebCore::KRenderingDeviceContextQt::mapToVisual):
3311 (WebCore::KRenderingDeviceContextQt::clearPath):
3312 (WebCore::KRenderingDeviceContextQt::addPath):
3313 (WebCore::KRenderingDeviceContextQt::createGraphicsContext):
3314 (WebCore::KRenderingDeviceContextQt::painter):
3315 (WebCore::KRenderingDeviceContextQt::pathBBox):
3316 (WebCore::KRenderingDeviceContextQt::setFillRule):
3317 (WebCore::KRenderingDeviceContextQt::fillPath):
3318 (WebCore::KRenderingDeviceContextQt::strokePath):
3319 (WebCore::KRenderingDeviceQt::KRenderingDeviceQt):
3320 (WebCore::KRenderingDeviceQt::~KRenderingDeviceQt):
3321 (WebCore::KRenderingDeviceQt::popContext):
3322 (WebCore::KRenderingDeviceQt::pushContext):
3323 (WebCore::KRenderingDeviceQt::qtContext):
3324 (WebCore::KRenderingDeviceQt::contextForImage):
3325 (WebCore::KRenderingDeviceQt::stringForPath):
3326 (WebCore::KRenderingDeviceQt::createResource):
3327 (WebCore::KRenderingDeviceQt::createPaintServer):
3328 (WebCore::KRenderingDeviceQt::createFilterEffect):
3330 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3332 Reviewed by Eric. Landed by rwlbuis.
3334 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10466
3335 WebKit should have Qt platform support.
3338 * platform/Cursor.h:
3339 (WebCore::Cursor::Cursor):
3340 * platform/FloatPoint.h:
3341 * platform/FloatRect.h:
3342 * platform/GlyphBuffer.h:
3343 (WebCore::GlyphBuffer::glyphAt):
3344 (WebCore::GlyphBuffer::advanceAt):
3345 (WebCore::GlyphBuffer::add):
3346 * platform/GraphicsContext.h:
3347 * platform/ImageSource.h:
3348 * platform/IntPoint.h:
3349 * platform/IntRect.h:
3350 * platform/IntSize.h:
3351 * platform/ListBox.h:
3353 * platform/PlatformKeyboardEvent.h:
3354 * platform/PlatformMouseEvent.h:
3355 * platform/ResourceLoader.h:
3356 * platform/ResourceLoaderClient.h:
3357 * platform/ResourceLoaderInternal.h:
3358 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
3359 * platform/ScrollView.h:
3360 * platform/Widget.h:
3362 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3364 Reviewed by Eric. Landed by rwlbuis.
3366 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10465
3367 General WebKit Linux build fixes.
3369 * kcanvas/KCanvasFilters.cpp:
3370 (WebCore::operator<<):
3371 * kcanvas/RenderSVGImage.cpp:
3372 * ksvg2/css/SVGCSSStyleSelector.cpp:
3373 * ksvg2/svg/SVGAnimateColorElement.cpp:
3374 * ksvg2/svg/SVGMaskElement.cpp:
3375 * ksvg2/svg/SVGPatternElement.cpp:
3377 * rendering/RenderStyle.h:
3378 (WebCore::RenderStyle::deleteBindingURIs):
3379 * xml/DOMParser.cpp:
3381 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3383 Reviewed by Eric. Landed by rwlbuis.
3385 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10464
3386 Offer a cmake build system for Qt platform.
3388 * CMakeLists.txt: Added.
3390 2006-08-17 David Harrison <harrison@apple.com>
3392 Reviewed by John Sullivan.
3394 <rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons
3396 Accessorized RenderMenuList objects.
3398 * bridge/mac/WebCoreAXObject.mm:
3399 (-[WebCoreAXObject mouseButtonListener]):
3402 (-[WebCoreAXObject actionElement]):
3403 Return the HTMLSelectElement.
3405 (-[WebCoreAXObject firstChild]):
3406 (-[WebCoreAXObject lastChild]):
3407 (-[WebCoreAXObject previousSibling]):
3408 (-[WebCoreAXObject nextSibling]):
3409 (-[WebCoreAXObject parentObject]):
3410 (-[WebCoreAXObject parentObjectUnignored]):
3411 (-[WebCoreAXObject isAttachment]):
3412 (-[WebCoreAXObject attachmentView]):
3415 (-[WebCoreAXObject role]):
3416 Return NSAccessibilityPopUpButtonRole.
3418 (-[WebCoreAXObject subrole]):
3421 (-[WebCoreAXObject roleDescription]):
3422 Return NSAccessibilityPopUpButtonRole.
3424 (-[WebCoreAXObject textUnderElement]):
3427 (-[WebCoreAXObject value]):
3428 Return the RenderMenuList::text().
3430 (-[WebCoreAXObject position]):
3433 (-[WebCoreAXObject accessibilityIsIgnored]):
3434 - Ignore popup menu items because AppKit does.
3435 - Remove redundant check for buttonTag (earlier isControl() check suffices).
3437 (-[WebCoreAXObject accessibilityAttributeNames]):
3438 (-[WebCoreAXObject accessibilityActionNames]):
3439 (-[WebCoreAXObject accessibilityAttributeValue:]):
3442 (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
3443 Removed old debugging code that is no longer needed.
3446 (-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
3447 (-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
3448 (-[WebCoreAXObject removeAXObjectID]):
3451 * html/HTMLSelectElement.cpp:
3452 (WebCore::HTMLSelectElement::accessKeyAction):
3453 Call click() instead of focus().
3455 * rendering/RenderMenuList.cpp:
3456 (WebCore::RenderMenuList::text):
3457 Added for easy access to popup's current text.
3459 * rendering/RenderMenuList.h:
3460 (WebCore::RenderMenuList::isMenuList):
3461 * rendering/RenderObject.h:
3462 (WebCore::RenderObject::isMenuList):
3463 Added so popups can be identified.
3465 2006-08-17 David Harrison <harrison@apple.com>
3469 <rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range
3471 Test cases added: None. Manual AX testing is way too awkward, and automated testing
3472 is not possible. See following bug...
3473 <rdar://problem/4256882> Need automated testing support for accessibility APIs
3475 * bridge/mac/AXObjectCacheMac.mm:
3476 (WebCore::AXObjectCache::visiblePositionForTextMarker):
3477 Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
3479 2006-08-17 Nikolas Zimmermann <zimmermann@kde.org>
3483 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10447
3484 AffineTransform should be multi-platform compatible
3486 * platform/AffineTransform.h:
3487 * platform/cg/AffineTransformCG.cpp:
3488 (WebCore::AffineTransform::m11):
3489 (WebCore::AffineTransform::m12):
3490 (WebCore::AffineTransform::m21):
3491 (WebCore::AffineTransform::m22):
3492 (WebCore::AffineTransform::dx):
3493 (WebCore::AffineTransform::dy):
3495 2006-08-16 David Hyatt <hyatt@apple.com>
3497 Fix an issue with CSS2 system fonts where they did not respect text
3498 zoom. This was most visible with the new control fonts used for form
3499 controls (they stopped swapping between small/mini/regular as you zoomed).
3503 * css/cssstyleselector.cpp:
3504 (WebCore::CSSStyleSelector::applyProperty):
3506 2006-08-15 Justin Garcia <justin.garcia@apple.com>
3508 Reviewed by thatcher
3510 First part of fix for:
3511 <rdar://problem/4384589>
3512 Mail hung on paste text
3515 <http://bugzilla.opendarwin.org/show_bug.cgi?id=8592>
3516 Extra line left after deleting whitespace:pre text
3517 <rdar://problem/4128080> Paste as HTML does not yield equivalent style
3518 <rdar://problem/4046469> Box styles on first element aren't copied/pasted
3519 Copy/paste of arstechnica.com
3521 Here's how we avoid adding redundant style information on paste: insert
3522 the fragment and do a test rendering, save away style information for
3523 every node in the fragment, remove all style information from the fragment,
3524 remove the fragment, insert it into the appropriate place in the document,
3525 then restore only those styles gathered during the test insertion that aren't
3526 redundant. Restoring the styles in this way results in an ApplyStyleCommand
3527 and a layout for nearly every inserted node.
3528 Instead we want to insert the fragment into the document without removing the
3529 style information, then mark style nodes and inline style declarations for
3530 removal if they are redundant, and sweep to remove them. This means that we
3531 can't rely on ReplacementFragment::wasBlock anymore, because blocks will now
3532 have style spans around them. This patch removes the use of wasBlock in
3533 ReplaceSelectionCommand.