1 2006-08-31 Dave Hyatt <hyatt@apple.com>
3 Make ScrollBar.cpp suitable for compiling on Windows by removing the #import.
7 * platform/ScrollBar.cpp:
9 2006-08-31 Brady Eidson <beidson@apple.com>
13 Cleaned up my last patch after further considerations
15 * loader/icon/IconDatabase.cpp:
16 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Uses the new checkForDanglingPageURLs to check
17 for and fix danglers. Does so in all builds (changed from debug only in my last patch)
18 (WebCore::IconDatabase::syncDatabase): Uses the new checkForDanglingPageURLs to check for danglers
19 (WebCore::IconDatabase::checkForDanglingPageURLs): This checks and, if asked via an arg, prunes the dangling pageURLs
20 * loader/icon/IconDatabase.h:
22 2006-08-31 Anders Carlsson <acarlsson@apple.com>
26 Add CString. CString is a simple, null-terminated byte buffer that supports data
27 sharing. Its main use is to be a better const char*.
29 Also add latin1 and utf8 methods to String which returns CStrings.
31 * platform/CString.cpp: Added.
32 (WebCore::CString::CString):
33 (WebCore::CString::init):
34 (WebCore::CString::data):
35 (WebCore::CString::length):
36 (WebCore::CString::deprecatedCString):
37 * platform/CString.h: Added.
38 (WebCore::CStringBuffer::CStringBuffer):
39 (WebCore::CStringBuffer::data):
40 (WebCore::CStringBuffer::length):
41 (WebCore::CString::CString):
42 (WebCore::CString::operator const char*):
43 (WebCore::CString::isNull):
44 * platform/PlatformString.h:
45 * platform/String.cpp:
46 (WebCore::String::latin1):
47 (WebCore::String::utf8):
49 2006-08-31 Brady Eidson <beidson@apple.com>
53 Previously mentioned ASSERT was hit right away by folks, as we first need to bring their old icon.db into consistency
54 Changed the ASSERT to a LOG_ERROR and added a method for debug builds to bring a DB back together.
56 * loader/icon/IconDatabase.cpp:
57 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Check for the danglers and prune them out
58 (WebCore::IconDatabase::syncDatabase): Check for the danglers and log the error
59 (WebCore::IconDatabase::pruneDanglingPageURLs): Prune the danglers
60 * loader/icon/IconDatabase.h:
62 2006-08-31 Brady Eidson <beidson@apple.com>
66 Fixed an error where an Icon's IconID could change without the change being reflected in the PageURL table,
67 causing icons to be pruned before their time and pages to lose their icons. This is because I misunderstood
68 how SQLite handles the "ON CONFLICT REPLACE" condition, which is to delete the row and re-insert instead of
69 perform an update. Also added an assertion to make sure this doesn't happen again.
71 * loader/icon/IconDataCache.cpp:
72 (WebCore::IconDataCache::writeToDatabase): Instead of one INSERT relying on SQLites conflict handling, broke
73 this into an UPDATE attempt followed by the initial INSERT
74 * loader/icon/IconDatabase.cpp:
75 (WebCore::IconDatabase::createDatabaseTables): Slight tweak to the database schema to prevent this from happening
76 in the future. Note this change will not cause incompatibility with the current schema, therefore I didn't update
77 the official database version number
78 (WebCore::IconDatabase::syncDatabase): Added an ASSERT to look for this condition in the future
79 * loader/icon/SQLDatabase.cpp:
80 (WebCore::SQLDatabase::lastChanges): Added this SQLite accessor to see if an UPDATE command actually changed a row
81 * loader/icon/SQLDatabase.h: Ditto
83 2006-08-31 Sam Weinig <sam.weinig@gmail.com>
87 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10653
88 Auto-generate another 20 Objective-C DOM HTML bindings
90 Auto-generates DOMHTMLBRElement, DOMHTMLButtonElement, DOMHTMLDListElement,
91 DOMHTMLDirectoryElement, DOMHTMLDivElement, DOMHTMLFieldSetElement,
92 DOMHTMLHeadingElement, DOMHTMLInputElement, DOMHTMLLIElement, DOMHTMLLabelElement,
93 DOMHTMLLegendElement, DOMHTMLMenuElement, DOMHTMLOListElement, DOMHTMLOptGroupElement,
94 DOMHTMLParagraphElement, DOMHTMLPreElement, DOMHTMLQuoteElement, DOMHTMLSelectElement,
95 DOMHTMLTextAreaElement, and DOMHTMLUListElement.
97 * DerivedSources.make:
98 * WebCore.xcodeproj/project.pbxproj:
99 * bindings/objc/DOM.mm:
100 * bindings/objc/DOMExtensions.h:
101 * bindings/objc/DOMHTML.h:
102 * bindings/objc/DOMHTML.mm:
103 (-[DOMHTMLInputElement altDisplayString]):
104 (-[DOMHTMLInputElement absoluteImageURL]):
105 (-[DOMHTMLInputElement WebCore::]):
106 (-[DOMHTMLInputElement _rectOnScreen]):
107 (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
108 (-[DOMHTMLInputElement _selectedRange]):
109 (-[DOMHTMLInputElement _setAutofilled:]):
110 * bindings/objc/DOMHTMLInternal.h:
111 * bindings/objc/DOMPrivate.h:
112 * bindings/scripts/CodeGeneratorObjC.pm:
114 2006-08-31 Adele Peterson <adele@apple.com>
116 Reviewed by John Sullivan.
118 Removing use of SPI in favor of Carbon API to enable and disable secure event input.
120 * WebCore.exp: Removed wkSecureEventInput and wkSetSecureEventInput.
121 * platform/mac/WebCoreSystemInterface.h: ditto.
122 * platform/mac/WebCoreSystemInterface.mm: ditto.
124 * bridge/mac/FrameMac.mm:
125 (WebCore::FrameMac::setSecureKeyboardEntry): Uses EnableSecureEventInput and DisableSecureEventInput.
126 (WebCore::FrameMac::secureKeyboardEntry): Uses IsSecureEventInputEnabled.
128 2006-08-30 Brady Eidson <beidson@apple.com>
130 Reviewed by "common sense" (and Maciej)
132 Fixed two logging typos
134 * loader/icon/IconDatabase.cpp:
135 (WebCore::IconDatabase::syncDatabase):
137 2006-08-30 Adele Peterson <adele@apple.com>
139 Adding missing nil check for focus node.
141 * page/Frame.cpp: (WebCore::Frame::setIsActive):
143 2006-08-30 Adele Peterson <adele@apple.com>
147 WebCore part of fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10575
148 Enable secure input mode for new password fields
150 * WebCore.exp: Added wkSetSecureEventInput and wkSecureEventInput.
151 * platform/mac/WebCoreSystemInterface.h: ditto.
152 * platform/mac/WebCoreSystemInterface.mm: ditto.
154 * page/Frame.cpp: (WebCore::Frame::setIsActive): Enables and disables secure keyboard entry based on whether the frame becomes active.
155 * bridge/mac/FrameMac.h:
156 * bridge/mac/FrameMac.mm:
157 (WebCore::FrameMac::setSecureKeyboardEntry): Added. Calls wkSetSecureEventInput.
158 (WebCore::FrameMac::secureKeyboardEntry): Added. Calls wkSecureEventInput.
159 * html/HTMLInputElement.cpp:
160 (WebCore::HTMLInputElement::dispatchFocusEvent): For password fields, enable secure keyboard entry.
161 (WebCore::HTMLInputElement::dispatchBlurEvent): For password fields, disable secure keyboard entry.
163 (WebCore::Frame::setSecureKeyboardEntry):
164 (WebCore::Frame::secureKeyboardEntry):
166 2006-08-30 Darin Adler <darin@apple.com>
168 Reviewed by Tim Hatcher.
170 - eliminated the need for UsesPassRefPtr in IDL files
171 - got rid of the category mechanism for ObjC generated DOM headers
172 (after discussions with Tim H where we decided it's not needed)
173 - simplified use of macro inside ObjC generated code
175 * ForwardingHeaders/wtf/GetPtr.h: Added.
177 * bindings/scripts/CodeGeneratorObjC.pm: Removed code to handle
178 categories. Eliminated use of DOM_cast since that's for the protection
179 of human programmers -- the script won't make mistakes that it needs
180 to catch. Changed macro to always be named IMPL instead of incorporating
181 the class name. Use WTF::getPtr to extract the pointer, and removed the
182 code that uses .get() to extract the pointer in the PassRefPtr case.
184 * dom/Attr.idl: Removed all uses of UsesPassRefPtr and ObjCCatagory.
185 * dom/DOMImplementation.idl: Ditto.
186 * dom/Document.idl: Ditto.
187 * dom/Element.idl: Ditto.
188 * dom/NamedNodeMap.idl: Ditto.
189 * html/HTMLDocument.idl: Ditto.
190 * html/HTMLElement.idl: Ditto.
191 * html/HTMLFormElement.idl: Ditto.
192 * html/HTMLMapElement.idl: Ditto.
193 * html/HTMLSelectElement.idl: Ditto.
194 * html/HTMLTableElement.idl: Ditto.
195 * html/HTMLTableRowElement.idl: Ditto.
196 * html/HTMLTableSectionElement.idl: Ditto.
198 2006-08-30 Brady Eidson <beidson@apple.com>
202 <rdar://problem/4707718> - Instead of faking the user out with an in-memory icon database if their
203 ~/Library/Safari/Icons is unwritable, we'll actually fail to open the icon database and the app will
204 run as if it was disabled via a preference.
205 Also took the opportunity to change some ASSERTS() to reasonable behavior
207 * bridge/mac/WebCoreIconDatabaseBridge.mm:
208 (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]): NSLog on failure so the user has a chance to figure
209 out there's a problem.
210 (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
211 (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]): From here on, just replaced ASSERTS() with reasonable behavior
212 (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
213 (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
214 (-[WebCoreIconDatabaseBridge retainIconForURL:]):
215 (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
216 (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
217 (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
218 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
219 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
220 * loader/icon/IconDatabase.cpp:
221 (WebCore::IconDatabase::open): If we fail to open, return false
222 (WebCore::IconDatabase::~IconDatabase): cleanup better
223 * loader/icon/IconDatabase.h:
225 2006-08-30 David Harrison <harrison@apple.com>
227 Reviewed by John Sullivan.
229 <rdar://problem/4708007> REGRESSION: text field inside a webpage no longer has settable AXValueAttribute
230 <rdar://problem/4707479> REGRESSION: controls inside a webpage no longer have settable AXFocusedAttribute
232 * bridge/mac/WebCoreAXObject.mm:
233 (-[WebCoreAXObject canSetFocusAttribute]):
234 (-[WebCoreAXObject canSetValueAttribute]):
235 New utility methods. Text fields and buttons are focusable.
236 Text fields can have their value set. We need not make
237 popupbutton value settable because AppKit does not.
239 (-[WebCoreAXObject accessibilityIsAttributeSettable:]):
240 Call new utility methods.
242 (-[WebCoreAXObject accessibilitySetValue:forAttribute:]):
243 Set focus for text field or button.
244 Set value for text field.
246 2006-08-30 David Hyatt <hyatt@apple.com>
248 Fix for bugs 9000 and 10606. Add code to suppress painting when
249 a FOUC situation would otherwise occur. There will still typically be
250 a flash to white, but at least the wrong content won't show.
255 (WebCore::Document::Document):
256 (WebCore::Document::updateLayoutIgnorePendingStylesheets):
257 (WebCore::Document::preferredStylesheetSet):
258 (WebCore::Document::selectedStylesheetSet):
259 (WebCore::Document::setSelectedStylesheetSet):
260 (WebCore::Document::stylesheetLoaded):
261 (WebCore::Document::updateStyleSelector):
263 (WebCore::Document::haveStylesheetsLoaded):
264 * rendering/RenderBlock.cpp:
265 (WebCore::RenderBlock::paintChildren):
266 * rendering/RenderLayer.cpp:
267 (WebCore::RenderLayer::paintLayer):
268 (WebCore::isSubframe):
269 (WebCore::RenderLayer::hitTest):
270 * rendering/RenderView.cpp:
271 (WebCore::RenderView::repaintViewRectangle):
273 2006-08-31 Nikolas Zimmermann <zimmermann@kde.org>
275 Reviewed by Eric. Landed by rwlbuis.
277 Apply Rob's fixes in RenderPathQt too -> unbreak build.
279 * kcanvas/RenderPath.h: Some style cleanups.
280 * kcanvas/device/qt/RenderPathQt.cpp:
281 (WebCore::RenderPathQt::strokeContains):
282 * kcanvas/device/qt/RenderPathQt.h:
284 2006-08-30 Sam Weinig <sam.weinig@gmail.com>
287 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10640
288 Auto-generate 10 more Objective-C DOM HTML bindings
290 Auto-generates DOMHTMLBaseElement, DOMHTMLBodyElement, DOMHTMLHeadElement,
291 DOMHTMLHtmlElement, DOMHTMLIsIndexElement, DOMHTMLLinkElement,
292 DOMHTMLMetaElement, DOMHTMLStyleElement and DOMHTMLTitleElement.
294 Splits DOMHTMLDocument into it's own files.
296 * DerivedSources.make:
297 * WebCore.xcodeproj/project.pbxproj:
298 * bindings/objc/DOM.mm:
299 * bindings/objc/DOMExtensions.h:
300 * bindings/objc/DOMHTML.h:
301 * bindings/objc/DOMHTML.mm:
302 * bindings/objc/DOMHTMLDocument.h: Added.
303 * bindings/objc/DOMHTMLDocument.mm: Added.
304 (-[DOMHTMLDocument WebCore::]):
305 (-[DOMHTMLDocument title]):
306 (-[DOMHTMLDocument setTitle:]):
307 (-[DOMHTMLDocument referrer]):
308 (-[DOMHTMLDocument domain]):
309 (-[DOMHTMLDocument URL]):
310 (-[DOMHTMLDocument body]):
311 (-[DOMHTMLDocument setBody:]):
312 (-[DOMHTMLDocument images]):
313 (-[DOMHTMLDocument applets]):
314 (-[DOMHTMLDocument links]):
315 (-[DOMHTMLDocument forms]):
316 (-[DOMHTMLDocument anchors]):
317 (-[DOMHTMLDocument cookie]):
318 (-[DOMHTMLDocument setCookie:]):
319 (-[DOMHTMLDocument open]):
320 (-[DOMHTMLDocument close]):
321 (-[DOMHTMLDocument write:]):
322 (-[DOMHTMLDocument writeln:]):
323 (-[DOMHTMLDocument getElementById:]):
324 (-[DOMHTMLDocument getElementsByName:]):
325 (-[DOMHTMLDocument createDocumentFragmentWithMarkupString:baseURL:]):
326 (-[DOMHTMLDocument createDocumentFragmentWithText:]):
327 * bindings/objc/DOMHTMLInternal.h:
328 * bindings/scripts/CodeGeneratorObjC.pm:
329 * html/HTMLDocument.idl:
331 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
335 Use QColor <-> Color conversion operator, instead of faking it.
337 * platform/qt/FontQt.cpp:
338 (WebCore::Font::drawGlyphs):
339 * platform/qt/GraphicsContextQt.cpp:
340 (WebCore::GraphicsContext::fillRect):
342 2006-08-30 Rob Buis <buis@kde.org>
346 http://bugzilla.opendarwin.org/show_bug.cgi?id=10586
347 pointer-events has issues when things are not stroked/filled
349 Add a param to fillContains/strokeContains to indicate
350 whether we still want hit testing when there is no fill/stroke.
352 * kcanvas/RenderPath.cpp:
353 (WebCore::RenderPath::fillContains):
354 (WebCore::RenderPath::nodeAtPoint):
355 * kcanvas/RenderPath.h:
356 * kcanvas/device/quartz/KCanvasItemQuartz.h:
357 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
358 (WebCore::KCanvasItemQuartz::strokeContains):
360 2006-08-29 Justin Garcia <justin.garcia@apple.com>
364 <rdar://problem/4700297>
365 REGRESSION: After replacing a misspelled word in a sentence, the selection extends to end of current line
367 * editing/ReplaceSelectionCommand.cpp:
368 (WebCore::ReplaceSelectionCommand::doApply): Rebalance whitespace
369 around insertionPos before insertion because the content might
370 cause a collapse, e.g. inserting <div>foo</div> at hello^ world.
371 * editing/htmlediting.cpp:
372 (WebCore::rebalanceWhitespaceInTextNode): Rebalance with all nbsps
373 for simplicity, we can produce sequences of regular spaces and
374 nbsps on serialization (10636).
376 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
380 The old solution was slow & does not work correctly.
381 Move the QString -> DeprecatedString conversion into
382 DeprectedString.cpp, to be able to access allocateHandle().
384 * platform/DeprecatedString.cpp:
385 (WebCore::DeprecatedString::DeprecatedString):
386 * platform/qt/StringQt.cpp:
388 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
390 Reviewed/landed by Adam.
392 Implement containsCharacters() / determinePitch() functions.
394 * platform/qt/FontDataQt.cpp:
395 (WebCore::FontData::containsCharacters):
396 (WebCore::FontData::determinePitch):
398 2006-08-30 Brady Eidson <beidson@apple.com>
400 Reviewed by Darin's rubberstamp
402 We apparently have a fancy delateAllValues() helper for HashMap/Sets - I'll use that instead
404 * WebCore.xcodeproj/project.pbxproj:
405 * loader/icon/IconDatabase.cpp:
406 (WebCore::IconDatabase::removeAllIcons):
408 2006-08-29 waylonis <waylonis@google.com>
410 Reviewed, tweaked by ggaren.
412 - Changed to use ExecState on current context rather than global.
413 Part of the fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10114
414 * bindings/objc/WebScriptObject.mm:
415 (+[WebScriptObject throwException:]):
416 (-[WebScriptObject setException:]):
418 2006-08-30 Adele Peterson <adele@apple.com>
422 - WebCore part of fix for:
423 http://bugzilla.opendarwin.org/show_bug.cgi?id=10576
424 Disallow copy from new password fields
426 * page/Frame.cpp: (WebCore::Frame::mayCopy): Added. Checks to see if the selection is within a password field.
427 * page/Frame.h: Added mayCopy.
429 * bridge/mac/FrameMac.h:
430 * bridge/mac/FrameMac.mm:
431 (WebCore::FrameMac::handleMouseMoveEvent): Checks mayCopy before starting a drag.
432 (WebCore::FrameMac::mayDHTMLCut): Renamed to match the bridge method. This also checks mayCopy now.
433 (WebCore::FrameMac::mayDHTMLCopy): ditto.
434 (WebCore::FrameMac::tryDHTMLCut): ditto.
435 (WebCore::FrameMac::tryDHTMLCopy): ditto.
436 (WebCore::FrameMac::mayDHTMLPaste): Renamed to match the bridge function.
437 (WebCore::FrameMac::tryDHTMLPaste): ditto.
438 * bridge/mac/WebCoreFrameBridge.h:
439 * bridge/mac/WebCoreFrameBridge.mm:
440 (-[WebCoreFrameBridge mayCopy]): Calls the renamed method on frame.
441 (-[WebCoreFrameBridge mayDHTMLCut]): ditto.
442 (-[WebCoreFrameBridge mayDHTMLCopy]): ditto.
443 (-[WebCoreFrameBridge mayDHTMLPaste]): ditto.
444 (-[WebCoreFrameBridge tryDHTMLCut]): ditto.
445 (-[WebCoreFrameBridge tryDHTMLCopy]): ditto.
446 (-[WebCoreFrameBridge tryDHTMLPaste]): ditto.
448 * css/html4.css: Added !important to the -webkit-text-security property for password fields.
450 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
454 Commit KDE related tweaks, to be able to
455 differentiate between a Qt-only or a KDE build.
457 * CMakeLists.txt: Move global variables up to trunk/CMakeLists.txt.
458 Also rename USE_WEBKIT_SVG_SUPPORT to WEBKIT_USE_SVG_SUPPORT.
460 2006-08-30 Timothy Hatcher <timothy@apple.com>
462 Rubber-stamped by Brady.
464 Fix for the generated headers to make the build work
465 during "installhdrs" builds. Also export DOM headers
466 using the #import <WebCore/DOM*.h> syntax.
468 * WebCore.xcodeproj/project.pbxproj:
469 * bindings/scripts/CodeGeneratorObjC.pm:
471 2006-08-29 Brady Eidson <beidson@apple.com>
473 Reviewed by Kevin Decker (Sarge)
475 <rdar://problem/4678414> - New IconDB needs to delete icons when asked
476 <rdar://problem/4707718> - If user's Icon directory is unwritable, Safari will crash at startup
478 * bridge/mac/WebCoreIconDatabaseBridge.h:
479 * bridge/mac/WebCoreIconDatabaseBridge.mm:
480 (-[WebCoreIconDatabaseBridge removeAllIcons]): Added
481 * loader/icon/IconDatabase.cpp:
482 (WebCore::IconDatabase::open): If DB file is not writeable, create an in-memory DB for this session
483 (WebCore::IconDatabase::close): Use new deleteAllPreparedStatements()
484 (WebCore::IconDatabase::removeAllIcons): Actually implemented
485 (WebCore::IconDatabase::deleteAllPreparedStatements): Added for convinience/consistency
486 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Use new SQLDatabase::clearAllTables()
487 * loader/icon/IconDatabase.h:
488 * loader/icon/SQLDatabase.cpp:
489 (WebCore::SQLDatabase::clearAllTables): Moved this from IconDatabase as it actually belongs here
490 (WebCore::SQLDatabase::vacuum): Added
491 * loader/icon/SQLDatabase.h:
492 (WebCore::SQLDatabase::path): changed name from getPath()
494 2006-08-29 Brady Eidson <beidson@apple.com>
498 Added a truth value to setIconURLForPageURL so WebKit can avoid sending a notification
499 This is a win on the iBench
501 * bridge/mac/WebCoreIconDatabaseBridge.h:
502 * bridge/mac/WebCoreIconDatabaseBridge.mm:
503 (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
504 * loader/icon/IconDatabase.cpp:
505 (WebCore::IconDatabase::setIconURLForPageURL):
506 * loader/icon/IconDatabase.h:
508 2006-08-29 Alice Liu <alice.liu@apple.com>
512 Fixed <rdar://problem/4702021> REGRESSION: WebClip and Weather widgets shift downward vertically on screen after I drag them out from dashboard configure bar
514 * platform/mac/ScreenMac.mm:
515 (WebCore::flipScreenRect):
516 reverted the one line in this method back to what it was before r15765. This changed caused window.screenY to be incorrect.
518 2006-08-29 Darin Adler <darin@apple.com>
522 - fix <rdar://problem/4701494> REGRESSION: Scrollbar on EPSN widget doesn't scroll (also affects Widgets widget, web inspector)
524 The bug was that we would return "none" for computed style properties when they were
527 Test: fast/css/computed-style-negative-top.html
529 * css/CSSComputedStyleDeclaration.cpp:
530 (WebCore::valueForLength): Moved special case for "undefined length" out of here.
531 (WebCore::valueForMaxLength): Moved it into here.
532 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Use valueForMaxLength
533 only for max-height and max-width.
535 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
539 Add path-related SVG JavaScript bindings to generation.
543 2006-08-29 Eric Seidel <eric@eseidel.com>
547 Re-enable path-related SVG JavaScript bindings.
548 http://bugzilla.opendarwin.org/show_bug.cgi?id=10623
549 Split all SVGPathSeg*.idl files into Abs and Rel pieces.
550 Move all SVGPath*.idl files into ksvg2/svg
552 * DerivedSources.make:
553 * WebCore.xcodeproj/project.pbxproj:
554 * bindings/scripts/CodeGeneratorJS.pm: Special case Abs and Rel header includes
555 * ksvg2/bindings/idl/svg/SVGAnimatedNumber.idl: Removed.
556 * ksvg2/bindings/idl/svg/SVGPathElement.idl: Removed.
557 * ksvg2/bindings/idl/svg/SVGPathSeg.idl: Removed.
558 * ksvg2/bindings/idl/svg/SVGPathSegArc.idl: Removed.
559 * ksvg2/bindings/idl/svg/SVGPathSegClosePath.idl: Removed.
560 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubic.idl: Removed.
561 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoCubicSmooth.idl: Removed.
562 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadratic.idl: Removed.
563 * ksvg2/bindings/idl/svg/SVGPathSegCurvetoQuadraticSmooth.idl: Removed.
564 * ksvg2/bindings/idl/svg/SVGPathSegLineto.idl: Removed.
565 * ksvg2/bindings/idl/svg/SVGPathSegLinetoHorizontal.idl: Removed.
566 * ksvg2/bindings/idl/svg/SVGPathSegLinetoVertical.idl: Removed.
567 * ksvg2/bindings/idl/svg/SVGPathSegList.idl: Removed.
568 * ksvg2/bindings/idl/svg/SVGPathSegMoveto.idl: Removed.
569 * ksvg2/ksvg.h: move SVGPathSegment enum
570 * ksvg2/svg/SVGPathElement.cpp: move SVGPathSegment enum
571 (WebCore::SVGPathElement::toPathData):
572 * ksvg2/svg/SVGPathSeg.cpp:
573 (WebCore::SVGPathSeg::SVGPathSeg):
574 * ksvg2/svg/SVGPathSeg.h:
575 (WebCore::SVGPathSeg::):
576 * ksvg2/svg/SVGPathSegArcAbs.idl: Added.
577 * ksvg2/svg/SVGPathSegArcRel.idl: Added.
578 * ksvg2/svg/SVGPathSegCurvetoCubicAbs.idl: Added.
579 * ksvg2/svg/SVGPathSegCurvetoCubicRel.idl: Added.
580 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothAbs.idl: Added.
581 * ksvg2/svg/SVGPathSegCurvetoCubicSmoothRel.idl: Added.
582 * ksvg2/svg/SVGPathSegCurvetoQuadraticAbs.idl: Added.
583 * ksvg2/svg/SVGPathSegCurvetoQuadraticRel.idl: Added.
584 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothAbs.idl: Added.
585 * ksvg2/svg/SVGPathSegCurvetoQuadraticSmoothRel.idl: Added.
586 * ksvg2/svg/SVGPathSegLinetoAbs.idl: Added.
587 * ksvg2/svg/SVGPathSegLinetoHorizontalAbs.idl: Added.
588 * ksvg2/svg/SVGPathSegLinetoHorizontalRel.idl: Added.
589 * ksvg2/svg/SVGPathSegLinetoRel.idl: Added.
590 * ksvg2/svg/SVGPathSegLinetoVerticalAbs.idl: Added.
591 * ksvg2/svg/SVGPathSegLinetoVerticalRel.idl: Added.
592 * ksvg2/svg/SVGPathSegMovetoAbs.idl: Added.
593 * ksvg2/svg/SVGPathSegMovetoRel.idl: Added.
595 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
597 Reviewed by Eric, landed by Anders.
599 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
601 Finish Unity merging. Remove libcurl usage, in favour of KIO.
602 This makes the regression testing fly! IO processing is way faster now.
605 * platform/ResourceLoaderInternal.h:
606 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
607 * platform/qt/FrameQt.cpp:
608 (WebCore::FrameQt::openURL):
609 (WebCore::FrameQt::submitForm):
610 (WebCore::FrameQt::urlSelected):
611 (WebCore::FrameQt::createEmptyDocument):
612 (WebCore::FrameQt::receivedData):
613 (WebCore::FrameQt::receivedAllData):
614 * platform/qt/FrameQt.h:
615 * platform/qt/ResourceLoaderCurl.cpp: Removed.
616 * platform/qt/ResourceLoaderManager.cpp:
617 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
618 (WebCore::ResourceLoaderManager::~ResourceLoaderManager):
619 (WebCore::ResourceLoaderManager::self):
620 (WebCore::ResourceLoaderManager::slotData):
621 (WebCore::ResourceLoaderManager::slotMimetype):
622 (WebCore::ResourceLoaderManager::slotResult):
623 (WebCore::ResourceLoaderManager::remove):
624 (WebCore::ResourceLoaderManager::add):
625 * platform/qt/ResourceLoaderManager.h:
626 * platform/qt/ResourceLoaderQt.cpp: Added.
627 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
628 (WebCore::ResourceLoader::~ResourceLoader):
629 (WebCore::ResourceLoader::start):
630 (WebCore::ResourceLoader::cancel):
631 (WebCore::ResourceLoader::assembleResponseHeaders):
632 (WebCore::ResourceLoader::retrieveCharset):
633 (WebCore::ResourceLoader::receivedResponse):
635 2006-08-29 Timothy Hatcher <timothy@apple.com>
639 Bug 10632: Objective-C DOM should use the @property syntax for DOM attributes
640 http://bugzilla.opendarwin.org/show_bug.cgi?id=10632
642 Generate @property when MACOSX_DEPLOYMENT_TARGET is >= 10.5.
643 This is backwards compatible with the getter/setter methods.
644 Generate setter arguments with a "new" prefix to avoid the property
645 name conflict warning. Also removes some whitespace and the comments
646 that we added to the headers. This makes the headers look like what we ship now.
648 * bindings/objc/DOMCSS.mm:
649 (-[DOMDocument getComputedStyle::]): renamed a local variable to avoid the property name conflict.
650 (-[DOMDocument getMatchedCSSRules::]): ditto.
651 * bindings/scripts/CodeGeneratorObjC.pm: generate @property in the headers.
653 2006-08-30 Nikolas Zimmermann <zimmermann@kde.org>
655 Reviewed and landed by Anders.
657 Fix time calculation, by using a correct calculation. Calling time()
658 returns a number of seconds, aka. an integer. Fix it by using gettimeofday().
659 Patch originally proposed by Ronan Meneu <rmeneu@origyn.fr>
661 * platform/qt/SystemTimeQt.cpp:
662 (WebCore::currentTime):
664 2006-08-29 Sam Weinig <sam.weinig@gmail.com>
668 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10628
669 Auto-generate the remaining Objective-C DOM bindings
671 Auto-generates DOMHTMLCollection, DOMHTMLElement, DOMHTMLFormElement,
672 and DOMHTMLOptionsCollection, and lays groundwork for the rest of the
673 HTML DOM bindings by adding/fixing the appropriate IDL's and updating
674 the CodeGeneratorObjC.pm build script.
676 * DerivedSources.make:
677 * WebCore.xcodeproj/project.pbxproj:
678 * bindings/objc/DOM.mm:
679 * bindings/objc/DOMExtensions.h:
680 * bindings/objc/DOMHTML.h:
681 * bindings/objc/DOMHTML.mm:
682 * bindings/objc/DOMHTMLInternal.h:
683 * bindings/scripts/CodeGeneratorObjC.pm:
684 * html/HTMLAnchorElement.idl:
685 * html/HTMLAreaElement.idl:
686 * html/HTMLBaseFontElement.idl:
687 * html/HTMLBodyElement.idl:
688 * html/HTMLButtonElement.idl:
689 * html/HTMLCollection.idl: Added.
690 * html/HTMLDocument.idl:
691 * html/HTMLElement.idl:
692 * html/HTMLFormElement.idl:
693 * html/HTMLFrameElement.idl: Added.
694 * html/HTMLFrameSetElement.idl: Added.
695 * html/HTMLIFrameElement.idl: Added.
696 * html/HTMLImageElement.idl:
697 * html/HTMLInputElement.idl:
698 * html/HTMLLabelElement.idl:
699 * html/HTMLLegendElement.idl:
700 * html/HTMLLinkElement.idl:
701 * html/HTMLMapElement.idl:
702 * html/HTMLObjectElement.idl: Added.
703 * html/HTMLOptionsCollection.idl:
704 * html/HTMLPreElement.idl:
705 * html/HTMLSelectElement.idl: Added.
706 * html/HTMLStyleElement.idl:
707 * html/HTMLTableCaptionElement.idl: Added.
708 * html/HTMLTableCellElement.idl: Added.
709 * html/HTMLTableColElement.idl: Added.
710 * html/HTMLTableElement.idl: Added.
711 * html/HTMLTableRowElement.idl: Added.
712 * html/HTMLTableSectionElement.idl: Added.
713 * html/HTMLTextAreaElement.idl:
715 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
717 Reviewed and landed by ap.
719 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10629.
720 Drawing convex polygons is broken in the Qt platform.
722 * platform/qt/GraphicsContextQt.cpp:
723 (WebCore::GraphicsContext::drawConvexPolygon):
725 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
729 Implementing font hashing properly, fixes weird crashes in HashMap.
731 * platform/qt/FontPlatformData.h:
732 * platform/qt/FontPlatformDataQt.cpp:
733 (WebCore::FontPlatformData::FontPlatformData):
734 (WebCore::FontPlatformData::hash):
736 2006-08-29 Nikolas Zimmermann <zimmermann@kde.org>
740 Fix scrollbars to reappear after the first layouting.
742 * platform/qt/ScrollViewQt.cpp:
743 (WebCore::ScrollView::suppressScrollBars):
745 2006-08-29 Anders Carlsson <acarlsson@apple.com>
747 Reviewed by Darin and Geoff.
749 Move the CF String functions to separate files in platform/cf.
750 Also, move the files in platform/cfnet to platform/cf.
752 * WebCore.xcodeproj/project.pbxproj:
753 * platform/PlatformString.h:
754 * platform/StringImpl.h:
755 * platform/cf/StringCF.cpp: Added.
756 (WebCore::String::String):
757 * platform/cf/StringImplCF.cpp: Added.
758 (WebCore::StringImpl::createCFString):
759 * platform/cfnet/KURLCFNet.cpp: Removed.
760 * platform/cfnet/ResourceLoaderCFNet.cpp: Removed.
761 * platform/mac/StringImplMac.mm:
762 * platform/mac/StringMac.mm:
764 2006-08-29 Geoffrey Garen <ggaren@apple.com>
766 Rolling out a change I included by accident in my last commit.
768 * bridge/mac/FrameMac.mm:
769 (WebCore::FrameMac::passMouseDownEventToWidget):
770 * platform/mac/SharedTimerMac.cpp:
771 (WebCore::setSharedTimerFireTime):
773 2006-08-28 Geoffrey Garen <ggaren@apple.com>
777 Added support for experimental CFNetwork-based loader (not turned on yet).
779 While I was there, I did the following platform cleanup:
780 - Windows now uses USE(WININET) instead of PLATFORM(WIN_OS), to match the
781 USE(CFNETWORK) idiom.
782 - Removed some #includes of windows.h in platform-independent headers.
783 - Changed #ifdef __APPLE__ to PLATFORM(MAC)
784 - Fixed some build bustage, including case-sensitive filesystem bustage.
787 (WebCore::Loader::receivedAllData):
790 * platform/ResourceLoader.h:
791 * platform/ResourceLoaderClient.h:
792 * platform/ResourceLoaderInternal.h:
793 (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
794 * platform/cfnet/KURLCFNet.cpp: Added.
795 (WebCore::KURL::createCFURL):
796 * platform/cfnet/ResourceLoaderCFNet.cpp: Added.
797 (WebCore::willSendRequest):
798 (WebCore::didReceiveChallenge):
799 (WebCore::didCancelChallenge):
800 (WebCore::didReceiveResponse):
801 (WebCore::didReceiveData):
802 (WebCore::didFinishLoading):
804 (WebCore::willCacheResponse):
805 (WebCore::addHeadersFromString):
806 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
807 (WebCore::ResourceLoader::~ResourceLoader):
808 (WebCore::arrayFromFormData):
809 (WebCore::emptyPerform):
810 (WebCore::runLoaderThread):
811 (WebCore::ResourceLoader::start):
812 (WebCore::ResourceLoader::cancel):
813 * platform/win/CursorWin.cpp:
815 2006-08-28 Justin Garcia <justin.garcia@apple.com>
819 <rdar://problem/4700341>
820 REGRESSION: In new mail message, caret isn't placed at end of line after redoing typing
822 * editing/ReplaceSelectionCommand.cpp:
823 (WebCore::ReplaceSelectionCommand::doApply): Added a FIXME.
825 (WebCore::Frame::reappliedEditing): Restore the endingSelection(), not the startingSelection().
827 2006-08-28 Tim Omernick <timo@apple.com>
829 Reviewed by John Sullivan.
831 Part of <rdar://problem/4481553> NetscapeMoviePlugIn example code scripting doesn't work in Firefox (4319)
832 <http://bugzilla.opendarwin.org/show_bug.cgi?id=4319>: NetscapeMoviePlugIn example code scripting doesn't work
835 No test cases added, since this is essentially a leak fix.
837 A brief history of NPP_GetValue(), NPObjects, and reference counting.
839 Earlier versions of WebKit incorrectly interpreted the NPRuntime reference counting rules. We failed to take
840 into account the fact that plug-ins are required to retain NPObjects before returning them. This creates several
841 classes of interesting plug-ins:
843 1) Plug-ins tested in WebKit and other browsers. These plug-ins may have WebKit-specific workarounds to not retain
844 the returned NPObject, thus avoiding the memory leak in WebKit.
846 2) Plug-ins tested only in other browsers. These plug-ins must already retain their NPObjects, since other browsers
847 implemented the NPRuntime retain/release rules correctly. These plug-ins likely work in WebKit, but probably leak
848 NPObjects since WebKit adds its own retain in addition to the plug-in's retain.
850 3) Plug-ins tested only in WebKit, that fail to retain their NPObjects before returning them.
851 Such plug-ins are guaranteed to crash in other browsers due to the missing expected retain. These plug-ins
852 work in older WebKits because WebKit did not expect the plug-in to retain the NPObject. Now that our retain
853 rules match other browsers, these plug-ins may crash due to the difference in retain/release behavior. We could
854 potentially detect that situation and correct it here, but I consider it a bug that the plug-in did not follow the
855 documented NPRuntime reference counting rules. Furthermore, it is extremely unlikely that someone would develop
856 a Netscape plug-in and test it *only* in WebKit. The entire purpose of creating a Netscape plugin is so that it
857 works in all browsers!
859 4) Plug-ins tested only in WebKit, that properly retain their NPObjects before returning them.
860 These plug-ins probably work in other browsers, and leak their NPObjects in older WebKits because of WebKit's
861 extra retain. A developer of this type of plug-in is probably unaware of the NPObject leak. A more savvy developer
862 would create a plug-in that fits into category #1.
864 I am changing our NPP_GetValue() behavior to match Firefox and other browsers -- the plug-in is now expected to retain the
865 returned NPObject, and the browser is expected to release it when done. This means that plug-ins in category #3 need to be
866 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
867 this needs to be handled specifically by WebKit.
869 * bridge/mac/FrameMac.mm:
870 Changed -pluginScriptableObject to -createPluginScriptableObject to make clearer the contract that the method must return a
871 retained NPObject. Also changed it to return an actual NPObject* instead of a void*. There is only one caller of this method,
872 and only one implementor. Using void* here is a needless abstraction. It's an NPObject*! Admit it!
873 (WebCore::getInstanceForView):
874 Release the NPObject after creating the bindings instance. This is the actual bug fix.
876 2006-08-28 Alice Liu <alice.liu@apple.com>
880 Fixed <rdar://problem/4548537> Document.domain and other attributes are blank for an iframe created with document.write
883 (WebCore::Document::open):
884 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()
886 (WebCore::Frame::didExplicitOpen):
887 set the frame's url to the document's url
889 2006-08-28 Brady Eidson <beidson@apple.com>
891 Reviewed by Adele and Adam
893 Added an optimization to return early if there's no replacements to be made
895 * platform/StringImpl.cpp:
896 (WebCore::StringImpl::replace):
898 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
900 Reviewed and landed by ap.
902 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
903 Provide stub implementation of RenderPopupMenuQt.
906 * platform/qt/RenderPopupMenuQt.cpp: Added.
907 (WebCore::RenderPopupMenuQt::RenderPopupMenuQt):
908 (WebCore::RenderPopupMenuQt::~RenderPopupMenuQt):
909 (WebCore::RenderPopupMenuQt::clear):
910 (WebCore::RenderPopupMenuQt::populate):
911 (WebCore::RenderPopupMenuQt::showPopup):
912 (WebCore::RenderPopupMenuQt::hidePopup):
913 (WebCore::RenderPopupMenuQt::addSeparator):
914 (WebCore::RenderPopupMenuQt::addGroupLabel):
915 (WebCore::RenderPopupMenuQt::addOption):
916 * platform/qt/RenderPopupMenuQt.h: Added.
917 * platform/qt/RenderThemeQt.cpp:
918 (WebCore::RenderThemeQt::systemFont):
919 (WebCore::RenderThemeQt::createPopupMenu):
921 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
923 Reviewed and landed by ap.
925 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
926 Offer QString -> DeprecatedString conversion.
928 * platform/DeprecatedString.h:
929 * platform/qt/StringQt.cpp:
930 (WebCore::DeprecatedString::DeprecatedString):
932 2006-08-28 Nikolas Zimmermann <zimmermann@kde.org>
934 Reviewed by Tim Hatcher.
936 Fixes one chunk of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10604
938 * platform/qt/RenderThemeQt.cpp:
939 (WebCore::RenderThemeQt::systemFont):
940 Remove annoying notImplemented() usage in systemFont()
942 2006-08-28 David Harrison <harrison@apple.com>
946 <rdar://problem/3942647> Support AXStyleTextMarkerRangeForTextMarker parameterized attribute
948 * bridge/mac/WebCoreAXObject.mm:
949 (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
950 Add AXStyleTextMarkerRangeForTextMarker.
954 Return first/last VisiblePosition in range having the same style has the specified VisiblePosition.
956 (-[WebCoreAXObject doAXStyleTextMarkerRangeForTextMarker:]):
957 Return AXTextMarkerRange for startOfStyleRange/endOfStyleRange of the specified AXTextMarker.
959 (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
960 Call doAXStyleTextMarkerRangeForTextMarker for AXStyleTextMarkerRangeForTextMarker.
962 2006-08-28 David Harrison <harrison@apple.com>
966 <rdar://problem/4517383> Hide all images used for spacing purpose in AX
968 * bridge/mac/WebCoreAXObject.mm:
969 (-[WebCoreAXObject accessibilityIsIgnored]):
970 Check for one-dimensional image
971 Check whether rendered image was stretched from one-dimensional file image
973 2006-08-27 Brady Eidson <beidson@apple.com>
977 Rewrote StringImpl::replace(UChar, StringImpl*)
979 * platform/StringImpl.cpp:
980 (WebCore::StringImpl::replace):
982 2006-08-27 Sam Weinig <sam.weinig@gmail.com>
986 - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=4624
987 WebCore needs autogenerated Obj-C DOM bindings
989 First round of auto-generated Objective C DOM bindings, starting
992 * DerivedSources.make:
993 * WebCore.xcodeproj/project.pbxproj:
994 * bindings/objc/DOM.mm:
995 (-[DOMNode description]):
996 (-[DOMNode KJS::Bindings::]):
997 (-[DOMNode dispatchEvent:]):
998 (-[DOMNamedNodeMap _initWithNamedNodeMap:]):
999 (+[DOMNamedNodeMap _namedNodeMapWith:]):
1000 (-[DOMNodeList _initWithNodeList:]):
1001 (+[DOMNodeList _nodeListWith:]):
1002 (-[DOMImplementation _initWithDOMImplementation:]):
1003 (+[DOMImplementation _DOMImplementationWith:]):
1004 (-[DOMImplementation _DOMImplementation]):
1005 (+[DOMDocumentFragment _documentFragmentWith:]):
1006 (-[DOMDocumentFragment _fragment]):
1007 (-[DOMDocument createCSSStyleDeclaration]):
1008 (+[DOMDocument _documentWith:]):
1009 (-[DOMDocument _document]):
1010 (-[DOMDocument _ownerElement]):
1011 (+[DOMAttr _attrWith:]):
1013 (+[DOMDocumentType _documentTypeWith:WebCore::]):
1014 (-[DOMDocumentType WebCore::]):
1015 (+[DOMText _textWith:WebCore::]):
1016 (+[DOMComment _commentWith:WebCore::]):
1017 (+[DOMCDATASection _CDATASectionWith:WebCore::]):
1018 (+[DOMProcessingInstruction _processingInstructionWith:WebCore::]):
1019 (+[DOMEntityReference _entityReferenceWith:WebCore::]):
1020 * bindings/objc/DOMCSS.h:
1021 * bindings/objc/DOMCSS.mm:
1022 * bindings/objc/DOMCore.h:
1023 * bindings/objc/DOMEvents.h:
1024 * bindings/objc/DOMEvents.mm:
1025 * bindings/objc/DOMExtensions.h:
1026 * bindings/objc/DOMHTML.mm:
1027 (+[DOMHTMLDocument _HTMLDocumentWith:WebCore::]):
1028 * bindings/objc/DOMHTMLInternal.h:
1029 * bindings/objc/DOMImplementationFront.h:
1030 * bindings/objc/DOMInternal.h:
1031 * bindings/objc/DOMNode.h: Added.
1032 * bindings/objc/DOMNode.mm: Added.
1033 (-[DOMNode dealloc]):
1034 (-[DOMNode finalize]):
1035 (-[DOMNode nodeName]):
1036 (-[DOMNode nodeValue]):
1037 (-[DOMNode setNodeValue:]):
1038 (-[DOMNode nodeType]):
1039 (-[DOMNode parentNode]):
1040 (-[DOMNode childNodes]):
1041 (-[DOMNode firstChild]):
1042 (-[DOMNode lastChild]):
1043 (-[DOMNode previousSibling]):
1044 (-[DOMNode nextSibling]):
1045 (-[DOMNode attributes]):
1046 (-[DOMNode ownerDocument]):
1047 (-[DOMNode insertBefore::]):
1048 (-[DOMNode replaceChild::]):
1049 (-[DOMNode removeChild:]):
1050 (-[DOMNode appendChild:]):
1051 (-[DOMNode hasChildNodes]):
1052 (-[DOMNode cloneNode:]):
1053 (-[DOMNode normalize]):
1054 (-[DOMNode isSupported::]):
1055 (-[DOMNode namespaceURI]):
1056 (-[DOMNode prefix]):
1057 (-[DOMNode setPrefix:]):
1058 (-[DOMNode localName]):
1059 (-[DOMNode hasAttributes]):
1060 (-[DOMNode isSameNode:]):
1061 (-[DOMNode isEqualNode:]):
1062 (-[DOMNode isDefaultNamespace:]):
1063 (-[DOMNode lookupPrefix:]):
1064 (-[DOMNode lookupNamespaceURI:]):
1065 (-[DOMNode textContent]):
1066 (-[DOMNode setTextContent:]):
1067 (-[DOMNode boundingBox]):
1068 (-[DOMNode lineBoxRects]):
1069 * bindings/objc/DOMObject.h: Added.
1070 * bindings/objc/DOMObject.mm: Added.
1071 (-[DOMObject init]):
1072 (-[DOMObject dealloc]):
1073 (-[DOMObject finalize]):
1074 (-[DOMObject copyWithZone:]):
1075 (-[DOMObject sheet]):
1076 * bindings/objc/DOMPrivate.h:
1077 * bindings/objc/DOMRange.h:
1078 * bindings/objc/DOMStylesheets.h:
1079 * bindings/objc/DOMTraversal.h:
1080 * bindings/objc/DOMViews.h:
1081 * bindings/objc/DOMViews.mm:
1082 * bindings/objc/DOMXPath.h:
1083 * bindings/objc/DOMXPath.mm:
1084 * bindings/scripts/CodeGenerator.pm:
1085 * bindings/scripts/CodeGeneratorJS.pm:
1086 * bindings/scripts/CodeGeneratorObjC.pm: Added.
1088 * dom/CDATASection.idl: Added.
1089 * dom/Comment.idl: Added.
1090 * dom/DOMImplementation.idl:
1093 * dom/EntityReference.idl: Added.
1094 * dom/NamedNodeMap.idl: Added.
1095 * dom/NodeList.idl: Added.
1096 * dom/ProcessingInstruction.idl:
1098 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
1102 Fix crash in LayoutTests/css1/font_properties/font.html,
1103 by implementing FontData::smallCapsFontData.
1105 * platform/qt/FontDataQt.cpp:
1106 (WebCore::FontData::platformDestroy):
1107 (WebCore::FontData::smallCapsFontData):
1109 2006-08-27 Brady Eidson <beidson@apple.com>
1113 Plugged a leak in StringImpl::replace()
1115 * platform/StringImpl.cpp:
1116 (WebCore::StringImpl::replace):
1118 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
1120 Reviewed and landed by Anders.
1122 Remove most annoying notImplemented() usages and
1123 implement some missing ScrollViewQt functions.
1124 Much nicer output when invoking run-webkit-tests.
1126 * platform/qt/FrameQt.cpp:
1127 (WebCore::FrameQt::saveDocumentState):
1128 (WebCore::FrameQt::restoreDocumentState):
1129 (WebCore::FrameQt::clearUndoRedoOperations):
1130 (WebCore::FrameQt::partClearedInBegin):
1131 * platform/qt/ResourceLoaderManager.cpp:
1132 (WebCore::headerCallback):
1133 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1134 * platform/qt/ScrollViewQt.cpp:
1135 (WebCore::ScrollView::updateContents):
1136 (WebCore::ScrollView::suppressScrollBars):
1137 (WebCore::ScrollView::setStaticBackground):
1138 (WebCore::ScrollView::addChild):
1139 (WebCore::ScrollView::removeChild):
1140 * platform/qt/TemporaryLinkStubs.cpp:
1141 (WebCore::historyContains):
1142 (WebCore::CheckCacheObjectStatus):
1143 (WebCore::CheckIfReloading):
1144 (loadResourceIntoArray):
1145 (WebCore::PlugInInfoStore::supportsMIMEType):
1147 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
1149 Reviewed and landed by Anders.
1151 Fix Qt build (add SVGMetaDataElement.cpp to build system)
1155 2006-08-27 Eric Seidel <eric@eseidel.com>
1157 Reviewed by andersca.
1159 No logic changes. Just cleanup.
1161 * ksvg2/svg/SVGAngle.cpp:
1162 (SVGAngle::SVGAngle):
1163 (SVGAngle::unitType):
1164 (SVGAngle::valueAsString):
1165 (SVGAngle::newValueSpecifiedUnits):
1166 (SVGAngle::convertToSpecifiedUnits):
1167 * ksvg2/svg/SVGAngle.h:
1168 * ksvg2/svg/SVGLength.cpp:
1169 (WebCore::SVGLength::unitType):
1170 (WebCore::SVGLength::newValueSpecifiedUnits):
1171 (WebCore::SVGLength::convertToSpecifiedUnits):
1172 (WebCore::SVGLength::updateValue):
1173 (WebCore::SVGLength::updateValueInSpecifiedUnits):
1174 * ksvg2/svg/SVGLength.h:
1175 * platform/BitmapImage.cpp: Removed.
1176 * platform/BitmapImage.h: Removed.
1178 2006-08-27 Brady Eidson <beidson@apple.com>
1182 -Changed all of the commonly used queries to keep around pre-prepared statements and bind
1183 their arguments instead of constructing a new, messy, string appended statement each time
1184 -Changed some code in pruneUnretainedIconsOnStartup regarding transactions
1186 * loader/icon/IconDatabase.cpp:
1187 (WebCore::IconDatabase::IconDatabase): Initializers
1188 (WebCore::IconDatabase::close): Wipe all the preprepared statements
1189 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Better handling of transactions
1190 (WebCore::readySQLStatement): Make sure a preprepared statement is ready to go for a fooQuery()
1191 (WebCore::IconDatabase::pageURLTableIsEmptyQuery): Added a comment
1192 (WebCore::IconDatabase::imageDataForIconURLQuery): Use preprepared statement + binding
1193 (WebCore::IconDatabase::timeStampForIconURLQuery): ditto
1194 (WebCore::IconDatabase::iconURLForPageURLQuery): ditto
1195 (WebCore::IconDatabase::forgetPageURLQuery): ditto
1196 (WebCore::IconDatabase::setIconIDForPageURLQuery): ditto
1197 (WebCore::IconDatabase::getIconIDForIconURLQuery): ditto
1198 (WebCore::IconDatabase::addIconForIconURLQuery): ditto
1199 (WebCore::IconDatabase::hasIconForIconURLQuery): ditto
1200 * loader/icon/IconDatabase.h: Added fooQuery() and *m_fooStatements
1201 * loader/icon/SQLStatement.h:
1202 (WebCore::SQLStatement::database): Added
1204 2006-08-27 Nikolas Zimmermann <zimmermann@kde.org>
1210 * platform/qt/ScrollViewQt.cpp:
1211 (WebCore::ScrollView::setHScrollBarMode):
1212 (WebCore::ScrollView::setVScrollBarMode):
1214 2006-08-27 Rob Buis <buis@kde.org>
1218 http://bugzilla.opendarwin.org/show_bug.cgi?id=10557
1219 KCanvasPath should be replace by platform/Path
1221 Refactoring out the KCanvasPath class.
1224 * WebCore.xcodeproj/project.pbxproj:
1225 * kcanvas/KCanvasCreator.cpp:
1226 (WebCore::KCanvasCreator::createRoundedRectangle):
1227 (WebCore::KCanvasCreator::createRectangle):
1228 (WebCore::KCanvasCreator::createEllipse):
1229 (WebCore::KCanvasCreator::createCircle):
1230 (WebCore::KCanvasCreator::createLine):
1231 * kcanvas/KCanvasCreator.h:
1232 * kcanvas/KCanvasPath.cpp: Removed.
1233 * kcanvas/KCanvasPath.h: Removed.
1234 * kcanvas/KCanvasResources.cpp:
1235 (WebCore::operator<<):
1236 (WebCore::KCanvasResource::clients):
1237 (WebCore::KCanvasResource::invalidate):
1238 (WebCore::KCanvasClipper::addClipData):
1239 * kcanvas/KCanvasResources.h:
1240 (WebCore::KCClipData::windRule):
1241 (WebCore::KCClipDataList::KCClipDataList):
1242 (WebCore::KCClipDataList::addPath):
1243 * kcanvas/KCanvasTreeDebug.cpp:
1244 (WebCore::operator<<):
1245 * kcanvas/RenderPath.cpp:
1246 (WebCore::RenderPath::fillContains):
1247 (WebCore::RenderPath::relativeBBox):
1248 (WebCore::RenderPath::setPath):
1249 (WebCore::RenderPath::path):
1250 (WebCore::RenderPath::paint):
1251 (WebCore::RenderPath::nodeAtPoint):
1252 * kcanvas/RenderPath.h:
1253 * kcanvas/device/KRenderingDevice.h:
1254 * kcanvas/device/KRenderingFillPainter.cpp:
1255 (WebCore::KRenderingFillPainter::fillRule):
1256 (WebCore::KRenderingFillPainter::setFillRule):
1257 * kcanvas/device/KRenderingFillPainter.h:
1258 * kcanvas/device/qt/KCanvasClipperQt.cpp:
1259 (WebCore::KCanvasClipperQt::applyClip):
1260 * kcanvas/device/qt/KCanvasPathQt.cpp: Removed.
1261 * kcanvas/device/qt/KCanvasPathQt.h: Removed.
1262 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
1263 (WebCore::KRenderingDeviceContextQt::addPath):
1264 (WebCore::KRenderingDeviceContextQt::setFillRule):
1265 (WebCore::KRenderingDeviceQt::createItem):
1266 * kcanvas/device/qt/KRenderingDeviceQt.h:
1267 * kcanvas/device/qt/RenderPathQt.cpp:
1268 (WebCore::RenderPathQt::drawMarkersIfNeeded):
1269 (WebCore::RenderPathQt::strokeContains):
1270 (WebCore::getPathStroke):
1271 (WebCore::RenderPathQt::strokeBBox):
1272 * kcanvas/device/qt/RenderPathQt.h:
1273 * kcanvas/device/quartz/KCanvasItemQuartz.h:
1274 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1275 (WebCore::KCanvasItemQuartz::drawMarkersIfNeeded):
1276 (WebCore::KCanvasItemQuartz::strokeBBox):
1277 (WebCore::KCanvasItemQuartz::strokeContains):
1278 * kcanvas/device/quartz/KCanvasPathQuartz.h: Removed.
1279 * kcanvas/device/quartz/KCanvasPathQuartz.mm: Removed.
1280 * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
1281 (WebCore::KCanvasClipperQuartz::applyClip):
1282 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1283 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1284 (WebCore::KRenderingDeviceContextQuartz::addPath):
1285 (WebCore::KRenderingDeviceQuartz::createItem):
1286 * kcanvas/device/quartz/QuartzSupport.h:
1287 * kcanvas/device/quartz/QuartzSupport.mm:
1288 (WebCore::scratchContext):
1289 (WebCore::strokeBoundingBox):
1290 (WebCore::pathContainsPoint):
1291 * ksvg2/css/SVGCSSParser.cpp:
1292 (WebCore::CSSParser::parseSVGValue):
1293 * ksvg2/css/SVGCSSStyleSelector.cpp:
1294 (WebCore::CSSStyleSelector::applySVGProperty):
1295 * ksvg2/css/SVGRenderStyle.h:
1296 (WebCore::SVGRenderStyle::InheritedFlags::):
1297 * ksvg2/css/SVGRenderStyleDefs.h:
1298 * ksvg2/misc/KCanvasRenderingStyle.cpp:
1299 (WebCore::KSVGPainterFactory::fillPainter):
1300 * ksvg2/svg/SVGCircleElement.cpp:
1301 (SVGCircleElement::toPathData):
1302 * ksvg2/svg/SVGCircleElement.h:
1303 * ksvg2/svg/SVGClipPathElement.cpp:
1304 (SVGClipPathElement::canvasResource):
1305 * ksvg2/svg/SVGEllipseElement.cpp:
1306 (WebCore::SVGEllipseElement::toPathData):
1307 * ksvg2/svg/SVGEllipseElement.h:
1308 * ksvg2/svg/SVGGradientElement.cpp:
1309 (SVGGradientElement::notifyAttributeChange):
1310 * ksvg2/svg/SVGImageElement.cpp:
1311 * ksvg2/svg/SVGLineElement.cpp:
1312 (SVGLineElement::toPathData):
1313 * ksvg2/svg/SVGLineElement.h:
1314 * ksvg2/svg/SVGMaskElement.cpp:
1315 * ksvg2/svg/SVGPathElement.cpp:
1316 (WebCore::SVGPathElement::toPathData):
1317 * ksvg2/svg/SVGPathElement.h:
1318 * ksvg2/svg/SVGPatternElement.cpp:
1319 (WebCore::SVGPatternElement::notifyClientsToRepaint):
1320 * ksvg2/svg/SVGPolygonElement.cpp:
1321 (SVGPolygonElement::toPathData):
1322 * ksvg2/svg/SVGPolygonElement.h:
1323 * ksvg2/svg/SVGPolylineElement.cpp:
1324 (SVGPolylineElement::toPathData):
1325 * ksvg2/svg/SVGPolylineElement.h:
1326 * ksvg2/svg/SVGRectElement.cpp:
1327 (WebCore::SVGRectElement::toPathData):
1328 * ksvg2/svg/SVGRectElement.h:
1329 * ksvg2/svg/SVGStyledElement.cpp:
1330 (WebCore::SVGStyledElement::createRenderer):
1331 * ksvg2/svg/SVGStyledElement.h:
1332 (WebCore::SVGStyledElement::toPathData):
1333 * ksvg2/svg/SVGTextContentElement.cpp:
1334 * ksvg2/svg/SVGTextElement.cpp:
1337 (WebCore::Path::setWindingRule):
1338 (WebCore::Path::windingRule):
1339 * platform/cg/PathCG.cpp:
1340 (WebCore::Path::contains):
1341 (WebCore::Path::isEmpty):
1342 (WebCore::CGPathToCFStringApplierFunction):
1343 (WebCore::CFStringFromCGPath):
1344 (WebCore::Path::debugString):
1345 * platform/qt/FrameQt.cpp:
1346 (WebCore::FrameQt::openURL):
1347 * platform/qt/PathQt.cpp:
1348 (WebCore::Path::contains):
1349 (WebCore::Path::isEmpty):
1350 (WebCore::Path::debugString):
1352 2006-08-26 Eric Seidel <eric@eseidel.com>
1356 pointer-events attribute does not work.
1357 http://bugzilla.opendarwin.org/show_bug.cgi?id=10415
1359 * kcanvas/RenderPath.cpp:
1360 (WebCore::RenderPath::pointerEventsHitRules): new function to contain pointer-events hit logic
1361 (WebCore::RenderPath::nodeAtPoint): respect pointer-events property
1362 * kcanvas/RenderPath.h:
1363 (WebCore::RenderPath::PointerEventsHitRules::PointerEventsHitRules):
1364 * ksvg2/css/SVGCSSParser.cpp:
1365 (WebCore::CSSParser::parseSVGValue):
1366 * ksvg2/svg/SVGPaint.cpp: Fix this to use a real enum value
1367 (WebCore::SVGPaint::SVGPaint):
1368 (WebCore::SVGPaint::paintType):
1369 (WebCore::SVGPaint::uri):
1370 (WebCore::SVGPaint::setUri):
1371 (WebCore::SVGPaint::setPaint):
1372 * ksvg2/svg/SVGPaint.h:
1374 2006-08-27 Rob Buis <buis@kde.org>
1378 http://bugzilla.opendarwin.org/show_bug.cgi?id=10558
1379 SVG should have support for <metadata> element
1381 Add support for metadata tag.
1383 * DerivedSources.make:
1384 * WebCore.xcodeproj/project.pbxproj:
1385 * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
1386 * ksvg2/svg/SVGMetadataElement.cpp: Added.
1387 (SVGMetadataElement::SVGMetadataElement):
1388 (SVGMetadataElement::~SVGMetadataElement):
1389 * ksvg2/svg/SVGMetadataElement.h: Added.
1390 * ksvg2/svg/SVGMetadataElement.idl: Added.
1391 * ksvg2/svg/svgtags.in:
1393 2006-08-26 Nikolas Zimmermann <zimmermann@kde.org>
1397 Daily Qt build fixes :-)
1399 * platform/qt/GraphicsContextQt.cpp:
1400 (WebCore::GraphicsContext::drawConvexPolygon):
1401 * platform/qt/ImageQt.cpp:
1402 (WebCore::Image::initPlatformData):
1403 (WebCore::Image::invalidatePlatformData):
1404 (WebCore::Image::loadPlatformResource):
1406 2006-08-26 David Hyatt <hyatt@apple.com>
1408 Fix the ifdef in Path.h to be CG.
1412 2006-08-26 David Hyatt <hyatt@apple.com>
1414 Fix Mac build bustage (lots of float/int confusion). I am not sure
1415 whether rounding was desired or not... this is just a band-aid to get
1416 the build working again.
1418 * rendering/RenderThemeMac.mm:
1419 (WebCore::RenderThemeMac::paintMenuListButtonGradients):
1420 (WebCore::RenderThemeMac::paintMenuListButton):
1421 (WebCore::RenderThemeMac::adjustMenuListButtonStyle):
1423 2006-08-25 David Hyatt <hyatt@apple.com>
1425 More refactoring of image to disentangle graphics (e.g., Cairo) from
1426 platform (e.g., Windows).
1428 * WebCore.vcproj/WebCore/WebCore.vcproj:
1429 Add ImageWin to project.
1432 (WebCore::Cache::init):
1433 * loader/icon/IconDataCache.cpp:
1434 (WebCore::IconDataCache::loadImageFromResource):
1435 Renamed loadResource to loadPlatformResource to try to make it more clear
1436 that this call is implemented on each OS (and not by graphics libraries).
1438 * platform/Image.cpp:
1439 (WebCore::Image::Image):
1440 (WebCore::Image::~Image):
1441 (WebCore::Image::invalidateData):
1442 (WebCore::Image::size):
1443 (WebCore::Image::setData):
1444 (WebCore::Image::setNativeData):
1445 Fix up the PDF code to not be considered platform data any more, since
1446 PDF rendering is not for a specific OS.
1448 Renamed the methods that set OS-specific data (like NSImage) to PlatformData
1449 instead of NativeData.
1452 Shifted the PDF members into CG defines. Made CGImageRef a CG define.
1453 Renamed methods to reflect that they are OS-specific and not
1454 graphics-library-specific.
1456 * platform/cairo/ImageCairo.cpp:
1457 Removed the platform data methods. Other platforms besides Windows that
1458 use Cairo will need to account for this change by adding these methods
1459 to their OS Image***.cpp file.
1461 * platform/cg/ImageCG.cpp:
1462 (WebCore::Image::drawTiled):
1463 Add FIXMEs to the wkpattern stuff.
1465 * platform/cg/PDFDocumentImage.cpp:
1466 Shouldn't have #imports in .cpp.
1468 * platform/mac/ImageMac.mm:
1469 (WebCore::Image::initPlatformData):
1470 (WebCore::Image::invalidatePlatformData):
1471 (WebCore::Image::loadPlatformResource):
1472 (WebCore::Image::getTIFFRepresentation):
1473 Add the platform data initializers to the Mac Image file. Move the
1474 TIFF representation there as well, since this is only used by Mac code.
1476 * platform/win/ImageWin.cpp: Added.
1477 (WebCore::Image::initPlatformData):
1478 (WebCore::Image::invalidatePlatformData):
1479 (WebCore::Image::loadPlatformResource):
1480 (WebCore::Image::supportsType):
1481 Similar work for Windows. Add stubs for possible future HBITMAP returns
1482 in the platform data methods.
1484 * rendering/RenderLayer.cpp:
1485 (WebCore::RenderLayer::paintResizeControl):
1486 * rendering/RenderThemeMac.mm:
1487 (WebCore::RenderThemeMac::paintResizeControl):
1488 loadResource -> loadPlatformResource
1490 2006-08-26 Adam Roben <aroben@apple.com>
1492 Rubber-stamped by Adele.
1496 * platform/cairo/GraphicsContextCairo.cpp:
1497 (WebCore::GraphicsContext::drawConvexPolygon):
1499 2006-08-25 Adele Peterson <adele@apple.com>
1501 Patch by Francisco, Reviewed by me.
1503 Preparation for switch to new text field implementation of password field.
1505 Added -webkit-text-security property.
1507 Tests: updated fast/css/computed-style-expected.txt
1509 * css/CSSPropertyNames.in: Added -webkit-text-security.
1510 * css/CSSComputedStyleDeclaration.cpp:
1512 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added cases for textSecurity.
1513 * css/cssparser.cpp: (WebCore::CSSParser::parseValue): ditto.
1514 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
1515 * css/html4.css: Added style for password field to use -webkit-text-security.
1517 * html/HTMLInputElement.cpp: Check appearance property to decide which renderer to use.
1518 (WebCore::HTMLInputElement::selectionStart):
1519 (WebCore::HTMLInputElement::selectionEnd):
1520 (WebCore::HTMLInputElement::setSelectionStart):
1521 (WebCore::HTMLInputElement::setSelectionEnd):
1522 (WebCore::HTMLInputElement::select):
1523 (WebCore::HTMLInputElement::setSelectionRange):
1524 (WebCore::HTMLInputElement::createRenderer):
1525 * html/HTMLInputElement.h: (WebCore::HTMLInputElement::isNonWidgetTextField): Added check for password.
1527 * platform/StringImpl.cpp: (WebCore::StringImpl::secure): Added. Converts a string to replace
1528 characters with one character, like a bullet.
1529 * platform/StringImpl.h:
1531 * rendering/RenderStyle.cpp:
1532 (WebCore::StyleCSS3InheritedData::StyleCSS3InheritedData): Initialize textSecurity.
1533 (WebCore::RenderStyle::diff): Added case for textSecurity.
1534 * rendering/RenderStyle.h:
1536 (WebCore::RenderStyle::textSecurity): Added.
1537 (WebCore::RenderStyle::setTextSecurity): Added.
1538 (WebCore::RenderStyle::initialTextSecurity): Added.
1539 * rendering/RenderText.cpp:
1540 (WebCore::RenderText::setStyle): Added case for textSecurity.
1541 (WebCore::RenderText::setText): ditto.
1543 2006-08-25 Adele Peterson <adele@apple.com>
1547 Enable styling for popup menus. Also fixed baseline calculation for buttons and selects.
1549 Tests: fast/forms/select-baseline.html
1550 fast/borders/borderRadiusInvalidColor.html
1551 updated: fast/forms/select-style-expected.txt and more...
1553 * css/html4.css: Added style rules for styled select elements.
1555 * platform/GraphicsContext.h: Added argument for antialiasing.
1556 * platform/cg/GraphicsContextCG.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
1557 * platform/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::drawConvexPolygon): ditto.
1559 * rendering/RenderObject.cpp:
1560 (WebCore::RenderObject::drawBorderArc): Added textColor argument so this can be used when the border color is invalid.
1561 (WebCore::RenderObject::drawBorder): Removed invalidisInvert since its dead code
1562 (any callers that set this to true were already ensuring that their color was valid).
1563 Updated drawConvexPolygon call to use FloatPoints instead of IntPoints.
1564 (WebCore::RenderObject::paintBorder): Updated to remove invalidisInvert argument from drawBorder call.
1565 (WebCore::RenderObject::paintOutline): ditto.
1566 * rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutlineForLine): ditto.
1567 * rendering/RenderObject.h: Updated arguments for drawBorder and drawBorderArc.
1569 * rendering/RenderBlock.cpp: (WebCore::RenderBlock::getBaselineOfLastLineBox): Changed isRootLineBox argument to true when setting line height.
1570 Added case for when there's no children to check for hasLineIfEmpty.
1571 * rendering/RenderBlock.h:
1572 * rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): Changed isRootLineBox argument to true when setting line height.
1573 * rendering/RenderButton.h: (WebCore::RenderButton::hasLineIfEmpty): Added so buttons always get a line height.
1574 * rendering/RenderMenuList.h: (WebCore::RenderMenuList::hasLineIfEmpty): ditto.
1575 * rendering/RenderFlexibleBox.cpp:
1576 (WebCore::RenderFlexibleBox::layoutHorizontalBox): Added code to check hasLineIfEmpty to give flex boxes line height.
1577 (WebCore::RenderFlexibleBox::layoutVerticalBox): ditto.
1579 * css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::adjustRenderStyle): Moved the appearance adjustment code into adjust style.
1580 * rendering/RenderBox.cpp: (WebCore::RenderBox::paintBoxDecorations): Lets the theme paint "decorations", like the arrow control and gradients
1581 immediately after painting the background.
1583 * rendering/RenderTheme.cpp:
1584 (WebCore::RenderTheme::adjustStyle): This now checks whether the control is styled, and adjusts the appearance property appropriately.
1585 For styled selects, instead of setting the appearance to none, which is what we do for other styled controls, we set the appearance
1586 to MenulistButtonAppearance, which indicates that we will draw the arrow controls and button appearance in the engine.
1587 (WebCore::RenderTheme::paintDecorations): Added. Paints MenulistButtonAppearance in a different function,
1588 so the arrow control will draw at the right time (after the background).
1589 (WebCore::RenderTheme::paint): Added case for MenulistButtonAppearance.
1590 (WebCore::RenderTheme::paintBorderOnly): ditto.
1591 (WebCore::RenderTheme::isControlContainer): Removed cases for MenuListAppearance and MenulistButtonAppearance since the baseline is no longer provided by the theme.
1592 (WebCore::RenderTheme::adjustMenuListButtonStyle): Added.
1593 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintMenuListButton): Added.
1595 * rendering/RenderThemeMac.h:
1596 * rendering/RenderThemeMac.mm:
1597 (WebCore::RenderThemeMac::isControlStyled): Removed code that made selects unstyle-able.
1598 (WebCore::RenderThemeMac::baselinePosition): Removed cases for MenuListAppearance and MenulistButtonAppearance.
1599 (WebCore::RenderThemeMac::popupButtonPadding): Added top and bottom padding so empty popups have the right baseline.
1600 (WebCore::TopGradientInterpolate): Added.
1601 (WebCore::BottomGradientInterpolate): Added.
1602 (WebCore::MainGradientInterpolate): Added.
1603 (WebCore::RenderThemeMac::paintMenuListButtonGradients): Added. Draws gradients for styled popup menu button appearance.
1604 (WebCore::RenderThemeMac::paintMenuListButton): Calls paintMenuListButtonGradients, and draws arrow control.
1605 (WebCore::RenderThemeMac::adjustMenuListButtonStyle): Added to set padding and border radius to account for the arrow control size and font size.
1607 2006-08-25 Brady Eidson <beidson@apple.com>
1611 Changed some time()-related code to be more platform independent
1613 * loader/icon/IconDatabase.cpp:
1614 (WebCore::IconDatabase::isIconExpiredForIconURL):
1615 (WebCore::IconDatabase::getOrCreateIconDataCache):
1616 (WebCore::IconDatabase::setIconDataForIconURL):
1618 2006-08-25 David Harrison <harrison@apple.com>
1622 <rdar://problem/4416432> Radio buttons and Checkboxes in AXWebAreas don't fill in their AXTitle attribute
1624 * bridge/mac/WebCoreAXObject.mm:
1626 New. Returns the HTMLLabelElement, if any, for the specified Element.
1628 (-[WebCoreAXObject title]):
1629 For input elements, return the innerHTML() of the labelForElement().
1631 2006-08-25 Brady Eidson <beidson@apple.com>
1633 Reviewed by Tim Hatcher
1635 Changed some debugging-only code to be more platform independent
1637 * WebCore.xcodeproj/project.pbxproj:
1638 * loader/icon/IconDatabase.cpp:
1639 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
1640 (WebCore::IconDatabase::syncDatabase):
1642 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1644 Reviewed/landed by Adam.
1646 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10561
1647 Qt platform build fixes.
1649 * platform/qt/FrameQt.h:
1650 * platform/qt/ScreenQt.cpp:
1651 (WebCore::qwidgetForPage):
1652 (WebCore::screenRect):
1653 (WebCore::screenDepth):
1654 (WebCore::usableScreenRect):
1655 * platform/qt/TemporaryLinkStubs.cpp:
1656 (WebCore::screenDepthPerComponent):
1657 (WebCore::screenIsMonochrome):
1658 * platform/qt/WidgetQt.cpp:
1660 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1662 Reviewed/landed by Adam.
1664 Finally fix font caching. WebKit+Qt now works
1665 out of the box without any further patches :-)
1667 * platform/qt/FontDataQt.cpp:
1668 (WebCore::FontData::platformDestroy):
1669 * platform/qt/FontPlatformData.h:
1670 * platform/qt/FontPlatformDataQt.cpp:
1671 (WebCore::FontPlatformData::FontPlatformData):
1672 (WebCore::FontPlatformData::isFixedPitch):
1673 (WebCore::FontPlatformData::font):
1674 (WebCore::FontPlatformData::fontPtr):
1675 (WebCore::FontPlatformData::hash):
1676 (WebCore::FontPlatformData::operator==):
1678 2006-08-25 Nikolas Zimmermann <zimmermann@kde.org>
1680 Reviewed/landed by Adam.
1682 Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10559
1683 Confirm to WebKit style guide - last fixes :-)
1685 * platform/ResourceLoaderClient.h:
1686 * platform/qt/ComboBoxQt.cpp:
1687 * platform/qt/FrameQt.cpp:
1688 (WebCore::doScroll):
1689 (WebCore::FrameQt::FrameQt):
1690 (WebCore::FrameQt::openURL):
1691 (WebCore::FrameQt::submitForm):
1692 (WebCore::FrameQt::setTitle):
1693 (WebCore::FrameQt::passSubframeEventToSubframe):
1694 (WebCore::FrameQt::registerCommandForUndo):
1695 (WebCore::FrameQt::registerCommandForRedo):
1696 (WebCore::FrameQt::keyEvent):
1697 (WebCore::FrameQt::setFrameGeometry):
1698 * platform/qt/GlyphMapQt.cpp:
1699 (WebCore::GlyphMap::fillPage):
1700 * platform/qt/GraphicsContextQt.cpp:
1701 (WebCore::toQtCompositionMode):
1702 (WebCore::toQtLineCap):
1703 (WebCore::toQtLineJoin):
1704 (WebCore::TextShadow::TextShadow):
1705 (WebCore::GraphicsContextPlatformPrivate::p):
1706 * platform/qt/ImageQt.cpp:
1707 (WebCore::FrameData::clear):
1708 (WebCore::Image::supportsType):
1709 * platform/qt/IntSizeQt.cpp:
1710 * platform/qt/LineEditQt.cpp:
1711 * platform/qt/ListBoxQt.cpp:
1712 * platform/qt/PageQt.cpp:
1713 (WebCore::Page::windowRect):
1714 * platform/qt/PathQt.cpp:
1715 (WebCore::Path::~Path):
1716 * platform/qt/ResourceLoaderCurl.cpp:
1717 (WebCore::ResourceLoader::assembleResponseHeaders):
1718 (WebCore::ResourceLoader::retrieveCharset):
1719 (WebCore::ResourceLoader::receivedResponse):
1720 * platform/qt/ResourceLoaderManager.cpp:
1721 (WebCore::headerCallback):
1722 (WebCore::ResourceLoaderManager::downloadTimerCallback):
1723 (WebCore::ResourceLoaderManager::add):
1724 * platform/qt/ScreenQt.cpp:
1725 (WebCore::screenRect):
1726 (WebCore::usableScreenRect):
1727 * platform/qt/ScrollViewQt.cpp:
1728 (WebCore::ScrollView::ScrollView):
1729 (WebCore::ScrollView::~ScrollView):
1730 (WebCore::ScrollView::setParentWidget):
1731 (WebCore::ScrollView::addChild):
1732 * platform/qt/SharedTimerQt.cpp:
1733 (WebCore::setSharedTimerFiredFunction):
1734 * platform/qt/SharedTimerQt.h:
1735 (WebCore::SharedTimerQt::SharedTimerQt):
1736 (WebCore::SharedTimerQt::fire):
1737 * platform/qt/SystemTimeQt.cpp:
1738 (WebCore::currentTime):
1739 * platform/qt/TextEditQt.cpp:
1740 (WebCore::PlatformTextEdit::setParentWidget):
1741 (WebCore::PlatformTextEdit::text):
1742 (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
1744 2006-08-24 David Harrison <harrison@apple.com>
1749 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
1751 Fix bug I introduced in r15959.
1753 * bridge/mac/WebCoreAXObject.mm:
1754 (-[WebCoreAXObject accessibilityAttributeValue:]):
1755 Use topDocument in case we are in a subframe (we want the start/end of the overall page).
1757 2006-08-24 Brady Eidson <beidson@apple.com>
1761 Fixed my previous checkin, which was pruning the users entire icon db on startup everytime
1763 * loader/icon/IconDatabase.cpp:
1764 (WebCore::IconDatabase::retainIconForPageURL): Bind the PageURL to argument 1, as SQL bindings
1765 are indexed to 1, not 0
1767 2006-08-24 Geoffrey Garen <ggaren@apple.com>
1771 Frame refactoring: changed FrameView clients so they no longer assume that
1772 FrameViews are Widgets that can tell you things about the platform, in
1773 preparation for divorcing FrameViews from heavy-weight Widgets altogether.
1775 This patch makes Page, rather than Widget, responsible for answering
1776 questions about the screen (scale factor, color depth, etc.). Refactoring
1777 aside, I think this makes more sense, since (a) the screen has nothing to do
1778 with any particular widget and (b) Page was already half-responsible for
1779 answering those questions, anyway.
1781 Plus some random Windows build fix goodness.
1783 Layout tests still pass.
1785 2006-08-24 Timothy Hatcher <timothy@apple.com>
1789 Allow changing the background color WebCore draws under transparent page backgrounds.
1790 No automated way to test. All tests pass, no performance regression.
1792 * bridge/mac/WebCoreFrameBridge.h:
1793 * bridge/mac/WebCoreFrameBridge.mm:
1794 (-[WebCoreFrameBridge setBaseBackgroundColor:]):
1795 * page/FrameView.cpp:
1796 (WebCore::FrameViewPrivate::FrameViewPrivate):
1797 (WebCore::FrameView::baseBackgroundColor):
1798 (WebCore::FrameView::setBaseBackgroundColor):
1800 * rendering/RenderBox.cpp:
1801 (WebCore::RenderBox::paintBackgroundExtended):
1802 * rendering/RenderView.cpp:
1803 (WebCore::RenderView::paintBoxDecorations):
1805 2006-08-24 Darin Adler <darin@apple.com>
1809 - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10169
1810 REGRESSION: NativeTextArea: Text dragged from <input type=text> to textarea disappears
1811 - eliminate the EditCommandPtr class from editing; use PassRefPtr and RefPtr instead
1812 - other editing-related cleanup
1814 Test: fast/forms/drag-into-textarea.html
1816 * bridge/mac/FrameMac.h: Changed EditCommandPtr parameters to use PassRefPtr<EditCommand> instead.
1817 * bridge/win/FrameWin.h: Ditto.
1818 * bridge/mac/FrameMac.mm:
1819 (WebCore::FrameMac::registerCommandForUndoOrRedo): Ditto.
1820 (WebCore::FrameMac::registerCommandForUndo): Ditto.
1821 (WebCore::FrameMac::registerCommandForRedo): Ditto.
1823 * bridge/mac/WebCoreFrameBridge.mm:
1824 (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
1825 Use applyCommand instead of EditCommandPtr. Also remove now-unneeded document parameter.
1826 (-[WebCoreFrameBridge moveSelectionToDragCaret:smartMove:]): Ditto.
1827 (-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]): Ditto.
1829 * editing/AppendNodeCommand.h: Removed document parameter from constructor. Changed new child
1830 parameter to be a PassRefPtr. Reversed order of child and parent parameters.
1831 * editing/AppendNodeCommand.cpp:
1832 (WebCore::AppendNodeCommand::AppendNodeCommand): Ditto.
1833 (WebCore::AppendNodeCommand::doApply): Ditto.
1834 (WebCore::AppendNodeCommand::doUnapply): Ditto.
1836 * editing/ApplyStyleCommand.h: Removed document parameter from constructor.
1837 * editing/ApplyStyleCommand.cpp: (WebCore::ApplyStyleCommand::ApplyStyleCommand): Ditto.
1839 * editing/BreakBlockquoteCommand.h: Removed unneeded include of DeprecatedPtrList.h.
1840 * editing/BreakBlockquoteCommand.cpp: Moved the include of DeprecatedPtrList.h here.
1841 (WebCore::BreakBlockquoteCommand::doApply): Changed code to construct a Selection explicitly
1842 since setEndingSelection is no longer overloaded for Position.
1844 * editing/CompositeEditCommand.h: Added isFirstCommand function. Changed m_cmds from
1845 a DeprecatedValueList<EditCommandPtr> to a Vector<RefPtr<EditCommand>> and renamed it
1846 m_commands and made both doUnapply and doReapply private.
1847 * editing/CompositeEditCommand.cpp:
1848 (WebCore::CompositeEditCommand::doUnapply): Rewrote to use m_commands.
1849 (WebCore::CompositeEditCommand::doReapply): Ditto.
1850 (WebCore::CompositeEditCommand::applyCommandToComposite): Removed code to explicitly set up
1851 starting and ending selection -- now done inside setParent. Rewrote to use m_commands.
1852 (WebCore::CompositeEditCommand::applyStyle): Changed to not use EditCommandPtr.
1853 (WebCore::CompositeEditCommand::applyStyledElement): Ditto.
1854 (WebCore::CompositeEditCommand::removeStyledElement): Ditto.
1855 (WebCore::CompositeEditCommand::insertParagraphSeparator): Ditto.
1856 (WebCore::CompositeEditCommand::insertNodeBefore): Ditto.
1857 (WebCore::CompositeEditCommand::appendNode): Ditto.
1858 (WebCore::CompositeEditCommand::removeNode): Ditto.
1859 (WebCore::CompositeEditCommand::removeNodePreservingChildren): Ditto.
1860 (WebCore::CompositeEditCommand::splitTextNode): Ditto.
1861 (WebCore::CompositeEditCommand::splitElement): Ditto.
1862 (WebCore::CompositeEditCommand::mergeIdenticalElements): Ditto.
1863 (WebCore::CompositeEditCommand::wrapContentsInDummySpan): Ditto.
1864 (WebCore::CompositeEditCommand::splitTextNodeContainingElement): Ditto.
1865 (WebCore::CompositeEditCommand::joinTextNodes): Ditto.
1866 (WebCore::CompositeEditCommand::inputText): Ditto.
1867 (WebCore::CompositeEditCommand::insertTextIntoNode): Ditto.
1868 (WebCore::CompositeEditCommand::deleteTextFromNode): Ditto.
1869 (WebCore::CompositeEditCommand::replaceTextInNode): Ditto.
1870 (WebCore::CompositeEditCommand::deleteSelection): Ditto.
1871 (WebCore::CompositeEditCommand::removeCSSProperty): Ditto.
1872 (WebCore::CompositeEditCommand::removeNodeAttribute): Ditto. Also fixed a bug where the code
1873 would not remove an empty attribute -- will not come up in practice, but wrong in theory.
1874 (WebCore::CompositeEditCommand::setNodeAttribute): Changed to not use EditCommandPtr.
1875 (WebCore::CompositeEditCommand::rebalanceWhitespaceAt): Ditto.
1876 (WebCore::CompositeEditCommand::deleteInsignificantText): Rewrote to use a for loop.
1877 (WebCore::CompositeEditCommand::moveParagraphs): Changed to not use EditCommandPtr.
1878 (WebCore::CompositeEditCommand::breakOutOfEmptyListItem): Changed code to construct a
1879 Selection explicitly since setEndingSelection is no longer overloaded for Position.
1880 (WebCore::createBlockPlaceholderElement): Collapsed this code so that the
1881 block placeholder class string is no longer spread across multiple functions.
1882 Perhaps we can get rid of this altogether at some point.
1884 * editing/DeleteFromTextNodeCommand.h: Removed unneeded document parameter from one constructor.
1885 Also removed unneeded destructor.
1886 * editing/DeleteFromTextNodeCommand.cpp:
1887 (WebCore::DeleteFromTextNodeCommand::DeleteFromTextNodeCommand): Ditto.
1889 * editing/DeleteSelectionCommand.h: Removed unneeded document parameter from one constructor.
1890 * editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Ditto.
1892 * editing/EditCommand.h: Removed ECommandState, isCompositeStep(), parent(), state(), setState(),
1893 and most overloads of setStartingSelection() and setEndingSelection(). Made document() protected
1894 and non-virtual. Made setStartingSelection() setEndingSelection(), and styleAtPosition() protected.
1895 Made doApply(), doUnapply(), and doReapply() private. Added startingRootEditableElement(),
1896 endingRootEditableElement(), m_startingRootEditableElement, and m_endingRootEditableElement, which
1897 are needed so we can determine which editable elements an editing operation affects. Changed setParent()
1898 and m_parent to use CompositeEditCommand instead of EditCommand. Removed EditCommandPtr. Added
1899 applyCommand() function that's convenient to use on a newly-created command.
1900 * editing/EditCommand.cpp:
1901 (WebCore::EditCommand::EditCommand): Removed initialization for m_state, and added it for starting
1902 and ending root editable elements.
1903 (WebCore::EditCommand::apply): Simplified check for top level by just checking m_parent. Removed
1904 code to assert and set m_start. Eliminated use of EditCommandPtr.
1905 (WebCore::EditCommand::unapply): Ditto.
1906 (WebCore::EditCommand::reapply): Ditto.
1907 (WebCore::EditCommand::setStartingSelection): Changed to set root editable element too. Also made this
1908 not change the starting selection of the parent unless this is the first command in the parent -- didn't
1909 make sense the way it was.
1910 (WebCore::EditCommand::setEndingSelection): Changed to set root editable element too.
1911 (WebCore::EditCommand::setParent): Added code to set the starting and ending selection on the child
1912 based on the ending selection of the parent, formerly done by callers.
1913 (WebCore::applyCommand): Added.
1915 * editing/FormatBlockCommand.h: Tweaked formatting.
1916 * editing/FormatBlockCommand.cpp: (WebCore::FormatBlockCommand::FormatBlockCommand): Ditto.
1917 * editing/InsertLineBreakCommand.h: Ditto.
1918 * editing/InsertLineBreakCommand.cpp: (WebCore::InsertLineBreakCommand::doApply):
1920 * editing/IndentOutdentCommand.cpp:
1921 (WebCore::IndentOutdentCommand::splitTreeToNode): Removed use of EditCommandPtr.
1922 (WebCore::IndentOutdentCommand::outdentParagraph): Updated for change to list type enum.
1923 (WebCore::IndentOutdentCommand::outdentRegion): Removed use of EditCommandPtr.
1925 * editing/InsertIntoTextNodeCommand.h: Removed unneeded document parameter to constructor.
1926 * editing/InsertIntoTextNodeCommand.cpp:
1927 (WebCore::InsertIntoTextNodeCommand::InsertIntoTextNodeCommand): Ditto.
1929 * editing/InsertListCommand.h: Renamed EListType to EList, and took the "Type" suffix off
1931 * editing/InsertListCommand.cpp:
1932 (WebCore::InsertListCommand::InsertListCommand): Ditto.
1933 (WebCore::InsertListCommand::doApply): Ditto.
1935 * editing/InsertNodeBeforeCommand.h: Removed unneeded document parameter from constructor
1936 and changed the parameter of the node to insert to a PassRefPtr.
1937 * editing/InsertNodeBeforeCommand.cpp:
1938 (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand): Ditto.
1940 * editing/InsertParagraphSeparatorCommand.cpp:
1941 (WebCore::InsertParagraphSeparatorCommand::doApply): Remvoed use of EditCommandPtr.
1943 * editing/InsertTextCommand.h: Changed insertTab to take const Position&.
1944 * editing/InsertTextCommand.cpp:
1945 (WebCore::InsertTextCommand::input): Ditto.
1946 (WebCore::InsertTextCommand::insertTab): Ditto.
1948 * editing/JSEditor.h: Tweaked formatting and names.
1949 * editing/JSEditor.cpp: Ditto. Also changed places that use EditCommandPtr.
1951 * editing/JoinTextNodesCommand.h: Removed unneeeded document pointer
1952 * editing/JoinTextNodesCommand.cpp:
1953 (WebCore::JoinTextNodesCommand::JoinTextNodesCommand): Ditto.
1954 * editing/MergeIdenticalElementsCommand.h: Ditto.
1955 * editing/MergeIdenticalElementsCommand.cpp:
1956 (WebCore::MergeIdenticalElementsCommand::MergeIdenticalElementsCommand): Ditto.
1958 * editing/ModifySelectionListLevel.h: Changed EListType to be named Type and be a member of
1959 IncreaseSelectionListLevelCommand. Also changed m_listElement to be a RefPtr<Node>.
1960 * editing/ModifySelectionListLevel.cpp:
1961 (WebCore::getStartEndListChildren): Changed parameters to be references instead of pointers.
1962 (WebCore::IncreaseSelectionListLevelCommand::IncreaseSelectionListLevelCommand):
1963 Changed to use Type instead of EListType.
1964 (WebCore::canIncreaseListLevel): Changed parameters to be references instead of pointers.
1965 (WebCore::IncreaseSelectionListLevelCommand::doApply): Updated for change to canIncreaseListLevel.
1966 (WebCore::IncreaseSelectionListLevelCommand::canIncreaseSelectionListLevel): Ditto.
1967 (WebCore::IncreaseSelectionListLevelCommand::increaseSelectionListLevelWithType):
1968 Changed to not use EditCommandPtr.
1969 (WebCore::canDecreaseListLevel): Changed parameters to be references instead of pointers.
1970 (WebCore::DecreaseSelectionListLevelCommand::doApply): Updated for change to canDecreaseListLevel.
1971 (WebCore::DecreaseSelectionListLevelCommand::canDecreaseSelectionListLevel): Ditto.
1972 (WebCore::DecreaseSelectionListLevelCommand::decreaseSelectionListLevel): Changed to not use
1975 * editing/MoveSelectionCommand.h: Removed unnecessary document parameter and changed the fragment
1976 parameter to be a PassRefPtr.
1977 * editing/MoveSelectionCommand.cpp:
1978 (WebCore::MoveSelectionCommand::MoveSelectionCommand): Ditto.
1979 (WebCore::MoveSelectionCommand::doApply): Got rid of use of EditCommandPtr.
1981 * editing/RebalanceWhitespaceCommand.h: Removed unnecessary document parameter.
1982 * editing/RebalanceWhitespaceCommand.cpp:
1983 (WebCore::RebalanceWhitespaceCommand::RebalanceWhitespaceCommand): Ditto.
1984 (WebCore::RebalanceWhitespaceCommand::doApply): Got rid of use of EditCommandPtr.
1986 * editing/RemoveCSSPropertyCommand.h: Tweaked formatting.
1988 * editing/RemoveNodeAttributeCommand.h: Removed unnecessary document parameter.
1989 * editing/RemoveNodeAttributeCommand.cpp:
1990 (WebCore::RemoveNodeAttributeCommand::RemoveNodeAttributeCommand): Ditto.
1992 * editing/RemoveNodeCommand.h: Removed unnecessary document parameter.
1993 * editing/RemoveNodeCommand.cpp:
1994 (WebCore::RemoveNodeCommand::RemoveNodeCommand): Ditto.
1996 * editing/RemoveNodePreservingChildrenCommand.h: Removed unnecessary document parameter.
1997 * editing/RemoveNodePreservingChildrenCommand.cpp:
1998 (WebCore::RemoveNodePreservingChildrenCommand::RemoveNodePreservingChildrenCommand): Ditto.
2000 * editing/ReplaceSelectionCommand.h: Change fragment parameter to a PassRefPtr.
2001 * editing/ReplaceSelectionCommand.cpp:
2002 (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
2003 (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand): Ditto.
2004 (WebCore::ReplaceSelectionCommand::doApply): Ditto.
2005 (WebCore::ReplaceSelectionCommand::completeHTMLReplacement): Ditto.
2007 * editing/Selection.h: Changed SEL_DEFAULT_AFFINITY to be a constant rather than
2008 a macro. Added constructors that take visible positions. Changed setBase and
2009 setExtent to take const Position& for better efficiency.
2010 * editing/Selection.cpp:
2011 (WebCore::Selection::Selection): Removed unnecessary double initialization of m_state
2012 and m_baseIsFirst in existing constructors. Added VisiblePosition-based constructors.
2014 * editing/SetNodeAttributeCommand.h: Removed unnneeded document parameter.
2015 * editing/SetNodeAttributeCommand.cpp:
2016 (WebCore::SetNodeAttributeCommand::SetNodeAttributeCommand): Ditto.
2018 * editing/SplitElementCommand.h: Removed unnneeded document parameter.
2019 * editing/SplitElementCommand.cpp:
2020 (WebCore::SplitElementCommand::SplitElementCommand): Ditto.
2022 * editing/SplitTextNodeCommand.h: Removed unnneeded document parameter.
2023 * editing/SplitTextNodeCommand.cpp:
2024 (WebCore::SplitTextNodeCommand::SplitTextNodeCommand): Ditto.
2026 * editing/SplitTextNodeContainingElementCommand.h: Removed unnneeded document parameter.
2027 * editing/SplitTextNodeContainingElementCommand.cpp:
2028 (WebCore::SplitTextNodeContainingElementCommand::SplitTextNodeContainingElementCommand): Ditto.
2030 * editing/TypingCommand.h: Replaced uses of EditCommandPtr with EditCommand*.
2031 Renamed openForMoveTyping() with isOpenForMoreTyping().
2032 * editing/TypingCommand.cpp:
2033 (WebCore::TypingCommand::deleteKeyPressed): Updated to remove use of EditCommandPtr.
2034 (WebCore::TypingCommand::forwardDeleteKeyPressed): Ditto.
2035 (WebCore::TypingCommand::insertText): Ditto.
2036 (WebCore::TypingCommand::insertLineBreak): Ditto.
2037 (WebCore::TypingCommand::insertParagraphSeparatorInQuotedContent): Ditto.
2038 (WebCore::TypingCommand::insertParagraphSeparator): Ditto.
2039 (WebCore::TypingCommand::isOpenForMoreTypingCommand): Ditto.
2040 (WebCore::TypingCommand::closeTyping): Ditto.
2041 (WebCore::TypingCommand::typingAddedToOpenCommand): Ditto.
2042 (WebCore::TypingCommand::insertTextRunWithoutNewlines): Ditto.
2044 * editing/WrapContentsInDummySpanCommand.h: Removed unnneeded document parameter.
2045 * editing/WrapContentsInDummySpanCommand.cpp:
2046 (WebCore::WrapContentsInDummySpanCommand::WrapContentsInDummySpanCommand): Ditto.
2048 * editing/htmlediting.h: Changed type of NON_BREAKING_SPACE to UChar instead of
2051 * page/Frame.h: Changed lastEditCommand() to return an EditCommand* and changed
2052 appliedEditing(), unappliedEditing(), reappliedEditing(), registerCommandForUndo(),
2053 and registerCommandForRedo() to take PassRefPtr<EditCommand>.
2054 * page/FramePrivate.h: Changed m_lastEditCommand to be a RefPtr<EditCommand>.
2056 (WebCore::Frame::didOpenURL): Fixed for change to m_lastEditCommand.
2057 (WebCore::Frame::setFocusNodeIfNeeded): Call the rootEditableElement function
2058 from Selection to simplify the code.
2059 (WebCore::Frame::selectAll): Ditto.
2060 (WebCore::Frame::lastEditCommand): Updated for change to m_lastEditCommand.
2061 (WebCore::dispatchEditableContentChangedEvents): Added. This sends an event to
2062 both of the root editable elements involved in a change -- the start selection
2063 might be in a different element than the end selection.
2064 (WebCore::Frame::appliedEditing): Changed to call dispatchEditableContentChangedEvents,
2065 and to do it before setting the ending selection. Also update to use PassRefPtr instead
2066 of EditCommandPtr and change the order of setting m_lastEditCommand since passing it
2067 to registerCommandForUndo will take ownership and set it to 0.
2068 (WebCore::Frame::unappliedEditing): Ditto.
2069 (WebCore::Frame::reappliedEditing): Ditto.
2070 (WebCore::Frame::computeAndSetTypingStyle): Updated for removal of EditCommandPtr.
2071 (WebCore::Frame::applyStyle): Ditto.
2072 (WebCore::Frame::applyParagraphStyle): Ditto.
2074 * platform/gdk/FrameGdk.h: Updated for above changes.
2075 * platform/gdk/TemporaryLinkStubs.cpp: Updated for above changes.
2076 * platform/win/TemporaryLinkStubs.cpp: Updated for above changes.
2078 2006-08-24 Brady Eidson <beidson@apple.com>
2082 <rdar://problem/4697973> - Unacceptable delay on startup
2083 <rdar://problem/4690949> - Need to correctly prune unretained pageurls and icons on startup
2085 This patch was started by me and finished by Mark Rowe - we now special case all retains during
2086 startup into one huge sql transaction. Also we track PageURL retains instead of IconURLs so pruning works right.
2087 Testing with reasonable sets of bookmarks/history (3000), startup time is neglibile. Testing with a huge set of
2088 bookmarks (40,000), startup has a noticable delay, but reasonable, and is inline with shipping safari which also
2089 has a noticeable delay.
2091 * loader/icon/IconDatabase.cpp:
2092 (WebCore::IconDatabase::IconDatabase):
2093 (WebCore::IconDatabase::open): adding an initialStartupTransaction and pageRetainStatement
2094 (WebCore::IconDatabase::close): do cleanup on the initialStartupSQL stuff
2095 (WebCore::IconDatabase::retainIconForPageURL): Track initial PageURL retains in the temporary table
2096 (WebCore::IconDatabase::releaseIconForPageURL): Ditto
2097 (WebCore::IconDatabase::retainIconURL): We no longer special case this on startup
2098 (WebCore::IconDatabase::releaseIconURL): We no longer special case this on startup
2099 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Handle the big transaction correctly and quickly
2100 (WebCore::IconDatabase::syncDatabase): Change the timing log message
2101 * loader/icon/IconDatabase.h:
2102 * loader/icon/SQLStatement.cpp:
2103 (WebCore::SQLStatement::bindText16): Added this - for reusing commonly used statements by just rebinding parameters.
2104 * loader/icon/SQLStatement.h:
2106 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2108 Reviewed/landed by Adam.
2110 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2111 WebKit should have Qt platform support
2114 Remove KCanvasMatrix.cpp because it no longer exists
2115 Remove platform/qt/test
2116 * platform/FloatSize.h:
2117 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
2118 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2119 * platform/image-decoders/gif/GIFImageReader.cpp:
2120 * platform/image-decoders/ico/ICOImageDecoder.cpp:
2121 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2122 * platform/image-decoders/png/PNGImageDecoder.cpp:
2123 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
2124 Added PLATFORM(QT) hooks in the image-decoders/, as they also need
2125 to work for Qt, not only for Cairo.
2126 * platform/qt/qt-encodings.txt: Added (required for build).
2128 2006-08-24 Adam Roben <aroben@apple.com>
2130 Fixing a typo from last patch.
2132 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
2133 (WebCore::KRenderingPaintServerQt::setPenProperties):
2135 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2137 Reviewed/landed by Adam.
2139 Final cleanup to conform to WebKit coding style!
2141 * kcanvas/device/qt/KCanvasClipperQt.cpp:
2142 (WebCore::KCanvasClipperQt::applyClip):
2143 * kcanvas/device/qt/KCanvasClipperQt.h:
2144 * kcanvas/device/qt/KCanvasPathQt.cpp:
2145 * kcanvas/device/qt/KCanvasPathQt.h:
2146 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2147 * kcanvas/device/qt/KRenderingDeviceQt.h:
2148 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
2149 (WebCore::KRenderingPaintServerLinearGradientQt::KRenderingPaintServerLinearGradientQt):
2150 (WebCore::KRenderingPaintServerRadialGradientQt::KRenderingPaintServerRadialGradientQt):
2151 * kcanvas/device/qt/KRenderingPaintServerGradientQt.h:
2152 * kcanvas/device/qt/KRenderingPaintServerPatternQt.cpp:
2153 (WebCore::KRenderingPaintServerPatternQt::KRenderingPaintServerPatternQt):
2154 * kcanvas/device/qt/KRenderingPaintServerPatternQt.h:
2155 * kcanvas/device/qt/KRenderingPaintServerQt.cpp:
2156 (WebCore::KRenderingPaintServerQt::setPenProperties):
2157 * kcanvas/device/qt/KRenderingPaintServerQt.h:
2158 * kcanvas/device/qt/KRenderingPaintServerSolidQt.cpp:
2159 (WebCore::KRenderingPaintServerSolidQt::KRenderingPaintServerSolidQt):
2160 (WebCore::KRenderingPaintServerSolidQt::renderPath):
2161 * kcanvas/device/qt/KRenderingPaintServerSolidQt.h:
2162 * kcanvas/device/qt/RenderPathQt.cpp:
2163 * kcanvas/device/qt/RenderPathQt.h:
2164 * platform/qt/AffineTransformQt.cpp:
2165 * platform/qt/BrowserExtensionQt.cpp:
2166 * platform/qt/BrowserExtensionQt.h:
2167 * platform/qt/ColorQt.cpp:
2168 (WebCore::Color::Color):
2169 * platform/qt/ComboBoxQt.cpp:
2170 (WebCore::PlatformComboBox::PlatformComboBox):
2171 (WebCore::PlatformComboBox::~PlatformComboBox):
2172 (WebCore::PlatformComboBox::setParentWidget):
2173 (WebCore::PlatformComboBox::appendGroupLabel):
2174 * platform/qt/CookieJarQt.cpp:
2175 * platform/qt/CursorQt.cpp:
2176 (WebCore::Cursors::Cursors::self):
2177 * platform/qt/FloatPointQt.cpp:
2178 * platform/qt/FloatRectQt.cpp:
2179 * platform/qt/FontCacheQt.cpp:
2180 (WebCore::FontCache::getSimilarFontPlatformData):
2181 (WebCore::FontCache::createFontPlatformData):
2182 * platform/qt/FontDataQt.cpp:
2183 * platform/qt/FontPlatformData.h:
2184 * platform/qt/FontPlatformDataQt.cpp:
2185 * platform/qt/FontQt.cpp:
2186 (WebCore::Font::operator QFont):
2187 (WebCore::Font::drawComplexText):
2188 (WebCore::Font::floatWidthForComplexText):
2189 * platform/qt/FrameQt.cpp:
2190 (WebCore::FrameQt::openURL):
2191 (WebCore::FrameQt::submitForm):
2192 (WebCore::FrameQt::urlSelected):
2193 (WebCore::FrameQt::keyEvent):
2194 * platform/qt/FrameQt.h:
2195 * platform/qt/GlyphMapQt.cpp:
2196 * platform/qt/GraphicsContextQt.cpp:
2197 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2198 (WebCore::GraphicsContext::GraphicsContext):
2199 (WebCore::GraphicsContext::drawConvexPolygon):
2200 (WebCore::GraphicsContext::setFocusRingClip):
2201 (WebCore::GraphicsContext::clip):
2202 * platform/qt/ImageQt.cpp:
2203 (WebCore::Image::draw):
2204 (WebCore::Image::drawTiled):
2205 * platform/qt/ImageSourceQt.cpp:
2206 * platform/qt/IntPointQt.cpp:
2207 * platform/qt/IntRectQt.cpp:
2208 * platform/qt/IntSizeQt.cpp:
2209 * platform/qt/LineEditQt.cpp:
2210 (WebCore::PlatformLineEdit::PlatformLineEdit):
2211 (WebCore::PlatformLineEdit::~PlatformLineEdit):
2212 (WebCore::PlatformLineEdit::setParentWidget):
2213 (WebCore::PlatformLineEdit::addSearchResult):
2214 * platform/qt/ListBoxQt.cpp:
2215 (WebCore::ListBox::ListBox):
2216 (WebCore::ListBox::~ListBox):
2217 (WebCore::ListBox::setParentWidget):
2218 * platform/qt/PageQt.cpp:
2219 (WebCore::Page::windowRect):
2220 (WebCore::Page::setWindowRect):
2221 * platform/qt/PathQt.cpp:
2222 (WebCore::Path::addArc):
2223 * platform/qt/PlatformKeyboardEventQt.cpp:
2224 (WebCore::windowsKeyCodeForKeyEvent):
2225 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2226 * platform/qt/PlatformMouseEventQt.cpp:
2227 * platform/qt/RenderThemeQt.cpp:
2228 (WebCore::RenderThemeQt::getStylePainterAndWidgetFromPaintInfo):
2229 (WebCore::RenderThemeQt::applyTheme):
2230 (WebCore::RenderThemeQt::paintButton):
2231 (WebCore::RenderThemeQt::paintTextField):
2232 * platform/qt/ResourceLoaderCurl.cpp:
2233 (WebCore::ResourceLoader::assembleResponseHeaders):
2234 (WebCore::ResourceLoader::retrieveCharset):
2235 (WebCore::ResourceLoader::receivedResponse):
2236 * platform/qt/ResourceLoaderManager.cpp:
2237 (WebCore::ResourceLoaderManager::add):
2238 * platform/qt/ResourceLoaderManager.h:
2239 * platform/qt/ScreenQt.cpp:
2240 * platform/qt/ScrollViewCanvasQt.cpp:
2241 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
2242 * platform/qt/ScrollViewCanvasQt.h:
2243 * platform/qt/ScrollViewQt.cpp:
2244 * platform/qt/SharedTimerQt.cpp:
2245 * platform/qt/SharedTimerQt.h:
2246 (WebCore::SharedTimerQt::inst):
2247 * platform/qt/StringQt.cpp:
2248 * platform/qt/SystemTimeQt.cpp:
2249 * platform/qt/TemporaryLinkStubs.cpp:
2250 * platform/qt/TextEditQt.cpp:
2251 (WebCore::PlatformTextEdit::PlatformTextEdit):
2252 (WebCore::PlatformTextEdit::~PlatformTextEdit):
2253 (WebCore::PlatformTextEdit::setParentWidget):
2254 * platform/qt/WidgetQt.cpp:
2255 (WebCore::Widget::setQWidget):
2257 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2259 Reviewed and landed by Anders.
2261 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2262 WebKit should have Qt platform support
2265 * platform/qt/FrameQt.cpp: Added.
2266 (WebCore::doScroll):
2267 (WebCore::FrameView::isFrameView):
2268 (WebCore::FrameQt::FrameQt):
2269 (WebCore::FrameQt::init):
2270 (WebCore::FrameQt::~FrameQt):
2271 (WebCore::FrameQt::openURL):
2272 (WebCore::FrameQt::submitForm):
2273 (WebCore::FrameQt::urlSelected):
2274 (WebCore::FrameQt::userAgent):
2275 (WebCore::FrameQt::runJavaScriptAlert):
2276 (WebCore::FrameQt::runJavaScriptConfirm):
2277 (WebCore::FrameQt::locationbarVisible):
2278 (WebCore::FrameQt::setTitle):
2279 (WebCore::FrameQt::createFrame):
2280 (WebCore::FrameQt::passWheelEventToChildWidget):
2281 (WebCore::FrameQt::passSubframeEventToSubframe):
2282 (WebCore::FrameQt::objectContentType):
2283 (WebCore::FrameQt::createPlugin):
2284 (WebCore::FrameQt::passMouseDownEventToWidget):
2285 (WebCore::FrameQt::menubarVisible):
2286 (WebCore::FrameQt::personalbarVisible):
2287 (WebCore::FrameQt::statusbarVisible):
2288 (WebCore::FrameQt::toolbarVisible):
2289 (WebCore::FrameQt::createEmptyDocument):
2290 (WebCore::FrameQt::markedTextRange):
2291 (WebCore::FrameQt::incomingReferrer):
2292 (WebCore::FrameQt::mimeTypeForFileName):
2293 (WebCore::FrameQt::markMisspellingsInAdjacentWords):
2294 (WebCore::FrameQt::markMisspellings):
2295 (WebCore::FrameQt::lastEventIsMouseUp):
2296 (WebCore::FrameQt::saveDocumentState):
2297 (WebCore::FrameQt::restoreDocumentState):
2298 (WebCore::FrameQt::openURLRequest):
2299 (WebCore::FrameQt::scheduleClose):
2300 (WebCore::FrameQt::unfocusWindow):
2301 (WebCore::FrameQt::focusWindow):
2302 (WebCore::FrameQt::overrideMediaType):
2303 (WebCore::FrameQt::addMessageToConsole):
2304 (WebCore::FrameQt::runJavaScriptPrompt):
2305 (WebCore::FrameQt::getEmbedInstanceForWidget):
2306 (WebCore::FrameQt::getObjectInstanceForWidget):
2307 (WebCore::FrameQt::getAppletInstanceForWidget):
2308 (WebCore::FrameQt::registerCommandForUndo):
2309 (WebCore::FrameQt::registerCommandForRedo):
2310 (WebCore::FrameQt::clearUndoRedoOperations):
2311 (WebCore::FrameQt::issueUndoCommand):
2312 (WebCore::FrameQt::issueRedoCommand):
2313 (WebCore::FrameQt::issueCutCommand):
2314 (WebCore::FrameQt::issueCopyCommand):
2315 (WebCore::FrameQt::issuePasteCommand):
2316 (WebCore::FrameQt::issuePasteAndMatchStyleCommand):
2317 (WebCore::FrameQt::issueTransposeCommand):
2318 (WebCore::FrameQt::respondToChangedSelection):
2319 (WebCore::FrameQt::respondToChangedContents):
2320 (WebCore::FrameQt::shouldChangeSelection):
2321 (WebCore::FrameQt::partClearedInBegin):
2322 (WebCore::FrameQt::canGoBackOrForward):
2323 (WebCore::FrameQt::handledOnloadEvents):
2324 (WebCore::FrameQt::canPaste):
2325 (WebCore::FrameQt::canRedo):
2326 (WebCore::FrameQt::canUndo):
2327 (WebCore::FrameQt::print):
2328 (WebCore::FrameQt::shouldInterruptJavaScript):
2329 (WebCore::FrameQt::keyEvent):
2330 (WebCore::FrameQt::receivedResponse):
2331 (WebCore::FrameQt::receivedData):
2332 (WebCore::FrameQt::receivedAllData):
2333 (WebCore::FrameQt::setFrameGeometry):
2334 * platform/qt/FrameQt.h: Added.
2335 * platform/qt/ScrollViewCanvasQt.cpp: Added.
2336 (WebCore::ScrollViewCanvasQt::ScrollViewCanvasQt):
2337 (WebCore::ScrollViewCanvasQt::paintEvent):
2338 (WebCore::ScrollViewCanvasQt::sizeHint):
2339 (WebCore::ScrollViewCanvasQt::mouseMoveEvent):
2340 (WebCore::ScrollViewCanvasQt::mousePressEvent):
2341 (WebCore::ScrollViewCanvasQt::mouseReleaseEvent):
2342 (WebCore::ScrollViewCanvasQt::keyPressEvent):
2343 (WebCore::ScrollViewCanvasQt::keyReleaseEvent):
2344 (WebCore::ScrollViewCanvasQt::handleKeyEvent):
2345 * platform/qt/ScrollViewCanvasQt.h: Added.
2346 * platform/qt/ScrollViewQt.cpp:
2347 (WebCore::ScrollView::setParentWidget):
2349 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2353 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2354 WebKit should have Qt platform support
2356 * platform/qt/FontCacheQt.cpp: Added.
2357 (WebCore::FontCache::platformInit):
2358 (WebCore::FontCache::getFontDataForCharacters):
2359 (WebCore::FontCache::getSimilarFontPlatformData):
2360 (WebCore::FontCache::getLastResortFallbackFont):
2361 (WebCore::FontCache::createFontPlatformData):
2362 * platform/qt/FontDataQt.cpp: Added.
2363 (WebCore::FontData::platformInit):
2364 (WebCore::FontData::platformDestroy):
2365 (WebCore::FontData::smallCapsFontData):
2366 (WebCore::FontData::containsCharacters):
2367 (WebCore::FontData::determinePitch):
2368 (WebCore::FontData::platformWidthForGlyph):
2369 * platform/qt/FontPlatformData.h: Added.
2370 * platform/qt/FontPlatformDataQt.cpp: Added.
2371 (WebCore::FontPlatformData::FontPlatformData):
2372 (WebCore::FontPlatformData::operator=):
2373 (WebCore::FontPlatformData::~FontPlatformData):
2374 (WebCore::FontPlatformData::isFixedPitch):
2375 (WebCore::FontPlatformData::setFont):
2376 (WebCore::FontPlatformData::font):
2377 (WebCore::FontPlatformData::hash):
2378 (WebCore::FontPlatformData::operator==):
2379 * platform/qt/FontQt.cpp: Added.
2380 (WebCore::Font::operator QFont):
2381 (WebCore::Font::drawGlyphs):
2382 (WebCore::Font::drawComplexText):
2383 (WebCore::Font::floatWidthForComplexText):
2384 * platform/qt/GlyphMapQt.cpp: Added.
2385 (WebCore::GlyphMap::fillPage):
2387 2006-08-24 David Harrison <harrison@apple.com>
2389 Reinstate r15966 because layout test changes are correct.
2391 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
2393 * editing/TextIterator.cpp:
2394 (WebCore::TextIterator::advance):
2396 2006-08-24 Nikolas Zimmermann <zimmermann@kde.org>
2400 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2401 WebKit should have Qt platform support (Part II)
2403 Adapt the KCanvas Qt device to Rob's KCanvasMatrix removal.
2404 Use AffineTransform everywhere instead.
2406 * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2407 (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
2408 (WebCore::KRenderingDeviceContextQt::concatCTM):
2409 (WebCore::KRenderingDeviceContextQt::ctm):
2410 * kcanvas/device/qt/KRenderingDeviceQt.h:
2411 * kcanvas/device/qt/KRenderingPaintServerGradientQt.cpp:
2412 (WebCore::KRenderingPaintServerLinearGradientQt::setup):
2413 (WebCore::KRenderingPaintServerRadialGradientQt::setup):
2415 2006-08-24 Rob Buis <buis@kde.org>
2419 http://bugzilla.opendarwin.org/show_bug.cgi?id=10524
2420 svg transform: comma delimiting breaks display
2422 Properly parse transforms which use ',' as seperators.
2424 * ksvg2/svg/SVGTransformable.cpp:
2425 (SVGTransformable::parseTransformAttribute):
2427 2006-08-23 Darin Adler <darin@apple.com>
2431 - added an assert to make it slightly easier to debug the common case of
2432 calling document() on a node of 0
2434 * dom/Node.h: (WebCore::Node::document): ASSERT(this).
2436 2006-08-23 David Hyatt <hyatt@apple.com>
2438 Refactor Cairo and CoreGraphics to use platform ifdefs. This patch
2439 separates the graphics engines from their respective platforms and replaces
2440 #ifdef PLATFORM(MAC) and PLATFORM(WIN) with PLATFORM(CG) and PLATFORM(CAIRO).
2444 * WebCore.xcodeproj/project.pbxproj:
2445 * platform/AffineTransform.h:
2447 * platform/Cursor.h:
2448 * platform/FloatPoint.h:
2449 * platform/FloatRect.h:
2450 * platform/FloatSize.h:
2452 * platform/FontData.h:
2453 * platform/GlyphBuffer.h:
2454 (WebCore::GlyphBuffer::glyphAt):
2455 (WebCore::GlyphBuffer::advanceAt):
2456 (WebCore::GlyphBuffer::add):
2457 * platform/GraphicsContext.h:
2459 * platform/ImageSource.h:
2460 * platform/IntPoint.h:
2461 * platform/IntRect.h:
2462 * platform/IntSize.h:
2463 * platform/ResourceLoader.h:
2464 * platform/ResourceLoaderClient.h:
2465 * platform/Widget.h:
2466 * platform/cairo/GraphicsContextCairo.cpp:
2467 * platform/cairo/ImageCairo.cpp:
2468 * platform/cairo/ImageSourceCairo.cpp:
2469 * platform/cg/AffineTransformCG.cpp:
2470 * platform/cg/FloatPointCG.cpp: Added.
2471 * platform/cg/FloatRectCG.cpp: Added.
2472 * platform/cg/FloatSizeCG.cpp: Added.
2473 * platform/cg/GraphicsContextCG.cpp:
2474 (WebCore::GraphicsContext::GraphicsContext):
2475 (WebCore::GraphicsContext::~GraphicsContext):
2476 (WebCore::GraphicsContext::setFocusRingClip):
2477 (WebCore::GraphicsContext::clearFocusRingClip):
2478 (WebCore::GraphicsContext::platformContext):
2479 (WebCore::GraphicsContext::drawRect):
2480 (WebCore::GraphicsContext::drawLine):
2481 * platform/cg/GraphicsContextPlatformPrivate.h: Added.
2482 (WebCore::GraphicsContextPlatformPrivate:::m_cgContext):
2483 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2484 * platform/cg/ImageCG.cpp: Added.
2485 (WebCore::Image::drawTiled):
2486 * platform/cg/ImageSourceCG.cpp: Added.
2487 * platform/cg/IntPointCG.cpp: Added.
2488 * platform/cg/IntRectCG.cpp: Added.
2489 * platform/cg/IntSizeCG.cpp: Added.
2490 * platform/cg/PDFDocumentImage.cpp: Added.
2491 (WebCore::PDFDocumentImage::adjustCTM):
2492 * platform/cg/PDFDocumentImage.h: Added.
2493 * platform/cg/PathCG.cpp:
2494 * platform/image-decoders/bmp/BMPImageDecoder.cpp:
2495 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2496 * platform/image-decoders/gif/GIFImageReader.cpp:
2497 * platform/image-decoders/ico/ICOImageDecoder.cpp:
2498 * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
2499 * platform/image-decoders/png/PNGImageDecoder.cpp:
2500 * platform/image-decoders/xbm/XBMImageDecoder.cpp:
2501 * platform/mac/FloatPointMac.mm:
2502 * platform/mac/FloatRectMac.mm:
2503 * platform/mac/FloatSizeMac.mm:
2504 * platform/mac/GraphicsContextMac.mm:
2505 * platform/mac/ImageMac.mm:
2506 * platform/mac/ImageSourceMac.cpp: Removed.
2507 * platform/mac/IntPointMac.mm:
2508 * platform/mac/IntRectMac.mm:
2509 * platform/mac/IntSizeMac.mm:
2510 * platform/mac/PDFDocumentImage.h: Removed.
2511 * platform/mac/PDFDocumentImage.mm: Removed.
2513 2006-08-23 David Hyatt <hyatt@apple.com>
2515 Remove the ifdef for platform scrollbars vs. engine scrollbars until
2516 engine scrollbars actually exist.
2518 * platform/ScrollBar.h:
2519 (WebCore::ScrollBar::hasPlatformScrollBars):
2521 2006-08-23 Justin Garcia <justin.garcia@apple.com>
2523 Reviewed by harrison
2525 Removed the poorly named next/previousVisiblePosition
2526 and use next/previousCandidate and next/previousVisuallyDistinctCandidate.
2527 Removed the unused VisiblePosition::maxOffset()
2529 * editing/VisiblePosition.cpp:
2530 (WebCore::VisiblePosition::next):
2531 (WebCore::VisiblePosition::previous):
2532 (WebCore::VisiblePosition::canonicalPosition):
2533 * editing/VisiblePosition.h:
2535 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
2537 Reviewed by Alexey. Landed by rwlbuis.
2539 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2540 WebKit should have Qt platform support (Part II)
2542 * platform/qt/GraphicsContextQt.cpp: Added.
2543 (WebCore::toQtCompositionMode):
2544 (WebCore::toQtLineCap):
2545 (WebCore::toQtLineJoin):
2546 (WebCore::TransparencyLayer::TransparencyLayer):
2547 (WebCore::TransparencyLayer::cleanup):
2548 (WebCore::TextShadow::TextShadow):
2549 (WebCore::TextShadow::isNull):
2550 (WebCore::GraphicsContextPlatformPrivate::p):
2551 (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
2552 (WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
2553 (WebCore::GraphicsContext::GraphicsContext):
2554 (WebCore::GraphicsContext::~GraphicsContext):
2555 (WebCore::GraphicsContext::platformContext):
2556 (WebCore::GraphicsContext::savePlatformState):
2557 (WebCore::GraphicsContext::restorePlatformState):
2558 (WebCore::GraphicsContext::drawRect):
2559 (WebCore::adjustLineToPixelBounderies):
2560 (WebCore::GraphicsContext::drawLine):
2561 (WebCore::GraphicsContext::drawEllipse):
2562 (WebCore::GraphicsContext::drawArc):
2563 (WebCore::GraphicsContext::drawConvexPolygon):
2564 (WebCore::GraphicsContext::fillRect):
2565 (WebCore::GraphicsContext::addClip):
2566 (WebCore::GraphicsContext::drawFocusRing):
2567 (WebCore::GraphicsContext::setFocusRingClip):
2568 (WebCore::GraphicsContext::clearFocusRingClip):
2569 (WebCore::GraphicsContext::drawLineForText):
2570 (WebCore::GraphicsContext::drawLineForMisspelling):
2571 (WebCore::GraphicsContext::roundToDevicePixels):
2572 (WebCore::GraphicsContext::setShadow):
2573 (WebCore::GraphicsContext::clearShadow):
2574 (WebCore::GraphicsContext::beginTransparencyLayer):
2575 (WebCore::GraphicsContext::endTransparencyLayer):
2576 (WebCore::GraphicsContext::clearRect):
2577 (WebCore::GraphicsContext::strokeRect):
2578 (WebCore::GraphicsContext::setLineWidth):
2579 (WebCore::GraphicsContext::setLineCap):
2580 (WebCore::GraphicsContext::setLineJoin):
2581 (WebCore::GraphicsContext::setMiterLimit):
2582 (WebCore::GraphicsContext::setAlpha):
2583 (WebCore::GraphicsContext::setCompositeOperation):
2584 (WebCore::GraphicsContext::clip):
2585 (WebCore::GraphicsContext::translate):
2586 (WebCore::GraphicsContext::rotate):
2587 (WebCore::GraphicsContext::scale):
2588 (WebCore::GraphicsContext::addInnerRoundedRectClip):
2589 (WebCore::GraphicsContext::addRoundedRectClip):
2590 (WebCore::GraphicsContext::createRenderingDeviceContext):
2591 * platform/qt/ImageQt.cpp: Added.
2592 (WebCore::FrameData::clear):
2593 (WebCore::Image::initNativeData):
2594 (WebCore::Image::destroyNativeData):
2595 (WebCore::Image::invalidateNativeData):
2596 (WebCore::Image::loadResource):
2597 (WebCore::Image::supportsType):
2598 (WebCore::Image::draw):
2599 (WebCore::Image::drawTiled):
2600 (WebCore::Image::checkForSolidColor):
2601 * platform/qt/ImageSourceQt.cpp: Added.
2602 (WebCore::createDecoder):
2603 (WebCore::ImageSource::ImageSource):
2604 (WebCore::ImageSource::~ImageSource):
2605 (WebCore::ImageSource::initialized):
2606 (WebCore::ImageSource::setData):
2607 (WebCore::ImageSource::isSizeAvailable):
2608 (WebCore::ImageSource::size):
2609 (WebCore::ImageSource::repetitionCount):
2610 (WebCore::ImageSource::frameCount):
2611 (WebCore::ImageSource::createFrameAtIndex):
2612 (WebCore::ImageSource::frameDurationAtIndex):
2613 (WebCore::ImageSource::frameHasAlphaAtIndex):
2615 2006-08-23 Brady Eidson <beidson@apple.com>
2619 Moved default URL icon from WebKit to WebCore
2621 * Resources/urlIcon.tiff: Added.
2622 * WebCore.xcodeproj/project.pbxproj:
2623 * loader/icon/IconDataCache.cpp:
2624 (WebCore::IconDataCache::loadImageFromResource):
2625 * loader/icon/IconDataCache.h:
2626 * loader/icon/IconDatabase.cpp:
2627 (WebCore::IconDatabase::IconDatabase):
2628 (WebCore::IconDatabase::defaultIcon):
2629 * loader/icon/IconDatabase.h:
2631 2006-08-23 Adam Roben <aroben@apple.com>
2633 Reviewed by Darin, Adele.
2635 Some popup refactoring/cleanup.
2637 * html/HTMLSelectElement.cpp:
2638 (WebCore::HTMLSelectElement::defaultEventHandler):
2639 * rendering/RenderMenuList.cpp:
2640 (WebCore::RenderMenuList::RenderMenuList):
2641 (WebCore::RenderMenuList::~RenderMenuList):
2642 (WebCore::RenderMenuList::showPopup):
2643 (WebCore::RenderMenuList::hidePopup):
2644 * rendering/RenderMenuList.h:
2645 (WebCore::RenderMenuList::popup):
2646 (WebCore::RenderMenuList::popupIsVisible):
2647 * rendering/RenderPopupMenu.h:
2648 * rendering/RenderPopupMenuMac.h:
2649 (WebCore::RenderPopupMenuMac::hidePopup):
2651 2006-08-23 Nikolas Zimmermann <zimmermann@kde.org>
2653 Reviewed by Anders. Landed by rwlbuis.
2655 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
2656 WebKit should have Qt platform support
2658 * platform/qt/ResourceLoaderCurl.cpp: Added.
2659 (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
2660 (WebCore::ResourceLoader::~ResourceLoader):
2661 (WebCore::ResourceLoader::start):
2662 (WebCore::ResourceLoader::cancel):
2663 (WebCore::ResourceLoader::assembleResponseHeaders):
2664 (WebCore::ResourceLoader::retrieveCharset):
2665 (WebCore::ResourceLoader::receivedResponse):
2666 * platform/qt/ResourceLoaderManager.cpp: Added.
2667 (WebCore::ResourceLoaderManager::ResourceLoaderManager):
2668 (WebCore::ResourceLoaderManager::get):
2669 (WebCore::ResourceLoaderManager::useSimpleTransfer):
2670 (WebCore::writeCallback):
2671 (WebCore::headerCallback):
2672 (WebCore::ResourceLoaderManager::downloadTimerCallback):
2673 (WebCore::ResourceLoaderManager::remove):
2674 (WebCore::ResourceLoaderManager::add):
2675 (WebCore::ResourceLoaderManager::cancel):
2676 * platform/qt/ResourceLoaderManager.h: Added.
2677 * platform/qt/StringQt.cpp: Added.
2678 (WebCore::String::String):
2679 (WebCore::String::operator QString):
2680 (WebCore::DeprecatedString::operator QString):
2682 2006-08-23 Brady Eidson <beidson@apple.com>
2686 Added escapeSQLString() - a helper to escape strings to be used in textual SQL queries
2688 * WebCore.xcodeproj/project.pbxproj: Reordered some files
2689 * loader/icon/IconDataCache.cpp: Use the new escapeSQLString()
2690 (WebCore::IconDataCache::writeToDatabase):
2691 * loader/icon/IconDatabase.cpp: Use the new escapeSQLString() throughout
2692 (WebCore::IconDatabase::retainIconURL):
2693 (WebCore::IconDatabase::releaseIconURL):
2694 (WebCore::IconDatabase::forgetIconForIconURLFromDatabase):
2695 (WebCore::IconDatabase::establishIconIDForIconURL):
2696 (WebCore::imageDataForIconURLQuery):
2697 (WebCore::timeStampForIconURLQuery):
2698 (WebCore::iconURLForPageURLQuery):
2699 (WebCore::forgetPageURLQuery):
2700 (WebCore::setIconIDForPageURLQuery):
2701 (WebCore::getIconIDForIconURLQuery):
2702 (WebCore::addIconForIconURLQuery):
2703 (WebCore::hasIconForIconURLQuery):
2704 * loader/icon/SQLDatabase.h:
2705 (WebCore::escapeSQLString): Added
2707 2006-08-22 Maciej Stachowiak <mjs@apple.com>
2711 - assorted style cleanup of icon loader code:
2713 - wrapped all implementation files in namespace WebCore {} instead of "using namespace WebCore;" at top
2714 - split headers to be one per class, to match impl files
2715 - made files that are purely local in IconDatabase.cpp static
2716 - make each impl file include config.h as first header (and no config.h includes in other headers)
2717 - avoid multiple copies of Vector<unsigned char> for image data
2719 * WebCore.xcodeproj/project.pbxproj:
2720 * loader/icon/IconDataCache.cpp:
2721 * loader/icon/IconDataCache.h: Added.
2723 (WebCore::IconDataCache::getTimestamp):
2724 (WebCore::IconDataCache::setTimestamp):
2725 (WebCore::IconDataCache::getIconURL):
2726 * loader/icon/IconDatabase.cpp:
2727 (WebCore::IconDatabase::imageDataForIconURL):
2728 (WebCore::IconDatabase::iconForPageURL):
2729 (WebCore::pageURLTableIsEmptyQuery):
2730 (WebCore::imageDataForIconURLQuery):
2731 (WebCore::timeStampForIconURLQuery):
2732 (WebCore::iconURLForPageURLQuery):
2733 (WebCore::forgetPageURLQuery):
2734 (WebCore::setIconIDForPageURLQuery):
2735 (WebCore::getIconIDForIconURLQuery):
2736 (WebCore::addIconForIconURLQuery):
2737 (WebCore::hasIconForIconURLQuery):
2738 * loader/icon/IconDatabase.h:
2739 * loader/icon/SQLDatabase.cpp:
2740 * loader/icon/SQLDatabase.h:
2741 * loader/icon/SQLStatement.cpp:
2742 (WebCore::SQLStatement::getColumnBlobAsVector):
2743 * loader/icon/SQLStatement.h: Added.
2744 (WebCore::SQLStatement::isPrepared):
2745 (WebCore::SQLStatement::prepareAndStep):
2746 (WebCore::SQLStatement::lastError):
2747 (WebCore::SQLStatement::lastErrorMsg):
2748 * loader/icon/SQLTransaction.cpp:
2749 * loader/icon/SQLTransaction.h: Added.
2751 2006-08-22 Brady Eidson <beidson@apple.com>
2755 The role of the SiteIcon is now the original intention - to be a cache of data relating to an Icon
2756 As such, I'm renaming it to IconDataCache.
2757 Also, the IconDatabase has to manually set the image data on the IconDataCache and also sets the
2758 TimeStamp when an icon is created or the data is changed.
2759 IconDataCache now has a method to write itself *to* a given database, instead of read itself from one.
2760 IconDatabase schema changes to have the timestamp set manually instead of via a trigger.
2761 The overall purpose of this change is to cache the timestamp, killing off a very common SQL query.
2763 * WebCore.xcodeproj/project.pbxproj: Renamed a file
2764 * loader/icon/IconDataCache.cpp: Added.
2765 (IconDataCache::IconDataCache):
2766 (IconDataCache::getImage): Now either returns the stored image, or 0 - no attempt to grab data
2767 (IconDataCache::manuallySetImageData): Delete the old image and create the new one
2768 (IconDataCache::writeToDatabase): Write the current iconURL, data, and timestamp to the given DB
2769 (IconDataCache::imageDataStatus): Determine if an IconDataCache is new without data versus actually having null data
2770 * loader/icon/IconDatabase.cpp:
2771 (WebCore::IconDatabase::createDatabaseTables): Changed DB schema to version 5 (hopefully the final version)
2772 (WebCore::IconDatabase::iconForPageURL):
2773 (WebCore::IconDatabase::isIconExpiredForIconURL): Uses the timestamp in the IconDataCache object instead of always querying
2774 (WebCore::IconDatabase::getOrCreateIconDataCache): Added, to handle creation of new IconDataCache when appropriate
2775 (WebCore::IconDatabase::setIconDataForIconURL): Puts data in SiteIcon then marks it for a future write
2776 (WebCore::IconDatabase::syncDatabase): Now syncs SiteIconsPendingUpdate
2777 * loader/icon/IconDatabase.h:
2778 (WebCore::IconDataCache::getTimestamp):
2779 (WebCore::IconDataCache::setTimestamp):
2780 * loader/icon/SiteIcon.cpp: Removed.
2783 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2785 Reviewed by harrison
2787 <http://bugzilla.opendarwin.org/show_bug.cgi?id=10449>
2788 REGRESSION(r15918): drag-into-marker.html failing
2790 * editing/ReplaceSelectionCommand.cpp:
2791 (WebCore::ReplaceSelectionCommand::doApply): Don't avoid nesting
2794 2006-08-22 Brady Eidson <beidson@apple.com>
2798 Added a check in getTIFFRepresentation to not proceed if the frame count is zero
2799 This is an error condition that was handled gracefully before - in certain circumstances
2800 the call to CGImageDestinationCreateWithData will spam the Console if it is passed null/empty data
2801 or invalid data. This small change bails out before that call if that call will definitely fail
2803 * platform/mac/ImageMac.mm:
2804 (WebCore::Image::getTIFFRepresentation):
2806 2006-08-22 David Harrison <harrison@apple.com>
2808 Backed out my last change (r15966) because it broke lots of layout tests.
2810 * editing/TextIterator.cpp:
2811 (WebCore::TextIterator::advance):
2813 2006-08-22 Maciej Stachowiak <mjs@apple.com>
2817 - added some SPI indirections to support the following in WebKit/Loader:
2818 - pull more WebDataSource code into WebFrameLoader
2819 - make WebMainResourceLoader not depend on WebKit or on SPI
2822 * WebCore.xcodeproj/project.pbxproj:
2823 * platform/mac/WebCoreSystemInterface.h:
2824 * platform/mac/WebCoreSystemInterface.mm:
2826 2006-08-22 Justin Garcia <justin.garcia@apple.com>
2828 Reviewed by harrison
2830 <rdar://problem/4052343&4052343&4426622> Mail hung on paste text
2832 * editing/ReplaceSelectionCommand.cpp:
2833 (WebCore::isInterchangeNewlineNode):
2834 (WebCore::isInterchangeConvertedSpaceSpan):
2835 (WebCore::ReplacementFragment::ReplacementFragment):
2836 (WebCore::ReplaceSelectionCommand::removeRedundantStyles): Compute the redundant inheritable styles and
2837 remove them and remove style nodes and style spans which were only contributing redundant styles.
2838 (WebCore::ReplaceSelectionCommand::doApply):
2839 * editing/ReplaceSelectionCommand.h:
2841 2006-08-22 David Harrison <harrison@apple.com>
2845 <rdar://problem/4077676> Inline hole line adheres to the Japanese characters in inline hole
2847 This happens because the underline is always 2 pixels thick, and placed 3 pixels above the bottom of the text box.
2850 * manual-tests/inline-input-marking.html: Added.
2851 Check that underlining of the inline input hole does not obscure the glyphs.
2853 * rendering/InlineTextBox.cpp:
2854 (WebCore::InlineTextBox::paintMarkedTextUnderline):
2855 Position underline at bottom of text box.
2856 Height of underline is reduced to 1 px when font's descent is less than or equal to 2 px.
2858 2006-08-22 Rob Buis <buis@kde.org>
2862 http://bugzilla.opendarwin.org/show_bug.cgi?id=10402
2863 REPRO: SVG crashes inside gradient code
2865 Make sure we do not try to update the canvas resource/gradient paintserver when it is not yet built.
2867 * ksvg2/svg/SVGGradientElement.cpp:
2868 (SVGGradientElement::notifyAttributeChange):
2869 (SVGGradientElement::resourceNotification):
2871 2006-08-22 David Harrison <harrison@apple.com>
2875 <rdar://problem/4523606> Represent heading elements in AXAttributedStringForTextMarkerRange
2877 * bridge/mac/WebCoreAXObject.mm:
2879 (-[WebCoreAXObject headingLevel]):
2880 (-[WebCoreAXObject isHeading]):
2881 New. Heading level is per the tag (h1 == 1, h2 == 2, etc.)
2883 (-[WebCoreAXObject role]):
2884 (-[WebCoreAXObject roleDescription]):
2885 Add role and roleDescription for headings.
2887 (-[WebCoreAXObject value]):
2888 Value is the headingLevel.
2890 (AXAttributeStringSetHeadingLevel):
2891 (AXAttributedStringAppendText):
2892 Put text's heading level (if applicable) in the attributes.
2894 2006-08-22 David Harrison <harrison@apple.com>
2898 <rdar://problem/4522205> Represent controls in AXAttributedStringForTextMarkerRange
2900 Treat controls as replaced elements, so that AXAttributedStringForTextMarkerRange will, too.
2902 * editing/TextIterator.cpp:
2903 (WebCore::TextIterator::advance):
2906 2006-08-22 David Harrison <harrison@apple.com>
2910 <rdar://problem/4407336> Some non-text elements return AXTextMarkerRangeForUIElement with equal start and end marker
2912 * bridge/mac/WebCoreAXObject.mm:
2913 (-[WebCoreAXObject textMarkerRange]):
2914 Use 0 and maxDeepOffset(), instead of caretMinOffset() and caretMaxRenderedOffset().
2915 Check for VisiblePositions being equal. If so, adjust end one to its next().
2916 That happens with, e.g., buttons.
2918 2006-08-22 Rob Buis <buis@kde.org>
2922 http://bugzilla.opendarwin.org/show_bug.cgi?id=10491
2923 KCanvasMatrix removal
2925 Remove KCanvasMatrix from project, using AffineTransform instead.
2927 * WebCore.xcodeproj/project.pbxproj:
2928 * kcanvas/KCanvasMatrix.cpp: Removed.
2929 * kcanvas/KCanvasMatrix.h: Removed.
2930 * kcanvas/KCanvasResources.cpp:
2931 (WebCore::KCanvasMarker::draw):
2932 * kcanvas/KCanvasResources.h:
2933 * kcanvas/RenderForeignObject.cpp:
2934 * kcanvas/RenderPath.h:
2935 * kcanvas/RenderSVGContainer.cpp:
2936 (WebCore::RenderSVGContainer::viewportTransform):
2937 (WebCore::RenderSVGContainer::getAspectRatio):
2938 * kcanvas/RenderSVGContainer.h:
2939 * kcanvas/RenderSVGText.cpp:
2940 * kcanvas/device/KRenderingDevice.h:
2941 * kcanvas/device/KRenderingPaintServerGradient.cpp:
2942 (WebCore::KRenderingPaintServerGradient::gradientTransform):
2943 (WebCore::KRenderingPaintServerGradient::setGradientTransform):
2944 (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2945 * kcanvas/device/KRenderingPaintServerGradient.h:
2946 * kcanvas/device/KRenderingPaintServerPattern.cpp:
2947 (WebCore::KRenderingPaintServerPattern::patternTransform):
2948 (WebCore::KRenderingPaintServerPattern::setPatternTransform):
2949 (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2950 * kcanvas/device/KRenderingPaintServerPattern.h:
2951 * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2952 * kcanvas/device/quartz/KCanvasItemQuartz.mm:
2953 * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2954 * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2955 (WebCore::KRenderingDeviceContextQuartz::concatCTM):
2956 (WebCore::KRenderingDeviceContextQuartz::ctm):
2957 * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2958 (WebCore::KRenderingPaintServerGradientQuartz::renderPath):
2959 * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2960 (WebCore::KRenderingPaintServerPatternQuartz::setup):
2961 * kcanvas/device/quartz/QuartzSupport.mm:
2962 * ksvg2/misc/KCanvasRenderingStyle.h:
2963 * ksvg2/svg/SVGAnimateTransformElement.cpp:
2964 * ksvg2/svg/SVGAnimateTransformElement.h:
2965 * ksvg2/svg/SVGLinearGradientElement.cpp:
2966 (SVGLinearGradientElement::buildGradient):
2967 * ksvg2/svg/SVGPatternElement.cpp:
2968 (WebCore::SVGPatternElement::fillAttributesFromReferencePattern):
2969 (WebCore::SVGPatternElement::drawPatternContentIntoTile):
2970 (WebCore::SVGPatternElement::notifyAttributeChange):
2971 * ksvg2/svg/SVGPatternElement.h:
2972 * ksvg2/svg/SVGRadialGradientElement.cpp:
2973 (WebCore::SVGRadialGradientElement::buildGradient):
2975 2006-08-22 Rob Buis <buis@kde.org>
2979 http://bugzilla.opendarwin.org/show_bug.cgi?id=10405
2980 REPRO: SVG Maze crashes in RenderPath code
2982 Do not render a path when it is empty so maze15.svg does not crash anymore.
2983 Also get rid of a runtime warning issued by CGContextGetPathBoundingBox.
2985 * kcanvas/RenderPath.cpp:
2986 (WebCore::RenderPath::paint):
2987 * kcanvas/device/quartz/KCanvasPathQuartz.mm:
2988 (WebCore::KCanvasPathQuartz::strokeBoundingBox):
2990 2006-08-21 Brady Eidson <beidson@apple.com>
2994 <rdar://4690949> - New IconDB: Need to prune unretained icons on startup
2996 Added a flag to track whether or not the initial pruning has taken place on startup
2997 If that flag is not set, IconURL retain counts will be tracked in a temporary db table
2998 in addition to the in-memory hash. Then when the timer fires after initial retains
2999 are complete, we prune those icons not in the retain table, prune dangling PageURL
3000 references, delete the temporary table, and set the flag - and carry on as normal
3002 * loader/icon/IconDatabase.cpp:
3003 (WebCore::IconDatabase::IconDatabase): initialize the flag
3004 (WebCore::IconDatabase::open): changed the schema of the temporary table
3005 (WebCore::IconDatabase::retainIconURL): store the icon retain to the temp table if starting up
3006 (WebCore::IconDatabase::releaseIconURL): ditto
3007 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): remove all icons *not* in the retain table, then
3008 wipe all the PageURLs who no longer point to a valid IconURL
3009 * loader/icon/IconDatabase.h:
3011 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
3015 http://bugzilla.opendarwin.org/show_bug.cgi?id=10419
3016 XSLTProcessor transformToFragment fails because of an XML declaration
3018 Test: fast/xsl/transformToFragment-XML-declaration.html
3020 * xml/XSLTProcessor.cpp:
3021 (WebCore::XSLTProcessor::transformToString): Always inhibit XML declaration printout.
3023 2006-08-21 David Harrison <harrison@apple.com>
3027 <rdar://problem/4471481> Represent misspellings in AXAttributedStringForTextMarkerRange
3029 Added support for the NSAccessibilityMisspelledTextAttribute.
3031 Test cases added: None. Manual AX testing is way too awkward, and automated testing
3032 is not possible. See following bug...
3033 <rdar://problem/4256882> Need automated testing support for accessibility APIs
3035 * bridge/mac/WebCoreAXObject.mm:
3036 Lots of trivial formatting in many methods.
3038 (-[WebCoreAXObject accessibilityAttributeValue:]):
3039 Fixed AXStartTextMarker and AXEndTextMarker to use startOfDocument and endOfDocument, instead of
3040 of positionForCoordinates. I had seen erroneous endOfDocument results while testing the spelling
3043 (WebCore::AXAttributeStringSetSpelling):
3044 New. Adds the NSAccessibilityMisspelledTextAttribute for misspelled words.
3046 (-[WebCoreAXObject AXAttributedStringAppendText:]):
3047 Added call to AXAttributeStringSetSpelling.
3049 * editing/visible_units.cpp:
3050 (WebCore::startOfDocument):
3051 (WebCore::endOfDocument):
3052 Added for AXStartTextMarker/AXEndTextMarker fix, these forms of the familiar functions take a Node*,
3053 so a previously existing VisiblePosition is not required.
3055 * editing/visible_units.h:
3056 Declare new forms of startOfDocument and endOfDocument.
3058 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
3062 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3063 WebKit should have Qt platform support
3065 * platform/qt/TemporaryLinkStubs.cpp: Added.
3066 (JavaAppletWidget::JavaAppletWidget):
3067 (Font::selectionRectForComplexText):
3068 (Font::offsetForPositionForComplexText):
3069 (WebCore::refreshPlugins):
3070 (WebCore::focusRingColor):
3072 (WebCore::TextField::selectAll):
3073 (WebCore::TextField::addSearchResult):
3074 (WebCore::TextField::selectionStart):
3075 (WebCore::TextField::hasSelectedText):
3076 (WebCore::TextField::selectedText):
3077 (WebCore::TextField::setAutoSaveName):
3078 (WebCore::TextField::checksDescendantsForFocus):
3079 (WebCore::TextField::setSelection):
3080 (WebCore::TextField::setMaxResults):
3081 (WebCore::TextField::edited):
3082 (WebCore::TextField::focusPolicy):
3083 (WebCore::TextField::TextField):
3084 (WebCore::TextField::~TextField):
3085 (WebCore::TextField::setFont):
3086 (WebCore::TextField::setAlignment):
3087 (WebCore::TextField::setWritingDirection):
3088 (WebCore::TextField::maxLength):
3089 (WebCore::TextField::setMaxLength):
3090 (WebCore::TextField::text):
3091 (WebCore::TextField::setText):
3092 (WebCore::TextField::cursorPosition):
3093 (WebCore::TextField::setCursorPosition):
3094 (WebCore::TextField::setEdited):
3095 (WebCore::TextField::setReadOnly):
3096 (WebCore::TextField::setPlaceholderString):
3097 (WebCore::TextField::setColors):
3098 (WebCore::TextField::sizeForCharacterWidth):
3099 (WebCore::TextField::baselinePosition):
3100 (WebCore::TextField::setLiveSearch):
3101 (WebCore::Slider::Slider):
3102 (WebCore::Slider::sizeHint):
3103 (WebCore::Slider::~Slider):
3104 (WebCore::Slider::setValue):
3105 (WebCore::Slider::setMaxValue):
3106 (WebCore::Slider::setMinValue):
3107 (WebCore::Slider::setFont):
3108 (WebCore::Slider::value):
3109 (WebCore::Slider::focusPolicy):
3110 (WebCore::ScrollBar::ScrollBar):
3111 (WebCore::ScrollBar::setSteps):
3112 (WebCore::ScrollBar::scroll):
3113 (WebCore::ScrollBar::setValue):
3114 (WebCore::ScrollBar::setKnobProportion):
3115 (WebCore::PlatformScrollBar::PlatformScrollBar):
3116 (WebCore::PlatformScrollBar::~PlatformScrollBar):
3117 (WebCore::PlatformScrollBar::width):
3118 (WebCore::PlatformScrollBar::height):
3119 (WebCore::PlatformScrollBar::setEnabled):
3120 (WebCore::PlatformScrollBar::paint):
3121 (WebCore::PlatformScrollBar::setScrollBarValue):
3122 (WebCore::PlatformScrollBar::setKnobProportion):
3123 (WebCore::PlatformScrollBar::setRect):
3124 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3125 (WebCore::CheckCacheObjectStatus):
3126 (WebCore::CheckIfReloading):
3127 (WebCore::ServeSynchronousRequest):
3128 (WebCore::historyContains):
3129 (WebCore::submitButtonDefaultLabel):
3130 (WebCore::inputElementAltText):
3131 (WebCore::resetButtonDefaultLabel):
3132 (WebCore::defaultLanguage):
3133 (WebCore::findNextSentenceFromIndex):
3134 (WebCore::findSentenceBoundary):
3135 (WebCore::findNextWordFromIndex):
3136 (WebCore::findWordBoundary):
3137 (Frame::setNeedsReapplyStyles):
3138 (WebCore::screenDepthPerComponent):
3139 (WebCore::screenIsMonochrome):
3140 (WebCore::searchableIndexIntroduction):
3141 (WebCore::setFocusRingColorChangeFunction):
3142 (FrameView::updateBorder):
3143 (loadResourceIntoArray):
3144 (PlugInInfoStore::createPluginInfoForPluginAtIndex):
3145 (PlugInInfoStore::pluginCount):
3146 (WebCore::PlugInInfoStore::supportsMIMEType):
3147 (FileButton::FileButton):
3148 (FileButton::click):
3149 (FileButton::sizeForCharacterWidth):
3150 (FileButton::focusPolicy):
3151 (FileButton::frameGeometry):
3152 (FileButton::setFilename):
3153 (FileButton::baselinePosition):
3154 (FileButton::setFrameGeometry):
3155 (FileButton::setDisabled):
3156 (WebCore::supportedKeySizes):
3157 (WebCore::signedPublicKeyAndChallengeString):
3159 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
3163 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3164 WebKit should have Qt platform support
3166 * platform/qt/CursorQt.cpp: Added.
3167 (WebCore::Cursor::Cursor):
3168 (WebCore::Cursor::~Cursor):
3169 (WebCore::Cursor::operator=):
3170 (WebCore::Cursors::Cursors::self):
3171 (WebCore::moveCursor):
3172 (WebCore::crossCursor):
3173 (WebCore::handCursor):
3174 (WebCore::iBeamCursor):
3175 (WebCore::waitCursor):
3176 (WebCore::helpCursor):
3177 (WebCore::eastResizeCursor):
3178 (WebCore::northResizeCursor):
3179 (WebCore::northEastResizeCursor):
3180 (WebCore::northWestResizeCursor):
3181 (WebCore::southResizeCursor):
3182 (WebCore::southEastResizeCursor):
3183 (WebCore::southWestResizeCursor):
3184 (WebCore::westResizeCursor):
3185 (WebCore::northSouthResizeCursor):
3186 (WebCore::eastWestResizeCursor):
3187 (WebCore::northEastSouthWestResizeCursor):
3188 (WebCore::northWestSouthEastResizeCursor):
3189 (WebCore::columnResizeCursor):
3190 (WebCore::rowResizeCursor):
3191 * platform/qt/RenderThemeQt.cpp: Added.
3192 (WebCore::RenderThemeQt::RenderThemeQt):
3193 (WebCore::RenderThemeQt::supportsHover):
3194 (WebCore::RenderThemeQt::paintCheckbox):
3195 (WebCore::RenderThemeQt::paintRadio):
3197 (WebCore::RenderThemeQt::isControlStyled):
3198 (WebCore::RenderThemeQt::controlSupportsTints):
3199 (WebCore::RenderThemeQt::systemFont):
3200 (WebCore::RenderThemeQt::createPopupMenu):
3201 (WebCore::RenderThemeQt::addIntrinsicMargins):
3202 (WebCore::RenderThemeQt::stylePainterAndWidgetForPaintInfo):
3203 (WebCore::RenderThemeQt::setCheckboxSize):
3204 (WebCore::RenderThemeQt::setRadioSize):
3205 (WebCore::RenderThemeQt::supportsFocus):
3206 (WebCore::RenderThemeQt::applyTheme):
3207 (WebCore::RenderThemeQt::adjustButtonStyle):
3208 (WebCore::RenderThemeQt::paintButton):
3209 (WebCore::RenderThemeQt::adjustTextFieldStyle):
3210 (WebCore::RenderThemeQt::paintTextField):
3212 2006-08-21 Nikolas Zimmermann <zimmermann@kde.org>
3216 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3217 WebKit should have Qt platform support
3219 * platform/qt/SharedTimerQt.cpp: Added.
3220 (WebCore:setSharedTimerFiredFunction):
3221 (WebCore::setSharedTimerFireTime):
3222 (WebCore::stopSharedTimer):
3223 * platform/qt/SharedTimerQt.h: Added.
3224 (WebCore::SharedTimerQt::SharedTimerQt):
3225 (WebCore::SharedTimerQt::~SharedTimerQt):
3226 (WebCore::SharedTimerQt::inst):
3227 (WebCore::SharedTimerQt::fire):
3228 * platform/qt/SystemTimeQt.cpp: Added.
3229 (WebCore::currentTime):
3231 2006-08-21 Brady Eidson <beidson@apple.com>
3235 -Defers writing to the database via a timer and handles starting the timer
3238 * loader/icon/IconDatabase.cpp:
3239 (WebCore::IconDatabase::IconDatabase):
3240 (WebCore::IconDatabase::open): Don't start the update timer by default
3241 (WebCore::IconDatabase::close): Call syncDatabase()
3242 (WebCore::IconDatabase::setPrivateBrowsingEnabled): Call syncDatabase()
3243 (WebCore::IconDatabase::setIconURLForPageURL): Setup the cached url, but defer the DB call
3244 (WebCore::IconDatabase::setIconURLForPageURLInDatabase): Actually commit the url to the DB
3245 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup):
3246 (WebCore::IconDatabase::updateDatabase): The updateTimer calls this, which just calls syncDatabase()
3247 (WebCore::IconDatabase::syncDatabase): Add and remove pending pageURLs and iconURLs, and stop the updateTimer
3248 * loader/icon/IconDatabase.h:
3250 2006-08-21 Alexey Proskuryakov <ap@nypop.com>
3254 - http://bugzilla.opendarwin.org/show_bug.cgi?id=10429
3255 XSLTProcessor.transformToFragment crashes if the owner document is empty
3257 Test: fast/js/xslt-fragment-in-empty-doc.html
3259 * dom/XMLTokenizer.cpp:
3260 (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
3262 2006-08-21 Brady Eidson <beidson@apple.com>
3266 -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
3267 In the near future, we'll also have timer-based deferred *addition* of database records
3268 -Keep retain/release counts in a hash instead of a DB table
3269 -Keep only one hash record for the SiteIcons
3270 -Renamed some methods for clarity
3272 * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
3273 * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
3274 (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
3275 * loader/icon/IconDatabase.cpp:
3276 (WebCore::IconDatabase::IconDatabase):
3277 (WebCore::IconDatabase::open): Added new timer setup
3278 (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
3279 (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
3280 (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
3281 (WebCore::IconDatabase::retainIconURL): Added
3282 (WebCore::IconDatabase::releaseIconURL): Added
3283 (WebCore::IconDatabase::forgetPageURL): Added
3284 (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
3285 (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
3286 (WebCore::IconDatabase::setIconURLForPageURL):
3287 (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
3288 (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
3289 (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
3290 * loader/icon/IconDatabase.h: Added multiple stuffs
3292 2006-08-21 Brady Eidson <beidson@apple.com>
3294 Reviewed by Maciej's rubberstamp
3296 Removed stale file references from the Xcode.proj
3298 * WebCore.xcodeproj/project.pbxproj:
3300 2006-08-20 Nikolas Zimmermann <zimmermann@kde.org>
3302 Reviewed by Maciej. Landed by rwlbuis.
3304 Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10463
3305 WebKit should have Qt platform support
3307 Removing HelperQt.h usage by creating appropriate operators
3308 constructor in some of the platform classes, as suggested by Darin.
3311 * platform/DeprecatedString.h:
3313 * platform/PlatformString.h:
3314 * platform/qt/ComboBoxQt.cpp:
3315 (WebCore::PlatformComboBox::appendItem):
3316 (WebCore::PlatformComboBox::appendGroupLabel):
3317 (WebCore::PlatformComboBox::setFont):
3318 * platform/qt/LineEditQt.cpp:
3319 (WebCore::PlatformLineEdit::setFont):
3320 (WebCore::PlatformLineEdit::setText):
3321 (WebCore::PlatformLineEdit::text):
3322 (WebCore::PlatformLineEdit::selectedText):
3323 * platform/qt/ListBoxQt.cpp:
3324 (WebCore::ListBox::setFont):
3325 (WebCore::ListBox::appendItem):
3326 * platform/qt/PlatformKeyboardEventQt.cpp:
3327 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3328 * platform/qt/ScrollViewQt.cpp:
3329 * platform/qt/StringQt.cpp: Added.
3330 (WebCore::String::String):
3331 (WebCore::String::operator QString):
3332 (WebCore::DeprecatedString::operator QString):
3333 * platform/qt/TextEditQt.cpp:
3334 * platform/qt/WidgetQt.cpp:
3335 (WebCore::Widget::setFont):
3337 2006-08-18 Steve Falkenburg <sfalken@apple.com>
3339 Rubber stamped by adele.
3341 Fix call to WebFormDelegate's textFieldDidBeginEditing.
3343 * rendering/RenderTextControl.cpp:
3344 (WebCore::RenderTextControl::subtreeHasChanged):
3346 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3348 Reviewed by Eric. Landed by rwlbuis.
3350 Next chunk of the implementation for:
3351 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3353 WebKit should have Qt platform support
3355 * platform/qt/KeyboardCodes.h: Added.
3356 * platform/qt/PlatformKeyboardEventQt.cpp: Added.
3357 (WebCore::keyIdentifierForQtKeyCode):
3358 (WebCore::windowsKeyCodeForKeyEvent):
3359 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3360 * platform/qt/PlatformMouseEventQt.cpp: Added.
3362 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
3364 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3366 Reviewed by Eric. Landed by rwlbuis.
3368 Next chunk of the implementation for:
3369 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3371 WebKit should have Qt platform support
3373 * platform/qt/AffineTransformQt.cpp: Added.
3374 (WebCore::AffineTransform::AffineTransform):
3375 (WebCore::AffineTransform::setMatrix):
3376 (WebCore::AffineTransform::map):
3377 (WebCore::AffineTransform::mapRect):
3378 (WebCore::AffineTransform::isIdentity):
3379 (WebCore::AffineTransform::m11):
3380 (WebCore::AffineTransform::m12):
3381 (WebCore::AffineTransform::m21):
3382 (WebCore::AffineTransform::m22):
3383 (WebCore::AffineTransform::dx):
3384 (WebCore::AffineTransform::dy):
3385 (WebCore::AffineTransform::reset):
3386 (WebCore::AffineTransform::scale):
3387 (WebCore::AffineTransform::rotate):
3388 (WebCore::AffineTransform::translate):
3389 (WebCore::AffineTransform::shear):
3390 (WebCore::AffineTransform::det):
3391 (WebCore::AffineTransform::invert):
3392 (WebCore::AffineTransform::operator QMatrix):
3393 (WebCore::AffineTransform::operator==):
3394 (WebCore::AffineTransform::operator*=):
3395 (WebCore::AffineTransform::operator*):
3396 * platform/qt/BrowserExtensionQt.cpp: Added.
3397 (WebCore::BrowserExtensionQt::BrowserExtensionQt):
3398 (WebCore::BrowserExtensionQt::canRunModal):
3399 (WebCore::BrowserExtensionQt::createNewWindow):
3400 (WebCore::BrowserExtensionQt::canRunModalNow):
3401 (WebCore::BrowserExtensionQt::runModal):
3402 (WebCore::BrowserExtensionQt::goBackOrForward):
3403 (WebCore::BrowserExtensionQt::historyURL):
3404 (WebCore::BrowserExtensionQt::setTypedIconURL):
3405 (WebCore::BrowserExtensionQt::setIconURL):
3406 (WebCore::BrowserExtensionQt::getHistoryLength):
3407 * platform/qt/BrowserExtensionQt.h: Added.
3408 * platform/qt/CookieJarQt.cpp: Added.
3409 (WebCore::setCookies):
3411 (WebCore::cookiesEnabled):
3412 * platform/qt/PageQt.cpp: Added.
3413 (WebCore::rootWindowForFrame):
3414 (WebCore::Page::windowRect):
3415 (WebCore::Page::setWindowRect):
3416 * platform/qt/PathQt.cpp: Added.
3417 (WebCore::Path::Path):
3418 (WebCore::Path::~Path):
3419 (WebCore::Path::operator=):
3420 (WebCore::Path::contains):
3421 (WebCore::Path::translate):
3422 (WebCore::Path::boundingRect):
3423 (WebCore::Path::moveTo):
3424 (WebCore::Path::addLineTo):
3425 (WebCore::Path::addQuadCurveTo):
3426 (WebCore::Path::addBezierCurveTo):
3427 (WebCore::Path::addArcTo):
3428 (WebCore::Path::closeSubpath):
3429 (WebCore::Path::addArc):
3430 (WebCore::Path::addRect):
3431 (WebCore::Path::addEllipse):
3432 (WebCore::Path::clear):
3433 * platform/qt/ScreenQt.cpp: Added.
3434 (WebCore::screenRect):
3435 (WebCore::screenDepth):
3436 (WebCore::usableScreenRect):
3439 2006-08-19 Nikolas Zimmermann <zimmermann@kde.org>
3441 Reviewed by Eric. Landed by rwlbuis.
3443 First chunk of the implementation for:
3444 http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
3446 WebKit should have Qt platform support
3448 * platform/qt/ComboBoxQt.cpp: Added.
3449 (WebCore::PlatformComboBox::PlatformComboBox):
3450 (WebCore::PlatformComboBox::~PlatformComboBox):
3451 (WebCore::PlatformComboBox::setParentWidget):
3452 (WebCore::PlatformComboBox::clear):
3453 (WebCore::PlatformComboBox::appendItem):
3454 (WebCore::PlatformComboBox::appendGroupLabel):
3455 (WebCore::PlatformComboBox::appendSeparator):
3456 (WebCore::PlatformComboBox::setCurrentItem):
3457 (WebCore::PlatformComboBox::sizeHint):
3458 (WebCore::PlatformComboBox::frameGeometry):
3459 (WebCore::PlatformComboBox::setFrameGeometry):
3460 (WebCore::PlatformComboBox::baselinePosition):
3461 (WebCore::PlatformComboBox::setFont):
3462 (WebCore::PlatformComboBox::focusPolicy):
3463 (WebCore::PlatformComboBox::itemSelected):
3464 (WebCore::PlatformComboBox::setWritingDirection):
3465 (WebCore::PlatformComboBox::populate):
3466 (WebCore::PlatformComboBox::populateMenu):
3467 * platform/qt/LineEditQt.cpp: Added.
3468 (WebCore::PlatformLineEdit::PlatformLineEdit):
3469 (WebCore::PlatformLineEdit::~PlatformLineEdit):
3470 (WebCore::PlatformLineEdit::setParentWidget):
3471 (WebCore::PlatformLineEdit::setColors):
3472 (WebCore::PlatformLineEdit::setAlignment):
3473 (WebCore::PlatformLineEdit::setCursorPosition):
3474 (WebCore::PlatformLineEdit::cursorPosition):
3475 (WebCore::PlatformLineEdit::setEdited):
3476 (WebCore::PlatformLineEdit::edited):
3477 (WebCore::PlatformLineEdit::setFont):
3478 (WebCore::PlatformLineEdit::setMaxLength):
3479 (WebCore::PlatformLineEdit::maxLength):
3480 (WebCore::PlatformLineEdit::setReadOnly):
3481 (WebCore::PlatformLineEdit::isReadOnly):
3482 (WebCore::PlatformLineEdit::setText):
3483 (WebCore::PlatformLineEdit::text):
3484 (WebCore::PlatformLineEdit::setWritingDirection):
3485 (WebCore::PlatformLineEdit::selectAll):
3486 (WebCore::PlatformLineEdit::hasSelectedText):
3487 (WebCore::PlatformLineEdit::selectionStart):
3488 (WebCore::PlatformLineEdit::selectedText):
3489 (WebCore::PlatformLineEdit::setSelection):
3490 (WebCore::PlatformLineEdit::sizeForCharacterWidth):
3491 (WebCore::PlatformLineEdit::baselinePosition):
3492 (WebCore::PlatformLineEdit::focusPolicy):
3493 (WebCore::PlatformLineEdit::checksDescendantsForFocus):
3494 (WebCore::PlatformLineEdit::setLiveSearch):
3495 (WebCore::PlatformLineEdit::setAutoSaveName):
3496 (WebCore::PlatformLineEdit::setMaxResults):
3497 (WebCore::PlatformLineEdit::setPlaceholderString):
3498 (WebCore::PlatformLineEdit::addSearchResult):
3499 * platform/qt/ListBoxQt.cpp: Added.
3500 (WebCore::ListBox::ListBox):
3501 (WebCore::ListBox::~ListBox):
3502 (WebCore::ListBox::setParentWidget):
3503 (WebCore::ListBox::sizeForNumberOfLines):
3504 (WebCore::ListBox::setSelectionMode):
3505 (WebCore::ListBox::clear):
3506 (WebCore::ListBox::doneAppendingItems):
3507 (WebCore::ListBox::setSelected):
3508 (WebCore::ListBox::isSelected):
3509 (WebCore::ListBox::setEnabled):
3510 (WebCore::ListBox::isEnabled):
3511 (WebCore::ListBox::setWritingDirection):
3512 (WebCore::ListBox::focusPolicy):
3513 (WebCore::ListBox::checksDescendantsForFocus):
3514 (WebCore::ListBox::clearCachedTextRenderers):
3515 (WebCore::ListBox::setFont):
3516 (WebCore::ListBox::appendItem):
3517 * platform/qt/ScrollViewQt.cpp: Added.
3518 (WebCore::ScrollView::ScrollView):
3519 (WebCore::ScrollView::~ScrollView):
3520 (WebCore::ScrollView::setParentWidget):
3521 (WebCore::ScrollView::updateContents):
3522 (WebCore::ScrollView::visibleWidth):
3523 (WebCore::ScrollView::visibleHeight):
3524 (WebCore::ScrollView::visibleContentRect):
3525 (WebCore::ScrollView::setContentsPos):
3526 (WebCore::ScrollView::resizeContents):
3527 (WebCore::ScrollView::contentsX):
3528 (WebCore::ScrollView::contentsY):