1 2007-11-10 Mark Rowe <mrowe@apple.com>
5 * platform/UnicodeRange.h:
7 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
11 Fixes: http://bugs.webkit.org/show_bug.cgi?id=15937 (Add glyph-orientation-horizontal/vertical support)
12 Fixes: http://bugs.webkit.org/show_bug.cgi?id=13971 (text-anchor support on vertical text seems slightly off)
14 Add glyph-orientation-* support for text & textPath. (90/180/270 and 'auto')
15 Also fix all vertical text handling - for text & textPath! (especially latin1 characters auto orientation in vertical writing modes)
17 * WebCore.pro: Add platform/UnicodeRange.cpp to build
18 * WebCore.xcodeproj/project.pbxproj: Dito.
19 * rendering/SVGCharacterLayoutInfo.cpp: Respect orientationShiftX/Y & angle in characterTransform()
20 (WebCore::SVGChar::characterTransform):
21 * rendering/SVGCharacterLayoutInfo.h: New variables.
22 (WebCore::SVGCharOnPath::SVGCharOnPath):
23 (WebCore::SVGChar::SVGChar):
24 * rendering/SVGRootInlineBox.cpp: Added glyph-orientation-* handling.
25 (WebCore::glyphOrientationToAngle):
26 (WebCore::glyphOrientationIsMultiplyOf180Degrees):
27 (WebCore::calculateGlyphAdvanceAndShiftRespectingOrientation):
28 (WebCore::cummulatedHeightOfInlineBoxCharacterRange):
29 (WebCore::cummulatedWidthOrHeightOfTextChunk):
30 (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
32 2007-11-10 Timothy Hatcher <timothy@apple.com>
34 Reviewed by Sam Weinig.
36 * page/inspector/StylesSidebarPane.js: Fix the wording of a comment
37 and switch over to use getUniqueProperties in another place.
39 2007-11-10 John Sullivan <sullivan@apple.com>
41 Reviewed by Sam Weinig
43 Rest of fix for 5394877
45 * bindings/js/kjs_window.cpp:
46 (KJS::Window::isSafeScript):
47 Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
48 private browsing mode either.
50 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
54 Fix function name difference - header said 'unicodeRangeForCharacter', actually
55 implemented function is 'findCharUnicodeRange'. They are not compiled yet.
57 * platform/UnicodeRange.h:
59 2007-11-10 Dan Bernstein <mitz@apple.com>
61 Reviewed by Darin Adler.
63 - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
65 No test because context menu events cannot be tested in DumpRenderTree.
67 * page/EventHandler.cpp:
68 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
69 If the click occurred in an active link, selects the entire link
70 element. Otherwise selects the closest word.
71 (WebCore::EventHandler::sendContextMenuEvent): Call
72 selectClosestWordOrLinkFromMouseEvent().
73 * page/EventHandler.h:
75 2007-11-10 John Sullivan <sullivan@apple.com>
77 Reviewed by Tim Hatcher
79 - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when
80 in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
82 * bindings/js/kjs_window.cpp:
83 (KJS::Window::isSafeScript):
84 Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
86 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
90 http://bugs.webkit.org/show_bug.cgi?id=15922
91 Implement more of Mozilla Selection API
93 Tests: editing/selection/containsNode.html
94 editing/selection/deleteFromDocument.html
95 editing/selection/extend.html
96 editing/selection/selectAllChildren.html
98 * editing/SelectionController.cpp:
99 (WebCore::SelectionController::deleteFromDocument):
100 (WebCore::SelectionController::containsNode):
101 (WebCore::SelectionController::selectAllChildren):
102 (WebCore::SelectionController::extend):
103 * editing/SelectionController.h:
104 Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
105 which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
106 Removed a comment mentioning removeRange(), as this method makes no sense without multiple
107 selection range support.
109 * page/DOMSelection.cpp:
110 (WebCore::DOMSelection::extend):
111 (WebCore::DOMSelection::deleteFromDocument):
112 (WebCore::DOMSelection::containsNode):
113 (WebCore::DOMSelection::selectAllChildren):
114 * page/DOMSelection.h:
115 * page/DOMSelection.idl:
116 Exposed the new methods.
118 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
122 http://bugs.webkit.org/show_bug.cgi?id=15892
123 DOM Range operations are not implemented for ProcessingInstruction nodes
125 Test: fast/dom/Range/range-processing-instructions.html
128 (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
129 (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
130 to use ProcessingInstruction.data.
132 2007-11-09 Timothy Hatcher <timothy@apple.com>
134 Reviewed by Mark Rowe.
136 Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
137 http://bugs.webkit.org/show_bug.cgi?id=12054
139 - Add support code for routing copy events to the focused element.
140 - Implement copying the currently selected DOM node. The node
141 and it's subtree is copied to the clipboard. If the node has no
142 outerHTML, the nodeValue is copied (text nodes, etc.)
143 - Implement copy for the resource sidebar. The URL is copied for the
144 currently selected resource.
146 * page/inspector/DocumentPanel.js:
147 * page/inspector/inspector.js:
149 2007-11-09 Antti Koivisto <antti@apple.com>
153 Fix occasional blank video with poster attribute.
156 * html/HTMLMediaElement.cpp:
157 (WebCore::HTMLMediaElement::load):
158 (WebCore::HTMLMediaElement::didRestoreFromCache):
159 Just calling updateFromElement() does the right thing for both poster image and video.
161 2007-11-04 Sam Weinig <sam@webkit.org>
163 Reviewed by Adam Roben.
165 <rdar://problem/5435940>
166 The COM bindings for the DOM should be autogenerated like the other DOM bindings
168 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
169 is being introduced in this patch and to insure that no conflicts arise, a temporary
170 prefix of "GEN_" has been used for all the new classes.
172 The build architecture for these bindings differs slightly from the other autogenerated
173 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
174 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
175 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
177 This commit includes:
178 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
180 - Generating all of the Core DOM and most of HTML and CSS
181 - Generating Event, EventTarget, and EventListener
183 * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
184 * WebCore.vcproj/WebCore.vcproj:
185 * WebCore.vcproj/migrate-idls.sh: Added.
186 * bindings/scripts/CodeGenerator.pm:
187 * bindings/scripts/CodeGeneratorCOM.pm: Added.
188 * dom/EventListener.h: Make the isWindowEvent parameter default to false
189 to allow autogeneration based on the IDL.
191 2007-11-09 Tristan O'Tierney <tristan@apple.com>
193 Reviewed by Timothy Hatcher.
195 This patch is for the WebKit side of <rdar://problem/5591115>.
196 We need a way to tell context menu navigations, such as "Open in New Window"
197 to override any sort of browser preference for tab based navigation.
199 * bridge/WindowFeatures.h:
200 (WebCore::WindowFeatures::WindowFeatures):
201 Added a new struct member var, preferredType
202 and an accompanying enum type PreferredType
203 to send a window type recommendation up to the Chrome.
205 * page/ContextMenuController.cpp:
206 (WebCore::openNewWindow):
207 Set the window features to recommend a new Window for
208 "Open in New Window" context menu action.
210 2007-11-08 Adam Roben <aroben@apple.com>
212 Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
214 We now match the behavior of Firefox and IE, which is to always just
215 send a click event to the focused button when the Enter key is pressed
216 (previously we were submitting forms directly in some cases).
220 Test: fast/forms/enter-clicks-buttons.html
222 * html/HTMLButtonElement.cpp:
223 (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
224 fancy when Enter is pressed on a <button type=button> -- just send a
225 click event like we do for other button types.
226 * html/HTMLInputElement.cpp:
227 (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
228 the same way we treat type=submit and type=reset: just send a click
229 event when Enter is pressed.
231 2007-11-09 Dan Bernstein <mitz@apple.com>
233 Reviewed by Antti Koivisto.
235 - fix a bug in invisible layer culling: dynamically changing a
236 descendant of an invisible layer to be visible did not work
238 Test: fast/layers/layer-content-visibility-change.html
240 * rendering/RenderLayer.cpp:
241 (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
242 make sure that our stacking context rebuilds its z-order lists to
245 2007-11-09 David Hyatt <hyatt@apple.com>
247 Clean up matrix() parsing. Make sure the first four arguments can be lengths or numbers. The last two
248 args can be lengths or numbers or percents.
252 * WebCore.xcodeproj/project.pbxproj:
254 (WebCore::TransformOperationInfo::TransformOperationInfo):
255 (WebCore::CSSParser::parseTransform):
256 * rendering/RenderStyle.h:
257 (WebCore::MatrixTransformOperation::apply):
259 2007-11-09 Beth Dakin <bdakin@apple.com>
263 Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix
264 math leads to crazy problems
266 Transform matrices accept the first four parameters as CSS lengths.
267 CSS lengths get mapped into WebCore::Lengths as percents by
268 WebCore::convertToLength(). Percent lengths cannot call value(). It
269 does not yield a correct result and it asserts on Debug builds.
271 * rendering/RenderStyle.h:
272 (WebCore::MatrixTransformOperation::apply): Instead of calling
273 value() on the lengths, call calcValue. This fixes the assert and
276 2007-11-09 Simon Hausmann <hausmann@kde.org>
278 Reviewed by nobody, build/link fix for Qt/Windows.
280 userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
283 * platform/qt/TemporaryLinkStubs.cpp:
285 2007-11-09 Simon Hausmann <hausmann@kde.org>
289 Fix ContextMenu allocation in the Qt port.
291 Store all items and submenus value based in ContextMenu and ContextMenuItem.
292 That fixes the crashes when the context menu was populated with sub-menus because
293 of the use of temporary ContextMenu objects like this:
295 ContextMenu subMenu(...);
296 subMenu.appendItem(...);
297 subMenu.appendItem(...);
299 subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
301 * platform/ContextMenu.h:
302 * platform/ContextMenuItem.h:
303 * platform/PlatformMenuDescription.h:
304 * platform/qt/ContextMenuItemQt.cpp:
305 (WebCore::ContextMenuItem::ContextMenuItem):
306 (WebCore::ContextMenuItem::platformSubMenu):
307 * platform/qt/ContextMenuQt.cpp:
308 (WebCore::ContextMenu::ContextMenu):
309 (WebCore::ContextMenu::~ContextMenu):
310 (WebCore::ContextMenu::appendItem):
311 (WebCore::ContextMenu::itemCount):
313 2007-11-09 Peter Kasting <zerodpx@gmail.com>
315 Reviewed by Mark Rowe.
317 http://bugs.webkit.org/show_bug.cgi?id=15909
318 Malformed GIFs should not result in memory corruption.
320 * platform/image-decoders/gif/GIFImageDecoder.cpp:
321 (WebCore::GIFImageDecoder::haveDecodedRow):
323 2007-11-08 Timothy Hatcher <timothy@apple.com>
325 Reviewed by Sam Weinig.
327 Some Web Inspector CSS editing changes.
328 - Only delete the property if all the text is delete or the new user input correctly parses.
329 This prevents deleting the existing property if the new text is invalid.
330 - Intercept the Escape key and cancel editing, not saving any changes.
332 * page/inspector/StylesSidebarPane.js:
334 2007-11-08 Kevin Ollivier <kevino@theolliviers.com>
336 Bakefiles for building WebCore, needed by wx port.
338 Reviewed by Mark Rowe.
340 * WebCoreSources.bkl: Added.
341 * webcore-base.bkl: Added.
342 * webcore-wx.bkl: Added.
344 2007-11-08 Justin Haygood <jhaygood@reaktix.com>
346 Reviewed by Mark Rowe.
348 http://bugs.webkit.org/show_bug.cgi?id=15905
350 Fix builds with HTML 5 Storage support disabled.
351 ENABLE(DATABASE) needs to be added in a few places.
353 * page/InspectorController.cpp:
354 * storage/Database.h:
356 2007-11-08 Steve Falkenburg <sfalken@apple.com>
358 <rdar://problem/5524082> Allow images to be dragged out directly into other apps
360 We weren't including CF_HDROP in our image drops. This broke drag of
361 images out of the browser window directly into other apps (examples
362 include notepad, mspaint, msword).
364 Reviewed by Oliver, Ada.
366 * platform/win/ClipboardWin.cpp:
367 (WebCore::createGlobalImageFileContent): Removed unused variable.
368 (WebCore::createGlobalHDropContent): Added
369 (WebCore::writeFileToDataObject): Write HDROP data if available.
370 (WebCore::writeImageToDataObject): Write HDROP for dragged images.
371 (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
373 2007-11-08 Xan Lopez <xan@gnome.org>
377 http://bugs.webkit.org/show_bug.cgi?id=15908
378 Use g_object_ref_sink when available
380 * platform/gtk/PopupMenuGtk.cpp:
381 (WebCore::PopupMenu::show):
382 * platform/gtk/ScrollViewGtk.cpp:
383 (WebCore::ScrollView::setGtkAdjustments):
385 2007-11-08 Dan Bernstein <mitz@apple.com>
387 Reviewed by Beth Dakin.
389 - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
391 Test: fast/dom/length-attribute-mapping.html
393 * dom/StyledElement.cpp:
394 (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
395 logic to stop after the first "%" or "*" in the string. This allows for
396 "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
398 2007-11-08 Kevin McCullough <kmccullough@apple.com>
402 * loader/FrameLoaderClient.h:
403 * platform/graphics/svg/SVGImageEmptyClients.h:
404 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
406 2007-11-08 Kevin McCullough <kmccullough@apple.com>
410 - windowObjectCleared() is no longer const. It needs to setup the
411 script debugger and cannot be const to do so.
413 * loader/FrameLoaderClient.h:
414 * platform/graphics/svg/SVGImageEmptyClients.h:
415 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
417 2007-11-08 Adam Roben <aroben@apple.com>
419 Hopeful Windows build fix
421 * rendering/RenderObject.cpp: Touch this file to make it recompile.
423 2007-11-08 Sam Weinig <sam@webkit.org>
427 Convert JavaScript internal function objects to use one class per
428 function. This avoids a switch statement inside what used to be
429 the shared function classes and will allow Shark to better analyze
432 To make this switch, the value property of the HashEntry was changed
433 to a union of an intptr_t (which is used to continue handle valueGetters)
434 and function pointer which points to a static constructor for the
435 individual new function objects.
437 SunSpider claims this is a 1.0% speedup.
439 - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
440 new classes and hand updated the remain non-generated (groan) classes.
442 * bindings/js/JSDOMWindowCustom.cpp:
443 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
444 * bindings/js/JSEventTargetNode.cpp:
445 (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
446 (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
447 (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
448 * bindings/js/JSEventTargetNode.h:
449 * bindings/js/JSHTMLInputElementBase.cpp:
450 (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
451 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
452 * bindings/js/JSHTMLInputElementBase.h:
453 (WebCore::JSHTMLInputElementBase::):
454 * bindings/js/JSXMLHttpRequest.cpp:
455 (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
456 (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
457 (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
458 (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
459 (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
460 (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
461 (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
462 (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
463 (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
464 (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
465 * bindings/js/JSXMLHttpRequest.h:
466 (KJS::JSXMLHttpRequest::impl):
467 * bindings/js/JSXSLTProcessor.cpp:
468 (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
469 (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
470 (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
471 (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
472 (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
473 (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
474 (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
475 (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
476 * bindings/js/JSXSLTProcessor.h:
477 * bindings/js/kjs_events.cpp:
478 (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
479 (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
480 (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
481 (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
482 * bindings/js/kjs_events.h:
483 * bindings/js/kjs_navigator.cpp:
485 (KJS::Navigator::getOwnPropertySlot):
486 (KJS::Plugins::getOwnPropertySlot):
487 (KJS::PluginsFunctionRefresh::callAsFunction):
488 (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
489 * bindings/js/kjs_navigator.h:
491 * bindings/js/kjs_window.cpp:
492 (KJS::Window::getOwnPropertySlot):
494 (KJS::WindowProtoFuncAToB::callAsFunction):
495 (KJS::WindowProtoFuncBToA::callAsFunction):
496 (KJS::WindowProtoFuncOpen::callAsFunction):
497 (KJS::WindowProtoFuncScrollBy::callAsFunction):
498 (KJS::WindowProtoFuncScrollTo::callAsFunction):
499 (KJS::WindowProtoFuncMoveBy::callAsFunction):
500 (KJS::WindowProtoFuncMoveTo::callAsFunction):
501 (KJS::WindowProtoFuncResizeBy::callAsFunction):
502 (KJS::WindowProtoFuncResizeTo::callAsFunction):
503 (KJS::WindowProtoFuncSetTimeout::callAsFunction):
504 (KJS::WindowProtoFuncClearTimeout::callAsFunction):
505 (KJS::WindowProtoFuncSetInterval::callAsFunction):
506 (KJS::WindowProtoFuncAddEventListener::callAsFunction):
507 (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
508 (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
509 (KJS::WindowProtoFuncNotImplemented::callAsFunction):
510 (KJS::Location::getOwnPropertySlot):
511 (KJS::Location::put):
512 (KJS::LocationProtoFuncReplace::callAsFunction):
513 (KJS::LocationProtoFuncReload::callAsFunction):
514 (KJS::LocationProtoFuncAssign::callAsFunction):
515 (KJS::LocationProtoFuncToString::callAsFunction):
516 * bindings/js/kjs_window.h:
518 * bindings/scripts/CodeGeneratorJS.pm:
520 2007-11-08 Mark Rowe <mrowe@apple.com>
522 Fix the Gtk, Qt and Wx builds.
524 * platform/gtk/TemporaryLinkStubs.cpp:
525 * platform/qt/TemporaryLinkStubs.cpp:
526 * platform/wx/TemporaryLinkStubs.cpp:
528 2007-11-08 Mark Rowe <mrowe@apple.com>
530 Not reviewed. Fix two instances of includes using the wrong case in the filename.
532 * platform/graphics/mac/MoviePrivateQTKit.mm:
533 * platform/wx/MimeTypeRegistryWx.cpp:
535 2007-11-08 Darin Adler <darin@apple.com>
539 - fix <rdar://problem/5552943> accesskey does not focus <button> elements
541 Test: fast/forms/access-key.html
543 * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
544 Added a call to focus.
546 2007-11-07 Darin Adler <darin@apple.com>
550 - cut down on notImplemented() functions on Windows
552 * bridge/AXObjectCache.h: Put #if around the accessibility
555 * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
556 Moved here from TemporaryLinkStubs.
558 * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
559 using the ResourceResponse that's now available from the DocumentLoader.
561 * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
562 the Editor instead of the obsolete one on the Frame.
564 * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
565 * loader/FrameLoader.h: Removed overrideMediaType.
567 * loader/gtk/DocumentLoaderGtk.cpp: Removed.
568 * loader/mac/DocumentLoaderMac.mm: Removed.
569 * loader/qt/DocumentLoaderQt.cpp: Removed.
571 * page/Frame.cpp: Removed transpose.
572 * page/Frame.h: Ditto.
573 * page/FrameView.h: Removed updateBorder.
574 * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
575 * page/mac/FrameMac.mm: Ditto.
576 * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
578 * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
580 * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
581 * platform/qt/TemporaryLinkStubs.cpp: Ditto.
582 * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
583 * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
584 issueTransposeCommand, and overrideMediaType.
586 * platform/network/cf/ResourceHandleCFNet.cpp:
587 (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
588 (WebCore::ResourceHandle::willLoadFromCache): Ditto.
589 * platform/win/GraphicsContextWin.cpp:
590 (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
591 * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
592 * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
593 * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
595 * WebCore.pro: Updated for removed files.
596 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
598 2007-11-08 Mark Rowe <mrowe@apple.com>
600 Build fix for case-sensitive file systems. Fix case of file names
603 * html/HTMLMediaElement.cpp:
604 * platform/graphics/Movie.cpp:
606 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
608 Reviewed by Lars Knoll <lars@trolltech.com>.
610 Remove some warnings about not implemented methods.
612 * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
613 specific to the NS API and won't be implemented on Qt.
614 * ResourceHandle::bufferedData can not be reached as we return false in
615 ResourceHandle::supportsBufferedData.
618 * platform/network/qt/ResourceHandleQt.cpp:
619 (WebCore::ResourceHandle::supportsBufferedData):
621 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
623 Reviewed by Lars Knoll <lars@trolltech.com>.
625 Cleanup checking for the request method.
627 * Check the request method only in QWebNetworkManager::add.
628 * Currently HEAD, GET, POST are allowed and for everything else
629 QWebNetworkManager::add returns false.
630 * Returning false is compatible with ResourceHandle::start and it
631 can be used in ResourceHandle::loadResourceSynchronously to generate
635 * platform/network/qt/ResourceHandleQt.cpp:
636 (WebCore::ResourceHandle::start):
637 (WebCore::ResourceHandle::loadResourceSynchronously):
639 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
641 Reviewed by Lars Knoll <lars@trolltech.com>.
643 Implement WebCore::callOnMainThread
645 Implemented using a global QObject, that is moved to the main thread
646 and then sending a custom event to it.
647 Picked a number below QEvent::User but above any other documented value.
650 * platform/qt/ThreadingQt.cpp:
651 (WebCore::PerformFunctionEvent::PerformFunctionEvent):
652 (WebCore::MainThreadInvoker::MainThreadInvoker):
653 (WebCore::MainThreadInvoker::event):
654 (WebCore::callOnMainThread):
656 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
658 Reviewed by Lars Knoll <lars@trolltech.com>.
660 Avoid problems with calling QPainter::begin() on an already active paintdevice
662 * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
663 crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
664 * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
665 used by the ScrollView on a layout triggered by QWebPage::paintEvent.
668 * platform/qt/WidgetQt.cpp:
669 (WebCore::Widget::invalidateRect):
671 2007-11-08 Eric Seidel <eric@webkit.org>
675 * ksvg2/svg/SVGPathElement.h: remove old comment
677 2007-11-07 Antti Koivisto <antti@apple.com>
681 Ensure video renderer has correct size if video has already been loaded
682 when it is constructed.
684 * rendering/RenderVideo.cpp:
685 (WebCore::RenderVideo::RenderVideo):
687 2007-11-07 Antti Koivisto <antti@apple.com>
691 Ensure video is visible when it should be.
693 * rendering/RenderVideo.cpp:
694 (WebCore::RenderVideo::updateMovie):
696 2007-11-07 Dan Bernstein <mitz@apple.com>
698 Reviewed by Darin Adler.
700 - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
702 Layers and listboxes are two kinds of ScrollBarClient that can be
703 removed while the scrollbar is tracking the mouse. The scrollbar is not
704 destroyed until later, and meanwhile it can try to call the client,
705 which results in a crash.
707 * manual-tests/stale-scrollbar-client-crash.html: Added.
708 * platform/ScrollBar.h:
709 (WebCore::Scrollbar::setClient): Added.
710 * rendering/RenderLayer.cpp:
711 (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
712 * rendering/RenderListBox.cpp:
713 (WebCore::RenderListBox::~RenderListBox): Ditto.
715 2007-11-07 Adam Roben <aroben@apple.com>
717 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
723 * platform/win/SharedBufferWin.cpp:
724 (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
725 empty path, because _wfopen_s will crash if we pass it a null pointer.
727 2007-11-07 David Kilzer <ddkilzer@apple.com>
729 WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
730 <http://bugs.webkit.org/show_bug.cgi?id=14893>
731 <rdar://problem/5380295>
735 Tests: fast/css/device-aspect-ratio.html
736 fast/css/max-device-aspect-ratio.html
737 fast/css/min-device-aspect-ratio.html
739 * css/MediaQueryEvaluator.cpp:
740 (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
741 (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
742 a/b to h/v. Switched first two arguments of the call to cmpvalue() to fix
745 2007-11-07 Dan Bernstein <mitz@apple.com>
747 Reviewed by Dave Hyatt.
749 - fix http://bugs.webkit.org/show_bug.cgi?id=15887
750 REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
752 Test: fast/css/display-none-inline-style-change-crash.html
755 (WebCore::Element::recalcStyle): Fixed the crash by null-checking
756 the current style and removed other checks that are not strictly
759 2007-11-07 Brady Eidson <beidson@apple.com>
763 Remove FrameLoaderClient methods from SVG that were pruned awhile ago
765 * platform/graphics/svg/SVGImageEmptyClients.h:
767 2007-11-07 Dan Bernstein <mitz@apple.com>
769 Reviewed by Darin Adler.
771 - fix a bug where CSS rules with :hover in the ancestor chain stopped
772 working after changing the inline style declaration of the ancestor
774 Test: fast/css/affected-by-hover-after-style-change.html
777 (WebCore::Element::recalcStyle): If we are not forcing style
778 recalculation for all descendants, preserve any "affected by
779 {hover|active|drag} bits that we may have acquired from them.
780 Also renamed _style to currentStyle.
782 2007-11-06 Timothy Hatcher <timothy@apple.com>
786 Bug 11920: Web Inspector should have Firebug-like CSS editing
787 http://bugs.webkit.org/show_bug.cgi?id=11920
789 * css/CSSComputedStyleDeclaration.h:
790 (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
791 this was true, but computed style has no concept of implicit. So false makes more sense
792 and makes the code simpler in the inspector. This function was added for the inspector,
793 so this isn't a compatibility change.
794 * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
795 * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
797 * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
798 * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
799 trying to call a function based on the element's id. Call focused and blurred on the focused
800 element when currentFocusElement is changed. Use the new listItemElement getter instead of
801 the private property.
802 * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
803 Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
804 to allow generation of the title using the DOM element. Add listItemElement and
805 childrenListElement getters.
806 * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
807 * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
808 property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
809 * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
810 instead of the private properties.
812 2007-11-07 Simon Hausmann <hausmann@kde.org>
814 Reviewed by Alexey Proskuryakov.
816 Coding style fix, don't use inline explicitly.
818 * bridge/WindowFeatures.h:
820 2007-11-07 Simon Hausmann <hausmann@kde.org>
824 For safety provide a default constructor for WindowFeatures().
825 ContextMenuController.cpp: createNewWindow as well as QWebPage need to
826 create a default initialized WindowFeatures object on the fly.
828 * bridge/WindowFeatures.h:
829 (WebCore::WindowFeatures::WindowFeatures):
831 2007-11-07 Simon Hausmann <shausman@trolltech.com>
835 Fix "nmake clean" for the Qt/Windows build by replacing tmp/ with a variable that ends with the correct type of slash/backslash depending on the choice of compiler/make tool.
839 2007-11-07 Simon Hausmann <hausmann@kde.org>
843 Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
845 * platform/graphics/qt/ImageQt.cpp:
846 (loadResourcePixmap):
848 2007-11-07 Simon Hausmann <hausmann@kde.org>
852 Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
854 * platform/graphics/qt/ImageQt.cpp:
855 (loadResourcePixmap):
857 2007-11-07 Simon Hausmann <hausmann@kde.org>
861 Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
862 QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
863 in ContextMenu::populate().
864 For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
865 out of it. That menu is currently not functional anymore though.
867 * platform/ContextMenu.h:
868 * platform/ContextMenuItem.h:
869 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
870 * platform/PlatformMenuDescription.h:
871 * platform/qt/ContextMenuItemQt.cpp:
872 (WebCore::ContextMenuItem::ContextMenuItem):
873 (WebCore::ContextMenuItem::type):
874 (WebCore::ContextMenuItem::setType):
875 (WebCore::ContextMenuItem::action):
876 (WebCore::ContextMenuItem::setAction):
877 (WebCore::ContextMenuItem::title):
878 (WebCore::ContextMenuItem::setTitle):
879 (WebCore::ContextMenuItem::platformSubMenu):
880 (WebCore::ContextMenuItem::setSubMenu):
881 (WebCore::ContextMenuItem::setChecked):
882 (WebCore::ContextMenuItem::setEnabled):
883 * platform/qt/ContextMenuQt.cpp:
884 (WebCore::ContextMenu::ContextMenu):
885 (WebCore::ContextMenu::~ContextMenu):
886 (WebCore::ContextMenu::appendItem):
887 (WebCore::ContextMenu::itemCount):
888 (WebCore::ContextMenu::insertItem):
889 (WebCore::ContextMenu::setPlatformDescription):
890 (WebCore::ContextMenu::platformDescription):
892 2007-11-07 Simon Hausmann <hausmann@kde.org>
896 Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
897 but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
898 Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
901 * platform/qt/ContextMenuQt.cpp:
903 2007-11-07 Simon Hausmann <hausmann@kde.org>
907 Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
908 Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
910 * platform/PlatformMouseEvent.h:
911 * platform/qt/PlatformMouseEventQt.cpp:
912 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
914 2007-11-07 Lars Knoll <lars@trolltech.com>
918 don't put nbsp's into the plan text paste
920 Fix both ClipboardQt and PasteboardQt to replace
921 nbsp's with spaces before putting the text onto the
922 native clipboard. This is consistent with Mac and Win
923 and fixes at least editing/pasteboard/4076267-3.html
925 * platform/qt/ClipboardQt.cpp:
926 (WebCore::ClipboardQt::writeRange):
927 * platform/qt/PasteboardQt.cpp:
928 (WebCore::Pasteboard::writeSelection):
930 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
932 Reviewed by Lars Knoll <lars@trolltech.com>.
934 Implement Pasteboard::writeImage()
936 * Pasteboard is now fully implemented. Copying of Images into the Clipboard
938 * As with URLs we only copy into the Clipboard (and not additionally to the
942 WARNING: NO TEST CASES ADDED OR CHANGED
944 * platform/qt/PasteboardQt.cpp:
945 (WebCore::Pasteboard::writeImage):
947 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
949 Reviewed by Lars Knoll <lars@trolltech.com>.
951 Apple CodingStyle fixes
954 WARNING: NO TEST CASES ADDED OR CHANGED
956 * platform/qt/PasteboardQt.cpp:
957 (WebCore::Pasteboard::documentFragment):
959 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
961 Reviewed by Lars Knoll <lars@trolltech.com>.
963 Implement Pasteboard::writeURL()
964 * The URL currently gets written as text/plain and text/uri-list.
965 The win and mac port have some more types which we currently do
966 not support. When supporting them we can use the 'titleString'
968 * As with writeSelection we only copy into the Clipboard. We could
969 consider copying into the Selection as well.
972 WARNING: NO TEST CASES ADDED OR CHANGED
974 * platform/qt/PasteboardQt.cpp:
975 (WebCore::Pasteboard::writeURL):
977 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
979 Reviewed by Lars Knoll <lars@trolltech.com>.
984 WARNING: NO TEST CASES ADDED OR CHANGED
986 * platform/qt/PasteboardQt.cpp:
987 (WebCore::Pasteboard::documentFragment):
989 2007-11-07 Lars Knoll <lars@trolltech.com>
993 Use the correct function calls to convert a selection to
996 WARNING: NO TEST CASES ADDED OR CHANGED
998 * platform/qt/ClipboardQt.cpp:
999 (WebCore::ClipboardQt::setData):
1000 (WebCore::ClipboardQt::writeRange):
1001 * platform/qt/PasteboardQt.cpp:
1002 (WebCore::Pasteboard::writeSelection):
1004 2007-11-07 Lars Knoll <lars@trolltech.com>
1008 Some more clipboard fixes.
1010 We have to set things immediately on the QClipBoard if the
1011 Clipboard object is not for dragging.
1013 This is due to the fact that the Clipboard object might be
1014 rather long lived if accessed through javascript (it'll only
1015 get deleted by JS garbage collection). We have to transfer
1016 the data over to the QClipboard before that to make things work.
1018 Fixes editing/execCommand/copy-without-selection.html
1020 * platform/qt/ClipboardQt.cpp:
1021 (WebCore::ClipboardQt::ClipboardQt):
1022 (WebCore::ClipboardQt::~ClipboardQt):
1023 (WebCore::ClipboardQt::clearData):
1024 (WebCore::ClipboardQt::clearAllData):
1025 (WebCore::ClipboardQt::getData):
1026 (WebCore::ClipboardQt::setData):
1027 (WebCore::ClipboardQt::declareAndWriteDragImage):
1028 (WebCore::ClipboardQt::writeURL):
1029 (WebCore::ClipboardQt::writeRange):
1031 2007-11-07 Simon Hausmann <hausmann@kde.org>
1035 Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
1036 not supported due to implicit forks, use IPC::Open2 instead.
1038 * bindings/scripts/IDLParser.pm:
1040 2007-11-07 Dan Bernstein <mitz@apple.com>
1042 Reviewed by Brady Eidson.
1044 - fix http://bugs.webkit.org/show_bug.cgi?id=15877
1045 REGRESSION: r27486 caused a layout regression at my bank's website
1047 Test: fast/block/float/overhanging-after-height-decrease-offsets.html
1049 * rendering/RenderBlock.cpp:
1050 (WebCore::RenderBlock::layoutBlock):
1052 2007-11-06 Beth Dakin <bdakin@apple.com>
1056 <rdar://problem/5575812> REGRESSION:When using absolute positioning
1057 with overflow:auto div, WebKit seems to add an additional 15px
1059 * rendering/RenderBox.cpp:
1060 (WebCore::RenderBox::containingBlockWidthForPositioned): We need to
1061 subtract off the vertical scrollbar width too.
1063 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1065 Reviewed by Dan Bernstein.
1067 <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
1068 <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
1070 * editing/markup.cpp:
1071 (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
1072 that encloses the input context, unless that block is the body, which shouldn't
1073 be cloned. In that case, use regular divs, as we did before r27369.
1075 2007-11-06 Christian Dywan <christian@twotoasts.de>
1079 Fix http://bugs.webkit.org/show_bug.cgi?id=15828
1080 Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
1082 * WebCore.pro: Use sane default install paths for the gtk port.
1084 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1086 Reviewed by Darin Adler.
1088 <rdar://problem/5576619>
1089 REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
1091 * editing/TypingCommand.cpp:
1092 (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
1093 both of the other deletion commands, call typingAddedToOpenCommand(), which takes
1094 the command's endingSelection and sets it as selection.
1096 2007-11-06 Dan Bernstein <mitz@apple.com>
1098 Reviewed by Antti Koivisto and Dave Hyatt.
1100 - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
1102 Test: fast/block/float/overhanging-after-height-decrease.html
1104 * rendering/RenderBlock.cpp:
1105 (WebCore::RenderBlock::layoutBlock): If after calculating the height
1106 it turns out that there are overhanging floats that were not overhanging
1107 before, rescan children with overhanging floats and add them.
1108 (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
1109 returns the lowest float bottom of any of the children.
1110 (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
1111 lowest float bottom.
1112 * rendering/RenderBlock.h:
1114 2007-11-06 Adele Peterson <adele@apple.com>
1118 Switched all uses of HTMLImageLoader to use OwnPtrs.
1120 * html/HTMLInputElement.h:
1121 * html/HTMLInputElement.cpp:
1122 (WebCore::HTMLInputElement::init):
1123 (WebCore::HTMLInputElement::~HTMLInputElement):
1124 (WebCore::HTMLInputElement::setInputType):
1125 (WebCore::HTMLInputElement::parseMappedAttribute):
1126 (WebCore::HTMLInputElement::attach):
1127 * html/HTMLObjectElement.h:
1128 * html/HTMLObjectElement.cpp:
1129 (WebCore::HTMLObjectElement::HTMLObjectElement):
1130 (WebCore::HTMLObjectElement::~HTMLObjectElement):
1131 (WebCore::HTMLObjectElement::parseMappedAttribute):
1132 (WebCore::HTMLObjectElement::attach):
1133 * html/HTMLVideoElement.h:
1134 * html/HTMLVideoElement.cpp:
1135 (WebCore::HTMLVideoElement::HTMLVideoElement):
1136 (WebCore::HTMLVideoElement::attach):
1137 (WebCore::HTMLVideoElement::detach):
1138 (WebCore::HTMLVideoElement::parseMappedAttribute):
1140 2007-11-06 Antti Koivisto <antti@apple.com>
1144 Trigger media load on on src attribute changes as specified in new HTML5 draft.
1146 Tests: media/video-src-change.html
1147 media/video-src-remove.html
1148 media/video-src-set.html
1150 * html/HTMLMediaElement.cpp:
1151 (WebCore::HTMLMediaElement::attributeChanged):
1152 * html/HTMLMediaElement.h:
1154 2007-11-06 Dan Bernstein <mitz@apple.com>
1156 Reviewed by Darin Adler.
1158 - fix http://bugs.webkit.org/show_bug.cgi?id=15838
1159 Incomplete repaint toggling "How you know this person" on Facebook
1161 Test: fast/repaint/make-children-non-inline.html
1163 * rendering/RenderBlock.cpp:
1164 (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
1165 is needed because the inline children may be repositioned as they move
1166 into new anonymous blocks, but those blocks have no knowledge of where
1167 their children used to be, so they cannot invalidate those areas.
1169 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
1173 http://bugs.webkit.org/show_bug.cgi?id=15847
1174 Some editing cleanup
1176 No change in functionality.
1178 * editing/TextIterator.cpp:
1179 (WebCore::plainText):
1180 * editing/TextIterator.h:
1181 Made WebCore::plainText() return String instead of DeprecatedString.
1183 * bridge/mac/WebCoreAXObject.mm:
1184 (-[WebCoreAXObject textUnderElement]):
1185 (-[WebCoreAXObject value]):
1186 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
1187 (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
1188 (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
1189 Updated for the above change. There is no need to explicitly convert to NSString now.
1191 * editing/EditCommand.cpp:
1192 (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
1193 initialized in constructor body, so the work done in initializer list was wasted.
1195 (WebCore::EditCommand::apply): Moved some stars.
1196 (WebCore::EditCommand::unapply): Ditto.
1197 (WebCore::EditCommand::reapply): Ditto.
1198 (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
1199 removed one of the checks.
1201 * editing/SelectionController.cpp:
1202 (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
1204 * page/mac/WebCoreFrameBridge.h:
1205 * page/mac/WebCoreFrameBridge.mm:
1206 Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
1207 -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
1209 2007-11-05 Mark Rowe <mrowe@apple.com>
1213 * bindings/js/JSHTMLDocumentCustom.cpp:
1214 (WebCore::writeHelper):
1216 2007-11-05 Adam Roben <aroben@apple.com>
1218 Don't crash if SafariTheme can't be loaded
1220 PlatformScrollBarSafari and RenderThemeSafari were not checking
1221 whether SafariTheme was successfully loaded. All other uses of
1222 SafariTheme already check this.
1226 * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
1228 (WebCore::PlatformScrollbar::paintButton):
1229 (WebCore::PlatformScrollbar::paintTrack):
1230 (WebCore::PlatformScrollbar::paintThumb):
1231 * rendering/RenderThemeSafari.cpp:
1232 (WebCore::RenderThemeSafari::isControlStyled): Always return true if
1233 we couldn't load SafariTheme. This way we should never try to paint
1234 themed controls (and we assert as such in the paint functions).
1235 (WebCore::RenderThemeSafari::paintCheckbox):
1236 (WebCore::RenderThemeSafari::paintRadio):
1237 (WebCore::RenderThemeSafari::paintButton):
1238 (WebCore::RenderThemeSafari::paintTextField):
1239 (WebCore::RenderThemeSafari::paintCapsLockIndicator):
1240 (WebCore::RenderThemeSafari::paintTextArea):
1241 (WebCore::RenderThemeSafari::paintMenuList):
1242 (WebCore::RenderThemeSafari::paintSliderThumb):
1243 (WebCore::RenderThemeSafari::paintSearchField):
1244 (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
1245 (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
1246 (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
1248 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1250 Adding the rest of wx port's graphics impl.
1252 Rubber-stamped by Maciej Stachowiak.
1254 * platform/graphics/wx/AffineTransformWx.cpp: Added.
1255 * platform/graphics/wx/GraphicsContextWx.cpp: Added.
1256 * platform/graphics/wx/ImageBufferWx.cpp: Added.
1257 * platform/graphics/wx/ImageSourceWx.cpp: Added.
1258 * platform/graphics/wx/ImageWx.cpp: Added.
1259 * platform/graphics/wx/PathWx.cpp: Added.
1261 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1263 wx port bug fixes and new files to get platform/wx building on trunk.
1265 Rubber-stamped by Maciej Stachowiak.
1267 * platform/wx/CursorWx.cpp:
1268 * platform/wx/FileSystemWx.cpp: Added.
1269 * platform/wx/FontCacheWx.cpp:
1270 * platform/wx/FontPlatformDataWx.cpp:
1271 * platform/wx/FontWx.cpp:
1272 * platform/wx/KeyboardEventWx.cpp:
1273 * platform/wx/LocalizedStringsWx.cpp: Added.
1274 * platform/wx/LoggingWx.cpp: Added.
1275 * platform/wx/RenderThemeWx.cpp:
1276 * platform/wx/ScrollViewWx.cpp:
1277 * platform/wx/SharedTimerWx.cpp:
1278 * platform/wx/StringWx.cpp:
1279 * platform/wx/ThreadingWx.cpp: Added.
1280 * platform/wx/WidgetWx.cpp:
1282 2007-11-05 Adele Peterson <adele@apple.com>
1286 Fix for <rdar://problem/5579999> Add poster attribute for video element
1288 * html/HTMLAttributeNames.in: Added poster attribute.
1290 * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
1291 Calls imageSourceAttributeName instead of having special cases for the different kinds of elements.
1292 * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
1294 * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
1295 * html/HTMLObjectElement.h:
1297 * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1298 Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
1299 * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline. HTMLVideoElement now also implements this.
1301 * html/HTMLVideoElement.idl: Added case for poster attribute.
1302 * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
1303 * html/HTMLVideoElement.cpp:
1304 (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
1305 (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
1306 (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
1307 (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
1308 (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
1309 (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
1310 (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
1311 (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
1312 (WebCore::HTMLVideoElement::isURLAttribute): Added.
1313 (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
1314 (WebCore::HTMLVideoElement::updatePosterImage): Added. Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
1316 2007-11-05 Adam Roben <aroben@apple.com>
1318 Fix <rdar://5563572> SVG image support is turned off
1320 Turned on SVG images for all platforms.
1324 * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
1325 * loader/CachedImage.cpp:
1326 (WebCore::CachedImage::createImage): Removed platform checks for
1329 2007-11-05 Antti Koivisto <antti@apple.com>
1333 QTMovieView can generate callbacks during paint. This can lead to crashes.
1335 Delay callbacks so they get handled after painting is completed. No test case,
1336 I don't know how to reliably reproduce this.
1338 * platform/graphics/mac/MoviePrivateQTKit.mm:
1339 (WebCore::MoviePrivate::MoviePrivate):
1340 (WebCore::MoviePrivate::~MoviePrivate):
1341 (WebCore::MoviePrivate::paint):
1342 (-[WebCoreMovieObserver initWithCallback:WebCore::]):
1343 (-[WebCoreMovieObserver disconnect]):
1344 (-[WebCoreMovieObserver loadStateChanged:]):
1345 (-[WebCoreMovieObserver rateChanged:]):
1346 (-[WebCoreMovieObserver sizeChanged:]):
1347 (-[WebCoreMovieObserver timeChanged:]):
1348 (-[WebCoreMovieObserver volumeChanged:]):
1349 (-[WebCoreMovieObserver didEnd:]):
1350 (-[WebCoreMovieObserver setDelayCallbacks:]):
1352 2007-11-05 Antti Koivisto <antti@apple.com>
1356 Add some missing WebCore* prefixes to ObjC classes
1358 * platform/mac/FileChooserMac.mm:
1359 (WebCore::FileChooser::FileChooser):
1360 * platform/mac/SharedBufferMac.mm:
1361 (WebCore::SharedBuffer::createNSData):
1362 (WebCore::SharedBuffer::createCFData):
1363 * platform/mac/SharedTimerMac.cpp:
1364 (WebCore::setSharedTimerFireTime):
1366 2007-11-05 Ada Chan <adachan@apple.com>
1368 <rdar://problem/5579772> Regression: AltGr does not work
1369 We now store the system key event info in PlatforkKeyboardEvent().
1373 * platform/PlatformKeyboardEvent.h:
1374 (WebCore::PlatformKeyboardEvent::isSystemKey):
1375 * platform/win/KeyEventWin.cpp:
1376 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1378 2007-11-02 Tristan O'Tierney <tristan@apple.com>
1380 Reviewed by Darin Adler.
1382 * WebCore.xcodeproj/project.pbxproj:
1383 Set WindowFeatures.h as a Private header.
1385 * loader/FrameLoader.cpp:
1386 (WebCore::FrameLoader::createWindow):
1387 Revised to use a single createWindow function instead of
1388 two createWindow functions and one createModalDialog function.
1389 The logic for this is now addressed in WebKit in an effort
1390 to make this easier to follow.
1393 (WebCore::Chrome::createWindow):
1395 * page/ChromeClient.h:
1396 * page/ContextMenuController.cpp:
1397 (WebCore::openNewWindow):
1398 * platform/graphics/svg/SVGImageEmptyClients.h:
1399 (WebCore::SVGEmptyChromeClient::createWindow):
1400 Revised to take new additional windowFeatures parameter.
1402 2007-11-04 Geoffrey Garen <ggaren@apple.com>
1404 Reviewed by Darin Adler.
1406 http://bugs.webkit.org/show_bug.cgi?id=15835
1408 Small adaptations to new KJS::List class.
1410 * bindings/js/kjs_window.cpp:
1411 (KJS::WindowFunc::callAsFunction):
1412 (KJS::ScheduledAction::ScheduledAction):
1414 2007-11-05 Adam Roben <aroben@apple.com>
1416 Allow passing a base class pointer to COMPtr::copyRefTo
1420 * platform/win/COMPtr.h:
1422 2007-11-05 Dan Bernstein <mitz@apple.com>
1424 Reviewed by Oliver Hunt.
1426 - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
1428 Test: fast/dom/class-all-whitespace.html
1430 * dom/StyledElement.cpp:
1431 (WebCore::StyledElement::parseMappedAttribute): Check if there is any
1432 non-whitespace character in the class attribute.
1434 2007-11-05 Brady Eidson <beidson@apple.com>
1438 Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
1439 of the sql storage API
1441 * storage/DatabaseAuthorizer.cpp:
1442 (WebCore::DatabaseAuthorizer::allowTransaction):
1443 * storage/DatabaseAuthorizer.h:
1445 2007-11-05 Mark Rowe <mrowe@apple.com>
1447 Reviewed by Alp Toker.
1449 Have getMIMETypeForExtension return a null string when no MIME type is known
1450 for the extension rather than returning "text/plain". This prevents plugin data
1451 being dumped into object elements when plugins are disabled.
1453 * platform/gtk/MIMETypeRegistryGtk.cpp:
1454 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1456 2007-11-04 Sam Weinig <sam@webkit.org>
1458 Rubber-stamped by Adam Roben.
1460 Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to
1463 * bindings/js/kjs_window.cpp:
1464 (KJS::Window::isSafeScript):
1465 * platform/SecurityOrigin.cpp:
1466 (WebCore::SecurityOrigin::canAccess):
1467 * platform/SecurityOrigin.h:
1469 2007-11-04 Timothy Hatcher <timothy@apple.com>
1473 Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
1474 http://bugs.webkit.org/show_bug.cgi?id=15834
1476 - Broke up DocumentPanel and added three SidebarPane sub-classes.
1477 - Fixed many Style pane bugs, including:
1478 * Poor handling of duplicate properties in the same rule. Some of this can't be
1479 fixed since we can't only get the "winning" value for duplicate properties.
1480 So we should only show one entry per unique property name.
1481 * Computed style does not show font shorthand sub-properties if 'font' was used.
1482 * Property priority was broken, the wrong properties were crossed out.
1483 * The 'border' shorthand shows null for the shorthand value.
1484 * Shorthands didn't show their priority (e.g. !important).
1485 * HSL and HTML hex colors didn't have preview swatch blocks.
1486 * Code refactoring, making it easier to reuse for console.log later.
1488 * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
1489 classes in new files.
1490 * page/inspector/MetricsSidebarPane.js: Added.
1491 * page/inspector/Panel.js: Remove an InspectorController.log() call.
1492 * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
1493 So TreeElements can access properties on their section.
1494 * page/inspector/PropertiesSidebarPane.js: Added.
1495 * page/inspector/SidebarPane.js: Remove the explicit asignment of the
1496 onexpand and oncollapse to null. These were hiding prototypes.
1497 * page/inspector/StylesSidebarPane.js: Added.
1498 * page/inspector/inspector.html: Include the new script files.
1499 * page/inspector/treeoutline.js: If a null representedObject is passed
1500 in just use a empty object.
1502 2007-11-04 David D. Kilzer <ddkilzer@webkit.org>
1504 Fix build when spaces appear in the WebKit source path.
1506 Reviewed by Mark Rowe.
1508 * bindings/scripts/IDLParser.pm: Use safer open() method which lists
1509 arguments individually and prevents the need to work around spaces
1512 2007-11-04 Alp Toker <alp@atoker.com>
1514 Reviewed by Alexey Proskuryakov.
1516 Fix a crash when no clipboard text is available
1518 * platform/gtk/PasteboardGtk.cpp:
1519 (WebCore::Pasteboard::plainText):
1521 2007-11-03 Darin Adler <darin@apple.com>
1525 - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
1526 remove unused PCRE features for speed
1528 * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
1529 * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
1530 Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
1533 * platform/RegularExpression.h: Remove the unused cap function. We can
1534 add it back later if we find we need it.
1535 * platform/RegularExpression.cpp:
1536 (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
1537 regular expression entry point changes.
1538 (WebCore::RegularExpression::Private::~Private): Ditto.
1539 (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
1540 This means that regular expressions with metacharactesr like ^ in them
1541 won't work any more with non-whole-string searches, but we don't use
1542 any regular expressions like that.
1544 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1546 Update the link stubs to match the current build,
1547 and fix coding style issues.
1549 Reviewed by Mark Rowe.
1551 * platform/wx/TemporaryLinkStubs.cpp:
1552 (loadResourceIntoArray):
1553 (findNextSentenceFromIndex):
1554 (findSentenceBoundary):
1555 (Frame::dashboardRegionsChanged):
1556 (WebCore::historyContains):
1557 (CachedPage::close):
1558 (Editor::showStylesPanel):
1559 (EventHandler::passSubframeEventToSubframe):
1560 (EventHandler::passWheelEventToWidget):
1561 (WebCore::currentTextBreakLocaleID):
1563 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1565 wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
1567 Reviewed by Mark Rowe.
1569 * platform/graphics/wx/FloatRectWx.cpp: Added.
1570 * platform/graphics/wx/IntPointWx.cpp: Added.
1571 * platform/graphics/wx/IntRectWx.cpp: Added.
1573 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1575 wx <-> WebKit data type conversions for Pen and Color.
1577 Reviewed by Darin Adler.
1579 * platform/graphics/wx: Added.
1580 * platform/graphics/wx/ColorWx.cpp: Added.
1581 * platform/graphics/wx/PenWx.cpp: Added.
1583 2007-11-03 Sam Weinig <sam@webkit.org>
1587 Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
1588 The variable had been kept around for binary compatibility, but since nothing
1589 else is there is no point in continuing to keep it around.
1591 * bindings/js/JSDOMExceptionConstructor.cpp:
1593 * bindings/js/JSHTMLInputElementBase.cpp:
1595 * bindings/js/JSNamedNodesCollection.cpp:
1597 * bindings/js/JSXMLHttpRequest.cpp:
1599 * bindings/js/JSXSLTProcessor.cpp:
1601 * bindings/js/kjs_css.cpp:
1603 * bindings/js/kjs_events.cpp:
1605 * bindings/js/kjs_navigator.cpp:
1607 * bindings/js/kjs_window.cpp:
1609 * bindings/scripts/CodeGeneratorJS.pm:
1611 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1613 Build fixes to get wx impls. building on trunk.
1615 Reviewed by Mark Rowe.
1617 * platform/wx/DragDataWx.cpp:
1618 (WebCore::DragData::containsFiles):
1619 (WebCore::DragData::asFilenames):
1620 * platform/wx/DragImageWx.cpp:
1621 (WebCore::scaleDragImage):
1622 * platform/wx/MimeTypeRegistryWx.cpp:
1623 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1624 * platform/wx/MouseEventWx.cpp:
1625 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1626 * platform/wx/MouseWheelEventWx.cpp:
1627 * platform/wx/PasteboardWx.cpp:
1628 (WebCore::Pasteboard::writeImage):
1629 * platform/wx/WidgetWx.cpp:
1630 (WebCore::Widget::setCursor):
1632 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1634 Sort files(...); sections of Xcode project files.
1636 Rubber-stamped by Darin.
1638 * WebCore.xcodeproj/project.pbxproj:
1639 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
1641 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1643 Coding style fixes for platform/wx files.
1645 Reviewed by Mark Rowe.
1647 * platform/wx/ClipboardWx.cpp:
1648 * platform/wx/GlyphMapWx.cpp:
1649 * platform/wx/ScreenWx.cpp:
1651 2007-11-03 Alp Toker <alp@atoker.com>
1653 Reviewed by Mark Rowe.
1655 Implement platform scrollbar static width/height getters
1657 * platform/gtk/PlatformScrollBar.h:
1658 * platform/gtk/PlatformScrollBarGtk.cpp:
1660 (PlatformScrollbar::horizontalScrollbarHeight):
1662 2007-11-03 Alp Toker <alp@atoker.com>
1664 Reviewed by Mark Rowe.
1666 Cast function pointers to gpointer.
1668 * platform/gtk/PlatformScrollBarGtk.cpp:
1669 (PlatformScrollbar::~PlatformScrollbar):
1671 2007-11-03 Alp Toker <alp@atoker.com>
1673 Reviewed by Adam Roben.
1675 RenderThemeGtk implementation based on Mozilla's GTK+ style code
1677 There is still work needed to complete this feature.
1680 * platform/gtk/RenderThemeGtk.cpp:
1682 (WebCore::RenderThemeGtk::RenderThemeGtk):
1683 (WebCore::supportsFocus):
1684 (WebCore::RenderThemeGtk::supportsFocusRing):
1685 (WebCore::RenderThemeGtk::controlSupportsTints):
1686 (WebCore::RenderThemeGtk::baselinePosition):
1687 (WebCore::adjustMozStyle):
1688 (WebCore::setMozState):
1689 (WebCore::paintMozWidget):
1690 (WebCore::setButtonPadding):
1691 (WebCore::setToggleSize):
1692 (WebCore::RenderThemeGtk::setCheckboxSize):
1693 (WebCore::RenderThemeGtk::paintCheckbox):
1694 (WebCore::RenderThemeGtk::setRadioSize):
1695 (WebCore::RenderThemeGtk::paintRadio):
1696 (WebCore::RenderThemeGtk::adjustButtonStyle):
1697 (WebCore::RenderThemeGtk::paintButton):
1698 (WebCore::RenderThemeGtk::adjustMenuListStyle):
1699 (WebCore::RenderThemeGtk::paintMenuList):
1700 (WebCore::RenderThemeGtk::adjustTextFieldStyle):
1701 (WebCore::RenderThemeGtk::paintTextField):
1702 (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
1703 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
1704 (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
1705 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
1706 (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
1707 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
1708 (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
1709 (WebCore::RenderThemeGtk::paintSearchField):
1710 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
1711 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
1712 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
1713 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
1714 (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
1715 (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
1716 (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
1717 (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
1718 (WebCore::RenderThemeGtk::caretBlinkFrequency):
1719 (WebCore::RenderThemeGtk::systemFont):
1720 (WebCore::gtkStyleSetCallback):
1721 (WebCore::RenderThemeGtk::gtkContainer):
1722 (WebCore::RenderThemeGtk::gtkEntry):
1723 (WebCore::RenderThemeGtk::gtkTreeView):
1724 * platform/gtk/RenderThemeGtk.h:
1725 * platform/gtk/gtk2drawing.c: Added.
1726 (moz_gtk_enable_style_props):
1727 (ensure_window_widget):
1728 (setup_widget_prototype):
1729 (ensure_button_widget):
1730 (ensure_checkbox_widget):
1731 (ensure_radiobutton_widget):
1732 (ensure_scrollbar_widget):
1733 (ensure_spin_widget):
1734 (ensure_scale_widget):
1735 (ensure_entry_widget):
1736 (ensure_option_menu_widget):
1737 (ensure_arrow_widget):
1738 (ensure_handlebox_widget):
1739 (ensure_toolbar_widget):
1740 (ensure_tooltip_widget):
1741 (ensure_tab_widget):
1742 (ensure_progress_widget):
1743 (ensure_frame_widget):
1744 (ensure_menu_bar_widget):
1745 (ensure_menu_bar_item_widget):
1746 (ensure_menu_popup_widget):
1747 (ensure_menu_item_widget):
1748 (ensure_check_menu_item_widget):
1750 (TSOffsetStyleGCArray):
1752 (moz_gtk_button_paint):
1754 (moz_gtk_checkbox_get_metrics):
1755 (moz_gtk_radio_get_metrics):
1756 (moz_gtk_checkbox_get_focus):
1757 (moz_gtk_radio_get_focus):
1758 (moz_gtk_button_get_focus):
1759 (moz_gtk_option_menu_get_metrics):
1760 (moz_gtk_toggle_paint):
1761 (calculate_arrow_dimensions):
1762 (moz_gtk_scrollbar_button_paint):
1763 (moz_gtk_scrollbar_trough_paint):
1764 (moz_gtk_scrollbar_thumb_paint):
1765 (moz_gtk_spin_paint):
1766 (moz_gtk_scale_paint):
1767 (moz_gtk_scale_thumb_paint):
1768 (moz_gtk_gripper_paint):
1769 (moz_gtk_entry_paint):
1770 (moz_gtk_option_menu_paint):
1771 (moz_gtk_dropdown_arrow_paint):
1772 (moz_gtk_container_paint):
1773 (moz_gtk_toggle_label_paint):
1774 (moz_gtk_toolbar_paint):
1775 (moz_gtk_tooltip_paint):
1776 (moz_gtk_frame_paint):
1777 (moz_gtk_progressbar_paint):
1778 (moz_gtk_progress_chunk_paint):
1779 (moz_gtk_tab_paint):
1780 (moz_gtk_tabpanels_paint):
1781 (moz_gtk_menu_bar_paint):
1782 (moz_gtk_menu_popup_paint):
1783 (moz_gtk_menu_item_paint):
1784 (moz_gtk_check_menu_item_paint):
1785 (moz_gtk_window_paint):
1786 (moz_gtk_get_widget_border):
1787 (moz_gtk_get_dropdown_arrow_size):
1788 (moz_gtk_get_scalethumb_metrics):
1789 (moz_gtk_get_scrollbar_metrics):
1790 (moz_gtk_widget_paint):
1791 (moz_gtk_get_scrollbar_widget):
1793 * platform/gtk/gtkdrawing.h: Added.
1795 2007-11-03 Alp Toker <alp@atoker.com>
1797 Reviewed by Mark Rowe.
1799 Do not allow scrollbars to handle wheel events
1801 We bubble the wheel event up so the parent can handle it instead.
1803 * platform/gtk/PlatformScrollBarGtk.cpp:
1804 (gtkScrollEventCallback):
1805 (PlatformScrollbar::PlatformScrollbar):
1806 (PlatformScrollbar::~PlatformScrollbar):
1808 2007-11-03 Alp Toker <alp@atoker.com>
1810 Reviewed by Mark Rowe.
1812 Frame scrolling and invalidation fixes
1814 Make upward scroll events have a positive delta to match other ports.
1816 Fix the invalidation rect offset for frames so that scrolling works properly.
1818 Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
1820 Allow tabbing to all widgets and links.
1822 Fix event returns, improving the focus situation and correcting scroll wheel
1825 * page/gtk/EventHandlerGtk.cpp:
1826 (WebCore::EventHandler::tabsToAllControls):
1827 (WebCore::EventHandler::passWheelEventToWidget):
1828 * platform/gtk/ScrollViewGtk.cpp:
1829 (WebCore::ScrollViewScrollbar::geometryChanged):
1830 (WebCore::ScrollView::updateContents):
1831 (WebCore::ScrollView::update):
1832 (WebCore::ScrollView::wheelEvent):
1833 (WebCore::ScrollView::updateScrollbars):
1834 * platform/gtk/WheelEventGtk.cpp:
1835 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1837 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1839 LGPL'ed files contain incorrect FSF address
1840 <http://bugs.webkit.org/show_bug.cgi?id=14885>
1842 Reviewed by NOBODY (follow-up fix).
1844 * bindings/js/JSSVGTransformListCustom.cpp:
1845 * ksvg2/svg/SVGException.idl:
1846 * ksvg2/svg/SVGTextPathElement.cpp:
1847 * ksvg2/svg/SVGTextPathElement.h:
1848 * ksvg2/svg/SVGViewSpec.cpp:
1849 * ksvg2/svg/SVGViewSpec.h:
1850 * platform/mac/FontCustomPlatformData.cpp:
1851 * platform/mac/FontCustomPlatformData.h:
1852 * platform/mac/FontPlatformDataMac.mm:
1853 * platform/win/FontCustomPlatformData.cpp:
1854 * platform/win/FontCustomPlatformData.h:
1855 * rendering/RenderSVGRoot.cpp:
1856 * rendering/RenderSVGRoot.h:
1857 * rendering/RenderSVGTextPath.cpp:
1858 * rendering/RenderSVGTextPath.h:
1859 * rendering/RenderSVGTransformableContainer.h:
1860 * rendering/RenderSVGViewportContainer.cpp:
1861 * rendering/RenderSVGViewportContainer.h:
1862 * rendering/SVGCharacterLayoutInfo.cpp:
1863 * rendering/SVGCharacterLayoutInfo.h:
1864 * rendering/SVGRenderSupport.cpp:
1865 * rendering/SVGRenderSupport.h:
1867 2007-11-02 Antti Koivisto <antti@apple.com>
1871 Add video width/height DOM and content attributes from latest HTML5 draft.
1873 Test: media/video-width-height.html
1875 * html/HTMLVideoElement.cpp:
1876 (WebCore::HTMLVideoElement::parseMappedAttribute):
1877 (WebCore::HTMLVideoElement::width):
1878 (WebCore::HTMLVideoElement::setWidth):
1879 (WebCore::HTMLVideoElement::height):
1880 (WebCore::HTMLVideoElement::setHeight):
1881 * html/HTMLVideoElement.h:
1882 * html/HTMLVideoElement.idl:
1884 2007-11-02 Darin Adler <darin@apple.com>
1888 * DerivedSources.make: Remove a few explicit filenames from some rules by using
1889 make variables a little more.
1890 * WebCore.LP64.exp: Fix typo, grammar.
1892 2007-11-02 Darin Adler <darin@apple.com>
1896 - use the new HashMap::take function where appropriate
1898 * bindings/js/kjs_binding.cpp:
1899 (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
1900 (KJS::removeWrapper): Ditto.
1901 (KJS::removeWrappers): Ditto.
1902 (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
1903 (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
1904 of remove -- in theory ever so slightly less efficient, but I think it's fine.
1905 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
1906 (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
1907 (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
1908 (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
1910 * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
1911 * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
1912 * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
1913 * rendering/RenderBlock.cpp:
1914 (WebCore::RenderBlock::~RenderBlock): Ditto.
1915 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
1916 * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
1918 2007-11-02 Antti Koivisto <antti@apple.com>
1922 Enable video composition.
1925 * platform/graphics/mac/MoviePrivateQTKit.mm:
1926 (WebCore::MoviePrivate::createQTMovieView):
1927 * platform/mac/WebCoreSystemInterface.h:
1928 * platform/mac/WebCoreSystemInterface.mm:
1930 2007-11-02 Darin Adler <darin@apple.com>
1934 - fix http://bugs.webkit.org/show_bug.cgi?id=15806
1935 <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
1937 Test: fast/forms/remove-radio-button-assert.html
1939 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
1940 Added protected function to be used by derived classes that need to do the same sort
1941 of removal from form that's automatically done by the base class in certain circumstances.
1942 * html/HTMLGenericFormElement.h: Added removeFromForm.
1944 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
1945 Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
1946 part of this object. By the time we get to the base class's destructor it's too late.
1947 The problem is specific to radio buttons so we don't have to worry about other classes
1948 derived from HTMLGenericFormElement.
1950 2007-11-02 Darin Adler <darin@apple.com>
1954 - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
1955 <rdar://problem/5510779> crashes in isLoadingMultipartContent
1957 * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
1958 Instead of asserting the frame loader is non-0, return false if it is 0.
1960 2007-11-02 Darin Adler <darin@apple.com>
1964 - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
1965 URL and MIME type is omitted
1967 Already covered by existing tests (that had incorrect results).
1969 * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
1970 failure when both URL and MIME type are empty. The old code would not attempt a load, but
1971 it would indicate success.
1973 * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
1974 non-helpful early exit for the case where there is no URL and no type. Returning early
1975 prevents the fallback code from running.
1977 2007-11-02 Alp Toker <alp@atoker.com>
1981 Include Cairo headers properly
1983 * platform/graphics/AffineTransform.h:
1984 * platform/graphics/ImageBuffer.h:
1985 * platform/graphics/cairo/AffineTransformCairo.cpp:
1986 * platform/gtk/FontPlatformDataGtk.cpp:
1988 2007-11-01 Oliver Hunt <oliver@apple.com>
1992 Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key
1994 * platform/win/KeyEventWin.cpp:
1995 (WebCore::keyIdentifierForWindowsKeyCode):
1996 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1998 2007-11-01 Geoffrey Garen <ggaren@apple.com>
2000 Reviewed by Maciej Stachowiak.
2002 In preparation for making List a simple stack-allocated Vector:
2004 Removed all instances of List copying, assignment, and/or storage.
2006 Layout tests and JS tests pass.
2008 * bindings/js/kjs_window.cpp:
2009 (KJS::WindowFunc::callAsFunction): Stores a Vector of protected
2010 JSValue*'s instead of a List now. Converts to List on the fly when
2011 calling the timer function. This is slightly less efficient, but the
2012 common case is 0-2 arguments, so it's no biggie.
2014 (HTML iBench shows no regression. PLT does not use JS timers.)
2016 (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
2018 (KJS::ScheduledAction::ScheduledAction): ditto
2020 * bindings/objc/WebScriptObject.mm:
2021 (getListFromNSArray): Takes a List out parameter now, to avoid copying.
2023 2007-11-01 Oliver Hunt <oliver@apple.com>
2027 Correct event behaviour on certain control keys
2029 Make sure we send the correct keyDown and keyUp events for the
2030 control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
2031 uses Windows key codes for the event keyCode.
2034 * page/EventHandler.cpp:
2035 (WebCore::EventHandler::keyEvent):
2036 * platform/PlatformKeyboardEvent.h:
2037 * platform/gtk/KeyEventGtk.cpp:
2038 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2039 * platform/mac/KeyEventMac.mm:
2040 (WebCore::keyIdentifierForKeyEvent):
2041 (WebCore::WindowsKeyCodeForKeyEvent):
2042 (WebCore::isKeyUpEvent):
2043 (WebCore::textFromEvent):
2044 (WebCore::unmodifiedTextFromEvent):
2045 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2046 * platform/win/KeyEventWin.cpp:
2047 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2048 * platform/wx/KeyEventWin.cpp:
2049 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2051 2007-11-01 Timothy Hatcher <timothy@apple.com>
2055 * page/inspector/inspector.css: Use the white disclosure triangles
2056 when a parent DOM element is sepected.
2058 2007-11-01 Justin Garcia <justin.garcia@apple.com>
2060 Reviewed by Oliver Hunt.
2062 <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
2064 * editing/ReplaceSelectionCommand.cpp:
2065 (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
2066 into a plaintext-only region, since when we build the fragment to insert from
2067 plain text, we don't put any style information on it, so it will automatically
2068 match style with no intervention.
2069 * editing/markup.cpp:
2070 (WebCore::createFragmentFromText): Place paragraphs into clones of the
2071 block being inserted into, instead of default paragraph elements,
2072 so that when inserted content will match the surrounding paragraph style.
2073 This was broken before, but I haven't added a layout test yet because
2074 there currently isn't a way to get only plain text onto the pasteboard
2077 2007-11-01 Sam Weinig <sam@webkit.org>
2079 Reviewed by Adam Roben.
2081 Add a releaseRef method to COMPtr which matches the behavior
2082 of the method by the same name in PassRefPtr. This is in
2083 preparation of adding autogenerated COM DOM bindings.
2085 * platform/win/COMPtr.h:
2086 (COMPtr::releaseRef):
2088 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2090 wx impl. for DragController and EventHandler interfaces.
2092 Reviewed by Adam Roben.
2095 * page/wx/DragControllerWx.cpp: Added.
2096 (WebCore::DragController::isCopyKeyDown):
2097 (WebCore::DragController::dragOperation):
2098 (WebCore::DragController::maxDragImageSize):
2099 * page/wx/EventHandlerWx.cpp: Added.
2100 (WebCore::EventHandler::passMousePressEventToSubframe):
2101 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2102 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2103 (WebCore::EventHandler::passMousePressEventToScrollbar):
2104 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2105 (WebCore::EventHandler::focusDocumentView):
2106 (WebCore::EventHandler::eventActivatedView):
2107 (WebCore::EventHandler::createDraggingClipboard):
2109 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2111 Adding files for wx impl. of editing interfaces.
2113 Reviewed by Adam Roben.
2115 * editing/wx: Added.
2116 * editing/wx/EditorWx.cpp: Added.
2117 (WebCore::Editor::newGeneralClipboard):
2119 2007-11-01 Sam Weinig <sam@webkit.org>
2121 Reviewed by Adam Roben.
2123 Make implicit conversions from LPCSTRs and BSTRs to WebCore string
2124 types possible in preparation of adding autogenerated COM DOM bindings.
2126 * platform/AtomicString.cpp:
2127 (WebCore::AtomicString::add):
2128 * platform/AtomicString.h:
2129 (WebCore::AtomicString::AtomicString):
2130 * platform/PlatformString.h:
2131 * platform/win/BString.cpp:
2132 (WebCore::BString::BString):
2133 * platform/win/BString.h:
2135 2007-11-01 Brady Eidson <beidson@apple.com>
2139 Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
2141 * platform/sql/SQLiteTransaction.cpp:
2142 (WebCore::SQLiteTransaction::SQLiteTransaction):
2143 (WebCore::SQLiteTransaction::~SQLiteTransaction):
2144 (WebCore::SQLiteTransaction::begin):
2145 (WebCore::SQLiteTransaction::commit):
2146 (WebCore::SQLiteTransaction::rollback):
2147 * platform/sql/SQLiteTransaction.h:
2148 (WebCore::SQLiteTransaction::inProgress):
2150 2007-11-01 Adam Roben <aroben@apple.com>
2152 Remove all duplicate xcopy commands from WebCore's post-build step
2154 Also add the /d option to the copy of platform/sql.
2156 Rubberstamped by Sam.
2158 * WebCore.vcproj/WebCore.vcproj:
2160 2007-11-01 Adele Peterson <adele@apple.com>
2164 Add support for the animation of the -webkit-border-raduis properties.
2166 * page/AnimationController.cpp:
2167 (WebCore::blendFunc): Added for IntSize.
2168 (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
2170 2007-11-01 Alp Toker <alp@atoker.com>
2172 Reviewed by Mitz Pettel.
2174 Fix an unbalanced save/restore.
2176 * platform/graphics/cg/ImageCG.cpp:
2177 (WebCore::BitmapImage::draw):
2179 2007-11-01 David Hyatt <hyatt@apple.com>
2181 Add support for the animation of the visibility property.
2183 Reviewed by oliver, aroben
2185 * page/AnimationController.cpp:
2186 (WebCore::blendFunc):
2187 (WebCore::ImplicitAnimation::animate):
2189 2007-11-01 Kevin McCullough <kmccullough@apple.com>
2193 - Made COMPtr be able to be used by certain other templates,
2194 specifically HashSet.
2196 * platform/win/COMPtr.h:
2199 2007-11-01 Dan Bernstein <mitz@apple.com>
2201 Reviewed by Dave Hyatt.
2203 - fix http://bugs.webkit.org/show_bug.cgi?id=15015
2204 <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
2206 Test: fast/repaint/overflow-clip-subtree-layout.html
2208 This patch does not address the bigger issue of doing a full relayout
2209 of inline flows containing floats, but it addresses the problem on
2210 aol.com, where the changes that trigger layout are confined to an
2211 overflow area inside the float.
2213 * page/FrameView.cpp:
2214 (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
2215 layout roots are different but one descends from the other, make (or
2216 keep) the ancestor as the layout root.
2217 * rendering/RenderObject.cpp:
2218 (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
2219 clipping and non-auto width and height relayout boundaries.
2221 2007-11-01 Alexey Proskuryakov <ap@webkit.org>
2223 Reviewed by Mark Rowe.
2225 Fixed line endings that got confused in this file somehow.
2227 * platform/network/ResourceResponse.cpp:
2228 (WebCore::ResourceResponse::isAttachment):
2230 2007-11-01 Peter Kasting <zerodpx@gmail.com>
2232 Reviewed by Dave Hyatt.
2234 http://bugs.webkit.org/show_bug.cgi?id=15778
2235 Malformed GIFs should not result in memory corruption.
2237 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2238 (WebCore::GIFImageDecoder::haveDecodedRow):
2239 * platform/image-decoders/gif/GIFImageReader.cpp:
2240 (GIFImageReader::output_row):
2241 (GIFImageReader::read):
2243 2007-10-31 Adam Roben <aroben@apple.com>
2245 Fix a crash when parsing a cubic-bezier function
2249 Test: fast/css/parse-timing-function-crash.html
2251 * WebCore.vcproj/WebCore.vcproj:
2252 * css/CSSParser.cpp:
2253 (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
2256 2007-10-31 David Hyatt <hyatt@apple.com>
2258 Fix a merge error from when I applied my patch to ToT. A couple of lines should be part of an if.
2260 * rendering/RenderStyle.cpp:
2261 (WebCore::RenderStyle::adjustTransitions):
2263 2007-10-31 Anders Carlsson <andersca@apple.com>
2267 Add new SQL callback interfaces and JS implementations of them.
2269 * DerivedSources.make:
2270 * WebCore.xcodeproj/project.pbxproj:
2271 * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
2272 (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
2273 (WebCore::JSCustomSQLStatementCallback::handleEvent):
2274 * bindings/js/JSCustomSQLStatementCallback.h: Added.
2275 * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
2276 (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
2277 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2278 * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
2279 * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
2280 (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
2281 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2282 * bindings/js/JSCustomSQLTransactionCallback.h: Added.
2283 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
2284 (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
2285 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2286 * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
2287 * storage/JSCustomSQLStatementCallback.h: Added.
2288 * storage/JSCustomSQLStatementErrorCallback.h: Added.
2289 * storage/JSCustomSQLTransactionCallback.h: Added.
2290 * storage/JSCustomSQLTransactionErrorCallback.h: Added.
2291 * storage/SQLStatementCallback.h: Added.
2292 (WebCore::SQLStatementCallback::~SQLStatementCallback):
2293 * storage/SQLStatementCallback.idl: Added.
2294 * storage/SQLStatementErrorCallback.h: Added.
2295 (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
2296 * storage/SQLStatementErrorCallback.idl: Added.
2297 * storage/SQLTransaction.h: Added.
2298 * storage/SQLTransaction.idl: Added.
2299 * storage/SQLTransactionCallback.h: Added.
2300 (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
2301 * storage/SQLTransactionCallback.idl: Added.
2302 * storage/SQLTransactionErrorCallback.h: Added.
2303 (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
2304 * storage/SQLTransactionErrorCallback.idl: Added.
2306 2007-10-31 Justin Garcia <justin.garcia@apple.com>
2308 Reviewed by Dave Harrison.
2310 <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
2312 * editing/htmlediting.cpp:
2313 (WebCore::enclosingEmptyListItem): A single list item can contain multiple
2314 paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a
2315 list item, that list item isn't necessarily empty.
2317 2007-10-31 David Hyatt <hyatt@apple.com>
2319 Disable style sharing for animating styles.
2321 Reviewed by mitzpettel
2323 * css/CSSStyleSelector.cpp:
2324 (WebCore::CSSStyleSelector::canShareStyleWithElement):
2326 2007-10-31 Dan Bernstein <mitz@apple.com>
2328 Reviewed by Darin Adler.
2330 - fix intermediate length calculation
2332 * rendering/Length.h:
2333 (WebCore::Length::blend):
2335 2007-10-31 Anders Carlsson <andersca@apple.com>
2339 Add new SQLError implementation.
2341 * DerivedSources.make:
2342 * WebCore.vcproj/WebCore.vcproj:
2343 * WebCore.xcodeproj/project.pbxproj:
2344 * storage/SQLError.h: Added.
2345 (WebCore::SQLError::SQLError):
2346 (WebCore::SQLError::code):
2347 (WebCore::SQLError::message):
2348 * storage/SQLError.idl: Added.
2350 2007-10-31 David Hyatt <hyatt@apple.com>
2352 Change the initial value of transition-property to all. Change the initial value of
2353 transition-duration to 0.
2357 * rendering/RenderStyle.h:
2358 (WebCore::RenderStyle::initialTransitionDuration):
2359 (WebCore::RenderStyle::initialTransitionProperty):
2361 2007-10-31 Alp Toker <alp@atoker.com>
2363 Reviewed by Mark Rowe.
2365 The new Color must be marked valid.
2367 * platform/graphics/gtk/ColorGtk.cpp:
2369 2007-10-31 Simon Hausmann <hausmann@kde.org>
2373 Build fix for non-Qt builds.
2375 * dom/XMLTokenizer.cpp:
2376 (WebCore::XMLTokenizer::XMLTokenizer):
2378 2007-10-31 Simon Hausmann <hausmann@kde.org>
2382 Fix dependency path to header files of the public API of the Qt port.
2386 2007-10-31 Holger Freyther <zecke@selfish.org>
2390 * QXmlStreamNamespaceDeclaration doesn't have the constructor we
2391 want to use for Qt4.3. Reenable the old code path which is likely
2392 to be dead as I have not checked if m_prefixToNamespaceMap is actually
2394 * Guard the entity resolver with the QT_VERSION as well.
2395 * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
2396 d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
2398 * dom/XMLTokenizer.cpp:
2399 (WebCore::XMLTokenizer::XMLTokenizer):
2400 * dom/XMLTokenizer.h:
2402 2007-10-31 Holger Freyther <zecke@selfish.org>
2404 Reviewed by Lars Knoll <lars@trolltech.com>.
2406 * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3
2407 * Provide a bad fallback implementation to filter the format list.
2409 * platform/qt/ClipboardQt.cpp:
2410 (WebCore::ClipboardQt::clearData):
2412 2007-10-31 Lars Knoll <lars@trolltech.com>
2416 add an entitiy resolver to QXmlStream.
2417 Fixes fast/parser/entities-in-attributes.xhtml.
2419 * dom/XMLTokenizer.cpp:
2420 (WebCore::EntityResolver::resolveUndeclaredEntity):
2421 (WebCore::XMLTokenizer::XMLTokenizer):
2422 (WebCore::XMLTokenizer::~XMLTokenizer):
2424 2007-10-31 Lars Knoll <lars@trolltech.com>
2428 Fixes in the XML tokenizer when using QXmlStream.
2430 Use new functionality of QXmlStream in Qt 4.4 to simplify
2431 the code (but keep the old code for now to still support Qt 4.3).
2433 Add proper support for namespace handling when parsing into
2434 a document fragment.
2436 * dom/XMLTokenizer.cpp:
2437 (WebCore::XMLTokenizer::XMLTokenizer):
2438 (WebCore::XMLTokenizer::write):
2439 (WebCore::XMLTokenizer::startElementNs):
2441 * dom/XMLTokenizer.h:
2443 2007-10-31 Lars Knoll <lars@trolltech.com>
2447 add support for dragging images.
2449 * platform/DragImage.h:
2450 * platform/qt/ClipboardQt.cpp:
2451 (WebCore::ClipboardQt::clearData):
2452 (WebCore::ClipboardQt::setDragImage):
2453 (WebCore::ClipboardQt::setDragImageElement):
2454 (WebCore::ClipboardQt::createDragImage):
2455 (WebCore::getCachedImage):
2456 (WebCore::ClipboardQt::declareAndWriteDragImage):
2457 * platform/qt/ClipboardQt.h:
2459 2007-10-31 Lars Knoll <lars@trolltech.com>
2463 fix most of the issues I found with Clipboard and DnD.
2465 * editing/qt/EditorQt.cpp:
2466 * platform/qt/ClipboardQt.cpp:
2467 (WebCore::ClipboardQt::ClipboardQt):
2468 (WebCore::ClipboardQt::~ClipboardQt):
2469 (WebCore::ClipboardQt::clearData):
2470 (WebCore::ClipboardQt::clearAllData):
2471 (WebCore::ClipboardQt::getData):
2472 (WebCore::ClipboardQt::setData):
2473 (WebCore::ClipboardQt::types):
2474 (WebCore::ClipboardQt::setDragImage):
2475 (WebCore::ClipboardQt::setDragImageElement):
2476 (WebCore::ClipboardQt::declareAndWriteDragImage):
2477 (WebCore::ClipboardQt::writeURL):
2478 (WebCore::ClipboardQt::writeRange):
2479 (WebCore::ClipboardQt::hasData):
2480 * platform/qt/ClipboardQt.h:
2481 * platform/qt/DragDataQt.cpp:
2482 (WebCore::DragData::asURL):
2484 2007-10-30 Mark Rowe <mrowe@apple.com>
2486 Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
2488 * platform/gtk/KeyEventGtk.cpp:
2489 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2490 * platform/qt/PlatformKeyboardEventQt.cpp:
2491 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2493 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2497 http://bugs.webkit.org/show_bug.cgi?id=15762
2498 XSLStylesheet loads subresources from a wrong URL
2500 Covered by corrected existing tests.
2502 * xml/XSLStyleSheet.cpp:
2503 (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
2506 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2510 http://bugs.webkit.org/show_bug.cgi?id=10818
2511 String::append does 2 full copies instead of 1 (or zero!)
2513 No change in functionality, thus no test.
2515 * platform/String.cpp:
2516 (WebCore::String::append): Rewrote to copy once. Also removed an ancient
2517 FIXME that doesn't seem to make any sense. Note that append() behavior doesn't
2518 match documented String behavior ("modifications to one instance will
2519 also modify all others"), but there are a lot of methods that don't.
2521 2007-10-31 Adam Roben <aroben@apple.com>
2525 * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
2527 2007-10-30 Adam Roben <aroben@apple.com>
2531 I'm not completely sure why these const issues weren't caught by GCC,
2532 but MSVC was certainly not happy with them.
2534 * editing/IndentOutdentCommand.cpp:
2535 (WebCore::isIndentBlockquote):
2536 * editing/markup.cpp:
2537 (WebCore::styleFromMatchedRulesAndInlineDecl):
2539 2007-10-30 David Hyatt <hyatt@apple.com>
2541 transition-property was defaulting to all when it should default to none.
2543 It was taking a string type. I figured out how to make it take an ident instead, so you can write:
2545 transition-property: opacity
2549 transition-property: "opacity"
2551 Transition layers also weren't properly repeating patterns the way they were supposed to. I fixed that.
2553 Finally, I fixed a bug in the code to fix up transition layers where something was misplaced that should have been inside a null check.
2558 * css/CSSParser.cpp:
2559 (WebCore::CSSParser::parseTransitionProperty):
2560 * css/CSSStyleSelector.cpp:
2561 (WebCore::CSSStyleSelector::adjustRenderStyle):
2562 * page/AnimationController.cpp:
2563 (WebCore::ImplicitAnimation::animate):
2564 * rendering/RenderStyle.cpp:
2565 (WebCore::RenderStyle::adjustTransitions):
2566 * rendering/RenderStyle.h:
2567 (WebCore::RenderStyle::initialTransitionProperty):
2569 2007-10-30 Antti Koivisto <antti@apple.com>
2575 * platform/graphics/mac/MoviePrivateQTKit.mm:
2576 (WebCore::MoviePrivate::getSupportedTypes):
2578 2007-10-30 Dan Bernstein <mitz@apple.com>
2580 Reviewed by Stephanie Lewis.
2582 - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
2584 * platform/win/FontDataWin.cpp:
2585 (WebCore::FontData::platformInit): Handle the case where the font has no
2586 glyphs on page zero.
2588 2007-10-30 David Hyatt <hyatt@apple.com>
2590 Make sure CSS transforms can be animated using the CSS transition property.
2592 Reviewed by Dan and Antti
2594 * css/CSSStyleSelector.cpp:
2595 (WebCore::CSSStyleSelector::applyProperty):
2596 * page/AnimationController.cpp:
2597 (WebCore::blendFunc):
2598 (WebCore::ImplicitAnimation::animate):
2599 * rendering/Length.h:
2600 (WebCore::Length::blend):
2601 * rendering/RenderStyle.cpp:
2602 (WebCore::StyleTransformData::operator==):
2603 (WebCore::TransformOperations::operator==):
2604 (WebCore::blendLengths):
2605 (WebCore::ScaleTransformOperation::blend):
2606 (WebCore::RotateTransformOperation::blend):
2607 (WebCore::SkewTransformOperation::blend):
2608 (WebCore::TranslateTransformOperation::blend):
2609 (WebCore::MatrixTransformOperation::blend):
2610 * rendering/RenderStyle.h:
2611 (WebCore::TransformOperations::operator!=):
2612 (WebCore::TransformOperations::isEmpty):
2613 (WebCore::TransformOperations::size):
2614 (WebCore::TransformOperations::operator[]):
2615 (WebCore::TransformOperations::append):
2616 (WebCore::RenderStyle::transform):
2617 (WebCore::RenderStyle::setTransform):
2618 (WebCore::RenderStyle::initialTransform):
2620 2007-10-30 Antti Koivisto <antti@apple.com>
2622 Another Qt/GTK build fix.
2624 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2626 2007-10-30 Antti Koivisto <antti@apple.com>
2628 Attempt to fix Qt/GTK build.
2632 2007-10-30 Justin Garcia <justin.garcia@apple.com>
2634 Reviewed by Darin Adler.
2636 <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
2638 We were trying to insert a tab into a br, after the br incorrectly ended up inside
2641 * editing/DeleteButtonController.cpp:
2642 (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
2643 * editing/DeleteSelectionCommand.cpp:
2644 (WebCore::isTableRow): Ditto.
2645 * editing/IndentOutdentCommand.cpp:
2646 (WebCore::isIndentBlockquote): Ditto.
2647 (WebCore::isListOrIndentBlockquote): Ditto.
2648 * editing/InsertLineBreakCommand.cpp:
2649 (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
2651 (WebCore::InsertLineBreakCommand::doApply):
2652 Don't upstream() the insertion position. upstream()ing it will only have an effect
2653 when the insertion position is the first in its paragraph (since we canonicalize
2654 VisiblePositions to the upstream() candidate). In this start of paragraph case,
2655 upstream() can move outside inline elements like tab spans or elements that might
2656 have a different whitespace mode (added two test cases to cover these).
2657 Moved code to decide whether to insert a br or a '\n' to its own method.
2658 Removed special case code for inserting at a position inside a tab span. We instead
2659 adjust the insertion position before insertion if it is inside a tab span and
2660 handle insertion in the appropriate if-block. This fixes a bug where we would
2661 only insert one line break when two were needed (added a testcase).
2662 Removed special case code for inserting before and after tables and horizontal
2663 rules. We handle these insertions in the appropriate if-block.
2664 * editing/InsertLineBreakCommand.h:
2665 * editing/ReplaceSelectionCommand.cpp:
2666 (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
2667 * editing/htmlediting.cpp:
2668 (WebCore::isContentEditable): Ditto.
2669 (WebCore::isBlock): Ditto.
2670 (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
2671 that takes in a const Node*.
2672 (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
2674 * editing/htmlediting.h:
2675 * editing/markup.cpp:
2676 (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
2677 (WebCore::elementHasTextDecorationProperty): Ditto.
2679 2007-10-30 Antti Koivisto <antti@apple.com>
2685 * html/VoidCallback.cpp: Added.
2686 (VoidCallback::VoidCallback):
2687 (VoidCallback::~VoidCallback):
2688 (VoidCallback::handleEvent):
2689 (VoidCallback::execute):
2690 (VoidCallback::operator==):
2691 (WebCore::toVoidCallback):
2692 * html/VoidCallback.h: Added.
2693 * html/VoidCallback.idl: Added.
2695 2007-10-30 David Kilzer <ddkilzer@webkit.org>
2697 Generated files missing from WebCore's Xcode project file
2698 <http://bugs.webkit.org/show_bug.cgi?id=15406>
2702 Added the following files to the Xcode project file (note that
2703 JSHTMLInputElementBaseTable.cpp is used as a header file):
2705 - DOMCSSStyleSheetPrivate.h
2707 - DOMHTMLCollectionPrivate.h
2708 - DOMHTMLEmbedElementPrivate.h
2709 - DOMHTMLIFrameElementPrivate.h
2710 - DOMHTMLObjectElementPrivate.h
2711 - DOMHTMLSelectElementPrivate.h
2712 - DOMTextEventInternal.h
2713 - JSHTMLInputElementBaseTable.cpp
2715 * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
2716 since their generated code was not used.
2717 * WebCore.xcodeproj/project.pbxproj: Added missing header files.
2719 2007-10-29 Antti Koivisto <antti@apple.com>
2721 Rubber stamped by Adele.
2723 Initial media (<video> and <audio>) support from feature branch and
2724 QTKit based platform implementation.
2726 This will need to be updated to match current draft specification.
2728 * Configurations/WebCore.xcconfig:
2729 * DerivedSources.make:
2731 * WebCore.xcodeproj/project.pbxproj:
2732 * bindings/js/JSEventCustom.cpp:
2734 * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
2735 (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
2736 (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
2737 (WebCore::JSHTMLAudioElementConstructor::construct):
2738 * bindings/js/JSHTMLAudioElementConstructor.h: Added.
2739 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2740 (WebCore::createJSHTMLWrapper):
2741 * bindings/js/kjs_window.cpp:
2742 (KJS::Window::getValueProperty):
2743 * bindings/js/kjs_window.h:
2745 * bindings/scripts/CodeGeneratorJS.pm:
2747 (WebCore::Document::createEvent):
2748 (WebCore::Document::willSaveToCache):
2749 (WebCore::Document::didRestoreFromCache):
2750 (WebCore::Document::registerForCacheCallbacks):
2751 (WebCore::Document::unregisterForCacheCallbacks):
2754 (WebCore::Element::setBooleanAttribute):
2756 (WebCore::Element::willSaveToCache):
2758 (WebCore::Event::isProgressEvent):
2761 * dom/EventTargetNode.cpp:
2762 (WebCore::EventTargetNode::dispatchProgressEvent):
2763 * dom/EventTargetNode.h:
2764 * dom/ProgressEvent.cpp: Added.
2765 (WebCore::ProgressEvent::ProgressEvent):
2766 (WebCore::ProgressEvent::initProgressEvent):
2767 (WebCore::ProgressEvent::initProgressEventNS):
2768 * dom/ProgressEvent.h: Added.
2769 (WebCore::ProgressEvent::lengthComputable):
2770 (WebCore::ProgressEvent::loaded):
2771 (WebCore::ProgressEvent::total):
2772 (WebCore::ProgressEvent::isProgressEvent):
2773 * dom/ProgressEvent.idl: Added.
2774 * history/CachedPage.cpp:
2775 (WebCore::CachedPage::CachedPage):
2776 * html/HTMLAttributeNames.in:
2777 * html/HTMLAudioElement.cpp: Added.
2778 (WebCore::HTMLAudioElement::HTMLAudioElement):
2779 * html/HTMLAudioElement.h: Added.
2780 (WebCore::HTMLAudioElement::tagPriority):
2781 * html/HTMLAudioElement.idl: Added.
2782 * html/HTMLElement.cpp:
2783 (WebCore::inlineTagList):
2784 * html/HTMLElementFactory.cpp:
2785 (WebCore::audioConstructor):
2786 (WebCore::videoConstructor):
2787 (WebCore::sourceConstructor):
2788 (WebCore::createFunctionMap):
2789 * html/HTMLInputElement.cpp:
2790 (WebCore::HTMLInputElement::~HTMLInputElement):
2791 (WebCore::HTMLInputElement::setInputType):
2792 (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
2793 (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
2794 * html/HTMLMediaElement.cpp: Added.
2795 (WebCore::HTMLMediaElement::HTMLMediaElement):
2796 (WebCore::HTMLMediaElement::~HTMLMediaElement):
2797 (WebCore::HTMLMediaElement::checkDTD):
2798 (WebCore::HTMLMediaElement::rendererIsNeeded):
2799 (WebCore::HTMLMediaElement::createRenderer):
2800 (WebCore::HTMLMediaElement::insertedIntoDocument):
2801 (WebCore::HTMLMediaElement::removedFromDocument):
2802 (WebCore::HTMLMediaElement::scheduleLoad):
2803 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
2804 (WebCore::HTMLMediaElement::dispatchEventAsync):
2805 (WebCore::HTMLMediaElement::loadTimerFired):
2806 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2807 (WebCore::serializeTimeOffset):
2808 (WebCore::parseTimeOffset):
2809 (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
2810 (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
2811 (WebCore::HTMLMediaElement::error):
2812 (WebCore::HTMLMediaElement::src):
2813 (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
2814 (WebCore::HTMLMediaElement::currentSrc):
2815 (WebCore::HTMLMediaElement::networkState):
2816 (WebCore::HTMLMediaElement::bufferingRate):
2817 (WebCore::HTMLMediaElement::load):
2818 (WebCore::HTMLMediaElement::movieNetworkStateChanged):
2819 (WebCore::HTMLMediaElement::movieReadyStateChanged):
2820 (WebCore::HTMLMediaElement::setReadyState):
2821 (WebCore::HTMLMediaElement::progressEventTimerFired):
2822 (WebCore::HTMLMediaElement::seek):
2823 (WebCore::HTMLMediaElement::readyState):
2824 (WebCore::HTMLMediaElement::seeking):
2825 (WebCore::HTMLMediaElement::currentTime):
2826 (WebCore::HTMLMediaElement::setCurrentTime):
2827 (WebCore::HTMLMediaElement::duration):
2828 (WebCore::HTMLMediaElement::paused):
2829 (WebCore::HTMLMediaElement::defaultPlaybackRate):
2830 (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
2831 (WebCore::HTMLMediaElement::playbackRate):
2832 (WebCore::HTMLMediaElement::setPlaybackRate):
2833 (WebCore::HTMLMediaElement::ended):
2834 (WebCore::HTMLMediaElement::autoplay):
2835 (WebCore::HTMLMediaElement::setAutoplay):
2836 (WebCore::HTMLMediaElement::play):
2837 (WebCore::HTMLMediaElement::pause):
2838 (WebCore::HTMLMediaElement::loopCount):
2839 (WebCore::HTMLMediaElement::setLoopCount):
2840 (WebCore::HTMLMediaElement::start):
2841 (WebCore::HTMLMediaElement::setStart):
2842 (WebCore::HTMLMediaElement::end):
2843 (WebCore::HTMLMediaElement::setEnd):
2844 (WebCore::HTMLMediaElement::loopStart):
2845 (WebCore::HTMLMediaElement::setLoopStart):
2846 (WebCore::HTMLMediaElement::loopEnd):
2847 (WebCore::HTMLMediaElement::setLoopEnd):
2848 (WebCore::HTMLMediaElement::currentLoop):
2849 (WebCore::HTMLMediaElement::setCurrentLoop):
2850 (WebCore::HTMLMediaElement::controls):
2851 (WebCore::HTMLMediaElement::setControls):
2852 (WebCore::HTMLMediaElement::volume):
2853 (WebCore::HTMLMediaElement::setVolume):
2854 (WebCore::HTMLMediaElement::muted):
2855 (WebCore::HTMLMediaElement::setMuted):
2856 (WebCore::HTMLMediaElement::pickMedia):
2857 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
2858 (WebCore::HTMLMediaElement::movieVolumeChanged):
2859 (WebCore::HTMLMediaElement::movieDidEnd):
2860 (WebCore::HTMLMediaElement::movieCuePointReached):
2861 (WebCore::HTMLMediaElement::addCuePoint):
2862 (WebCore::HTMLMediaElement::removeCuePoint):
2863 (WebCore::HTMLMediaElement::buffered):
2864 (WebCore::HTMLMediaElement::played):
2865 (WebCore::HTMLMediaElement::seekable):
2866 (WebCore::HTMLMediaElement::effectiveStart):
2867 (WebCore::HTMLMediaElement::effectiveEnd):
2868 (WebCore::HTMLMediaElement::effectiveLoopStart):
2869 (WebCore::HTMLMediaElement::effectiveLoopEnd):
2870 (WebCore::HTMLMediaElement::activelyPlaying):
2871 (WebCore::HTMLMediaElement::endedPlayback):
2872 (WebCore::HTMLMediaElement::willSaveToCache):
2873 (WebCore::HTMLMediaElement::didRestoreFromCache):
2874 * html/HTMLMediaElement.h: Added.
2875 (WebCore::HTMLMediaElement::movie):
2876 (WebCore::HTMLMediaElement::isVideo):
2877 (WebCore::HTMLMediaElement::):
2878 (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
2879 * html/HTMLMediaElement.idl: Added.
2880 * html/HTMLSourceElement.cpp: Added.
2881 (WebCore::HTMLSourceElement::HTMLSourceElement):
2882 (WebCore::HTMLSourceElement::~HTMLSourceElement):
2883 (WebCore::HTMLSourceElement::insertedIntoDocument):
2884 (WebCore::HTMLSourceElement::src):
2885 (WebCore::HTMLSourceElement::setSrc):
2886 (WebCore::HTMLSourceElement::media):
2887 (WebCore::HTMLSourceElement::setMedia):
2888 (WebCore::HTMLSourceElement::type):
2889 (WebCore::HTMLSourceElement::setType):
2890 * html/HTMLSourceElement.h: Added.
2891 (WebCore::HTMLSourceElement::endTagRequirement):
2892 (WebCore::HTMLSourceElement::tagPriority):
2893 * html/HTMLSourceElement.idl: Added.
2894 * html/HTMLTagNames.in:
2895 * html/HTMLVideoElement.cpp: Added.
2896 (WebCore::HTMLVideoElement::HTMLVideoElement):
2897 (WebCore::HTMLVideoElement::videoWidth):
2898 (WebCore::HTMLVideoElement::videoHeight):
2899 * html/HTMLVideoElement.h: Added.
2900 (WebCore::HTMLVideoElement::tagPriority):
2901 (WebCore::HTMLVideoElement::isVideo):
2902 * html/HTMLVideoElement.idl: Added.
2903 * html/MediaError.h: Added.
2904 (WebCore::MediaError::):
2905 (WebCore::MediaError::MediaError):
2906 (WebCore::MediaError::code):
2907 * html/MediaError.idl: Added.
2908 * html/TimeRanges.cpp: Added.
2909 (TimeRanges::TimeRanges):
2910 (TimeRanges::start):
2913 (TimeRanges::contain):
2914 * html/TimeRanges.h: Added.
2915 (WebCore::TimeRanges::TimeRanges):
2916 (WebCore::TimeRanges::length):
2917 (WebCore::TimeRanges::Range::Range):
2918 * html/TimeRanges.idl: Added.
2919 * page/DOMWindow.idl:
2920 * platform/MIMETypeRegistry.cpp:
2921 (WebCore::initialiseSupportedMovieMIMETypes):
2922 (WebCore::initialiseMIMETypeRegistry):
2923 (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
2924 (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
2925 * platform/MIMETypeRegistry.h:
2926 * platform/graphics/Movie.cpp: Added.
2927 (WebCore::Movie::Movie):
2928 (WebCore::Movie::~Movie):
2929 (WebCore::Movie::load):
2930 (WebCore::Movie::cancelLoad):
2931 (WebCore::Movie::play):
2932 (WebCore::Movie::pause):
2933 (WebCore::Movie::duration):
2934 (WebCore::Movie::currentTime):
2935 (WebCore::Movie::seek):
2936 (WebCore::Movie::paused):
2937 (WebCore::Movie::seeking):
2938 (WebCore::Movie::naturalSize):
2939 (WebCore::Movie::hasVideo):
2940 (WebCore::Movie::networkState):
2941 (WebCore::Movie::readyState):
2942 (WebCore::Movie::volume):
2943 (WebCore::Movie::setVolume):
2944 (WebCore::Movie::rate):
2945 (WebCore::Movie::setRate):
2946 (WebCore::Movie::muted):
2947 (WebCore::Movie::setMuted):
2948 (WebCore::Movie::dataRate):
2949 (WebCore::Movie::setEndTime):
2950 (WebCore::Movie::addCuePoint):
2951 (WebCore::Movie::removeCuePoint):
2952 (WebCore::Movie::clearCuePoints):
2953 (WebCore::Movie::maxTimeBuffered):
2954 (WebCore::Movie::maxTimeSeekable):
2955 (WebCore::Movie::bytesLoaded):
2956 (WebCore::Movie::totalBytesKnown):
2957 (WebCore::Movie::totalBytes):
2958 (WebCore::Movie::setRect):
2959 (WebCore::Movie::visible):
2960 (WebCore::Movie::setVisible):
2961 (WebCore::Movie::paint):
2962 (WebCore::Movie::getSupportedTypes):
2963 (WebCore::Movie::networkStateChanged):
2964 (WebCore::Movie::readyStateChanged):
2965 (WebCore::Movie::volumeChanged):
2966 (WebCore::Movie::didEnd):
2967 (WebCore::Movie::cuePointReached):
2968 * platform/graphics/Movie.h: Added.
2969 (WebCore::MovieClient::~MovieClient):
2970 (WebCore::MovieClient::movieNetworkStateChanged):
2971 (WebCore::MovieClient::movieReadyStateChanged):
2972 (WebCore::MovieClient::movieVolumeChanged):
2973 (WebCore::MovieClient::movieDidEnd):
2974 (WebCore::MovieClient::movieCuePointReached):
2975 (WebCore::Movie::parentWidget):
2976 (WebCore::Movie::setParentWidget):
2977 (WebCore::Movie::rect):
2979 * platform/graphics/mac/MoviePrivateQTKit.h: Added.
2980 * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
2981 (WebCore::MoviePrivate::MoviePrivate):
2982 (WebCore::MoviePrivate::~MoviePrivate):
2983 (WebCore::MoviePrivate::createQTMovie):
2984 (WebCore::MoviePrivate::createQTMovieView):
2985 (WebCore::MoviePrivate::createQTTime):
2986 (WebCore::MoviePrivate::load):
2987 (WebCore::MoviePrivate::play):
2988 (WebCore::MoviePrivate::pause):
2989 (WebCore::MoviePrivate::duration):
2990 (WebCore::MoviePrivate::currentTime):
2991 (WebCore::MoviePrivate::seek):
2992 (WebCore::MoviePrivate::setEndTime):
2993 (WebCore::MoviePrivate::addCuePoint):
2994 (WebCore::MoviePrivate::removeCuePoint):
2995 (WebCore::MoviePrivate::clearCuePoints):
2996 (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
2997 (WebCore::MoviePrivate::cancelSeek):
2998 (WebCore::MoviePrivate::seekTimerFired):
2999 (WebCore::MoviePrivate::cuePointTimerFired):
3000 (WebCore::MoviePrivate::paused):
3001 (WebCore::MoviePrivate::seeking):
3002 (WebCore::MoviePrivate::naturalSize):
3003 (WebCore::MoviePrivate::hasVideo):
3004 (WebCore::MoviePrivate::setVolume):
3005 (WebCore::MoviePrivate::setMuted):
3006 (WebCore::MoviePrivate::setRate):
3007 (WebCore::MoviePrivate::dataRate):
3008 (WebCore::MoviePrivate::networkState):
3009 (WebCore::MoviePrivate::readyState):
3010 (WebCore::MoviePrivate::maxTimeBuffered):
3011 (WebCore::MoviePrivate::maxTimeSeekable):
3012 (WebCore::MoviePrivate::maxTimeLoaded):
3013 (WebCore::MoviePrivate::bytesLoaded):
3014 (WebCore::MoviePrivate::totalBytesKnown):
3015 (WebCore::MoviePrivate::totalBytes):
3016 (WebCore::MoviePrivate::cancelLoad):
3017 (WebCore::MoviePrivate::updateStates):
3018 (WebCore::MoviePrivate::loadStateChanged):
3019 (WebCore::MoviePrivate::rateChanged):
3020 (WebCore::MoviePrivate::sizeChanged):
3021 (WebCore::MoviePrivate::timeChanged):
3022 (WebCore::MoviePrivate::volumeChanged):
3023 (WebCore::MoviePrivate::didEnd):
3024 (WebCore::MoviePrivate::setRect):
3025 (WebCore::MoviePrivate::setVisible):
3026 (WebCore::MoviePrivate::paint):
3027 (WebCore::MoviePrivate::getSupportedTypes):
3028 (-[WebCoreMovieObserver loadStateChanged:]):
3029 (-[WebCoreMovieObserver rateChanged:]):
3030 (-[WebCoreMovieObserver sizeChanged:]):
3031 (-[WebCoreMovieObserver timeChanged:]):
3032 (-[WebCoreMovieObserver volumeChanged:]):
3033 (-[WebCoreMovieObserver didEnd:]):
3034 (-[WebCoreMovieObserver setCallback:WebCore::]):
3035 * platform/mac/WebCoreSystemInterface.h:
3036 * platform/mac/WebCoreSystemInterface.mm:
3037 * rendering/RenderLayer.cpp:
3038 (WebCore::RenderLayer::collectLayers):
3039 * rendering/RenderVideo.cpp: Added.
3040 (WebCore::RenderVideo::RenderVideo):
3041 (WebCore::RenderVideo::~RenderVideo):
3042 (WebCore::RenderVideo::movie):
3043 (WebCore::RenderVideo::videoSizeChanged):
3044 (WebCore::RenderVideo::paint):
3045 (WebCore::RenderVideo::layout):
3046 (WebCore::RenderVideo::updateFromElement):
3047 (WebCore::RenderVideo::updateMovie):
3048 (WebCore::RenderVideo::isWidthSpecified):
3049 (WebCore::RenderVideo::isHeightSpecified):
3050 (WebCore::RenderVideo::calcReplacedWidth):
3051 (WebCore::RenderVideo::calcReplacedHeight):
3052 (WebCore::RenderVideo::calcAspectRatioWidth):
3053 (WebCore::RenderVideo::calcAspectRatioHeight):
3054 (WebCore::RenderVideo::calcPrefWidths):
3055 * rendering/RenderVideo.h: Added.
3056 (WebCore::RenderVideo::renderName):
3058 2007-10-30 Sam Weinig <sam@webkit.org>
3060 Reviewed by Adam Roben.
3062 Add Interface and Class UUIDs to the IDLs in preparation of adding
3063 autogeneration of the COM DOM bindings.
3065 * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
3066 * css/CSSCharsetRule.idl:
3067 * css/CSSFontFaceRule.idl:
3068 * css/CSSImportRule.idl:
3069 * css/CSSMediaRule.idl:
3070 * css/CSSPageRule.idl:
3071 * css/CSSPrimitiveValue.idl:
3073 * css/CSSRuleList.idl:
3074 * css/CSSStyleDeclaration.idl:
3075 * css/CSSStyleRule.idl:
3076 * css/CSSStyleSheet.idl:
3077 * css/CSSUnknownRule.idl:
3079 * css/CSSValueList.idl:
3081 * css/MediaList.idl:
3084 * css/StyleSheet.idl:
3085 * css/StyleSheetList.idl:
3087 * dom/CDATASection.idl:
3088 * dom/CharacterData.idl:
3090 * dom/DOMImplementation.idl:
3092 * dom/DocumentFragment.idl:
3093 * dom/DocumentType.idl:
3096 * dom/EntityReference.idl:
3098 * dom/EventListener.idl:
3099 * dom/EventTarget.idl:
3100 * dom/NamedNodeMap.idl:
3104 * dom/ProcessingInstruction.idl:
3106 * html/CanvasGradient.idl:
3107 * html/CanvasPattern.idl:
3108 * html/CanvasRenderingContext2D.idl:
3109 * html/HTMLAnchorElement.idl:
3110 * html/HTMLAppletElement.idl:
3111 * html/HTMLAreaElement.idl:
3112 * html/HTMLBRElement.idl:
3113 * html/HTMLBaseElement.idl:
3114 * html/HTMLBaseFontElement.idl:
3115 * html/HTMLBlockquoteElement.idl:
3116 * html/HTMLBodyElement.idl:
3117 * html/HTMLButtonElement.idl:
3118 * html/HTMLCanvasElement.idl:
3119 * html/HTMLCollection.idl:
3120 * html/HTMLDListElement.idl:
3121 * html/HTMLDirectoryElement.idl:
3122 * html/HTMLDivElement.idl:
3123 * html/HTMLDocument.idl:
3124 * html/HTMLElement.idl:
3125 * html/HTMLEmbedElement.idl:
3126 * html/HTMLFieldSetElement.idl:
3127 * html/HTMLFontElement.idl:
3128 * html/HTMLFormElement.idl:
3129 * html/HTMLFrameElement.idl:
3130 * html/HTMLFrameSetElement.idl:
3131 * html/HTMLHRElement.idl:
3132 * html/HTMLHeadElement.idl:
3133 * html/HTMLHeadingElement.idl:
3134 * html/HTMLHtmlElement.idl:
3135 * html/HTMLIFrameElement.idl:
3136 * html/HTMLImageElement.idl:
3137 * html/HTMLInputElement.idl:
3138 * html/HTMLIsIndexElement.idl:
3139 * html/HTMLLIElement.idl:
3140 * html/HTMLLabelElement.idl:
3141 * html/HTMLLegendElement.idl:
3142 * html/HTMLLinkElement.idl:
3143 * html/HTMLMapElement.idl:
3144 * html/HTMLMarqueeElement.idl:
3145 * html/HTMLMenuElement.idl:
3146 * html/HTMLMetaElement.idl:
3147 * html/HTMLModElement.idl:
3148 * html/HTMLOListElement.idl:
3149 * html/HTMLObjectElement.idl:
3150 * html/HTMLOptGroupElement.idl:
3151 * html/HTMLOptionElement.idl:
3152 * html/HTMLOptionsCollection.idl:
3153 * html/HTMLParagraphElement.idl:
3154 * html/HTMLParamElement.idl:
3155 * html/HTMLPreElement.idl:
3156 * html/HTMLQuoteElement.idl:
3157 * html/HTMLScriptElement.idl:
3158 * html/HTMLSelectElement.idl:
3159 * html/HTMLStyleElement.idl:
3160 * html/HTMLTableCaptionElement.idl:
3161 * html/HTMLTableCellElement.idl:
3162 * html/HTMLTableColElement.idl:
3163 * html/HTMLTableElement.idl:
3164 * html/HTMLTableRowElement.idl:
3165 * html/HTMLTableSectionElement.idl:
3166 * html/HTMLTextAreaElement.idl:
3167 * html/HTMLTitleElement.idl:
3168 * html/HTMLUListElement.idl:
3170 2007-10-30 Adele Peterson <adele@apple.com>
3174 * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
3176 2007-10-29 Timothy Hatcher <timothy@apple.com>
3178 Reviewed by John Sullivan.
3180 - Allow showing and closing the inspector programatically.
3181 - Add showConsole() and showTimeline() methods.
3183 * WebCore.base.exp: Add exports for WebKit.
3184 * page/InspectorController.cpp:
3185 (WebCore::callSimpleFunction): Renamed from callClearFunction().
3186 (WebCore::unloading): Renamed to close().
3187 (WebCore::InspectorController::InspectorController):
3188 (WebCore::InspectorController::inspect): Moved showing code to show().
3189 (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
3190 (WebCore::InspectorController::show): Code factored out of inspect().
3191 (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
3192 (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
3193 (WebCore::InspectorController::close):
3194 (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
3195 (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
3196 (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
3197 (WebCore::InspectorController::clearNetworkTimeline): Ditto.
3198 * page/InspectorController.h: Add and rename methods.
3199 * page/inspector/inspector.js: Add showConsole() and showTimeline().
3201 2007-10-30 Adele Peterson <adele@apple.com>
3207 * page/AnimationController.cpp: (WebCore::blendFunc):
3209 2007-10-30 Adele Peterson <adele@apple.com>
3213 WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3214 <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
3216 Test: manual-tests/password-caps-lock.html
3218 * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
3220 * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
3221 * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
3222 * page/EventHandler.h:
3224 * platform/PlatformKeyboardEvent.h:
3225 * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3226 * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3228 * rendering/RenderTextControl.cpp:
3229 (WebCore::RenderTextControl::RenderTextControl):
3230 (WebCore::RenderTextControl::paint): Added. If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
3231 (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
3232 (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field,
3233 and the frame is active, and the element is focused, and the caps lock is on. Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
3234 * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
3235 * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
3237 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
3238 * rendering/RenderThemeMac.h:
3239 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added. Calls wkDrawCapsLockIndicator.
3240 * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added. Calls paintThemePart for the CapsLockPart.
3241 * rendering/RenderThemeSafari.h:
3243 2007-10-30 David Hyatt <hyatt@apple.com>
3245 Land support for implicit animation in CSS.
3247 Reviewed by mitz, darin
3249 * css/CSSParser.cpp:
3250 (WebCore::CSSParser::parseTimingFunctionValue):
3251 (WebCore::CSSParser::parseTransitionTimingFunction):
3252 (WebCore::CSSParser::parseTransitionProperty):
3253 * css/CSSStyleSelector.cpp:
3254 (WebCore::CSSStyleSelector::mapTransitionDuration):
3255 (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
3256 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3257 (WebCore::CSSStyleSelector::mapTransitionProperty):
3258 * css/CSSTimingFunctionValue.h:
3259 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3260 (WebCore::CSSTimingFunctionValue::x1):
3261 (WebCore::CSSTimingFunctionValue::y1):
3262 (WebCore::CSSTimingFunctionValue::x2):
3263 (WebCore::CSSTimingFunctionValue::y2):
3265 (WebCore::Element::styleForRenderer):
3266 (WebCore::Element::createRenderer):
3268 (WebCore::Node::createRendererIfNeeded):
3269 (WebCore::Node::setRenderStyle):
3270 * page/AnimationController.cpp:
3271 (WebCore::CurveData::CurveData):
3272 (WebCore::CurveData::sampleCurveX):
3273 (WebCore::CurveData::sampleCurveY):
3274 (WebCore::CurveData::sampleCurveDerivativeX):
3275 (WebCore::CurveData::solveCurveX):
3276 (WebCore::solveEpsilon):
3277 (WebCore::solveCubicBezierFunction):
3278 (WebCore::ImplicitAnimation::finished):
3279 (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
3280 (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
3281 (WebCore::ImplicitAnimation::ImplicitAnimation):
3282 (WebCore::ImplicitAnimation::~ImplicitAnimation):
3283 (WebCore::ImplicitAnimation::reset):
3284 (WebCore::ImplicitAnimation::progress):
3285 (WebCore::blendFunc):
3286 (WebCore::ImplicitAnimation::animate):
3287 (WebCore::CompositeImplicitAnimation::animate):
3288 (WebCore::CompositeImplicitAnimation::animating):
3289 (WebCore::CompositeImplicitAnimation::reset):
3290 (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
3291 (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
3292 (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
3293 (WebCore::AnimationControllerPrivate::get):
3294 (WebCore::AnimationControllerPrivate::clear):
3295 (WebCore::AnimationControllerPrivate::updateTimer):
3296 (WebCore::AnimationControllerPrivate::timerFired):
3298 (WebCore::AnimationController::~AnimationController):
3299 (WebCore::AnimationController::cancelImplicitAnimations):
3300 (WebCore::AnimationController::updateImplicitAnimations):
3301 (WebCore::AnimationController::suspendAnimations):
3302 (WebCore::AnimationController::resumeAnimations):
3303 * page/AnimationController.h:
3305 (WebCore::FramePrivate::FramePrivate):
3306 * rendering/RenderBox.cpp:
3307 (WebCore::RenderBox::setStyle):
3308 (WebCore::RenderBox::destroy):
3309 * rendering/RenderObject.cpp:
3310 (WebCore::RenderObject::setAnimatableStyle):
3311 (WebCore::RenderObject::destroy):
3312 * rendering/RenderObject.h:
3313 * rendering/RenderStyle.h:
3314 (WebCore::TimingFunction::TimingFunction):
3315 (WebCore::TimingFunction::operator==):
3316 (WebCore::TimingFunction::x1):
3317 (WebCore::TimingFunction::y1):
3318 (WebCore::TimingFunction::x2):
3319 (WebCore::TimingFunction::y2):
3320 (WebCore::TimingFunction::type):
3321 (WebCore::Transition::transitionProperty):
3322 (WebCore::Transition::setTransitionProperty):
3323 (WebCore::RenderStyle::initialTransitionProperty):
3324 * rendering/RenderWidget.cpp:
3325 (WebCore::RenderWidget::destroy):
3327 2007-10-29 Beth Dakin <bdakin@apple.com>
3331 Fix for <rdar://problem/5399614> anchor tag is not rendered without
3332 text content, works in Firefox with CSS background-image (13237)
3334 This patch allows empty inlines that have box decorations or width
3335 from border/padding/margin to have line boxes.
3337 * rendering/bidi.cpp:
3338 (WebCore::inlineFlowAllowsLineBox): Convenience function that
3339 defines when we allow an inline flow to have a line box.
3340 (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
3341 (WebCore::shouldSkipWhitespaceAfterStartObject): New function to
3342 merge some shared code between list markers and empty inline flows
3343 that fall at the beginning of a line.
3344 (WebCore::RenderBlock::findNextLineBreak): Make flows more like
3347 One interesting side effect of this bug appeared in our xhtml/svg
3348 tests that generate parser error tags. The tag we generate was
3349 actually an empty inline with box decorations. This patch causes
3350 those inlines to draw now, and the parser errors looked strange. So
3351 I changed it so that the parsererror tag is display:block. This
3352 matches Firefox, and I think was the original intent of the tag
3353 since that causes its red background and border to show up.
3354 * dom/XMLTokenizer.cpp:
3355 (WebCore::createXHTMLParserErrorHeader):
3357 2007-10-29 Dan Bernstein <mitz@apple.com>
3359 Reviewed by Dave Hyatt.
3361 - fix crashing tests fast/frames/inline-object-inside-frameset.html and
3362 fast/forms/form-hides-table.html
3364 * rendering/RenderBox.cpp:
3365 (WebCore::RenderBox::destroy):
3366 * rendering/RenderWidget.cpp:
3367 (WebCore::RenderWidget::destroy):
3369 2007-10-29 Dan Bernstein <mitz@apple.com>
3371 Reviewed by Adam Roben.
3373 - fix http://bugs.webkit.org/show_bug.cgi?id=15750
3374 REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
3376 Test: fast/backgrounds/size/zero.html
3378 * platform/graphics/cg/ImageCG.cpp:
3379 (WebCore::Image::drawPattern): Added an ASSERT and an early return
3380 to guard against singular pattern transforms.
3381 * rendering/RenderBox.cpp:
3382 (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
3385 2007-10-29 Alp Toker <alp@atoker.com>
3389 Add GTK+ convenience conversions for various primitives
3392 * platform/graphics/Color.h:
3393 * platform/graphics/IntPoint.h:
3394 * platform/graphics/IntRect.h:
3395 * platform/graphics/gtk/ColorGtk.cpp: Added.
3396 (WebCore::Color::Color):
3397 * platform/graphics/gtk/IntPointGtk.cpp: Added.
3398 (WebCore::IntPoint::IntPoint):
3399 (WebCore::IntPoint::operator GdkPoint):
3400 * platform/graphics/gtk/IntRectGtk.cpp: Added.
3401 (WebCore::IntRect::IntRect):
3402 (WebCore::IntRect::operator GdkRectangle):
3404 2007-10-29 Jon Honeycutt <jhoneycutt@apple.com>
3408 Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
3409 http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
3412 I cannot reproduce this hang, but it is likely due to our not limiting
3413 WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
3414 unknown MIME type. The embed tag on the page is missing a type
3415 attribute, so as fallback, we choose to load the Flash plugin based on
3416 the file extension of "swf." However, we do not record this determined
3417 MIME type, and so our quirks cannot be established.
3419 Changed findPlugin() so that, if it fails to find a plugin for the
3420 given MIME type, it will lookup the MIME type for the file extension -
3421 overwriting its passed MIME type parameter - and search for a plugin
3424 * plugins/win/PluginDatabaseWin.cpp:
3425 (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
3426 if the MIME type is empty
3427 (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
3428 pluginForExtension. Returns a String with the MIME type for the file
3429 extension. Also, changed to use case-insensitive compares
3430 (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
3431 for the given extension, overwrite the incoming MIME type parameter
3432 with the MIME type for the file extension, and search for a plugin for
3433 that MIME type. Also, changed the way that the extension is determined
3434 (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
3435 to findPlugin() so that it can be updated if necessary
3436 * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
3437 const String, removed definition of pluginForExtension, added
3438 definition for MIMETypeForExtension
3439 * plugins/win/PluginPackageWin.cpp:
3440 (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
3441 lowercase for easier compares
3443 2007-10-29 Andrew Wellington <proton@wiretapped.net>
3445 Not reviewed - build fix
3449 WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
3452 * xml/XSLTProcessor.cpp:
3453 (WebCore::XSLTProcessor::parseErrorFunc):
3455 2007-10-29 Alp Toker <alp@atoker.com>
3457 Reviewed by Adam Roben.
3459 http://bugs.webkit.org/show_bug.cgi?id=15725
3460 [GTK] WebCore.pro header dependencies are incorrect
3462 Fix header dependencies in the build system
3464 INCLUDEPATH and DEPENDPATH are now up to date.
3468 2007-10-29 Beth Dakin <bdakin@apple.com>
3472 * css/CSSParser.cpp:
3473 (WebCore::CSSParser::parseTimingFunctionValue):
3474 * css/CSSStyleSelector.cpp:
3475 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3477 2007-10-29 David Hyatt <hyatt@apple.com>
3479 Land the back end for CSS animated property transitions. I am landing this in stages, so the AnimationController
3480 class is deliberately left empty.
3482 Reviewed by darin/aroben
3485 * WebCore.vcproj/WebCore.vcproj:
3486 * WebCore.xcodeproj/project.pbxproj:
3487 * css/CSSComputedStyleDeclaration.cpp:
3488 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3489 * css/CSSPropertyNames.in:
3490 * css/CSSTimingFunctionValue.cpp: Added.
3491 (WebCore::CSSTimingFunctionValue::cssText):
3492 * css/CSSTimingFunctionValue.h: Added.
3493 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3494 (WebCore::CSSTimingFunctionValue::firstPoint):
3495 (WebCore::CSSTimingFunctionValue::secondPoint):
3496 * css/CSSValueKeywords.in:
3497 * history/CachedPage.cpp:
3498 (WebCore::CachedPage::restore):
3499 * page/AnimationController.cpp: Added.
3500 (WebCore::AnimationController::AnimationController):
3501 (WebCore::AnimationController::~AnimationController):
3502 (WebCore::AnimationController::cancelTransitions):
3503 (WebCore::AnimationController::updateTransitions):
3504 (WebCore::AnimationController::suspendAnimations):
3505 (WebCore::AnimationController::resumeAnimations):
3506 * page/AnimationController.h: Added.
3508 (WebCore::Frame::animationController):
3509 (WebCore::Frame::clearTimers):
3511 * page/FramePrivate.h:
3512 * rendering/RenderBox.cpp:
3513 (WebCore::RenderBox::setStyle):
3514 (WebCore::RenderBox::destroy):
3515 * rendering/RenderObject.cpp:
3516 (WebCore::RenderObject::animationController):
3517 * rendering/RenderObject.h:
3518 * rendering/RenderStyle.cpp:
3519 (WebCore::Transition::Transition):
3520 (WebCore::Transition::~Transition):
3521 (WebCore::Transition::operator=):
3522 (WebCore::Transition::operator==):
3523 (WebCore::Transition::fillUnsetProperties):
3524 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3525 (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
3526 (WebCore::StyleRareNonInheritedData::operator==):
3527 (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
3528 (WebCore::RenderStyle::diff):
3529 (WebCore::RenderStyle::adjustTransitions):
3530 (WebCore::RenderStyle::accessTransitions):
3531 * rendering/RenderStyle.h:
3532 (WebCore::BackgroundLayer::next):
3534 (WebCore::TimingFunction::TimingFunction):
3535 (WebCore::TimingFunction::operator==):
3536 (WebCore::Transition::next):
3537 (WebCore::Transition::isTransitionDurationSet):
3538 (WebCore::Transition::isTransitionRepeatCountSet):
3539 (WebCore::Transition::isTransitionTimingFunctionSet):
3540 (WebCore::Transition::isTransitionPropertySet):
3541 (WebCore::Transition::isEmpty):
3542 (WebCore::Transition::clearTransitionDuration):
3543 (WebCore::Transition::clearTransitionRepeatCount):
3544 (WebCore::Transition::clearTransitionTimingFunction):
3545 (WebCore::Transition::clearTransitionProperty):
3546 (WebCore::Transition::transitionDuration):
3547 (WebCore::Transition::transitionRepeatCount):
3548 (WebCore::Transition::transitionTimingFunction):
3549 (WebCore::Transition::transitionProperty):
3550 (WebCore::Transition::setTransitionDuration):
3551 (WebCore::Transition::setTransitionRepeatCount):
3552 (WebCore::Transition::setTransitionTimingFunction):
3553 (WebCore::Transition::setTransitionProperty):
3554 (WebCore::Transition::setNext):
3555 (WebCore::Transition::operator!=):
3556 (WebCore::RenderStyle::transitions):
3557 (WebCore::RenderStyle::clearTransitions):
3558 (WebCore::RenderStyle::inheritTransitions):
3559 (WebCore::RenderStyle::initialTransitionDuration):
3560 (WebCore::RenderStyle::initialTransitionRepeatCount):
3561 (WebCore::RenderStyle::initialTransitionTimingFunction):
3562 (WebCore::RenderStyle::initialTransitionProperty):
3563 * rendering/RenderWidget.cpp:
3564 (WebCore::RenderWidget::destroy):
3566 2007-10-29 Alexey Proskuryakov <ap@webkit.org>
3570 http://bugs.webkit.org/show_bug.cgi?id=6040
3571 XSLT does not report errors to the user
3573 Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
3574 Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
3575 output. Got rid of DeprecatedString in XSLTProcessor.
3578 (WebCore::Document::applyXSLTransform):
3579 * xml/XSLStyleSheet.cpp:
3580 (WebCore::XSLStyleSheet::parseString):
3581 * xml/XSLTProcessor.cpp:
3582 (WebCore::XSLTProcessor::parseErrorFunc):
3583 (WebCore::docLoaderFunc):
3584 (WebCore::setXSLTLoadCallBack):
3585 (WebCore::writeToString):
3586 (WebCore::saveResultToString):
3587 (WebCore::transformTextStringToXHTMLDocumentString):
3588 (WebCore::xsltParamArrayFromParameterMap):
3589 (WebCore::freeXsltParamArray):
3590 (WebCore::XSLTProcessor::createDocumentFromSource):
3591 (WebCore::createFragmentFromSource):
3592 (WebCore::xsltStylesheetPointer):
3593 (WebCore::xmlDocPtrFromNode):
3594 (WebCore::resultMIMEType):
3595 (WebCore::XSLTProcessor::transformToString):
3596 (WebCore::XSLTProcessor::transformToDocument):
3597 (WebCore::XSLTProcessor::transformToFragment):
3598 * xml/XSLTProcessor.h:
3599 (WebCore::XSLTProcessor::setXSLStylesheet):
3600 (WebCore::XSLTProcessor::importStylesheet):
3601 (WebCore::XSLTProcessor::xslStylesheet):
3603 2007-10-29 Dan Bernstein <mitz@apple.com>
3605 Reviewed by John Sullivan.
3607 - fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
3609 Test: fast/repaint/layout-state-only-positioned.html