1 2007-11-10 John Sullivan <sullivan@apple.com>
5 Rest of fix for 5394877
7 * bindings/js/kjs_window.cpp:
8 (KJS::Window::isSafeScript):
9 Don't log unsafe JavaScript attempts in the other version of isSafeScript() if in
10 private browsing mode either.
12 2007-11-10 Nikolas Zimmermann <zimmermann@kde.org>
16 Fix function name difference - header said 'unicodeRangeForCharacter', actually
17 implemented function is 'findCharUnicodeRange'. They are not compiled yet.
19 * platform/UnicodeRange.h:
21 2007-11-10 Dan Bernstein <mitz@apple.com>
23 Reviewed by Darin Adler.
25 - fix <rdar://problem/5450655> Control-clicking text in a link can surprisingly select only part of the link, should select entire link
27 No test because context menu events cannot be tested in DumpRenderTree.
29 * page/EventHandler.cpp:
30 (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent): Added.
31 If the click occurred in an active link, selects the entire link
32 element. Otherwise selects the closest word.
33 (WebCore::EventHandler::sendContextMenuEvent): Call
34 selectClosestWordOrLinkFromMouseEvent().
35 * page/EventHandler.h:
37 2007-11-10 John Sullivan <sullivan@apple.com>
39 Reviewed by Tim Hatcher
41 - fixed <rdar://problem/5394877> Safari should not log unsafe JavaScript attempts when
42 in private browsing mode (only an issue if Log JavaScript Exceptions is turned on)
44 * bindings/js/kjs_window.cpp:
45 (KJS::Window::isSafeScript):
46 Don't log unsafe JavaScript attempts to console or chromeClient if in private browsing mode
48 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
52 http://bugs.webkit.org/show_bug.cgi?id=15922
53 Implement more of Mozilla Selection API
55 Tests: editing/selection/containsNode.html
56 editing/selection/deleteFromDocument.html
57 editing/selection/extend.html
58 editing/selection/selectAllChildren.html
60 * editing/SelectionController.cpp:
61 (WebCore::SelectionController::deleteFromDocument):
62 (WebCore::SelectionController::containsNode):
63 (WebCore::SelectionController::selectAllChildren):
64 (WebCore::SelectionController::extend):
65 * editing/SelectionController.h:
66 Added deleteFromDocument(), containsNode(), and selectAllChildren(). Reimplemented extend(),
67 which existed, but didn't match Firefox behavior and wasn't exposed via bindings.
68 Removed a comment mentioning removeRange(), as this method makes no sense without multiple
69 selection range support.
71 * page/DOMSelection.cpp:
72 (WebCore::DOMSelection::extend):
73 (WebCore::DOMSelection::deleteFromDocument):
74 (WebCore::DOMSelection::containsNode):
75 (WebCore::DOMSelection::selectAllChildren):
76 * page/DOMSelection.h:
77 * page/DOMSelection.idl:
78 Exposed the new methods.
80 2007-11-10 Alexey Proskuryakov <ap@webkit.org>
84 http://bugs.webkit.org/show_bug.cgi?id=15892
85 DOM Range operations are not implemented for ProcessingInstruction nodes
87 Test: fast/dom/Range/range-processing-instructions.html
90 (WebCore::Range::processContents): Implemented ProcessingInstruction cases.
91 (WebCore::Range::checkNodeWOffset): Removed a FIXME - yes, I think that we are supposed
92 to use ProcessingInstruction.data.
94 2007-11-09 Timothy Hatcher <timothy@apple.com>
96 Reviewed by Mark Rowe.
98 Bug 12054: Ability to serialize an element subtree (into clipboard?) from the DOM inspector
99 http://bugs.webkit.org/show_bug.cgi?id=12054
101 - Add support code for routing copy events to the focused element.
102 - Implement copying the currently selected DOM node. The node
103 and it's subtree is copied to the clipboard. If the node has no
104 outerHTML, the nodeValue is copied (text nodes, etc.)
105 - Implement copy for the resource sidebar. The URL is copied for the
106 currently selected resource.
108 * page/inspector/DocumentPanel.js:
109 * page/inspector/inspector.js:
111 2007-11-09 Antti Koivisto <antti@apple.com>
115 Fix occasional blank video with poster attribute.
118 * html/HTMLMediaElement.cpp:
119 (WebCore::HTMLMediaElement::load):
120 (WebCore::HTMLMediaElement::didRestoreFromCache):
121 Just calling updateFromElement() does the right thing for both poster image and video.
123 2007-11-04 Sam Weinig <sam@webkit.org>
125 Reviewed by Adam Roben.
127 <rdar://problem/5435940>
128 The COM bindings for the DOM should be autogenerated like the other DOM bindings
130 Initial commit of the autogeneration of the COM DOM Bindings. No behavior change
131 is being introduced in this patch and to insure that no conflicts arise, a temporary
132 prefix of "GEN_" has been used for all the new classes.
134 The build architecture for these bindings differs slightly from the other autogenerated
135 bindings. Instead of building in WebCore and migrating the resuting code to WebKit (as
136 is done for the Objective-C bindigs currently), the IDLs and generation scripts are
137 migrated to WebKit and built there. This is done with a series of scripts and Makefiles.
139 This commit includes:
140 - Hand rolled root class/Interface GEN_DOMObject used to facilated object creation
142 - Generating all of the Core DOM and most of HTML and CSS
143 - Generating Event, EventTarget, and EventListener
145 * WebCore.vcproj/MigrateIDLAndScripts.make: Added.
146 * WebCore.vcproj/WebCore.vcproj:
147 * WebCore.vcproj/migrate-idls.sh: Added.
148 * bindings/scripts/CodeGenerator.pm:
149 * bindings/scripts/CodeGeneratorCOM.pm: Added.
150 * dom/EventListener.h: Make the isWindowEvent parameter default to false
151 to allow autogeneration based on the IDL.
153 2007-11-09 Tristan O'Tierney <tristan@apple.com>
155 Reviewed by Timothy Hatcher.
157 This patch is for the WebKit side of <rdar://problem/5591115>.
158 We need a way to tell context menu navigations, such as "Open in New Window"
159 to override any sort of browser preference for tab based navigation.
161 * bridge/WindowFeatures.h:
162 (WebCore::WindowFeatures::WindowFeatures):
163 Added a new struct member var, preferredType
164 and an accompanying enum type PreferredType
165 to send a window type recommendation up to the Chrome.
167 * page/ContextMenuController.cpp:
168 (WebCore::openNewWindow):
169 Set the window features to recommend a new Window for
170 "Open in New Window" context menu action.
172 2007-11-08 Adam Roben <aroben@apple.com>
174 Fix <rdar://5483519> Pressing Enter on selected buttons should fire onclick
176 We now match the behavior of Firefox and IE, which is to always just
177 send a click event to the focused button when the Enter key is pressed
178 (previously we were submitting forms directly in some cases).
182 Test: fast/forms/enter-clicks-buttons.html
184 * html/HTMLButtonElement.cpp:
185 (WebCore::HTMLButtonElement::defaultEventHandler): Don't do anything
186 fancy when Enter is pressed on a <button type=button> -- just send a
187 click event like we do for other button types.
188 * html/HTMLInputElement.cpp:
189 (WebCore::HTMLInputElement::defaultEventHandler): Treat type=button
190 the same way we treat type=submit and type=reset: just send a click
191 event when Enter is pressed.
193 2007-11-09 Dan Bernstein <mitz@apple.com>
195 Reviewed by Antti Koivisto.
197 - fix a bug in invisible layer culling: dynamically changing a
198 descendant of an invisible layer to be visible did not work
200 Test: fast/layers/layer-content-visibility-change.html
202 * rendering/RenderLayer.cpp:
203 (WebCore::RenderLayer::setHasVisibleContent): If we got visible content,
204 make sure that our stacking context rebuilds its z-order lists to
207 2007-11-09 David Hyatt <hyatt@apple.com>
209 Clean up matrix() parsing. Make sure the first four arguments can be lengths or numbers. The last two
210 args can be lengths or numbers or percents.
214 * WebCore.xcodeproj/project.pbxproj:
216 (WebCore::TransformOperationInfo::TransformOperationInfo):
217 (WebCore::CSSParser::parseTransform):
218 * rendering/RenderStyle.h:
219 (WebCore::MatrixTransformOperation::apply):
221 2007-11-09 Beth Dakin <bdakin@apple.com>
225 Fix for <rdar://problem/5586370> CSS Transform - incorrect matrix
226 math leads to crazy problems
228 Transform matrices accept the first four parameters as CSS lengths.
229 CSS lengths get mapped into WebCore::Lengths as percents by
230 WebCore::convertToLength(). Percent lengths cannot call value(). It
231 does not yield a correct result and it asserts on Debug builds.
233 * rendering/RenderStyle.h:
234 (WebCore::MatrixTransformOperation::apply): Instead of calling
235 value() on the lengths, call calcValue. This fixes the assert and
238 2007-11-09 Simon Hausmann <hausmann@kde.org>
240 Reviewed by nobody, build/link fix for Qt/Windows.
242 userIdleTime() is stubbed in win/SystemTimeWin.cpp, so don't
245 * platform/qt/TemporaryLinkStubs.cpp:
247 2007-11-09 Simon Hausmann <hausmann@kde.org>
251 Fix ContextMenu allocation in the Qt port.
253 Store all items and submenus value based in ContextMenu and ContextMenuItem.
254 That fixes the crashes when the context menu was populated with sub-menus because
255 of the use of temporary ContextMenu objects like this:
257 ContextMenu subMenu(...);
258 subMenu.appendItem(...);
259 subMenu.appendItem(...);
261 subMenuItem.setSubMenu(&subMenu); // temporary pointer, need to _copy_ contents
263 * platform/ContextMenu.h:
264 * platform/ContextMenuItem.h:
265 * platform/PlatformMenuDescription.h:
266 * platform/qt/ContextMenuItemQt.cpp:
267 (WebCore::ContextMenuItem::ContextMenuItem):
268 (WebCore::ContextMenuItem::platformSubMenu):
269 * platform/qt/ContextMenuQt.cpp:
270 (WebCore::ContextMenu::ContextMenu):
271 (WebCore::ContextMenu::~ContextMenu):
272 (WebCore::ContextMenu::appendItem):
273 (WebCore::ContextMenu::itemCount):
275 2007-11-09 Peter Kasting <zerodpx@gmail.com>
277 Reviewed by Mark Rowe.
279 http://bugs.webkit.org/show_bug.cgi?id=15909
280 Malformed GIFs should not result in memory corruption.
282 * platform/image-decoders/gif/GIFImageDecoder.cpp:
283 (WebCore::GIFImageDecoder::haveDecodedRow):
285 2007-11-08 Timothy Hatcher <timothy@apple.com>
287 Reviewed by Sam Weinig.
289 Some Web Inspector CSS editing changes.
290 - Only delete the property if all the text is delete or the new user input correctly parses.
291 This prevents deleting the existing property if the new text is invalid.
292 - Intercept the Escape key and cancel editing, not saving any changes.
294 * page/inspector/StylesSidebarPane.js:
296 2007-11-08 Kevin Ollivier <kevino@theolliviers.com>
298 Bakefiles for building WebCore, needed by wx port.
300 Reviewed by Mark Rowe.
302 * WebCoreSources.bkl: Added.
303 * webcore-base.bkl: Added.
304 * webcore-wx.bkl: Added.
306 2007-11-08 Justin Haygood <jhaygood@reaktix.com>
308 Reviewed by Mark Rowe.
310 http://bugs.webkit.org/show_bug.cgi?id=15905
312 Fix builds with HTML 5 Storage support disabled.
313 ENABLE(DATABASE) needs to be added in a few places.
315 * page/InspectorController.cpp:
316 * storage/Database.h:
318 2007-11-08 Steve Falkenburg <sfalken@apple.com>
320 <rdar://problem/5524082> Allow images to be dragged out directly into other apps
322 We weren't including CF_HDROP in our image drops. This broke drag of
323 images out of the browser window directly into other apps (examples
324 include notepad, mspaint, msword).
326 Reviewed by Oliver, Ada.
328 * platform/win/ClipboardWin.cpp:
329 (WebCore::createGlobalImageFileContent): Removed unused variable.
330 (WebCore::createGlobalHDropContent): Added
331 (WebCore::writeFileToDataObject): Write HDROP data if available.
332 (WebCore::writeImageToDataObject): Write HDROP for dragged images.
333 (WebCore::ClipboardWin::writeURL): Don't write HDROP for dragged URLs.
335 2007-11-08 Xan Lopez <xan@gnome.org>
339 http://bugs.webkit.org/show_bug.cgi?id=15908
340 Use g_object_ref_sink when available
342 * platform/gtk/PopupMenuGtk.cpp:
343 (WebCore::PopupMenu::show):
344 * platform/gtk/ScrollViewGtk.cpp:
345 (WebCore::ScrollView::setGtkAdjustments):
347 2007-11-08 Dan Bernstein <mitz@apple.com>
349 Reviewed by Beth Dakin.
351 - fix <rdar://problem/5491922> REGRESSION (Safari 2-3): Flash-based "Cash Optimizer" on etrade.com does not draw completely
353 Test: fast/dom/length-attribute-mapping.html
355 * dom/StyledElement.cpp:
356 (WebCore::StyledElement::addCSSLength): Changed the garbage-stripping
357 logic to stop after the first "%" or "*" in the string. This allows for
358 "100%25" to be mapped to "100%" like it is in Firefox and WinIE.
360 2007-11-08 Kevin McCullough <kmccullough@apple.com>
364 * loader/FrameLoaderClient.h:
365 * platform/graphics/svg/SVGImageEmptyClients.h:
366 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
368 2007-11-08 Kevin McCullough <kmccullough@apple.com>
372 - windowObjectCleared() is no longer const. It needs to setup the
373 script debugger and cannot be const to do so.
375 * loader/FrameLoaderClient.h:
376 * platform/graphics/svg/SVGImageEmptyClients.h:
377 (WebCore::SVGEmptyFrameLoaderClient::windowObjectCleared):
379 2007-11-08 Adam Roben <aroben@apple.com>
381 Hopeful Windows build fix
383 * rendering/RenderObject.cpp: Touch this file to make it recompile.
385 2007-11-08 Sam Weinig <sam@webkit.org>
389 Convert JavaScript internal function objects to use one class per
390 function. This avoids a switch statement inside what used to be
391 the shared function classes and will allow Shark to better analyze
394 To make this switch, the value property of the HashEntry was changed
395 to a union of an intptr_t (which is used to continue handle valueGetters)
396 and function pointer which points to a static constructor for the
397 individual new function objects.
399 SunSpider claims this is a 1.0% speedup.
401 - On the WebCore side, I updated CodeGeneratorJS.pm to generate the
402 new classes and hand updated the remain non-generated (groan) classes.
404 * bindings/js/JSDOMWindowCustom.cpp:
405 (WebCore::JSDOMWindow::customGetOwnPropertySlot):
406 * bindings/js/JSEventTargetNode.cpp:
407 (WebCore::JSEventTargetNodePrototypeFunctionAddEventListener::callAsFunction):
408 (WebCore::JSEventTargetNodePrototypeFunctionRemoveEventListener::callAsFunction):
409 (WebCore::JSEventTargetNodePrototypeFunctionDispatchEvent::callAsFunction):
410 * bindings/js/JSEventTargetNode.h:
411 * bindings/js/JSHTMLInputElementBase.cpp:
412 (WebCore::JSHTMLInputElementBaseFunctionSetSelectionRange::callAsFunction):
413 (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
414 * bindings/js/JSHTMLInputElementBase.h:
415 (WebCore::JSHTMLInputElementBase::):
416 * bindings/js/JSXMLHttpRequest.cpp:
417 (KJS::JSXMLHttpRequestPrototypeFunctionAbort::callAsFunction):
418 (KJS::JSXMLHttpRequestPrototypeFunctionGetAllResponseHeaders::callAsFunction):
419 (KJS::JSXMLHttpRequestPrototypeFunctionGetResponseHeader::callAsFunction):
420 (KJS::JSXMLHttpRequestPrototypeFunctionOpen::callAsFunction):
421 (KJS::JSXMLHttpRequestPrototypeFunctionSend::callAsFunction):
422 (KJS::JSXMLHttpRequestPrototypeFunctionSetRequestHeader::callAsFunction):
423 (KJS::JSXMLHttpRequestPrototypeFunctionOverrideMIMEType::callAsFunction):
424 (KJS::JSXMLHttpRequestPrototypeFunctionAddEventListener::callAsFunction):
425 (KJS::JSXMLHttpRequestPrototypeFunctionRemoveEventListener::callAsFunction):
426 (KJS::JSXMLHttpRequestPrototypeFunctionDispatchEvent::callAsFunction):
427 * bindings/js/JSXMLHttpRequest.h:
428 (KJS::JSXMLHttpRequest::impl):
429 * bindings/js/JSXSLTProcessor.cpp:
430 (KJS::JSXSLTProcessorPrototypeFunctionImportStylesheet::callAsFunction):
431 (KJS::JSXSLTProcessorPrototypeFunctionTransformToFragment::callAsFunction):
432 (KJS::JSXSLTProcessorPrototypeFunctionTransformToDocument::callAsFunction):
433 (KJS::JSXSLTProcessorPrototypeFunctionSetParameter::callAsFunction):
434 (KJS::JSXSLTProcessorPrototypeFunctionGetParameter::callAsFunction):
435 (KJS::JSXSLTProcessorPrototypeFunctionRemoveParameter::callAsFunction):
436 (KJS::JSXSLTProcessorPrototypeFunctionClearParameters::callAsFunction):
437 (KJS::JSXSLTProcessorPrototypeFunctionReset::callAsFunction):
438 * bindings/js/JSXSLTProcessor.h:
439 * bindings/js/kjs_events.cpp:
440 (WebCore::JSClipboardPrototypeFunctionClearData::callAsFunction):
441 (WebCore::JSClipboardPrototypeFunctionGetData::callAsFunction):
442 (WebCore::JSClipboardPrototypeFunctionSetData::callAsFunction):
443 (WebCore::JSClipboardPrototypeFunctionSetDragImage::callAsFunction):
444 * bindings/js/kjs_events.h:
445 * bindings/js/kjs_navigator.cpp:
447 (KJS::Navigator::getOwnPropertySlot):
448 (KJS::Plugins::getOwnPropertySlot):
449 (KJS::PluginsFunctionRefresh::callAsFunction):
450 (KJS::NavigatorProtoFuncJavaEnabled::callAsFunction):
451 * bindings/js/kjs_navigator.h:
453 * bindings/js/kjs_window.cpp:
454 (KJS::Window::getOwnPropertySlot):
456 (KJS::WindowProtoFuncAToB::callAsFunction):
457 (KJS::WindowProtoFuncBToA::callAsFunction):
458 (KJS::WindowProtoFuncOpen::callAsFunction):
459 (KJS::WindowProtoFuncScrollBy::callAsFunction):
460 (KJS::WindowProtoFuncScrollTo::callAsFunction):
461 (KJS::WindowProtoFuncMoveBy::callAsFunction):
462 (KJS::WindowProtoFuncMoveTo::callAsFunction):
463 (KJS::WindowProtoFuncResizeBy::callAsFunction):
464 (KJS::WindowProtoFuncResizeTo::callAsFunction):
465 (KJS::WindowProtoFuncSetTimeout::callAsFunction):
466 (KJS::WindowProtoFuncClearTimeout::callAsFunction):
467 (KJS::WindowProtoFuncSetInterval::callAsFunction):
468 (KJS::WindowProtoFuncAddEventListener::callAsFunction):
469 (KJS::WindowProtoFuncRemoveEventListener::callAsFunction):
470 (KJS::WindowProtoFuncShowModalDialog::callAsFunction):
471 (KJS::WindowProtoFuncNotImplemented::callAsFunction):
472 (KJS::Location::getOwnPropertySlot):
473 (KJS::Location::put):
474 (KJS::LocationProtoFuncReplace::callAsFunction):
475 (KJS::LocationProtoFuncReload::callAsFunction):
476 (KJS::LocationProtoFuncAssign::callAsFunction):
477 (KJS::LocationProtoFuncToString::callAsFunction):
478 * bindings/js/kjs_window.h:
480 * bindings/scripts/CodeGeneratorJS.pm:
482 2007-11-08 Mark Rowe <mrowe@apple.com>
484 Fix the Gtk, Qt and Wx builds.
486 * platform/gtk/TemporaryLinkStubs.cpp:
487 * platform/qt/TemporaryLinkStubs.cpp:
488 * platform/wx/TemporaryLinkStubs.cpp:
490 2007-11-08 Mark Rowe <mrowe@apple.com>
492 Not reviewed. Fix two instances of includes using the wrong case in the filename.
494 * platform/graphics/mac/MoviePrivateQTKit.mm:
495 * platform/wx/MimeTypeRegistryWx.cpp:
497 2007-11-08 Darin Adler <darin@apple.com>
501 - fix <rdar://problem/5552943> accesskey does not focus <button> elements
503 Test: fast/forms/access-key.html
505 * html/HTMLButtonElement.cpp: (WebCore::HTMLButtonElement::accessKeyAction):
506 Added a call to focus.
508 2007-11-07 Darin Adler <darin@apple.com>
512 - cut down on notImplemented() functions on Windows
514 * bridge/AXObjectCache.h: Put #if around the accessibility
517 * bridge/win/FrameWin.cpp: (WebCore::Frame::setNeedsReapplyStyles):
518 Moved here from TemporaryLinkStubs.
520 * dom/Document.cpp: (WebCore::Document::lastModified): Re-implemented
521 using the ResourceResponse that's now available from the DocumentLoader.
523 * editing/JSEditor.cpp: (execTranspose): Changed to call transpose() on
524 the Editor instead of the obsolete one on the Frame.
526 * loader/DocumentLoader.h: Removed getResponseModifiedHeader.
527 * loader/FrameLoader.h: Removed overrideMediaType.
529 * loader/gtk/DocumentLoaderGtk.cpp: Removed.
530 * loader/mac/DocumentLoaderMac.mm: Removed.
531 * loader/qt/DocumentLoaderQt.cpp: Removed.
533 * page/Frame.cpp: Removed transpose.
534 * page/Frame.h: Ditto.
535 * page/FrameView.h: Removed updateBorder.
536 * page/gtk/FrameGtk.cpp: Removed issueTransposeCommand.
537 * page/mac/FrameMac.mm: Ditto.
538 * page/mac/WebCoreFrameBridge.h: Removed issueTransposeCommand and
540 * page/qt/FrameQt.cpp: Removed issueTransposeCommand.
542 * platform/gtk/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled.
543 * platform/qt/TemporaryLinkStubs.cpp: Ditto.
544 * platform/win/TemporaryLinkStubs.cpp: Removed or moved all but 3 of the stubs.
545 * platform/wx/TemporaryLinkStubs.cpp: Removed gAccessibilityEnabled,
546 issueTransposeCommand, and overrideMediaType.
548 * platform/network/cf/ResourceHandleCFNet.cpp:
549 (WebCore::ResourceHandle::loadsBlocked): Moved here from TemporaryLinkStubs.
550 (WebCore::ResourceHandle::willLoadFromCache): Ditto.
551 * platform/win/GraphicsContextWin.cpp:
552 (WebCore::GraphicsContextPlatformPrivate::clip): Ditto.
553 * platform/win/ScrollViewWin.cpp: (WebCore::ScrollView::inWindow): Ditto.
554 * platform/win/SystemTimeWin.cpp: (WebCore::userIdleTime): Ditto.
555 * platform/win/WidgetWin.cpp: (WebCore::Widget::setIsSelected): Ditto.
557 * WebCore.pro: Updated for removed files.
558 * WebCore.xcodeproj/project.pbxproj: Updated for removed file.
560 2007-11-08 Mark Rowe <mrowe@apple.com>
562 Build fix for case-sensitive file systems. Fix case of file names
565 * html/HTMLMediaElement.cpp:
566 * platform/graphics/Movie.cpp:
568 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
570 Reviewed by Lars Knoll <lars@trolltech.com>.
572 Remove some warnings about not implemented methods.
574 * ResourceHandle::loadsBlocked and ResourceHandle::supportsBufferedData are
575 specific to the NS API and won't be implemented on Qt.
576 * ResourceHandle::bufferedData can not be reached as we return false in
577 ResourceHandle::supportsBufferedData.
580 * platform/network/qt/ResourceHandleQt.cpp:
581 (WebCore::ResourceHandle::supportsBufferedData):
583 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
585 Reviewed by Lars Knoll <lars@trolltech.com>.
587 Cleanup checking for the request method.
589 * Check the request method only in QWebNetworkManager::add.
590 * Currently HEAD, GET, POST are allowed and for everything else
591 QWebNetworkManager::add returns false.
592 * Returning false is compatible with ResourceHandle::start and it
593 can be used in ResourceHandle::loadResourceSynchronously to generate
597 * platform/network/qt/ResourceHandleQt.cpp:
598 (WebCore::ResourceHandle::start):
599 (WebCore::ResourceHandle::loadResourceSynchronously):
601 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
603 Reviewed by Lars Knoll <lars@trolltech.com>.
605 Implement WebCore::callOnMainThread
607 Implemented using a global QObject, that is moved to the main thread
608 and then sending a custom event to it.
609 Picked a number below QEvent::User but above any other documented value.
612 * platform/qt/ThreadingQt.cpp:
613 (WebCore::PerformFunctionEvent::PerformFunctionEvent):
614 (WebCore::MainThreadInvoker::MainThreadInvoker):
615 (WebCore::MainThreadInvoker::event):
616 (WebCore::callOnMainThread):
618 2007-11-08 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
620 Reviewed by Lars Knoll <lars@trolltech.com>.
622 Avoid problems with calling QPainter::begin() on an already active paintdevice
624 * Partial pick from 6200e04c3e0a77873c3b3f3969b65bc701020326 to avoid getting
625 crashes on Qt/Mac 4.4 with QPainter::begin to fail because we already draw.
626 * If we are in a layout or need one do not paint. This can happen for the PlatformScrollBar
627 used by the ScrollView on a layout triggered by QWebPage::paintEvent.
630 * platform/qt/WidgetQt.cpp:
631 (WebCore::Widget::invalidateRect):
633 2007-11-08 Eric Seidel <eric@webkit.org>
637 * ksvg2/svg/SVGPathElement.h: remove old comment
639 2007-11-07 Antti Koivisto <antti@apple.com>
643 Ensure video renderer has correct size if video has already been loaded
644 when it is constructed.
646 * rendering/RenderVideo.cpp:
647 (WebCore::RenderVideo::RenderVideo):
649 2007-11-07 Antti Koivisto <antti@apple.com>
653 Ensure video is visible when it should be.
655 * rendering/RenderVideo.cpp:
656 (WebCore::RenderVideo::updateMovie):
658 2007-11-07 Dan Bernstein <mitz@apple.com>
660 Reviewed by Darin Adler.
662 - fix <rdar://problem/5523503> Safari crashes clicking scroll bar in FaceBook 'Trips'
664 Layers and listboxes are two kinds of ScrollBarClient that can be
665 removed while the scrollbar is tracking the mouse. The scrollbar is not
666 destroyed until later, and meanwhile it can try to call the client,
667 which results in a crash.
669 * manual-tests/stale-scrollbar-client-crash.html: Added.
670 * platform/ScrollBar.h:
671 (WebCore::Scrollbar::setClient): Added.
672 * rendering/RenderLayer.cpp:
673 (WebCore::RenderLayer::destroyScrollbar): Call Scrollbar::setClient().
674 * rendering/RenderListBox.cpp:
675 (WebCore::RenderListBox::~RenderListBox): Ditto.
677 2007-11-07 Adam Roben <aroben@apple.com>
679 Fix <rdar://5569268> Crash when opening any FTP site in second tab/window
685 * platform/win/SharedBufferWin.cpp:
686 (WebCore::SharedBuffer::createWithContentsOfFile): Bail if we get an
687 empty path, because _wfopen_s will crash if we pass it a null pointer.
689 2007-11-07 David Kilzer <ddkilzer@apple.com>
691 WebKit confuses width/height for Media Queries device-aspect-ratio evaluation
692 <http://bugs.webkit.org/show_bug.cgi?id=14893>
693 <rdar://problem/5380295>
697 Tests: fast/css/device-aspect-ratio.html
698 fast/css/max-device-aspect-ratio.html
699 fast/css/min-device-aspect-ratio.html
701 * css/MediaQueryEvaluator.cpp:
702 (WebCore::parseAspectRatio): Renamed method parameters from a/b to h/v.
703 (WebCore::device_aspect_ratioMediaFeatureEval): Renamed local variables from
704 a/b to h/v. Switched first two arguments of the call to cmpvalue() to fix
707 2007-11-07 Dan Bernstein <mitz@apple.com>
709 Reviewed by Dave Hyatt.
711 - fix http://bugs.webkit.org/show_bug.cgi?id=15887
712 REGRESSION (r27576): Crash in RenderStyle::affectedByHoverRules clicking link on Digg
714 Test: fast/css/display-none-inline-style-change-crash.html
717 (WebCore::Element::recalcStyle): Fixed the crash by null-checking
718 the current style and removed other checks that are not strictly
721 2007-11-07 Brady Eidson <beidson@apple.com>
725 Remove FrameLoaderClient methods from SVG that were pruned awhile ago
727 * platform/graphics/svg/SVGImageEmptyClients.h:
729 2007-11-07 Dan Bernstein <mitz@apple.com>
731 Reviewed by Darin Adler.
733 - fix a bug where CSS rules with :hover in the ancestor chain stopped
734 working after changing the inline style declaration of the ancestor
736 Test: fast/css/affected-by-hover-after-style-change.html
739 (WebCore::Element::recalcStyle): If we are not forcing style
740 recalculation for all descendants, preserve any "affected by
741 {hover|active|drag} bits that we may have acquired from them.
742 Also renamed _style to currentStyle.
744 2007-11-06 Timothy Hatcher <timothy@apple.com>
748 Bug 11920: Web Inspector should have Firebug-like CSS editing
749 http://bugs.webkit.org/show_bug.cgi?id=11920
751 * css/CSSComputedStyleDeclaration.h:
752 (WebCore::CSSComputedStyleDeclaration::isPropertyImplicit): Return false. I'm not sure why
753 this was true, but computed style has no concept of implicit. So false makes more sense
754 and makes the code simpler in the inspector. This function was added for the inspector,
755 so this isn't a compatibility change.
756 * page/inspector/PropertiesSection.js: Add a getter/setter to reset populated status.
757 * page/inspector/StylesSidebarPane.js: Some refactoring along with the main support for
759 * page/inspector/inspector.css: Style changes for propery editing and focus correctness.
760 * page/inspector/inspector.js: Look for a handleKeyEvent function of the focus element before
761 trying to call a function based on the element's id. Call focused and blurred on the focused
762 element when currentFocusElement is changed. Use the new listItemElement getter instead of
763 the private property.
764 * page/inspector/treeoutline.js: No longer expand on double click if ondblclick is implemented.
765 Shrink the toggle zone to 10px to better match the size of the arrow. Add an onattach call
766 to allow generation of the title using the DOM element. Add listItemElement and
767 childrenListElement getters.
768 * page/inspector/utilities.js: Add new helper prototype methods on CSSStyleDeclaration.
769 * page/inspector/DocumentPanel.js: Use the new listItemElement getter instead of the private
770 property. Also expand the DOM node on double click now that the TreeOutline dosen't do it.
771 * page/inspector/Resource.js: Use the new listItemElement and childrenListElement getters
772 instead of the private properties.
774 2007-11-07 Simon Hausmann <hausmann@kde.org>
776 Reviewed by Alexey Proskuryakov.
778 Coding style fix, don't use inline explicitly.
780 * bridge/WindowFeatures.h:
782 2007-11-07 Simon Hausmann <hausmann@kde.org>
786 For safety provide a default constructor for WindowFeatures().
787 ContextMenuController.cpp: createNewWindow as well as QWebPage need to
788 create a default initialized WindowFeatures object on the fly.
790 * bridge/WindowFeatures.h:
791 (WebCore::WindowFeatures::WindowFeatures):
793 2007-11-07 Simon Hausmann <shausman@trolltech.com>
797 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.
801 2007-11-07 Simon Hausmann <hausmann@kde.org>
805 Made the QWebSettings::webGraphic functions static. The implementation was using QWebSettings::global() anyway.
807 * platform/graphics/qt/ImageQt.cpp:
808 (loadResourcePixmap):
810 2007-11-07 Simon Hausmann <hausmann@kde.org>
814 Moved the WebCore::Image specific function loadResourcePixmap from qwebsettings.cpp to ImageQt.cpp and made it static.
816 * platform/graphics/qt/ImageQt.cpp:
817 (loadResourcePixmap):
819 2007-11-07 Simon Hausmann <hausmann@kde.org>
823 Restructure the context menu classes for the Qt port. ContextMenu and ContextMenuItem don't store
824 QActions/QMenus anymore but just store the action type, tag, title and optionally submenu as created
825 in ContextMenu::populate().
826 For the actual Qt context menu we traverse this structure after sendContextMenuEvent and create a QMenu
827 out of it. That menu is currently not functional anymore though.
829 * platform/ContextMenu.h:
830 * platform/ContextMenuItem.h:
831 (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription):
832 * platform/PlatformMenuDescription.h:
833 * platform/qt/ContextMenuItemQt.cpp:
834 (WebCore::ContextMenuItem::ContextMenuItem):
835 (WebCore::ContextMenuItem::type):
836 (WebCore::ContextMenuItem::setType):
837 (WebCore::ContextMenuItem::action):
838 (WebCore::ContextMenuItem::setAction):
839 (WebCore::ContextMenuItem::title):
840 (WebCore::ContextMenuItem::setTitle):
841 (WebCore::ContextMenuItem::platformSubMenu):
842 (WebCore::ContextMenuItem::setSubMenu):
843 (WebCore::ContextMenuItem::setChecked):
844 (WebCore::ContextMenuItem::setEnabled):
845 * platform/qt/ContextMenuQt.cpp:
846 (WebCore::ContextMenu::ContextMenu):
847 (WebCore::ContextMenu::~ContextMenu):
848 (WebCore::ContextMenu::appendItem):
849 (WebCore::ContextMenu::itemCount):
850 (WebCore::ContextMenu::insertItem):
851 (WebCore::ContextMenu::setPlatformDescription):
852 (WebCore::ContextMenu::platformDescription):
854 2007-11-07 Simon Hausmann <hausmann@kde.org>
858 Changed ContextMenu::setPlatformDescription for the Qt port to not show the qmenu right away
859 but instead just behave as a normal setter that takes ownership of the platform menu description (the qmenu).
860 Instead now QWebPage::contextMenuEvent() retrieves the QMenu after calling sendContextMenuEvent and calls exec()
863 * platform/qt/ContextMenuQt.cpp:
865 2007-11-07 Simon Hausmann <hausmann@kde.org>
869 Changed to PlatformMouseEvent constructor to allow construction from a QContextMenuEvent.
870 Call sendContextMenuEvent on the event handler from a QWidget::contextMenuEvent re-implementation instead of in mousePressEvent.
872 * platform/PlatformMouseEvent.h:
873 * platform/qt/PlatformMouseEventQt.cpp:
874 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
876 2007-11-07 Lars Knoll <lars@trolltech.com>
880 don't put nbsp's into the plan text paste
882 Fix both ClipboardQt and PasteboardQt to replace
883 nbsp's with spaces before putting the text onto the
884 native clipboard. This is consistent with Mac and Win
885 and fixes at least editing/pasteboard/4076267-3.html
887 * platform/qt/ClipboardQt.cpp:
888 (WebCore::ClipboardQt::writeRange):
889 * platform/qt/PasteboardQt.cpp:
890 (WebCore::Pasteboard::writeSelection):
892 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
894 Reviewed by Lars Knoll <lars@trolltech.com>.
896 Implement Pasteboard::writeImage()
898 * Pasteboard is now fully implemented. Copying of Images into the Clipboard
900 * As with URLs we only copy into the Clipboard (and not additionally to the
904 WARNING: NO TEST CASES ADDED OR CHANGED
906 * platform/qt/PasteboardQt.cpp:
907 (WebCore::Pasteboard::writeImage):
909 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
911 Reviewed by Lars Knoll <lars@trolltech.com>.
913 Apple CodingStyle fixes
916 WARNING: NO TEST CASES ADDED OR CHANGED
918 * platform/qt/PasteboardQt.cpp:
919 (WebCore::Pasteboard::documentFragment):
921 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
923 Reviewed by Lars Knoll <lars@trolltech.com>.
925 Implement Pasteboard::writeURL()
926 * The URL currently gets written as text/plain and text/uri-list.
927 The win and mac port have some more types which we currently do
928 not support. When supporting them we can use the 'titleString'
930 * As with writeSelection we only copy into the Clipboard. We could
931 consider copying into the Selection as well.
934 WARNING: NO TEST CASES ADDED OR CHANGED
936 * platform/qt/PasteboardQt.cpp:
937 (WebCore::Pasteboard::writeURL):
939 2007-11-07 Holger Hans Peter Freyther <holger.freyther@trolltech.com>
941 Reviewed by Lars Knoll <lars@trolltech.com>.
946 WARNING: NO TEST CASES ADDED OR CHANGED
948 * platform/qt/PasteboardQt.cpp:
949 (WebCore::Pasteboard::documentFragment):
951 2007-11-07 Lars Knoll <lars@trolltech.com>
955 Use the correct function calls to convert a selection to
958 WARNING: NO TEST CASES ADDED OR CHANGED
960 * platform/qt/ClipboardQt.cpp:
961 (WebCore::ClipboardQt::setData):
962 (WebCore::ClipboardQt::writeRange):
963 * platform/qt/PasteboardQt.cpp:
964 (WebCore::Pasteboard::writeSelection):
966 2007-11-07 Lars Knoll <lars@trolltech.com>
970 Some more clipboard fixes.
972 We have to set things immediately on the QClipBoard if the
973 Clipboard object is not for dragging.
975 This is due to the fact that the Clipboard object might be
976 rather long lived if accessed through javascript (it'll only
977 get deleted by JS garbage collection). We have to transfer
978 the data over to the QClipboard before that to make things work.
980 Fixes editing/execCommand/copy-without-selection.html
982 * platform/qt/ClipboardQt.cpp:
983 (WebCore::ClipboardQt::ClipboardQt):
984 (WebCore::ClipboardQt::~ClipboardQt):
985 (WebCore::ClipboardQt::clearData):
986 (WebCore::ClipboardQt::clearAllData):
987 (WebCore::ClipboardQt::getData):
988 (WebCore::ClipboardQt::setData):
989 (WebCore::ClipboardQt::declareAndWriteDragImage):
990 (WebCore::ClipboardQt::writeURL):
991 (WebCore::ClipboardQt::writeRange):
993 2007-11-07 Simon Hausmann <hausmann@kde.org>
997 Fix compilation on Windows with non-cygwin perl. open FILE, "|-" is
998 not supported due to implicit forks, use IPC::Open2 instead.
1000 * bindings/scripts/IDLParser.pm:
1002 2007-11-07 Dan Bernstein <mitz@apple.com>
1004 Reviewed by Brady Eidson.
1006 - fix http://bugs.webkit.org/show_bug.cgi?id=15877
1007 REGRESSION: r27486 caused a layout regression at my bank's website
1009 Test: fast/block/float/overhanging-after-height-decrease-offsets.html
1011 * rendering/RenderBlock.cpp:
1012 (WebCore::RenderBlock::layoutBlock):
1014 2007-11-06 Beth Dakin <bdakin@apple.com>
1018 <rdar://problem/5575812> REGRESSION:When using absolute positioning
1019 with overflow:auto div, WebKit seems to add an additional 15px
1021 * rendering/RenderBox.cpp:
1022 (WebCore::RenderBox::containingBlockWidthForPositioned): We need to
1023 subtract off the vertical scrollbar width too.
1025 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1027 Reviewed by Dan Bernstein.
1029 <rdar://problem/5583387> ASSERTION FAILED: !refChild->hasTagName(bodyTag) when pasting newline in plain text into rich text Mail
1030 <rdar://problem/5583362> REGRESSION (5523.10.3-TOT): Newlines stripped when pasting plain text in Mail
1032 * editing/markup.cpp:
1033 (WebCore::createFragmentFromText): Put paragraphs of text into clones of the block
1034 that encloses the input context, unless that block is the body, which shouldn't
1035 be cloned. In that case, use regular divs, as we did before r27369.
1037 2007-11-06 Christian Dywan <christian@twotoasts.de>
1041 Fix http://bugs.webkit.org/show_bug.cgi?id=15828
1042 Bug 15828: WebKit GTK include and lib directory is installed in qt4-named directory
1044 * WebCore.pro: Use sane default install paths for the gtk port.
1046 2007-11-06 Justin Garcia <justin.garcia@apple.com>
1048 Reviewed by Darin Adler.
1050 <rdar://problem/5576619>
1051 REGRESSION: Caret disappears after deleting the last character in inline hole (15714)
1053 * editing/TypingCommand.cpp:
1054 (WebCore::TypingCommand::deleteSelection): Like the other TypingCommands, including
1055 both of the other deletion commands, call typingAddedToOpenCommand(), which takes
1056 the command's endingSelection and sets it as selection.
1058 2007-11-06 Dan Bernstein <mitz@apple.com>
1060 Reviewed by Antti Koivisto and Dave Hyatt.
1062 - fix <rdar://problem/5582961> Incorrect layout and floating object list corruption when CSS decreases a block's height
1064 Test: fast/block/float/overhanging-after-height-decrease.html
1066 * rendering/RenderBlock.cpp:
1067 (WebCore::RenderBlock::layoutBlock): If after calculating the height
1068 it turns out that there are overhanging floats that were not overhanging
1069 before, rescan children with overhanging floats and add them.
1070 (WebCore::RenderBlock::layoutBlockChildren): Added a parameter that
1071 returns the lowest float bottom of any of the children.
1072 (WebCore::RenderBlock::addOverhangingFloats): Changed to return the
1073 lowest float bottom.
1074 * rendering/RenderBlock.h:
1076 2007-11-06 Adele Peterson <adele@apple.com>
1080 Switched all uses of HTMLImageLoader to use OwnPtrs.
1082 * html/HTMLInputElement.h:
1083 * html/HTMLInputElement.cpp:
1084 (WebCore::HTMLInputElement::init):
1085 (WebCore::HTMLInputElement::~HTMLInputElement):
1086 (WebCore::HTMLInputElement::setInputType):
1087 (WebCore::HTMLInputElement::parseMappedAttribute):
1088 (WebCore::HTMLInputElement::attach):
1089 * html/HTMLObjectElement.h:
1090 * html/HTMLObjectElement.cpp:
1091 (WebCore::HTMLObjectElement::HTMLObjectElement):
1092 (WebCore::HTMLObjectElement::~HTMLObjectElement):
1093 (WebCore::HTMLObjectElement::parseMappedAttribute):
1094 (WebCore::HTMLObjectElement::attach):
1095 * html/HTMLVideoElement.h:
1096 * html/HTMLVideoElement.cpp:
1097 (WebCore::HTMLVideoElement::HTMLVideoElement):
1098 (WebCore::HTMLVideoElement::attach):
1099 (WebCore::HTMLVideoElement::detach):
1100 (WebCore::HTMLVideoElement::parseMappedAttribute):
1102 2007-11-06 Antti Koivisto <antti@apple.com>
1106 Trigger media load on on src attribute changes as specified in new HTML5 draft.
1108 Tests: media/video-src-change.html
1109 media/video-src-remove.html
1110 media/video-src-set.html
1112 * html/HTMLMediaElement.cpp:
1113 (WebCore::HTMLMediaElement::attributeChanged):
1114 * html/HTMLMediaElement.h:
1116 2007-11-06 Dan Bernstein <mitz@apple.com>
1118 Reviewed by Darin Adler.
1120 - fix http://bugs.webkit.org/show_bug.cgi?id=15838
1121 Incomplete repaint toggling "How you know this person" on Facebook
1123 Test: fast/repaint/make-children-non-inline.html
1125 * rendering/RenderBlock.cpp:
1126 (WebCore::RenderBlock::makeChildrenNonInline): Repaint the block. This
1127 is needed because the inline children may be repositioned as they move
1128 into new anonymous blocks, but those blocks have no knowledge of where
1129 their children used to be, so they cannot invalidate those areas.
1131 2007-11-06 Alexey Proskuryakov <ap@webkit.org>
1135 http://bugs.webkit.org/show_bug.cgi?id=15847
1136 Some editing cleanup
1138 No change in functionality.
1140 * editing/TextIterator.cpp:
1141 (WebCore::plainText):
1142 * editing/TextIterator.h:
1143 Made WebCore::plainText() return String instead of DeprecatedString.
1145 * bridge/mac/WebCoreAXObject.mm:
1146 (-[WebCoreAXObject textUnderElement]):
1147 (-[WebCoreAXObject value]):
1148 (-[WebCoreAXObject doAXBoundsForTextMarkerRange:]):
1149 (-[WebCoreAXObject doAXNextSentenceEndTextMarkerForTextMarker:]):
1150 (-[WebCoreAXObject doAXPreviousSentenceStartTextMarkerForTextMarker:]):
1151 Updated for the above change. There is no need to explicitly convert to NSString now.
1153 * editing/EditCommand.cpp:
1154 (WebCore::EditCommand::EditCommand): m_startingSelection and m_endingSelection are actually
1155 initialized in constructor body, so the work done in initializer list was wasted.
1157 (WebCore::EditCommand::apply): Moved some stars.
1158 (WebCore::EditCommand::unapply): Ditto.
1159 (WebCore::EditCommand::reapply): Ditto.
1160 (WebCore::EditCommand::setStartingSelection): The loop exit condition was evaluated twice,
1161 removed one of the checks.
1163 * editing/SelectionController.cpp:
1164 (WebCore::SelectionController::toString): plainText() result type now matches what we need here.
1166 * page/mac/WebCoreFrameBridge.h:
1167 * page/mac/WebCoreFrameBridge.mm:
1168 Removed unused -[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:] and
1169 -[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:].
1171 2007-11-05 Mark Rowe <mrowe@apple.com>
1175 * bindings/js/JSHTMLDocumentCustom.cpp:
1176 (WebCore::writeHelper):
1178 2007-11-05 Adam Roben <aroben@apple.com>
1180 Don't crash if SafariTheme can't be loaded
1182 PlatformScrollBarSafari and RenderThemeSafari were not checking
1183 whether SafariTheme was successfully loaded. All other uses of
1184 SafariTheme already check this.
1188 * platform/win/PlatformScrollBarSafari.cpp: Don't paint if SafariTheme
1190 (WebCore::PlatformScrollbar::paintButton):
1191 (WebCore::PlatformScrollbar::paintTrack):
1192 (WebCore::PlatformScrollbar::paintThumb):
1193 * rendering/RenderThemeSafari.cpp:
1194 (WebCore::RenderThemeSafari::isControlStyled): Always return true if
1195 we couldn't load SafariTheme. This way we should never try to paint
1196 themed controls (and we assert as such in the paint functions).
1197 (WebCore::RenderThemeSafari::paintCheckbox):
1198 (WebCore::RenderThemeSafari::paintRadio):
1199 (WebCore::RenderThemeSafari::paintButton):
1200 (WebCore::RenderThemeSafari::paintTextField):
1201 (WebCore::RenderThemeSafari::paintCapsLockIndicator):
1202 (WebCore::RenderThemeSafari::paintTextArea):
1203 (WebCore::RenderThemeSafari::paintMenuList):
1204 (WebCore::RenderThemeSafari::paintSliderThumb):
1205 (WebCore::RenderThemeSafari::paintSearchField):
1206 (WebCore::RenderThemeSafari::paintSearchFieldCancelButton):
1207 (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration):
1208 (WebCore::RenderThemeSafari::paintSearchFieldResultsButton):
1210 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1212 Adding the rest of wx port's graphics impl.
1214 Rubber-stamped by Maciej Stachowiak.
1216 * platform/graphics/wx/AffineTransformWx.cpp: Added.
1217 * platform/graphics/wx/GraphicsContextWx.cpp: Added.
1218 * platform/graphics/wx/ImageBufferWx.cpp: Added.
1219 * platform/graphics/wx/ImageSourceWx.cpp: Added.
1220 * platform/graphics/wx/ImageWx.cpp: Added.
1221 * platform/graphics/wx/PathWx.cpp: Added.
1223 2007-11-05 Kevin Ollivier <kevino@theolliviers.com>
1225 wx port bug fixes and new files to get platform/wx building on trunk.
1227 Rubber-stamped by Maciej Stachowiak.
1229 * platform/wx/CursorWx.cpp:
1230 * platform/wx/FileSystemWx.cpp: Added.
1231 * platform/wx/FontCacheWx.cpp:
1232 * platform/wx/FontPlatformDataWx.cpp:
1233 * platform/wx/FontWx.cpp:
1234 * platform/wx/KeyboardEventWx.cpp:
1235 * platform/wx/LocalizedStringsWx.cpp: Added.
1236 * platform/wx/LoggingWx.cpp: Added.
1237 * platform/wx/RenderThemeWx.cpp:
1238 * platform/wx/ScrollViewWx.cpp:
1239 * platform/wx/SharedTimerWx.cpp:
1240 * platform/wx/StringWx.cpp:
1241 * platform/wx/ThreadingWx.cpp: Added.
1242 * platform/wx/WidgetWx.cpp:
1244 2007-11-05 Adele Peterson <adele@apple.com>
1248 Fix for <rdar://problem/5579999> Add poster attribute for video element
1250 * html/HTMLAttributeNames.in: Added poster attribute.
1252 * html/HTMLImageLoader.cpp: (WebCore::HTMLImageLoader::updateFromElement):
1253 Calls imageSourceAttributeName instead of having special cases for the different kinds of elements.
1254 * dom/Element.cpp: (WebCore::Element::imageSourceAttributeName): Added.
1256 * html/HTMLObjectElement.cpp: (WebCore::HTMLObjectElement::imageSourceAttributeName): Added.
1257 * html/HTMLObjectElement.h:
1259 * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::movieNetworkStateChanged):
1260 Calls updatePosterImage when the network state is empty and when the first frame has been loaded.
1261 * html/HTMLMediaElement.h: (WebCore::HTMLMediaElement::rendererIsNeeded): Made this inline. HTMLVideoElement now also implements this.
1263 * html/HTMLVideoElement.idl: Added case for poster attribute.
1264 * html/HTMLVideoElement.h: Added image loader and flag to keep track of whether or not the poster image should be shown.
1265 * html/HTMLVideoElement.cpp:
1266 (WebCore::HTMLVideoElement::HTMLVideoElement): Initialize m_imageLoader and m_shouldShowPosterImage.
1267 (WebCore::HTMLVideoElement::rendererIsNeeded): Calls HTMLElement::rendererIsNeeded since HTMLMediaElements have renderer by default.
1268 (WebCore::HTMLVideoElement::createRenderer): Create a RenderImage or RenderVideo depending on whether or not the poster image should be shown.
1269 (WebCore::HTMLVideoElement::attach): Set up image loader and RenderImage if necessary.
1270 (WebCore::HTMLVideoElement::detach): Delete image loader if its no longer needed.
1271 (WebCore::HTMLVideoElement::parseMappedAttribute): Added case to process poster attribute.
1272 (WebCore::HTMLVideoElement::poster): Added getter for poster attribute.
1273 (WebCore::HTMLVideoElement::setPoster): Added setter for poster attribute.
1274 (WebCore::HTMLVideoElement::isURLAttribute): Added.
1275 (WebCore::HTMLVideoElement::imageSourceAttributeName): Added.
1276 (WebCore::HTMLVideoElement::updatePosterImage): Added. Updates m_shouldShowPosterImage and if its changed, detaches and attaches so the renderer is correct.
1278 2007-11-05 Adam Roben <aroben@apple.com>
1280 Fix <rdar://5563572> SVG image support is turned off
1282 Turned on SVG images for all platforms.
1286 * WebCore.vcproj/WebCore.vcproj: Added SVGImage.{cpp,h}
1287 * loader/CachedImage.cpp:
1288 (WebCore::CachedImage::createImage): Removed platform checks for
1291 2007-11-05 Antti Koivisto <antti@apple.com>
1295 QTMovieView can generate callbacks during paint. This can lead to crashes.
1297 Delay callbacks so they get handled after painting is completed. No test case,
1298 I don't know how to reliably reproduce this.
1300 * platform/graphics/mac/MoviePrivateQTKit.mm:
1301 (WebCore::MoviePrivate::MoviePrivate):
1302 (WebCore::MoviePrivate::~MoviePrivate):
1303 (WebCore::MoviePrivate::paint):
1304 (-[WebCoreMovieObserver initWithCallback:WebCore::]):
1305 (-[WebCoreMovieObserver disconnect]):
1306 (-[WebCoreMovieObserver loadStateChanged:]):
1307 (-[WebCoreMovieObserver rateChanged:]):
1308 (-[WebCoreMovieObserver sizeChanged:]):
1309 (-[WebCoreMovieObserver timeChanged:]):
1310 (-[WebCoreMovieObserver volumeChanged:]):
1311 (-[WebCoreMovieObserver didEnd:]):
1312 (-[WebCoreMovieObserver setDelayCallbacks:]):
1314 2007-11-05 Antti Koivisto <antti@apple.com>
1318 Add some missing WebCore* prefixes to ObjC classes
1320 * platform/mac/FileChooserMac.mm:
1321 (WebCore::FileChooser::FileChooser):
1322 * platform/mac/SharedBufferMac.mm:
1323 (WebCore::SharedBuffer::createNSData):
1324 (WebCore::SharedBuffer::createCFData):
1325 * platform/mac/SharedTimerMac.cpp:
1326 (WebCore::setSharedTimerFireTime):
1328 2007-11-05 Ada Chan <adachan@apple.com>
1330 <rdar://problem/5579772> Regression: AltGr does not work
1331 We now store the system key event info in PlatforkKeyboardEvent().
1335 * platform/PlatformKeyboardEvent.h:
1336 (WebCore::PlatformKeyboardEvent::isSystemKey):
1337 * platform/win/KeyEventWin.cpp:
1338 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1340 2007-11-02 Tristan O'Tierney <tristan@apple.com>
1342 Reviewed by Darin Adler.
1344 * WebCore.xcodeproj/project.pbxproj:
1345 Set WindowFeatures.h as a Private header.
1347 * loader/FrameLoader.cpp:
1348 (WebCore::FrameLoader::createWindow):
1349 Revised to use a single createWindow function instead of
1350 two createWindow functions and one createModalDialog function.
1351 The logic for this is now addressed in WebKit in an effort
1352 to make this easier to follow.
1355 (WebCore::Chrome::createWindow):
1357 * page/ChromeClient.h:
1358 * page/ContextMenuController.cpp:
1359 (WebCore::openNewWindow):
1360 * platform/graphics/svg/SVGImageEmptyClients.h:
1361 (WebCore::SVGEmptyChromeClient::createWindow):
1362 Revised to take new additional windowFeatures parameter.
1364 2007-11-04 Geoffrey Garen <ggaren@apple.com>
1366 Reviewed by Darin Adler.
1368 http://bugs.webkit.org/show_bug.cgi?id=15835
1370 Small adaptations to new KJS::List class.
1372 * bindings/js/kjs_window.cpp:
1373 (KJS::WindowFunc::callAsFunction):
1374 (KJS::ScheduledAction::ScheduledAction):
1376 2007-11-05 Adam Roben <aroben@apple.com>
1378 Allow passing a base class pointer to COMPtr::copyRefTo
1382 * platform/win/COMPtr.h:
1384 2007-11-05 Dan Bernstein <mitz@apple.com>
1386 Reviewed by Oliver Hunt.
1388 - fix ASSERTION FAILED: !HashTranslator::equal(KeyTraits::emptyValue(), key) when a class attribute is all-whitespace
1390 Test: fast/dom/class-all-whitespace.html
1392 * dom/StyledElement.cpp:
1393 (WebCore::StyledElement::parseMappedAttribute): Check if there is any
1394 non-whitespace character in the class attribute.
1396 2007-11-05 Brady Eidson <beidson@apple.com>
1400 Add transaction blocking to the DatabaseAuthorizer in preparation for the new version
1401 of the sql storage API
1403 * storage/DatabaseAuthorizer.cpp:
1404 (WebCore::DatabaseAuthorizer::allowTransaction):
1405 * storage/DatabaseAuthorizer.h:
1407 2007-11-05 Mark Rowe <mrowe@apple.com>
1409 Reviewed by Alp Toker.
1411 Have getMIMETypeForExtension return a null string when no MIME type is known
1412 for the extension rather than returning "text/plain". This prevents plugin data
1413 being dumped into object elements when plugins are disabled.
1415 * platform/gtk/MIMETypeRegistryGtk.cpp:
1416 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1418 2007-11-04 Sam Weinig <sam@webkit.org>
1420 Rubber-stamped by Adam Roben.
1422 Rename SecurityOrigin::allowsAccessFrom to SecurityOrigin::canAccess to
1425 * bindings/js/kjs_window.cpp:
1426 (KJS::Window::isSafeScript):
1427 * platform/SecurityOrigin.cpp:
1428 (WebCore::SecurityOrigin::canAccess):
1429 * platform/SecurityOrigin.h:
1431 2007-11-04 Timothy Hatcher <timothy@apple.com>
1435 Bug 15834: There are many subtle bugs in the Styles pane of the Web Inspector
1436 http://bugs.webkit.org/show_bug.cgi?id=15834
1438 - Broke up DocumentPanel and added three SidebarPane sub-classes.
1439 - Fixed many Style pane bugs, including:
1440 * Poor handling of duplicate properties in the same rule. Some of this can't be
1441 fixed since we can't only get the "winning" value for duplicate properties.
1442 So we should only show one entry per unique property name.
1443 * Computed style does not show font shorthand sub-properties if 'font' was used.
1444 * Property priority was broken, the wrong properties were crossed out.
1445 * The 'border' shorthand shows null for the shorthand value.
1446 * Shorthands didn't show their priority (e.g. !important).
1447 * HSL and HTML hex colors didn't have preview swatch blocks.
1448 * Code refactoring, making it easier to reuse for console.log later.
1450 * page/inspector/DocumentPanel.js: Move sidebar pane code to three seperate
1451 classes in new files.
1452 * page/inspector/MetricsSidebarPane.js: Added.
1453 * page/inspector/Panel.js: Remove an InspectorController.log() call.
1454 * page/inspector/PropertiesSection.js: Add the section to the TreeOutline.
1455 So TreeElements can access properties on their section.
1456 * page/inspector/PropertiesSidebarPane.js: Added.
1457 * page/inspector/SidebarPane.js: Remove the explicit asignment of the
1458 onexpand and oncollapse to null. These were hiding prototypes.
1459 * page/inspector/StylesSidebarPane.js: Added.
1460 * page/inspector/inspector.html: Include the new script files.
1461 * page/inspector/treeoutline.js: If a null representedObject is passed
1462 in just use a empty object.
1464 2007-11-04 David D. Kilzer <ddkilzer@webkit.org>
1466 Fix build when spaces appear in the WebKit source path.
1468 Reviewed by Mark Rowe.
1470 * bindings/scripts/IDLParser.pm: Use safer open() method which lists
1471 arguments individually and prevents the need to work around spaces
1474 2007-11-04 Alp Toker <alp@atoker.com>
1476 Reviewed by Alexey Proskuryakov.
1478 Fix a crash when no clipboard text is available
1480 * platform/gtk/PasteboardGtk.cpp:
1481 (WebCore::Pasteboard::plainText):
1483 2007-11-03 Darin Adler <darin@apple.com>
1487 - WebCore part of http://bugs.webkit.org/show_bug.cgi?id=15821
1488 remove unused PCRE features for speed
1490 * page/Frame.cpp: (WebCore::Frame::matchLabelsAgainstElement):
1491 * page/mac/FrameMac.mm: (WebCore::Frame::matchLabelsAgainstElement):
1492 Remove use of "[[:digit:]]" syntax. This hasn't worked for some time.
1495 * platform/RegularExpression.h: Remove the unused cap function. We can
1496 add it back later if we find we need it.
1497 * platform/RegularExpression.cpp:
1498 (WebCore::RegularExpression::Private::compile): Update for JavaScriptCore
1499 regular expression entry point changes.
1500 (WebCore::RegularExpression::Private::~Private): Ditto.
1501 (WebCore::RegularExpression::match): Remove the code to set PCRE_NOTBOL.
1502 This means that regular expressions with metacharactesr like ^ in them
1503 won't work any more with non-whole-string searches, but we don't use
1504 any regular expressions like that.
1506 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1508 Update the link stubs to match the current build,
1509 and fix coding style issues.
1511 Reviewed by Mark Rowe.
1513 * platform/wx/TemporaryLinkStubs.cpp:
1514 (loadResourceIntoArray):
1515 (findNextSentenceFromIndex):
1516 (findSentenceBoundary):
1517 (Frame::dashboardRegionsChanged):
1518 (WebCore::historyContains):
1519 (CachedPage::close):
1520 (Editor::showStylesPanel):
1521 (EventHandler::passSubframeEventToSubframe):
1522 (EventHandler::passWheelEventToWidget):
1523 (WebCore::currentTextBreakLocaleID):
1525 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1527 wx <-> WebKit conversions for IntPoint, IntRect and FloatRect
1529 Reviewed by Mark Rowe.
1531 * platform/graphics/wx/FloatRectWx.cpp: Added.
1532 * platform/graphics/wx/IntPointWx.cpp: Added.
1533 * platform/graphics/wx/IntRectWx.cpp: Added.
1535 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1537 wx <-> WebKit data type conversions for Pen and Color.
1539 Reviewed by Darin Adler.
1541 * platform/graphics/wx: Added.
1542 * platform/graphics/wx/ColorWx.cpp: Added.
1543 * platform/graphics/wx/PenWx.cpp: Added.
1545 2007-11-03 Sam Weinig <sam@webkit.org>
1549 Remove dummy variable from ClassInfo reducing the size of the struct by 1 word.
1550 The variable had been kept around for binary compatibility, but since nothing
1551 else is there is no point in continuing to keep it around.
1553 * bindings/js/JSDOMExceptionConstructor.cpp:
1555 * bindings/js/JSHTMLInputElementBase.cpp:
1557 * bindings/js/JSNamedNodesCollection.cpp:
1559 * bindings/js/JSXMLHttpRequest.cpp:
1561 * bindings/js/JSXSLTProcessor.cpp:
1563 * bindings/js/kjs_css.cpp:
1565 * bindings/js/kjs_events.cpp:
1567 * bindings/js/kjs_navigator.cpp:
1569 * bindings/js/kjs_window.cpp:
1571 * bindings/scripts/CodeGeneratorJS.pm:
1573 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1575 Build fixes to get wx impls. building on trunk.
1577 Reviewed by Mark Rowe.
1579 * platform/wx/DragDataWx.cpp:
1580 (WebCore::DragData::containsFiles):
1581 (WebCore::DragData::asFilenames):
1582 * platform/wx/DragImageWx.cpp:
1583 (WebCore::scaleDragImage):
1584 * platform/wx/MimeTypeRegistryWx.cpp:
1585 (WebCore::MIMETypeRegistry::getMIMETypeForExtension):
1586 * platform/wx/MouseEventWx.cpp:
1587 (WebCore::PlatformMouseEvent::PlatformMouseEvent):
1588 * platform/wx/MouseWheelEventWx.cpp:
1589 * platform/wx/PasteboardWx.cpp:
1590 (WebCore::Pasteboard::writeImage):
1591 * platform/wx/WidgetWx.cpp:
1592 (WebCore::Widget::setCursor):
1594 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1596 Sort files(...); sections of Xcode project files.
1598 Rubber-stamped by Darin.
1600 * WebCore.xcodeproj/project.pbxproj:
1601 * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
1603 2007-11-03 Kevin Ollivier <kevino@theolliviers.com>
1605 Coding style fixes for platform/wx files.
1607 Reviewed by Mark Rowe.
1609 * platform/wx/ClipboardWx.cpp:
1610 * platform/wx/GlyphMapWx.cpp:
1611 * platform/wx/ScreenWx.cpp:
1613 2007-11-03 Alp Toker <alp@atoker.com>
1615 Reviewed by Mark Rowe.
1617 Implement platform scrollbar static width/height getters
1619 * platform/gtk/PlatformScrollBar.h:
1620 * platform/gtk/PlatformScrollBarGtk.cpp:
1622 (PlatformScrollbar::horizontalScrollbarHeight):
1624 2007-11-03 Alp Toker <alp@atoker.com>
1626 Reviewed by Mark Rowe.
1628 Cast function pointers to gpointer.
1630 * platform/gtk/PlatformScrollBarGtk.cpp:
1631 (PlatformScrollbar::~PlatformScrollbar):
1633 2007-11-03 Alp Toker <alp@atoker.com>
1635 Reviewed by Adam Roben.
1637 RenderThemeGtk implementation based on Mozilla's GTK+ style code
1639 There is still work needed to complete this feature.
1642 * platform/gtk/RenderThemeGtk.cpp:
1644 (WebCore::RenderThemeGtk::RenderThemeGtk):
1645 (WebCore::supportsFocus):
1646 (WebCore::RenderThemeGtk::supportsFocusRing):
1647 (WebCore::RenderThemeGtk::controlSupportsTints):
1648 (WebCore::RenderThemeGtk::baselinePosition):
1649 (WebCore::adjustMozStyle):
1650 (WebCore::setMozState):
1651 (WebCore::paintMozWidget):
1652 (WebCore::setButtonPadding):
1653 (WebCore::setToggleSize):
1654 (WebCore::RenderThemeGtk::setCheckboxSize):
1655 (WebCore::RenderThemeGtk::paintCheckbox):
1656 (WebCore::RenderThemeGtk::setRadioSize):
1657 (WebCore::RenderThemeGtk::paintRadio):
1658 (WebCore::RenderThemeGtk::adjustButtonStyle):
1659 (WebCore::RenderThemeGtk::paintButton):
1660 (WebCore::RenderThemeGtk::adjustMenuListStyle):
1661 (WebCore::RenderThemeGtk::paintMenuList):
1662 (WebCore::RenderThemeGtk::adjustTextFieldStyle):
1663 (WebCore::RenderThemeGtk::paintTextField):
1664 (WebCore::RenderThemeGtk::adjustSearchFieldResultsButtonStyle):
1665 (WebCore::RenderThemeGtk::paintSearchFieldResultsButton):
1666 (WebCore::RenderThemeGtk::adjustSearchFieldResultsDecorationStyle):
1667 (WebCore::RenderThemeGtk::paintSearchFieldResultsDecoration):
1668 (WebCore::RenderThemeGtk::adjustSearchFieldCancelButtonStyle):
1669 (WebCore::RenderThemeGtk::paintSearchFieldCancelButton):
1670 (WebCore::RenderThemeGtk::adjustSearchFieldStyle):
1671 (WebCore::RenderThemeGtk::paintSearchField):
1672 (WebCore::RenderThemeGtk::platformActiveSelectionBackgroundColor):
1673 (WebCore::RenderThemeGtk::platformInactiveSelectionBackgroundColor):
1674 (WebCore::RenderThemeGtk::platformActiveSelectionForegroundColor):
1675 (WebCore::RenderThemeGtk::platformInactiveSelectionForegroundColor):
1676 (WebCore::RenderThemeGtk::activeListBoxSelectionBackgroundColor):
1677 (WebCore::RenderThemeGtk::inactiveListBoxSelectionBackgroundColor):
1678 (WebCore::RenderThemeGtk::activeListBoxSelectionForegroundColor):
1679 (WebCore::RenderThemeGtk::inactiveListBoxSelectionForegroundColor):
1680 (WebCore::RenderThemeGtk::caretBlinkFrequency):
1681 (WebCore::RenderThemeGtk::systemFont):
1682 (WebCore::gtkStyleSetCallback):
1683 (WebCore::RenderThemeGtk::gtkContainer):
1684 (WebCore::RenderThemeGtk::gtkEntry):
1685 (WebCore::RenderThemeGtk::gtkTreeView):
1686 * platform/gtk/RenderThemeGtk.h:
1687 * platform/gtk/gtk2drawing.c: Added.
1688 (moz_gtk_enable_style_props):
1689 (ensure_window_widget):
1690 (setup_widget_prototype):
1691 (ensure_button_widget):
1692 (ensure_checkbox_widget):
1693 (ensure_radiobutton_widget):
1694 (ensure_scrollbar_widget):
1695 (ensure_spin_widget):
1696 (ensure_scale_widget):
1697 (ensure_entry_widget):
1698 (ensure_option_menu_widget):
1699 (ensure_arrow_widget):
1700 (ensure_handlebox_widget):
1701 (ensure_toolbar_widget):
1702 (ensure_tooltip_widget):
1703 (ensure_tab_widget):
1704 (ensure_progress_widget):
1705 (ensure_frame_widget):
1706 (ensure_menu_bar_widget):
1707 (ensure_menu_bar_item_widget):
1708 (ensure_menu_popup_widget):
1709 (ensure_menu_item_widget):
1710 (ensure_check_menu_item_widget):
1712 (TSOffsetStyleGCArray):
1714 (moz_gtk_button_paint):
1716 (moz_gtk_checkbox_get_metrics):
1717 (moz_gtk_radio_get_metrics):
1718 (moz_gtk_checkbox_get_focus):
1719 (moz_gtk_radio_get_focus):
1720 (moz_gtk_button_get_focus):
1721 (moz_gtk_option_menu_get_metrics):
1722 (moz_gtk_toggle_paint):
1723 (calculate_arrow_dimensions):
1724 (moz_gtk_scrollbar_button_paint):
1725 (moz_gtk_scrollbar_trough_paint):
1726 (moz_gtk_scrollbar_thumb_paint):
1727 (moz_gtk_spin_paint):
1728 (moz_gtk_scale_paint):
1729 (moz_gtk_scale_thumb_paint):
1730 (moz_gtk_gripper_paint):
1731 (moz_gtk_entry_paint):
1732 (moz_gtk_option_menu_paint):
1733 (moz_gtk_dropdown_arrow_paint):
1734 (moz_gtk_container_paint):
1735 (moz_gtk_toggle_label_paint):
1736 (moz_gtk_toolbar_paint):
1737 (moz_gtk_tooltip_paint):
1738 (moz_gtk_frame_paint):
1739 (moz_gtk_progressbar_paint):
1740 (moz_gtk_progress_chunk_paint):
1741 (moz_gtk_tab_paint):
1742 (moz_gtk_tabpanels_paint):
1743 (moz_gtk_menu_bar_paint):
1744 (moz_gtk_menu_popup_paint):
1745 (moz_gtk_menu_item_paint):
1746 (moz_gtk_check_menu_item_paint):
1747 (moz_gtk_window_paint):
1748 (moz_gtk_get_widget_border):
1749 (moz_gtk_get_dropdown_arrow_size):
1750 (moz_gtk_get_scalethumb_metrics):
1751 (moz_gtk_get_scrollbar_metrics):
1752 (moz_gtk_widget_paint):
1753 (moz_gtk_get_scrollbar_widget):
1755 * platform/gtk/gtkdrawing.h: Added.
1757 2007-11-03 Alp Toker <alp@atoker.com>
1759 Reviewed by Mark Rowe.
1761 Do not allow scrollbars to handle wheel events
1763 We bubble the wheel event up so the parent can handle it instead.
1765 * platform/gtk/PlatformScrollBarGtk.cpp:
1766 (gtkScrollEventCallback):
1767 (PlatformScrollbar::PlatformScrollbar):
1768 (PlatformScrollbar::~PlatformScrollbar):
1770 2007-11-03 Alp Toker <alp@atoker.com>
1772 Reviewed by Mark Rowe.
1774 Frame scrolling and invalidation fixes
1776 Make upward scroll events have a positive delta to match other ports.
1778 Fix the invalidation rect offset for frames so that scrolling works properly.
1780 Avoid allocating negative sizes to widgets to avoid GTK+ warnings.
1782 Allow tabbing to all widgets and links.
1784 Fix event returns, improving the focus situation and correcting scroll wheel
1787 * page/gtk/EventHandlerGtk.cpp:
1788 (WebCore::EventHandler::tabsToAllControls):
1789 (WebCore::EventHandler::passWheelEventToWidget):
1790 * platform/gtk/ScrollViewGtk.cpp:
1791 (WebCore::ScrollViewScrollbar::geometryChanged):
1792 (WebCore::ScrollView::updateContents):
1793 (WebCore::ScrollView::update):
1794 (WebCore::ScrollView::wheelEvent):
1795 (WebCore::ScrollView::updateScrollbars):
1796 * platform/gtk/WheelEventGtk.cpp:
1797 (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1799 2007-11-03 David D. Kilzer <ddkilzer@webkit.org>
1801 LGPL'ed files contain incorrect FSF address
1802 <http://bugs.webkit.org/show_bug.cgi?id=14885>
1804 Reviewed by NOBODY (follow-up fix).
1806 * bindings/js/JSSVGTransformListCustom.cpp:
1807 * ksvg2/svg/SVGException.idl:
1808 * ksvg2/svg/SVGTextPathElement.cpp:
1809 * ksvg2/svg/SVGTextPathElement.h:
1810 * ksvg2/svg/SVGViewSpec.cpp:
1811 * ksvg2/svg/SVGViewSpec.h:
1812 * platform/mac/FontCustomPlatformData.cpp:
1813 * platform/mac/FontCustomPlatformData.h:
1814 * platform/mac/FontPlatformDataMac.mm:
1815 * platform/win/FontCustomPlatformData.cpp:
1816 * platform/win/FontCustomPlatformData.h:
1817 * rendering/RenderSVGRoot.cpp:
1818 * rendering/RenderSVGRoot.h:
1819 * rendering/RenderSVGTextPath.cpp:
1820 * rendering/RenderSVGTextPath.h:
1821 * rendering/RenderSVGTransformableContainer.h:
1822 * rendering/RenderSVGViewportContainer.cpp:
1823 * rendering/RenderSVGViewportContainer.h:
1824 * rendering/SVGCharacterLayoutInfo.cpp:
1825 * rendering/SVGCharacterLayoutInfo.h:
1826 * rendering/SVGRenderSupport.cpp:
1827 * rendering/SVGRenderSupport.h:
1829 2007-11-02 Antti Koivisto <antti@apple.com>
1833 Add video width/height DOM and content attributes from latest HTML5 draft.
1835 Test: media/video-width-height.html
1837 * html/HTMLVideoElement.cpp:
1838 (WebCore::HTMLVideoElement::parseMappedAttribute):
1839 (WebCore::HTMLVideoElement::width):
1840 (WebCore::HTMLVideoElement::setWidth):
1841 (WebCore::HTMLVideoElement::height):
1842 (WebCore::HTMLVideoElement::setHeight):
1843 * html/HTMLVideoElement.h:
1844 * html/HTMLVideoElement.idl:
1846 2007-11-02 Darin Adler <darin@apple.com>
1850 * DerivedSources.make: Remove a few explicit filenames from some rules by using
1851 make variables a little more.
1852 * WebCore.LP64.exp: Fix typo, grammar.
1854 2007-11-02 Darin Adler <darin@apple.com>
1858 - use the new HashMap::take function where appropriate
1860 * bindings/js/kjs_binding.cpp:
1861 (KJS::addWrapper): Made an inline rather than a macro; inlines good, macros bad.
1862 (KJS::removeWrapper): Ditto.
1863 (KJS::removeWrappers): Ditto.
1864 (KJS::ScriptInterpreter::putDOMObject): Use the inline instead of the macro.
1865 (KJS::ScriptInterpreter::forgetDOMObject): Ditto. This involves using take instead
1866 of remove -- in theory ever so slightly less efficient, but I think it's fine.
1867 (KJS::ScriptInterpreter::forgetDOMNodeForDocument): Ditto.
1868 (KJS::ScriptInterpreter::putDOMNodeForDocument): Use the inline instead of the macro.
1869 (KJS::ScriptInterpreter::forgetAllDOMNodesForDocument): Use take instead of find/remove.
1870 (KJS::ScriptInterpreter::updateDOMNodeDocument): Use the inlines instead of the macros.
1872 * bindings/js/kjs_window.cpp: (KJS::Window::clearTimeout): Use take instead of find/remove.
1873 * bridge/mac/AXObjectCacheMac.mm: (WebCore::AXObjectCache::remove): Ditto.
1874 * page/AnimationController.cpp: (WebCore::AnimationControllerPrivate::clear): Ditto.
1875 * rendering/RenderBlock.cpp:
1876 (WebCore::RenderBlock::~RenderBlock): Ditto.
1877 (WebCore::RenderBlock::setDesiredColumnCountAndWidth): Ditto.
1878 * rendering/RootInlineBox.cpp: Ditto.(WebCore::RootInlineBox::detachEllipsisBox): Ditto.
1880 2007-11-02 Antti Koivisto <antti@apple.com>
1884 Enable video composition.
1887 * platform/graphics/mac/MoviePrivateQTKit.mm:
1888 (WebCore::MoviePrivate::createQTMovieView):
1889 * platform/mac/WebCoreSystemInterface.h:
1890 * platform/mac/WebCoreSystemInterface.mm:
1892 2007-11-02 Darin Adler <darin@apple.com>
1896 - fix http://bugs.webkit.org/show_bug.cgi?id=15806
1897 <rdar://problem/5561626> ASSERT(element->isRadioButton()) fires destroying form elements
1899 Test: fast/forms/remove-radio-button-assert.html
1901 * html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::removeFromForm):
1902 Added protected function to be used by derived classes that need to do the same sort
1903 of removal from form that's automatically done by the base class in certain circumstances.
1904 * html/HTMLGenericFormElement.h: Added removeFromForm.
1906 * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::~HTMLInputElement):
1907 Call removeFromForm here so the element is removed before we destroy the HTMLInputElement
1908 part of this object. By the time we get to the base class's destructor it's too late.
1909 The problem is specific to radio buttons so we don't have to worry about other classes
1910 derived from HTMLGenericFormElement.
1912 2007-11-02 Darin Adler <darin@apple.com>
1916 - speculative fix for http://bugs.webkit.org/show_bug.cgi?id=15805
1917 <rdar://problem/5510779> crashes in isLoadingMultipartContent
1919 * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::isLoadingMultipartContent):
1920 Instead of asserting the frame loader is non-0, return false if it is 0.
1922 2007-11-02 Darin Adler <darin@apple.com>
1926 - fix <rdar://problem/5530185> WebKit does not show <object> fallback content when both
1927 URL and MIME type is omitted
1929 Already covered by existing tests (that had incorrect results).
1931 * loader/FrameLoader.cpp: (WebCore::FrameLoader::requestObject): Return false to indicate
1932 failure when both URL and MIME type are empty. The old code would not attempt a load, but
1933 it would indicate success.
1935 * rendering/RenderPartObject.cpp: (WebCore::RenderPartObject::updateWidget): Remove
1936 non-helpful early exit for the case where there is no URL and no type. Returning early
1937 prevents the fallback code from running.
1939 2007-11-02 Alp Toker <alp@atoker.com>
1943 Include Cairo headers properly
1945 * platform/graphics/AffineTransform.h:
1946 * platform/graphics/ImageBuffer.h:
1947 * platform/graphics/cairo/AffineTransformCairo.cpp:
1948 * platform/gtk/FontPlatformDataGtk.cpp:
1950 2007-11-01 Oliver Hunt <oliver@apple.com>
1954 Make sure we send the correct events for Capslock, Shift, Ctrl, Alt and the Windows key
1956 * platform/win/KeyEventWin.cpp:
1957 (WebCore::keyIdentifierForWindowsKeyCode):
1958 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
1960 2007-11-01 Geoffrey Garen <ggaren@apple.com>
1962 Reviewed by Maciej Stachowiak.
1964 In preparation for making List a simple stack-allocated Vector:
1966 Removed all instances of List copying, assignment, and/or storage.
1968 Layout tests and JS tests pass.
1970 * bindings/js/kjs_window.cpp:
1971 (KJS::WindowFunc::callAsFunction): Stores a Vector of protected
1972 JSValue*'s instead of a List now. Converts to List on the fly when
1973 calling the timer function. This is slightly less efficient, but the
1974 common case is 0-2 arguments, so it's no biggie.
1976 (HTML iBench shows no regression. PLT does not use JS timers.)
1978 (KJS::ScheduledAction::execute): Uses the more efficient and non-copying
1980 (KJS::ScheduledAction::ScheduledAction): ditto
1982 * bindings/objc/WebScriptObject.mm:
1983 (getListFromNSArray): Takes a List out parameter now, to avoid copying.
1985 2007-11-01 Oliver Hunt <oliver@apple.com>
1989 Correct event behaviour on certain control keys
1991 Make sure we send the correct keyDown and keyUp events for the
1992 control keys CapsLock, Shift, Ctrl, Alt, and Meta/Command, and
1993 uses Windows key codes for the event keyCode.
1996 * page/EventHandler.cpp:
1997 (WebCore::EventHandler::keyEvent):
1998 * platform/PlatformKeyboardEvent.h:
1999 * platform/gtk/KeyEventGtk.cpp:
2000 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2001 * platform/mac/KeyEventMac.mm:
2002 (WebCore::keyIdentifierForKeyEvent):
2003 (WebCore::WindowsKeyCodeForKeyEvent):
2004 (WebCore::isKeyUpEvent):
2005 (WebCore::textFromEvent):
2006 (WebCore::unmodifiedTextFromEvent):
2007 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2008 * platform/win/KeyEventWin.cpp:
2009 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2010 * platform/wx/KeyEventWin.cpp:
2011 (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2013 2007-11-01 Timothy Hatcher <timothy@apple.com>
2017 * page/inspector/inspector.css: Use the white disclosure triangles
2018 when a parent DOM element is sepected.
2020 2007-11-01 Justin Garcia <justin.garcia@apple.com>
2022 Reviewed by Oliver Hunt.
2024 <rdar://problem/5195056> Huge plain text pastes are slow, time spent in ApplyStyleCommand::doApply
2026 * editing/ReplaceSelectionCommand.cpp:
2027 (WebCore::ReplaceSelectionCommand::doApply): No need to match style when pasting
2028 into a plaintext-only region, since when we build the fragment to insert from
2029 plain text, we don't put any style information on it, so it will automatically
2030 match style with no intervention.
2031 * editing/markup.cpp:
2032 (WebCore::createFragmentFromText): Place paragraphs into clones of the
2033 block being inserted into, instead of default paragraph elements,
2034 so that when inserted content will match the surrounding paragraph style.
2035 This was broken before, but I haven't added a layout test yet because
2036 there currently isn't a way to get only plain text onto the pasteboard
2039 2007-11-01 Sam Weinig <sam@webkit.org>
2041 Reviewed by Adam Roben.
2043 Add a releaseRef method to COMPtr which matches the behavior
2044 of the method by the same name in PassRefPtr. This is in
2045 preparation of adding autogenerated COM DOM bindings.
2047 * platform/win/COMPtr.h:
2048 (COMPtr::releaseRef):
2050 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2052 wx impl. for DragController and EventHandler interfaces.
2054 Reviewed by Adam Roben.
2057 * page/wx/DragControllerWx.cpp: Added.
2058 (WebCore::DragController::isCopyKeyDown):
2059 (WebCore::DragController::dragOperation):
2060 (WebCore::DragController::maxDragImageSize):
2061 * page/wx/EventHandlerWx.cpp: Added.
2062 (WebCore::EventHandler::passMousePressEventToSubframe):
2063 (WebCore::EventHandler::passMouseMoveEventToSubframe):
2064 (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2065 (WebCore::EventHandler::passMousePressEventToScrollbar):
2066 (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
2067 (WebCore::EventHandler::focusDocumentView):
2068 (WebCore::EventHandler::eventActivatedView):
2069 (WebCore::EventHandler::createDraggingClipboard):
2071 2007-11-01 Kevin Ollivier <kevino@theolliviers.com>
2073 Adding files for wx impl. of editing interfaces.
2075 Reviewed by Adam Roben.
2077 * editing/wx: Added.
2078 * editing/wx/EditorWx.cpp: Added.
2079 (WebCore::Editor::newGeneralClipboard):
2081 2007-11-01 Sam Weinig <sam@webkit.org>
2083 Reviewed by Adam Roben.
2085 Make implicit conversions from LPCSTRs and BSTRs to WebCore string
2086 types possible in preparation of adding autogenerated COM DOM bindings.
2088 * platform/AtomicString.cpp:
2089 (WebCore::AtomicString::add):
2090 * platform/AtomicString.h:
2091 (WebCore::AtomicString::AtomicString):
2092 * platform/PlatformString.h:
2093 * platform/win/BString.cpp:
2094 (WebCore::BString::BString):
2095 * platform/win/BString.h:
2097 2007-11-01 Brady Eidson <beidson@apple.com>
2101 Renamed a flag inside of SQLiteTransaction and added an accessor (for future work)
2103 * platform/sql/SQLiteTransaction.cpp:
2104 (WebCore::SQLiteTransaction::SQLiteTransaction):
2105 (WebCore::SQLiteTransaction::~SQLiteTransaction):
2106 (WebCore::SQLiteTransaction::begin):
2107 (WebCore::SQLiteTransaction::commit):
2108 (WebCore::SQLiteTransaction::rollback):
2109 * platform/sql/SQLiteTransaction.h:
2110 (WebCore::SQLiteTransaction::inProgress):
2112 2007-11-01 Adam Roben <aroben@apple.com>
2114 Remove all duplicate xcopy commands from WebCore's post-build step
2116 Also add the /d option to the copy of platform/sql.
2118 Rubberstamped by Sam.
2120 * WebCore.vcproj/WebCore.vcproj:
2122 2007-11-01 Adele Peterson <adele@apple.com>
2126 Add support for the animation of the -webkit-border-raduis properties.
2128 * page/AnimationController.cpp:
2129 (WebCore::blendFunc): Added for IntSize.
2130 (WebCore::ImplicitAnimation::animate): Added cases for border radius properties.
2132 2007-11-01 Alp Toker <alp@atoker.com>
2134 Reviewed by Mitz Pettel.
2136 Fix an unbalanced save/restore.
2138 * platform/graphics/cg/ImageCG.cpp:
2139 (WebCore::BitmapImage::draw):
2141 2007-11-01 David Hyatt <hyatt@apple.com>
2143 Add support for the animation of the visibility property.
2145 Reviewed by oliver, aroben
2147 * page/AnimationController.cpp:
2148 (WebCore::blendFunc):
2149 (WebCore::ImplicitAnimation::animate):
2151 2007-11-01 Kevin McCullough <kmccullough@apple.com>
2155 - Made COMPtr be able to be used by certain other templates,
2156 specifically HashSet.
2158 * platform/win/COMPtr.h:
2161 2007-11-01 Dan Bernstein <mitz@apple.com>
2163 Reviewed by Dave Hyatt.
2165 - fix http://bugs.webkit.org/show_bug.cgi?id=15015
2166 <rdar://problem/5420308> Most of www.aol.com redraws unnecessarily when headline/photo section changes
2168 Test: fast/repaint/overflow-clip-subtree-layout.html
2170 This patch does not address the bigger issue of doing a full relayout
2171 of inline flows containing floats, but it addresses the problem on
2172 aol.com, where the changes that trigger layout are confined to an
2173 overflow area inside the float.
2175 * page/FrameView.cpp:
2176 (WebCore::FrameView::scheduleRelayoutOfSubtree): If the new and old
2177 layout roots are different but one descends from the other, make (or
2178 keep) the ancestor as the layout root.
2179 * rendering/RenderObject.cpp:
2180 (WebCore::objectIsRelayoutBoundary): Made boxes with overflow
2181 clipping and non-auto width and height relayout boundaries.
2183 2007-11-01 Alexey Proskuryakov <ap@webkit.org>
2185 Reviewed by Mark Rowe.
2187 Fixed line endings that got confused in this file somehow.
2189 * platform/network/ResourceResponse.cpp:
2190 (WebCore::ResourceResponse::isAttachment):
2192 2007-11-01 Peter Kasting <zerodpx@gmail.com>
2194 Reviewed by Dave Hyatt.
2196 http://bugs.webkit.org/show_bug.cgi?id=15778
2197 Malformed GIFs should not result in memory corruption.
2199 * platform/image-decoders/gif/GIFImageDecoder.cpp:
2200 (WebCore::GIFImageDecoder::haveDecodedRow):
2201 * platform/image-decoders/gif/GIFImageReader.cpp:
2202 (GIFImageReader::output_row):
2203 (GIFImageReader::read):
2205 2007-10-31 Adam Roben <aroben@apple.com>
2207 Fix a crash when parsing a cubic-bezier function
2211 Test: fast/css/parse-timing-function-crash.html
2213 * WebCore.vcproj/WebCore.vcproj:
2214 * css/CSSParser.cpp:
2215 (WebCore::CSSParser::parseTimingFunctionValue): Don't walk off the end
2218 2007-10-31 David Hyatt <hyatt@apple.com>
2220 Fix a merge error from when I applied my patch to ToT. A couple of lines should be part of an if.
2222 * rendering/RenderStyle.cpp:
2223 (WebCore::RenderStyle::adjustTransitions):
2225 2007-10-31 Anders Carlsson <andersca@apple.com>
2229 Add new SQL callback interfaces and JS implementations of them.
2231 * DerivedSources.make:
2232 * WebCore.xcodeproj/project.pbxproj:
2233 * bindings/js/JSCustomSQLStatementCallback.cpp: Added.
2234 (WebCore::JSCustomSQLStatementCallback::JSCustomSQLStatementCallback):
2235 (WebCore::JSCustomSQLStatementCallback::handleEvent):
2236 * bindings/js/JSCustomSQLStatementCallback.h: Added.
2237 * bindings/js/JSCustomSQLStatementErrorCallback.cpp: Added.
2238 (WebCore::JSCustomSQLStatementErrorCallback::JSCustomSQLStatementErrorCallback):
2239 (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
2240 * bindings/js/JSCustomSQLStatementErrorCallback.h: Added.
2241 * bindings/js/JSCustomSQLTransactionCallback.cpp: Added.
2242 (WebCore::JSCustomSQLTransactionCallback::JSCustomSQLTransactionCallback):
2243 (WebCore::JSCustomSQLTransactionCallback::handleEvent):
2244 * bindings/js/JSCustomSQLTransactionCallback.h: Added.
2245 * bindings/js/JSCustomSQLTransactionErrorCallback.cpp: Added.
2246 (WebCore::JSCustomSQLTransactionErrorCallback::JSCustomSQLTransactionErrorCallback):
2247 (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
2248 * bindings/js/JSCustomSQLTransactionErrorCallback.h: Added.
2249 * storage/JSCustomSQLStatementCallback.h: Added.
2250 * storage/JSCustomSQLStatementErrorCallback.h: Added.
2251 * storage/JSCustomSQLTransactionCallback.h: Added.
2252 * storage/JSCustomSQLTransactionErrorCallback.h: Added.
2253 * storage/SQLStatementCallback.h: Added.
2254 (WebCore::SQLStatementCallback::~SQLStatementCallback):
2255 * storage/SQLStatementCallback.idl: Added.
2256 * storage/SQLStatementErrorCallback.h: Added.
2257 (WebCore::SQLStatementErrorCallback::~SQLStatementErrorCallback):
2258 * storage/SQLStatementErrorCallback.idl: Added.
2259 * storage/SQLTransaction.h: Added.
2260 * storage/SQLTransaction.idl: Added.
2261 * storage/SQLTransactionCallback.h: Added.
2262 (WebCore::SQLTransactionCallback::~SQLTransactionCallback):
2263 * storage/SQLTransactionCallback.idl: Added.
2264 * storage/SQLTransactionErrorCallback.h: Added.
2265 (WebCore::SQLTransactionErrorCallback::~SQLTransactionErrorCallback):
2266 * storage/SQLTransactionErrorCallback.idl: Added.
2268 2007-10-31 Justin Garcia <justin.garcia@apple.com>
2270 Reviewed by Dave Harrison.
2272 <rdar://problem/5569741> Pasting content with a line break into a list can remove the list
2274 * editing/htmlediting.cpp:
2275 (WebCore::enclosingEmptyListItem): A single list item can contain multiple
2276 paragraphs, so if the incoming VisiblePosition is in an empty paragraph in a
2277 list item, that list item isn't necessarily empty.
2279 2007-10-31 David Hyatt <hyatt@apple.com>
2281 Disable style sharing for animating styles.
2283 Reviewed by mitzpettel
2285 * css/CSSStyleSelector.cpp:
2286 (WebCore::CSSStyleSelector::canShareStyleWithElement):
2288 2007-10-31 Dan Bernstein <mitz@apple.com>
2290 Reviewed by Darin Adler.
2292 - fix intermediate length calculation
2294 * rendering/Length.h:
2295 (WebCore::Length::blend):
2297 2007-10-31 Anders Carlsson <andersca@apple.com>
2301 Add new SQLError implementation.
2303 * DerivedSources.make:
2304 * WebCore.vcproj/WebCore.vcproj:
2305 * WebCore.xcodeproj/project.pbxproj:
2306 * storage/SQLError.h: Added.
2307 (WebCore::SQLError::SQLError):
2308 (WebCore::SQLError::code):
2309 (WebCore::SQLError::message):
2310 * storage/SQLError.idl: Added.
2312 2007-10-31 David Hyatt <hyatt@apple.com>
2314 Change the initial value of transition-property to all. Change the initial value of
2315 transition-duration to 0.
2319 * rendering/RenderStyle.h:
2320 (WebCore::RenderStyle::initialTransitionDuration):
2321 (WebCore::RenderStyle::initialTransitionProperty):
2323 2007-10-31 Alp Toker <alp@atoker.com>
2325 Reviewed by Mark Rowe.
2327 The new Color must be marked valid.
2329 * platform/graphics/gtk/ColorGtk.cpp:
2331 2007-10-31 Simon Hausmann <hausmann@kde.org>
2335 Build fix for non-Qt builds.
2337 * dom/XMLTokenizer.cpp:
2338 (WebCore::XMLTokenizer::XMLTokenizer):
2340 2007-10-31 Simon Hausmann <hausmann@kde.org>
2344 Fix dependency path to header files of the public API of the Qt port.
2348 2007-10-31 Holger Freyther <zecke@selfish.org>
2352 * QXmlStreamNamespaceDeclaration doesn't have the constructor we
2353 want to use for Qt4.3. Reenable the old code path which is likely
2354 to be dead as I have not checked if m_prefixToNamespaceMap is actually
2356 * Guard the entity resolver with the QT_VERSION as well.
2357 * Partially reverts 369506279abdaa863e15efed649ca19e062f2c30 and
2358 d2b54d0fc1b07a2480f4f7a1417abd7a636b0107 for Qt4.3.
2360 * dom/XMLTokenizer.cpp:
2361 (WebCore::XMLTokenizer::XMLTokenizer):
2362 * dom/XMLTokenizer.h:
2364 2007-10-31 Holger Freyther <zecke@selfish.org>
2366 Reviewed by Lars Knoll <lars@trolltech.com>.
2368 * QMimeData::removeData will be new in Qt4.4, don't use it for Qt4.3
2369 * Provide a bad fallback implementation to filter the format list.
2371 * platform/qt/ClipboardQt.cpp:
2372 (WebCore::ClipboardQt::clearData):
2374 2007-10-31 Lars Knoll <lars@trolltech.com>
2378 add an entitiy resolver to QXmlStream.
2379 Fixes fast/parser/entities-in-attributes.xhtml.
2381 * dom/XMLTokenizer.cpp:
2382 (WebCore::EntityResolver::resolveUndeclaredEntity):
2383 (WebCore::XMLTokenizer::XMLTokenizer):
2384 (WebCore::XMLTokenizer::~XMLTokenizer):
2386 2007-10-31 Lars Knoll <lars@trolltech.com>
2390 Fixes in the XML tokenizer when using QXmlStream.
2392 Use new functionality of QXmlStream in Qt 4.4 to simplify
2393 the code (but keep the old code for now to still support Qt 4.3).
2395 Add proper support for namespace handling when parsing into
2396 a document fragment.
2398 * dom/XMLTokenizer.cpp:
2399 (WebCore::XMLTokenizer::XMLTokenizer):
2400 (WebCore::XMLTokenizer::write):
2401 (WebCore::XMLTokenizer::startElementNs):
2403 * dom/XMLTokenizer.h:
2405 2007-10-31 Lars Knoll <lars@trolltech.com>
2409 add support for dragging images.
2411 * platform/DragImage.h:
2412 * platform/qt/ClipboardQt.cpp:
2413 (WebCore::ClipboardQt::clearData):
2414 (WebCore::ClipboardQt::setDragImage):
2415 (WebCore::ClipboardQt::setDragImageElement):
2416 (WebCore::ClipboardQt::createDragImage):
2417 (WebCore::getCachedImage):
2418 (WebCore::ClipboardQt::declareAndWriteDragImage):
2419 * platform/qt/ClipboardQt.h:
2421 2007-10-31 Lars Knoll <lars@trolltech.com>
2425 fix most of the issues I found with Clipboard and DnD.
2427 * editing/qt/EditorQt.cpp:
2428 * platform/qt/ClipboardQt.cpp:
2429 (WebCore::ClipboardQt::ClipboardQt):
2430 (WebCore::ClipboardQt::~ClipboardQt):
2431 (WebCore::ClipboardQt::clearData):
2432 (WebCore::ClipboardQt::clearAllData):
2433 (WebCore::ClipboardQt::getData):
2434 (WebCore::ClipboardQt::setData):
2435 (WebCore::ClipboardQt::types):
2436 (WebCore::ClipboardQt::setDragImage):
2437 (WebCore::ClipboardQt::setDragImageElement):
2438 (WebCore::ClipboardQt::declareAndWriteDragImage):
2439 (WebCore::ClipboardQt::writeURL):
2440 (WebCore::ClipboardQt::writeRange):
2441 (WebCore::ClipboardQt::hasData):
2442 * platform/qt/ClipboardQt.h:
2443 * platform/qt/DragDataQt.cpp:
2444 (WebCore::DragData::asURL):
2446 2007-10-30 Mark Rowe <mrowe@apple.com>
2448 Fix the Gtk and Qt builds by stubbing out PlatformKeyboardEvent::currentCapsLockState.
2450 * platform/gtk/KeyEventGtk.cpp:
2451 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2452 * platform/qt/PlatformKeyboardEventQt.cpp:
2453 (WebCore::PlatformKeyboardEvent::currentCapsLockState):
2455 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2459 http://bugs.webkit.org/show_bug.cgi?id=15762
2460 XSLStylesheet loads subresources from a wrong URL
2462 Covered by corrected existing tests.
2464 * xml/XSLStyleSheet.cpp:
2465 (WebCore::XSLStyleSheet::parseString): Pass stylesheet URL, not
2468 2007-10-31 Alexey Proskuryakov <ap@webkit.org>
2472 http://bugs.webkit.org/show_bug.cgi?id=10818
2473 String::append does 2 full copies instead of 1 (or zero!)
2475 No change in functionality, thus no test.
2477 * platform/String.cpp:
2478 (WebCore::String::append): Rewrote to copy once. Also removed an ancient
2479 FIXME that doesn't seem to make any sense. Note that append() behavior doesn't
2480 match documented String behavior ("modifications to one instance will
2481 also modify all others"), but there are a lot of methods that don't.
2483 2007-10-31 Adam Roben <aroben@apple.com>
2487 * WebCore.vcproj/WebCore.vcproj: Add [JS]ProgressEvent.{cpp,h} files.
2489 2007-10-30 Adam Roben <aroben@apple.com>
2493 I'm not completely sure why these const issues weren't caught by GCC,
2494 but MSVC was certainly not happy with them.
2496 * editing/IndentOutdentCommand.cpp:
2497 (WebCore::isIndentBlockquote):
2498 * editing/markup.cpp:
2499 (WebCore::styleFromMatchedRulesAndInlineDecl):
2501 2007-10-30 David Hyatt <hyatt@apple.com>
2503 transition-property was defaulting to all when it should default to none.
2505 It was taking a string type. I figured out how to make it take an ident instead, so you can write:
2507 transition-property: opacity
2511 transition-property: "opacity"
2513 Transition layers also weren't properly repeating patterns the way they were supposed to. I fixed that.
2515 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.
2520 * css/CSSParser.cpp:
2521 (WebCore::CSSParser::parseTransitionProperty):
2522 * css/CSSStyleSelector.cpp:
2523 (WebCore::CSSStyleSelector::adjustRenderStyle):
2524 * page/AnimationController.cpp:
2525 (WebCore::ImplicitAnimation::animate):
2526 * rendering/RenderStyle.cpp:
2527 (WebCore::RenderStyle::adjustTransitions):
2528 * rendering/RenderStyle.h:
2529 (WebCore::RenderStyle::initialTransitionProperty):
2531 2007-10-30 Antti Koivisto <antti@apple.com>
2537 * platform/graphics/mac/MoviePrivateQTKit.mm:
2538 (WebCore::MoviePrivate::getSupportedTypes):
2540 2007-10-30 Dan Bernstein <mitz@apple.com>
2542 Reviewed by Stephanie Lewis.
2544 - fix <rdar://problem/5547237> REGRESSION (304-ToT): Repro font-related crash in fontdatawin.cpp Line 93 (many sites)
2546 * platform/win/FontDataWin.cpp:
2547 (WebCore::FontData::platformInit): Handle the case where the font has no
2548 glyphs on page zero.
2550 2007-10-30 David Hyatt <hyatt@apple.com>
2552 Make sure CSS transforms can be animated using the CSS transition property.
2554 Reviewed by Dan and Antti
2556 * css/CSSStyleSelector.cpp:
2557 (WebCore::CSSStyleSelector::applyProperty):
2558 * page/AnimationController.cpp:
2559 (WebCore::blendFunc):
2560 (WebCore::ImplicitAnimation::animate):
2561 * rendering/Length.h:
2562 (WebCore::Length::blend):
2563 * rendering/RenderStyle.cpp:
2564 (WebCore::StyleTransformData::operator==):
2565 (WebCore::TransformOperations::operator==):
2566 (WebCore::blendLengths):
2567 (WebCore::ScaleTransformOperation::blend):
2568 (WebCore::RotateTransformOperation::blend):
2569 (WebCore::SkewTransformOperation::blend):
2570 (WebCore::TranslateTransformOperation::blend):
2571 (WebCore::MatrixTransformOperation::blend):
2572 * rendering/RenderStyle.h:
2573 (WebCore::TransformOperations::operator!=):
2574 (WebCore::TransformOperations::isEmpty):
2575 (WebCore::TransformOperations::size):
2576 (WebCore::TransformOperations::operator[]):
2577 (WebCore::TransformOperations::append):
2578 (WebCore::RenderStyle::transform):
2579 (WebCore::RenderStyle::setTransform):
2580 (WebCore::RenderStyle::initialTransform):
2582 2007-10-30 Antti Koivisto <antti@apple.com>
2584 Another Qt/GTK build fix.
2586 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2588 2007-10-30 Antti Koivisto <antti@apple.com>
2590 Attempt to fix Qt/GTK build.
2594 2007-10-30 Justin Garcia <justin.garcia@apple.com>
2596 Reviewed by Darin Adler.
2598 <rdar://problem/5549929> CrashTracer: [USER] 35 crashes at WebCore::CharacterData::insertData
2600 We were trying to insert a tab into a br, after the br incorrectly ended up inside
2603 * editing/DeleteButtonController.cpp:
2604 (WebCore::isDeletableElement): Changed to take in a const Node* instead of a Node*.
2605 * editing/DeleteSelectionCommand.cpp:
2606 (WebCore::isTableRow): Ditto.
2607 * editing/IndentOutdentCommand.cpp:
2608 (WebCore::isIndentBlockquote): Ditto.
2609 (WebCore::isListOrIndentBlockquote): Ditto.
2610 * editing/InsertLineBreakCommand.cpp:
2611 (WebCore::InsertLineBreakCommand::shouldUseBreakElement): Added, moved code from
2613 (WebCore::InsertLineBreakCommand::doApply):
2614 Don't upstream() the insertion position. upstream()ing it will only have an effect
2615 when the insertion position is the first in its paragraph (since we canonicalize
2616 VisiblePositions to the upstream() candidate). In this start of paragraph case,
2617 upstream() can move outside inline elements like tab spans or elements that might
2618 have a different whitespace mode (added two test cases to cover these).
2619 Moved code to decide whether to insert a br or a '\n' to its own method.
2620 Removed special case code for inserting at a position inside a tab span. We instead
2621 adjust the insertion position before insertion if it is inside a tab span and
2622 handle insertion in the appropriate if-block. This fixes a bug where we would
2623 only insert one line break when two were needed (added a testcase).
2624 Removed special case code for inserting before and after tables and horizontal
2625 rules. We handle these insertions in the appropriate if-block.
2626 * editing/InsertLineBreakCommand.h:
2627 * editing/ReplaceSelectionCommand.cpp:
2628 (WebCore::isMailPasteAsQuotationNode): Change to take in a const Node*.
2629 * editing/htmlediting.cpp:
2630 (WebCore::isContentEditable): Ditto.
2631 (WebCore::isBlock): Ditto.
2632 (WebCore::enclosingNodeOfType): Changed to take a function pointer to a function
2633 that takes in a const Node*.
2634 (WebCore::isTabSpanTextNode): Check to see that the node actually a text node,
2636 * editing/htmlediting.h:
2637 * editing/markup.cpp:
2638 (WebCore::styleFromMatchedRulesAndInlineDecl): Changed to take in a const Node*.
2639 (WebCore::elementHasTextDecorationProperty): Ditto.
2641 2007-10-30 Antti Koivisto <antti@apple.com>
2647 * html/VoidCallback.cpp: Added.
2648 (VoidCallback::VoidCallback):
2649 (VoidCallback::~VoidCallback):
2650 (VoidCallback::handleEvent):
2651 (VoidCallback::execute):
2652 (VoidCallback::operator==):
2653 (WebCore::toVoidCallback):
2654 * html/VoidCallback.h: Added.
2655 * html/VoidCallback.idl: Added.
2657 2007-10-30 David Kilzer <ddkilzer@webkit.org>
2659 Generated files missing from WebCore's Xcode project file
2660 <http://bugs.webkit.org/show_bug.cgi?id=15406>
2664 Added the following files to the Xcode project file (note that
2665 JSHTMLInputElementBaseTable.cpp is used as a header file):
2667 - DOMCSSStyleSheetPrivate.h
2669 - DOMHTMLCollectionPrivate.h
2670 - DOMHTMLEmbedElementPrivate.h
2671 - DOMHTMLIFrameElementPrivate.h
2672 - DOMHTMLObjectElementPrivate.h
2673 - DOMHTMLSelectElementPrivate.h
2674 - DOMTextEventInternal.h
2675 - JSHTMLInputElementBaseTable.cpp
2677 * DerivedSources.make: Removed DOMSVGException.h and JSSVGAnimatedPoints.h
2678 since their generated code was not used.
2679 * WebCore.xcodeproj/project.pbxproj: Added missing header files.
2681 2007-10-29 Antti Koivisto <antti@apple.com>
2683 Rubber stamped by Adele.
2685 Initial media (<video> and <audio>) support from feature branch and
2686 QTKit based platform implementation.
2688 This will need to be updated to match current draft specification.
2690 * Configurations/WebCore.xcconfig:
2691 * DerivedSources.make:
2693 * WebCore.xcodeproj/project.pbxproj:
2694 * bindings/js/JSEventCustom.cpp:
2696 * bindings/js/JSHTMLAudioElementConstructor.cpp: Added.
2697 (WebCore::JSHTMLAudioElementConstructor::JSHTMLAudioElementConstructor):
2698 (WebCore::JSHTMLAudioElementConstructor::implementsConstruct):
2699 (WebCore::JSHTMLAudioElementConstructor::construct):
2700 * bindings/js/JSHTMLAudioElementConstructor.h: Added.
2701 * bindings/js/JSHTMLElementWrapperFactory.cpp:
2702 (WebCore::createJSHTMLWrapper):
2703 * bindings/js/kjs_window.cpp:
2704 (KJS::Window::getValueProperty):
2705 * bindings/js/kjs_window.h:
2707 * bindings/scripts/CodeGeneratorJS.pm:
2709 (WebCore::Document::createEvent):
2710 (WebCore::Document::willSaveToCache):
2711 (WebCore::Document::didRestoreFromCache):
2712 (WebCore::Document::registerForCacheCallbacks):
2713 (WebCore::Document::unregisterForCacheCallbacks):
2716 (WebCore::Element::setBooleanAttribute):
2718 (WebCore::Element::willSaveToCache):
2720 (WebCore::Event::isProgressEvent):
2723 * dom/EventTargetNode.cpp:
2724 (WebCore::EventTargetNode::dispatchProgressEvent):
2725 * dom/EventTargetNode.h:
2726 * dom/ProgressEvent.cpp: Added.
2727 (WebCore::ProgressEvent::ProgressEvent):
2728 (WebCore::ProgressEvent::initProgressEvent):
2729 (WebCore::ProgressEvent::initProgressEventNS):
2730 * dom/ProgressEvent.h: Added.
2731 (WebCore::ProgressEvent::lengthComputable):
2732 (WebCore::ProgressEvent::loaded):
2733 (WebCore::ProgressEvent::total):
2734 (WebCore::ProgressEvent::isProgressEvent):
2735 * dom/ProgressEvent.idl: Added.
2736 * history/CachedPage.cpp:
2737 (WebCore::CachedPage::CachedPage):
2738 * html/HTMLAttributeNames.in:
2739 * html/HTMLAudioElement.cpp: Added.
2740 (WebCore::HTMLAudioElement::HTMLAudioElement):
2741 * html/HTMLAudioElement.h: Added.
2742 (WebCore::HTMLAudioElement::tagPriority):
2743 * html/HTMLAudioElement.idl: Added.
2744 * html/HTMLElement.cpp:
2745 (WebCore::inlineTagList):
2746 * html/HTMLElementFactory.cpp:
2747 (WebCore::audioConstructor):
2748 (WebCore::videoConstructor):
2749 (WebCore::sourceConstructor):
2750 (WebCore::createFunctionMap):
2751 * html/HTMLInputElement.cpp:
2752 (WebCore::HTMLInputElement::~HTMLInputElement):
2753 (WebCore::HTMLInputElement::setInputType):
2754 (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
2755 (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
2756 * html/HTMLMediaElement.cpp: Added.
2757 (WebCore::HTMLMediaElement::HTMLMediaElement):
2758 (WebCore::HTMLMediaElement::~HTMLMediaElement):
2759 (WebCore::HTMLMediaElement::checkDTD):
2760 (WebCore::HTMLMediaElement::rendererIsNeeded):
2761 (WebCore::HTMLMediaElement::createRenderer):
2762 (WebCore::HTMLMediaElement::insertedIntoDocument):
2763 (WebCore::HTMLMediaElement::removedFromDocument):
2764 (WebCore::HTMLMediaElement::scheduleLoad):
2765 (WebCore::HTMLMediaElement::initAndDispatchProgressEvent):
2766 (WebCore::HTMLMediaElement::dispatchEventAsync):
2767 (WebCore::HTMLMediaElement::loadTimerFired):
2768 (WebCore::HTMLMediaElement::asyncEventTimerFired):
2769 (WebCore::serializeTimeOffset):
2770 (WebCore::parseTimeOffset):
2771 (WebCore::HTMLMediaElement::getTimeOffsetAttribute):
2772 (WebCore::HTMLMediaElement::setTimeOffsetAttribute):
2773 (WebCore::HTMLMediaElement::error):
2774 (WebCore::HTMLMediaElement::src):
2775 (WebCore::HTMLMediaElement::HTMLMediaElement::setSrc):
2776 (WebCore::HTMLMediaElement::currentSrc):
2777 (WebCore::HTMLMediaElement::networkState):
2778 (WebCore::HTMLMediaElement::bufferingRate):
2779 (WebCore::HTMLMediaElement::load):
2780 (WebCore::HTMLMediaElement::movieNetworkStateChanged):
2781 (WebCore::HTMLMediaElement::movieReadyStateChanged):
2782 (WebCore::HTMLMediaElement::setReadyState):
2783 (WebCore::HTMLMediaElement::progressEventTimerFired):
2784 (WebCore::HTMLMediaElement::seek):
2785 (WebCore::HTMLMediaElement::readyState):
2786 (WebCore::HTMLMediaElement::seeking):
2787 (WebCore::HTMLMediaElement::currentTime):
2788 (WebCore::HTMLMediaElement::setCurrentTime):
2789 (WebCore::HTMLMediaElement::duration):
2790 (WebCore::HTMLMediaElement::paused):
2791 (WebCore::HTMLMediaElement::defaultPlaybackRate):
2792 (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
2793 (WebCore::HTMLMediaElement::playbackRate):
2794 (WebCore::HTMLMediaElement::setPlaybackRate):
2795 (WebCore::HTMLMediaElement::ended):
2796 (WebCore::HTMLMediaElement::autoplay):
2797 (WebCore::HTMLMediaElement::setAutoplay):
2798 (WebCore::HTMLMediaElement::play):
2799 (WebCore::HTMLMediaElement::pause):
2800 (WebCore::HTMLMediaElement::loopCount):
2801 (WebCore::HTMLMediaElement::setLoopCount):
2802 (WebCore::HTMLMediaElement::start):
2803 (WebCore::HTMLMediaElement::setStart):
2804 (WebCore::HTMLMediaElement::end):
2805 (WebCore::HTMLMediaElement::setEnd):
2806 (WebCore::HTMLMediaElement::loopStart):
2807 (WebCore::HTMLMediaElement::setLoopStart):
2808 (WebCore::HTMLMediaElement::loopEnd):
2809 (WebCore::HTMLMediaElement::setLoopEnd):
2810 (WebCore::HTMLMediaElement::currentLoop):
2811 (WebCore::HTMLMediaElement::setCurrentLoop):
2812 (WebCore::HTMLMediaElement::controls):
2813 (WebCore::HTMLMediaElement::setControls):
2814 (WebCore::HTMLMediaElement::volume):
2815 (WebCore::HTMLMediaElement::setVolume):
2816 (WebCore::HTMLMediaElement::muted):
2817 (WebCore::HTMLMediaElement::setMuted):
2818 (WebCore::HTMLMediaElement::pickMedia):
2819 (WebCore::HTMLMediaElement::checkIfSeekNeeded):
2820 (WebCore::HTMLMediaElement::movieVolumeChanged):
2821 (WebCore::HTMLMediaElement::movieDidEnd):
2822 (WebCore::HTMLMediaElement::movieCuePointReached):
2823 (WebCore::HTMLMediaElement::addCuePoint):
2824 (WebCore::HTMLMediaElement::removeCuePoint):
2825 (WebCore::HTMLMediaElement::buffered):
2826 (WebCore::HTMLMediaElement::played):
2827 (WebCore::HTMLMediaElement::seekable):
2828 (WebCore::HTMLMediaElement::effectiveStart):
2829 (WebCore::HTMLMediaElement::effectiveEnd):
2830 (WebCore::HTMLMediaElement::effectiveLoopStart):
2831 (WebCore::HTMLMediaElement::effectiveLoopEnd):
2832 (WebCore::HTMLMediaElement::activelyPlaying):
2833 (WebCore::HTMLMediaElement::endedPlayback):
2834 (WebCore::HTMLMediaElement::willSaveToCache):
2835 (WebCore::HTMLMediaElement::didRestoreFromCache):
2836 * html/HTMLMediaElement.h: Added.
2837 (WebCore::HTMLMediaElement::movie):
2838 (WebCore::HTMLMediaElement::isVideo):
2839 (WebCore::HTMLMediaElement::):
2840 (WebCore::HTMLMediaElement::CallbackEntry::CallbackEntry):
2841 * html/HTMLMediaElement.idl: Added.
2842 * html/HTMLSourceElement.cpp: Added.
2843 (WebCore::HTMLSourceElement::HTMLSourceElement):
2844 (WebCore::HTMLSourceElement::~HTMLSourceElement):
2845 (WebCore::HTMLSourceElement::insertedIntoDocument):
2846 (WebCore::HTMLSourceElement::src):
2847 (WebCore::HTMLSourceElement::setSrc):
2848 (WebCore::HTMLSourceElement::media):
2849 (WebCore::HTMLSourceElement::setMedia):
2850 (WebCore::HTMLSourceElement::type):
2851 (WebCore::HTMLSourceElement::setType):
2852 * html/HTMLSourceElement.h: Added.
2853 (WebCore::HTMLSourceElement::endTagRequirement):
2854 (WebCore::HTMLSourceElement::tagPriority):
2855 * html/HTMLSourceElement.idl: Added.
2856 * html/HTMLTagNames.in:
2857 * html/HTMLVideoElement.cpp: Added.
2858 (WebCore::HTMLVideoElement::HTMLVideoElement):
2859 (WebCore::HTMLVideoElement::videoWidth):
2860 (WebCore::HTMLVideoElement::videoHeight):
2861 * html/HTMLVideoElement.h: Added.
2862 (WebCore::HTMLVideoElement::tagPriority):
2863 (WebCore::HTMLVideoElement::isVideo):
2864 * html/HTMLVideoElement.idl: Added.
2865 * html/MediaError.h: Added.
2866 (WebCore::MediaError::):
2867 (WebCore::MediaError::MediaError):
2868 (WebCore::MediaError::code):
2869 * html/MediaError.idl: Added.
2870 * html/TimeRanges.cpp: Added.
2871 (TimeRanges::TimeRanges):
2872 (TimeRanges::start):
2875 (TimeRanges::contain):
2876 * html/TimeRanges.h: Added.
2877 (WebCore::TimeRanges::TimeRanges):
2878 (WebCore::TimeRanges::length):
2879 (WebCore::TimeRanges::Range::Range):
2880 * html/TimeRanges.idl: Added.
2881 * page/DOMWindow.idl:
2882 * platform/MIMETypeRegistry.cpp:
2883 (WebCore::initialiseSupportedMovieMIMETypes):
2884 (WebCore::initialiseMIMETypeRegistry):
2885 (WebCore::MIMETypeRegistry::isSupportedMovieMIMEType):
2886 (WebCore::MIMETypeRegistry::getSupportedMovieMIMETypes):
2887 * platform/MIMETypeRegistry.h:
2888 * platform/graphics/Movie.cpp: Added.
2889 (WebCore::Movie::Movie):
2890 (WebCore::Movie::~Movie):
2891 (WebCore::Movie::load):
2892 (WebCore::Movie::cancelLoad):
2893 (WebCore::Movie::play):
2894 (WebCore::Movie::pause):
2895 (WebCore::Movie::duration):
2896 (WebCore::Movie::currentTime):
2897 (WebCore::Movie::seek):
2898 (WebCore::Movie::paused):
2899 (WebCore::Movie::seeking):
2900 (WebCore::Movie::naturalSize):
2901 (WebCore::Movie::hasVideo):
2902 (WebCore::Movie::networkState):
2903 (WebCore::Movie::readyState):
2904 (WebCore::Movie::volume):
2905 (WebCore::Movie::setVolume):
2906 (WebCore::Movie::rate):
2907 (WebCore::Movie::setRate):
2908 (WebCore::Movie::muted):
2909 (WebCore::Movie::setMuted):
2910 (WebCore::Movie::dataRate):
2911 (WebCore::Movie::setEndTime):
2912 (WebCore::Movie::addCuePoint):
2913 (WebCore::Movie::removeCuePoint):
2914 (WebCore::Movie::clearCuePoints):
2915 (WebCore::Movie::maxTimeBuffered):
2916 (WebCore::Movie::maxTimeSeekable):
2917 (WebCore::Movie::bytesLoaded):
2918 (WebCore::Movie::totalBytesKnown):
2919 (WebCore::Movie::totalBytes):
2920 (WebCore::Movie::setRect):
2921 (WebCore::Movie::visible):
2922 (WebCore::Movie::setVisible):
2923 (WebCore::Movie::paint):
2924 (WebCore::Movie::getSupportedTypes):
2925 (WebCore::Movie::networkStateChanged):
2926 (WebCore::Movie::readyStateChanged):
2927 (WebCore::Movie::volumeChanged):
2928 (WebCore::Movie::didEnd):
2929 (WebCore::Movie::cuePointReached):
2930 * platform/graphics/Movie.h: Added.
2931 (WebCore::MovieClient::~MovieClient):
2932 (WebCore::MovieClient::movieNetworkStateChanged):
2933 (WebCore::MovieClient::movieReadyStateChanged):
2934 (WebCore::MovieClient::movieVolumeChanged):
2935 (WebCore::MovieClient::movieDidEnd):
2936 (WebCore::MovieClient::movieCuePointReached):
2937 (WebCore::Movie::parentWidget):
2938 (WebCore::Movie::setParentWidget):
2939 (WebCore::Movie::rect):
2941 * platform/graphics/mac/MoviePrivateQTKit.h: Added.
2942 * platform/graphics/mac/MoviePrivateQTKit.mm: Added.
2943 (WebCore::MoviePrivate::MoviePrivate):
2944 (WebCore::MoviePrivate::~MoviePrivate):
2945 (WebCore::MoviePrivate::createQTMovie):
2946 (WebCore::MoviePrivate::createQTMovieView):
2947 (WebCore::MoviePrivate::createQTTime):
2948 (WebCore::MoviePrivate::load):
2949 (WebCore::MoviePrivate::play):
2950 (WebCore::MoviePrivate::pause):
2951 (WebCore::MoviePrivate::duration):
2952 (WebCore::MoviePrivate::currentTime):
2953 (WebCore::MoviePrivate::seek):
2954 (WebCore::MoviePrivate::setEndTime):
2955 (WebCore::MoviePrivate::addCuePoint):
2956 (WebCore::MoviePrivate::removeCuePoint):
2957 (WebCore::MoviePrivate::clearCuePoints):
2958 (WebCore::MoviePrivate::startCuePointTimerIfNeeded):
2959 (WebCore::MoviePrivate::cancelSeek):
2960 (WebCore::MoviePrivate::seekTimerFired):
2961 (WebCore::MoviePrivate::cuePointTimerFired):
2962 (WebCore::MoviePrivate::paused):
2963 (WebCore::MoviePrivate::seeking):
2964 (WebCore::MoviePrivate::naturalSize):
2965 (WebCore::MoviePrivate::hasVideo):
2966 (WebCore::MoviePrivate::setVolume):
2967 (WebCore::MoviePrivate::setMuted):
2968 (WebCore::MoviePrivate::setRate):
2969 (WebCore::MoviePrivate::dataRate):
2970 (WebCore::MoviePrivate::networkState):
2971 (WebCore::MoviePrivate::readyState):
2972 (WebCore::MoviePrivate::maxTimeBuffered):
2973 (WebCore::MoviePrivate::maxTimeSeekable):
2974 (WebCore::MoviePrivate::maxTimeLoaded):
2975 (WebCore::MoviePrivate::bytesLoaded):
2976 (WebCore::MoviePrivate::totalBytesKnown):
2977 (WebCore::MoviePrivate::totalBytes):
2978 (WebCore::MoviePrivate::cancelLoad):
2979 (WebCore::MoviePrivate::updateStates):
2980 (WebCore::MoviePrivate::loadStateChanged):
2981 (WebCore::MoviePrivate::rateChanged):
2982 (WebCore::MoviePrivate::sizeChanged):
2983 (WebCore::MoviePrivate::timeChanged):
2984 (WebCore::MoviePrivate::volumeChanged):
2985 (WebCore::MoviePrivate::didEnd):
2986 (WebCore::MoviePrivate::setRect):
2987 (WebCore::MoviePrivate::setVisible):
2988 (WebCore::MoviePrivate::paint):
2989 (WebCore::MoviePrivate::getSupportedTypes):
2990 (-[WebCoreMovieObserver loadStateChanged:]):
2991 (-[WebCoreMovieObserver rateChanged:]):
2992 (-[WebCoreMovieObserver sizeChanged:]):
2993 (-[WebCoreMovieObserver timeChanged:]):
2994 (-[WebCoreMovieObserver volumeChanged:]):
2995 (-[WebCoreMovieObserver didEnd:]):
2996 (-[WebCoreMovieObserver setCallback:WebCore::]):
2997 * platform/mac/WebCoreSystemInterface.h:
2998 * platform/mac/WebCoreSystemInterface.mm:
2999 * rendering/RenderLayer.cpp:
3000 (WebCore::RenderLayer::collectLayers):
3001 * rendering/RenderVideo.cpp: Added.
3002 (WebCore::RenderVideo::RenderVideo):
3003 (WebCore::RenderVideo::~RenderVideo):
3004 (WebCore::RenderVideo::movie):
3005 (WebCore::RenderVideo::videoSizeChanged):
3006 (WebCore::RenderVideo::paint):
3007 (WebCore::RenderVideo::layout):
3008 (WebCore::RenderVideo::updateFromElement):
3009 (WebCore::RenderVideo::updateMovie):
3010 (WebCore::RenderVideo::isWidthSpecified):
3011 (WebCore::RenderVideo::isHeightSpecified):
3012 (WebCore::RenderVideo::calcReplacedWidth):
3013 (WebCore::RenderVideo::calcReplacedHeight):
3014 (WebCore::RenderVideo::calcAspectRatioWidth):
3015 (WebCore::RenderVideo::calcAspectRatioHeight):
3016 (WebCore::RenderVideo::calcPrefWidths):
3017 * rendering/RenderVideo.h: Added.
3018 (WebCore::RenderVideo::renderName):
3020 2007-10-30 Sam Weinig <sam@webkit.org>
3022 Reviewed by Adam Roben.
3024 Add Interface and Class UUIDs to the IDLs in preparation of adding
3025 autogeneration of the COM DOM bindings.
3027 * bindings/scripts/IDLParser.pm: Relax parsing rules to allow newlines as whitespace.
3028 * css/CSSCharsetRule.idl:
3029 * css/CSSFontFaceRule.idl:
3030 * css/CSSImportRule.idl:
3031 * css/CSSMediaRule.idl:
3032 * css/CSSPageRule.idl:
3033 * css/CSSPrimitiveValue.idl:
3035 * css/CSSRuleList.idl:
3036 * css/CSSStyleDeclaration.idl:
3037 * css/CSSStyleRule.idl:
3038 * css/CSSStyleSheet.idl:
3039 * css/CSSUnknownRule.idl:
3041 * css/CSSValueList.idl:
3043 * css/MediaList.idl:
3046 * css/StyleSheet.idl:
3047 * css/StyleSheetList.idl:
3049 * dom/CDATASection.idl:
3050 * dom/CharacterData.idl:
3052 * dom/DOMImplementation.idl:
3054 * dom/DocumentFragment.idl:
3055 * dom/DocumentType.idl:
3058 * dom/EntityReference.idl:
3060 * dom/EventListener.idl:
3061 * dom/EventTarget.idl:
3062 * dom/NamedNodeMap.idl:
3066 * dom/ProcessingInstruction.idl:
3068 * html/CanvasGradient.idl:
3069 * html/CanvasPattern.idl:
3070 * html/CanvasRenderingContext2D.idl:
3071 * html/HTMLAnchorElement.idl:
3072 * html/HTMLAppletElement.idl:
3073 * html/HTMLAreaElement.idl:
3074 * html/HTMLBRElement.idl:
3075 * html/HTMLBaseElement.idl:
3076 * html/HTMLBaseFontElement.idl:
3077 * html/HTMLBlockquoteElement.idl:
3078 * html/HTMLBodyElement.idl:
3079 * html/HTMLButtonElement.idl:
3080 * html/HTMLCanvasElement.idl:
3081 * html/HTMLCollection.idl:
3082 * html/HTMLDListElement.idl:
3083 * html/HTMLDirectoryElement.idl:
3084 * html/HTMLDivElement.idl:
3085 * html/HTMLDocument.idl:
3086 * html/HTMLElement.idl:
3087 * html/HTMLEmbedElement.idl:
3088 * html/HTMLFieldSetElement.idl:
3089 * html/HTMLFontElement.idl:
3090 * html/HTMLFormElement.idl:
3091 * html/HTMLFrameElement.idl:
3092 * html/HTMLFrameSetElement.idl:
3093 * html/HTMLHRElement.idl:
3094 * html/HTMLHeadElement.idl:
3095 * html/HTMLHeadingElement.idl:
3096 * html/HTMLHtmlElement.idl:
3097 * html/HTMLIFrameElement.idl:
3098 * html/HTMLImageElement.idl:
3099 * html/HTMLInputElement.idl:
3100 * html/HTMLIsIndexElement.idl:
3101 * html/HTMLLIElement.idl:
3102 * html/HTMLLabelElement.idl:
3103 * html/HTMLLegendElement.idl:
3104 * html/HTMLLinkElement.idl:
3105 * html/HTMLMapElement.idl:
3106 * html/HTMLMarqueeElement.idl:
3107 * html/HTMLMenuElement.idl:
3108 * html/HTMLMetaElement.idl:
3109 * html/HTMLModElement.idl:
3110 * html/HTMLOListElement.idl:
3111 * html/HTMLObjectElement.idl:
3112 * html/HTMLOptGroupElement.idl:
3113 * html/HTMLOptionElement.idl:
3114 * html/HTMLOptionsCollection.idl:
3115 * html/HTMLParagraphElement.idl:
3116 * html/HTMLParamElement.idl:
3117 * html/HTMLPreElement.idl:
3118 * html/HTMLQuoteElement.idl:
3119 * html/HTMLScriptElement.idl:
3120 * html/HTMLSelectElement.idl:
3121 * html/HTMLStyleElement.idl:
3122 * html/HTMLTableCaptionElement.idl:
3123 * html/HTMLTableCellElement.idl:
3124 * html/HTMLTableColElement.idl:
3125 * html/HTMLTableElement.idl:
3126 * html/HTMLTableRowElement.idl:
3127 * html/HTMLTableSectionElement.idl:
3128 * html/HTMLTextAreaElement.idl:
3129 * html/HTMLTitleElement.idl:
3130 * html/HTMLUListElement.idl:
3132 2007-10-30 Adele Peterson <adele@apple.com>
3136 * page/AnimationController.cpp: (WebCore::blendFunc): Use lround instead of round.
3138 2007-10-29 Timothy Hatcher <timothy@apple.com>
3140 Reviewed by John Sullivan.
3142 - Allow showing and closing the inspector programatically.
3143 - Add showConsole() and showTimeline() methods.
3145 * WebCore.base.exp: Add exports for WebKit.
3146 * page/InspectorController.cpp:
3147 (WebCore::callSimpleFunction): Renamed from callClearFunction().
3148 (WebCore::unloading): Renamed to close().
3149 (WebCore::InspectorController::InspectorController):
3150 (WebCore::InspectorController::inspect): Moved showing code to show().
3151 (WebCore::InspectorController::setWindowVisible): Show the timeline or console if needed.
3152 (WebCore::InspectorController::show): Code factored out of inspect().
3153 (WebCore::InspectorController::showConsole): Call show() and the JS showConsole().
3154 (WebCore::InspectorController::showTimeline): Call show() and the JS showTimeline().
3155 (WebCore::InspectorController::close):
3156 (WebCore::InspectorController::clearScriptResources): Call the new callSimpleFunction.
3157 (WebCore::InspectorController::clearDatabaseScriptResources): Ditto.
3158 (WebCore::InspectorController::clearScriptConsoleMessages): Ditto.
3159 (WebCore::InspectorController::clearNetworkTimeline): Ditto.
3160 * page/InspectorController.h: Add and rename methods.
3161 * page/inspector/inspector.js: Add showConsole() and showTimeline().
3163 2007-10-30 Adele Peterson <adele@apple.com>
3169 * page/AnimationController.cpp: (WebCore::blendFunc):
3171 2007-10-30 Adele Peterson <adele@apple.com>
3175 WebCore part of fix for http://bugs.webkit.org/show_bug.cgi?id=10577
3176 <rdar://problem/5103625> REGRESSION: Caps lock icon should show in password fields
3178 Test: manual-tests/password-caps-lock.html
3180 * WebCore.base.exp: Added symbol for capsLockStateMayHaveChanged.
3182 * page/Frame.cpp: (WebCore::Frame::setIsActive): Calls capsLockStateMayHaveChanged.
3183 * page/EventHandler.cpp: (WebCore::EventHandler::capsLockStateMayHaveChanged): Added. Tells the focused node's renderer that the capsLockStateMayHaveChanged.
3184 * page/EventHandler.h:
3186 * platform/PlatformKeyboardEvent.h:
3187 * platform/mac/KeyEventMac.mm: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3188 * platform/win/KeyEventWin.cpp: (WebCore::PlatformKeyboardEvent::currentCapsLockState): Added.
3190 * rendering/RenderTextControl.cpp:
3191 (WebCore::RenderTextControl::RenderTextControl):
3192 (WebCore::RenderTextControl::paint): Added. If m_shouldDrawCapsLockIndicator is true, paints the caps lock indicator after the background.
3193 (WebCore::RenderTextControl::forwardEvent): When the control gets and loses focus, update the caps lock state.
3194 (WebCore::RenderTextControl::capsLockStateMayHaveChanged): Added. Updates m_shouldDrawCapsLockIndicator, which is true if the field is a password field,
3195 and the frame is active, and the element is focused, and the caps lock is on. Causes a repaint when m_shouldDrawCapsLockIndicator changes state.
3196 * rendering/RenderTextControl.h: Added m_shouldDrawCapsLockIndicator.
3197 * rendering/RenderObject.h: (WebCore::RenderObject::capsLockStateMayHaveChanged): Added.
3199 * rendering/RenderTheme.h: (WebCore::RenderTheme::paintCapsLockIndicator): Added.
3200 * rendering/RenderThemeMac.h:
3201 * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintCapsLockIndicator): Added. Calls wkDrawCapsLockIndicator.
3202 * rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::paintCapsLockIndicator): Added. Calls paintThemePart for the CapsLockPart.
3203 * rendering/RenderThemeSafari.h:
3205 2007-10-30 David Hyatt <hyatt@apple.com>
3207 Land support for implicit animation in CSS.
3209 Reviewed by mitz, darin
3211 * css/CSSParser.cpp:
3212 (WebCore::CSSParser::parseTimingFunctionValue):
3213 (WebCore::CSSParser::parseTransitionTimingFunction):
3214 (WebCore::CSSParser::parseTransitionProperty):
3215 * css/CSSStyleSelector.cpp:
3216 (WebCore::CSSStyleSelector::mapTransitionDuration):
3217 (WebCore::CSSStyleSelector::mapTransitionRepeatCount):
3218 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3219 (WebCore::CSSStyleSelector::mapTransitionProperty):
3220 * css/CSSTimingFunctionValue.h:
3221 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3222 (WebCore::CSSTimingFunctionValue::x1):
3223 (WebCore::CSSTimingFunctionValue::y1):
3224 (WebCore::CSSTimingFunctionValue::x2):
3225 (WebCore::CSSTimingFunctionValue::y2):
3227 (WebCore::Element::styleForRenderer):
3228 (WebCore::Element::createRenderer):
3230 (WebCore::Node::createRendererIfNeeded):
3231 (WebCore::Node::setRenderStyle):
3232 * page/AnimationController.cpp:
3233 (WebCore::CurveData::CurveData):
3234 (WebCore::CurveData::sampleCurveX):
3235 (WebCore::CurveData::sampleCurveY):
3236 (WebCore::CurveData::sampleCurveDerivativeX):
3237 (WebCore::CurveData::solveCurveX):
3238 (WebCore::solveEpsilon):
3239 (WebCore::solveCubicBezierFunction):
3240 (WebCore::ImplicitAnimation::finished):
3241 (WebCore::CompositeImplicitAnimation::~CompositeImplicitAnimation):
3242 (WebCore::CompositeImplicitAnimation::hasAnimationForProperty):
3243 (WebCore::ImplicitAnimation::ImplicitAnimation):
3244 (WebCore::ImplicitAnimation::~ImplicitAnimation):
3245 (WebCore::ImplicitAnimation::reset):
3246 (WebCore::ImplicitAnimation::progress):
3247 (WebCore::blendFunc):
3248 (WebCore::ImplicitAnimation::animate):
3249 (WebCore::CompositeImplicitAnimation::animate):
3250 (WebCore::CompositeImplicitAnimation::animating):
3251 (WebCore::CompositeImplicitAnimation::reset):
3252 (WebCore::AnimationControllerPrivate::hasImplicitAnimations):
3253 (WebCore::AnimationControllerPrivate::AnimationControllerPrivate):
3254 (WebCore::AnimationControllerPrivate::~AnimationControllerPrivate):
3255 (WebCore::AnimationControllerPrivate::get):
3256 (WebCore::AnimationControllerPrivate::clear):
3257 (WebCore::AnimationControllerPrivate::updateTimer):
3258 (WebCore::AnimationControllerPrivate::timerFired):
3260 (WebCore::AnimationController::~AnimationController):
3261 (WebCore::AnimationController::cancelImplicitAnimations):
3262 (WebCore::AnimationController::updateImplicitAnimations):
3263 (WebCore::AnimationController::suspendAnimations):
3264 (WebCore::AnimationController::resumeAnimations):
3265 * page/AnimationController.h:
3267 (WebCore::FramePrivate::FramePrivate):
3268 * rendering/RenderBox.cpp:
3269 (WebCore::RenderBox::setStyle):
3270 (WebCore::RenderBox::destroy):
3271 * rendering/RenderObject.cpp:
3272 (WebCore::RenderObject::setAnimatableStyle):
3273 (WebCore::RenderObject::destroy):
3274 * rendering/RenderObject.h:
3275 * rendering/RenderStyle.h:
3276 (WebCore::TimingFunction::TimingFunction):
3277 (WebCore::TimingFunction::operator==):
3278 (WebCore::TimingFunction::x1):
3279 (WebCore::TimingFunction::y1):
3280 (WebCore::TimingFunction::x2):
3281 (WebCore::TimingFunction::y2):
3282 (WebCore::TimingFunction::type):
3283 (WebCore::Transition::transitionProperty):
3284 (WebCore::Transition::setTransitionProperty):
3285 (WebCore::RenderStyle::initialTransitionProperty):
3286 * rendering/RenderWidget.cpp:
3287 (WebCore::RenderWidget::destroy):
3289 2007-10-29 Beth Dakin <bdakin@apple.com>
3293 Fix for <rdar://problem/5399614> anchor tag is not rendered without
3294 text content, works in Firefox with CSS background-image (13237)
3296 This patch allows empty inlines that have box decorations or width
3297 from border/padding/margin to have line boxes.
3299 * rendering/bidi.cpp:
3300 (WebCore::inlineFlowAllowsLineBox): Convenience function that
3301 defines when we allow an inline flow to have a line box.
3302 (WebCore::requiresLineBox): Call inlineFlowAllowsLineBox.
3303 (WebCore::shouldSkipWhitespaceAfterStartObject): New function to
3304 merge some shared code between list markers and empty inline flows
3305 that fall at the beginning of a line.
3306 (WebCore::RenderBlock::findNextLineBreak): Make flows more like
3309 One interesting side effect of this bug appeared in our xhtml/svg
3310 tests that generate parser error tags. The tag we generate was
3311 actually an empty inline with box decorations. This patch causes
3312 those inlines to draw now, and the parser errors looked strange. So
3313 I changed it so that the parsererror tag is display:block. This
3314 matches Firefox, and I think was the original intent of the tag
3315 since that causes its red background and border to show up.
3316 * dom/XMLTokenizer.cpp:
3317 (WebCore::createXHTMLParserErrorHeader):
3319 2007-10-29 Dan Bernstein <mitz@apple.com>
3321 Reviewed by Dave Hyatt.
3323 - fix crashing tests fast/frames/inline-object-inside-frameset.html and
3324 fast/forms/form-hides-table.html
3326 * rendering/RenderBox.cpp:
3327 (WebCore::RenderBox::destroy):
3328 * rendering/RenderWidget.cpp:
3329 (WebCore::RenderWidget::destroy):
3331 2007-10-29 Dan Bernstein <mitz@apple.com>
3333 Reviewed by Adam Roben.
3335 - fix http://bugs.webkit.org/show_bug.cgi?id=15750
3336 REGRESSION(r27173): Web Inspector freezes beneath Image::drawPattern()
3338 Test: fast/backgrounds/size/zero.html
3340 * platform/graphics/cg/ImageCG.cpp:
3341 (WebCore::Image::drawPattern): Added an ASSERT and an early return
3342 to guard against singular pattern transforms.
3343 * rendering/RenderBox.cpp:
3344 (WebCore::cacluateBackgroundSize): Changed to ensure a minimum tile
3347 2007-10-29 Alp Toker <alp@atoker.com>
3351 Add GTK+ convenience conversions for various primitives
3354 * platform/graphics/Color.h:
3355 * platform/graphics/IntPoint.h:
3356 * platform/graphics/IntRect.h:
3357 * platform/graphics/gtk/ColorGtk.cpp: Added.
3358 (WebCore::Color::Color):
3359 * platform/graphics/gtk/IntPointGtk.cpp: Added.
3360 (WebCore::IntPoint::IntPoint):
3361 (WebCore::IntPoint::operator GdkPoint):
3362 * platform/graphics/gtk/IntRectGtk.cpp: Added.
3363 (WebCore::IntRect::IntRect):
3364 (WebCore::IntRect::operator GdkRectangle):
3366 2007-10-29 Jon Honeycutt <jhoneycutt@apple.com>
3370 Speculative fix for <rdar://5538489> Safari 3.0.4 seed hangs at
3371 http://tgmonline.futuregamer.it/ (works fine on Safari 2.0.4 and Safari
3374 I cannot reproduce this hang, but it is likely due to our not limiting
3375 WM_USER+1 messages or InvalidateRect calls for a plugin with initially-
3376 unknown MIME type. The embed tag on the page is missing a type
3377 attribute, so as fallback, we choose to load the Flash plugin based on
3378 the file extension of "swf." However, we do not record this determined
3379 MIME type, and so our quirks cannot be established.
3381 Changed findPlugin() so that, if it fails to find a plugin for the
3382 given MIME type, it will lookup the MIME type for the file extension -
3383 overwriting its passed MIME type parameter - and search for a plugin
3386 * plugins/win/PluginDatabaseWin.cpp:
3387 (WebCore::PluginDatabaseWin::pluginForMIMEType): Added an early return
3388 if the MIME type is empty
3389 (WebCore::PluginDatabaseWin::MIMETypeForExtension): Added to replace
3390 pluginForExtension. Returns a String with the MIME type for the file
3391 extension. Also, changed to use case-insensitive compares
3392 (WebCore::PluginDatabaseWin::findPlugin): If we fail to find a plugin
3393 for the given extension, overwrite the incoming MIME type parameter
3394 with the MIME type for the file extension, and search for a plugin for
3395 that MIME type. Also, changed the way that the extension is determined
3396 (WebCore::PluginDatabaseWin::createPluginView): Pass a mutable String
3397 to findPlugin() so that it can be updated if necessary
3398 * plugins/win/PluginDatabaseWin.h: Changed findPlugin() to take a non-
3399 const String, removed definition of pluginForExtension, added
3400 definition for MIMETypeForExtension
3401 * plugins/win/PluginPackageWin.cpp:
3402 (WebCore::PluginPackageWin::fetchInfo): Store the MIME type in
3403 lowercase for easier compares
3405 2007-10-29 Andrew Wellington <proton@wiretapped.net>
3407 Not reviewed - build fix
3411 WebKit/WebCore/xml/XSLTProcessor.cpp:79: warning: 'level' may be used uninitialized
3414 * xml/XSLTProcessor.cpp:
3415 (WebCore::XSLTProcessor::parseErrorFunc):
3417 2007-10-29 Alp Toker <alp@atoker.com>
3419 Reviewed by Adam Roben.
3421 http://bugs.webkit.org/show_bug.cgi?id=15725
3422 [GTK] WebCore.pro header dependencies are incorrect
3424 Fix header dependencies in the build system
3426 INCLUDEPATH and DEPENDPATH are now up to date.
3430 2007-10-29 Beth Dakin <bdakin@apple.com>
3434 * css/CSSParser.cpp:
3435 (WebCore::CSSParser::parseTimingFunctionValue):
3436 * css/CSSStyleSelector.cpp:
3437 (WebCore::CSSStyleSelector::mapTransitionTimingFunction):
3439 2007-10-29 David Hyatt <hyatt@apple.com>
3441 Land the back end for CSS animated property transitions. I am landing this in stages, so the AnimationController
3442 class is deliberately left empty.
3444 Reviewed by darin/aroben
3447 * WebCore.vcproj/WebCore.vcproj:
3448 * WebCore.xcodeproj/project.pbxproj:
3449 * css/CSSComputedStyleDeclaration.cpp:
3450 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3451 * css/CSSPropertyNames.in:
3452 * css/CSSTimingFunctionValue.cpp: Added.
3453 (WebCore::CSSTimingFunctionValue::cssText):
3454 * css/CSSTimingFunctionValue.h: Added.
3455 (WebCore::CSSTimingFunctionValue::CSSTimingFunctionValue):
3456 (WebCore::CSSTimingFunctionValue::firstPoint):
3457 (WebCore::CSSTimingFunctionValue::secondPoint):
3458 * css/CSSValueKeywords.in:
3459 * history/CachedPage.cpp:
3460 (WebCore::CachedPage::restore):
3461 * page/AnimationController.cpp: Added.
3462 (WebCore::AnimationController::AnimationController):
3463 (WebCore::AnimationController::~AnimationController):
3464 (WebCore::AnimationController::cancelTransitions):
3465 (WebCore::AnimationController::updateTransitions):
3466 (WebCore::AnimationController::suspendAnimations):
3467 (WebCore::AnimationController::resumeAnimations):
3468 * page/AnimationController.h: Added.
3470 (WebCore::Frame::animationController):
3471 (WebCore::Frame::clearTimers):
3473 * page/FramePrivate.h:
3474 * rendering/RenderBox.cpp:
3475 (WebCore::RenderBox::setStyle):
3476 (WebCore::RenderBox::destroy):
3477 * rendering/RenderObject.cpp:
3478 (WebCore::RenderObject::animationController):
3479 * rendering/RenderObject.h:
3480 * rendering/RenderStyle.cpp:
3481 (WebCore::Transition::Transition):
3482 (WebCore::Transition::~Transition):
3483 (WebCore::Transition::operator=):
3484 (WebCore::Transition::operator==):
3485 (WebCore::Transition::fillUnsetProperties):
3486 (WebCore::StyleRareNonInheritedData::StyleRareNonInheritedData):
3487 (WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData):
3488 (WebCore::StyleRareNonInheritedData::operator==):
3489 (WebCore::StyleRareNonInheritedData::transitionDataEquivalent):
3490 (WebCore::RenderStyle::diff):
3491 (WebCore::RenderStyle::adjustTransitions):
3492 (WebCore::RenderStyle::accessTransitions):
3493 * rendering/RenderStyle.h:
3494 (WebCore::BackgroundLayer::next):
3496 (WebCore::TimingFunction::TimingFunction):
3497 (WebCore::TimingFunction::operator==):
3498 (WebCore::Transition::next):
3499 (WebCore::Transition::isTransitionDurationSet):
3500 (WebCore::Transition::isTransitionRepeatCountSet):
3501 (WebCore::Transition::isTransitionTimingFunctionSet):
3502 (WebCore::Transition::isTransitionPropertySet):
3503 (WebCore::Transition::isEmpty):
3504 (WebCore::Transition::clearTransitionDuration):
3505 (WebCore::Transition::clearTransitionRepeatCount):
3506 (WebCore::Transition::clearTransitionTimingFunction):
3507 (WebCore::Transition::clearTransitionProperty):
3508 (WebCore::Transition::transitionDuration):
3509 (WebCore::Transition::transitionRepeatCount):
3510 (WebCore::Transition::transitionTimingFunction):
3511 (WebCore::Transition::transitionProperty):
3512 (WebCore::Transition::setTransitionDuration):
3513 (WebCore::Transition::setTransitionRepeatCount):
3514 (WebCore::Transition::setTransitionTimingFunction):
3515 (WebCore::Transition::setTransitionProperty):
3516 (WebCore::Transition::setNext):
3517 (WebCore::Transition::operator!=):
3518 (WebCore::RenderStyle::transitions):
3519 (WebCore::RenderStyle::clearTransitions):
3520 (WebCore::RenderStyle::inheritTransitions):
3521 (WebCore::RenderStyle::initialTransitionDuration):
3522 (WebCore::RenderStyle::initialTransitionRepeatCount):
3523 (WebCore::RenderStyle::initialTransitionTimingFunction):
3524 (WebCore::RenderStyle::initialTransitionProperty):
3525 * rendering/RenderWidget.cpp:
3526 (WebCore::RenderWidget::destroy):
3528 2007-10-29 Alexey Proskuryakov <ap@webkit.org>
3532 http://bugs.webkit.org/show_bug.cgi?id=6040
3533 XSLT does not report errors to the user
3535 Made parseErrorFunc a static member function of XSLTProcessor to be reusable from XSLStylesheet.
3536 Switched to xmlSetStructuredErrorFunc to get an error structure instead of pre-formatted console
3537 output. Got rid of DeprecatedString in XSLTProcessor.
3540 (WebCore::Document::applyXSLTransform):
3541 * xml/XSLStyleSheet.cpp:
3542 (WebCore::XSLStyleSheet::parseString):
3543 * xml/XSLTProcessor.cpp:
3544 (WebCore::XSLTProcessor::parseErrorFunc):
3545 (WebCore::docLoaderFunc):
3546 (WebCore::setXSLTLoadCallBack):
3547 (WebCore::writeToString):
3548 (WebCore::saveResultToString):
3549 (WebCore::transformTextStringToXHTMLDocumentString):
3550 (WebCore::xsltParamArrayFromParameterMap):
3551 (WebCore::freeXsltParamArray):
3552 (WebCore::XSLTProcessor::createDocumentFromSource):
3553 (WebCore::createFragmentFromSource):
3554 (WebCore::xsltStylesheetPointer):
3555 (WebCore::xmlDocPtrFromNode):
3556 (WebCore::resultMIMEType):
3557 (WebCore::XSLTProcessor::transformToString):
3558 (WebCore::XSLTProcessor::transformToDocument):
3559 (WebCore::XSLTProcessor::transformToFragment):
3560 * xml/XSLTProcessor.h:
3561 (WebCore::XSLTProcessor::setXSLStylesheet):
3562 (WebCore::XSLTProcessor::importStylesheet):
3563 (WebCore::XSLTProcessor::xslStylesheet):
3565 2007-10-29 Dan Bernstein <mitz@apple.com>
3567 Reviewed by John Sullivan.
3569 - fix <rdar://problem/5424455> REGRESSION (r21168-r21193, Tiger only): Safari scrollbar is clipped at top when loading particular RSS page
3571 Test: fast/repaint/layout-state-only-positioned.html
3573 * rendering/RenderBlock.cpp:
3574 (WebCore::RenderBlock::layoutOnlyPositionedObjects): Pop layout state
3575 before updating scroll info, which possibly repaints us.
3577 2007-10-29 David Kilzer <ddkilzer@webkit.org>
3579 REGRESSION (r17701): Favicons should be viewable as image documents
3580 <http://bugs.webkit.org/show_bug.cgi?id=15640>
3584 On Tiger and Leopard, the image/x-icon MIME type is not returned from
3585 CGImageSourceCopyTypeIdentifiers(), so opening a URL to a favicon caused
3586 the icon to be downloaded instead being displayed in an image document.
3588 Test: fast/images/favicon-as-image.html
3590 * platform/MIMETypeRegistry.cpp:
3591 (WebCore::initialiseSupportedImageMIMETypes): Manually add image/x-icon to
3592 supportedImageMIMETypes and supportedImageResourceMIMETypes. Also fixed
3593 comment about the image/bmp MIME type since it applies to both Tiger and
3596 2007-10-29 Maciej Stachowiak <mjs@apple.com>
3600 - fixed assertion failures detected by the new assertions
3602 * bindings/objc/DOMRGBColor.mm:
3603 (-[DOMRGBColor dealloc]): Clear _internal before calling [super dealloc]
3604 because it's not a pointer and shouldn't be in the normal wrapper cache.
3606 (WebCore::Document::addImageMap): Don't access hashmap if name is null.
3607 (WebCore::Document::removeImageMap): ditto
3608 * dom/StyledElement.cpp:
3609 (WebCore::StyledElement::parseMappedAttribute): Don't claim we have a class