summaryrefslogtreecommitdiffstats
path: root/WebCore/ChangeLog
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:30:52 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-03 19:30:52 -0800
commit8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2 (patch)
tree11425ea0b299d6fb89c6d3618a22d97d5bf68d0f /WebCore/ChangeLog
parent648161bb0edfc3d43db63caed5cc5213bc6cb78f (diff)
downloadexternal_webkit-8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2.zip
external_webkit-8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2.tar.gz
external_webkit-8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2.tar.bz2
auto import from //depot/cupcake/@135843
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r--WebCore/ChangeLog24758
1 files changed, 24758 insertions, 0 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
new file mode 100644
index 0000000..ca61e8d
--- /dev/null
+++ b/WebCore/ChangeLog
@@ -0,0 +1,24758 @@
+2008-11-03 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ Add methods for getting and setting user data on History Item.
+ This change is limited to QT port only. Tests were added in
+ the patch for https://bugs.webkit.org/show_bug.cgi?id=21864.
+
+ Minor change by Simon: made the functions inline and added a missing
+ const.
+
+ * history/HistoryItem.h:
+
+2008-11-01 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22030
+ Make EventNames usable from multiple threads
+
+ * platform/text/AtomicString.cpp:
+ (WebCore::stringTable):
+ (WebCore::AtomicString::add):
+ (WebCore::AtomicString::remove):
+ (WebCore::AtomicString::find):
+ (WebCore::AtomicString::init):
+ * platform/text/AtomicString.h:
+ Atomic string table is now per-thread. Individual strings cannot be shared between threads,
+ so global AtomicString constants cannot be used from threads other than the main one.
+
+ * dom/EventNames.cpp:
+ (WebCore::EventNames::EventNames):
+ (WebCore::eventNames):
+ (WebCore::EventNames::init):
+ * dom/EventNames.h:
+ Made EventNames a ThreadSpecific struct. Individual event names are now accessed as
+ eventNames().fooEvent, not EventNames::fooEvent. This makes EventNames usable from all
+ threads.
+
+ * WebCore.base.exp:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::processingUserGesture):
+ * dom/BeforeTextInsertedEvent.cpp:
+ (WebCore::BeforeTextInsertedEvent::BeforeTextInsertedEvent):
+ * dom/BeforeUnloadEvent.cpp:
+ (WebCore::BeforeUnloadEvent::BeforeUnloadEvent):
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::dispatchModifiedEvent):
+ * dom/ContainerNode.cpp:
+ (WebCore::dispatchChildInsertionEvents):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/DedicatedWorker.cpp:
+ (WebCore::DedicatedWorker::dispatchErrorEvent):
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ (WebCore::Document::setFocusedNode):
+ (WebCore::Document::addListenerTypeIfNeeded):
+ (WebCore::Document::removeWindowInlineEventListenerForType):
+ (WebCore::Document::addWindowEventListener):
+ (WebCore::Document::removeWindowEventListener):
+ (WebCore::Document::finishedParsing):
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::dispatchGenericEvent):
+ (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
+ (WebCore::EventTargetNode::dispatchWindowEvent):
+ (WebCore::EventTargetNode::dispatchUIEvent):
+ (WebCore::EventTargetNode::dispatchSimulatedClick):
+ (WebCore::EventTargetNode::dispatchMouseEvent):
+ (WebCore::EventTargetNode::dispatchFocusEvent):
+ (WebCore::EventTargetNode::dispatchBlurEvent):
+ (WebCore::EventTargetNode::defaultEventHandler):
+ (WebCore::EventTargetNode::on*): (multiple methods)
+ (WebCore::EventTargetNode::setOn*): (multiple methods)
+ * dom/KeyboardEvent.cpp:
+ (WebCore::eventTypeForKeyboardEventType):
+ (WebCore::KeyboardEvent::keyCode):
+ (WebCore::KeyboardEvent::charCode):
+ * dom/MessageEvent.cpp:
+ (WebCore::MessageEvent::MessageEvent):
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::dispatchMessages):
+ (WebCore::MessagePort::dispatchCloseEvent):
+ * dom/MouseEvent.cpp:
+ (WebCore::MouseEvent::isDragEvent):
+ (WebCore::MouseEvent::toElement):
+ (WebCore::MouseEvent::fromElement):
+ * dom/OverflowEvent.cpp:
+ (WebCore::OverflowEvent::OverflowEvent):
+ * dom/TextEvent.cpp:
+ (WebCore::TextEvent::TextEvent):
+ * dom/WebKitAnimationEvent.cpp:
+ (WebCore::WebKitAnimationEvent::WebKitAnimationEvent):
+ (WebCore::WebKitAnimationEvent::~WebKitAnimationEvent):
+ (WebCore::WebKitAnimationEvent::initWebKitAnimationEvent):
+ (WebCore::WebKitAnimationEvent::animationName):
+ (WebCore::WebKitAnimationEvent::elapsedTime):
+ * dom/WebKitTransitionEvent.cpp:
+ (WebCore::WebKitTransitionEvent::WebKitTransitionEvent):
+ (WebCore::WebKitTransitionEvent::~WebKitTransitionEvent):
+ (WebCore::WebKitTransitionEvent::initWebKitTransitionEvent):
+ (WebCore::WebKitTransitionEvent::propertyName):
+ (WebCore::WebKitTransitionEvent::elapsedTime):
+ * dom/WheelEvent.cpp:
+ (WebCore::WheelEvent::WheelEvent):
+ (WebCore::WheelEvent::initWheelEvent):
+ * dom/XMLTokenizerLibxml2.cpp:
+ * dom/XMLTokenizerQt.cpp:
+ * editing/DeleteButton.cpp:
+ (WebCore::DeleteButton::defaultEventHandler):
+ * editing/EditCommand.cpp:
+ * editing/Editor.cpp:
+ (WebCore::Editor::canDHTMLCut):
+ (WebCore::Editor::canDHTMLCopy):
+ (WebCore::Editor::canDHTMLPaste):
+ (WebCore::Editor::tryDHTMLCopy):
+ (WebCore::Editor::tryDHTMLCut):
+ (WebCore::Editor::tryDHTMLPaste):
+ (WebCore::dispatchEditableContentChangedEvents):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment):
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setFocused):
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::defaultEventHandler):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::parseMappedAttribute):
+ * html/HTMLButtonElement.cpp:
+ (WebCore::HTMLButtonElement::parseMappedAttribute):
+ (WebCore::HTMLButtonElement::defaultEventHandler):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseMappedAttribute):
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::onChange):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::handleLocalEvents):
+ (WebCore::HTMLFormElement::prepareSubmit):
+ (WebCore::HTMLFormElement::reset):
+ (WebCore::HTMLFormElement::parseMappedAttribute):
+ * html/HTMLFrameElementBase.cpp:
+ (WebCore::HTMLFrameElementBase::parseMappedAttribute):
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::parseMappedAttribute):
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::parseMappedAttribute):
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::dispatchLoadEvent):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::setValueFromRenderer):
+ (WebCore::HTMLInputElement::preDispatchEventHandler):
+ (WebCore::HTMLInputElement::postDispatchEventHandler):
+ (WebCore::HTMLInputElement::defaultEventHandler):
+ (WebCore::HTMLInputElement::onSearch):
+ * html/HTMLLabelElement.cpp:
+ (WebCore::HTMLLabelElement::defaultEventHandler):
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::load):
+ (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
+ (WebCore::HTMLMediaElement::setReadyState):
+ (WebCore::HTMLMediaElement::progressEventTimerFired):
+ (WebCore::HTMLMediaElement::seek):
+ (WebCore::HTMLMediaElement::setDefaultPlaybackRate):
+ (WebCore::HTMLMediaElement::setPlaybackRate):
+ (WebCore::HTMLMediaElement::play):
+ (WebCore::HTMLMediaElement::pause):
+ (WebCore::HTMLMediaElement::setVolume):
+ (WebCore::HTMLMediaElement::setMuted):
+ (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
+ (WebCore::HTMLMediaElement::documentWillBecomeInactive):
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+ * html/HTMLOptionElement.cpp:
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::parseMappedAttribute):
+ (WebCore::HTMLScriptElement::dispatchLoadEvent):
+ (WebCore::HTMLScriptElement::dispatchErrorEvent):
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::parseMappedAttribute):
+ (WebCore::HTMLSelectElement::defaultEventHandler):
+ (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
+ (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::parseMappedAttribute):
+ (WebCore::HTMLTextAreaElement::defaultEventHandler):
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::notifyFinished):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::stopLoading):
+ (WebCore::FrameLoader::canCachePage):
+ * loader/ImageDocument.cpp:
+ (WebCore::ImageEventListener::handleEvent):
+ * loader/ImageLoader.cpp:
+ * loader/MediaDocument.cpp:
+ (WebCore::MediaDocument::defaultEventHandler):
+ * loader/appcache/DOMApplicationCache.cpp:
+ (WebCore::DOMApplicationCache::callCheckingListener):
+ (WebCore::DOMApplicationCache::callErrorListener):
+ (WebCore::DOMApplicationCache::callNoUpdateListener):
+ (WebCore::DOMApplicationCache::callDownloadingListener):
+ (WebCore::DOMApplicationCache::callProgressListener):
+ (WebCore::DOMApplicationCache::callUpdateReadyListener):
+ (WebCore::DOMApplicationCache::callCachedListener):
+ * page/AccessibilityObject.cpp:
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::mouseButtonListener):
+ * page/ContextMenuController.cpp:
+ (WebCore::ContextMenuController::handleContextMenuEvent):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::on*): (multiple methods)
+ (WebCore::DOMWindow::setOn*): (multiple methods)
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::handleMouseDoubleClickEvent):
+ (WebCore::EventHandler::handleMouseMoveEvent):
+ (WebCore::EventHandler::handleMouseReleaseEvent):
+ (WebCore::EventHandler::updateDragAndDrop):
+ (WebCore::EventHandler::cancelDragAndDrop):
+ (WebCore::EventHandler::performDragAndDrop):
+ (WebCore::EventHandler::updateMouseEventTargetNode):
+ (WebCore::EventHandler::dispatchMouseEvent):
+ (WebCore::EventHandler::sendContextMenuEvent):
+ (WebCore::EventHandler::canMouseDownStartSelect):
+ (WebCore::EventHandler::canMouseDragExtendSelect):
+ (WebCore::EventHandler::defaultKeyboardEventHandler):
+ (WebCore::EventHandler::dragSourceMovedTo):
+ (WebCore::EventHandler::dragSourceEndedAt):
+ (WebCore::EventHandler::handleDrag):
+ (WebCore::EventHandler::handleTextInputEvent):
+ * page/FocusController.cpp:
+ * page/Frame.cpp:
+ (WebCore::Frame::sendResizeEvent):
+ (WebCore::Frame::sendScrollEvent):
+ * page/Page.cpp:
+ (WebCore::networkStateChanged):
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::updateStateMachine):
+ (WebCore::AnimationBase::animationTimerCallbackFired):
+ (WebCore::AnimationBase::primeEventTimers):
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::onAnimationEnd):
+ (WebCore::ImplicitAnimation::sendTransitionEvent):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::onAnimationStart):
+ (WebCore::KeyframeAnimation::onAnimationIteration):
+ (WebCore::KeyframeAnimation::onAnimationEnd):
+ (WebCore::KeyframeAnimation::sendAnimationEvent):
+ * page/gtk/EventHandlerGtk.cpp:
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::isKeyboardOptionTab):
+ * page/mac/FrameMac.mm:
+ * page/qt/EventHandlerQt.cpp:
+ (WebCore::isKeyboardOptionTab):
+ * plugins/PluginView.cpp:
+ * plugins/gtk/PluginViewGtk.cpp:
+ * plugins/qt/PluginViewQt.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::handleKeyboardEvent):
+ (WebCore::PluginView::handleMouseEvent):
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlMuteButtonElement::defaultEventHandler):
+ (WebCore::MediaControlPlayButtonElement::defaultEventHandler):
+ (WebCore::MediaControlSeekButtonElement::defaultEventHandler):
+ (WebCore::MediaControlTimelineElement::defaultEventHandler):
+ (WebCore::MediaControlFullscreenButtonElement::defaultEventHandler):
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::userResize):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollToOffset):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::valueChanged):
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::forwardEvent):
+ * rendering/RenderObject.cpp:
+ * rendering/RenderSlider.cpp:
+ (WebCore::HTMLSliderThumbElement::defaultEventHandler):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::forwardEvent):
+ (WebCore::RenderTextControl::selectionChanged):
+ * rendering/RenderWidget.cpp:
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerTextElement::defaultEventHandler):
+ (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
+ (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
+ * storage/LocalStorageArea.cpp:
+ (WebCore::LocalStorageArea::dispatchStorageEvent):
+ * storage/SessionStorageArea.cpp:
+ (WebCore::SessionStorageArea::dispatchStorageEvent):
+ * svg/SVGAElement.cpp:
+ (WebCore::SVGAElement::defaultEventHandler):
+ * svg/SVGDocument.cpp:
+ (WebCore::SVGDocument::dispatchZoomEvent):
+ (WebCore::SVGDocument::dispatchScrollEvent):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::parseMappedAttribute):
+ (WebCore::hasLoadListener):
+ (WebCore::SVGElement::sendSVGLoadEventIfPossible):
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::on*): (multiple methods)
+ (WebCore::SVGElementInstance::setOn*): (multiple methods)
+ * svg/SVGImageLoader.cpp:
+ (WebCore::SVGImageLoader::dispatchLoadEvent):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::parseMappedAttribute):
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::dispatchErrorEvent):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
+ (WebCore::XMLHttpRequest::dispatchAbortEvent):
+ (WebCore::XMLHttpRequest::dispatchErrorEvent):
+ (WebCore::XMLHttpRequest::dispatchLoadEvent):
+ (WebCore::XMLHttpRequest::dispatchLoadStartEvent):
+ (WebCore::XMLHttpRequest::dispatchProgressEvent):
+ * xml/XMLHttpRequestUpload.cpp:
+ (WebCore::XMLHttpRequestUpload::dispatchAbortEvent):
+ (WebCore::XMLHttpRequestUpload::dispatchErrorEvent):
+ (WebCore::XMLHttpRequestUpload::dispatchLoadEvent):
+ (WebCore::XMLHttpRequestUpload::dispatchLoadStartEvent):
+ (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
+ * xml/XPathResult.cpp:
+ (WebCore::XPathResult::XPathResult):
+ (WebCore::XPathResult::~XPathResult):
+ (WebCore::XPathResult::invalidateIteratorState):
+ Access event names via eventNames() function.
+
+2008-11-04 Cameron Zwarich <zwarich@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ Delete unused forwarding headers.
+
+ * ForwardingHeaders/kjs/Activation.h: Removed.
+ * ForwardingHeaders/kjs/Register.h: Removed.
+ * ForwardingHeaders/kjs/RegisterID.h: Removed.
+
+2008-11-04 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Fix stupid typo in previous build fix.
+
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+
+2008-11-03 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Fix the build for all non-Mac platforms.
+
+ * ForwardingHeaders/kjs/PropertyNameArray.h: Removed.
+ * ForwardingHeaders/runtime/PropertyNameArray.h: Copied from ForwardingHeaders/kjs/PropertyNameArray.h.
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+
+2008-11-03 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Fix the wxWindows build.
+
+ * bridge/c/c_instance.cpp:
+
+2008-11-03 Cameron Zwarich <zwarich@apple.com>
+
+ Rubber-stamped by Maciej Stachowiak.
+
+ Move more files into the runtime subdirectory of JavaScriptCore.
+
+ * ForwardingHeaders/kjs/ArgList.h: Removed.
+ * ForwardingHeaders/kjs/CollectorHeapIterator.h: Removed.
+ * ForwardingHeaders/kjs/ExecState.h: Removed.
+ * ForwardingHeaders/kjs/InitializeThreading.h: Removed.
+ * ForwardingHeaders/kjs/JSGlobalData.h: Removed.
+ * ForwardingHeaders/kjs/JSLock.h: Removed.
+ * ForwardingHeaders/kjs/SymbolTable.h: Removed.
+ * ForwardingHeaders/runtime/ArgList.h: Copied from ForwardingHeaders/kjs/ArgList.h.
+ * ForwardingHeaders/runtime/CollectorHeapIterator.h: Copied from ForwardingHeaders/kjs/CollectorHeapIterator.h.
+ * ForwardingHeaders/runtime/ExecState.h: Copied from ForwardingHeaders/kjs/ExecState.h.
+ * ForwardingHeaders/runtime/InitializeThreading.h: Copied from ForwardingHeaders/kjs/InitializeThreading.h.
+ * ForwardingHeaders/runtime/JSGlobalData.h: Copied from ForwardingHeaders/kjs/JSGlobalData.h.
+ * ForwardingHeaders/runtime/JSLock.h: Copied from ForwardingHeaders/kjs/JSLock.h.
+ * ForwardingHeaders/runtime/SymbolTable.h: Copied from ForwardingHeaders/kjs/SymbolTable.h.
+ * bindings/js/GCController.cpp:
+ * bindings/js/JSCustomPositionCallback.cpp:
+ * bindings/js/JSCustomPositionErrorCallback.cpp:
+ * bindings/js/JSCustomSQLStatementCallback.cpp:
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ * bindings/js/JSCustomVoidCallback.cpp:
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSEventCustom.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSNodeFilterCondition.cpp:
+ * bindings/js/ScheduledAction.cpp:
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptControllerMac.mm:
+ * bindings/objc/WebScriptObject.mm:
+ * bridge/NP_jsobject.cpp:
+ * bridge/c/c_class.cpp:
+ * bridge/c/c_instance.cpp:
+ * bridge/c/c_runtime.cpp:
+ * bridge/c/c_utility.cpp:
+ * bridge/jni/jni_class.cpp:
+ * bridge/jni/jni_instance.cpp:
+ * bridge/jni/jni_jsobject.mm:
+ * bridge/jni/jni_objc.mm:
+ * bridge/jni/jni_runtime.cpp:
+ * bridge/jni/jni_runtime.h:
+ * bridge/jni/jni_utility.cpp:
+ * bridge/npruntime.cpp:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/objc/objc_utility.mm:
+ * bridge/runtime.cpp:
+ * dom/Document.cpp:
+ * dom/Node.cpp:
+ * dom/NodeFilter.cpp:
+ * dom/NodeIterator.cpp:
+ * dom/TreeWalker.cpp:
+ * history/CachedPage.cpp:
+ * inspector/InspectorController.cpp:
+ * inspector/JavaScriptCallFrame.cpp:
+ * inspector/JavaScriptCallFrame.h:
+ * inspector/JavaScriptDebugServer.cpp:
+ * inspector/JavaScriptProfileNode.cpp:
+ * loader/FrameLoader.cpp:
+ * loader/icon/IconDatabase.cpp:
+ * page/Console.cpp:
+ * page/Page.cpp:
+ * page/mac/FrameMac.mm:
+ * plugins/PluginView.cpp:
+ * plugins/gtk/PluginViewGtk.cpp:
+ * plugins/qt/PluginViewQt.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ * storage/Database.cpp:
+ * xml/XMLHttpRequest.cpp:
+
+2008-11-03 Cameron Zwarich <zwarich@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Remove the forwarding header for FunctionCallProfile, because it was
+ renamed to ProfileNode in r33466.
+
+ * ForwardingHeaders/kjs/FunctionCallProfile.h: Removed.
+
+2008-11-03 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ https://bugs.webkit.org/show_bug.cgi?id=22026
+
+ When computing the bounds of the transparency layer, we need to
+ map the clipRect through the enclosing transform.
+
+ Test: fast/layers/opacity-transforms.html
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::transparencyClipBox):
+
+2008-11-03 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22053
+
+ Added additional support needed for the NPDrawingModelCoreAnimation drawing model.
+
+ * bridge/npapi.h:
+
+2008-11-03 Xan Lopez <xan@gnome.org>
+
+ Reviewed by Alp Toker.
+
+ Update parseDataUrl() function in the libsoup http backend with
+ the one from the curl backend which has recent correctness and crash
+ fixes.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::parseDataUrl):
+
+2008-11-03 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22041
+ Fix CURL crashes on the test suite
+
+ Fix segfault with setDefersLoading(). Do not call into curl when we
+ don't have a CURL handle.
+
+ It is attempted to defer the loading before the load has been
+ started (no curl handle was allocated yet). If that happens then
+ just remember that. ResourceHandleManager::startJob is already taking
+ care of this and in initResourceHandle the the downloading will
+ be paused if needed.
+
+ Fixes fast/loader/simultaneous-reloads-assert.html
+
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::ResourceHandle::setDefersLoading):
+
+2008-11-03 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22041
+ Fix CURL crashes on the test suite
+
+ Do not send "no data" to WebCore in parseDataUrl().
+
+ Fixes assert on fast/tokenizer/image-empty-crash.html
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::parseDataUrl):
+
+2008-11-02 Xan Lopez <xan@gnome.org>
+
+ Reviewed by Holger Freyther.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22009
+ HTML5 Video with GStreamer pulls gnome-vfs without using it
+
+ * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
+ Remove gnome-vfs include.
+
+2008-11-01 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Be sure to check the final URLs of requested resources to make sure we
+ don't get fooled by HTTP redirects.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21963
+
+ Tests: http/tests/security/xss-DENIED-xsl-document-redirect.xml
+ http/tests/security/xss-DENIED-xsl-external-entity-redirect.xml
+
+ * dom/XMLTokenizerLibxml2.cpp:
+ (WebCore::openFunc):
+ * loader/DocLoader.cpp:
+ (WebCore::DocLoader::canRequest):
+ (WebCore::DocLoader::requestResource):
+ * loader/DocLoader.h:
+ * xml/XSLTProcessor.cpp:
+ (WebCore::docLoaderFunc):
+
+2008-11-01 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22001
+ AtomicStringImpl* keys of event listener maps can outlive their strings
+
+ Test: fast/events/destroyed-atomic-string.html
+
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::addEventListener):
+ (WebCore::MessagePort::removeEventListener):
+ (WebCore::MessagePort::dispatchEvent):
+ * dom/MessagePort.h:
+ * loader/appcache/DOMApplicationCache.cpp:
+ (WebCore::DOMApplicationCache::addEventListener):
+ (WebCore::DOMApplicationCache::removeEventListener):
+ (WebCore::DOMApplicationCache::dispatchEvent):
+ * loader/appcache/DOMApplicationCache.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::addEventListener):
+ (WebCore::XMLHttpRequest::removeEventListener):
+ (WebCore::XMLHttpRequest::dispatchEvent):
+ * xml/XMLHttpRequest.h:
+ * xml/XMLHttpRequestUpload.cpp:
+ (WebCore::XMLHttpRequestUpload::addEventListener):
+ (WebCore::XMLHttpRequestUpload::removeEventListener):
+ (WebCore::XMLHttpRequestUpload::dispatchEvent):
+ * xml/XMLHttpRequestUpload.h:
+ Changed EventListenersMap to use AtomicString as key (instead of AtomicStringImpl*).
+
+2008-10-31 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21998
+ Use JSDOMGlobalObject in EventListener-related bindings
+
+ * dom/MessagePort.idl: Auto-generate bindings for onclose and onmessage.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Use JSDOMGlobalObject instead of JSDOMWindow in JS
+ bindings for inline event handlers.
+
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ (WebCore::JSDOMApplicationCache::addEventListener):
+ (WebCore::JSDOMApplicationCache::removeEventListener):
+ * bindings/js/JSEventTargetNodeCustom.cpp:
+ (WebCore::JSEventTargetNode::addEventListener):
+ (WebCore::JSEventTargetNode::removeEventListener):
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::removeEventListener):
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ (WebCore::JSSVGElementInstance::addEventListener):
+ (WebCore::JSSVGElementInstance::removeEventListener):
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::addEventListener):
+ (WebCore::JSXMLHttpRequest::removeEventListener):
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::addEventListener):
+ (WebCore::JSXMLHttpRequestUpload::removeEventListener):
+ Use ScriptExecutionContext and JSDOMGlobalObject in bindings.
+
+ * dom/EventTarget.h:
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::scriptExecutionContext):
+ * dom/EventTargetNode.h:
+ * dom/MessagePort.cpp:
+ * dom/MessagePort.h:
+ (WebCore::MessagePort::scriptExecutionContext):
+ * loader/appcache/DOMApplicationCache.cpp:
+ (WebCore::DOMApplicationCache::scriptExecutionContext):
+ * loader/appcache/DOMApplicationCache.h:
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::scriptExecutionContext):
+ * svg/SVGElementInstance.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::scriptExecutionContext):
+ * xml/XMLHttpRequest.h:
+ * xml/XMLHttpRequestUpload.cpp:
+ (WebCore::XMLHttpRequestUpload::scriptExecutionContext):
+ * xml/XMLHttpRequestUpload.h:
+ Remove associatedFrame() method, and provide scriptExecutionContext() where it wasn't
+ available yet.
+
+2008-10-31 Cameron Zwarich <zwarich@apple.com>
+
+ Rubber-stamped by Geoff Garen.
+
+ Rename SourceRange.h to SourceCode.h.
+
+ * ForwardingHeaders/kjs/SourceCode.h: Copied from ForwardingHeaders/kjs/SourceRange.h.
+ * ForwardingHeaders/kjs/SourceRange.h: Removed.
+ * bindings/js/StringSourceProvider.h:
+ * bridge/NP_jsobject.cpp:
+
+2008-10-31 Cameron Zwarich <zwarich@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Bug 22019: Move JSC::Interpreter::shouldPrintExceptions() to WebCore::Console
+ <https://bugs.webkit.org/show_bug.cgi?id=22019>
+
+ * WebCore.base.exp:
+ * page/Console.cpp:
+ (WebCore::printToStandardOut):
+ (WebCore::Console::shouldPrintExceptions):
+ (WebCore::Console::setShouldPrintExceptions):
+ * page/Console.h:
+
+2008-10-31 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - WebCore part of <rdar://problem/6334641> Add WebView SPI for disabling document.cookie
+
+ * dom/Document.cpp:
+ (WebCore::Document::cookie): Added checking if cookies are disabled.
+ (WebCore::Document::setCookie): Ditto.
+ * page/Navigator.cpp:
+ (WebCore::Navigator::cookieEnabled): Ditto.
+ * page/Page.cpp:
+ (WebCore::Page::Page): Initialize m_cookieEnabled to true.
+ * page/Page.h:
+ (WebCore::Page::cookieEnabled): Added.
+ (WebCore::Page::setCookieEnabled): Added.
+
+2008-10-31 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ WebCore Windows part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
+ https://bugs.webkit.org/show_bug.cgi?id=22008
+
+ * platform/FileChooser.cpp: (WebCore::FileChooser::chooseIcon):
+ Rename newIconForFile and newIconForFiles to createIconForFile and createIconForFiles.
+ * platform/graphics/Icon.h: ditto.
+ * platform/graphics/gtk/IconGtk.cpp:
+ (WebCore::Icon::createIconForFile): ditto.
+ (WebCore::Icon::createIconForFiles): ditto.
+ * platform/graphics/mac/IconMac.mm:
+ (WebCore::Icon::createIconForFile): ditto.
+ (WebCore::Icon::createIconForFiles): ditto.
+ * platform/graphics/qt/IconQt.cpp:
+ (WebCore::Icon::createIconForFile): ditto.
+ (WebCore::Icon::createIconForFiles): ditto.
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (Icon::createIconForFile): ditto.
+ (Icon::createIconForFiles): ditto.
+ * platform/graphics/win/IconWin.cpp:
+ (WebCore::Icon::createIconForFile): ditto.
+ (WebCore::Icon::createIconForFiles): Add creation of an icon for multiple files.
+
+ * rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
+ Improve icon creation code to match new code in Icon::createIconForFiles
+
+2008-10-31 Timothy Hatcher <timothy@apple.com>
+
+ Add manual tests that check breakpoints on a blockless body of "for" loops.
+
+ https://bugs.webkit.org/show_bug.cgi?id=22004
+
+ Reviewed by Darin Adler.
+
+ * manual-tests/inspector/debugger-pause-on-for-in-statements.html: Added.
+ * manual-tests/inspector/debugger-pause-on-for-statements.html: Added.
+
+2008-10-31 Darin Adler <darin@apple.com>
+
+ - fix build
+
+ * platform/win/WCDataObject.cpp: Added missing include of "config.h".
+
+2008-10-30 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21970
+ Make MessagePort event dispatch work in workers
+
+ * bindings/js/JSDOMGlobalObject.cpp:
+ (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData):
+ (WebCore::JSDOMGlobalObject::~JSDOMGlobalObject):
+ (WebCore::JSDOMGlobalObject::findJSEventListener):
+ (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
+ (WebCore::JSDOMGlobalObject::findJSUnprotectedEventListener):
+ (WebCore::JSDOMGlobalObject::findOrCreateJSUnprotectedEventListener):
+ (WebCore::JSDOMGlobalObject::jsEventListeners):
+ (WebCore::JSDOMGlobalObject::jsInlineEventListeners):
+ (WebCore::JSDOMGlobalObject::jsUnprotectedEventListeners):
+ (WebCore::JSDOMGlobalObject::jsUnprotectedInlineEventListeners):
+ (WebCore::JSDOMGlobalObject::setCurrentEvent):
+ (WebCore::JSDOMGlobalObject::currentEvent):
+ (WebCore::toJSDOMGlobalObject):
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
+ (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
+ (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
+ * bindings/js/JSDOMWindowBase.h:
+ Moved event listener tracking from JSDOMWindow to JSDOMGlobalObject.
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent):
+ (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
+ (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
+ (WebCore::JSUnprotectedEventListener::globalObject):
+ (WebCore::JSUnprotectedEventListener::clearGlobalObject):
+ (WebCore::JSEventListener::JSEventListener):
+ (WebCore::JSEventListener::~JSEventListener):
+ (WebCore::JSEventListener::globalObject):
+ (WebCore::JSEventListener::clearGlobalObject):
+ (WebCore::JSLazyEventListener::JSLazyEventListener):
+ (WebCore::JSLazyEventListener::parseCode):
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSUnprotectedEventListener::create):
+ (WebCore::JSEventListener::create):
+ (WebCore::JSLazyEventListener::create):
+ Changed to use JSDOMGlobalObject and ScriptExecutionContext.
+
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::startConversation):
+ (WebCore::JSMessagePort::addEventListener):
+ (WebCore::JSMessagePort::removeEventListener):
+ (WebCore::JSMessagePort::setOnmessage):
+ (WebCore::JSMessagePort::setOnclose):
+ Updated bindings to work with JSDOMGlobalObject. Next step is to make code generator emit
+ such code, and stop using a custom implementation for JSMessagePort inline event handler
+ getters and setters.
+
+ * dom/Document.cpp:
+ (WebCore::Document::virtualURL):
+ * dom/Document.h:
+ * dom/ScriptExecutionContext.h:
+ Expose url() method on ScriptExecutionContext (necessary for compiling scripts in
+ JSLazyEventListener).
+
+2008-10-31 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Speculative wxWindows build fix.
+
+ * webcore-base.bkl:
+
+2008-10-30 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Jon Homeycutt.
+
+ Explicitly default to building for only the native architecture in debug and release builds.
+
+ * Configurations/DebugRelease.xcconfig:
+
+2008-10-30 Cameron Zwarich <zwarich@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ Create a debugger directory in JavaScriptCore and move the relevant
+ files to it.
+
+ * ForwardingHeaders/debugger: Added.
+ * ForwardingHeaders/debugger/Debugger.h: Copied from ForwardingHeaders/kjs/debugger.h.
+ * ForwardingHeaders/debugger/DebuggerCallFrame.h: Copied from ForwardingHeaders/kjs/DebuggerCallFrame.h.
+ * ForwardingHeaders/kjs/DebuggerCallFrame.h: Removed.
+ * ForwardingHeaders/kjs/debugger.h: Removed.
+ * WebCore.pro:
+ * bindings/js/ScriptController.cpp:
+ * inspector/JavaScriptCallFrame.cpp:
+ * inspector/JavaScriptCallFrame.h:
+ * inspector/JavaScriptDebugServer.cpp:
+ * inspector/JavaScriptDebugServer.h:
+
+2008-10-30 Tony Chang <tony@chromium.org>
+
+ Fix 2 Windows theme bugs:
+ 1) Checkboxes marked readonly were rendered incorrectly
+ 2) If a button has focus and is pressed, it was rendered
+ as focused rather than pressed.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21859
+
+ Reviewed by Dave Hyatt.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::determineState):
+ (WebCore::RenderThemeWin::determineButtonState):
+
+2008-10-30 Benjamin K. Stuhl <bks24@cornell.edu>
+
+ gcc 4.3.3/linux-x86 generates "suggest parentheses around && within ||"
+ warnings; add some parentheses to disambiguate things. No functional
+ changes, so no tests.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21973
+ Add parentheses to clean up some gcc warnings
+
+ Reviewed by Dan Bernstein.
+
+ * platform/graphics/Font.h:
+ (WebCore::Font::treatAsZeroWidthSpace):
+
+2008-10-30 Aaron Boodman <aa@chromium.org>
+
+ Added an explicit dependency on HashMap.h. It was getting pulled in via
+ <kjs/identifier.h> in the case of JSC, causing errors for the Chromium port.
+
+ Reviewed by Darin Adler.
+
+ * platform/text/PlatformString.h:
+
+2008-10-30 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=21967
+
+ For some platforms the GeolocationService must be suspended and resumed.
+
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::clearWatch): now uses Geolocation::hasListeners()
+ (WebCore::Geolocation::suspend): calls GeolocationService::suspend() if there are listeners
+ (WebCore::Geolocation::resume): calls GeolocationService::resume() if there are listeners
+ (WebCore::Geolocation::geolocationServicePositionChanged): now uses Geolocation::hasListeners()
+ * page/Geolocation.h:
+ (WebCore::Geolocation::hasListeners): Indicates of the Geolocation has interested GeolocationService listeners
+ * platform/GeolocationService.h:
+ (WebCore::GeolocationService::suspend): empty implementation
+ (WebCore::GeolocationService::resume): empty implementation
+
+2008-10-30 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=21966
+
+ The Geolocation spec was updated on 10/27/2008. This brings WebCore up to date.
+ http://dev.w3.org/geo/api/spec-source.html
+
+ * page/Geolocation.cpp:
+ (WebCore::Geolocation::GeoNotifier::GeoNotifier): PositionOptions' timeout now unsigned
+ * page/Geoposition.cpp: velocity is now called speed
+ (WebCore::Geoposition::toString):
+ * page/Geoposition.h: velocity is now called speed
+ (WebCore::Geoposition::create):
+ (WebCore::Geoposition::speed):
+ (WebCore::Geoposition::Geoposition):
+ * page/Geoposition.idl: velocity is now called speed
+ * page/PositionOptions.h: timeout is now unsigned
+ (WebCore::PositionOptions::create):
+ (WebCore::PositionOptions::timeout):
+ (WebCore::PositionOptions::setTimeout):
+ (WebCore::PositionOptions::PositionOptions):
+ * page/PositionOptions.idl: timeout is now unsigned long
+
+2008-10-30 Justin Garcia <justin.garcia@apple.com>
+
+ Also handle preserved newlines.
+
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply):
+
+2008-10-30 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
+
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply):
+ Don't store the endingSelection() in selection, just call endingSelection() in the few places it's
+ needed. This function is cheap since it just returns a reference to a Selection instead of creating one.
+ Don't store an affinity. In the one place that it was used, isLastVisiblePositionInNode(VisiblePosition(pos, affinity), topBlockquote),
+ we now use visiblePos (in order to avoid VisiblePosition creation).
+ Set pos after we delete the current selection (if there is one), and be consistent about what we set
+ pos to. Before, we upstream()ed it if there was a selection to delete and left it alone otherwise. In fact...
+ ...we need to use downstream() for pos so that when a caret is at the boundary between two nodes, pos is
+ in the first node that we want to move. This fixes the bug, since it lets code that checks for the case
+ where the caret is between text and a br work correctly.
+
+2008-10-30 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Darin Adler.
+
+ Fix the Qt build.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21969
+
+ * inspector/front-end/WebKit.qrc:
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::context):
+ (WebCore::ImageBuffer::image):
+ (WebCore::ImageBuffer::toDataURL):
+
+2008-10-30 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Darin Adler.
+
+ More preparation for:
+ <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
+
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply): Added comments. Don't need to use newStartNode. If the
+ startNode needs to change, change it. Afterwords, check to make sure that it hasn't left topBlockquote.
+ This is slightly stricter than before, where we just made sure that it still had a topBlockquote. This
+ doesn't really fix a bug, since we can't really get into a situation where we move to a different
+ topBlockquote, but it simplifies the code.
+
+2008-10-30 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21883
+ [CAIRO] globalAlpha has to be stored and restored
+
+ Cairo's globalAlpha has to be stored and reloaded on calling
+ save() and restore(). We use the power of GraphicsContextState for this.
+
+ * platform/graphics/GraphicsContextPrivate.h:
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::getAlpha):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+
+2008-10-29 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Rename "attachedToEventTargetNode" to "isInline".
+
+ Inline (onXXX) attributes are used not just with event target nodes, but also with Window,
+ XMLHttpRequest, MessagePort et al.
+
+ Also renamed createHTMLEventHandler() (which was a leftover from earlier isHTMLEvent ->
+ attachedToEventTargetNode rename made for SVG) to createInlineEventListener().
+ And also renamed EventTargetNode, Document and Window "eventListenerForType" methods to
+ "inlineEventListenerForType", as they work with inline listeners.
+
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ (WebCore::JSDOMApplicationCache::addEventListener):
+ (WebCore::JSDOMApplicationCache::removeEventListener):
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::setOnmessage):
+ (WebCore::JSMessagePort::setOnclose):
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::addEventListener):
+ (WebCore::JSXMLHttpRequest::removeEventListener):
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::addEventListener):
+ (WebCore::JSXMLHttpRequestUpload::removeEventListener):
+ Pass a correct value for this argument - callers used to be confused, because they didn't
+ consider themselves event target nodes. This doesn't affect behavior however, as the only
+ difference between inline and non-inline event handlers is that the former treat
+ "return false" as "event.preventDefault()", which is not important to any of these objects.
+
+ * bindings/js/JSEventListener.cpp: (WebCore::JSLazyEventListener::parseCode):
+ Assert that isInline is true instead of checking its value, as the constructor of this class
+ always sets it to true.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
+ (WebCore::JSDOMWindowBase::findJSEventListener):
+ (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
+ (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
+ (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
+ (WebCore::JSDOMWindowBase::jsInlineEventListeners):
+ (WebCore::JSDOMWindowBase::jsUnprotectedInlineEventListeners):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent):
+ (WebCore::JSAbstractEventListener::isInline):
+ (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
+ (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
+ (WebCore::JSEventListener::JSEventListener):
+ (WebCore::JSEventListener::~JSEventListener):
+ (WebCore::JSLazyEventListener::parseCode):
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSAbstractEventListener::JSAbstractEventListener):
+ (WebCore::JSUnprotectedEventListener::create):
+ (WebCore::JSEventListener::create):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::createInlineEventHandler):
+ * bindings/js/ScriptController.h:
+ * dom/Document.cpp:
+ (WebCore::Document::setWindowInlineEventListenerForType):
+ (WebCore::Document::windowInlineEventListenerForType):
+ (WebCore::Document::removeWindowInlineEventListenerForType):
+ (WebCore::Document::createEventListener):
+ (WebCore::Document::setWindowInlineEventListenerForTypeAndAttribute):
+ * dom/Document.h:
+ * dom/EventListener.h:
+ (WebCore::EventListener::isInline):
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::removeInlineEventListenerForType):
+ (WebCore::EventTargetNode::setInlineEventListenerForType):
+ (WebCore::EventTargetNode::setInlineEventListenerForTypeAndAttribute):
+ (WebCore::EventTargetNode::inlineEventListenerForType):
+ (WebCore::EventTargetNode::on*): (many methods)
+ (WebCore::EventTargetNode::setOn*): (many methods)
+ * dom/EventTargetNode.h:
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::parseMappedAttribute):
+ * html/HTMLButtonElement.cpp:
+ (WebCore::HTMLButtonElement::parseMappedAttribute):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseMappedAttribute):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::parseMappedAttribute):
+ * html/HTMLFrameElementBase.cpp:
+ (WebCore::HTMLFrameElementBase::parseMappedAttribute):
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::parseMappedAttribute):
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::parseMappedAttribute):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::parseMappedAttribute):
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::parseMappedAttribute):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::parseMappedAttribute):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::mouseButtonListener):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::setInlineEventListenerForType):
+ (WebCore::DOMWindow::inlineEventListenerForType):
+ (WebCore::DOMWindow::on*): (many methods)
+ (WebCore::DOMWindow::setOn*): (many methods)
+ * page/DOMWindow.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::parseMappedAttribute):
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::on*): (many methods)
+ (WebCore::SVGElementInstance::setOn*): (many methods)
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::parseMappedAttribute):
+ Rename things, as described above.
+
+2008-10-29 Gustavo Noronha Silva <gns@gnome.org>
+
+ Reviewed and slightly changed by Holger Freyther.
+
+ Added all the files that need to be installed for the Inspector to
+ work.
+
+ * GNUmakefile.am: Invoke the shell to get the files.
+
+2008-10-29 Andrew Scherkus <scherkus@chromium.org>
+
+ Reviewed by Darin Adler
+
+ Add MediaPlayerPrivateChromium to MediaPlayer
+ https://bugs.webkit.org/show_bug.cgi?id=21930
+
+ * platform/graphics/MediaPlayer.cpp:
+
+2008-10-29 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Some preparation for:
+ <rdar://problem/6104369> Hitting return at the end of a quoted line creates an extraneous quoted line
+
+ Added an early return to avoid a level of if-nesting. No other changes. We probably don't
+ need to rebalance whitespace before the early return but for now don't risk any change in behavior
+ I'll revisit that later.
+
+ * editing/BreakBlockquoteCommand.cpp:
+ (WebCore::BreakBlockquoteCommand::doApply):
+
+2008-10-29 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes after addition of runtime and ImageBuffer changes.
+
+ * platform/graphics/wx/ImageBufferData.h: Added.
+ * platform/graphics/wx/ImageBufferWx.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::context):
+ * webcore-base.bkl:
+
+2008-10-29 Brett Wilson <brettw@chromium.org>
+
+ Reviewed by Darin Adler
+ https://bugs.webkit.org/attachment.cgi?id=24745
+
+ Allow Skia implementations to get text style changed notifications.
+
+ * platform/graphics/GraphicsContext.cpp:
+
+2008-10-29 Timothy Hatcher <timothy@apple.com>
+
+ Add a manual test that checks breakpoints on a blockless body of
+ an "else" statement.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21944
+
+ Reviewed by Maciej Stachowiak.
+
+ * manual-tests/inspector/debugger-pause-on-else-statements.html: Added.
+
+2008-10-29 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21921
+ MessagePort messages are dispatched to documents that are not fully active
+
+ Covered by corrected fast/events/message-port-inactive-document.html
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent): Don't dispatch messages to contexts
+ that are not fully active.
+
+2008-10-29 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21922
+ Expose MessagePort global constructor
+
+ Covered by existing dumper tests.
+
+ * dom/MessagePort.idl:
+ * page/DOMWindow.idl:
+
+2008-10-29 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21924
+ HashTable internal index is not always deleted
+
+ * bindings/js/JSDOMBinding.cpp: (WebCore::DOMObjectHashTableMap::~DOMObjectHashTableMap):
+ Call deleteTable for HashTables that are being deleted.
+
+2008-10-28 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21923
+ Create an abstraction for script execution context
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Added ScriptExecutionContext.{h,cpp}.
+
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::JSAudioConstructor):
+ * bindings/js/JSAudioConstructor.h:
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::JSImageConstructor):
+ * bindings/js/JSImageConstructor.h:
+ * bindings/js/JSOptionConstructor.cpp:
+ (WebCore::JSOptionConstructor::JSOptionConstructor):
+ * bindings/js/JSOptionConstructor.h:
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
+ * bindings/js/JSXMLHttpRequestConstructor.h:
+ Pass ScriptExecutionContext instead of Document to make getDOMConstructor() happy.
+ Since these objects can only work within documents now, it is immediately converted back
+ to Document.
+
+ * bindings/js/JSMessageChannelConstructor.cpp:
+ (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor):
+ (WebCore::JSMessageChannelConstructor::construct):
+ * bindings/js/JSMessageChannelConstructor.h:
+ (WebCore::JSMessageChannelConstructor::scriptExecutionContext):
+ MessageChannel needs to be supported in workers right away, so the constructor operates with
+ it directly.
+
+ * dom/ActiveDOMObject.cpp:
+ (WebCore::ActiveDOMObject::ActiveDOMObject):
+ (WebCore::ActiveDOMObject::~ActiveDOMObject):
+ (WebCore::ActiveDOMObject::contextDestroyed):
+ * dom/ActiveDOMObject.h:
+ (WebCore::ActiveDOMObject::scriptExecutionContext):
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::markActiveObjectsForContext):
+ (WebCore::markCrossHeapDependentObjectsForContext):
+ Use ScriptExecutionContext instead of Document, now that ActiveDOMObject and MessagePort
+ tracking is handled by ScriptExecutionContext.
+
+ * bindings/js/JSDOMBinding.h: (WebCore::getDOMPrototype): Moved to JSDOMGlobalObject.
+
+ * bindings/js/JSDOMGlobalObject.h:
+ (WebCore::getDOMConstructor): Moved to this file, as constructors live in JSDOMGlobalObject.
+ Also, the two-argument version that used to be in JSDOMWindowBase.cpp need to be accessible
+ to worker context implementation.
+ (WebCore::scriptExecutionContext): Added a pure virtual method to access
+ ScriptExecutionContext, implemented by subclasses.
+
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::scriptExecutionContext):
+ Implement by returning the associated document. Note that this method currently gives bogus
+ results after navigation - DOMWindow Frame reference is not zeroed out, so we get a document
+ that is currently in the frame, not the one associated with this window.
+
+ * bindings/js/JSDedicatedWorkerConstructor.cpp: Removed unnecessary include of DOMWindow.h.
+
+ * bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::mark):
+ Call markActiveObjectsForContext() by its new name.
+
+ * dom/DedicatedWorker.cpp:
+ (WebCore::DedicatedWorker::DedicatedWorker):
+ (WebCore::DedicatedWorker::document):
+ * dom/DedicatedWorker.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::document):
+ * xml/XMLHttpRequest.h:
+ Added a document() function that upcasts ScriptExecutionContext, as these objects only work
+ within documents currently (at least for XMLHttpRequest, this will change soon though).
+
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::~Document):
+ Moved active object and MessagePort tracking up to ScriptExecutionContext, to share code
+ with workers.
+
+ * dom/Document.h:
+ (WebCore::Document::isDocument):
+ (WebCore::Document::refScriptExecutionContext):
+ (WebCore::Document::derefScriptExecutionContext):
+ Inherit from ScriptExecutionContext.
+
+ * dom/MessageChannel.cpp:
+ (WebCore::MessageChannel::MessageChannel):
+ * dom/MessageChannel.h:
+ (WebCore::MessageChannel::create):
+ Use ScriptExecutionContext instead of Document.
+
+ * dom/MessagePort.cpp:
+ (WebCore::CloseMessagePortTimer::CloseMessagePortTimer): Make m_port a RefPtr, because
+ MessagePort doesn't ref() itself when posting this event any more (this is a fix for an
+ unrelated issue that was causing random crashes in layout tests).
+ (WebCore::MessagePort::MessagePort):
+ (WebCore::MessagePort::~MessagePort):
+ (WebCore::MessagePort::associatedFrame):
+ (WebCore::MessagePort::clone):
+ (WebCore::MessagePort::postMessage):
+ (WebCore::MessagePort::startConversation):
+ (WebCore::MessagePort::start):
+ (WebCore::MessagePort::contextDestroyed):
+ (WebCore::MessagePort::dispatchMessages):
+ * dom/MessagePort.h:
+ (WebCore::MessagePort::create):
+ (WebCore::MessagePort::scriptExecutionContext):
+ Use ScriptExecutionContext instead of Document. This is a step toward making MessagePort
+ work in worker contexts - we need to also make some its method thread safe for cross-thread
+ messaging, and make event dispatching thread safe.
+
+ * dom/ScriptExecutionContext.cpp: Added.
+ * dom/ScriptExecutionContext.h: Added.
+ ActiveDOMObject and MessagePort tracking is moved from Document.
+ It is debatable whether ScriptExecutionContext should be a parent of Document or DOMWindow,
+ but as I'm just moving Document code, and it is Document that is the main context object
+ in our implementation currently.
+ Changing ScriptExecutionContext to be a parent of DOMWindow causes a number of bugs that
+ seem non-trivial to fix, and isn't really a part of this task.
+
+2008-10-28 Alp Toker <alp@nuanti.com>
+
+ List newly-added ImageBufferData.h in build system.
+
+ * GNUmakefile.am:
+
+2008-10-28 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Cameron Zwarich.
+
+ De-list unused WebCore ForwardingHeaders to fix the dist target.
+
+ * GNUmakefile.am:
+
+2008-10-28 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Attempt to fix the Windows build by generating Forwardingheaders for the
+ runtime directory in JavaScriptCore.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-28 Justin Garcia <justin.garcia@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/5188560> REGRESSION: Spell checker doesn't clear spelling/grammar marker after error is marked as Ignored
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::ignoreSpelling): Remove misspelling markers from the word.
+ (WebCore::Editor::learnSpelling): Added a FIXME about <rdar://problem/5396072>, which
+ will probably require a change more complicated than just marking the learned word as
+ misspelled. I'll address it with a separate patch.
+ * editing/EditorCommand.cpp:
+ (WebCore::executeIgnoreSpelling): Added.
+ (WebCore::CommandEntry::): Added an entry for IgnoreSpelling.
+
+2008-10-28 Cameron Zwarich <zwarich@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ Move ForwardingHeaders to their correct location after the creation of
+ the runtime directory in JavaScriptCore.
+
+ * ForwardingHeaders/kjs/ArrayPrototype.h: Removed.
+ * ForwardingHeaders/kjs/BooleanObject.h: Removed.
+ * ForwardingHeaders/kjs/CallData.h: Removed.
+ * ForwardingHeaders/kjs/ConstructData.h: Removed.
+ * ForwardingHeaders/kjs/DateInstance.h: Removed.
+ * ForwardingHeaders/kjs/Error.h: Removed.
+ * ForwardingHeaders/kjs/FunctionConstructor.h: Removed.
+ * ForwardingHeaders/kjs/FunctionPrototype.h: Removed.
+ * ForwardingHeaders/kjs/InternalFunction.h: Removed.
+ * ForwardingHeaders/kjs/JSArray.h: Removed.
+ * ForwardingHeaders/kjs/JSFunction.h: Removed.
+ * ForwardingHeaders/kjs/JSGlobalObject.h: Removed.
+ * ForwardingHeaders/kjs/JSNumberCell.h: Removed.
+ * ForwardingHeaders/kjs/JSObject.h: Removed.
+ * ForwardingHeaders/kjs/JSString.h: Removed.
+ * ForwardingHeaders/kjs/JSValue.h: Removed.
+ * ForwardingHeaders/kjs/ObjectPrototype.h: Removed.
+ * ForwardingHeaders/kjs/PropertyMap.h: Removed.
+ * ForwardingHeaders/kjs/PrototypeFunction.h: Removed.
+ * ForwardingHeaders/kjs/StringObject.h: Removed.
+ * ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h: Removed.
+ * ForwardingHeaders/kjs/StringPrototype.h: Removed.
+ * ForwardingHeaders/kjs/StructureID.h: Removed.
+ * ForwardingHeaders/runtime: Added.
+ * ForwardingHeaders/runtime/ArrayPrototype.h: Copied from ForwardingHeaders/kjs/ArrayPrototype.h.
+ * ForwardingHeaders/runtime/BooleanObject.h: Copied from ForwardingHeaders/kjs/BooleanObject.h.
+ * ForwardingHeaders/runtime/CallData.h: Copied from ForwardingHeaders/kjs/CallData.h.
+ * ForwardingHeaders/runtime/ConstructData.h: Copied from ForwardingHeaders/kjs/ConstructData.h.
+ * ForwardingHeaders/runtime/DateInstance.h: Copied from ForwardingHeaders/kjs/DateInstance.h.
+ * ForwardingHeaders/runtime/Error.h: Copied from ForwardingHeaders/kjs/Error.h.
+ * ForwardingHeaders/runtime/FunctionConstructor.h: Copied from ForwardingHeaders/kjs/FunctionConstructor.h.
+ * ForwardingHeaders/runtime/FunctionPrototype.h: Copied from ForwardingHeaders/kjs/FunctionPrototype.h.
+ * ForwardingHeaders/runtime/InternalFunction.h: Copied from ForwardingHeaders/kjs/InternalFunction.h.
+ * ForwardingHeaders/runtime/JSArray.h: Copied from ForwardingHeaders/kjs/JSArray.h.
+ * ForwardingHeaders/runtime/JSFunction.h: Copied from ForwardingHeaders/kjs/JSFunction.h.
+ * ForwardingHeaders/runtime/JSGlobalObject.h: Copied from ForwardingHeaders/kjs/JSGlobalObject.h.
+ * ForwardingHeaders/runtime/JSNumberCell.h: Copied from ForwardingHeaders/kjs/JSNumberCell.h.
+ * ForwardingHeaders/runtime/JSObject.h: Copied from ForwardingHeaders/kjs/JSObject.h.
+ * ForwardingHeaders/runtime/JSString.h: Copied from ForwardingHeaders/kjs/JSString.h.
+ * ForwardingHeaders/runtime/JSValue.h: Copied from ForwardingHeaders/kjs/JSValue.h.
+ * ForwardingHeaders/runtime/ObjectPrototype.h: Copied from ForwardingHeaders/kjs/ObjectPrototype.h.
+ * ForwardingHeaders/runtime/PropertyMap.h: Copied from ForwardingHeaders/kjs/PropertyMap.h.
+ * ForwardingHeaders/runtime/PrototypeFunction.h: Copied from ForwardingHeaders/kjs/PrototypeFunction.h.
+ * ForwardingHeaders/runtime/StringObject.h: Copied from ForwardingHeaders/kjs/StringObject.h.
+ * ForwardingHeaders/runtime/StringObjectThatMasqueradesAsUndefined.h: Copied from ForwardingHeaders/kjs/StringObjectThatMasqueradesAsUndefined.h.
+ * ForwardingHeaders/runtime/StringPrototype.h: Copied from ForwardingHeaders/kjs/StringPrototype.h.
+ * ForwardingHeaders/runtime/StructureID.h: Copied from ForwardingHeaders/kjs/StructureID.h.
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ * bindings/js/JSClipboardCustom.cpp:
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/JSCustomPositionCallback.h:
+ * bindings/js/JSCustomPositionErrorCallback.h:
+ * bindings/js/JSCustomSQLStatementCallback.h:
+ * bindings/js/JSCustomSQLStatementErrorCallback.h:
+ * bindings/js/JSCustomSQLTransactionErrorCallback.h:
+ * bindings/js/JSCustomVoidCallback.h:
+ * bindings/js/JSCustomXPathNSResolver.h:
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMGlobalObject.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSDOMWindowShell.cpp:
+ * bindings/js/JSDatabaseCustom.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventTarget.h:
+ * bindings/js/JSHTMLDocumentCustom.cpp:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+ * bindings/js/JSNodeFilterCondition.h:
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ * bindings/objc/WebScriptObject.mm:
+ * bindings/objc/WebScriptObjectPrivate.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+ * bridge/c/c_instance.cpp:
+ * bridge/c/c_utility.cpp:
+ * bridge/c/c_utility.h:
+ * bridge/jni/jni_instance.cpp:
+ * bridge/jni/jni_jsobject.h:
+ * bridge/jni/jni_jsobject.mm:
+ * bridge/jni/jni_runtime.cpp:
+ * bridge/jni/jni_utility.cpp:
+ * bridge/jni/jni_utility.h:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/objc/objc_utility.h:
+ * bridge/objc/objc_utility.mm:
+ * bridge/runtime.h:
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.cpp:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ * bridge/runtime_object.h:
+ * bridge/runtime_root.cpp:
+ * inspector/JavaScriptCallFrame.cpp:
+ * inspector/JavaScriptProfile.cpp:
+ * inspector/JavaScriptProfile.h:
+ * inspector/JavaScriptProfileNode.cpp:
+ * inspector/JavaScriptProfileNode.h:
+ * loader/FrameLoader.cpp:
+ * page/Console.cpp:
+ * plugins/PluginView.cpp:
+ * plugins/gtk/PluginViewGtk.cpp:
+ * plugins/qt/PluginViewQt.cpp:
+ * plugins/win/PluginViewWin.cpp:
+
+2008-10-28 Adele Peterson <adele@apple.com>
+
+ Windows build fix. This removes Cairo include directories from non-Cairbo build configurations.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-28 Adele Peterson <adele@apple.com>
+
+ Windows build fix.
+
+ * platform/graphics/ImageBuffer.h:
+ (WebCore::ImageBuffer::create):
+
+2008-10-28 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Roll out a mistaken attempt at fixing the GTK build in r37947.
+
+ * GNUmakefile.am:
+
+2008-10-28 Adele Peterson <adele@apple.com>
+
+ Reviewed by John Sullivan.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21880
+ "files" string for multifile uploads needs to be localized
+
+ * page/mac/WebCoreViewFactory.h:
+ * platform/LocalizedStrings.h:
+ * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth):
+ * platform/gtk/LocalizedStringsGtk.cpp: (WebCore::multipleFileUploadText):
+ * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth):
+ * platform/mac/LocalizedStringsMac.mm: (WebCore::multipleFileUploadText):
+ * platform/qt/Localizations.cpp: (WebCore::multipleFileUploadText):
+ * platform/wx/LocalizedStringsWx.cpp: (WebCore::multipleFileUploadText):
+
+2008-10-28 Brett Wilson <brettw@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21816
+
+ Remove platform ifdefs in ImageBuffer.h by moving platform specific code
+ into a new PlatformImageBuffer class. Move the static create function
+ into the header because it can be cross-platform. Initialization now
+ happens in the cunstructor which sets a flag that create uses to know
+ whether it should return null or not. I also made passing of IntSize
+ more consistent (always by reference).
+
+ This change also changes the ifdefs in GraphicsContext to allow Skia
+ ports to implement text drawing modes.
+
+ * platform/graphics/ImageBuffer.h:
+ (WebCore::ImageBuffer::create):
+ (WebCore::ImageBuffer::size):
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::~ImageBuffer):
+ (WebCore::ImageBuffer::image):
+ (WebCore::ImageBuffer::getImageData):
+ (WebCore::ImageBuffer::putImageData):
+ * platform/graphics/cairo/ImageBufferData.h:
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::~ImageBuffer):
+ (WebCore::ImageBuffer::getImageData):
+ (WebCore::ImageBuffer::putImageData):
+ * platform/graphics/cg/ImageBufferData.h:
+ * platform/graphics/qt/ImageBufferData.h:
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBufferData::ImageBufferData):
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::~ImageBuffer):
+
+2008-10-28 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Fix the GTK build.
+
+ * GNUmakefile.am:
+
+2008-10-28 Cameron Zwarich <zwarich@apple.com>
+
+ Not reviewed.
+
+ Another Qt build fix.
+
+ * WebCore.pro:
+
+2008-10-28 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by David Kilzer.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21932
+ Add non-pointer constant lookups to SoftLinking.h
+
+ * platform/mac/SoftLinking.h:
+
+2008-10-28 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by David Kilzer.
+
+ https://bugs.webkit.org/show_bug.cgi?id=2192
+ Missing semi-colons in Geoposition.idl
+
+ * page/Geoposition.idl: Add missing semi-colons
+
+2008-10-28 Timothy Hatcher <timothy@apple.com>
+
+ Make the Profiles panel in the Web Inspector have an enable screen.
+ Profiling now needs to be enabled before console.profile() works.
+
+ <rdar://problem/6211578> Make the JavaScript profiler opt-in, so it does
+ not slow down JavaScript all the time
+
+ Reviewed by Darin Adler and Kevin McCullough.
+
+ * English.lproj/localizedStrings.js: New strings.
+ * WebCore.base.exp: New and changed exports.
+ * WebCore.vcproj/WebCore.vcproj: Add the PanelEnablerView.js file.
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::supportsProfiling): Call InspectorController:profilerEnabled.
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController): Initialize the m_startProfiling
+ Timer to call InspectorController::startUserInitiatedProfiling.
+ (WebCore::InspectorController::startUserInitiatedProfilingSoon): Start a one-shot timer
+ that calls InspectorController::startUserInitiatedProfiling.
+ (WebCore::InspectorController::startUserInitiatedProfiling): Recompile all JavaScript
+ and enable the profiler if the profiler was not enabled.
+ (WebCore::InspectorController::stopUserInitiatedProfiling): Rearrange code for readability.
+ (WebCore::InspectorController::enableProfiler): Recompile all the JavaScript functions
+ if the skipRecompile argument is false. Call the profilerWasEnabled script function.
+ (WebCore::InspectorController::disableProfiler): Recompile all the JavaScript functions.
+ Call the profilerWasEnabled script function.
+ (WebCore::InspectorController::disableDebugger): Set m_attachDebuggerWhenShown to false,
+ so it won't be started later.
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::profilerEnabled): Return enabled() && m_profilerEnabled.
+ * inspector/front-end/Images/debuggingButtons.png: Remove.
+ * inspector/front-end/Images/enableButtons.png: Added.
+ * inspector/front-end/Images/profilesSilhouette.png: Added.
+ * inspector/front-end/Images/scriptsSilhouette.png: Added.
+ * inspector/front-end/PanelEnablerView.js: Added.
+ (WebInspector.PanelEnablerView):
+ (WebInspector.PanelEnablerView.prototype._enableButtonCicked): Fire the "enable clicked"
+ event so listeners can do their thing.
+ (WebInspector.PanelEnablerView.prototype._windowResized): Test if the icon should be hidden.
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel): Create the PanelEnablerView and the strings needed for it.
+ (WebInspector.ProfilesPanel.prototype.get statusBarItems): Include the enableToggleButton.
+ (WebInspector.ProfilesPanel.prototype.profilerWasEnabled): Call reset and populateInterface.
+ (WebInspector.ProfilesPanel.prototype.profilerWasDisabled): Call reset.
+ (WebInspector.ProfilesPanel.prototype.reset): Call _updateInterface.
+ (WebInspector.ProfilesPanel.prototype.setRecordingProfile): Moved in the code, no changes.
+ (WebInspector.ProfilesPanel.prototype._updateInterface): Update the toggle button and
+ show/hide other buttons. Also show/hide the PanelEnablerView.
+ (WebInspector.ProfilesPanel.prototype._enableProfiling): Call _toggleProfiling if not enabled.
+ (WebInspector.ProfilesPanel.prototype._toggleProfiling): Call InspectorController's
+ disableProfiler or enableProfiler.
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel): Replace the overlay element with a PanelEnablerView. Replace the
+ debuggingButton with the enableToggleButton.
+ (WebInspector.ScriptsPanel.prototype.get statusBarItems): Replace the debuggingButton with
+ the enableToggleButton.
+ (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): Hide/show the pauseOnExceptionButton
+ when needed. Replace the overlay element with a PanelEnablerView. Replace the debuggingButton
+ with the enableToggleButton.
+ (WebInspector.ScriptsPanel.prototype._enableDebugging): Call _toggleDebugging when not enabled.
+ (WebInspector.ScriptsPanel.prototype._toggleDebugging): Remove the call to _clearInterface,
+ since reset is called from debuggerWasEnabled and debuggerWasDisabled.
+ * inspector/front-end/View.js: Inherit from WebInspector.Object.
+ * inspector/front-end/WebKit.qrc: Add the PanelEnablerView.js file.
+ * inspector/front-end/inspector.css: New styles for the PanelEnablerView.
+ * inspector/front-end/inspector.html: Add the PanelEnablerView.js file.
+ * inspector/front-end/inspector.js:
+ (WebInspector.profilerWasEnabled): Added. Calls the ProfilesPanel.
+ (WebInspector.profilerWasDisabled): Ditto.
+ * page/Console.cpp:
+ (WebCore::Console::error): Remove null check for m_frame, since m_frame isn't used.
+ (WebCore::Console::info): Ditto.
+ (WebCore::Console::log): Ditto.
+ (WebCore::Console::assertCondition): Ditto.
+ (WebCore::Console::dirxml): Remove null check for m_frame and use this->page().
+ (WebCore::Console::count): Ditto.
+ (WebCore::Console::profile): Return early if InspectorController::profilerEnabled is false.
+ (WebCore::Console::profileEnd): Ditto.
+ (WebCore::Console::warn): Remove null check for m_frame, since m_frame isn't used.
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Remove initialization of m_didInitializeDeveloperExtrasEnabled.
+ (WebCore::Settings::setDeveloperExtrasEnabled): Remove code that recompiled functions.
+ Now just sets the member boolean.
+ * page/Settings.h: Remove m_didInitializeDeveloperExtrasEnabled.
+
+2008-10-28 Timothy Hatcher <timothy@apple.com>
+
+ Rename a few methods related to attaching and detaching the debugger. Also
+ adds stub methods for enabling and disabling the profiler.
+
+ * Rename attachDebugger to enableDebugger.
+ * Rename detachDebugger to disableDebugger.
+ * Rename the debuggerAttached getter to debuggerEnabled.
+ * Rename the debuggerAttached callback to debuggerWasEnabled.
+ * Rename the debuggerDetached callback to debuggerWasDisabled.
+
+ Reviewed by Darin Adler.
+
+ * WebCore.base.exp:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::setWindowVisible):
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ (WebCore::InspectorController::close):
+ (WebCore::InspectorController::enableProfiler):
+ (WebCore::InspectorController::disableProfiler):
+ (WebCore::InspectorController::enableDebugger):
+ (WebCore::InspectorController::disableDebugger):
+ (WebCore::InspectorController::pauseInDebugger):
+ (WebCore::InspectorController::resumeDebugger):
+ (WebCore::InspectorController::stepOverStatementInDebugger):
+ (WebCore::InspectorController::stepIntoStatementInDebugger):
+ (WebCore::InspectorController::stepOutOfFunctionInDebugger):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::profilerEnabled):
+ (WebCore::InspectorController::debuggerEnabled):
+ * inspector/front-end/BreakpointsSidebarPane.js:
+ (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint):
+ (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint):
+ (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged):
+ * inspector/front-end/Object.js:
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype.get statusBarItems):
+ (WebInspector.ScriptsPanel.prototype.debuggerWasEnabled):
+ (WebInspector.ScriptsPanel.prototype.debuggerWasDetached):
+ (WebInspector.ScriptsPanel.prototype.reset):
+ (WebInspector.ScriptsPanel.prototype.canShowResource):
+ (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton):
+ (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons):
+ (WebInspector.ScriptsPanel.prototype._toggleDebugging):
+ * inspector/front-end/View.js:
+ * inspector/front-end/inspector.css:
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/inspector.js:
+ (WebInspector.addResource):
+ (WebInspector.debuggerWasEnabled):
+ (WebInspector.debuggerWasDisabled):
+
+2008-10-28 Timothy Hatcher <timothy@apple.com>
+
+ Fix an exception when searching the Resources panel while there
+ and resources queued to be added to the list.
+
+ Reviewed by Kevin McCullough.
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.searchCanceled): Null check
+ the _resourcesTreeElement property.
+ (WebInspector.ResourcesPanel.prototype.performSearch): Ditto.
+
+2008-10-28 Alp Toker <alp@nuanti.com>
+
+ GTK+ build fix for older versions of Pango where PANGO_VERSION_CHECK
+ isn't defined.
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::getDefaultPangoLayout):
+ * platform/graphics/gtk/FontPlatformDataPango.cpp:
+
+2008-10-28 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21893
+ Character set is incorrect for external scripts in XHTML pages
+
+ <rdar://problem/6317451> Incorrect encoding for text in a popup at http://xpoint.ru/
+
+ Test: fast/encoding/external-script-charset.xhtml
+
+ Expose scriptCharset() function on all ScriptElements, and call it from XML tokenizer.
+
+ * dom/ScriptElement.h:
+ * dom/XMLTokenizerLibxml2.cpp:
+ (WebCore::XMLTokenizer::endElementNs):
+ * dom/XMLTokenizerQt.cpp:
+ (WebCore::XMLTokenizer::parseEndElement):
+ * html/HTMLScriptElement.h:
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::scriptCharset):
+ * svg/SVGScriptElement.h:
+
+2008-10-28 Alp Toker <alp@nuanti.com>
+
+ Include copyright license files in the autotools dist target and
+ exclude unused zlib headers.
+
+ Change suggested by Mike Hommey.
+
+ * GNUmakefile.am:
+
+2008-10-27 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Clear the window shell when destroying a page to allow documents
+ which have no way of being reached anymore, to be torn down.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::pageDestroyed):
+
+2008-10-27 Kevin Watters <kevinwatters@gmail.com>
+
+ Reviewed by Kevin Ollivier.
+
+ Update the active state as well as the focused state as both need to be true
+ for the caret to be drawn.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21900
+
+ * WebView.cpp:
+ (wxWebView::OnSetFocus):
+ (wxWebView::OnKillFocus):
+
+2008-10-27 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix on Linux/GTK. Enable support for #include <JavaScriptCore/XYZ.h> style includes.
+
+ * webcore-wx.bkl:
+
+2008-10-27 Michael Knaup <michael.knaup@mac.com>
+
+ Reviewed and tweaked by Darin Adler.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=8988
+
+ Bug 8988: Add support for Mozilla CSS custom cursors.
+ Added -webkit-grab and -webkit-grabbing cursor suppport
+ for the Mac, dummy implementations for other platforms.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Updated since the
+ -webkit-grabbing cursor is now the last one.
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added
+ CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
+
+ * css/CSSValueKeywords.in: Added -webkit-grab and
+ -webkit-grabbing.
+
+ * manual-tests/cursor.html: Added -webkit-zoom-in,
+ webkit-zoom-out, -webkit-grab, and -webkit-grabbing.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectCursor): Added
+ CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
+
+ * platform/Cursor.h: Added grabCursor and grabbingCursor.
+
+ * platform/gtk/CursorGtk.cpp:
+ (WebCore::grabCursor): Added.
+ (WebCore::grabbingCursor): Added.
+ * platform/mac/CursorMac.mm:
+ (WebCore::grabCursor): Added.
+ (WebCore::grabbingCursor): Added.
+ * platform/qt/CursorQt.cpp:
+ (WebCore::grabCursor): Added.
+ (WebCore::grabbingCursor): Added.
+ * platform/win/CursorWin.cpp:
+ (WebCore::grabCursor): Added.
+ (WebCore::grabbingCursor): Added.
+ * platform/wx/CursorWx.cpp:
+ (WebCore::grabCursor): Added.
+ (WebCore::grabbingCursor): Added.
+
+ * rendering/style/RenderStyleConstants.h:
+ Added CURSOR_WEBKIT_GRAB and CURSOR_WEBKIT_GRABBING.
+ Also broke ECursor out into a single constant per line.
+ Also added a couple of comments.
+
+2008-10-27 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ * svg/SVGAnimatedTemplate.h: needed a HashMap define
+
+2008-10-21 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Dave Hyatt.
+
+ Infinite recursion crash in WebCore::RenderSVGRoot::absoluteClippedOverflowRect on a <stop> element outside of a gradient block
+ https://bugs.webkit.org/show_bug.cgi?id=20400
+
+ Test: svg/custom/stop-crash.svg
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/RenderSVGGradientStop.h:
+ (WebCore::RenderSVGGradientStop::absoluteClippedOverflowRect):
+
+2008-10-27 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ No need to call release if the connection is null.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::start):
+
+2008-10-27 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Kevin Decker.
+
+ <rdar://problem/6322650> Crash in fast/loader/simultaneous-reloads-assert.html
+
+ Make sure to null check the NSURLConnection object.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::setDefersLoading):
+
+2008-10-27 Alexey Proskuryakov <ap@webkit.org>
+
+ Fix non-Mac builds.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCoreSources.bkl:
+ Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
+
+2008-10-26 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21886
+ window.HTMLOptionElement == "[object HTMLElementConstructor]" instead of HTMLOptionElementConstructor
+
+ Test: fast/dom/HTMLOptionElement/option-prototype.html
+
+ We now have separate objects for window.Option and window.HTMLOptionElement - the latter
+ "constructor" cannot be used to construct anything. This matches Firefox behavior.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (jsDOMWindowBaseOption):
+ * bindings/js/JSHTMLOptionElementConstructor.cpp: Removed.
+ * bindings/js/JSHTMLOptionElementConstructor.h: Removed.
+ * bindings/js/JSOptionConstructor.cpp: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.cpp.
+ * bindings/js/JSOptionConstructor.h: Copied from WebCore/bindings/js/JSHTMLOptionElementConstructor.h.
+ * html/HTMLOptionElement.idl:
+ Renamed JSHTMLOptionElementConstructor to JSOptionConstructor.
+
+ * html/HTMLOptionElement.idl: Generate a constructor.
+
+2008-10-25 Geoffrey Garen <ggaren@apple.com>
+
+ Not reviewed.
+
+ Try to fix Mac debug build on the buildbot.
+
+ * platform/FileChooser.cpp:
+ (WebCore::FileChooserClient::~FileChooserClient):
+ * platform/FileChooser.h: Moved destructor to .cpp file, to avoid a
+ weak exported symbol.
+
+2008-10-25 Jade Han <jade.han@nokia.com>
+
+ Reviewed by Anders.
+
+ Enable custom properties for Qt runtime objects in QtWebKit
+
+ https://bugs.webkit.org/show_bug.cgi?id=21813
+
+ * bridge/runtime_object.cpp:
+ (JSC::RuntimeObjectImp::getOwnPropertySlot):
+ (JSC::RuntimeObjectImp::put):
+
+2008-10-24 Sam Weinig <sam@webkit.org>
+
+ Fix windows build.
+
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+
+2008-10-24 Sam Weinig <sam@webkit.org>
+
+ Fix Qt build.
+
+ * platform/qt/FileChooserQt.cpp:
+
+2008-10-24 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=21759
+ Layering violation: FileChooser should not depend on Document/Frame/Page
+
+ Move file choosing into WebKit ChromeClient.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::runOpenPanel):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::runOpenPanel):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/mac/ChromeMac.mm:
+ * platform/FileChooser.h:
+ * platform/mac/FileChooserMac.mm:
+ * platform/qt/FileChooserQt.cpp:
+ * platform/win/FileChooserWin.cpp:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::click):
+
+2008-10-24 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix - add newIconForFiles stub.
+
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (Icon::newIconForFiles):
+
+2008-10-24 Kevin Watters <kevinwatters@gmail.com>
+
+ Reviewed by Kevin Ollivier.
+
+ Use the CGFont metrics APIs for more accurate measurements, and tweak the y
+ value the text is drawn at (it was a couple pixels off before because wx
+ internally adds to the y value.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21853
+
+ * platform/wx/wxcode/mac/carbon/fontprops.cpp:
+ (wxFontProperties::wxFontProperties):
+ * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
+ (WebCore::drawTextWithSpacing):
+
+2008-10-24 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Generate missing constructors and add test to prevent missing ones in the future
+ https://bugs.webkit.org/show_bug.cgi?id=21846
+
+ Test: fast/js/global-constructors.html
+
+ * css/CSSStyleSheet.idl:
+ * css/RGBColor.idl:
+ * dom/NodeIterator.idl:
+ * dom/TreeWalker.idl:
+ * xml/XPathExpression.idl:
+
+2008-10-24 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21836
+ REGRESSION: Sign-in on Fancast.com causes crash in Webkit nightly
+
+ Test: http/tests/xmlhttprequest/detaching-frame.html
+
+ * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::dropProtection): Null check the window -
+ even though XHR needs a context (AKA frame) to be serviced, the frame may be disconnected
+ when dispatching the same callback that results in this function being called.
+
+2008-10-24 David Kilzer <ddkilzer@apple.com>
+
+ Gtk build fix.
+
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
+
+2008-10-24 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ <rdar://problem/6164952> Use constant kCGInterpolationMedium in GraphicsContextCG.cpp rather than hard-coded values.
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+
+2008-10-24 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ <rdar://problem/5440917> Support NPN_Construct
+
+ * WebCore.NPAPI.exp:
+ Export _NPN_Construct.
+
+ * bridge/NP_jsobject.cpp:
+ (_NPN_Construct):
+ Implement this.
+
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CInstance::supportsConstruct):
+ (JSC::Bindings::CInstance::invokeConstruct):
+ Have this call the appropriate NPClass method.
+
+ * bridge/npruntime.h:
+ Add NPN_Construct.
+
+ * bridge/npruntime_impl.h:
+ Add _NPN_Construct.
+
+ * bridge/runtime.h:
+ (JSC::Bindings::Instance::supportsConstruct):
+ (JSC::Bindings::Instance::invokeConstruct):
+ New methods.
+
+ * bridge/runtime_object.cpp:
+ (JSC::callRuntimeConstructor):
+ Call the native instance.
+
+ (JSC::RuntimeObjectImp::getConstructData):
+ Implement this.
+
+ * bridge/runtime_object.h:
+ Add new method declarations.
+
+ * plugins/gtk/PluginPackageGtk.cpp:
+ (WebCore::PluginPackage::load):
+ * plugins/qt/PluginPackageQt.cpp:
+ (WebCore::PluginPackage::load):
+ * plugins/win/PluginPackageWin.cpp:
+ (WebCore::PluginPackage::load):
+ Initialize m_pluginFuncs.construct.
+
+2008-10-24 Adele Peterson <adele@apple.com>
+
+ Build fix.
+
+ * platform/FileChooser.h: (WebCore::FileChooserClient::~FileChooserClient):
+ * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles):
+
+2008-10-24 Greg Bolsinga <bolsinga@apple.com>
+
+ Fix GTK build break.
+
+ Reviewed by David Kilzer.
+
+ * GNUmakefile.am: Do not include .idl files whose generated files should not be
+ compiled.
+
+2008-10-24 David Kilzer <ddkilzer@apple.com>
+
+ Wx build fix.
+
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (WebCore::setFocusRingColorChangeFunction): Removed in r37858.
+
+2008-10-24 Adele Peterson <adele@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ WebCore part of fix for <rdar://problem/5839256> FILE CONTROL: multi-file upload.
+
+ This change adds support for multiple file selection in an <input type="file"> control when the "multiple" attribute is used.
+ This is consistent with the direction HTML5 will be going in the future.
+
+ The initial implementation here will show "n files" as the text next to the control when multiple files are selected. You can view
+ the individual files in a tooltip for now. Improvements to this control will come later.
+
+ Web developers will be able to access the FileList from the HTMLInputElement element, where they can get a base name and a size for each file.
+ These FileList Files can also be sent in an XMLHTTPRequest.
+
+ * manual-tests/post-multi-file-upload.html: Added.
+ * manual-tests/resources/multiFileResources: Added.
+ * manual-tests/resources/multiFileResources/post-echo-and-notify-done.cgi: Added.
+ * manual-tests/resources/multiFileResources/testFile1.html: Added.
+ * manual-tests/resources/multiFileResources/testFile2.html: Added.
+ * manual-tests/resources/multiFileResources/testFile3.html: Added.
+
+ * WebCore.base.exp: Added support to export the new "chooseFilenames" method to be used in WebKit.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute): Add support for the multiple attribute.
+ (WebCore::HTMLInputElement::value): Added comments. The HTML5 spec says that value shouldn't apply for the file upload control,
+ but we don't want to break the behavior for existing websites that may rely on this.
+ (WebCore::HTMLInputElement::setValue): ditto.
+ (WebCore::HTMLInputElement::setValueFromRenderer): This is no longer used for file upload controls. setFileListFromRenderer is used instead.
+ (WebCore::HTMLInputElement::setFileListFromRenderer): Added.
+ * html/HTMLInputElement.h:
+
+ * page/Chrome.cpp: (WebCore::Chrome::setToolTip): Show a tooltip with the file name list for the multi-file upload control.
+
+ * page/DragController.cpp: (WebCore::DragController::concludeDrag): Updated to support multiple files.
+
+ * platform/FileChooser.cpp: Add support for maintaining a list of file paths that can be retrieved by the renderer.
+ (WebCore::FileChooser::FileChooser):
+ (WebCore::FileChooser::create):
+ (WebCore::FileChooser::clear):
+ (WebCore::FileChooser::chooseFile):
+ (WebCore::FileChooser::chooseFiles):
+ (WebCore::FileChooser::chooseIcon):
+ * platform/FileChooser.h:
+ (WebCore::FileChooser::filePaths):
+ (WebCore::FileChooser::allowsMultipleFiles):
+
+ * platform/graphics/Icon.h:
+ * platform/graphics/mac/IconMac.mm: (WebCore::Icon::newIconForFiles): Returns a generic icon for multiple files.
+ * platform/graphics/gtk/IconGtk.cpp: (WebCore::Icon::newIconForFiles): stubbed out.
+ * platform/graphics/qt/IconQt.cpp: (WebCore::Icon::newIconForFiles): ditto.
+ * platform/graphics/win/IconWin.cpp: (WebCore::Icon::newIconForFiles): ditto.
+
+ * platform/gtk/FileChooserGtk.cpp: (WebCore::FileChooser::basenameForWidth): Updated to deal with new filenames vector.
+ * platform/mac/FileChooserMac.mm: (WebCore::FileChooser::basenameForWidth): ditto.
+ * platform/qt/FileChooserQt.cpp:
+ (WebCore::FileChooser::openFileChooser):
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/win/FileChooserWin.cpp: (WebCore::FileChooser::basenameForWidth):
+
+ * platform/network/mac/FormDataStreamMac.mm: (WebCore::disassociateStreamWithResourceHandle):
+ Removed unnecessary assertion. This can get hit when connectionDidFinishLoading and cancel
+ both get called for the same ResourceHandle. This getting called twice has no negative effect.
+
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::valueChanged): Calls setFileListFromRenderer.
+ (WebCore::RenderFileUploadControl::allowsMultipleFiles): Added.
+ (WebCore::RenderFileUploadControl::updateFromElement): Uses the new filenames call from FileChooser.
+ (WebCore::RenderFileUploadControl::receiveDroppedFiles): Updated to support multiple files.
+ * rendering/RenderFileUploadControl.h:
+
+2008-10-23 Peter Kasting <pkasting@google.com>
+
+ Reviewed by David Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21844
+ Remove setFocusRingColorChangeFunction.
+
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ * platform/graphics/Color.h:
+ * platform/graphics/mac/ColorMac.mm:
+ (WebCore::focusRingColor):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ * platform/graphics/win/ColorSafari.cpp:
+
+2008-10-24 David Kilzer <ddkilzer@apple.com>
+
+ Build fix for Qt.
+
+ Reviewed by Greg.
+
+ * WebCore.pro: Added missing *.idl files.
+
+2008-10-24 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21475
+
+ Provide support for the Geolocation API
+
+ http://dev.w3.org/geo/api/spec-source.html
+
+ Test: geolocation/geolocation-not-implemented.html
+
+ * DerivedSources.make:
+ * GNUmakefile.am: Added Geolocation support
+ * WebCore.pro: Added Geolocation support
+ * WebCore.vcproj/WebCore.vcproj: Added Geolocation support
+ * WebCore.xcodeproj/project.pbxproj: Added Geolocation support
+ * WebCoreSources.bkl: Added Geolocation support
+ * bindings/js/JSCustomPositionCallback.cpp: Added.
+ (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
+ (WebCore::JSCustomPositionCallback::handleEvent):
+ * bindings/js/JSCustomPositionCallback.h: Added.
+ (WebCore::JSCustomPositionCallback::create):
+ * bindings/js/JSCustomPositionErrorCallback.cpp: Added.
+ (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
+ (WebCore::JSCustomPositionErrorCallback::handleEvent):
+ * bindings/js/JSCustomPositionErrorCallback.h: Added.
+ (WebCore::JSCustomPositionErrorCallback::create):
+ * bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom
+ (WebCore::markDOMObjectWrapper):
+ * bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
+ * bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
+ * bindings/js/JSGeolocationCustom.cpp: Added.
+ (WebCore::JSGeolocation::getCurrentPosition):
+ (WebCore::JSGeolocation::watchPosition):
+ * bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation
+ (WebCore::JSNavigator::mark):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ (WebCore::Document::setUsingGeolocation):
+ (WebCore::Document::usingGeolocation):
+ * loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation
+ (WebCore::FrameLoader::canCachePage):
+ * page/Geolocation.cpp: Added.
+ (WebCore::Geolocation::GeoNotifier::GeoNotifier):
+ (WebCore::Geolocation::GeoNotifier::timerFired):
+ (WebCore::Geolocation::Geolocation):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::getCurrentPosition):
+ (WebCore::Geolocation::watchPosition):
+ (WebCore::Geolocation::clearWatch):
+ (WebCore::Geolocation::stopUpdatingIfEmpty):
+ (WebCore::Geolocation::sendErrorToOneShots):
+ (WebCore::Geolocation::sendErrorToWatchers):
+ (WebCore::Geolocation::sendPositionToOneShots):
+ (WebCore::Geolocation::sendPositionToWatchers):
+ (WebCore::Geolocation::handleError):
+ (WebCore::Geolocation::geolocationServicePositionChanged):
+ (WebCore::Geolocation::geolocationServiceErrorOccurred):
+ * page/Geolocation.h: Added.
+ (WebCore::Geolocation::create):
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::GeoNotifier::create):
+ * page/Geolocation.idl: Added.
+ * page/Geoposition.cpp: Added.
+ (WebCore::Geoposition::toString):
+ * page/Geoposition.h: Added.
+ (WebCore::Geoposition::create):
+ (WebCore::Geoposition::latitude):
+ (WebCore::Geoposition::longitude):
+ (WebCore::Geoposition::altitude):
+ (WebCore::Geoposition::accuracy):
+ (WebCore::Geoposition::altitudeAccuracy):
+ (WebCore::Geoposition::heading):
+ (WebCore::Geoposition::velocity):
+ (WebCore::Geoposition::timestamp):
+ (WebCore::Geoposition::Geoposition):
+ * page/Geoposition.idl: Added.
+ * page/Navigator.cpp:
+ (WebCore::Navigator::disconnectFrame): disconnect Geolocation
+ (WebCore::Navigator::geolocation): accessor for Geolocation
+ * page/Navigator.h:
+ (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
+ * page/Navigator.idl: accessor for Geolocation
+ * page/PositionCallback.h: Added.
+ (WebCore::PositionCallback::~PositionCallback):
+ * page/PositionCallback.idl: Added.
+ * page/PositionError.h: Added.
+ (WebCore::PositionError::):
+ (WebCore::PositionError::create):
+ (WebCore::PositionError::code):
+ (WebCore::PositionError::message):
+ (WebCore::PositionError::PositionError):
+ * page/PositionError.idl: Added.
+ * page/PositionErrorCallback.h: Added.
+ (WebCore::PositionErrorCallback::~PositionErrorCallback):
+ * page/PositionErrorCallback.idl: Added.
+ * page/PositionOptions.h: Added.
+ (WebCore::PositionOptions::create):
+ (WebCore::PositionOptions::enableHighAccuracy):
+ (WebCore::PositionOptions::setEnableHighAccuracy):
+ (WebCore::PositionOptions::timeout):
+ (WebCore::PositionOptions::setTimeout):
+ (WebCore::PositionOptions::PositionOptions):
+ * page/PositionOptions.idl: Added.
+ * platform/GeolocationService.cpp: Added.
+ (WebCore::GeolocationService::GeolocationService):
+ (WebCore::GeolocationService::positionChanged):
+ (WebCore::GeolocationService::errorOccurred):
+ * platform/GeolocationService.h: Added.
+ (WebCore::GeolocationServiceClient::~GeolocationServiceClient):
+ (WebCore::GeolocationServiceClient::geolocationServicePositionChanged):
+ (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred):
+ (WebCore::GeolocationService::~GeolocationService):
+
+2008-10-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler
+
+ https://bugs.webkit.org/show_bug.cgi?id=21818
+
+ Add HashTraits for AtomicString so that AtomicString can be used as
+ the key for a HashMap or HashSet.
+
+ * GNUmakefile.am: add AtomicStringHash.h
+ * WebCore.vcproj/WebCore.vcproj: add AtomicStringHash.h
+ * WebCore.xcodeproj/project.pbxproj: add AtomicStringHash.h
+ * platform/text/AtomicString.h:
+ (WebCore::AtomicString::AtomicString):
+ (WebCore::AtomicString::isHashTableDeletedValue):
+ specialize DefaultHash for AtomicString to use AtomicStringHash
+ * platform/text/AtomicStringHash.h: Added.
+ * platform/text/StringImpl.cpp:
+ (WebCore::StringImpl::StringImpl):
+ compute the hash up-front for the empty string
+ * platform/text/StringImpl.h:
+ (WebCore::StringImpl::existingHash):
+ method to get the hash without a test and branch, for callers like
+ AtomicStringHash who can guarantee that the hash has already been computed.
+
+2008-10-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=21857
+
+ Add WebKitCSSKeyframeRule and WebKitCSSKeyframesRule to the
+ switch in _wrapCSSRule.
+
+ * bindings/objc/DOMCSS.mm:
+ (+[DOMCSSRule _wrapCSSRule:WebCore::]):
+
+2008-10-24 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * plugins/PluginView.cpp:
+
+2008-10-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21851
+ <rdar://problem/6304151> REGRESSION (r36513): Crash when removing a widget with percent height
+
+ Test: fast/replaced/percent-height-in-anonymous-block-widget.html
+
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::destroy): Copied code added to
+ RenderBox::destroy() in r36513 into this function.
+
+2008-10-24 Timothy Hatcher <timothy@apple.com>
+
+ Add a mechanism to ask the InspectorClient for key/value setting pairs.
+ These settings can be strings, numbers, booleans or string vectors. The
+ settings are also bridged to and from JavaScript.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21856
+
+ Reviewed by Darin Adler.
+
+ * WebCore.base.exp: Expose the String CFStringRef constructor.
+ * inspector/InspectorClient.h:
+ (WebCore::InspectorClient::populateSetting): Added, pure virtual.
+ (WebCore::InspectorClient::storeSetting): Ditto.
+ (WebCore::InspectorClient::removeSetting): Ditto.
+ * inspector/InspectorController.cpp:
+ (WebCore::setting): Calls InspectorController::setting and wraps the result in script types.
+ (WebCore::setSetting): Calls InspectorController::setSetting after converting from script types.
+ (WebCore::InspectorController::InspectorController): Increment a global static
+ to track the number of live InspectorControllers.
+ (WebCore::InspectorController::~InspectorController): Decrement the global static
+ that tracks the number of live InspectorControllers. Delete the setting cache if there
+ are no more live controllers.
+ (WebCore::InspectorController::setting): Check the cache and return the setting from there,
+ otherwise make a new Setting and ask the client to populate it.
+ (WebCore::InspectorController::setSetting): Change the cache and ask the client to store it.
+ (WebCore::InspectorController::windowScriptObjectAvailable): Add setting and setSetting
+ to the InspectorController script class.
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::Setting::Setting):
+ (WebCore::InspectorController::Setting::operator=):
+ (WebCore::InspectorController::Setting::type): Return m_type.
+ (WebCore::InspectorController::Setting::string): Return m_string. Assert the type is correct.
+ (WebCore::InspectorController::Setting::stringVector): Return m_stringVector.
+ Assert the type is correct.
+ (WebCore::InspectorController::Setting::doubleValue): Return m_simpleContent.m_double.
+ Assert the type is correct.
+ (WebCore::InspectorController::Setting::integerValue): Return m_simpleContent.m_integer.
+ Assert the type is correct.
+ (WebCore::InspectorController::Setting::booleanValue): Return m_simpleContent.m_boolean.
+ Assert the type is correct.
+ (WebCore::InspectorController::Setting::set): Overloaded for each data type, sets the right
+ field and the type.
+ * loader/EmptyClients.h:
+ (WebCore::EmptyInspectorClient::populateSetting): Added, empty method.
+ (WebCore::EmptyInspectorClient::storeSetting): Ditto.
+ (WebCore::EmptyInspectorClient::removeSetting): Ditto.
+
+2008-10-24 Cameron Zwarich <zwarich@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Remove some C-style casts.
+
+ * html/HTMLViewSourceDocument.cpp:
+ (WebCore::HTMLViewSourceDocument::addViewSourceToken):
+
+2008-10-24 Darin Adler <darin@apple.com>
+
+ - finish rolling out https://bugs.webkit.org/show_bug.cgi?id=21732
+
+ * bindings/js/JSAttrCustom.cpp:
+ * bindings/js/JSCSSRuleCustom.cpp:
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ * bindings/js/JSCSSValueCustom.cpp:
+ * bindings/js/JSCanvasPixelArrayCustom.h:
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ * bindings/js/JSClipboardCustom.cpp:
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/JSCustomSQLStatementCallback.cpp:
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ * bindings/js/JSCustomVoidCallback.cpp:
+ * bindings/js/JSCustomVoidCallback.h:
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ * bindings/js/JSCustomXPathNSResolver.h:
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSDOMWindowCustom.h:
+ * bindings/js/JSDOMWindowShell.cpp:
+ * bindings/js/JSDOMWindowShell.h:
+ * bindings/js/JSDatabaseCustom.cpp:
+ * bindings/js/JSDedicatedWorkerCustom.cpp:
+ * bindings/js/JSDocumentCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/js/JSEventCustom.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventTarget.cpp:
+ * bindings/js/JSEventTarget.h:
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSEventTargetNodeCustom.cpp:
+ * bindings/js/JSHTMLAllCollection.h:
+ * bindings/js/JSHTMLAppletElementCustom.cpp:
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ * bindings/js/JSHTMLDocumentCustom.cpp:
+ * bindings/js/JSHTMLEmbedElementCustom.cpp:
+ * bindings/js/JSHTMLFormElementCustom.cpp:
+ * bindings/js/JSHTMLFrameElementCustom.cpp:
+ * bindings/js/JSHTMLFrameSetElementCustom.cpp:
+ * bindings/js/JSHTMLIFrameElementCustom.cpp:
+ * bindings/js/JSHTMLInputElementCustom.cpp:
+ * bindings/js/JSHTMLObjectElementCustom.cpp:
+ * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+ * bindings/js/JSHTMLSelectElementCustom.cpp:
+ * bindings/js/JSHTMLSelectElementCustom.h:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSImageDataCustom.cpp:
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ * bindings/js/JSInspectedObjectWrapper.h:
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ * bindings/js/JSInspectorCallbackWrapper.h:
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+ * bindings/js/JSMessagePortCustom.cpp:
+ * bindings/js/JSMimeTypeArrayCustom.cpp:
+ * bindings/js/JSNamedNodeMapCustom.cpp:
+ * bindings/js/JSNamedNodesCollection.cpp:
+ * bindings/js/JSNamedNodesCollection.h:
+ * bindings/js/JSNavigatorCustom.cpp:
+ * bindings/js/JSNodeCustom.cpp:
+ * bindings/js/JSNodeFilterCondition.cpp:
+ * bindings/js/JSNodeFilterCondition.h:
+ * bindings/js/JSNodeFilterCustom.cpp:
+ * bindings/js/JSNodeIteratorCustom.cpp:
+ * bindings/js/JSNodeListCustom.cpp:
+ * bindings/js/JSPluginArrayCustom.cpp:
+ * bindings/js/JSPluginCustom.cpp:
+ * bindings/js/JSPluginElementFunctions.cpp:
+ * bindings/js/JSPluginElementFunctions.h:
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ * bindings/js/JSRGBColor.cpp:
+ * bindings/js/JSRGBColor.h:
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ * bindings/js/JSSQLTransactionCustom.cpp:
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ * bindings/js/JSSVGLengthCustom.cpp:
+ * bindings/js/JSSVGMatrixCustom.cpp:
+ * bindings/js/JSSVGPathSegCustom.cpp:
+ * bindings/js/JSSVGPathSegListCustom.cpp:
+ * bindings/js/JSSVGPointListCustom.cpp:
+ * bindings/js/JSSVGTransformListCustom.cpp:
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/js/JSStyleSheetCustom.cpp:
+ * bindings/js/JSStyleSheetListCustom.cpp:
+ * bindings/js/JSTextCustom.cpp:
+ * bindings/js/JSTreeWalkerCustom.cpp:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ * bindings/js/JSXSLTProcessorCustom.cpp:
+ * bindings/js/ScheduledAction.cpp:
+ * bindings/js/ScheduledAction.h:
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptController.h:
+ * bindings/objc/WebScriptObject.mm:
+ * bindings/objc/WebScriptObjectPrivate.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+ * bridge/c/c_instance.cpp:
+ * bridge/c/c_instance.h:
+ * bridge/c/c_runtime.cpp:
+ * bridge/c/c_runtime.h:
+ * bridge/c/c_utility.cpp:
+ * bridge/c/c_utility.h:
+ * bridge/jni/jni_instance.cpp:
+ * bridge/jni/jni_instance.h:
+ * bridge/jni/jni_jsobject.h:
+ * bridge/jni/jni_jsobject.mm:
+ * bridge/jni/jni_objc.mm:
+ * bridge/jni/jni_runtime.cpp:
+ * bridge/jni/jni_runtime.h:
+ * bridge/jni/jni_utility.cpp:
+ * bridge/jni/jni_utility.h:
+ * bridge/objc/WebScriptObject.h:
+ * bridge/objc/objc_class.h:
+ * bridge/objc/objc_class.mm:
+ * bridge/objc/objc_instance.h:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/objc/objc_utility.h:
+ * bridge/objc/objc_utility.mm:
+ * bridge/qt/qt_class.cpp:
+ * bridge/qt/qt_class.h:
+ * bridge/qt/qt_instance.cpp:
+ * bridge/qt/qt_instance.h:
+ * bridge/qt/qt_runtime.cpp:
+ * bridge/qt/qt_runtime.h:
+ * bridge/runtime.cpp:
+ * bridge/runtime.h:
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.cpp:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ * bridge/runtime_object.h:
+ * bridge/testqtbindings.cpp:
+ * inspector/JavaScriptCallFrame.cpp:
+ * inspector/JavaScriptCallFrame.h:
+ * inspector/JavaScriptProfile.cpp:
+ * inspector/JavaScriptProfile.h:
+ * inspector/JavaScriptProfileNode.cpp:
+ * inspector/JavaScriptProfileNode.h:
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * page/Console.cpp:
+ * page/Console.h:
+ * plugins/MimeTypeArray.h:
+ * plugins/Plugin.h:
+ * plugins/PluginArray.h:
+ * plugins/PluginView.cpp:
+ * xml/XMLHttpRequest.cpp:
+ Use JSValue* instead of JSValuePtr.
+
+2008-10-24 Simon Hausmann <hausmann@webkit.org>
+
+ Fix the Qt build.
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtField::valueFromInstance):
+
+2008-10-24 David Kilzer <ddkilzer@apple.com>
+
+ Rolled out r37840 and r37841.
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * bindings/js/JSCustomPositionCallback.cpp: Removed.
+ * bindings/js/JSCustomPositionCallback.h: Removed.
+ * bindings/js/JSCustomPositionErrorCallback.cpp: Removed.
+ * bindings/js/JSCustomPositionErrorCallback.h: Removed.
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::markDOMObjectWrapper):
+ * bindings/js/JSGeolocationCustom.cpp: Removed.
+ * bindings/js/JSNavigatorCustom.cpp:
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::canCachePage):
+ * page/Geolocation.cpp: Removed.
+ * page/Geolocation.h: Removed.
+ * page/Geolocation.idl: Removed.
+ * page/Geoposition.cpp: Removed.
+ * page/Geoposition.h: Removed.
+ * page/Geoposition.idl: Removed.
+ * page/Navigator.cpp:
+ (WebCore::Navigator::disconnectFrame):
+ * page/Navigator.h:
+ * page/Navigator.idl:
+ * page/PositionCallback.h: Removed.
+ * page/PositionCallback.idl: Removed.
+ * page/PositionError.h: Removed.
+ * page/PositionError.idl: Removed.
+ * page/PositionErrorCallback.h: Removed.
+ * page/PositionErrorCallback.idl: Removed.
+ * page/PositionOptions.h: Removed.
+ * page/PositionOptions.idl: Removed.
+ * platform/GeolocationService.cpp: Removed.
+ * platform/GeolocationService.h: Removed.
+
+2008-10-23 David Kilzer <ddkilzer@apple.com>
+
+ Attempt to fix GTK build.
+
+ * GNUmakefile.am: Added new *.idl files that were missing.
+
+2008-10-23 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21475
+
+ Provide support for the Geolocation API
+
+ http://dev.w3.org/geo/api/spec-source.html
+
+ Test: geolocation/geolocation-not-implemented.html
+
+ * DerivedSources.make:
+ * GNUmakefile.am: Added Geolocation support
+ * WebCore.pro: Added Geolocation support
+ * WebCore.vcproj/WebCore.vcproj: Added Geolocation support
+ * WebCore.xcodeproj/project.pbxproj: Added Geolocation support
+ * WebCoreSources.bkl: Added Geolocation support
+ * bindings/js/JSCustomPositionCallback.cpp: Added.
+ (WebCore::JSCustomPositionCallback::JSCustomPositionCallback):
+ (WebCore::JSCustomPositionCallback::handleEvent):
+ * bindings/js/JSCustomPositionCallback.h: Added.
+ (WebCore::JSCustomPositionCallback::create):
+ * bindings/js/JSCustomPositionErrorCallback.cpp: Added.
+ (WebCore::JSCustomPositionErrorCallback::JSCustomPositionErrorCallback):
+ (WebCore::JSCustomPositionErrorCallback::handleEvent):
+ * bindings/js/JSCustomPositionErrorCallback.h: Added.
+ (WebCore::JSCustomPositionErrorCallback::create):
+ * bindings/js/JSDOMBinding.cpp: move markDOMObjectWrapper here from JSDOMWindowCustom
+ (WebCore::markDOMObjectWrapper):
+ * bindings/js/JSDOMBinding.h: move markDOMObjectWrapper here from JSDOMWindowCustom
+ * bindings/js/JSDOMWindowCustom.cpp: move markDOMObjectWrapper to JSDOMBinding
+ * bindings/js/JSGeolocationCustom.cpp: Added.
+ (WebCore::JSGeolocation::getCurrentPosition):
+ (WebCore::JSGeolocation::watchPosition):
+ * bindings/js/JSNavigatorCustom.cpp: handle marking Geolocation
+ (WebCore::JSNavigator::mark):
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ * dom/Document.h:
+ (WebCore::Document::setUsingGeolocation):
+ (WebCore::Document::usingGeolocation):
+ * loader/FrameLoader.cpp: don't add to back forward cache if using Geolocation
+ (WebCore::FrameLoader::canCachePage):
+ * page/Geolocation.cpp: Added.
+ (WebCore::Geolocation::GeoNotifier::GeoNotifier):
+ (WebCore::Geolocation::GeoNotifier::timerFired):
+ (WebCore::Geolocation::Geolocation):
+ (WebCore::Geolocation::disconnectFrame):
+ (WebCore::Geolocation::getCurrentPosition):
+ (WebCore::Geolocation::watchPosition):
+ (WebCore::Geolocation::clearWatch):
+ (WebCore::Geolocation::stopUpdatingIfEmpty):
+ (WebCore::Geolocation::sendErrorToOneShots):
+ (WebCore::Geolocation::sendErrorToWatchers):
+ (WebCore::Geolocation::sendPositionToOneShots):
+ (WebCore::Geolocation::sendPositionToWatchers):
+ (WebCore::Geolocation::handleError):
+ (WebCore::Geolocation::geolocationServicePositionChanged):
+ (WebCore::Geolocation::geolocationServiceErrorOccurred):
+ * page/Geolocation.h: Added.
+ (WebCore::Geolocation::create):
+ (WebCore::Geolocation::~Geolocation):
+ (WebCore::Geolocation::lastPosition):
+ (WebCore::Geolocation::GeoNotifier::create):
+ * page/Geolocation.idl: Added.
+ * page/Geoposition.cpp: Added.
+ (WebCore::Geoposition::toString):
+ * page/Geoposition.h: Added.
+ (WebCore::Geoposition::create):
+ (WebCore::Geoposition::latitude):
+ (WebCore::Geoposition::longitude):
+ (WebCore::Geoposition::altitude):
+ (WebCore::Geoposition::accuracy):
+ (WebCore::Geoposition::altitudeAccuracy):
+ (WebCore::Geoposition::heading):
+ (WebCore::Geoposition::velocity):
+ (WebCore::Geoposition::timestamp):
+ (WebCore::Geoposition::Geoposition):
+ * page/Geoposition.idl: Added.
+ * page/Navigator.cpp:
+ (WebCore::Navigator::disconnectFrame): disconnect Geolocation
+ (WebCore::Navigator::geolocation): accessor for Geolocation
+ * page/Navigator.h:
+ (WebCore::Navigator::optionalGeolocation): accessor for Geolocation
+ * page/Navigator.idl: accessor for Geolocation
+ * page/PositionCallback.h: Added.
+ (WebCore::PositionCallback::~PositionCallback):
+ * page/PositionCallback.idl: Added.
+ * page/PositionError.h: Added.
+ (WebCore::PositionError::):
+ (WebCore::PositionError::create):
+ (WebCore::PositionError::code):
+ (WebCore::PositionError::message):
+ (WebCore::PositionError::PositionError):
+ * page/PositionError.idl: Added.
+ * page/PositionErrorCallback.h: Added.
+ (WebCore::PositionErrorCallback::~PositionErrorCallback):
+ * page/PositionErrorCallback.idl: Added.
+ * page/PositionOptions.h: Added.
+ (WebCore::PositionOptions::create):
+ (WebCore::PositionOptions::enableHighAccuracy):
+ (WebCore::PositionOptions::setEnableHighAccuracy):
+ (WebCore::PositionOptions::timeout):
+ (WebCore::PositionOptions::setTimeout):
+ (WebCore::PositionOptions::PositionOptions):
+ * page/PositionOptions.idl: Added.
+ * platform/GeolocationService.cpp: Added.
+ (WebCore::GeolocationService::GeolocationService):
+ (WebCore::GeolocationService::positionChanged):
+ (WebCore::GeolocationService::errorOccurred):
+ * platform/GeolocationService.h: Added.
+ (WebCore::GeolocationServiceClient::~GeolocationServiceClient):
+ (WebCore::GeolocationServiceClient::geolocationServicePositionChanged):
+ (WebCore::GeolocationServiceClient::geolocationServiceErrorOccurred):
+ (WebCore::GeolocationService::~GeolocationService):
+
+2008-10-23 Alp Toker <alp@nuanti.com>
+
+ Fix typo in comment in previous commit. GTK -> GLIB
+
+ * platform/gtk/guriescape.c:
+
+2008-10-23 Kalle Vahlman <kalle.vahlman@movial.com>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21824
+ [GTK] FileSystem abstraction uses features from Glib 2.16
+
+ Wrap g_uri_unescape_string() to fix building with pre-2.16 Glib
+
+ * platform/gtk/guriescape.c:
+ (unescape_character):
+ (_webcore_g_uri_unescape_segment):
+ (_webcore_g_uri_unescape_string):
+ * platform/gtk/guriescape.h:
+
+2008-10-23 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Fix Gtk build typo introduced in http://trac.webkit.org/changeset/37826.
+
+ * GNUmakefile.am:
+
+2008-10-23 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ m_frame null checked but then dereferenced
+ https://bugs.webkit.org/show_bug.cgi?id=21845
+
+ This error was found using a static analysis tool, and so I do not know
+ how to produce a null m_frame on entry to this method. Hence, I have
+ not included a regression test.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::allowDHTMLDrag): Add an early return.
+
+2008-10-23 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig with no hesitation.
+
+ - fix the HTML/CSS case of https://bugs.webkit.org/show_bug.cgi?id=19839
+ <rdar://problem/6304805> A PDF,RLE sequence that should be a no-op affects bidi reordering
+
+ Test: fast/text/bidi-embedding-pop-and-push-same.html
+
+ * platform/text/BidiResolver.h:
+ (WebCore::BidiResolver::embed): Changed to only add the embedding
+ operation to a vector of pending operations.
+
+ (WebCore::BidiResolver::lowerExplicitEmbeddingLevel): Added. Moved the
+ code that used to be in the PDF case of embed() here, except the part
+ that sets the context.
+
+ (WebCore::BidiResolver::raiseExplicitEmbeddingLevel): Added. Moved the
+ code that used to be in the non-PDF case of embed() here, except the
+ part the sets the context.
+
+ (WebCore::BidiResolver::commitExplicitEmbedding): Added. Processes the
+ explicit embedding operations in the vector by creating an updated
+ context and determining the old and new embedding levels. If the levels
+ are not the same, calls {lower,raise}ExplicitEmbeddingLevel(). Always
+ sets the context to the new one.
+
+ (WebCore::BidiResolver::createBidiRunsForLine): Added calls to
+ commitExplicitEmbedding() after calling embed() and after calling
+ increment().
+
+ * rendering/bidi.cpp:
+ (WebCore::bidiFirst): Added calls to commitExplicitEmbedding() because
+ this function increments the resolver.
+
+ (WebCore::RenderBlock::skipLeadingWhitespace): Ditto.
+
+2008-10-23 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Gtk build fix. Not reviewed.
+
+ Add DNSCurl and DNSSoup to the Gtk build
+
+ * GNUmakefile.am:
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ * platform/network/soup/DNSSoup.cpp: Copied from WebCore/platform/network/curl/DNSCurl.cpp.
+ (WebCore::prefetchDNS):
+
+2008-10-23 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Un-break the Darwin build.
+
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ * platform/graphics/cg/ImageCG.cpp:
+
+2008-10-23 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ Fix forward decls to be struct instead of class.
+ https://bugs.webkit.org/show_bug.cgi?id=21838
+
+ * rendering/style/StyleRareInheritedData.h:
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2008-10-23 Brent Fulgham <bfulgham@gmail.com>
+
+ Reviewed by Oliver Hunt.
+
+ * platform/network/curl/ResourceRequest.h: A better implementation
+ of CFURLRequest, rather than void*. This gives better compatibility
+ with the WebKit.idl interface.
+ (WebCore::ResourceRequest::cfURLRequest):
+
+2008-10-23 Mike Pinkerton <pinkerton@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ PLATFORM(CHROMIUM) uses CG the same way PLATFORM(MAC) does so fix
+ ifdefs to reflect that.
+
+ * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
+ * platform/graphics/cg/ImageCG.cpp:
+
+2008-10-23 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Adam Roben.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21833
+ Place JavaScript Debugger hooks under #if ENABLE(JAVASCRIPT_DEBUGGER).
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::setWindowVisible):
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ (WebCore::InspectorController::close):
+ * inspector/InspectorController.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+
+2008-10-23 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21817
+ Bug 21817: Manual profiler tests should be made into layout tests
+
+ -Moving the tests before diffing so that it's clear what changed.
+
+ * manual-tests/inspector/profiler-test-anonymous-event-handler.html: Removed.
+ * manual-tests/inspector/profiler-test-anonymous-function-called-from-different-contexts.html: Removed.
+ * manual-tests/inspector/profiler-test-anonymous-function-calls-built-in-functions.html: Removed.
+ * manual-tests/inspector/profiler-test-anonymous-function-calls-eval.html: Removed.
+ * manual-tests/inspector/profiler-test-apply.html: Removed.
+ * manual-tests/inspector/profiler-test-built-in-function-calls-anonymous.html: Removed.
+ * manual-tests/inspector/profiler-test-built-in-function-calls-user-defined-function.html: Removed.
+ * manual-tests/inspector/profiler-test-call-nodelist-as-function.html: Removed.
+ * manual-tests/inspector/profiler-test-calling-the-function-that-started-the-profiler-from-another-scope.html: Removed.
+ * manual-tests/inspector/profiler-test-compare-multiple-profiles.html: Removed.
+ * manual-tests/inspector/profiler-test-constructor.html: Removed.
+ * manual-tests/inspector/profiler-test-dead-time.html: Removed.
+ * manual-tests/inspector/profiler-test-deep-recursion.html: Removed.
+ * manual-tests/inspector/profiler-test-document-dot-write.html: Removed.
+ * manual-tests/inspector/profiler-test-event-handler.html: Removed.
+ * manual-tests/inspector/profiler-test-execution-context-and-eval-on-same-line.html: Removed.
+ * manual-tests/inspector/profiler-test-heavy-view.html: Removed.
+ * manual-tests/inspector/profiler-test-inline-event-handler.html: Removed.
+ * manual-tests/inspector/profiler-test-multiple-and-different-scoped-anonymous-function-calls.html: Removed.
+ * manual-tests/inspector/profiler-test-multiple-and-different-scoped-function-calls.html: Removed.
+ * manual-tests/inspector/profiler-test-multiple-frames.html: Removed.
+ * manual-tests/inspector/profiler-test-multiple-windows.html: Removed.
+ * manual-tests/inspector/profiler-test-nested-anonymous-functon.html: Removed.
+ * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html: Removed.
+ * manual-tests/inspector/profiler-test-no-execution-context.html: Removed.
+ * manual-tests/inspector/profiler-test-one-execution-context.html: Removed.
+ * manual-tests/inspector/profiler-test-profile-calls-in-included-file.html: Removed.
+ * manual-tests/inspector/profiler-test-profiling-from-a-nested-location-but-stop-profiling-outside-the-nesting.html: Removed.
+ * manual-tests/inspector/profiler-test-profiling-from-a-nested-location.html: Removed.
+ * manual-tests/inspector/profiler-test-simple-event-call.html: Removed.
+ * manual-tests/inspector/profiler-test-simple-no-level-change.html: Removed.
+ * manual-tests/inspector/profiler-test-start-and-stop-profiler-multiple-times.html: Removed.
+ * manual-tests/inspector/profiler-test-start-and-stop-profiling-in-the-same-function.html: Removed.
+ * manual-tests/inspector/profiler-test-start-but-dont-stop-profiling.html: Removed.
+ * manual-tests/inspector/profiler-test-stop-profiling-after-setTimeout.html: Removed.
+ * manual-tests/inspector/profiler-test-stop-then-function-call.html: Removed.
+ * manual-tests/inspector/profiler-test-throw-exception-from-eval.html: Removed.
+ * manual-tests/inspector/profiler-test-two-execution-contexts.html: Removed.
+ * manual-tests/inspector/profiler-test-user-defined-function-calls-built-in-functions.html: Removed.
+ * manual-tests/inspector/profiler-test-window-dot-eval.html: Removed.
+ * manual-tests/inspector/resources/other-frame.html: Removed.
+ * manual-tests/inspector/resources/other-window.html: Removed.
+ * manual-tests/inspector/resources/profiler-test-JS-resources.js: Removed.
+
+2008-10-23 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21826
+
+ Add accessor for SecurityOrigin::m_domainWasSetInDOM.
+
+ * page/SecurityOrigin.h:
+ (WebCore::SecurityOrigin::domainWasSetInDOM):
+
+2008-10-23 Darin Adler <darin@apple.com>
+
+ - roll out https://bugs.webkit.org/show_bug.cgi?id=21732
+
+ * bindings/js/ScheduledAction.h:
+ * inspector/InspectorController.cpp:
+ ProtectedPtr<JSValue> instead of ProtectedPtr<JSValuePtr>.
+
+2008-10-23 Simon Hausmann <hausmann@webkit.org>
+
+ Fix the Qt build.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtConnectionObject::execute):
+ * bridge/qt/qt_runtime.h:
+ (JSC::Bindings::QtRuntimeMethod::createStructureID):
+
+2008-10-23 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21825
+ JSDOMBinding should not blindly cast the global object to JSDOMWindow
+
+ * bindings/js/JSDOMGlobalObject.cpp:
+ * bindings/js/JSDOMGlobalObject.h:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Added JSDOMGlobalObject, a base class to be used by both Window and worker contexts.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::getCachedDOMStructure):
+ (WebCore::cacheDOMStructure):
+ (WebCore::getCachedDOMConstructor):
+ (WebCore::cacheDOMConstructor):
+ Cast to JSDOMGlobalObject, as DOM objects live in DOM global objects.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::mark):
+ Moved constructor and structure tracking to JSDOMGlobalObject.
+
+2008-10-23 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21787
+
+ Update postMessage to send origin = "null" for non-serializable
+ origins to match latest spec. Merge SecurityOrigin::toString and
+ SecurityOrigin::toHTTPOrigin because they are now the same.
+
+ Test: http/tests/security/postMessage/data-url-sends-null-origin.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::outgoingOrigin):
+ (WebCore::FrameLoader::loadURL):
+ (WebCore::FrameLoader::addHTTPOriginIfNeeded):
+ (WebCore::FrameLoader::loadItem):
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::servePendingRequests):
+ * page/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::toString):
+ * page/SecurityOrigin.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
+ (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
+ (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
+ (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
+
+2008-10-22 David Kilzer <ddkilzer@apple.com>
+
+ Bug 21781: WebCore::Settings should have a maximum decoded image size setting
+
+ <https://bugs.webkit.org/show_bug.cgi?id=21781>
+
+ Reviewed by Antti.
+
+ No tests since there is no change in behavior.
+
+ * loader/CachedImage.cpp:
+ (WebCore::CachedImage::maximumDecodedImageSize): Added. Returns
+ WebCore::Settings::maximumDecodedImageSize() or 0 on error.
+ (WebCore::CachedImage::data): Flag an error if the image being
+ loaded is too big.
+ * loader/CachedImage.h:
+ (WebCore::CachedImage::maximumDecodedImageSize): Added declaration.
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings): Initialize m_maximumDecodedImageSize
+ to the maximum value of size_t.
+ * page/Settings.h:
+ (WebCore::Settings::setMaximumDecodedImageSize): Added method.
+ (WebCore::Settings::maximumDecodedImageSize): Ditto.
+
+2008-10-22 Mike Pinkerton <pinkerton@chromium.org>
+
+ Reviewed by Dan Bernstein.
+ Landed and tweaked a bit by Darin Adler.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21809
+
+ Remove PLATFORM(MAC) wrapping USE(ATSUI). It's redundant and inhibits
+ its use for PLATFORM(CHROMIUM) in the future.
+
+ * platform/graphics/SimpleFontData.h:
+
+2008-10-22 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19974
+ getElementsByClassName not live enough
+
+ Test: fast/dom/getElementsByClassName/015.html
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::classAttributeChanged): call dispatchSubtreeModifiedEvent()
+
+2008-10-22 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21294
+ Bug 21294: Devirtualize getOwnPropertySlot()
+
+ * bindings/js/JSDOMWindowShell.h:
+ (WebCore::JSDOMWindowShell::createStructureID): Added. Returns a structure without
+ HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
+
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ (WebCore::JSInspectorCallbackWrapper::wrap): Change to use a unique structure
+ for this class rather than sharing nullProtoStructureID, which no longer exists.
+
+ * bindings/js/JSNamedNodesCollection.h:
+ (WebCore::JSNamedNodesCollection::createStructureID): Added. Returns a structure without
+ HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
+ * bindings/js/JSRGBColor.h:
+ (WebCore::JSRGBColor::createStructureID): Ditto.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Added createStructureID functions for the wrappers,
+ constructors, and prototypes in any case where they override getOwnPropertySlot, without
+ HasStandardGetOwnPropertySlot.
+
+ * bridge/objc/objc_runtime.h:
+ (JSC::Bindings::ObjcFallbackObjectImp::createStructureID): Added. Returns a structure
+ without HasStandardGetOwnPropertySlot since this class overrides getOwnPropertySlot.
+ * bridge/qt/qt_runtime.h:
+ (JSC::Bindings::QtRuntimeMethod::createStructureID): Ditto.
+ * bridge/runtime_array.h:
+ (JSC::RuntimeArray::createStructureID): Ditto.
+ * bridge/runtime_method.h:
+ (JSC::RuntimeMethod::createStructureID): Ditto.
+ * bridge/runtime_object.h:
+ (JSC::RuntimeObjectImp::createStructureID): Ditto.
+
+2008-10-22 Brent Fulgham <bfulgham@gmail.com>
+
+ Bring Windows Cairo Port's font handling in line with CG.
+ http://bugs.webkit.org/show_bug.cgi?id=21812.
+
+ Reviewed by Adam Roben.
+
+ * platform/graphics/win/FontCacheWin.cpp:
+ (WebCore::createGDIFont): Remove unnecessary special-case for Cairo
+ TrueType font search. It should match CG in all font selections.
+
+2008-10-22 Brent Fulgham <bfulgham@gmail.com>
+
+ http://bugs.webkit.org/show_bug.cgi?id=21812.
+ Bring Windows Cairo Port's font handling in line with CG.
+
+ Reviewed by David Hyatt.
+
+ * platform/graphics/win/FontCacheWin.cpp:
+ (WebCore::createGDIFont): Remove unnecessary special-case for Cairo TrueType font search. It should match CG in all font selections.
+
+2008-10-22 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Adam Roben
+
+ <rdar://6261773> - autocomplete="off" doesn't work on Windows
+
+ Visual Studio makes a poor decision regarding the combination of enums and bitfields, such that a
+ statement like "m_autocomplete = Off" followed by "return m_autocomplete == Off" would return "false"
+ instead of the much more correct "true."
+
+ In the past we have worked around this by declaring the bitfield member as an unsigned instead
+ of the enum type.
+
+ For more discussion, see http://trac.webkit.org/changeset/25329
+
+ * html/HTMLInputElement.h: Work around insane Visual Studio enum issue *sigh*
+
+2008-10-22 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Oliver Hunt and Tim Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19225
+ Bug 19225: JSProfiler: Create automated profiler tests
+ - This change exports profiles on the console object so that they can be
+ iterated over via JavaScript, and thus can be used in automated tests.
+
+ * bindings/js/JSConsoleCustom.cpp: Get the profiles and return an array
+ that JS can use.
+ (WebCore::JSConsole::profiles):
+ * inspector/InspectorController.h: Use the new typedef.
+ (WebCore::InspectorController::profiles):
+ * page/Console.cpp: Keep our own array of profile objects.
+ (WebCore::Console::profileEnd):
+ * page/Console.h: Ditto.
+ (WebCore::Console::profiles):
+ * page/Console.idl: Expose the profiles to JS.
+
+2008-10-22 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21775
+
+ Convert buttons over to use the new Theme API on OS X.
+
+ Reviewed by Adam Roben
+
+ * platform/LengthBox.h:
+ (WebCore::LengthBox::LengthBox):
+ * platform/Theme.cpp:
+ (WebCore::Theme::controlBorder):
+ (WebCore::Theme::controlPadding):
+ * platform/Theme.h:
+ (WebCore::Theme::controlFont):
+ (WebCore::Theme::controlSize):
+ (WebCore::Theme::minControlSize):
+ (WebCore::Theme::controlRequiresPreWhiteSpace):
+ * platform/mac/ThemeMac.h:
+ (WebCore::ThemeMac::controlRequiresPreWhiteSpace):
+ * platform/mac/ThemeMac.mm:
+ (WebCore::checkboxSize):
+ (WebCore::radioSize):
+ (WebCore::buttonSizes):
+ (WebCore::buttonMargins):
+ (WebCore::button):
+ (WebCore::paintButton):
+ (WebCore::ThemeMac::controlFont):
+ (WebCore::ThemeMac::controlSize):
+ (WebCore::ThemeMac::minControlSize):
+ (WebCore::ThemeMac::controlBorder):
+ (WebCore::ThemeMac::controlPadding):
+ (WebCore::ThemeMac::inflateControlPaintRect):
+ (WebCore::ThemeMac::paint):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::adjustStyle):
+ (WebCore::RenderTheme::paint):
+ (WebCore::RenderTheme::controlStatesForRenderer):
+ (WebCore::RenderTheme::isDefault):
+ (WebCore::RenderTheme::adjustRadioStyle):
+ * rendering/RenderTheme.h:
+ (WebCore::RenderTheme::setRadioSize):
+ * rendering/RenderThemeMac.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::adjustRepaintRect):
+ (WebCore::menuListButtonSizes):
+ (WebCore::RenderThemeMac::adjustMenuListStyle):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::paddingBox):
+ (WebCore::InheritedFlags::setPaddingBox):
+
+2008-10-22 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Make sure that the AtomicString that identifies a set of animation keyframes
+ stays live by keeping a copy in the WebKitCSSKeyframesRule.
+
+ Also call styleSheetChanged() when the keyframes name changes, but
+ add an internal method that doesn't call styleSheetChanged() for use
+ during normal stylesheet parsing.
+
+ Test: animations/change-keyframes-name.html
+
+ * css/CSSGrammar.y:
+ * css/WebKitCSSKeyframesRule.cpp:
+ (WebCore::WebKitCSSKeyframesRule::setName):
+ * css/WebKitCSSKeyframesRule.h:
+ (WebCore::WebKitCSSKeyframesRule::setNameInternal):
+
+2008-10-22 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21791
+ WebCore JS bindings should be able to use non-static hash tables for properties
+
+ Add a map for HashTables to WebCore JS client data.
+
+ This makes property access noticeably slower, so it is an opt-in. For classes that need to be
+ supported in workers in forseeable future this is not critical.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::DOMObjectHashTableMap::get):
+ (WebCore::DOMObjectHashTableMap::mapFor):
+ (WebCore::getHashTableForGlobalData):
+ (WebCore::DOMObjectWrapperMap::mapFor):
+ WebCore client data is now a class that contains both a DOM wrapper map and a property hash
+ table one.
+
+ * bindings/js/JSDOMBinding.h: Added getHashTableForGlobalData() to query the hash table map.
+
+ * bindings/scripts/CodeGeneratorJS.pm: If the class has a NoStaticTables attribute, use
+ JSDOMBinding map to access its property hash tables.
+
+ * dom/MessageChannel.idl:
+ * dom/MessagePort.idl:
+ Added NoStaticTables attribute.
+
+2008-10-22 Gustavo Noronha Silva <gns@gnome.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Build failure because of missing include
+ https://bugs.webkit.org/show_bug.cgi?id=21765
+
+ Build failure fix for WebKit/GTK+; added missing
+ include (GOwnPtr.h)
+
+ * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
+
+2008-10-22 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Adam Roben.
+
+ Fix crashes on older GTK+ versions (2.8). gtk_widget_style_get()
+ doesn't initialize values if the requested property doesn't exist, so
+ initialize the values to the documented defaults before calling it
+ where necessary. Additionally, avoid critical warnings by not calling
+ gtk_widget_style_get() when we know the property isn't available.
+
+ Note that this is an imported source file which doesn't follow the
+ WebKit coding style.
+
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_init):
+ (moz_gtk_button_get_inner_border):
+ (moz_gtk_combo_box_paint):
+ (moz_gtk_toolbar_separator_paint):
+ (moz_gtk_menu_separator_paint):
+ (moz_gtk_get_widget_border):
+ (moz_gtk_get_tab_scroll_arrow_size):
+ (moz_gtk_get_toolbar_separator_width):
+ (moz_gtk_get_menu_separator_height):
+
+2008-10-22 Alp Toker <alp@nuanti.com>
+
+ Fix build for Cairo 1.2.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::clipOut):
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::paintMozWidget):
+
+2008-10-22 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ A little more PLATFORM(CHROMIUM) in WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=21758
+
+ * page/AccessibilityObject.h:
+ * platform/graphics/Icon.h:
+
+2008-10-21 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Test: fast/events/message-channel-gc-3.html
+
+ https://bugs.webkit.org/show_bug.cgi?id=21769
+ MessagePort should be GC protected if there are messages to be delivered
+
+ * dom/MessagePort.h: Removed pending activity count. Now we track if a close event is
+ pending, and check if the queue is non-empty.
+ (WebCore::MessagePort::workerContext): Added a stub implementation for a cross-heap GC bug
+ fix (below).
+
+ * dom/MessagePort.cpp:
+ (WebCore::CloseMessagePortTimer::fired):
+ (WebCore::MessagePort::MessagePort):
+ (WebCore::MessagePort::queueCloseEvent):
+ (WebCore::MessagePort::dispatchCloseEvent):
+ (WebCore::MessagePort::hasPendingActivity):
+ Track message and close event activity separately.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::markCrossHeapDependentObjectsForDocument): Fixed a bug in cross-heap GC that was
+ causing same-heap ports to never be deleted.
+
+2008-10-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - remove unreachable code
+
+ * platform/text/BidiResolver.h:
+ (WebCore::::embed):
+
+2008-10-21 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20352
+ REGRESSION(r31030-31055): Choosing "Print window" from frame set
+ prints blank page
+ and corresponding: <rdar://problem/6142398>
+
+ viewHeight() and viewWidth() only return valuable information if we
+ are not printing. Everywhere else in the code, we make sure we are
+ not printing before we call these functions. Adding a check for
+ printing here fixes this bug, and framesets print again.
+
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::layout):
+
+2008-10-21 Yael Aharon <yael.aharon@nokia.com>
+
+ Reviewed by Simon.
+
+ Pixmap in canvas tag was not getting initialized.
+
+ See https://bugs.webkit.org/show_bug.cgi?id=21771
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::create):
+
+2008-10-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein
+
+ Add a comment explaining layoutDelta(), and an assertion
+ that checks that delta changes were correctly paired during layout.
+
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::layout):
+ * rendering/RenderView.h:
+
+2008-10-20 Timothy Hatcher <timothy@apple.com>
+
+ Make auto-complete only suggest properties that are valid syntax
+ when using dot-notation. Also when completing numeric properties,
+ the quotes are omitted inside the brackets.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21760
+ https://bugs.webkit.org/show_bug.cgi?id=21761
+
+ Reviewed by Oliver Hunt.
+
+ * inspector/front-end/Console.js:
+ (WebInspector.Console.prototype.completions): Skip properties that
+ are not valid identifies when using dot-notation. And omit the quotes
+ when completing numbers in bracket-notation.
+
+2008-10-20 Timothy Hatcher <timothy@apple.com>
+
+ Fixes the Profiles panel in the Web Inspector, which was broken by
+ the JSValue base-class changes. Also renames some functions and
+ variables in JavaScriptProfileNode.cpp that where title case.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21764
+
+ Reviewed by Oliver Hunt.
+
+ * inspector/JavaScriptProfile.cpp:
+ (WebCore::toJS): Use a JSObject pointer instead of JSValuePtr so the
+ returned JSValuePtr will be treated as an object and not a value.
+ * inspector/JavaScriptProfileNode.cpp:
+ (WebCore::toJS): Ditto.
+
+2008-10-20 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Remove FrameLoaderClient::detachedFromParent4. It is no longer used by any port.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::detachedFromParent4):.
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::detachFromParent):
+ * loader/FrameLoaderClient.h:
+
+2008-10-20 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=21763
+ REGRESSION (r36108-r36113): Can't load picture content on wired.com galleries
+ <rdar://problem/6285025
+
+ If we get 304 response we need to explicitly check if that completes the frame load.
+
+ No test case, simulating the condition is pretty difficult.
+
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::didReceiveResponse):
+
+2008-10-20 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ Work around <rdar://problem/6301728>.
+
+ Don't assert that loads are deferred when we're using CFNetwork on Mac or Windows.
+
+ * loader/MainResourceLoader.cpp:
+ (WebCore::MainResourceLoader::didReceiveResponse):
+ (WebCore::MainResourceLoader::didReceiveData):
+ (WebCore::MainResourceLoader::didFinishLoading):
+ (WebCore::MainResourceLoader::didFail):
+
+2008-10-20 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Speculative fix for <rdar://problem/6242585> CrashTracer: [USER] 19
+ crashes in Safari at com.apple.WebCore
+ WebCore::ScrollView::visibleContentRect const + 153
+
+ d->m_view can be null and is null-checked at other points in the
+ code. The logs indicate that this crash occurs when closing a
+ window containing a PDF, so in case where we crash, the PDF's view
+ is probably already null. So the fix is to simply add a null-check.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::selectionRect):
+
+2008-10-20 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ * html/HTMLFormElement.cpp: (WebCore::HTMLFormElement::formData):
+ Removed stray increment that would screw up any form with multiple files in it.
+
+2008-10-20 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by David Hyatt.
+
+ Split LengthBox and LengthSize into their own files.
+
+ * GNUmakefile.am:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/Length.h:
+ (WebCore::Length::blend):
+ * platform/LengthBox.h: Copied from platform/Length.h.
+ (WebCore::LengthBox::LengthBox):
+ (WebCore::LengthBox::nonZero):
+ * platform/LengthSize.h: Copied from platform/Length.h.
+ (WebCore::LengthSize::LengthSize):
+ (WebCore::LengthSize::setWidth):
+ (WebCore::LengthSize::setHeight):
+ (WebCore::LengthSize::height):
+ * platform/Theme.h:
+ * rendering/style/FillLayer.h:
+ * rendering/style/NinePieceImage.h:
+ (WebCore::NinePieceImage::NinePieceImage):
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleDashboardRegion.h:
+ * rendering/style/StyleSurroundData.h:
+ * rendering/style/StyleVisualData.h:
+
+2008-10-20 Dan Bernstein <mitz@apple.com>
+
+ - Mac build fix
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2008-10-20 Alp Toker <alp@nuanti.com>
+
+ Fix autotools dist build target by listing recently added header
+ files only. Not reviewed.
+
+ * GNUmakefile.am:
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ Clean up some USE(NEW_THEME) ifdefs (I botched one of them and have broken non-Mac platforms). Also
+ refactor some of the code that I put in ThemeMac to be cross-platform, since it was in RenderTheme.cpp
+ originally.
+
+ ifdef some methods in RenderTheme.cpp also that are no longer needed with the new Theme.
+
+ Reviewed by Adam Roben
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/Theme.cpp: Added.
+ (WebCore::Theme::controlSupportsBorder):
+ (WebCore::Theme::controlSupportsPadding):
+ * platform/Theme.h:
+ * platform/mac/ThemeMac.h:
+ * platform/mac/ThemeMac.mm:
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::adjustStyle):
+ * rendering/RenderTheme.h:
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ Rename LengthBox's members to have m_ in front of them.
+
+ Reviewed by Sam Weinig
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::valueForNinePieceImage):
+ (WebCore::getPositionOffsetValue):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::mapNinePieceImage):
+ * platform/Length.h:
+ (WebCore::LengthBox::LengthBox):
+ (WebCore::LengthBox::left):
+ (WebCore::LengthBox::right):
+ (WebCore::LengthBox::top):
+ (WebCore::LengthBox::bottom):
+ (WebCore::LengthBox::operator==):
+ (WebCore::LengthBox::nonZero):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::paintNinePieceImage):
+ (WebCore::RenderObject::addDashboardRegions):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::positionedObjectMoved):
+ (WebCore::RenderStyle::setClip):
+ (WebCore::RenderStyle::noneDashboardRegions):
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::left):
+ (WebCore::InheritedFlags::right):
+ (WebCore::InheritedFlags::top):
+ (WebCore::InheritedFlags::bottom):
+ (WebCore::InheritedFlags::clipLeft):
+ (WebCore::InheritedFlags::clipRight):
+ (WebCore::InheritedFlags::clipTop):
+ (WebCore::InheritedFlags::clipBottom):
+ (WebCore::InheritedFlags::marginTop):
+ (WebCore::InheritedFlags::marginBottom):
+ (WebCore::InheritedFlags::marginLeft):
+ (WebCore::InheritedFlags::marginRight):
+ (WebCore::InheritedFlags::paddingTop):
+ (WebCore::InheritedFlags::paddingBottom):
+ (WebCore::InheritedFlags::paddingLeft):
+ (WebCore::InheritedFlags::paddingRight):
+ (WebCore::InheritedFlags::setLeft):
+ (WebCore::InheritedFlags::setRight):
+ (WebCore::InheritedFlags::setTop):
+ (WebCore::InheritedFlags::setBottom):
+ (WebCore::InheritedFlags::setDashboardRegion):
+ (WebCore::InheritedFlags::setClipLeft):
+ (WebCore::InheritedFlags::setClipRight):
+ (WebCore::InheritedFlags::setClipTop):
+ (WebCore::InheritedFlags::setClipBottom):
+ (WebCore::InheritedFlags::setMarginTop):
+ (WebCore::InheritedFlags::setMarginBottom):
+ (WebCore::InheritedFlags::setMarginLeft):
+ (WebCore::InheritedFlags::setMarginRight):
+ (WebCore::InheritedFlags::setPaddingTop):
+ (WebCore::InheritedFlags::setPaddingBottom):
+ (WebCore::InheritedFlags::setPaddingLeft):
+ (WebCore::InheritedFlags::setPaddingRight):
+
+2008-10-20 Timothy Hatcher <timothy@apple.com>
+
+ Make the Resource panel perform graph updates atomically, so when resources
+ are added the graph and summary graph update at the same time.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21755
+
+ Reviewed by Kevin McCullough.
+
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.prototype.get startTime): Return -1 if the _startTime
+ property is undefined, null or 0. This allows callers to check for -1 and not
+ the other values when there is no startTime yet.
+ (WebInspector.Resource.prototype.get responseReceivedTime): Ditto.
+ (WebInspector.Resource.prototype.get endTime): Ditto.
+ (WebInspector.Resource.prototype.get duration): Remove an extra empty line.
+ (WebInspector.Resource.prototype.get latency): Ditto.
+ (WebInspector.Resource.prototype.get contentLength): Return 0 if the _duration
+ property is undefined or null. This allows callers to always assume a number.
+ (WebInspector.Resource.prototype.get expectedContentLength): Ditto.
+ (WebInspector.Resource.prototype.get errors): Simplify the case where there is
+ no _errors property yet.
+ (WebInspector.Resource.prototype.set errors): Remove the check if the new value
+ if the same as the previous value, since there is no work to guard.
+ (WebInspector.Resource.prototype.get warnings): Simplify the case where there is
+ no _warnings property yet.
+ (WebInspector.Resource.prototype.set warnings): Remove the check if the new value
+ if the same as the previous value, since there is no work to guard.
+ (WebInspector.Resource.CompareByResponseReceivedTime): Add cases for when the
+ responseReceivedTime is -1.
+ (WebInspector.Resource.CompareByEndTime): Add cases for when the endTime is -1.
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.get searchableViews): If a resource does not
+ have a _resourcesTreeElement yet, exclude it from the searchable views.
+ (WebInspector.ResourcesPanel.prototype.set calculator): Set _staleResource to _resources
+ and call refresh to refresh the entire graph.
+ (WebInspector.ResourcesPanel.prototype.set needsRefresh): Set a timeout if the panel
+ is visible that calls refresh.
+ (WebInspector.ResourcesPanel.prototype.refresh): Create the resource tree element and
+ graph for a resource if it hasn't been created yet. If the boundaries changed during
+ the first stale resource pass, do a full pass of all resources when updating the graphs.
+ (WebInspector.ResourcesPanel.prototype.reset): Remove the legend items.
+ (WebInspector.ResourcesPanel.prototype.addResource): Don't create the tree element and
+ graph, these are now created during the first refresh.
+ (WebInspector.ResourcesPanel.prototype.removeResource): Null check _resourcesTreeElement.
+ (WebInspector.ResourcesPanel.prototype.addMessageToResource): Ditto.
+ (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
+ (WebInspector.ResourcesPanel.prototype.refreshResource): Remove most of the work, just
+ add the resource to the _staleResources and set needsRefresh.
+ (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Null check
+ _resourcesTreeElement.
+ (WebInspector.ResourcesPanel.prototype._sortResourcesIfNeeded): Remove code to clear
+ the timeout used by the deleted _sortResourcesSoonIfNeeded. Remove call to removeChild
+ since the insertBefore call will do it if needed.
+ (WebInspector.ResourcesPanel.prototype._updateGraphDividersIfNeeded): Remove code to
+ clear the timeout used by the deleted _updateGraphDividersSoonIfNeeded.
+ (WebInspector.ResourcesPanel.prototype._updateSummaryGraph): Remove code to clear the
+ timeout used by the deleted _updateSummaryGraphSoon. No need to remove the totalLegendLabel,
+ since all the legend items are removed in one pass right before.
+ (WebInspector.ResourcesPanel.prototype._changeSortingFunction): Set the sortingFunction
+ before the calculator so the correct sortingFunction is there when a refresh happens.
+ (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphPercentages): Set start to 0
+ when the startTime is -1, since that looks best visually. Also set middle and end
+ to the start and middle (respectfully) when startAtZero. This looks best visually.
+ (WebInspector.ResourceGraph): Start the graph as hidden until the first refresh.
+ (WebInspector.ResourceGraph.prototype.refresh): Remove the hidden class.
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21733
+
+ Make sure that the haveMetadata flag is set to true for generated images from image buffers, so that
+ no attempt is made to re-cache the frame from a non-existent image source.
+
+ Reviewed by Sam Weinig
+
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+
+2008-10-20 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - make hasARenderedDescendant() have internal linkage
+
+ * editing/CompositeEditCommand.cpp:
+ (WebCore::hasARenderedDescendant):
+
+2008-10-20 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Jon Honeycutt
+
+ Fix a crash in Accessibility where a table section was being
+ referenced without first checking if it was null
+
+ https://bugs.webkit.org/show_bug.cgi?id=21721
+
+ Test: accessibility/table-nofirstbody.html
+
+ * page/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::addChildren):
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ Avoid some stderr spew from CG by checking if we have a decoder yet in ImageSourceCG.
+
+ Reviewed by Darin Adler
+
+ * platform/graphics/cg/ImageSourceCG.cpp:
+ (WebCore::ImageSource::repetitionCount):
+ (WebCore::ImageSource::frameDurationAtIndex):
+
+2008-10-20 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Mark Rowe.
+
+ Fix the pthread conditionals in the FTP code to correctly define
+ threadsafe *_r functions on Windows. Partly fixes the GTK+/Win32
+ build.
+
+ * loader/FTPDirectoryDocument.cpp:
+ * loader/FTPDirectoryParser.cpp:
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21751
+
+ Convert checkboxes and radio buttons on OS X over to the new Theme API.
+
+ Reviewed by Adam Roben
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::mapFillSize):
+ * platform/Length.h:
+ (WebCore::LengthSize::LengthSize):
+ (WebCore::LengthSize::operator==):
+ (WebCore::LengthSize::width):
+ (WebCore::LengthSize::height):
+ (WebCore::LengthSize::setWidth):
+ (WebCore::LengthSize::setHeight):
+ * platform/Theme.h:
+ (WebCore::Theme::controlSize):
+ (WebCore::Theme::controlSupportsBorder):
+ (WebCore::Theme::controlSupportsPadding):
+ (WebCore::Theme::paint):
+ (WebCore::Theme::inflateControlPaintRect):
+ * platform/ThemeTypes.h:
+ (WebCore::):
+ * platform/mac/ThemeMac.h:
+ * platform/mac/ThemeMac.mm:
+ (WebCore::):
+ (WebCore::controlSizeForFont):
+ (WebCore::sizeFromFont):
+ (WebCore::setControlSize):
+ (WebCore::updateStates):
+ (WebCore::inflateRect):
+ (WebCore::checkboxSizes):
+ (WebCore::checkboxMargins):
+ (WebCore::checkboxSize):
+ (WebCore::checkbox):
+ (WebCore::paintCheckbox):
+ (WebCore::radioSizes):
+ (WebCore::radioMargins):
+ (WebCore::radioSize):
+ (WebCore::radio):
+ (WebCore::paintRadio):
+ (WebCore::ThemeMac::baselinePositionAdjustment):
+ (WebCore::ThemeMac::controlSize):
+ (WebCore::ThemeMac::controlSupportsBorder):
+ (WebCore::ThemeMac::controlSupportsPadding):
+ (WebCore::ThemeMac::inflateControlPaintRect):
+ (WebCore::ThemeMac::paint):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::calculateBackgroundSize):
+ * rendering/RenderObject.cpp:
+ (WebCore::mustRepaintFillLayers):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::adjustStyle):
+ (WebCore::RenderTheme::paint):
+ (WebCore::RenderTheme::baselinePosition):
+ (WebCore::RenderTheme::adjustRepaintRect):
+ (WebCore::RenderTheme::controlStatesForRenderer):
+ (WebCore::RenderTheme::isFocused):
+ * rendering/RenderTheme.h:
+ * rendering/RenderThemeMac.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::adjustRepaintRect):
+ * rendering/style/FillLayer.cpp:
+ (WebCore::FillLayer::operator==):
+
+2008-10-18 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fixed https://bugs.webkit.org/show_bug.cgi?id=21735
+ Emit profiling instrumentation only if the Web Inspector's profiling
+ feature is enabled
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::supportsProfiling):
+ * bindings/js/JSDOMWindowBase.h: Implemented the interface for specifying
+ whether a target global object has the Web Inspector's profiling feature
+ enabled.
+
+ * inspector/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::recompileAllJSFunctionsSoon):
+ (WebCore::JavaScriptDebugServer::didAddListener):
+ (WebCore::JavaScriptDebugServer::didRemoveListener):
+ * inspector/JavaScriptDebugServer.h: Exported an API for recompiling,
+ used by the Settings object.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+ (WebCore::Settings::setDeveloperExtrasEnabled):
+ * page/Settings.h: Recompile when the developer menu is enabled/disabled
+ for the first time, to add/remove profiling hooks. In the future, with
+ better Web Inspector UI, we can do this on a page-by-page basis,
+ instead of a global basis.
+
+2008-10-20 David Hyatt <hyatt@apple.com>
+
+ Move Length to platform/.
+
+ Reviewed by Adam Roben
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * platform/Length.cpp: Copied from rendering/Length.cpp.
+ * platform/Length.h: Copied from rendering/Length.h.
+
+2008-10-20 Darin Adler <darin@apple.com>
+
+ - try to fix Qt build
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Add asObject calls.
+ (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
+
+2008-10-20 Darin Adler <darin@apple.com>
+
+ - try to fix Qt build
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::mark): Use JSValue* instead of JSValuePtr.
+ (JSC::Bindings::QtField::valueFromInstance): Ditto.
+ * bridge/qt/qt_instance.h: Ditto.
+
+2008-10-20 Darin Adler <darin@apple.com>
+
+ - try to fix Tiger build
+
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::invokeMethod): Add a const_cast to remove the unwanted
+ volatile qualifier.
+ (ObjcInstance::invokeDefaultMethod): Ditto.
+ (ObjcInstance::getValueOfUndefinedField): Ditto.
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::ObjcField::valueFromInstance): Ditto.
+
+2008-10-20 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21750
+ Eliminate the notion of "temporary events"
+
+ We mark some events as temporary when dispatching, for the sole reason of
+ manually calling forgetDOMObject when done dispatching.
+
+ There doesn't seem to be any reason to call it manually, as JSEvent destructor
+ will do this automatically right away.
+
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptController.h:
+ Removed ScriptController::finishedWithEvent(), which was called after dispatching
+ a temporary event.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::dispatchChildInsertionEvents):
+ (WebCore::dispatchChildRemovalEvents):
+ * dom/EventTarget.h:
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::dispatchEvent):
+ (WebCore::EventTargetNode::dispatchGenericEvent):
+ (WebCore::EventTargetNode::dispatchSubtreeModifiedEvent):
+ (WebCore::EventTargetNode::dispatchWindowEvent):
+ (WebCore::EventTargetNode::dispatchUIEvent):
+ (WebCore::EventTargetNode::dispatchKeyEvent):
+ (WebCore::EventTargetNode::dispatchMouseEvent):
+ (WebCore::EventTargetNode::dispatchWheelEvent):
+ (WebCore::EventTargetNode::dispatchWebKitAnimationEvent):
+ (WebCore::EventTargetNode::dispatchWebKitTransitionEvent):
+ (WebCore::EventTargetNode::dispatchEventForType):
+ (WebCore::EventTargetNode::dispatchProgressEvent):
+ (WebCore::EventTargetNode::dispatchStorageEvent):
+ * dom/EventTargetNode.h:
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::dispatchMessages):
+ (WebCore::MessagePort::dispatchCloseEvent):
+ (WebCore::MessagePort::dispatchEvent):
+ * dom/MessagePort.h:
+ * editing/Editor.cpp:
+ (WebCore::Editor::dispatchCPPEvent):
+ (WebCore::dispatchEditableContentChangedEvents):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment):
+ * editing/TypingCommand.cpp:
+ (WebCore::TypingCommand::insertText):
+ * loader/appcache/DOMApplicationCache.cpp:
+ (WebCore::DOMApplicationCache::dispatchEvent):
+ (WebCore::DOMApplicationCache::callListener):
+ * loader/appcache/DOMApplicationCache.h:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::dispatchDragEvent):
+ (WebCore::EventHandler::keyEvent):
+ (WebCore::EventHandler::handleTextInputEvent):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scheduleEvent):
+ (WebCore::FrameView::updateOverflowStatus):
+ (WebCore::FrameView::dispatchScheduledEvents):
+ * page/FrameView.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollToOffset):
+ (WebCore::RenderLayer::updateOverflowStatus):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::sendSVGLoadEventIfPossible):
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::dispatchEvent):
+ * svg/SVGElementInstance.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::dispatchEvent):
+ (WebCore::XMLHttpRequest::dispatchReadyStateChangeEvent):
+ (WebCore::XMLHttpRequest::dispatchXMLHttpRequestProgressEvent):
+ * xml/XMLHttpRequest.h:
+ * xml/XMLHttpRequestUpload.cpp:
+ (WebCore::XMLHttpRequestUpload::dispatchEvent):
+ (WebCore::XMLHttpRequestUpload::dispatchXMLHttpRequestProgressEvent):
+ * xml/XMLHttpRequestUpload.h:
+ Don't pass the tempEvent boolean around.
+
+2008-10-20 Alp Toker <alp@nuanti.com>
+
+ Remove unused includes only. Partial GTK+/Win build fix.
+
+ * platform/graphics/gtk/SimpleFontDataPango.cpp:
+
+2008-10-20 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21705
+ Implement Web Workers client-side API
+
+ The implementation is experimental, and disabled by default. It doesn't quite match the
+ published draft, being influenced by further WHATWG discussions.
+
+ This only implements the client-side API, and does not actually create any threads or
+ global contexts yet.
+
+ * DerivedSources.make: Added DedicatedWorker. SharedWorker is not implemented yet, as I'm
+ still not sure if having separate classes for these helps at all.
+
+ * WebCore.xcodeproj/project.pbxproj: Added new files.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (jsDOMWindowBaseWorker):
+ (WebCore::JSDOMWindowBase::put):
+ (setJSDOMWindowBaseWorker):
+ Added window.Worker constructor. Moved JSXSLTProcessorConstructor.h include out of ifdef
+ to match prevailing style.
+
+ * bindings/js/JSDedicatedWorkerConstructor.cpp: Added.
+ * bindings/js/JSDedicatedWorkerConstructor.h: Added.
+ * bindings/js/JSDedicatedWorkerCustom.cpp: Added.
+ The implementation of event listeners are left custom intentionally, for easier implementation
+ of listeners that are not tied to any Document in the future.
+
+ * dom/DedicatedWorker.cpp: Added.
+ * dom/DedicatedWorker.h: Added.
+ * dom/DedicatedWorker.idl: Added.
+ Added an implementation that can only load requested scripts for now.
+
+2008-10-19 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ - fix assertion seen when opening inspector
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot):
+ Removed unneeded asObject cast.
+
+2008-10-19 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Timothy Hatcher.
+
+ - remove empty directories and correct the MIME type of inspector images
+
+ * page/inspector: Removed.
+ * page/inspector/Images: Removed.
+
+2008-10-19 Timothy Hatcher <timothy@apple.com>
+
+ Make the Web Inspector Resources panel open quicker and change graphs
+ faster. There was some accidental n^2 logic at fault when updating the
+ graph boundaries.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21742
+
+ Reviewed by Darin Adler.
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.set calculator): Return early for
+ a null calculator. Remove the second argument passed to _refreshAllResources.
+ (WebInspector.ResourcesPanel.prototype.refresh): Call updateBoundaries on
+ the calculator for all the stale resources before calling refreshResource.
+ Pass true for the first argument of refreshResource to skip the boundary update.
+ (WebInspector.ResourcesPanel.prototype._updateGraphBoundariesIfNeeded): Remove
+ the second argument passed to _refreshAllResources.
+ (WebInspector.ResourcesPanel.prototype._refreshAllResourcesSoon): Remove the
+ skipSort argument since every passed true, and it would be bad to pass false.
+ (WebInspector.ResourcesPanel.prototype._refreshAllResources): Ditto. And if
+ skipBoundaryUpdate is false, call updateBoundaries on the calculator for all
+ the resources before calling refreshResource. Pass true for the first argument
+ of refreshResource to skip the boundary update.
+
+2008-10-19 Timothy Hatcher <timothy@apple.com>
+
+ Visually distinguish resources that loaded from the memory cache.
+
+ https://bugs.webkit.org/show_bug.cgi?id=14279
+
+ Reviewed by Dan Bernstein.
+
+ * English.lproj/localizedStrings.js: New string.
+ * inspector/front-end/Images/timelineHollowPillBlue.png: Added.
+ * inspector/front-end/Images/timelineHollowPillGray.png: Added.
+ * inspector/front-end/Images/timelineHollowPillGreen.png: Added.
+ * inspector/front-end/Images/timelineHollowPillOrange.png: Added.
+ * inspector/front-end/Images/timelineHollowPillPurple.png: Added.
+ * inspector/front-end/Images/timelineHollowPillRed.png: Added.
+ * inspector/front-end/Images/timelineHollowPillYellow.png: Added.
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels):
+ Add the "(from cache)" suffix to the tooltip.
+ (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
+ Add the "(from cache)" suffix to the tooltip.
+ (WebInspector.ResourceGraph): Add the "resource-cached" class.
+ * inspector/front-end/inspector.css: New styles to make the timeline
+ bars use the hollow pill images.
+
+2008-10-19 Timothy Hatcher <timothy@apple.com>
+
+ Update the scroll position in the Resources panel when loading
+ a new page or toggling on small resource rows.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20114
+
+ Reviewed by Darin Adler.
+
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.reset): Scroll to the top,
+ since all the resource are being removed.
+ (WebInspector.ResourcesPanel.prototype.removeResource): Call
+ _adjustScrollPosition in case the view is shorter and needs scrolled.
+ (WebInspector.ResourcesPanel.prototype._toggleLargerResources): Ditto.
+ (WebInspector.ResourcesPanel.prototype._adjustScrollPosition): Check
+ the height of the sidebar against the scrollTop and height of the
+ resourcesContainerElement. If the sidebar is shorter, scroll up
+ so the last resource is at the bottom again.
+
+2008-10-19 Timothy Hatcher <timothy@apple.com>
+
+ Show per resource times and sizes when hovering over the bar graph for a resource.
+
+ https://bugs.webkit.org/show_bug.cgi?id=14300
+ rdar://problem/5712802
+
+ Reviewed by Cameron Zwarich.
+
+ * English.lproj/localizedStrings.js: Add new strings.
+ * inspector/front-end/Images/graphLabelCalloutLeft.png: Added.
+ * inspector/front-end/Images/graphLabelCalloutRight.png: Added.
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.refreshResource): Pass the calculator to the
+ ResourceGraph.refresh function.
+ (WebInspector.ResourceCalculator.prototype.computeBarGraphLabels): Default implementation
+ returns the formatted value.
+ (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): Return discrete values
+ for the latency and download times. Also generate a custom tooltip.
+ (WebInspector.ResourceGraph): Add a mouseover event listener that calls refreshLabelPositions.
+ (WebInspector.ResourceGraph.prototype.refreshLabelPositions): Added. Updates the label positions
+ in case the bar has changed size.
+ (WebInspector.ResourceGraph.prototype.refresh): Set the label text and tooltips.
+ * inspector/front-end/inspector.css: New styles for the labels.
+
+2008-10-19 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
+ improve performance by eliminating JSValue as a base class for JSCell
+
+ Remove most uses of JSValue, which will be removed in a future patch.
+
+ * bindings/js/JSCustomXPathNSResolver.h: Removed declaration of JSValue
+ and used JSValuePtr instead.
+ * bindings/js/JSEventTarget.h: Ditto.
+ * bindings/js/JSNodeFilterCondition.h: Ditto.
+ * bindings/js/ScheduledAction.h: Ditto.
+ * bindings/js/ScriptController.h: Ditto.
+ * bindings/objc/WebScriptObjectPrivate.h: Ditto.
+ * bridge/c/c_utility.h: Ditto.
+ * bridge/jni/jni_jsobject.h: Ditto.
+ * bridge/jni/jni_utility.h: Ditto.
+ * bridge/objc/WebScriptObject.h: Ditto.
+ * dom/Traversal.h: Ditto.
+ * inspector/InspectorController.cpp: Ditto.
+ * inspector/JavaScriptProfile.h: Ditto.
+ * inspector/JavaScriptProfileNode.h: Ditto.
+ * loader/FrameLoader.h: Ditto.
+ * page/Console.h: Ditto.
+ * plugins/MimeTypeArray.h: Ditto.
+ * plugins/Plugin.h: Ditto.
+ * plugins/PluginArray.h: Ditto.
+ * plugins/PluginView.cpp:
+ (WebCore::getString): Ditto.
+ (WebCore::PluginView::performRequest): Ditto.
+ * plugins/gtk/PluginViewGtk.cpp: Ditto.
+ * plugins/qt/PluginViewQt.cpp: Ditto.
+ * plugins/win/PluginViewWin.cpp: Ditto.
+
+ * bridge/qt/qt_class.cpp:
+ (JSC::Bindings::QtClass::fallbackObject): Use JSValuePtr and JSObject*
+ instead of JSValue*.
+ * bridge/qt/qt_class.h: Ditto.
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::mark): Ditto.
+ (JSC::Bindings::QtInstance::invokeMethod): Ditto.
+ (JSC::Bindings::QtInstance::defaultValue): Ditto.
+ (JSC::Bindings::QtInstance::stringValue): Ditto.
+ (JSC::Bindings::QtInstance::numberValue): Ditto.
+ (JSC::Bindings::QtInstance::booleanValue): Ditto.
+ (JSC::Bindings::QtInstance::valueOf): Ditto.
+ (JSC::Bindings::QtField::valueFromInstance): Ditto.
+ (JSC::Bindings::QtField::setValueToInstance): Ditto.
+ * bridge/qt/qt_instance.h: Ditto.
+ * bridge/qt/qt_runtime.cpp: Ditto.
+ (JSC::Bindings::valueRealType): Ditto.
+ (JSC::Bindings::convertValueToQVariant): Ditto.
+ (JSC::Bindings::convertQVariantToValue): Ditto.
+ (JSC::Bindings::findMethodIndex): Ditto.
+ (JSC::Bindings::QtRuntimeMetaMethod::call): Ditto.
+ (JSC::Bindings::QtRuntimeMetaMethod::lengthGetter): Ditto.
+ (JSC::Bindings::QtRuntimeMetaMethod::connectGetter): Ditto.
+ (JSC::Bindings::QtRuntimeMetaMethod::disconnectGetter): Ditto.
+ (JSC::Bindings::QtRuntimeConnectionMethod::call): Ditto.
+ (JSC::Bindings::QtRuntimeConnectionMethod::lengthGetter): Ditto.
+ (JSC::Bindings::QtArray::setValueAt): Ditto.
+ (JSC::Bindings::QtArray::valueAt): Ditto.
+ * bridge/qt/qt_runtime.h: Ditto.
+
+ * bridge/testqtbindings.cpp:
+ (main): Use JSValuePtr.
+
+2008-10-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ - next step of https://bugs.webkit.org/show_bug.cgi?id=21732
+ improve performance by eliminating JSValue as a base class for JSCell
+
+ Tweak a little more to get closer to where we can make JSValuePtr a class.
+
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::JSAudioConstructor): Use asObject.
+ (WebCore::constructAudio): Ditto.
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::nameGetter): Ditto.
+
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ (WebCore::toHTMLCanvasStyle): Use asString and asObject.
+ (WebCore::JSCanvasRenderingContext2D::setFillColor): Ditto.
+ (WebCore::JSCanvasRenderingContext2D::setStrokeColor): Ditto.
+ (WebCore::JSCanvasRenderingContext2D::drawImage): Ditto.
+ (WebCore::JSCanvasRenderingContext2D::drawImageFromRect): Ditto.
+ (WebCore::JSCanvasRenderingContext2D::setShadow): Ditto.
+ (WebCore::JSCanvasRenderingContext2D::createPattern): Ditto.
+
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent): Use JSValuePtr.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::setDOMException): Use noValue.
+
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::getDOMPrototype): Use asObject.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::showModalDialog): Use noValue.
+ (jsDOMWindowBaseEvent): Use asObject.
+ (jsDOMWindowBaseImage): Ditto.
+ (jsDOMWindowBaseMessageChannel): Ditto.
+ (jsDOMWindowBaseOption): Ditto.
+ (jsDOMWindowBaseXMLHttpRequest): Ditto.
+ (jsDOMWindowBaseAudio): Ditto.
+ (jsDOMWindowBaseXSLTProcessor): Ditto.
+ (WebCore::JSDOMWindowBase::childFrameGetter): Ditto.
+ (WebCore::JSDOMWindowBase::indexGetter): Ditto.
+ (WebCore::JSDOMWindowBase::namedItemGetter): Ditto.
+ (WebCore::JSDOMWindowBase::getOwnPropertySlot): Ditto.
+ (WebCore::JSDOMWindowBase::findJSEventListener): Ditto.
+ (WebCore::JSDOMWindowBase::findOrCreateJSEventListener): Ditto.
+ (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener): Ditto.
+ (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener): Ditto.
+ (windowProtoFuncOpen): Use noValue.
+ (WebCore::toJSDOMWindow): Use asObject.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::setTimeoutOrInterval): Use asString.
+ (WebCore::toDOMWindow): Use asObject.
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent): Use noValue.
+ (WebCore::JSLazyEventListener::parseCode): Use asObject.
+
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ (WebCore::JSHTMLCollection::nameGetter): Use asObject.
+ * bindings/js/JSHTMLDocumentCustom.cpp:
+ (WebCore::JSHTMLDocument::nameGetter): Ditto.
+ * bindings/js/JSHTMLElementCustom.cpp:
+ (WebCore::JSHTMLElement::pushEventHandlerScope): Ditto.
+ * bindings/js/JSHTMLFormElementCustom.cpp:
+ (WebCore::JSHTMLFormElement::nameGetter): Ditto.
+ * bindings/js/JSHTMLFrameSetElementCustom.cpp:
+ (WebCore::JSHTMLFrameSetElement::nameGetter): Ditto.
+ * bindings/js/JSHTMLOptionElementConstructor.cpp:
+ (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor): Ditto.
+ (WebCore::constructHTMLOptionElement): Ditto.
+ * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+ (WebCore::JSHTMLOptionsCollection::remove): Ditto.
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
+ (WebCore::constructImage): Ditto.
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ (WebCore::JSInspectedObjectWrapper::wrap): Ditto.
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
+
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ (WebCore::JSJavaScriptCallFrame::evaluate): Use noValue.
+
+ * bindings/js/JSMessageChannelConstructor.cpp:
+ (WebCore::JSMessageChannelConstructor::JSMessageChannelConstructor): Use asObject.
+ (WebCore::JSMessageChannelConstructor::construct): Ditto.
+ * bindings/js/JSMimeTypeArrayCustom.cpp:
+ (WebCore::JSMimeTypeArray::nameGetter): Ditto.
+ * bindings/js/JSNamedNodeMapCustom.cpp:
+ (WebCore::JSNamedNodeMap::nameGetter): Ditto.
+ * bindings/js/JSNamedNodesCollection.cpp:
+ (WebCore::JSNamedNodesCollection::lengthGetter): Ditto.
+ (WebCore::JSNamedNodesCollection::indexGetter): Ditto.
+ * bindings/js/JSNodeFilterCustom.cpp:
+ (WebCore::toNodeFilter): Ditto.
+ * bindings/js/JSNodeListCustom.cpp:
+ (WebCore::JSNodeList::nameGetter): Ditto.
+ * bindings/js/JSPluginArrayCustom.cpp:
+ (WebCore::JSPluginArray::nameGetter): Ditto.
+ * bindings/js/JSPluginCustom.cpp:
+ (WebCore::JSPlugin::nameGetter): Ditto.
+ * bindings/js/JSPluginElementFunctions.cpp:
+ (WebCore::runtimeObjectGetter): Ditto.
+ (WebCore::runtimeObjectPropertyGetter): Ditto.
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::asWrapper): Ditto.
+ (WebCore::JSQuarantinedObjectWrapper::getOwnPropertySlot): Ditto.
+ (WebCore::JSQuarantinedObjectWrapper::construct): Ditto.
+ * bindings/js/JSRGBColor.cpp:
+ (jsRGBColorRed): Ditto.
+ (jsRGBColorGreen): Ditto.
+ (jsRGBColorBlue): Ditto.
+
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ (WebCore::JSSQLResultSetRowList::item): Use noValue.
+
+ * bindings/js/JSStorageCustom.cpp:
+ (WebCore::JSStorage::nameGetter): Use asObject.
+ (WebCore::JSStorage::deleteProperty): Ditto.
+ (WebCore::JSStorage::customPut): Ditto.
+ * bindings/js/JSStyleSheetListCustom.cpp:
+ (WebCore::JSStyleSheetList::nameGetter): Ditto.
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor): Ditto.
+ * bindings/js/JSXSLTProcessorCustom.cpp:
+ (WebCore::JSXSLTProcessor::importStylesheet): Ditto.
+ (WebCore::JSXSLTProcessor::transformToFragment): Ditto.
+ (WebCore::JSXSLTProcessor::transformToDocument): Ditto.
+
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::evaluate): Use noValue.
+ * bindings/objc/DOMInternal.mm:
+ (-[WebScriptObject _initializeScriptDOMNodeImp]): Ditto.
+
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject evaluateWebScript:]): Use JSValuePtr.
+ (-[WebScriptObject valueForKey:]): Ditto.
+ (-[WebScriptObject webScriptValueAtIndex:]): Ditto.
+ (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
+ Use asObject and asString.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Use asObject.
+
+ * bridge/c/c_instance.h: Use JSValuePtr.
+ * bridge/c/c_runtime.cpp:
+ (JSC::Bindings::CField::setValueToInstance): Ditto.
+
+ * bridge/c/c_utility.cpp:
+ (JSC::Bindings::convertValueToNPVariant): Use asObject.
+
+ * bridge/jni/jni_instance.cpp:
+ (JavaInstance::booleanValue): Use JSValuePtr.
+ (JavaInstance::invokeMethod): Ditto. And noValue.
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::getSlot): Ditto.
+ (JavaJSObject::convertValueToJObject): Ditto.
+ * bridge/jni/jni_runtime.cpp:
+ (JavaField::dispatchValueFromInstance): Ditto.
+ (JavaField::valueFromInstance): Ditto.
+ (JavaField::dispatchSetValueToInstance): Ditto.
+ (JavaField::setValueToInstance): Ditto.
+ (JavaArray::setValueAt): Ditto.
+ (JavaArray::valueAt): Ditto.
+ * bridge/jni/jni_runtime.h: Ditto.
+
+ * bridge/jni/jni_utility.cpp:
+ (JSC::Bindings::convertArrayInstanceToJavaArray): Take a JSArray*
+ instead of a JSValue*.
+ (JSC::Bindings::convertValueToJValue): Use asObject and asArray.
+
+ * bridge/objc/objc_class.h: Use JSValuePtr.
+ * bridge/objc/objc_instance.h: Ditto.
+ * bridge/objc/objc_runtime.h: Ditto.
+
+ * bridge/objc/objc_runtime.mm:
+ (JSC::Bindings::callObjCFallbackObject): Use asObject.
+
+ * bridge/objc/objc_utility.h: Use JSValuePtr.
+ * bridge/objc/objc_utility.mm:
+ (JSC::Bindings::convertValueToObjcValue): Use JSValuePtr and asObject.
+ (JSC::Bindings::convertObjcValueToValue): Use jsUndefined() instead of 0.
+
+ * bridge/runtime.cpp:
+ (JSC::Bindings::Instance::getValueOfField): Use JSValuePtr.
+ (JSC::Bindings::Instance::setValueOfField): Ditto.
+
+ * bridge/runtime_array.cpp:
+ (JSC::RuntimeArray::lengthGetter): Use JSValuePtr and asObject.
+ (JSC::RuntimeArray::indexGetter): Ditto.
+ * bridge/runtime_array.h: Ditto.
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::lengthGetter): Ditto.
+ (JSC::callRuntimeMethod): Ditto.
+ * bridge/runtime_object.cpp:
+ (JSC::RuntimeObjectImp::fallbackObjectGetter): Ditto.
+ (JSC::RuntimeObjectImp::fieldGetter): Ditto.
+ (JSC::RuntimeObjectImp::methodGetter): Ditto.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::executeScript): Use noValue.
+
+ * page/Console.cpp:
+ (WebCore::Console::trace): Use asInternalFunction.
+
+2008-10-19 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Timothy Hatcher.
+
+ - lower the default button repaint frequency
+
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::styleDidChange): Changed the timer interval from
+ 0.01 to 0.03.
+
+2008-10-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - Windows build fix
+
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::paintMediaFullscreenButton):
+ (WebCore::RenderThemeSafari::paintMediaMuteButton):
+ (WebCore::RenderThemeSafari::paintMediaPlayButton):
+ (WebCore::RenderThemeSafari::paintMediaSeekBackButton):
+ (WebCore::RenderThemeSafari::paintMediaSeekForwardButton):
+ (WebCore::RenderThemeSafari::paintMediaSliderThumb):
+
+2008-10-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - WebCore part of https://bugs.webkit.org/show_bug.cgi?id=21736
+ Long-dead decoded image data make up for most of the object cache's memory use over time
+
+ Add a cache setting for how long decoded image data should be allowed to
+ persist in memory after the image has died. By default, this is set to
+ 0, which means "forever".
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::Cache): Initialize m_deadDecodedDataDeletionInterval.
+ * loader/Cache.h:
+ (WebCore::Cache::setDeadDecodedDataDeletionInterval): Added a setter.
+ (WebCore::Cache::deadDecodedDataDeletionInterval): Added a getter.
+ * loader/CachedImage.cpp:
+ (WebCore::CachedImage::CachedImage): Initialize the decoded data
+ deletion timer.
+ (WebCore::CachedImage::decodedDataDeletionTimerFired): Added. Destroys
+ the decoded image data.
+ (WebCore::CachedImage::addClient): Stop the timer if it is active.
+ (WebCore::CachedImage::allClientsRemoved): Start the decoded data
+ deletion timer.
+ * loader/CachedImage.h:
+
+2008-10-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21645
+ REGRESSION (r37469-r37605): File Input not Uploaded in Multipart/Form-data Form
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::formData):
+ Fix loop that goes through the FormDataList to go two at a time in a clearer
+ way. My last patch screwed up the way it got form content from the items.
+ This "two at a time" approach is a confusing way to do things, which explains
+ why I got it wrong last time through, but I decided to just fix it locally for
+ now rather than changing the design of FormDataList.
+
+2008-10-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ - next step on https://bugs.webkit.org/show_bug.cgi?id=21732
+ improve performance by eliminating JSValue as a base class for JSCell
+
+ Use JSValuePtr everywhere instead of JSValue*. In the future, we'll be
+ changing JSValuePtr to be a class, and then eventually renaming it
+ to JSValue once that's done.
+
+ * bindings/js/JSAttrCustom.cpp:
+ * bindings/js/JSCSSRuleCustom.cpp:
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ * bindings/js/JSCSSValueCustom.cpp:
+ * bindings/js/JSCanvasPixelArrayCustom.h:
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ * bindings/js/JSClipboardCustom.cpp:
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/JSCustomSQLStatementCallback.cpp:
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionCallback.cpp:
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ * bindings/js/JSCustomVoidCallback.cpp:
+ * bindings/js/JSCustomVoidCallback.h:
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ * bindings/js/JSDOMWindowCustom.h:
+ * bindings/js/JSDOMWindowShell.cpp:
+ * bindings/js/JSDOMWindowShell.h:
+ * bindings/js/JSDatabaseCustom.cpp:
+ * bindings/js/JSDocumentCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/js/JSEventCustom.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventTarget.cpp:
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSEventTargetNodeCustom.cpp:
+ * bindings/js/JSHTMLAllCollection.h:
+ * bindings/js/JSHTMLAppletElementCustom.cpp:
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ * bindings/js/JSHTMLDocumentCustom.cpp:
+ * bindings/js/JSHTMLEmbedElementCustom.cpp:
+ * bindings/js/JSHTMLFormElementCustom.cpp:
+ * bindings/js/JSHTMLFrameElementCustom.cpp:
+ * bindings/js/JSHTMLFrameSetElementCustom.cpp:
+ * bindings/js/JSHTMLIFrameElementCustom.cpp:
+ * bindings/js/JSHTMLInputElementCustom.cpp:
+ * bindings/js/JSHTMLObjectElementCustom.cpp:
+ * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+ * bindings/js/JSHTMLSelectElementCustom.cpp:
+ * bindings/js/JSHTMLSelectElementCustom.h:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSImageDataCustom.cpp:
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ * bindings/js/JSInspectedObjectWrapper.h:
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ * bindings/js/JSInspectorCallbackWrapper.h:
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+ * bindings/js/JSMessagePortCustom.cpp:
+ * bindings/js/JSMimeTypeArrayCustom.cpp:
+ * bindings/js/JSNamedNodeMapCustom.cpp:
+ * bindings/js/JSNamedNodesCollection.cpp:
+ * bindings/js/JSNamedNodesCollection.h:
+ * bindings/js/JSNavigatorCustom.cpp:
+ * bindings/js/JSNodeCustom.cpp:
+ * bindings/js/JSNodeFilterCondition.cpp:
+ * bindings/js/JSNodeFilterCustom.cpp:
+ * bindings/js/JSNodeIteratorCustom.cpp:
+ * bindings/js/JSNodeListCustom.cpp:
+ * bindings/js/JSPluginArrayCustom.cpp:
+ * bindings/js/JSPluginCustom.cpp:
+ * bindings/js/JSPluginElementFunctions.cpp:
+ * bindings/js/JSPluginElementFunctions.h:
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ * bindings/js/JSRGBColor.cpp:
+ * bindings/js/JSRGBColor.h:
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ * bindings/js/JSSQLTransactionCustom.cpp:
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ * bindings/js/JSSVGLengthCustom.cpp:
+ * bindings/js/JSSVGMatrixCustom.cpp:
+ * bindings/js/JSSVGPathSegCustom.cpp:
+ * bindings/js/JSSVGPathSegListCustom.cpp:
+ * bindings/js/JSSVGPointListCustom.cpp:
+ * bindings/js/JSSVGTransformListCustom.cpp:
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/js/JSStyleSheetCustom.cpp:
+ * bindings/js/JSStyleSheetListCustom.cpp:
+ * bindings/js/JSTextCustom.cpp:
+ * bindings/js/JSTreeWalkerCustom.cpp:
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ * bindings/js/JSXSLTProcessorCustom.cpp:
+ * bindings/js/ScheduledAction.cpp:
+ * bindings/js/ScheduledAction.h:
+ * bindings/js/ScriptController.cpp:
+ * bindings/js/ScriptController.h:
+ * bindings/objc/WebScriptObject.mm:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+ * bridge/c/c_instance.cpp:
+ * bridge/c/c_instance.h:
+ * bridge/c/c_runtime.cpp:
+ * bridge/c/c_runtime.h:
+ * bridge/c/c_utility.cpp:
+ * bridge/jni/jni_instance.cpp:
+ * bridge/jni/jni_instance.h:
+ * bridge/jni/jni_jsobject.mm:
+ * bridge/jni/jni_objc.mm:
+ * bridge/jni/jni_runtime.cpp:
+ * bridge/jni/jni_runtime.h:
+ * bridge/jni/jni_utility.cpp:
+ * bridge/objc/objc_class.mm:
+ * bridge/objc/objc_instance.h:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/objc/objc_utility.h:
+ * bridge/objc/objc_utility.mm:
+ * bridge/runtime.h:
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.cpp:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ * bridge/runtime_object.h:
+ * inspector/JavaScriptCallFrame.cpp:
+ * inspector/JavaScriptCallFrame.h:
+ * inspector/JavaScriptProfile.cpp:
+ * inspector/JavaScriptProfileNode.cpp:
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * page/Console.cpp:
+ * page/Console.h:
+ * plugins/MimeTypeArray.h:
+ * plugins/Plugin.h:
+ * plugins/PluginArray.h:
+ * xml/XMLHttpRequest.cpp:
+ Replace JSValue* with JSValuePtr.
+
+2008-10-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ - first step of https://bugs.webkit.org/show_bug.cgi?id=21732
+ improve performance by eliminating JSValue as a base class for JSCell
+
+ Update for change to make PreferredPrimitiveType no longer
+ a member of JSValue.
+
+ * bridge/c/c_instance.cpp:
+ (JSC::Bindings::CInstance::defaultValue): Removed JSValue:: prefix.
+ * bridge/jni/jni_instance.cpp:
+ (JavaInstance::defaultValue): Ditto.
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::defaultValue): Ditto.
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::defaultValue): Ditto.
+ * bridge/runtime.h: Ditto. Also removed typedef.
+
+2008-10-18 Darin Adler <darin@apple.com>
+
+ - try to fix Windows build
+
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::paintCheckbox): Explicitly qualify part name with
+ SafariTheme namespace, since there is now an identically named constant in
+ the ControlPart enum.
+ (WebCore::RenderThemeSafari::paintButton): Ditto.
+ (WebCore::RenderThemeSafari::paintTextField): Ditto.
+ (WebCore::RenderThemeSafari::paintTextArea): Ditto.
+ (WebCore::RenderThemeSafari::paintSearchField): Ditto.
+ (WebCore::RenderThemeSafari::paintSearchFieldCancelButton): Ditto.
+ (WebCore::RenderThemeSafari::paintSearchFieldResultsDecoration): Ditto.
+ (WebCore::RenderThemeSafari::paintSearchFieldResultsButton): Ditto.
+
+2008-10-18 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Alp Toker.
+
+ [GTK] crash after selecting a file on an <input type=file>
+ https://bugs.webkit.org/show_bug.cgi?id=21385
+
+ Follow Mac and Win's behaviors for Icon::paint
+
+ * platform/graphics/gtk/IconGtk.cpp:
+ (WebCore::Icon::paint): check if painting is enabled before
+ painting the icon
+
+2008-10-18 Zan Dobersek <zandobersek@gmail.com>
+
+ Reviewed by Oliver Hunt.
+
+ Qt port build fix.
+
+ * platform/qt/RenderThemeQt.h:
+
+2008-10-17 Kevin Watters <kevinwatters@gmail.com>
+
+ Reviewed by Kevin Ollivier
+
+ Fix wx port's scrollbar and drawing handling after recent changes.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21720
+
+ * platform/ScrollView.h:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformVisibleContentRect):
+ (WebCore::ScrollView::platformContentsSize):
+ (WebCore::ScrollView::platformSetContentsSize):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::paint):
+
+2008-10-17 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix. EAppearance -> ControlPart.
+
+ * platform/wx/RenderThemeWx.cpp:
+ (WebCore::RenderThemeWx::isControlStyled):
+ (WebCore::RenderThemeWx::adjustRepaintRect):
+ (WebCore::RenderThemeWx::controlSupportsTints):
+ (WebCore::RenderThemeWx::supportsFocus):
+ (WebCore::RenderThemeWx::paintButton):
+
+2008-10-17 David Hyatt <hyatt@apple.com>
+
+ Eliminate the EAppearance enum in favor of the new ControlPart enum. Cut out the scrollbar
+ values from the enum since they are handled by ScrollbarTheme instead.
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
+ (WebCore::CSSPrimitiveValue::operator ControlPart):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ * css/CSSValueKeywords.in:
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::supportsFocus):
+ (WebCore::RenderThemeGtk::baselinePosition):
+ (WebCore::setToggleSize):
+ (WebCore::RenderThemeGtk::setCheckboxSize):
+ (WebCore::RenderThemeGtk::setRadioSize):
+ (WebCore::RenderThemeGtk::adjustButtonStyle):
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::baselinePosition):
+ (WebCore::RenderThemeQt::controlSupportsTints):
+ (WebCore::RenderThemeQt::adjustRepaintRect):
+ (WebCore::RenderThemeQt::isControlStyled):
+ (WebCore::computeSizeBasedOnStyle):
+ (WebCore::RenderThemeQt::paintButton):
+ (WebCore::RenderThemeQt::paintTextField):
+ (WebCore::RenderThemeQt::paintMenuList):
+ (WebCore::RenderThemeQt::supportsFocus):
+ (WebCore::RenderThemeQt::applyTheme):
+ (WebCore::RenderThemeQt::adjustSliderThumbSize):
+ * platform/qt/RenderThemeQt.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::createThumbStyle):
+ (WebCore::RenderSlider::layout):
+ (WebCore::RenderSlider::setValueForPosition):
+ (WebCore::RenderSlider::setPositionFromValue):
+ (WebCore::RenderSlider::positionForOffset):
+ (WebCore::RenderSlider::currentPosition):
+ (WebCore::RenderSlider::setCurrentPosition):
+ (WebCore::RenderSlider::trackSize):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::adjustStyle):
+ (WebCore::RenderTheme::paint):
+ (WebCore::RenderTheme::paintBorderOnly):
+ (WebCore::RenderTheme::paintDecorations):
+ (WebCore::RenderTheme::isControlContainer):
+ (WebCore::RenderTheme::isControlStyled):
+ (WebCore::RenderTheme::supportsFocusRing):
+ (WebCore::RenderTheme::isDefault):
+ * rendering/RenderTheme.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::isControlStyled):
+ (WebCore::RenderThemeMac::adjustRepaintRect):
+ (WebCore::RenderThemeMac::baselinePosition):
+ (WebCore::RenderThemeMac::controlSupportsTints):
+ (WebCore::RenderThemeMac::adjustButtonStyle):
+ (WebCore::RenderThemeMac::setButtonCellState):
+ (WebCore::RenderThemeMac::popupInternalPaddingLeft):
+ (WebCore::RenderThemeMac::popupInternalPaddingRight):
+ (WebCore::RenderThemeMac::popupInternalPaddingTop):
+ (WebCore::RenderThemeMac::popupInternalPaddingBottom):
+ (WebCore::RenderThemeMac::paintSliderTrack):
+ (WebCore::RenderThemeMac::paintSliderThumb):
+ (WebCore::RenderThemeMac::adjustSliderThumbSize):
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::RenderThemeSafari::isControlStyled):
+ (WebCore::RenderThemeSafari::adjustRepaintRect):
+ (WebCore::RenderThemeSafari::baselinePosition):
+ (WebCore::RenderThemeSafari::controlSupportsTints):
+ (WebCore::RenderThemeSafari::adjustButtonStyle):
+ (WebCore::RenderThemeSafari::popupInternalPaddingLeft):
+ (WebCore::RenderThemeSafari::popupInternalPaddingRight):
+ (WebCore::RenderThemeSafari::popupInternalPaddingTop):
+ (WebCore::RenderThemeSafari::popupInternalPaddingBottom):
+ (WebCore::RenderThemeSafari::paintSliderTrack):
+ (WebCore::RenderThemeSafari::adjustSliderThumbSize):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::supportsFocus):
+ (WebCore::RenderThemeWin::determineClassicState):
+ (WebCore::RenderThemeWin::getClassicThemeData):
+ (WebCore::RenderThemeWin::getThemeData):
+ (WebCore::drawControl):
+ (WebCore::RenderThemeWin::paintSliderTrack):
+ (WebCore::RenderThemeWin::adjustSliderThumbSize):
+ * rendering/RenderThemeWin.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::hasAppearance):
+ (WebCore::InheritedFlags::appearance):
+ (WebCore::InheritedFlags::setAppearance):
+ (WebCore::InheritedFlags::initialAppearance):
+ * rendering/style/RenderStyleConstants.h:
+
+2008-10-17 David Hyatt <hyatt@apple.com>
+
+ Beginning of the RenderTheme re-architecture (to share more code). Add the new Theme API header
+ file. Add new USE(NEW_THEME) switch that is enabled on Mac. The Mac theme will be converted first.
+
+ Reviewed by Tim Hatcher
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * config.h:
+ * platform/Theme.h: Added.
+ (WebCore::Theme::Theme):
+ (WebCore::Theme::~Theme):
+ (WebCore::Theme::baselinePositionAdjustment):
+ (WebCore::Theme::controlHasInactiveAppearance):
+ (WebCore::Theme::controlsCanHaveInactiveAppearance):
+ (WebCore::Theme::controlsCanHaveHoveredAppearance):
+ (WebCore::Theme::controlDrawsBorder):
+ (WebCore::Theme::controlDrawsBackground):
+ (WebCore::Theme::controlDrawsFocusOutline):
+ (WebCore::Theme::selectionColor):
+ (WebCore::Theme::textSearchHighlightColor):
+ (WebCore::Theme::systemColor):
+ (WebCore::Theme::systemFont):
+ (WebCore::Theme::caretBlinkFrequency):
+ (WebCore::Theme::themeChanged):
+ (WebCore::Theme::controlSize):
+ (WebCore::Theme::controlFont):
+ (WebCore::Theme::controlPadding):
+ (WebCore::Theme::controlInternalPadding):
+ (WebCore::Theme::controlBorder):
+ (WebCore::Theme::controlBorderRadius):
+ (WebCore::Theme::paint):
+ (WebCore::Theme::inflateControlPaintRect):
+ * platform/ThemeTypes.h: Added.
+ (WebCore::):
+ (WebCore::ControlBox::ControlBox):
+ (WebCore::ControlBox::top):
+ (WebCore::ControlBox::right):
+ (WebCore::ControlBox::bottom):
+ (WebCore::ControlBox::left):
+ * platform/mac/ThemeMac.h: Added.
+ (WebCore::ThemeMac::ThemeMac):
+ (WebCore::ThemeMac::~ThemeMac):
+ * platform/mac/ThemeMac.mm: Added.
+ (WebCore::platformTheme):
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::RenderTheme):
+ * rendering/RenderTheme.h:
+
+2008-10-17 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Sam Weinig. Landed by Jan Alonzo.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21603
+ [GTK] Minor fixes to GOwnPtr
+
+ * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::mediaPlayerPrivateErrorCallback):
+
+2008-10-17 Timothy Hatcher <timothy@apple.com>
+
+ Recompile the JavaScript functions when removing any listener, so functions that are
+ not being debugged can resume normal speed again.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21715
+
+ Reviewed by Geoffrey Garen.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::globalExec): Changed an assert into an if check. This assert
+ was firing when closing the window and having the recompile fire after. This was an
+ overzelious assert now.
+ * inspector/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::didRemoveListener): Start the recompile timer.
+ (WebCore::JavaScriptDebugServer::didRemoveLastListener): Removed the recompile timer start.
+
+2008-10-17 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a regression where starting a debugging session in
+ another Web Inspector window would not show any scripts.
+ Also only attach the debugger to only the required Pages.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21708
+
+ Reviewed by Darin Adler.
+
+ * inspector/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::addListener): Add an assert and
+ remove the call to willAddFirstListener(). Add a call to
+ didAddListener().
+ (WebCore::JavaScriptDebugServer::removeListener): Add an assert
+ and call to didRemoveListener().
+ (WebCore::JavaScriptDebugServer::pageCreated): Attach the debugger
+ if there is a listener interested in the new Page.
+ (WebCore::JavaScriptDebugServer::hasListenersInterestedInPage):
+ Use hasGlobalListeners() instead of isEmpty().
+ (WebCore::JavaScriptDebugServer::sourceParsed): Ditto.
+ (WebCore::JavaScriptDebugServer::didAddListener): Added. Attach the
+ debugger to the page if non-null, or all pages if page is null.
+ (WebCore::JavaScriptDebugServer::didRemoveListener): Added. Detach
+ the debugger only if there are no interested listeners.
+ (WebCore::JavaScriptDebugServer::didRemoveLastListener): Remove the
+ call to Page::setDebuggerForAllPages().
+ * inspector/JavaScriptDebugServer.h:
+ (WebCore::JavaScriptDebugServer::hasGlobalListeners): Added.
+
+2008-10-15 Brett Wilson <brettw@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Have ImageDocument generate its own filename for the title of images
+ without relying on the suggested filename from the network layer, which
+ may be nonexistant or not relevant.
+ https://bugs.webkit.org/show_bug.cgi?id=21565
+
+ * loader/ImageDocument.cpp:
+ (WebCore::ImageTokenizer::finish):
+
+2008-10-17 Alexey Proskuryakov <ap@webkit.org>
+
+ Non-Mac build fix.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCoreSources.bkl:
+ Added ActiveDOMObject to the build.
+
+2008-10-17 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21642
+ Abstract out active object tracking
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::markActiveObjectsForDocument):
+ * dom/ActiveDOMObject.cpp: Added.
+ (WebCore::ActiveDOMObject::ActiveDOMObject):
+ (WebCore::ActiveDOMObject::~ActiveDOMObject):
+ (WebCore::ActiveDOMObject::contextDestroyed):
+ (WebCore::ActiveDOMObject::stop):
+ * dom/ActiveDOMObject.h: Added.
+ (WebCore::ActiveDOMObject::document):
+ (WebCore::ActiveDOMObject::hasPendingActivity):
+ (WebCore::ActiveDOMObject::setPendingActivity):
+ (WebCore::ActiveDOMObject::unsetPendingActivity):
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ (WebCore::Document::stopActiveDOMObjects):
+ (WebCore::Document::createdActiveDOMObject):
+ (WebCore::Document::destroyedActiveDOMObject):
+ * dom/Document.h:
+ (WebCore::Document::activeDOMObjects):
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::contextDestroyed):
+ * dom/MessagePort.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::stopLoading):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::XMLHttpRequest):
+ (WebCore::XMLHttpRequest::~XMLHttpRequest):
+ (WebCore::XMLHttpRequest::associatedFrame):
+ (WebCore::XMLHttpRequest::responseXML):
+ (WebCore::XMLHttpRequest::callReadyStateChangeListener):
+ (WebCore::XMLHttpRequest::initSend):
+ (WebCore::XMLHttpRequest::send):
+ (WebCore::XMLHttpRequest::createRequest):
+ (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
+ (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
+ (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
+ (WebCore::XMLHttpRequest::loadRequestSynchronously):
+ (WebCore::XMLHttpRequest::loadRequestAsynchronously):
+ (WebCore::XMLHttpRequest::dropProtection):
+ (WebCore::XMLHttpRequest::setRequestHeader):
+ (WebCore::XMLHttpRequest::processSyncLoadResults):
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
+ (WebCore::XMLHttpRequest::willSendRequest):
+ (WebCore::XMLHttpRequest::accessControlCheck):
+ (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
+ (WebCore::XMLHttpRequest::stop):
+ (WebCore::XMLHttpRequest::contextDestroyed):
+ * xml/XMLHttpRequest.h:
+ Move activity tracking to a new ActiveDOMObject class.
+
+2008-10-16 David Hyatt <hyatt@apple.com>
+
+ Simplify styleForRenderer to avoid confusion. Callers in the SVG filter code thought "forRenderer" meant
+ they would be given a style that corresponded to the RenderObject* passed in. This is not what the code
+ did though. This patch removes the renderer argument and the Element subclass shadow implementation
+ so that confusion like this can't occur again.
+
+ Reviewed by Oliver Hunt
+
+ * dom/Element.cpp:
+ * dom/Element.h:
+ * dom/Node.cpp:
+ (WebCore::Node::createRendererIfNeeded):
+ (WebCore::Node::styleForRenderer):
+ * dom/Node.h:
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::attach):
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::attach):
+ * svg/SVGClipPathElement.cpp:
+ (WebCore::SVGClipPathElement::canvasResource):
+ * svg/SVGFEDiffuseLightingElement.cpp:
+ (WebCore::SVGFEDiffuseLightingElement::build):
+ * svg/SVGFEFloodElement.cpp:
+ (WebCore::SVGFEFloodElement::build):
+ * svg/SVGFESpecularLightingElement.cpp:
+ (WebCore::SVGFESpecularLightingElement::build):
+ * svg/SVGGradientElement.cpp:
+ (WebCore::SVGGradientElement::buildStops):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::attachShadowTree):
+
+2008-10-16 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/attachment.cgi?bugid=21647
+
+ Make RenderStyle inherit from RefCounted so that it works with RefPtr. RenderStyle was being malloced
+ out of the RenderArena. Years and years ago (before TCMalloc), the plan was to make RenderStyles and
+ all their associated sub-structs use the arena. However only the RenderStyle itself was ever changed
+ to use the arena.
+
+ At a later point style sharing was implemented, which made using the arena for styles pretty pointless,
+ as the bulk of the styles on a given page are actually shared. Not ever making the sub-structs use the
+ arena also limited the usefulness.
+
+ Now that we have RefPtr/PassRefPtr to eliminate manual ref/deref and now that we use TCMalloc for fast
+ mallocs, there is no reason to keep RenderStyles in the arena. The benefits of being able to eliminate
+ manual ref/deref far outweigh keeping them in the arena.
+
+ Reviewed by Adam Roben
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::CSSStyleSelector::~CSSStyleSelector):
+ (WebCore::CSSStyleSelector::styleForElement):
+ (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
+ (WebCore::CSSStyleSelector::pseudoStyleForElement):
+ These methods now return a PassRefPtr. They will null out the m_style variable as they hand it back
+ so that it isn't left pointing to the previous style resolve RenderStyle (which is what the old code did).
+
+ (WebCore::CSSStyleSelector::updateFont):
+ (WebCore::CSSStyleSelector::checkSelector):
+ (WebCore::CSSStyleSelector::applyProperty):
+ (WebCore::CSSStyleSelector::mapFillSize):
+ (WebCore::CSSStyleSelector::mapFillXPosition):
+ (WebCore::CSSStyleSelector::mapFillYPosition):
+ * css/CSSStyleSelector.h:
+ (WebCore::CSSStyleSelector::style):
+ * dom/Document.cpp:
+ (WebCore::Document::recalcStyle):
+ * dom/Element.cpp:
+ (WebCore::Element::styleForRenderer):
+ (WebCore::Element::recalcStyle):
+ (WebCore::Element::computedStyle):
+ * dom/Element.h:
+ * dom/ElementRareData.h:
+ (WebCore::ElementRareData::ElementRareData):
+ (WebCore::ElementRareData::resetComputedStyle):
+ * dom/Node.cpp:
+ (WebCore::Node::diff):
+ (WebCore::Node::createRendererIfNeeded):
+ (WebCore::Node::styleForRenderer):
+ (WebCore::Node::setRenderStyle):
+ * dom/Node.h:
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setFont):
+ * html/HTMLOptGroupElement.cpp:
+ (WebCore::HTMLOptGroupElement::attach):
+ (WebCore::HTMLOptGroupElement::detach):
+ (WebCore::HTMLOptGroupElement::setRenderStyle):
+ (WebCore::HTMLOptGroupElement::nonRendererRenderStyle):
+ * html/HTMLOptGroupElement.h:
+ * html/HTMLOptionElement.cpp:
+ (WebCore::HTMLOptionElement::attach):
+ (WebCore::HTMLOptionElement::detach):
+ (WebCore::HTMLOptionElement::setRenderStyle):
+ (WebCore::HTMLOptionElement::nonRendererRenderStyle):
+ * html/HTMLOptionElement.h:
+ * page/animation/AnimationBase.h:
+ (WebCore::AnimationBase::animate):
+ * page/animation/AnimationController.cpp:
+ (WebCore::AnimationController::updateAnimations):
+ * page/animation/AnimationController.h:
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimationPrivate::updateTransitions):
+ (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
+ (WebCore::CompositeAnimationPrivate::animate):
+ (WebCore::CompositeAnimation::animate):
+ * page/animation/CompositeAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::ImplicitAnimation):
+ (WebCore::ImplicitAnimation::~ImplicitAnimation):
+ (WebCore::ImplicitAnimation::animate):
+ (WebCore::ImplicitAnimation::reset):
+ (WebCore::ImplicitAnimation::isTargetPropertyEqual):
+ (WebCore::ImplicitAnimation::blendPropertyValueInStyle):
+ * page/animation/ImplicitAnimation.h:
+ (WebCore::ImplicitAnimation::create):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::KeyframeAnimation):
+ (WebCore::KeyframeAnimation::~KeyframeAnimation):
+ (WebCore::KeyframeAnimation::animate):
+ (WebCore::KeyframeAnimation::validateTransformFunctionList):
+ * page/animation/KeyframeAnimation.h:
+ (WebCore::KeyframeAnimation::create):
+ (WebCore::KeyframeAnimation::unanimatedStyle):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paint):
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlShadowRootElement::MediaControlShadowRootElement):
+ (WebCore::MediaControlInputElement::MediaControlInputElement):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::styleDidChange):
+ (WebCore::RenderBlock::updateFirstLetter):
+ * rendering/RenderContainer.cpp:
+ (WebCore::RenderContainer::addChild):
+ (WebCore::RenderContainer::updateBeforeAfterContentForContainer):
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::updateFromElement):
+ (WebCore::RenderFileUploadControl::createButtonStyle):
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderFlow.cpp:
+ (WebCore::RenderFlow::createAnonymousFlow):
+ * rendering/RenderFlow.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::addChildToFlow):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateScrollCornerStyle):
+ (WebCore::RenderLayer::updateResizerStyle):
+ (WebCore::RenderLayer::updateReflectionStyle):
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::styleDidChange):
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::createPanel):
+ (WebCore::RenderMedia::createTimeDisplay):
+ (WebCore::RenderMedia::changeOpacity):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::selectionBackgroundColor):
+ (WebCore::RenderObject::selectionForegroundColor):
+ (WebCore::RenderObject::createAnonymousBlock):
+ (WebCore::RenderObject::setAnimatableStyle):
+ (WebCore::RenderObject::setStyle):
+ (WebCore::RenderObject::setStyleInternal):
+ (WebCore::RenderObject::arenaDelete):
+ (WebCore::RenderObject::firstLineStyle):
+ (WebCore::RenderObject::getPseudoStyle):
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::style):
+ * rendering/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::setStyle):
+ * rendering/RenderSVGBlock.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ * rendering/RenderScrollbar.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::styleDidChange):
+ (WebCore::RenderSlider::createThumbStyle):
+ (WebCore::RenderSlider::updateFromElement):
+ * rendering/RenderSlider.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::addChild):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::addChild):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::addChild):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::styleDidChange):
+ (WebCore::RenderTextControl::createInnerBlockStyle):
+ (WebCore::RenderTextControl::createInnerTextStyle):
+ (WebCore::RenderTextControl::createResultsButtonStyle):
+ (WebCore::RenderTextControl::createCancelButtonStyle):
+ (WebCore::RenderTextControl::createSubtreeIfNeeded):
+ (WebCore::RenderTextControl::updatePlaceholderVisibility):
+ * rendering/RenderTextControl.h:
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::TextControlInnerElement::attachInnerElement):
+ * rendering/TextControlInnerElements.h:
+ * rendering/style/KeyframeList.cpp:
+ (WebCore::KeyframeList::clear):
+ (WebCore::KeyframeList::operator==):
+ (WebCore::KeyframeList::insert):
+ * rendering/style/KeyframeList.h:
+ (WebCore::KeyframeValue::KeyframeValue):
+ (WebCore::KeyframeValue::~KeyframeValue):
+ (WebCore::KeyframeValue::key):
+ (WebCore::KeyframeValue::style):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::defaultStyle):
+ (WebCore::RenderStyle::create):
+ (WebCore::RenderStyle::createDefaultStyle):
+ (WebCore::RenderStyle::clone):
+ (WebCore::RenderStyle::RenderStyle):
+ (WebCore::RenderStyle::getCachedPseudoStyle):
+ (WebCore::RenderStyle::addCachedPseudoStyle):
+ * rendering/style/RenderStyle.h:
+ (WebCore::):
+ (WebCore::InheritedFlags::operator!=):
+ * svg/SVGClipPathElement.cpp:
+ (WebCore::SVGClipPathElement::canvasResource):
+ * svg/SVGGradientElement.cpp:
+ (WebCore::SVGGradientElement::buildStops):
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::resolveStyle):
+ * svg/SVGStyledElement.h:
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::recalcStyle):
+ (WebCore::SVGUseElement::attachShadowTree):
+
+2008-10-16 Kenneth Russell <kenneth.russell@sun.com>
+
+ Reviewed and landed by Anders Carlsson.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21587
+ NPN_PluginThreadAsyncCall does not work properly
+
+ * plugins/PluginMainThreadScheduler.cpp:
+ (WebCore::PluginMainThreadScheduler::dispatchCalls):
+ Make sure to set m_callPending to false once the queue has been cleared.
+
+2008-10-15 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21609
+ Make MessagePorts protect their peers across heaps
+
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::MessagePort):
+ * dom/MessagePort.h:
+ (WebCore::MessagePort::setJSWrapperIsKnownToBeInaccessible):
+ (WebCore::MessagePort::jsWrapperIsKnownToBeInaccessible):
+ Track objects whose JS wrappers are no longer reachable in MessagePort. Unfortunately, this
+ means that the implementation object knows about JS bindings - but it is not possible to
+ access JS wrappers from another heap/thread.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::markCrossHeapDependentObjectsForDocument):
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::markCrossHeapDependentObjects):
+ * bindings/js/JSDOMWindowBase.h:
+ Implement cross-heap dependency tracking for entangled MessagePorts. If a wrapper object
+ hasn't been marked normally, it is marked as inaccessible. It is then marked manually,
+ as long as its entangled port is accessible itself.
+
+2008-10-15 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Remove unneeded check of whether a Page defers loading before running it
+ in a modal dialog.
+
+ No test possible.
+
+ Reviewed by Tim Hatcher.
+
+ * page/Chrome.cpp:
+
+2008-10-15 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Fixed https://bugs.webkit.org/show_bug.cgi?id=21345
+ Start the debugger without reloading the inspected page
+
+ * WebCore.base.exp: New symbols.
+
+ * ForwardingHeaders/kjs/CollectorHeapIterator.h: Copied from ForwardingHeaders/kjs/ustring.h.
+ * ForwardingHeaders/kjs/Parser.h: Copied from ForwardingHeaders/kjs/ustring.h.
+ * WebCore.xcodeproj/project.pbxproj: New forwarding headers.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::setWindowVisible):
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ (WebCore::InspectorController::startDebugging):
+ * inspector/InspectorController.h: Renamed startDebuggingAndReloadInspectedPage
+ to startDebugging, and changed its behavior to match.
+
+ * inspector/JavaScriptDebugListener.h:
+ * inspector/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::JavaScriptDebugServer):
+ (WebCore::JavaScriptDebugServer::addListener):
+ (WebCore::JavaScriptDebugServer::removeListener):
+ (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
+ (WebCore::JavaScriptDebugServer::willAddFirstListener):
+ (WebCore::JavaScriptDebugServer::didRemoveLastListener):
+ * inspector/JavaScriptDebugServer.h: Refactored the
+ JavaScriptDebugServer to centralize handling of adding the first listener
+ and removing the last. Then, added a feature to recompile all JS functions
+ in these cases. This allows us to dynamically add and remove hooks like
+ the debugger hooks without reloading the page.
+
+ * inspector/front-end/ScriptsPanel.js:
+ * English.lproj/localizedStrings.js: Updated for startDebuggingAndReloadInspectedPage =>
+ startDebugging rename. Removed all UI that claimed that starting the
+ debugger would reload the page.
+
+2008-10-15 Adele Peterson <adele@apple.com>
+
+ Attempt to fix the Tiger build.
+
+ * platform/network/mac/ResourceHandleMac.mm:
+
+2008-10-15 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Build fix attempt.
+
+ Try to fix static/non-static declaration of g_string_append_uri_escape
+ by renaming that string. Another look needs to be taken.
+
+ * platform/gtk/guriescape.c:
+ (_webcore_g_string_append_uri_escaped):
+ (_webcore_g_uri_escape_string):
+
+2008-10-15 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Build fix.
+
+ m_animatingImageType is gone.
+
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+
+2008-10-15 Jeff Cook <cookiecaper@gmail.com>
+
+ Reviewed by Holger Freyther.
+
+ Stop SIGSEGV when leaving a page with a Flash object by reordering
+ window destruction and plugin stop.
+
+ See https://bugs.webkit.org/show_bug.cgi?id=20779
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::stop):
+
+2008-10-15 Adele Peterson <adele@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Implement didSendBodyData delegate method, and use older code path when that delegate doesn't exist.
+
+ * platform/network/ResourceHandle.h:
+ * platform/network/mac/FormDataStreamMac.mm: (WebCore::formRead):
+ * platform/network/mac/ResourceHandleMac.mm:
+ (WebCore::ResourceHandle::didSendBodyDataDelegateExists):
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::cancel):
+ (-[WebCoreResourceHandleAsDelegate connection:willSendRequest:redirectResponse:]):
+ (-[WebCoreResourceHandleAsDelegate connection:didSendBodyData:totalBytesWritten:totalBytesExpectedToWrite:]):
+ (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
+ (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
+
+2008-10-15 Peter Kasting <pkasting@google.com>
+
+ Reviewed by David Hyatt.
+
+ Qt build bustage fix.
+
+ * platform/graphics/qt/StillImageQt.h:
+ (WebCore::StillImage::destroyDecodedData):
+
+2008-10-15 David Hyatt <hyatt@apple.com>
+
+ Make sure scrollbar styles get deleted if they aren't assigned to a renderer.
+
+ Reviewed by Mark Rowe
+
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+
+2008-10-15 Peter Kasting <pkasting@google.com>
+
+ Reviewed by David Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19663 (Second attempt)
+ Account for paint and timer lag when animating images. Also pretend
+ that images whose animations were paused (by becoming invisible)
+ continued to animate, by "catching up" to the correct frame when they're
+ shown again.
+
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::destroyDecodedData):
+ (WebCore::BitmapImage::cacheFrame):
+ (WebCore::BitmapImage::frameIsCompleteAtIndex):
+ (WebCore::BitmapImage::frameDurationAtIndex):
+ (WebCore::BitmapImage::frameHasAlphaAtIndex):
+ (WebCore::BitmapImage::repetitionCount):
+ (WebCore::BitmapImage::shouldAnimate):
+ (WebCore::BitmapImage::startAnimation):
+ (WebCore::BitmapImage::resetAnimation):
+ (WebCore::BitmapImage::advanceAnimation):
+ (WebCore::BitmapImage::internalAdvanceAnimation):
+ (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
+ * platform/graphics/BitmapImage.h:
+ (WebCore::FrameData::FrameData):
+ (WebCore::BitmapImage::):
+ * platform/graphics/GeneratedImage.h:
+ (WebCore::GeneratedImage::destroyDecodedData):
+ * platform/graphics/Image.h:
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cg/PDFDocumentImage.h:
+ (WebCore::PDFDocumentImage::destroyDecodedData):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/wx/ImageWx.cpp:
+ (WebCore::FrameData::clear):
+ (WebCore::BitmapImage::draw):
+ * svg/graphics/SVGImage.h:
+ (WebCore::SVGImage::destroyDecodedData):
+
+2008-10-14 Maxime Britto <britto@apple.com>
+
+ Reviewed by Darin Adler, tweaked and landed by Beth.
+
+ * WebCore.base.exp: Exposes two functions to be able to create a
+ selection from a point on the screen. Also exposes the new
+ TextIterator::currentNode function.
+ * WebCore/editing/TextIterator.cpp:
+ (TextIterator::currentNode) : New function that returns the current
+ text node or NULL if there is no text node.
+
+2008-10-15 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Holger Freyther.
+
+ http://bugs.webkit.org/show_bug.cgi?id=21211
+ [CURL] Upload doesn't work because cancel is called
+
+ FormDataStream::read returns 0 when retrieving data from the form
+ fails, but also when there is no more data to send. This means that
+ ResourceHandleManager::cancel is always called even when the data was
+ successfully sent.
+
+ Check if there are more elements in the form before calling
+ FormDataStream::read.
+
+ * platform/network/curl/FormDataStreamCurl.cpp:
+ (WebCore::FormDataStream::hasMoreElements):
+ * platform/network/curl/FormDataStreamCurl.h:
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::readCallback):
+
+2008-10-15 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Holger Freyther.
+
+ http://bugs.webkit.org/show_bug.cgi?id=20664
+ [GTK] File names are not always encodable in UTF-8
+
+ On Linux file names are just raw data and cannot always be directly
+ encoded in UTF-8 or in any other encodings, so we escape them before
+ storing the file name in a String and unescape them before passing
+ them to native functions handling files.
+
+ * GNUmakefile.am:
+ * platform/FileSystem.h:
+ * platform/gtk/FileChooserGtk.cpp:
+ (WebCore::stringByAdoptingFileSystemRepresentation):
+ (WebCore::FileChooser::basenameForWidth):
+ * platform/gtk/FileSystemGtk.cpp:
+ (WebCore::filenameToString):
+ (WebCore::filenameFromString):
+ (WebCore::filenameForDisplay):
+ (WebCore::fileExists):
+ (WebCore::deleteFile):
+ (WebCore::deleteEmptyDirectory):
+ (WebCore::getFileSize):
+ (WebCore::getFileModificationTime):
+ (WebCore::makeAllDirectories):
+ (WebCore::homeDirectoryPath):
+ (WebCore::pathGetFileName):
+ (WebCore::listDirectory):
+ * platform/gtk/KURLGtk.cpp:
+ (WebCore::KURL::fileSystemPath):
+ * platform/gtk/SharedBufferGtk.cpp:
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+ * platform/gtk/guriescape.c: Added.
+ (is_valid):
+ (gunichar_ok):
+ (g_string_append_uri_escaped):
+ (_webcore_g_uri_escape_string):
+ * platform/gtk/guriescape.h: Added.
+
+2008-10-15 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ - part of https://bugs.webkit.org/show_bug.cgi?id=20543
+ Moved gradient spread method out of SVG into the GraphicsContext.
+
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::spreadMethod):
+ (WebCore::GraphicsContext::setSpreadMethod):
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::):
+ * platform/graphics/GraphicsContextPrivate.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::applySpreadMethod):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::applySpreadMethod):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ * svg/GradientAttributes.h:
+ (WebCore::GradientAttributes::GradientAttributes):
+ (WebCore::GradientAttributes::spreadMethod):
+ (WebCore::GradientAttributes::setSpreadMethod):
+ * svg/SVGGradientElement.cpp:
+ (WebCore::SVGGradientElement::parseMappedAttribute):
+ * svg/SVGGradientElement.h:
+ * svg/SVGLinearGradientElement.cpp:
+ (WebCore::SVGLinearGradientElement::collectGradientProperties):
+ * svg/SVGRadialGradientElement.cpp:
+ (WebCore::SVGRadialGradientElement::collectGradientProperties):
+ * svg/graphics/SVGPaintServerGradient.cpp:
+ (WebCore::operator<<):
+ (WebCore::SVGPaintServerGradient::SVGPaintServerGradient):
+ (WebCore::SVGPaintServerGradient::spreadMethod):
+ (WebCore::SVGPaintServerGradient::setGradientSpreadMethod):
+ (WebCore::SVGPaintServerGradient::externalRepresentation):
+ * svg/graphics/SVGPaintServerGradient.h:
+ * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
+ (WebCore::SVGPaintServerGradient::setup):
+ * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
+ (WebCore::SVGPaintServerGradient::setup):
+
+2008-10-09 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Sam Weinig.
+
+ Make pan scrolling a platform configurable option
+ https://bugs.webkit.org/show_bug.cgi?id=21515
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleAutoscroll):
+ (WebCore::EventHandler::autoscrollTimerFired):
+ (WebCore::EventHandler::stopAutoscrollTimer):
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::keyEvent):
+
+2008-10-10 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Add some PLATFORM(CHROMIUM) ifdefs to WebCore
+ https://bugs.webkit.org/show_bug.cgi?id=21511
+
+ * loader/FTPDirectoryDocument.cpp:
+ * loader/FTPDirectoryParser.cpp:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::finishedLoadingDocument):
+ * platform/ContextMenuItem.h:
+ * platform/Cursor.h:
+ * platform/DragData.h:
+ * platform/DragImage.h:
+ * platform/Pasteboard.h:
+ * platform/PlatformKeyboardEvent.h:
+ (WebCore::PlatformKeyboardEvent::isSystemKey):
+ * platform/PlatformMenuDescription.h:
+ * platform/PlatformMouseEvent.h:
+ * platform/PlatformWheelEvent.h:
+ * platform/PopupMenu.h:
+ * platform/ScrollView.h:
+ * platform/Widget.h:
+ * platform/network/NetworkStateNotifier.h:
+
+2008-10-14 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fixed https://bugs.webkit.org/show_bug.cgi?id=21490
+ Optimize keyframe style sheet changes by avoiding styleSheetChanged()
+
+ Test: css3/change-keyframes.html
+
+ * css/WebKitCSSKeyframesRule.cpp:
+ (WebCore::WebKitCSSKeyframesRule::append):
+ (WebCore::WebKitCSSKeyframesRule::deleteRule):
+
+2008-10-14 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21595
+
+ Clean up background and overflow propagation from the body to the viewport. Make it match the
+ latest CSS2.1 spec thinking.
+
+ Reviewed by Adam Roben
+
+ Added many tests at fast/body-propagation/. These are Simon Pieters' tests of propagation handling
+ (available at http://simon.html5.org/test/css/magic-body/).
+
+ * dom/Document.cpp:
+ (WebCore::Document::body):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::layout):
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::styleDidChange):
+ (WebCore::RenderBox::paintRootBoxDecorations):
+ (WebCore::RenderBox::paintBoxDecorations):
+ (WebCore::RenderBox::repaintLayerRectsForImage):
+
+2008-10-14 Dimitri Glazkov <dglazkov@chromium.org>
+
+ Reviewed and landed by Sam Weinig.
+
+ Due to change in spec (http://dev.w3.org/2006/webapi/selectors-api/#namespace),
+ remove NSResolver code, leaving only checking for selectors that need
+ NS resolution and throwing a coresponding error.
+
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * bindings/js/JSDocumentCustom.cpp:
+ * bindings/js/JSDocumentFragmentCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/js/JSNSResolver.cpp: Removed.
+ * bindings/js/JSNSResolver.h: Removed.
+ * dom/Document.idl:
+ * dom/DocumentFragment.idl:
+ * dom/Element.idl:
+ * dom/NSResolver.h: Removed.
+ * dom/NSResolver.idl: Removed.
+ * dom/Node.h:
+ * dom/Node.cpp:
+ (WebCore::forEachTagSelector):
+ (WebCore::SelectorNeedsNamespaceResolutionFunctor::operator()):
+ (WebCore::selectorNeedsNamespaceResolution):
+ (WebCore::Node::querySelector):
+ (WebCore::Node::querySelectorAll):
+
+2008-10-14 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig (all but the FormDataListItem rename).
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21593
+ Bug 21593: add multiple-file support to HTMLFormElement
+
+ * html/FormDataList.cpp: Removed appendFile since it's now inline.
+ Also took incorrect old copyrights off of this file that are left
+ over from when it was split.
+ * html/FormDataList.h: Ditto. Renamed FormDataListItem to Item and
+ made it a member of FormDataList. Changed it to hold a File object
+ instead of a path. And made its data members private. Changed
+ FormDataList::appendFile accordingly.
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::formData): Updated for above changes.
+ Removed the code that special-cases HTMLInputElement, because now
+ the FormDataListItem has everything we need. And if there are
+ multiple files, we'll get multiple list items for them.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::appendFormData): Changed the code for
+ <input type=file> to use File objects instead of path strings and
+ also to append multiple files if the file list has them.
+
+2008-10-14 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix QtWebKit scrollbar painting errors
+
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::ScrollbarThemeQt::paint):
+ (WebCore::ScrollbarThemeQt::paintScrollCorner):
+
+2008-10-14 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix scrollbar arrows for horizontal scrollbars
+
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::styleOptionSlider):
+
+2008-10-14 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Use style-painter to draw scrollbars in ScrollbarThemeQt
+
+ This has the benefit of setting up the painter properly without
+ antialiasing and saving and restoring the brush. It also ensures
+ that we use the style of the QWebView over the QApplication style
+ if possible.
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::StylePainter::StylePainter):
+ (WebCore::StylePainter::init):
+ * platform/qt/RenderThemeQt.h:
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::ScrollbarThemeQt::paint):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Add support for CSS transitions on some SVG properties. This patch is intended to be a guideline
+ for how to add support for the rest.
+
+ Reviewed by Oliver Hunt
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::ensurePropertyMap):
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::fillOpacity):
+ (WebCore::RenderStyle::setFillOpacity):
+ (WebCore::RenderStyle::strokeOpacity):
+ (WebCore::RenderStyle::setStrokeOpacity):
+ (WebCore::RenderStyle::floodOpacity):
+ (WebCore::RenderStyle::setFloodOpacity):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ <rdar://problem/6289712> REGRESSION(r37432-37490): Scroll bar is not drawn in Bookmark View, Preferences sheets.
+
+ Fix for disabled scrollbars not painting in Windows Safari. Make sure that the Windows theme
+ implements paintTrackBackground so that when the thumb is not present the track still paints.
+
+ Reviewed by Oliver Hunt
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::paintTrackBackground):
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Fix over-invalidation of native scrollbars.
+
+ Reviewed by Oliver Hunt
+
+ * platform/Scrollbar.h:
+ (WebCore::Scrollbar::styleChanged):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::styleChanged):
+
+2008-10-13 Alp Toker <alp@nuanti.com>
+
+ Fix autotools dist build target by listing recently added header
+ files only. Not reviewed.
+
+ * GNUmakefile.am:
+
+2008-10-13 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ Don't run a SQLite query on every iteration of the sync thread when the query
+ will touch a large portion of the icon database while performing no useful work.
+
+ * loader/icon/IconDatabase.cpp:
+ (WebCore::IconDatabase::writeToDatabase): Don't call checkForDanglingPageURLs unless
+ we modified the database.
+ (WebCore::IconDatabase::checkForDanglingPageURLs): Don't do any work in a release build
+ unless we've been asked to prune any dangling pageURLs that we find.
+
+2008-10-13 Maciej Stachowiak <mjs@apple.com>
+
+ Rubber stamped by Mark Rowe.
+
+ - use gcc 4.2 when building with Xcode 3.1 or newer on Leopard, even though this is not the default
+
+ * Configurations/DebugRelease.xcconfig:
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Make dropdown lists on Windows work with CSS custom scrollbars.
+
+ Reviewed by Adele
+
+ * platform/PopupMenu.h:
+ (WebCore::PopupMenu::scrollbarCornerPresent):
+ * platform/PopupMenuClient.h:
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::show):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::createScrollbar):
+ * rendering/RenderMenuList.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::createScrollbar):
+ * rendering/RenderTextControl.h:
+
+2008-10-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/6271864> Links from image maps not being included in AXLinkUIElements
+
+ Links from image maps were not being included in the web area's AXLinkUIElements attribute.
+ The position of image map links was being reported incorrectly and the parent-chain
+ hierarchy for image map links was incorrect because image map links did not have a reference
+ to their parent image.
+
+ Test: accessibility/document-links.html
+
+ * page/AccessibilityImageMapLink.cpp:
+ (WebCore::AccessibilityImageMapLink::parentObject):
+ (WebCore::AccessibilityImageMapLink::actionElement):
+ (WebCore::AccessibilityImageMapLink::elementRect):
+ * page/AccessibilityImageMapLink.h:
+ (WebCore::AccessibilityImageMapLink::setHTMLMapElement):
+ (WebCore::AccessibilityImageMapLink::setParent):
+ * page/AccessibilityObject.cpp:
+ * page/AccessibilityObject.h:
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
+ (WebCore::AccessibilityRenderObject::getDocumentLinks):
+ (WebCore::AccessibilityRenderObject::addChildren):
+ * page/AccessibilityRenderObject.h:
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Make RenderListBox work with CSS scrollbars. Refactoring this code to support creation/destruction in
+ the same way RenderLayer does also fixes a bug where the PLT would assert on the next-to-last page (no
+ idea how to make a test case for that, though, since I couldn't repro without running the whole PLT).
+
+ Reviewed by Tim Hatcher
+
+ Added scrollbars/listbox-scrollbar-combinations.html
+
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::~RenderListBox):
+ (WebCore::RenderListBox::updateFromElement):
+ (WebCore::RenderListBox::createScrollbar):
+ (WebCore::RenderListBox::destroyScrollbar):
+ (WebCore::RenderListBox::setHasVerticalScrollbar):
+ * rendering/RenderListBox.h:
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ In order to always match the :corner-present pseudo-class properly, delay initial updating of
+ scrollbar styles until the layer has the scrollbars in its member variables.
+
+ Reviewed by Tim Hatcher
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::setHasHorizontalScrollbar):
+ (WebCore::RenderLayer::setHasVerticalScrollbar):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::RenderScrollbar):
+
+2008-10-13 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21577
+ 5 false positive StructureID leaks
+
+ In WebCore, we intentionally leak the common JSGlobalData which in turn
+ leaks 5 StructureIDs. Use the new JSGlobalData::createLeaked in order to
+ ignore the StructureIDs leaked within.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::commonJSGlobalData):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Add support for the :corner-present pseudoclass, which enables scrollbar pieces to change their
+ artwork based on whether there is a scrollbar corner present.
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollbarCornerPresent):
+ * platform/ScrollView.h:
+ * platform/ScrollbarClient.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::cornerRect):
+ (WebCore::scrollCornerRect):
+ (WebCore::resizerCornerRect):
+ (WebCore::RenderLayer::scrollbarCornerPresent):
+ (WebCore::RenderLayer::setHasHorizontalScrollbar):
+ (WebCore::RenderLayer::setHasVerticalScrollbar):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::horizontalScrollbar):
+ (WebCore::RenderLayer::verticalScrollbar):
+ * rendering/RenderListBox.h:
+ (WebCore::RenderListBox::scrollbarCornerPresent):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Make resizers and scrollbar corners respect :window-inactive (one more bug fix and then Tim's master
+ test case for all this can land).
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintScrollCorner):
+ (WebCore::RenderLayer::paintResizer):
+ (WebCore::RenderLayer::styleChanged):
+ (WebCore::RenderLayer::updateScrollCornerStyle):
+ (WebCore::RenderLayer::updateResizerStyle):
+ * rendering/RenderLayer.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::paint):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::paintIntoRect):
+
+2008-10-13 David Hyatt <hyatt@apple.com>
+
+ Rework resizer and scroll corner painting so that custom resizers and scroll corners will paint
+ and invalidate properly as images load, etc.
+
+ Reviewed by Tim Hatcher
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::cornerRect):
+ (WebCore::scrollCornerRect):
+ (WebCore::resizerCornerRect):
+ (WebCore::RenderLayer::positionOverflowControls):
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintScrollCorner):
+ (WebCore::RenderLayer::paintResizer):
+ (WebCore::RenderLayer::isPointInResizeControl):
+ (WebCore::RenderLayer::hitTestOverflowControls):
+ (WebCore::RenderLayer::styleChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::setRect):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::styleDidChange):
+ (WebCore::RenderScrollbarPart::imageChanged):
+
+2008-10-13 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Darin Adler. Landed by Jan Alonzo.
+
+ WebKit GTK Port needs a smartpointer to handle g_free (GFreePtr?)
+ http://bugs.webkit.org/show_bug.cgi?id=20483
+
+ Start the conversion to use GOwnPtr and fix a memory leak.
+
+ * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::mediaPlayerPrivateErrorCallback):
+
+2008-10-12 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Windows build fix.
+
+ * loader/TextResourceDecoder.cpp:
+
+2008-10-12 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21229
+ Bug 21229: NetworkStateNotifier.h lacks a #include <windows.h> for PLATFORM(WIN)
+
+ * platform/network/NetworkStateNotifier.h: Add the #include.
+
+2008-10-12 Darin Adler <darin@apple.com>
+
+ Based on work by Holger Freyther.
+
+ - part of https://bugs.webkit.org/show_bug.cgi?id=20953
+ Split WidthIterator into its own source file.
+
+ * GNUmakefile.am: Added new source files.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * WebCoreSources.bkl: Ditto.
+
+ * platform/graphics/Font.cpp: Use WidthIterator from its new place.
+ * platform/graphics/WidthIterator.cpp: Added.
+ * platform/graphics/WidthIterator.h: Added.
+
+2008-10-12 Tony Chang <tony@chromium.org>
+
+ Reviewed by Sam Weinig.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21480
+ Remove duplicate definitions of MimeClassInfo and PluginInfo.
+
+ * plugins/PluginInfoStore.cpp: Added an include.
+ * plugins/PluginInfoStore.h: Removed struct declarations.
+
+2008-10-12 Darin Adler <darin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21563
+ Bug 21563: platform Gradient class should not use the CSS parser
+
+ * platform/graphics/Gradient.cpp: Removed the overload of addColorStop
+ that accepts a CSS color string. That's handled in the DOM now, not here.
+ (WebCore::Gradient::addColorStop): Use getRGBA instead of having our own
+ copy of it here.
+ * platform/graphics/Gradient.h: More of the same. Tweak formatting a bit.
+
+2008-10-12 Glenn Wilson <gwilson@google.com>
+
+ Reviewed by Darin Adler.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=20461
+
+ Added feature to allow multi-line inputs into text fields.
+ HTMLInputElement would cut the set text at the first 'system' character,
+ so it would truncate at the first carriage return or newline.
+ This fix modifies that behavior to truncate at any non-space system character
+ but changes \r, \n, and \r\n to a single space.
+
+ Tests: editing/pasteboard/paste-multiline-text-input.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::constrainValue):
+
+2008-10-12 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=20435
+
+ Added exception codes to canvas gradients to match current specification.
+
+ Tests: fast/canvas/gradient-addColorStop-with-invalid-color.html
+ fast/canvas/linearGradient-infinite-values.html
+ fast/canvas/radialGradient-infinite-values.html
+
+ * html/CanvasGradient.cpp:
+ (WebCore::CanvasGradient::addColorStop):
+ * html/CanvasGradient.h:
+ * html/CanvasGradient.idl:
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::createLinearGradient):
+ (WebCore::CanvasRenderingContext2D::createRadialGradient):
+ * html/CanvasRenderingContext2D.h:
+ * html/CanvasRenderingContext2D.idl:
+
+2008-10-12 Eric Roman <eroman@chromium.org>
+
+ - https://bugs.webkit.org/show_bug.cgi?id=20246
+ Implement RenderThemeWin::systemColor() to match Windows colors.
+
+ Reviewed by David Hyatt.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::cssValueIdToSysColorIndex):
+ (WebCore::RenderThemeWin::systemColor):
+ * rendering/RenderThemeWin.h:
+
+2008-10-12 Aaron Bockover <abockover@novell.com>
+
+ Reviewed by Alp Toker.
+
+ Add version parsing for Flash, and the PluginQuirkDontSetNullWindowHandleOnDestroy
+ plugin quirk if Flash 10 or newer since at least in b218, setting a NULL window
+ handler on destroy crashes WebKit <https://bugs.webkit.org/show_bug.cgi?id=19859>
+
+ * plugins/gtk/PluginPackageGtk.cpp:
+
+2008-10-12 Jonathon Jongsma <jonathon.jongsma@collabora.co.uk>
+
+ Reviewed by Oliver Hunt.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=19331
+ <rdar://problem/5984433>: Drag and drop of links in edit mode violates assert in MoveSelectionCommand::doApply()
+
+ * page/DragController.cpp:
+ (WebCore::DragController::startDrag): When a link is dragged without any
+ text selected (note: for this to work, the EditableLinkBehavior setting must be
+ set to 'live' or 'default') and then dropped into an editable html document it
+ will eventually violate an ASSERT in MoveSelectionCommand that requires that there
+ is a selection. To prevent this, expand the selection to the enclosing anchor tag
+ when the drag begins.
+
+2008-10-12 Darin Adler <darin@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21557
+ Bug 21557: REGRESSION: generated-layer-scrollbar-crash.html is crashing
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::getPseudoStyle): Keep walking up the parent chain
+ until we hit an Element. Nowadays, Node::isElementNode() is just as efficient
+ as RenderObject::isText(), and this guarantees that the node can be cast to
+ Element*, which is done just below. The reason this is hit is that RenderLayer
+ can call getPseudoStyle on a RenderView, which has the document as its
+ element() -- and a document is neither a Text node nor an Element. A loose
+ end is that this seems to mean you can't style the scrollbar corner or the
+ resizer on a RenderView. Hyatt may want to look into that later.
+
+2008-10-12 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21556
+ Bug 21556: non-ASCII digits are allowed in places where only ASCII should be
+
+ Tests: fast/dom/HTMLFontElement/size-attribute.html
+ fast/dom/HTMLInputElement/size-attribute.html
+ fast/dom/HTMLTableElement/cellpadding-attribute.html
+
+ * html/HTMLFontElement.cpp:
+ (WebCore::parseFontSizeNumber): Use isASCIIDigit instead of
+ Unicode::isDigit, since non-ASCII digits are not valid here.
+ * html/HTMLFontElement.h: Tweaked formatting a bit and removed
+ the unneeded destructor declaration.
+ * platform/text/String.cpp:
+ (WebCore::lengthOfCharactersAsInteger): Use isASCIIDigit instead
+ of Unicode::isDigit, since non-ASCII digits are not valid.
+
+2008-10-12 Jungshik Shin <jshin@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Treat x-user-defined as windows-1252 for html files with meta charset
+ declaration to be compatible with Indian web sites.
+ ( https://bugs.webkit.org/show_bug.cgi?id=18270 )
+
+ Test: fast/encoding/charset-xuser-defined.html
+
+ * loader/TextResourceDecoder.cpp:
+ (WebCore::TextResourceDecoder::setEncoding):
+
+2008-10-12 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Remove unneeded forward declaration.
+
+ * platform/graphics/ImageBuffer.h:
+
+2008-10-12 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21560
+ Layering violation: String should not be responsible for creating Lengths
+
+ It was a layering violation for String to know haw to parse
+ into Lengths, LengthArrays, and CoordsArrays.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * html/HTMLAreaElement.cpp:
+ (WebCore::HTMLAreaElement::parseMappedAttribute):
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::parseMappedAttribute):
+ * platform/text/AtomicString.h:
+ (WebCore::AtomicString::percentage):
+ * platform/text/PlatformString.h:
+ * platform/text/String.cpp:
+ * platform/text/StringImpl.cpp:
+ * platform/text/StringImpl.h:
+ * rendering/Length.cpp: Added.
+ (WebCore::parseLength):
+ (WebCore::countCharacter):
+ (WebCore::newCoordsArray):
+ (WebCore::newLengthArray):
+ * rendering/Length.h:
+ (WebCore::LengthSize::LengthSize):
+
+2008-10-12 Brad Garcia <bgarcia@google.com>
+
+ Reviewed by Darin Adler.
+
+ Interpret fractional percentage values for %MultiLength values.
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=3591
+ Test: fast/frames/frame-length-fractional-percentage.html
+
+ * platform/text/StringImpl.cpp:
+ (WebCore::parseLength):
+
+2008-10-12 Timothy Hatcher <timothy@apple.com>
+
+ Remember the expanded state of the rules in the Styles pane. So
+ collapsing a rule will persist across all the elements that have
+ that same rule. The same applies to Computed Style, so the Computed
+ Style rule is now collapsed by default. This should help lessen the
+ confusion on why Computed Style can't be edited (a common confusion.)
+
+ https://bugs.webkit.org/show_bug.cgi?id=21553
+
+ Reviewed by Darin Adler.
+
+ * inspector/front-end/PropertiesSection.js:
+ (WebInspector.PropertiesSection): Set the _expanded property directly,
+ instead of using the setter. Expanded is the default, so no work is needed.
+ This prevents calling StylesSidebarPane.collapse before object initialization
+ is complete.
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylesSidebarPane.prototype.update): Check the Preferences object
+ for the expanded state of the StylePropertiesSection. Collapse computed style
+ by default and expand everything else.
+ (WebInspector.StylePropertiesSection): Make a semi unique identifier to be used
+ when remembering expanded state.
+ (WebInspector.StylePropertiesSection.prototype.expand): Set the expanded state
+ to true for this identifier in Preferences.styleRulesExpandedState. Don't remember
+ the state if the dontRememberState property is true.
+ (WebInspector.StylePropertiesSection.prototype.collapse): Set the expanded state
+ to false for this identifier in Preferences.styleRulesExpandedState.
+ * inspector/front-end/inspector.js:
+ (Preferences.styleRulesExpandedState): Initialize to an empty object.
+
+2008-10-12 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Alp Toker.
+
+ [Gtk] Remove libWebCoreJS.la when doing make clean
+ https://bugs.webkit.org/show_bug.cgi?id=21544
+
+ Remove libWebCoreJS.la when doing a clean target
+
+ * GNUmakefile.am: add libWebCoreJS.la to CLEANFILES
+
+2008-10-11 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20592
+ The focus ring is not shown while navigating on some pages
+
+ Fix drawFocusRing() so it doesn't depend on the current graphics
+ state, thus matching other platforms which already work this way.
+
+ This patch provides two code paths: one using straight Cairo and
+ one specialised for the GTK+ port with a more conventional appearance.
+
+ Also change focusRingColor() to return a null color, allowing the
+ focus ring to pick up the style's current color if it isn't overridden
+ with CSS.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::drawFocusRing):
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ (WebCore::focusRingColor):
+
+2008-10-11 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ - change all internal callers to use Cache::evict() instead of remove()
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::revalidateResource):
+ (WebCore::Cache::revalidationSucceeded):
+ (WebCore::Cache::pruneDeadResources):
+ (WebCore::Cache::setDisabled):
+
+2008-10-11 David Hyatt <hyatt@apple.com>
+
+ Make sure invalidatePart knows how to invalidate the track and scrollbar backgrounds.
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::invalidatePart):
+
+2008-10-11 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21549 (regression in before/after track pieces).
+
+ Also fixed resizer positioning problems.
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+ (WebCore::ScrollbarThemeComposite::trackPosition):
+ (WebCore::ScrollbarThemeComposite::trackLength):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::constrainTrackRectToTrackPieces):
+ * rendering/RenderLayer.cpp:
+ (WebCore::scrollCornerRect):
+ (WebCore::RenderLayer::positionOverflowControls):
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::isPointInResizeControl):
+ (WebCore::RenderLayer::hitTestOverflowControls):
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::constrainTrackRectToTrackPieces):
+ * rendering/RenderScrollbarTheme.h:
+
+2008-10-11 Alp Toker <alp@nuanti.com>
+
+ Reviewed by David Hyatt.
+
+ Implement release/retain for Widget GTK+.
+
+ * platform/Widget.cpp:
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::~Widget):
+ (WebCore::Widget::releasePlatformWidget):
+ (WebCore::Widget::retainPlatformWidget):
+
+2008-10-11 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - rename WebCoreSetAlwaysUseATSU to WebCoreSetAlwaysUsesComplexTextCodePath
+ and add a corresponding getter; add the same functions on Windows
+
+ * WebCore.base.exp:
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::setCodePath):
+ (WebCore::codePath):
+ (WebCore::Font::canUseGlyphCache):
+ * platform/graphics/Font.h:
+ * platform/mac/WebCoreTextRenderer.h:
+ * platform/mac/WebCoreTextRenderer.mm:
+ (WebCoreSetAlwaysUsesComplexTextCodePath):
+ (WebCoreAlwaysUsesComplexTextCodePath):
+ * platform/win/WebCoreTextRenderer.cpp:
+ (WebCore::WebCoreSetAlwaysUsesComplexTextCodePath):
+ (WebCore::WebCoreAlwaysUsesComplexTextCodePath):
+ * platform/win/WebCoreTextRenderer.h:
+
+2008-10-11 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Cameron Zwarich.
+
+ Stop leaking the event parameter names. The protected strings were showing up
+ in the caches window after one use. No measurable performance loss.
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::eventParameterName):
+
+2008-10-11 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Cameron Zwarich.
+
+ Remove unused function getNodeEventListener.
+
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventListener.h:
+
+2008-10-11 David Hyatt <hyatt@apple.com>
+
+ Add support for both positive and negative margins to tracks and track pieces.
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+ (WebCore::ScrollbarThemeComposite::trackPieceRects):
+ (WebCore::ScrollbarThemeComposite::trackPosition):
+ (WebCore::ScrollbarThemeComposite::trackLength):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::adjustTrackPieceRect):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::trackRect):
+ (WebCore::RenderScrollbar::trackPieceRectWithMargins):
+ * rendering/RenderScrollbar.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::computeScrollbarWidth):
+ (WebCore::RenderScrollbarPart::computeScrollbarHeight):
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::adjustTrackPieceRect):
+ * rendering/RenderScrollbarTheme.h:
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Drop -webkit-scrollbar- from all the scrollbar pseudo-classes, since they are scoped to
+ the scrollbar pseudo-elements anyway.
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+
+2008-10-10 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - separate Cache::remove() into a private method and a public interface,
+ then make Cache::pruneDeadResources() use the private method.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::pruneDeadResources):
+ (WebCore::Cache::evict):
+ * loader/Cache.h:
+ (WebCore::Cache::remove):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Fix a math error when splitting a vertical track. Clean up more of ScrollbarThemeComposite
+ now that the track pieces meet under the thumb.
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Make the track pieces of a scrollbar extend under the thumb (each gets half the thumb).
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Make sure specialized ::scrollbar rules are still triggering custom scrollbar creation.
+
+ Reviewed by Tim Hatcher
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::createScrollbar):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::createCustomScrollbar):
+ (WebCore::RenderScrollbar::RenderScrollbar):
+ (WebCore::RenderScrollbar::setParent):
+ (WebCore::RenderScrollbar::updateScrollbarParts):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ * rendering/RenderScrollbar.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Make sure scrollbar background images cause proper part invalidation to occur.
+
+ Reviewed by Tim Hatcher
+
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::setHoveredPart):
+ (WebCore::RenderScrollbar::setPressedPart):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::styleDidChange):
+ (WebCore::RenderScrollbarPart::imageChanged):
+ * rendering/RenderScrollbarPart.h:
+
+2008-10-10 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler
+
+ https://bugs.webkit.org/show_bug.cgi?id=21538
+
+ The blendFunc() for TransformOperations should never mess with the
+ operation lists by replacing some ops with identity, otherwise the lists
+ no longer match and transitions break.
+
+ Test: transitions/matched-transform-functions.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::blendFunc):
+
+2008-10-10 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler
+
+ https://bugs.webkit.org/show_bug.cgi?id=21537
+
+ Fix re-targetting a running transition; if the target property
+ changes, we do need to make a new ImplicitAnimation.
+
+ Test: transitions/retargetted-transition.html
+
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimationPrivate::updateTransitions):
+
+2008-10-10 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Part of <rdar://problem/6278147> Cannot stop a slow script -- Fix assertion.
+
+ When JS is terminated by the user choosing to stop a slow script
+ the exception toString method throws, yet the console logger does
+ not perform exception checks after logging. This leaves an
+ exception on the Machine, which in turn results in an assertion
+ failure next time we attempt to enter JS. The solution is just to
+ clear the exception state after attempting to record the exception.
+
+ * page/Console.cpp:
+ (WebCore::Console::reportException):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Make textareas work with custom CSS scrollbars and resizers. Need to access the correct renderer
+ when looking for pseudo styles.
+
+ Reviewed by Tim Hatcher
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::createScrollbar):
+ (WebCore::RenderLayer::styleChanged):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Add the ability to style the scroll corner and the resizer from CSS.
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::RenderLayer):
+ (WebCore::RenderLayer::~RenderLayer):
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintScrollCorner):
+ (WebCore::RenderLayer::paintResizer):
+ (WebCore::RenderLayer::styleChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ (WebCore::RenderScrollbar::paintPart):
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::RenderScrollbarPart):
+ (WebCore::RenderScrollbarPart::paintIntoRect):
+ * rendering/RenderScrollbarPart.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Make CSS scrollbars respect the OS setting regarding where buttons should be placed.
+
+ Reviewed by Sam Weinig
+
+ No test case possible, since the OS setting can vary.
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * platform/Scrollbar.h:
+ (WebCore::Scrollbar::styleChanged):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
+ (WebCore::ScrollbarThemeMac::preferencesChanged):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::invalidateScrollbarRect):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::styleChanged):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ * rendering/RenderScrollbar.h:
+ * rendering/RenderScrollbarTheme.h:
+ (WebCore::RenderScrollbarTheme::buttonsPlacement):
+
+2008-10-10 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a regression with input search fields, where the placeholder text
+ would not be updated when the value of the placeholder attribute changed.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21521
+
+ Reviewed by Adele Peterson.
+
+ Test: fast/forms/search-placeholder-value-changed.html
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute): Pass true for the
+ placeholderValueChanged parameter of updatePlaceholderVisibility.
+ (WebCore::HTMLInputElement::updatePlaceholderVisibility): Add parameter
+ for placeholderValueChanged that informs the method that the value changed.
+ * html/HTMLInputElement.h: Add the placeholderValueChanged to the
+ updatePlaceholderVisibility method. Made it default to false.
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Allow the track part to have negative margins so that it can slightly overlap buttons. This
+ is necessary to emulate the Aqua look in CSS.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::setHoveredPart):
+ (WebCore::RenderScrollbar::trackRect):
+ * rendering/RenderScrollbar.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::computeScrollbarWidth):
+ (WebCore::RenderScrollbarPart::computeScrollbarHeight):
+ * rendering/RenderScrollbarTheme.cpp:
+ (WebCore::RenderScrollbarTheme::backButtonRect):
+ (WebCore::RenderScrollbarTheme::forwardButtonRect):
+ (WebCore::RenderScrollbarTheme::trackRect):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21527
+
+ Make CSS scrollbars support :not, :hover and :active.
+
+ Reviewed by Adam Roben
+
+ Added WebCore/manual-tests/scrollbar-hover-active.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::autoscrollPressedPart):
+ (WebCore::Scrollbar::startTimerIfNeeded):
+ (WebCore::Scrollbar::setHoveredPart):
+ (WebCore::Scrollbar::setPressedPart):
+ (WebCore::Scrollbar::mouseMoved):
+ (WebCore::Scrollbar::mouseExited):
+ (WebCore::Scrollbar::mouseUp):
+ (WebCore::Scrollbar::mouseDown):
+ * platform/Scrollbar.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::setHoveredPart):
+ (WebCore::RenderScrollbar::setPressedPart):
+ (WebCore::RenderScrollbar::updateScrollbarParts):
+ (WebCore::pseudoForScrollbarPart):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ * rendering/RenderScrollbar.h:
+
+2008-10-10 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21025
+ CSS transition with duration=0 and delay=0 doesn't override ongoing transition
+
+ Test: transitions/interrupt-zero-duration.html
+
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+
+2008-10-10 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix. Add new scrollbar-related sources.
+
+ * WebCoreSources.bkl:
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21522
+
+ Support increment/decrement/start/end on scrollbars. Allows a fully functional scrollbar to be
+ created. (Just :hover/:active left to finish it up.)
+
+ Reviewed by Adam Roben
+
+ Added scrollbars/scrollbar-buttons.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Rename some pseudoclasses. Removing "-scrollbar-" from a bunch of the pseudoclasses. Renaming
+ back/forward to decrement/increment. Adding start/end pseudoclasses.
+
+ Reviewed by Eric Seidel
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+
+2008-10-10 David Hyatt <hyatt@apple.com>
+
+ Switch window-active to window-inactive, since that will work better as far as degrading in other
+ browsers.
+
+ Reviewed by Tim Hatcher
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+
+2008-10-09 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21310
+
+ Redesigned how animation events are sent in order to get rid of
+ AnimationEventDispatcher. ImplicitAnimation and KeyframeAnimation
+ are now ref counted. While calling the event handler, I keep a
+ reference to this class to avoid it getting destroyed out from under me.
+
+ I also moved most of the functionality of CompositeAnimation to
+ and internal class (CompositeAnimationPrivate) to reduce the exposure
+ of the internals of the various animation classes.
+
+ We have several transition and animation LayoutTests which verify that
+ this fix works as expected and continues to avoid crashes.
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::AnimationBase):
+ * page/animation/AnimationBase.h:
+ (WebCore::AnimationBase::cancelTimers):
+ (WebCore::AnimationBase::waitingForStyleAvailable):
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimationPrivate::CompositeAnimationPrivate):
+ (WebCore::CompositeAnimationPrivate::suspended):
+ (WebCore::CompositeAnimationPrivate::~CompositeAnimationPrivate):
+ (WebCore::CompositeAnimationPrivate::updateTransitions):
+ (WebCore::CompositeAnimationPrivate::updateKeyframeAnimations):
+ (WebCore::CompositeAnimationPrivate::animate):
+ (WebCore::CompositeAnimationPrivate::setAnimating):
+ (WebCore::CompositeAnimationPrivate::animating):
+ (WebCore::CompositeAnimationPrivate::getAnimationForProperty):
+ (WebCore::CompositeAnimationPrivate::resetTransitions):
+ (WebCore::CompositeAnimationPrivate::resetAnimations):
+ (WebCore::CompositeAnimationPrivate::cleanupFinishedAnimations):
+ (WebCore::CompositeAnimationPrivate::setAnimationStartTime):
+ (WebCore::CompositeAnimationPrivate::setTransitionStartTime):
+ (WebCore::CompositeAnimationPrivate::suspendAnimations):
+ (WebCore::CompositeAnimationPrivate::resumeAnimations):
+ (WebCore::CompositeAnimationPrivate::overrideImplicitAnimations):
+ (WebCore::CompositeAnimationPrivate::resumeOverriddenImplicitAnimations):
+ (WebCore::compareAnimationIndices):
+ (WebCore::CompositeAnimationPrivate::styleAvailable):
+ (WebCore::CompositeAnimationPrivate::isAnimatingProperty):
+ (WebCore::CompositeAnimationPrivate::setWaitingForStyleAvailable):
+ (WebCore::CompositeAnimation::CompositeAnimation):
+ (WebCore::CompositeAnimation::~CompositeAnimation):
+ (WebCore::CompositeAnimation::animate):
+ (WebCore::CompositeAnimation::animating):
+ (WebCore::CompositeAnimation::setWaitingForStyleAvailable):
+ (WebCore::CompositeAnimation::resetTransitions):
+ (WebCore::CompositeAnimation::suspendAnimations):
+ (WebCore::CompositeAnimation::resumeAnimations):
+ (WebCore::CompositeAnimation::suspended):
+ (WebCore::CompositeAnimation::styleAvailable):
+ (WebCore::CompositeAnimation::setAnimating):
+ (WebCore::CompositeAnimation::isAnimatingProperty):
+ (WebCore::CompositeAnimation::setAnimationStartTime):
+ (WebCore::CompositeAnimation::setTransitionStartTime):
+ (WebCore::CompositeAnimation::overrideImplicitAnimations):
+ (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
+ * page/animation/CompositeAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::sendTransitionEvent):
+ * page/animation/ImplicitAnimation.h:
+ (WebCore::ImplicitAnimation::create):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::sendAnimationEvent):
+ * page/animation/KeyframeAnimation.h:
+ (WebCore::KeyframeAnimation::create):
+
+2008-10-09 David Hyatt <hyatt@apple.com>
+
+ Add support for scrollbar orientation as a pseudoclass. Add support for whether or not the scrollbar
+ is active as well.
+
+ Reviewed by Tim Hatcher
+
+ Added scrollbars/scrollbar-orientation.html
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::isWindowActive):
+ * platform/Scrollbar.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::paint):
+ (WebCore::RenderScrollbar::partForStyleResolve):
+ * rendering/RenderScrollbar.h:
+
+2008-10-09 David Hyatt <hyatt@apple.com>
+
+ Add support for pseudo classes on scrollbar pseudo elements. As an initial proof of concept only
+ :enabled/:disabled are supported. More pseudo classes will follow quickly now that this works.
+
+ Reviewed by Tim Hatcher
+
+ Added scrollbars/disabled-scrollbar.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::checkScrollbarPseudoClass):
+ * css/CSSStyleSelector.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::getPseudoStyle):
+ * rendering/RenderObject.h:
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::setEnabled):
+ (WebCore::RenderScrollbar::scrollbarForStyleResolve):
+ (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
+ (WebCore::RenderScrollbar::paintPart):
+ * rendering/RenderScrollbar.h:
+
+2008-10-09 Eric Carlson <eric.carlson@apple.com>
+
+ Media controls should not show when element is not visible
+
+ https://bugs.webkit.org/show_bug.cgi?id=21155
+
+ Reviewed by Adele Peterson.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::recalcStyle): New, call renderer()->updateFromElement to stay
+ in sync with visibility changes
+ * html/HTMLMediaElement.h:
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::RenderMedia): initialize m_previousVisible
+ (WebCore::RenderMedia::updateControlVisibility): consider style()->visibility() when determining
+ if element is visible or not. Don't animate controller visibility when change triggered by
+ showing or hiding media element.
+ * rendering/RenderMedia.h: declare m_previousVisible
+
+2008-10-09 Timothy Hatcher <timothy@apple.com>
+
+ Annotate the Objective-C DOM APIs with the JavaScriptCore/WebKitAvailability.h
+ availability macros and version macros.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21496
+ rdar://problem/6259225
+
+ Reviewed by Sam Weinig.
+
+ * bindings/objc/DOMCSS.h: Add a version #if around catgory interface.
+ * bindings/objc/DOMEventException.h: Include JavaScriptCore/WebKitAvailability.h
+ and add an #if around the enum.
+ * bindings/objc/DOMException.h: Ditto. Give the enum a name and remove the
+ comment to match the other headers.
+ * bindings/objc/DOMExtensions.h: Annotate the methods with version 3.0 or later.
+ * bindings/objc/DOMObject.h: Add a version #if around class interface.
+ * bindings/objc/DOMRangeException.h: Include JavaScriptCore/WebKitAvailability.h
+ and add a version #if around the enum.
+ * bindings/objc/DOMSVGException.h: Ditto. Use the latest version since SVG is new.
+ * bindings/objc/DOMXPathException.h: Ditto. Use the 3.0 version.
+ * bindings/objc/PublicDOMInterfaces.h: Annotate classes and protocols for
+ when they where added to WebKit. Also annotate individual methods that are
+ deprecated or where added after the class was added to WebKit.
+ * bindings/objc/WebScriptObject.h: Include JavaScriptCore/WebKitAvailability.h
+ since this header is included by most DOM headers. Annotate the JSObject method.
+
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ (ReadPublicInterfaces): Parse out the availability macro for each function/property.
+ And parse out the availability version for the class/protocol. Default to
+ WEBKIT_VERSION_LATEST if the class is new.
+ (GenerateHeader): Include JavaScriptCore/WebKitAvailability.h if needed. Add the
+ interface availability version check if the class has a required version. Create
+ a public interface key (used to lookup in $publicInterfaces) and make a declaration
+ suffix that includes the availability macro (if needed). Use the "available in 1.3
+ and later but deprecated in 3.0" macro instead of "deprecated in 10.5 and later" as
+ the default availability macro for old style methods. Tweak line breaks in the generated
+ headers to look good and not have too many extra lines.
+
+2008-10-09 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ https://bugs.webkit.org/show_bug.cgi?id=20947
+
+ Refactor setStyle() methods into styleWillChange()
+ and styleDidChange(), so most of the setStyle() overrides can
+ be removed.
+
+ * rendering/RenderBR.cpp:
+ (WebCore::RenderBR::styleDidChange):
+ * rendering/RenderBR.h:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::styleWillChange):
+ (WebCore::RenderBlock::styleDidChange):
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::~RenderBox):
+ (WebCore::RenderBox::destroy):
+ (WebCore::RenderBox::styleWillChange):
+ (WebCore::RenderBox::styleDidChange):
+ * rendering/RenderBox.h:
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::styleWillChange):
+ (WebCore::RenderButton::styleDidChange):
+ * rendering/RenderButton.h:
+ * rendering/RenderFieldset.cpp:
+ (WebCore::RenderFieldset::styleDidChange):
+ * rendering/RenderFieldset.h:
+ * rendering/RenderFileUploadControl.cpp:
+ (WebCore::RenderFileUploadControl::styleDidChange):
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderInline.cpp:
+ (WebCore::RenderInline::styleDidChange):
+ * rendering/RenderInline.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::styleChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::styleDidChange):
+ * rendering/RenderListBox.h:
+ * rendering/RenderListItem.cpp:
+ (WebCore::RenderListItem::styleDidChange):
+ * rendering/RenderListItem.h:
+ * rendering/RenderListMarker.cpp:
+ (WebCore::RenderListMarker::styleWillChange):
+ (WebCore::RenderListMarker::styleDidChange):
+ * rendering/RenderListMarker.h:
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::styleDidChange):
+ * rendering/RenderMenuList.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::setStyle):
+ (WebCore::RenderObject::setStyleInternal):
+ (WebCore::RenderObject::styleWillChange):
+ (WebCore::RenderObject::styleDidChange):
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::styleDidChange):
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSVGGradientStop.cpp:
+ (WebCore::RenderSVGGradientStop::styleDidChange):
+ * rendering/RenderSVGGradientStop.h:
+ * rendering/RenderScrollbarPart.cpp:
+ (WebCore::RenderScrollbarPart::styleDidChange):
+ * rendering/RenderScrollbarPart.h:
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::styleDidChange):
+ * rendering/RenderSlider.h:
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::styleDidChange):
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::styleWillChange):
+ (WebCore::RenderTableCell::styleDidChange):
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::styleWillChange):
+ * rendering/RenderTableRow.h:
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::styleDidChange):
+ * rendering/RenderText.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::styleDidChange):
+ * rendering/RenderTextControl.h:
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::styleDidChange):
+ * rendering/RenderWidget.h:
+
+2008-10-09 David Hyatt <hyatt@apple.com>
+
+ Make sure to destroy a custom scrollbar's RenderObjects before the arena goes away. When our widget
+ parent is nulled out is a good time.
+
+ Reviewed by Oliver Hunt
+
+ * rendering/RenderScrollbar.cpp:
+ (WebCore::RenderScrollbar::~RenderScrollbar):
+ (WebCore::RenderScrollbar::setParent):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ * rendering/RenderScrollbar.h:
+
+2008-10-09 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21446
+
+ This patch gets CSS scrollbars up and limping. There's no way to distinguish between states or between
+ orientation and back vs. forward on the buttons, but it's a start.
+
+ Reviewed by Oliver Hunt
+
+ Added scrollbars/basic-scrollbar.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ * platform/ScrollTypes.h:
+ (WebCore::):
+ * platform/Scrollbar.h:
+ (WebCore::Scrollbar::styleChanged):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::paintScrollbarBackground):
+ (WebCore::ScrollbarThemeComposite::paintTrackBackground):
+ (WebCore::ScrollbarThemeComposite::paintTrackPiece):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::paintTrackBackground):
+ * platform/win/ScrollbarThemeSafari.h:
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::paintTrack):
+ * platform/win/ScrollbarThemeWin.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::createScrollbar):
+ (WebCore::RenderLayer::styleChanged):
+ * rendering/RenderScrollbar.cpp: Added.
+ (WebCore::RenderScrollbar::createCustomScrollbar):
+ (WebCore::RenderScrollbar::RenderScrollbar):
+ (WebCore::RenderScrollbar::~RenderScrollbar):
+ (WebCore::RenderScrollbar::getScrollbarPseudoStyle):
+ (WebCore::RenderScrollbar::updateScrollbarParts):
+ (WebCore::RenderScrollbar::updateScrollbarPart):
+ (WebCore::RenderScrollbar::paintPart):
+ (WebCore::RenderScrollbar::buttonRect):
+ (WebCore::RenderScrollbar::minimumThumbLength):
+ * rendering/RenderScrollbar.h: Added.
+ (WebCore::RenderScrollbar::styleChanged):
+ (WebCore::RenderScrollbar::owningRenderer):
+ * rendering/RenderScrollbarPart.cpp: Added.
+ (WebCore::RenderScrollbarPart::RenderScrollbarPart):
+ (WebCore::RenderScrollbarPart::~RenderScrollbarPart):
+ (WebCore::RenderScrollbarPart::layout):
+ (WebCore::RenderScrollbarPart::layoutHorizontalPart):
+ (WebCore::RenderScrollbarPart::layoutVerticalPart):
+ (WebCore::calcScrollbarThicknessUsing):
+ (WebCore::RenderScrollbarPart::computeScrollbarWidth):
+ (WebCore::RenderScrollbarPart::computeScrollbarHeight):
+ (WebCore::RenderScrollbarPart::calcPrefWidths):
+ (WebCore::RenderScrollbarPart::setStyle):
+ * rendering/RenderScrollbarPart.h: Added.
+ (WebCore::RenderScrollbarPart::renderName):
+ (WebCore::RenderScrollbarPart::requiresLayer):
+ * rendering/RenderScrollbarTheme.cpp: Added.
+ (WebCore::RenderScrollbarTheme::renderScrollbarTheme):
+ (WebCore::RenderScrollbarTheme::buttonSizesAlongTrackAxis):
+ (WebCore::RenderScrollbarTheme::hasButtons):
+ (WebCore::RenderScrollbarTheme::hasThumb):
+ (WebCore::RenderScrollbarTheme::minimumThumbLength):
+ (WebCore::RenderScrollbarTheme::backButtonRect):
+ (WebCore::RenderScrollbarTheme::forwardButtonRect):
+ (WebCore::RenderScrollbarTheme::trackRect):
+ (WebCore::RenderScrollbarTheme::paintScrollCorner):
+ (WebCore::RenderScrollbarTheme::paintScrollbarBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackBackground):
+ (WebCore::RenderScrollbarTheme::paintTrackPiece):
+ (WebCore::RenderScrollbarTheme::paintButton):
+ (WebCore::RenderScrollbarTheme::paintThumb):
+ * rendering/RenderScrollbarTheme.h: Added.
+ (WebCore::RenderScrollbarTheme::~RenderScrollbarTheme):
+ (WebCore::RenderScrollbarTheme::scrollbarThickness):
+ (WebCore::RenderScrollbarTheme::buttonsPlacement):
+ (WebCore::RenderScrollbarTheme::supportsControlTints):
+ (WebCore::RenderScrollbarTheme::shouldCenterOnThumb):
+ (WebCore::RenderScrollbarTheme::initialAutoscrollTimerDelay):
+ (WebCore::RenderScrollbarTheme::autoscrollTimerDelay):
+ (WebCore::RenderScrollbarTheme::registerScrollbar):
+ (WebCore::RenderScrollbarTheme::unregisterScrollbar):
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::):
+
+2008-10-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Fix Canvex DOOM Game
+ Gradient clips were not getting cleared after filling the
+ gradient, this was causing nothing to draw in Canvex
+ https://bugs.webkit.org/show_bug.cgi?id=21498
+
+ Tests forthcoming.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+
+2008-10-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Fix transformed patterns
+ https://bugs.webkit.org/show_bug.cgi?id=21498
+
+ Test: fast/canvas/patternfill-repeat.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::applyStrokePattern):
+ (WebCore::applyFillPattern):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+
+2008-10-09 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes.
+
+ * platform/wx/WidgetWx.cpp:
+ * plugins/wx/PluginViewWx.cpp:
+ (WebCore::PluginView::invalidateRect):
+ * webcore-base.bkl:
+
+2008-10-09 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21217
+ Animations assert when navigating from page
+
+ Changed assertions to test the right flag for the paused state
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::updateStateMachine):
+
+2008-10-09 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fixed > 180 degree rotation bug
+ Ensure that validateTransformFunctionList() is called after updating keyframe styles
+
+ https://bugs.webkit.org/show_bug.cgi?id=21420
+
+ Test: animations/big-rotation.html
+
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::KeyframeAnimation):
+
+2008-10-09 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders
+
+ <rdar://problem/6250856> - Calling [WebView close] from within a redirection callback can cause bad things
+
+ The API usage to reveal this crash was so particular that a layout test is not possible with our current infrastructure.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::changeLocation): Protect the Frame from deletion
+ (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): stopAllLoaders() might clear the Frame's page,
+ so perform a second null check on the page. Bail if it has been cleared.
+
+2008-10-09 Alp Toker <alp@nuanti.com>
+
+ Build fix for recent DOM generation Makefile changes when custom
+ CFLAGS/CXXFLAGS are passed in.
+
+ * GNUmakefile.am:
+
+2008-10-09 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21390
+ [Gtk] Linux/Gtk: GtkLauncher crashes on Acid3 (but after test 80 this time)
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::platformRemoveChild):
+
+2008-10-09 Darin Adler <darin@apple.com>
+
+ - try to fix Qt build
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue): Pass JSGlobalData instead of ExecState to RegExp constructor.
+
+2008-10-08 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Oliver Hunt & Sam Weinig.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=15413 (SVGElementInstance does not implement EventTarget)
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=15430 (SVGElementInstances should rebuild themselves lazily)
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=20550 (SVGUseElement.setAttribute crashes Safari)
+
+ Rebuild SVG use element shadow tree lazily. Mark SVGElementInstance with the "needsUpdate" flag.
+ Next time SVGUseElement::recalcStyle is invoked (ie. via Document::updateDocumentsRendering()) the
+ use tree is rebuild.
+
+ Make SVGElementInstance a real EventTarget, as the SVG specification demands.
+ When dispatching events to a shadow tree element of a use element, the associated SVGElementInstance
+ is used as event target. The SVGElementInstance, the shadow tree element and the corresponding element
+ share an event listener list. Every event listener change on the SVGElementInstance object is forwared
+ to the corresponding element. Each change marks the SVGElementInstance tree dirty, and causes a reclone.
+ Each event listener defined via attributes (onclick/onkeydown/...) is copied from the correspondingElement
+ to the shadow tree element - through the cloneNode calls - if the use element's shadow tree gets rebuild.
+ Each listener, dynamically created using addEventListener, gets copied to the corersponding element as well.
+
+ Now that the target/currentTarget properties of the Events are correct, event bubbling works as expected,
+ see resources/use-instanceRoot-event-bubbling.js for details.
+
+ Tests: svg/custom/use-elementInstance-event-target.svg (reenabled)
+ svg/custom/use-elementInstance-methods.svg (reenabled)
+ svg/custom/use-setAttribute-crash.svg (covers bug 20550)
+ svg/custom/use-instanceRoot-as-event-target.xhtml (covers bug 15413)
+ svg/custom/use-instanceRoot-event-bubbling.xhtml (covers bug 15413)
+ svg/custom/use-instanceRoot-event-listeners.xhtml (covers bug 15413 & 15430)
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSLazyEventListener::wasCreatedFromMarkup):
+ * bindings/js/JSEventTarget.cpp:
+ * bindings/js/JSEventTargetSVGElementInstance.cpp: Removed.
+ * bindings/js/JSEventTargetSVGElementInstance.h: Removed.
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ (WebCore::JSSVGElementInstance::addEventListener):
+ (WebCore::JSSVGElementInstance::removeEventListener):
+ (WebCore::JSSVGElementInstance::pushEventHandlerScope):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ * dom/EventListener.h:
+ (WebCore::EventListener::wasCreatedFromMarkup):
+ * dom/EventTargetNode.cpp:
+ (WebCore::updateSVGElementInstancesAfterEventListenerChange):
+ (WebCore::EventTargetNode::addEventListener):
+ (WebCore::EventTargetNode::removeEventListener):
+ (WebCore::eventTargetAsSVGElementInstance):
+ (WebCore::eventTargetRespectingSVGTargetRules):
+ (WebCore::EventTargetNode::dispatchEvent):
+ (WebCore::EventTargetNode::dispatchGenericEvent):
+ (WebCore::EventTargetNode::removeEventListenerForType):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::clear):
+ (WebCore::instanceAssociatedWithShadowTreeElement):
+ (WebCore::EventHandler::updateMouseEventTargetNode):
+ * page/EventHandler.h:
+ * svg/EventTargetSVGElementInstance.cpp: Removed.
+ * svg/EventTargetSVGElementInstance.h: Removed.
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::SVGElementInstance):
+ (WebCore::SVGElementInstance::~SVGElementInstance):
+ (WebCore::SVGElementInstance::childNodes):
+ (WebCore::SVGElementInstance::setShadowTreeElement):
+ (WebCore::SVGElementInstance::forgetWrapper):
+ (WebCore::SVGElementInstance::appendChild):
+ (WebCore::SVGElementInstance::invalidateAllInstancesOfElement):
+ (WebCore::SVGElementInstance::setNeedsUpdate):
+ (WebCore::SVGElementInstance::associatedFrame):
+ (WebCore::SVGElementInstance::addEventListener):
+ (WebCore::SVGElementInstance::removeEventListener):
+ (WebCore::SVGElementInstance::dispatchEvent):
+ (WebCore::SVGElementInstance::onabort):
+ (WebCore::SVGElementInstance::setOnabort):
+ (WebCore::SVGElementInstance::onblur):
+ (WebCore::SVGElementInstance::setOnblur):
+ (WebCore::SVGElementInstance::onchange):
+ (WebCore::SVGElementInstance::setOnchange):
+ (WebCore::SVGElementInstance::onclick):
+ (WebCore::SVGElementInstance::setOnclick):
+ (WebCore::SVGElementInstance::oncontextmenu):
+ (WebCore::SVGElementInstance::setOncontextmenu):
+ (WebCore::SVGElementInstance::ondblclick):
+ (WebCore::SVGElementInstance::setOndblclick):
+ (WebCore::SVGElementInstance::onerror):
+ (WebCore::SVGElementInstance::setOnerror):
+ (WebCore::SVGElementInstance::onfocus):
+ (WebCore::SVGElementInstance::setOnfocus):
+ (WebCore::SVGElementInstance::oninput):
+ (WebCore::SVGElementInstance::setOninput):
+ (WebCore::SVGElementInstance::onkeydown):
+ (WebCore::SVGElementInstance::setOnkeydown):
+ (WebCore::SVGElementInstance::onkeypress):
+ (WebCore::SVGElementInstance::setOnkeypress):
+ (WebCore::SVGElementInstance::onkeyup):
+ (WebCore::SVGElementInstance::setOnkeyup):
+ (WebCore::SVGElementInstance::onload):
+ (WebCore::SVGElementInstance::setOnload):
+ (WebCore::SVGElementInstance::onmousedown):
+ (WebCore::SVGElementInstance::setOnmousedown):
+ (WebCore::SVGElementInstance::onmousemove):
+ (WebCore::SVGElementInstance::setOnmousemove):
+ (WebCore::SVGElementInstance::onmouseout):
+ (WebCore::SVGElementInstance::setOnmouseout):
+ (WebCore::SVGElementInstance::onmouseover):
+ (WebCore::SVGElementInstance::setOnmouseover):
+ (WebCore::SVGElementInstance::onmouseup):
+ (WebCore::SVGElementInstance::setOnmouseup):
+ (WebCore::SVGElementInstance::onmousewheel):
+ (WebCore::SVGElementInstance::setOnmousewheel):
+ (WebCore::SVGElementInstance::onbeforecut):
+ (WebCore::SVGElementInstance::setOnbeforecut):
+ (WebCore::SVGElementInstance::oncut):
+ (WebCore::SVGElementInstance::setOncut):
+ (WebCore::SVGElementInstance::onbeforecopy):
+ (WebCore::SVGElementInstance::setOnbeforecopy):
+ (WebCore::SVGElementInstance::oncopy):
+ (WebCore::SVGElementInstance::setOncopy):
+ (WebCore::SVGElementInstance::onbeforepaste):
+ (WebCore::SVGElementInstance::setOnbeforepaste):
+ (WebCore::SVGElementInstance::onpaste):
+ (WebCore::SVGElementInstance::setOnpaste):
+ (WebCore::SVGElementInstance::ondragenter):
+ (WebCore::SVGElementInstance::setOndragenter):
+ (WebCore::SVGElementInstance::ondragover):
+ (WebCore::SVGElementInstance::setOndragover):
+ (WebCore::SVGElementInstance::ondragleave):
+ (WebCore::SVGElementInstance::setOndragleave):
+ (WebCore::SVGElementInstance::ondrop):
+ (WebCore::SVGElementInstance::setOndrop):
+ (WebCore::SVGElementInstance::ondragstart):
+ (WebCore::SVGElementInstance::setOndragstart):
+ (WebCore::SVGElementInstance::ondrag):
+ (WebCore::SVGElementInstance::setOndrag):
+ (WebCore::SVGElementInstance::ondragend):
+ (WebCore::SVGElementInstance::setOndragend):
+ (WebCore::SVGElementInstance::onreset):
+ (WebCore::SVGElementInstance::setOnreset):
+ (WebCore::SVGElementInstance::onresize):
+ (WebCore::SVGElementInstance::setOnresize):
+ (WebCore::SVGElementInstance::onscroll):
+ (WebCore::SVGElementInstance::setOnscroll):
+ (WebCore::SVGElementInstance::onsearch):
+ (WebCore::SVGElementInstance::setOnsearch):
+ (WebCore::SVGElementInstance::onselect):
+ (WebCore::SVGElementInstance::setOnselect):
+ (WebCore::SVGElementInstance::onselectstart):
+ (WebCore::SVGElementInstance::setOnselectstart):
+ (WebCore::SVGElementInstance::onsubmit):
+ (WebCore::SVGElementInstance::setOnsubmit):
+ (WebCore::SVGElementInstance::onunload):
+ (WebCore::SVGElementInstance::setOnunload):
+ * svg/SVGElementInstance.h:
+ (WebCore::SVGElementInstance::needsUpdate):
+ (WebCore::SVGElementInstance::toNode):
+ (WebCore::SVGElementInstance::toSVGElementInstance):
+ (WebCore::SVGElementInstance::correspondingElement):
+ (WebCore::SVGElementInstance::correspondingUseElement):
+ (WebCore::SVGElementInstance::shadowTreeElement):
+ (WebCore::SVGElementInstance::parentNode):
+ (WebCore::SVGElementInstance::previousSibling):
+ (WebCore::SVGElementInstance::nextSibling):
+ (WebCore::SVGElementInstance::firstChild):
+ (WebCore::SVGElementInstance::lastChild):
+ (WebCore::SVGElementInstance::ownerDocument):
+ (WebCore::SVGElementInstance::hasChildNodes):
+ (WebCore::SVGElementInstance::setFirstChild):
+ (WebCore::SVGElementInstance::setLastChild):
+ (WebCore::SVGElementInstance::setNextSibling):
+ (WebCore::SVGElementInstance::setPreviousSibling):
+ (WebCore::SVGElementInstance::refEventTarget):
+ (WebCore::SVGElementInstance::derefEventTarget):
+ * svg/SVGElementInstance.idl:
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::svgAttributeChanged):
+ (WebCore::SVGStyledElement::childrenChanged):
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::svgAttributeChanged):
+ (WebCore::shadowTreeContainsChangedNodes):
+ (WebCore::SVGUseElement::recalcStyle):
+ (WebCore::dumpInstanceTree):
+ (WebCore::SVGUseElement::buildPendingResource):
+ (WebCore::SVGUseElement::buildInstanceTree):
+ (WebCore::SVGUseElement::transferEventListenersToShadowTree):
+ * svg/SVGUseElement.h:
+
+2008-10-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Cameron Zwarich.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21241
+ REGRESSION (r36977): getRGBColorValue().red returning incorrect value
+
+ Update JSRGBColor to use the new static function per getter approach.
+
+ Test: fast/dom/css-RGBValue.html
+
+ * bindings/js/JSRGBColor.cpp:
+ (WebCore::):
+ (jsRGBColorRed):
+ (jsRGBColorGreen):
+ (jsRGBColorBlue):
+ * bindings/js/JSRGBColor.h:
+
+2008-10-08 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Darin Adler, Nikolas Zimmermann and Dave Hyatt.
+
+ svgElement.className.baseValue = "foo" does not work
+ https://bugs.webkit.org/show_bug.cgi?id=20651
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::classAttributeChanged):
+ (WebCore::StyledElement::parseMappedAttribute):
+ * dom/StyledElement.h:
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::svgAttributeChanged):
+
+2008-10-08 Anthony Ricaud <rik24d@gmail.com>
+
+ Make the toolbar label text-shadow not disappear when clicking on the
+ search result count or around the search field.
+
+ Reviewed by Timothy Hatcher.
+
+ * inspector/front-end/inspector.css:
+ (.toolbar-item:active .toolbar-label): Make this rule also require the
+ toggleable class with the toolbar-item class.
+
+2008-10-08 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Updated the qrc file for the Web Inspector to contain the current set
+ of images.
+
+ * inspector/front-end/WebKit.qrc:
+
+2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix the linking of applications against WebKit on Qt/Windows.
+
+ The prl files that qmake creates are buggy on Unix, but we they're
+ fine on Windows and we have to have them there in order to get the
+ dependencies correct.
+
+ * WebCore.pro:
+
+2008-10-08 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Reviewed by Simon.
+
+ Speed up rectangle filling by not re-creating a QBrush all the time.
+
+ This triggers faster path in QPainter where the brush is reused.
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContext::fillRect):
+
+2008-10-08 Thiago Macieira <thiago.macieira@nokia.com>
+
+ Reviewed by Simon.
+
+ Fixes: Encoding of Qt URLs
+
+ This encoding was added by Simon and I because QUrl's
+ tolerant parser wasn't tolerant enough. Now it is, so we don't need
+ this anymore.
+
+ * platform/qt/KURLQt.cpp:
+ (WebCore::KURL::operator QUrl):
+
+2008-10-08 Marius Storm-Olsen <marius@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fixes dependencies in qmake generated visual studio projects.
+
+ Only add debug lib name if we're in the debug build_pass, else the release version.
+ The MSVC solution generator would pick up the debug javascriptcore lib as a dependency.
+
+ * WebCore.pro:
+
+2008-10-08 Prasanth Ullattil <pullatti@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compilation errors on VS2008 64Bit
+
+ * platform/text/TextStream.cpp:
+ (WebCore::TextStream::operator<<):
+ * platform/text/TextStream.h:
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::init):
+
+2008-10-07 Alp Toker <alp@nuanti.com>
+
+ GTK+ build fix for older automake versions (1.7). Discussed in bug
+ #21392.
+
+ * GNUmakefile.am:
+
+2008-10-07 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Antti Koivisto.
+
+ <rdar://problem/6273887> Crash in ApplicationCacheGroup
+
+ Make sure to stop loading even before a cache update is in progress so that the
+ manifest load will be stopped.
+
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::~ApplicationCacheGroup):
+ (WebCore::ApplicationCacheGroup::stopLoading):
+ (WebCore::ApplicationCacheGroup::cacheUpdateFailed):
+
+2008-10-07 Timothy Hatcher <timothy@apple.com>
+
+ Auto-generate DOMDocument's createNodeIterator: and createTreeWalker: methods.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21433
+
+ Reviewed by Sam Weinig.
+
+ * WebCore.xcodeproj/project.pbxproj: Add ObjCNodeFilterCondition.{mm,h}.
+ * bindings/objc/DOM.mm: Remove previous category implementations
+ on DOMDocument for createNodeIterator: and createTreeWalker:. Also
+ moves ObjCNodeFilterCondition to its own file.
+ * bindings/objc/DOMTraversal.h: Remove the category methods that added
+ createNodeIterator: and createTreeWalker: to DOMDocument. This is fine
+ to do since DOmDocument.h is included still, and has these methods.
+ * bindings/objc/DOMUtility.mm:
+ (JSC::createDOMWrapper): Remove special case for JSNodeIterator and
+ JSTreeWalker now that the ObjC binding conforms to the standard wrap.
+ * bindings/objc/ObjCNodeFilterCondition.h: Split out from DOM.mm.
+ (WebCore::ObjCNodeFilterCondition::create): Moved from DOM.mm.
+ (WebCore::ObjCNodeFilterCondition::ObjCNodeFilterCondition): Ditto.
+ * bindings/objc/ObjCNodeFilterCondition.mm: Split out from DOM.mm.
+ (WebCore::ObjCNodeFilterCondition::acceptNode): Moved from DOM.mm.
+ * bindings/objc/PublicDOMInterfaces.h: Add the createNodeIterator: and
+ createTreeWalker: methods to DOMDocument.
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ (GetObjCTypeGetter): Add a case for NodeFilter.
+ (AddIncludesForType): Include ObjCNodeFilterCondition.h for NodeFilter.
+ (GenerateImplementation): Remove existing NodeFilter special case that
+ used the m_filter member variable. Add a new special getter for protocol
+ types that aren't EventTarget, so the right class is used for NodeFilter.
+ Add a special case for NodeFilter where it creates an ObjCNodeFilterCondition.
+ * dom/Document.idl: Remove the #ifdef LANGUAGE_OBJECTIVE_C. Add the
+ OldStyleObjC extended attribute to createNodeIterator and createTreeWalker.
+ Rename the entityReferenceExpansion parameter to expandEntityReferences to
+ match the previous ObjC API.
+ * dom/NodeIterator.idl: Remove ObjCIvar from the filter attribute. The
+ m_filter member variable was never used in practice, it was always nil!
+ We can remove it and not pad the object because this can't be subclassed.
+ * dom/TreeWalker.idl: Ditto.
+
+2008-10-07 Timothy Hatcher <timothy@apple.com>
+
+ Auto-generate the DOMEventTarget protocol implementation for
+ DOMNode and DOMSVGElementInstance.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21432
+
+ Reviewed by Darin Adler.
+
+ * WebCore.xcodeproj/project.pbxproj: Add ObjCEventListener.{mm,h}.
+ * bindings/objc/DOM.mm: Remove many unneeded header includes. Move
+ ObjCEventListener to it's own file. Remove the manual impelmentations
+ of the DOMEventTarget protocol for DOMNode and DOMSVGElementInstance.
+ * bindings/objc/DOMEvents.h: Remove the categories that defined
+ DOMEventTarget for DOMNode and DOMSVGElementInstance.
+ * bindings/objc/ObjCEventListener.h: Split out from DOM.mm.
+ * bindings/objc/ObjCEventListener.mm: Split out from DOM.mm.
+ (WebCore::ObjCEventListener::find): Moved from DOM.mm.
+ (WebCore::ObjCEventListener::wrap): Use PassRefPtr to prevent the
+ callers from doing a manual deref.
+ (WebCore::ObjCEventListener::ObjCEventListener): Moved from DOM.mm.
+ (WebCore::ObjCEventListener::~ObjCEventListener): Ditto.
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ (GetObjCTypeGetter): Add a case for EventListener and use WTF::getPtr.
+ (AddIncludesForType): Include ObjCEventListener.h for EventListener.
+ And include EventTargetSVGElementInstance.h for SVGElementInstance.
+ (GenerateHeader): Remove the check for multiple parents.
+ (GenerateImplementation): Remove the check for multiple parents. Remove
+ the @deprecatedFunctions array since deprecated methods get generated
+ into the main @interface now to work with protocols. Add support
+ for the EventTargetNodeCast extended attribute. Add support for
+ EventListener parameters.
+ * dom/Node.idl: Define superclasses for ObjC so the implementation
+ and interface implement the DOMEventTarget protocol. Explicitly
+ specify Object as a superclass to use DOMEventTarget. Object will turn
+ into DOMObject. This is needed to take the code generator down the right
+ path of multiple super-classes as protocols. It is ObjC only for legacy
+ reasons. The event target methods are normally on NodeEventTarget, a
+ subclass of Node. But the ObjC API has never has this subclass and
+ they are on DOMNode.
+ * svg/SVGElementInstance.idl: Ditto.
+
+2008-10-07 David Hyatt <hyatt@apple.com>
+
+ Add new pseudo-elements and pseudo-classes that will enable scrollbars to be styled by CSS.
+
+ The new pseudo-elements are:
+ scrollbar
+ scrollbar-button
+ scrollbar-corner
+ scrollbar-thumb
+ scrollbar-track
+
+ These elements will work with all the usual pseudo-classes (:hover, :active, :enabled, :disabled, etc.) and with
+ the following new pseudo-classes:
+ scrollbar-active
+ scrollbar-back
+ scrollbar-forward
+ scrollbar-horizontal
+ scrollbar-vertical
+
+ Reviewed by Adele
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::extractPseudoType):
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::):
+
+2008-10-06 Timothy Hatcher <timothy@apple.com>
+
+ Add support to the Resources panel for queries like "#123", "foo #123",
+ "line: 123" and "foo line: 123". These will match the query limiting
+ the search only to the line specified. If only a line is specified,
+ the whole line is matched.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21422
+
+ Reviewed by Darin Adler.
+
+ * inspector/front-end/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.sourceRow): Don't return the last
+ row if the index is greater than the rows collection. Let it return
+ undefined by indexing out-of-bounds.
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype.performSearch): Add support for
+ queries like "#123", "foo #123", "line: 123" and "foo line: 123".
+ Also match the whole query to the whole document in case there are
+ colors like "#333".
+
+2008-10-07 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Mark Rowe.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21392
+ [GTK] Auto-generate JS DOM binding sources list
+
+ Remove the huge lists of generated DOM binding sources and headers in
+ the build system. These are difficult to maintain and can be derived
+ automatically.
+
+ The new strategy is to re-use the existing lists of IDL sources (which
+ are needed for dist support anyway). This will also ease the addition
+ of new language bindings.
+
+ * GNUmakefile.am:
+
+2008-10-07 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Don't attempt to paint when updating control tints
+
+ We don't have a valid PlatformGraphicsContext so schedule
+ the dirty scrollbar/scrollview area for repaint instead.
+
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::ScrollbarThemeQt::paint):
+ (WebCore::ScrollbarThemeQt::paintScrollCorner):
+
+2008-10-07 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ [qt] Build fix after Scrollbar.h and Widget.h changes.
+
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::init):
+
+2008-10-06 David Hyatt <hyatt@apple.com>
+
+ Enable viewless Mac WebKit to (kinda sorta) paint basic pages (with no frames on them).
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * WebCore.xcodeproj/project.pbxproj:
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::hasWebView):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::loadWithDocumentLoader):
+ (WebCore::FrameLoader::transitionToCommitted):
+ * loader/FrameLoaderClient.h:
+ * page/FocusController.cpp:
+ (WebCore::FocusController::setActive):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::init):
+ (WebCore::FrameView::layoutIfNeededRecursive):
+ * page/FrameView.h:
+
+2008-10-06 Dan Bernstein <mitz@apple.com>
+
+ - build fix
+
+ * bindings/objc/DOMEvents.h:
+
+2008-10-06 Mark Mentovai <mark@moxienet.com>
+
+ Reviewed by Tim Hatcher.
+
+ Use #if ENABLE(feature) where possible, and #if ENABLE_feature where
+ Platform.h is not available, in preference to #ifdef ENABLE_feature.
+ #ifdef is wrong now that features are disabled by #defining
+ ENABLE_feature to 0.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21338
+
+ * bindings/objc/DOMEvents.h:
+ * bindings/objc/PublicDOMInterfaces.h:
+ * dom/Document.idl:
+ * page/DOMWindow.idl:
+ * svg/svgtags.in:
+
+2008-10-06 Mark Mentovai <mark@moxienet.com>
+
+ Reviewed by Sam Weinig.
+
+ * platform/network/mac/FormDataStreamMac.mm: #import <wtf/Threading.h>
+ to get the declaration for isMainThread().
+
+2008-10-06 Jeremy Moskovich <jeremy@chromium.org>
+
+ Reviewed by Tim Hatcher.
+
+ WebCoreObjCExtras.c is actually an obj-c++ file, so change its name
+ to reflect that.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/WebCoreObjCExtras.c: Removed.
+ * platform/mac/WebCoreObjCExtras.mm: Copied from WebCore/platform/mac/WebCoreObjCExtras.c.
+
+2008-10-06 Jeremy Moskovich <jeremy@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ Added C++ forward declaration for the NSURLAuthenticationChallenge class
+ so that the m_currentMacChallenge variable doesn't cause a
+ compilation error when ResourceHandleInternal.h is included from a C++ file.
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=21411
+
+ * platform/network/ResourceHandleInternal.h:
+
+2008-10-06 Steve Falkenburg <sfalken@apple.com>
+
+ Windows build fix.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-06 Steve Falkenburg <sfalken@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21416
+ Add missing null checks identified by Application Verifier.
+
+ Reviewed by Darin Adler.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::clearTimer):
+
+2008-10-06 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Removed accidentally left in debugging statement.
+
+ * inspector/front-end/inspector.js:
+
+2008-10-06 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher and Oliver Hunt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21412
+ Bug 21412: Refactor user initiated profile count to be more stable
+
+ * inspector/InspectorController.cpp: Keep track of the user-initiated
+ profiles here now.
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::startUserInitiatedProfiling):
+ (WebCore::InspectorController::stopUserInitiatedProfiling):
+ * inspector/InspectorController.h:
+ The front end will now need to check for the existence of the user-
+ initiated profile title and use its count instead of keeping its own.
+ * inspector/front-end/ProfilesPanel.js:
+
+2008-10-06 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - separate GDI text drawing into its own function
+
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::drawGDIGlyphs):
+ (WebCore::Font::drawGlyphs):
+
+2008-10-03 Steve Falkenburg <sfalken@apple.com>
+
+ <rdar://problem/6249833> Fix default button appearance
+
+ Reviewed by Adele Peterson.
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::supportsFocus):
+ (WebCore::RenderThemeWin::determineClassicState):
+ (WebCore::RenderThemeWin::determineButtonState):
+ (WebCore::RenderThemeWin::getClassicThemeData):
+ (WebCore::RenderThemeWin::getThemeData):
+ (WebCore::drawControl):
+ * rendering/RenderThemeWin.h:
+
+2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Add native virtual keycode to PlatformKeyboardEvent
+
+ * platform/PlatformKeyboardEvent.h:
+ * platform/gtk/KeyEventGtk.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+ * platform/mac/KeyEventMac.mm:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+ * platform/win/KeyEventWin.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+ * platform/wx/KeyboardEventWx.cpp:
+ (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
+
+2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Enable WebCore::String <> CFStringRef conversion functions for QtWebKit/Mac
+
+ * platform/text/PlatformString.h:
+ * platform/text/StringImpl.h:
+ * platform/text/cf/StringCF.cpp:
+ * platform/text/cf/StringImplCF.cpp:
+
+2008-10-06 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Use bundles on QtWebKit/Mac for platform modules
+
+ * platform/FileSystem.h:
+ * platform/qt/FileSystemQt.cpp:
+ (WebCore::unloadModule):
+
+2008-10-06 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Reviewed by Simon.
+
+ Build fix for MinGW.
+
+ * platform/win/SystemTimeWin.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::invalidateRect):
+
+2008-10-06 Adam Roben <aroben@apple.com>
+
+ Mimic the inspector/ directory structure in WebCore.vcproj
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-06 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * WebCore.vcproj/WebCore.vcproj: Update the Include path for all
+ configurations to include WebCore/inspector.
+
+2008-10-04 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ SVG should support ascent and descent properties <font-face> instead of <font>!
+ https://bugs.webkit.org/show_bug.cgi?id=21365
+
+ Tested by many many existing SVG tests.
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::ascent):
+ (WebCore::SVGFontFaceElement::descent):
+
+2008-10-05 Darin Fisher <darin@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ REGRESSION: crash in ScriptElement::notifyFinished
+ Fixes https://bugs.webkit.org/show_bug.cgi?id=21329
+
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElementData::notifyFinished): Revert part of r35744 to
+ ensure that the ScriptElementData object is not destroyed prematurely.
+
+2008-10-05 Chris Lord <chris@openedhand.com>
+
+ Reviewed by Alp Toker. Landed by Jan Alonzo.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20624
+ WebKit-gtk uses deprecated GtkType/GtkObject
+
+ * plugins/gtk/gtk2xtbin.c:
+ (gtk_xtbin_get_type):
+ * plugins/gtk/gtk2xtbin.h:
+
+2008-10-05 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
+
+ Reviewed by David Hyatt.
+
+ GTK_WINDOW_HWND not GTK_WINDOWING_HWND
+ https://bugs.webkit.org/show_bug.cgi?id=20725
+
+ Updated to ToT by Jan Alonzo.
+
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::getValue):
+
+2008-10-05 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Invalid cast from GdkWindow to GtkWidget
+ https://bugs.webkit.org/show_bug.cgi?id=21391
+
+ Fix a misplaced closing parenthesis to actually cast the widget, not the window
+
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::screenDepth):
+
+2008-10-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Darin Alder.
+
+ Attach the Origin header to POST requests to help defend against
+ cross-site request forgery.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20792
+
+ Collin Jackson <collinj@webkit.org> also contributed to this patch.
+
+ Tests: http/tests/security/originHeader/origin-header-for-data.html
+ http/tests/security/originHeader/origin-header-for-empty.html
+ http/tests/security/originHeader/origin-header-for-get.html
+ http/tests/security/originHeader/origin-header-for-https.html
+ http/tests/security/originHeader/origin-header-for-post.html
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::createWindow):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::createWindow):
+ (WebCore::FrameLoader::urlSelected):
+ (WebCore::FrameLoader::submitForm):
+ (WebCore::FrameLoader::outgoingOrigin):
+ (WebCore::FrameLoader::loadURL):
+ (WebCore::FrameLoader::addExtraFieldsToRequest):
+ (WebCore::FrameLoader::loadPostRequest):
+ (WebCore::FrameLoader::loadResourceSynchronously):
+ (WebCore::FrameLoader::loadItem):
+ * loader/FrameLoader.h:
+ * loader/SubresourceLoader.cpp:
+ (WebCore::SubresourceLoader::create):
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::servePendingRequests):
+ * platform/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::toHTTPOrigin):
+ * platform/SecurityOrigin.h:
+ * platform/network/ResourceRequestBase.h:
+ (WebCore::ResourceRequestBase::httpOrigin):
+ (WebCore::ResourceRequestBase::setHTTPOrigin):
+ (WebCore::ResourceRequestBase::clearHTTPOrigin):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::makeSimpleCrossSiteAccessRequest):
+ (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
+ (WebCore::XMLHttpRequest::handleAsynchronousPreflightResult):
+ (WebCore::XMLHttpRequest::didReceiveResponsePreflight):
+
+2008-10-04 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Bug 21381: Incremental parsing of html causes bogus line numbers in some cases
+ <https://bugs.webkit.org/show_bug.cgi?id=21381>
+
+ If we hit a parsing boundary (end of a packet, etc) in the middle of a
+ <script> element when we are doing an incremental parse, we exit the
+ parser, and reenter later when more data is available. During this
+ reentry we incorrectly reset the scriptStartLineno to the current line
+ in the parser, which is now part way through the script element.
+
+ The solution is to track whether we are entering or reentering the parsing
+ of a script element. We do this simply by 0 checking scriptStartLineno,
+ and resetting it after we complete parsing of each script element.
+
+ Test: http/tests/incremental/pause-in-script-element.pl
+
+ * ChangeLog:
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::parseSpecial):
+ (WebCore::HTMLTokenizer::scriptHandler):
+
+2008-10-04 Alp Toker <alp@nuanti.com>
+
+ Reviewed by David Hyatt. Landed by Jan Alonzo.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20924
+ [Gtk] Linux/Gtk: Recent tree revisions fail Acid2 and Acid3
+
+ https://bugs.webkit.org/show_bug.cgi?id=19578
+ [CURL] problem in parseDataUrl
+
+ De-obfuscate parseDataUrl() and fix regressions introduced in r35954.
+ This patch also fixes encoding support in escaped (non-Base64) data
+ URLs. All manual data URL tests now pass in both GLib and non-GLib
+ code paths.
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::parseDataUrl):
+
+2008-10-04 Timothy Hatcher <timothy@apple.com>
+
+ Makes breakpoints and debugging code during page load work in the
+ Web Inspector's debugger. Specifically, this makes the source
+ code for loading resources show up in the Scripts panel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19053
+ rdar://problem/5933408
+
+ Reviewed by Mark Rowe.
+
+ * WebCore.xcodeproj/project.pbxproj: Mark the inspector group as
+ not using tabs and a tab width of 8.
+ * inspector/InspectorController.cpp:
+ (WebCore::addResourceSourceToFrame): Return a bool to report if the
+ source was added successfully or not.
+ (WebCore::addSourceToFrame): Ditto.
+ * inspector/front-end/ScriptView.js:
+ (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
+ Return early if the InspectorController.addSourceToFrame fails.
+ Moved the delete of the _frameNeedsSetup property after that call so
+ if the source wasn't added it will be attempted again.
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype.detach): Move a comment.
+ (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded):
+ Don't check if the resource is finished or failed, just attempt
+ to add the source to the frame. WebCore has the source, but the
+ finished property hasn't been set yet. Return early if the
+ InspectorController.addSourceToFrame fails. Moved the delete
+ of the _frameNeedsSetup property after that call so if the source
+ wasn't added it will be attempted again.
+ (WebInspector.SourceView.prototype._resourceLoadingFinished):
+ Clear the _frameNeedsSetup and _sourceFrameSetup properties so
+ the source frame will we populated again now that the resource
+ load has finished.
+ * manual-tests/inspector/debugger-pause-during-load.html: Added.
+
+2008-10-04 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Add a 'Check For Weak VTables' build phase to catch weak vtables as early as possible.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2008-10-04 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21373
+
+ Tear down scrollbars in FrameView rather than ScrollView so that the connection to the hostWindow()
+ is still present.
+
+ Reviewed by Mark Rowe
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::~FrameView):
+
+2008-10-04 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Avoid copying a Vector when using getSupportedKeySizes.
+
+ * html/HTMLKeygenElement.cpp:
+ (WebCore::HTMLKeygenElement::HTMLKeygenElement):
+ * platform/SSLKeyGenerator.h:
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ (WebCore::getSupportedKeySizes):
+ * platform/mac/SSLKeyGeneratorMac.mm:
+ (WebCore::getSupportedKeySizes):
+ * platform/qt/TemporaryLinkStubs.cpp:
+ (WebCore::getSupportedKeySizes):
+ * platform/win/TemporaryLinkStubs.cpp:
+ (WebCore::getSupportedKeySizes):
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (WebCore::getSupportedKeySizes):
+
+2008-10-04 Darin Adler <darin@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ - prepare for https://bugs.webkit.org/show_bug.cgi?id=21295
+ Bug 21295: Replace ExecState with a call frame Register pointer
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::allowsUnwrappedAccessFrom):
+ Remove bogus "const".
+ * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
+
+2008-10-04 David Hyatt <hyatt@apple.com>
+
+ Make PopupMenuClient obey the platform abstraction. Remove any connection to Document and RenderStyle.
+
+ Reviewed by Darin Adler
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/PopupMenuClient.h:
+ * platform/gtk/PopupMenuGtk.cpp:
+ (WebCore::PopupMenu::show):
+ * platform/mac/PopupMenuMac.mm:
+ (WebCore::PopupMenu::populate):
+ (WebCore::PopupMenu::show):
+ * platform/qt/PopupMenuQt.cpp:
+ (WebCore::PopupMenu::populate):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::calculatePositionAndSize):
+ (WebCore::PopupMenu::paint):
+ (WebCore::PopupWndProc):
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::itemStyle):
+ (WebCore::RenderMenuList::menuStyle):
+ (WebCore::RenderMenuList::hostWindow):
+ * rendering/RenderMenuList.h:
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::itemStyle):
+ (WebCore::RenderTextControl::menuStyle):
+ (WebCore::RenderTextControl::hostWindow):
+ * rendering/RenderTextControl.h:
+
+2008-10-04 Matt Lilek <webkit@mattlilek.com>
+
+ Build fix - restore Private role to headers that had it before the move.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2008-10-04 Darin Adler <darin@apple.com>
+
+ - try to fix build
+
+ * DerivedSources.make: Add new inspector directory to VPATH.
+ * GNUmakefile.am: Add new inspector directory to includes.
+ Re-sort the IDL_BINDINGS list. Add new inspector directory
+ to VPATH.
+
+2008-10-04 Matt Lilek <webkit@mattlilek.com>
+
+ Not reviewed, attempt to fix Gtk build.
+
+ * GNUmakefile.am:
+
+2008-10-03 Timothy Hatcher <timothy@apple.com>
+
+ Move the Web Inspector files into a top-level "inspector" folder.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21359
+
+ Reviewed by Dave Hyatt.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * inspector/InspectorClient.h: Renamed from WebCore/page/InspectorClient.h.
+ * inspector/InspectorController.cpp: Renamed from WebCore/page/InspectorController.cpp.
+ * inspector/InspectorController.h: Renamed from WebCore/page/InspectorController.h.
+ * inspector/JavaScriptCallFrame.cpp: Renamed from WebCore/page/JavaScriptCallFrame.cpp.
+ * inspector/JavaScriptCallFrame.h: Renamed from WebCore/page/JavaScriptCallFrame.h.
+ * inspector/JavaScriptCallFrame.idl: Renamed from WebCore/page/JavaScriptCallFrame.idl.
+ * inspector/JavaScriptDebugListener.h: Renamed from WebCore/page/JavaScriptDebugListener.h.
+ * inspector/JavaScriptDebugServer.cpp: Renamed from WebCore/page/JavaScriptDebugServer.cpp.
+ * inspector/JavaScriptDebugServer.h: Renamed from WebCore/page/JavaScriptDebugServer.h.
+ * inspector/JavaScriptProfile.cpp: Renamed from WebCore/page/JavaScriptProfile.cpp.
+ * inspector/JavaScriptProfile.h: Renamed from WebCore/page/JavaScriptProfile.h.
+ * inspector/JavaScriptProfileNode.cpp: Renamed from WebCore/page/JavaScriptProfileNode.cpp.
+ * inspector/JavaScriptProfileNode.h: Renamed from WebCore/page/JavaScriptProfileNode.h.
+ * inspector/front-end/Breakpoint.js: Renamed from WebCore/page/inspector/Breakpoint.js.
+ * inspector/front-end/BreakpointsSidebarPane.js: Renamed from WebCore/page/inspector/BreakpointsSidebarPane.js.
+ * inspector/front-end/CallStackSidebarPane.js: Renamed from WebCore/page/inspector/CallStackSidebarPane.js.
+ * inspector/front-end/Console.js: Renamed from WebCore/page/inspector/Console.js.
+ * inspector/front-end/DataGrid.js: Renamed from WebCore/page/inspector/DataGrid.js.
+ * inspector/front-end/Database.js: Renamed from WebCore/page/inspector/Database.js.
+ * inspector/front-end/DatabaseQueryView.js: Renamed from WebCore/page/inspector/DatabaseQueryView.js.
+ * inspector/front-end/DatabaseTableView.js: Renamed from WebCore/page/inspector/DatabaseTableView.js.
+ * inspector/front-end/DatabasesPanel.js: Renamed from WebCore/page/inspector/DatabasesPanel.js.
+ * inspector/front-end/ElementsPanel.js: Renamed from WebCore/page/inspector/ElementsPanel.js.
+ * inspector/front-end/ElementsTreeOutline.js: Renamed from WebCore/page/inspector/ElementsTreeOutline.js.
+ * inspector/front-end/FontView.js: Renamed from WebCore/page/inspector/FontView.js.
+ * inspector/front-end/ImageView.js: Renamed from WebCore/page/inspector/ImageView.js.
+ * inspector/front-end/Images/back.png: Renamed from WebCore/page/inspector/Images/back.png.
+ * inspector/front-end/Images/checker.png: Renamed from WebCore/page/inspector/Images/checker.png.
+ * inspector/front-end/Images/clearConsoleButtons.png: Renamed from WebCore/page/inspector/Images/clearConsoleButtons.png.
+ * inspector/front-end/Images/closeButtons.png: Renamed from WebCore/page/inspector/Images/closeButtons.png.
+ * inspector/front-end/Images/consoleButtons.png: Renamed from WebCore/page/inspector/Images/consoleButtons.png.
+ * inspector/front-end/Images/database.png: Renamed from WebCore/page/inspector/Images/database.png.
+ * inspector/front-end/Images/databaseTable.png: Renamed from WebCore/page/inspector/Images/databaseTable.png.
+ * inspector/front-end/Images/databasesIcon.png: Renamed from WebCore/page/inspector/Images/databasesIcon.png.
+ * inspector/front-end/Images/debuggerContinue.png: Renamed from WebCore/page/inspector/Images/debuggerContinue.png.
+ * inspector/front-end/Images/debuggerPause.png: Renamed from WebCore/page/inspector/Images/debuggerPause.png.
+ * inspector/front-end/Images/debuggerStepInto.png: Renamed from WebCore/page/inspector/Images/debuggerStepInto.png.
+ * inspector/front-end/Images/debuggerStepOut.png: Renamed from WebCore/page/inspector/Images/debuggerStepOut.png.
+ * inspector/front-end/Images/debuggerStepOver.png: Renamed from WebCore/page/inspector/Images/debuggerStepOver.png.
+ * inspector/front-end/Images/debuggingButtons.png: Renamed from WebCore/page/inspector/Images/debuggingButtons.png.
+ * inspector/front-end/Images/disclosureTriangleSmallDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDown.png.
+ * inspector/front-end/Images/disclosureTriangleSmallDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownBlack.png.
+ * inspector/front-end/Images/disclosureTriangleSmallDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallDownWhite.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRight.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRight.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRightBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightBlack.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRightDown.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDown.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRightDownBlack.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownBlack.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRightDownWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightDownWhite.png.
+ * inspector/front-end/Images/disclosureTriangleSmallRightWhite.png: Renamed from WebCore/page/inspector/Images/disclosureTriangleSmallRightWhite.png.
+ * inspector/front-end/Images/dockButtons.png: Renamed from WebCore/page/inspector/Images/dockButtons.png.
+ * inspector/front-end/Images/elementsIcon.png: Renamed from WebCore/page/inspector/Images/elementsIcon.png.
+ * inspector/front-end/Images/errorIcon.png: Renamed from WebCore/page/inspector/Images/errorIcon.png.
+ * inspector/front-end/Images/errorMediumIcon.png: Renamed from WebCore/page/inspector/Images/errorMediumIcon.png.
+ * inspector/front-end/Images/excludeButtons.png: Renamed from WebCore/page/inspector/Images/excludeButtons.png.
+ * inspector/front-end/Images/focusButtons.png: Renamed from WebCore/page/inspector/Images/focusButtons.png.
+ * inspector/front-end/Images/forward.png: Renamed from WebCore/page/inspector/Images/forward.png.
+ * inspector/front-end/Images/glossyHeader.png: Renamed from WebCore/page/inspector/Images/glossyHeader.png.
+ * inspector/front-end/Images/glossyHeaderPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderPressed.png.
+ * inspector/front-end/Images/glossyHeaderSelected.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelected.png.
+ * inspector/front-end/Images/glossyHeaderSelectedPressed.png: Renamed from WebCore/page/inspector/Images/glossyHeaderSelectedPressed.png.
+ * inspector/front-end/Images/goArrow.png: Renamed from WebCore/page/inspector/Images/goArrow.png.
+ * inspector/front-end/Images/largerResourcesButtons.png: Renamed from WebCore/page/inspector/Images/largerResourcesButtons.png.
+ * inspector/front-end/Images/nodeSearchButtons.png: Renamed from WebCore/page/inspector/Images/nodeSearchButtons.png.
+ * inspector/front-end/Images/paneBottomGrow.png: Renamed from WebCore/page/inspector/Images/paneBottomGrow.png.
+ * inspector/front-end/Images/paneBottomGrowActive.png: Renamed from WebCore/page/inspector/Images/paneBottomGrowActive.png.
+ * inspector/front-end/Images/paneGrowHandleLine.png: Renamed from WebCore/page/inspector/Images/paneGrowHandleLine.png.
+ * inspector/front-end/Images/pauseOnExceptionButtons.png: Renamed from WebCore/page/inspector/Images/pauseOnExceptionButtons.png.
+ * inspector/front-end/Images/percentButtons.png: Renamed from WebCore/page/inspector/Images/percentButtons.png.
+ * inspector/front-end/Images/profileGroupIcon.png: Renamed from WebCore/page/inspector/Images/profileGroupIcon.png.
+ * inspector/front-end/Images/profileIcon.png: Renamed from WebCore/page/inspector/Images/profileIcon.png.
+ * inspector/front-end/Images/profileSmallIcon.png: Renamed from WebCore/page/inspector/Images/profileSmallIcon.png.
+ * inspector/front-end/Images/profilesIcon.png: Renamed from WebCore/page/inspector/Images/profilesIcon.png.
+ * inspector/front-end/Images/recordButtons.png: Renamed from WebCore/page/inspector/Images/recordButtons.png.
+ * inspector/front-end/Images/reloadButtons.png: Renamed from WebCore/page/inspector/Images/reloadButtons.png.
+ * inspector/front-end/Images/resourceCSSIcon.png: Renamed from WebCore/page/inspector/Images/resourceCSSIcon.png.
+ * inspector/front-end/Images/resourceDocumentIcon.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIcon.png.
+ * inspector/front-end/Images/resourceDocumentIconSmall.png: Renamed from WebCore/page/inspector/Images/resourceDocumentIconSmall.png.
+ * inspector/front-end/Images/resourceJSIcon.png: Renamed from WebCore/page/inspector/Images/resourceJSIcon.png.
+ * inspector/front-end/Images/resourcePlainIcon.png: Renamed from WebCore/page/inspector/Images/resourcePlainIcon.png.
+ * inspector/front-end/Images/resourcePlainIconSmall.png: Renamed from WebCore/page/inspector/Images/resourcePlainIconSmall.png.
+ * inspector/front-end/Images/resourcesIcon.png: Renamed from WebCore/page/inspector/Images/resourcesIcon.png.
+ * inspector/front-end/Images/resourcesSizeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesSizeGraphIcon.png.
+ * inspector/front-end/Images/resourcesTimeGraphIcon.png: Renamed from WebCore/page/inspector/Images/resourcesTimeGraphIcon.png.
+ * inspector/front-end/Images/scriptsIcon.png: Renamed from WebCore/page/inspector/Images/scriptsIcon.png.
+ * inspector/front-end/Images/searchSmallBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBlue.png.
+ * inspector/front-end/Images/searchSmallBrightBlue.png: Renamed from WebCore/page/inspector/Images/searchSmallBrightBlue.png.
+ * inspector/front-end/Images/searchSmallGray.png: Renamed from WebCore/page/inspector/Images/searchSmallGray.png.
+ * inspector/front-end/Images/searchSmallWhite.png: Renamed from WebCore/page/inspector/Images/searchSmallWhite.png.
+ * inspector/front-end/Images/segment.png: Renamed from WebCore/page/inspector/Images/segment.png.
+ * inspector/front-end/Images/segmentEnd.png: Renamed from WebCore/page/inspector/Images/segmentEnd.png.
+ * inspector/front-end/Images/segmentHover.png: Renamed from WebCore/page/inspector/Images/segmentHover.png.
+ * inspector/front-end/Images/segmentHoverEnd.png: Renamed from WebCore/page/inspector/Images/segmentHoverEnd.png.
+ * inspector/front-end/Images/segmentSelected.png: Renamed from WebCore/page/inspector/Images/segmentSelected.png.
+ * inspector/front-end/Images/segmentSelectedEnd.png: Renamed from WebCore/page/inspector/Images/segmentSelectedEnd.png.
+ * inspector/front-end/Images/splitviewDimple.png: Renamed from WebCore/page/inspector/Images/splitviewDimple.png.
+ * inspector/front-end/Images/splitviewDividerBackground.png: Renamed from WebCore/page/inspector/Images/splitviewDividerBackground.png.
+ * inspector/front-end/Images/statusbarBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBackground.png.
+ * inspector/front-end/Images/statusbarBottomBackground.png: Renamed from WebCore/page/inspector/Images/statusbarBottomBackground.png.
+ * inspector/front-end/Images/statusbarButtons.png: Renamed from WebCore/page/inspector/Images/statusbarButtons.png.
+ * inspector/front-end/Images/statusbarMenuButton.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButton.png.
+ * inspector/front-end/Images/statusbarMenuButtonSelected.png: Renamed from WebCore/page/inspector/Images/statusbarMenuButtonSelected.png.
+ * inspector/front-end/Images/statusbarResizerHorizontal.png: Renamed from WebCore/page/inspector/Images/statusbarResizerHorizontal.png.
+ * inspector/front-end/Images/statusbarResizerVertical.png: Renamed from WebCore/page/inspector/Images/statusbarResizerVertical.png.
+ * inspector/front-end/Images/timelinePillBlue.png: Renamed from WebCore/page/inspector/Images/timelinePillBlue.png.
+ * inspector/front-end/Images/timelinePillGray.png: Renamed from WebCore/page/inspector/Images/timelinePillGray.png.
+ * inspector/front-end/Images/timelinePillGreen.png: Renamed from WebCore/page/inspector/Images/timelinePillGreen.png.
+ * inspector/front-end/Images/timelinePillOrange.png: Renamed from WebCore/page/inspector/Images/timelinePillOrange.png.
+ * inspector/front-end/Images/timelinePillPurple.png: Renamed from WebCore/page/inspector/Images/timelinePillPurple.png.
+ * inspector/front-end/Images/timelinePillRed.png: Renamed from WebCore/page/inspector/Images/timelinePillRed.png.
+ * inspector/front-end/Images/timelinePillYellow.png: Renamed from WebCore/page/inspector/Images/timelinePillYellow.png.
+ * inspector/front-end/Images/tipBalloon.png: Renamed from WebCore/page/inspector/Images/tipBalloon.png.
+ * inspector/front-end/Images/tipBalloonBottom.png: Renamed from WebCore/page/inspector/Images/tipBalloonBottom.png.
+ * inspector/front-end/Images/tipIcon.png: Renamed from WebCore/page/inspector/Images/tipIcon.png.
+ * inspector/front-end/Images/tipIconPressed.png: Renamed from WebCore/page/inspector/Images/tipIconPressed.png.
+ * inspector/front-end/Images/toolbarItemSelected.png: Renamed from WebCore/page/inspector/Images/toolbarItemSelected.png.
+ * inspector/front-end/Images/treeDownTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleBlack.png.
+ * inspector/front-end/Images/treeDownTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeDownTriangleWhite.png.
+ * inspector/front-end/Images/treeRightTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleBlack.png.
+ * inspector/front-end/Images/treeRightTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeRightTriangleWhite.png.
+ * inspector/front-end/Images/treeUpTriangleBlack.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleBlack.png.
+ * inspector/front-end/Images/treeUpTriangleWhite.png: Renamed from WebCore/page/inspector/Images/treeUpTriangleWhite.png.
+ * inspector/front-end/Images/userInputIcon.png: Renamed from WebCore/page/inspector/Images/userInputIcon.png.
+ * inspector/front-end/Images/userInputPreviousIcon.png: Renamed from WebCore/page/inspector/Images/userInputPreviousIcon.png.
+ * inspector/front-end/Images/warningIcon.png: Renamed from WebCore/page/inspector/Images/warningIcon.png.
+ * inspector/front-end/Images/warningMediumIcon.png: Renamed from WebCore/page/inspector/Images/warningMediumIcon.png.
+ * inspector/front-end/Images/warningsErrors.png: Renamed from WebCore/page/inspector/Images/warningsErrors.png.
+ * inspector/front-end/MetricsSidebarPane.js: Renamed from WebCore/page/inspector/MetricsSidebarPane.js.
+ * inspector/front-end/Object.js: Renamed from WebCore/page/inspector/Object.js.
+ * inspector/front-end/ObjectPropertiesSection.js: Renamed from WebCore/page/inspector/ObjectPropertiesSection.js.
+ * inspector/front-end/Panel.js: Renamed from WebCore/page/inspector/Panel.js.
+ * inspector/front-end/Placard.js: Renamed from WebCore/page/inspector/Placard.js.
+ * inspector/front-end/ProfileView.js: Renamed from WebCore/page/inspector/ProfileView.js.
+ * inspector/front-end/ProfilesPanel.js: Renamed from WebCore/page/inspector/ProfilesPanel.js.
+ * inspector/front-end/PropertiesSection.js: Renamed from WebCore/page/inspector/PropertiesSection.js.
+ * inspector/front-end/PropertiesSidebarPane.js: Renamed from WebCore/page/inspector/PropertiesSidebarPane.js.
+ * inspector/front-end/Resource.js: Renamed from WebCore/page/inspector/Resource.js.
+ * inspector/front-end/ResourceCategory.js: Renamed from WebCore/page/inspector/ResourceCategory.js.
+ * inspector/front-end/ResourceView.js: Renamed from WebCore/page/inspector/ResourceView.js.
+ * inspector/front-end/ResourcesPanel.js: Renamed from WebCore/page/inspector/ResourcesPanel.js.
+ * inspector/front-end/ScopeChainSidebarPane.js: Renamed from WebCore/page/inspector/ScopeChainSidebarPane.js.
+ * inspector/front-end/Script.js: Renamed from WebCore/page/inspector/Script.js.
+ * inspector/front-end/ScriptView.js: Renamed from WebCore/page/inspector/ScriptView.js.
+ * inspector/front-end/ScriptsPanel.js: Renamed from WebCore/page/inspector/ScriptsPanel.js.
+ * inspector/front-end/SidebarPane.js: Renamed from WebCore/page/inspector/SidebarPane.js.
+ * inspector/front-end/SidebarTreeElement.js: Renamed from WebCore/page/inspector/SidebarTreeElement.js.
+ * inspector/front-end/SourceFrame.js: Renamed from WebCore/page/inspector/SourceFrame.js.
+ * inspector/front-end/SourceView.js: Renamed from WebCore/page/inspector/SourceView.js.
+ * inspector/front-end/StylesSidebarPane.js: Renamed from WebCore/page/inspector/StylesSidebarPane.js.
+ * inspector/front-end/TextPrompt.js: Renamed from WebCore/page/inspector/TextPrompt.js.
+ * inspector/front-end/View.js: Renamed from WebCore/page/inspector/View.js.
+ * inspector/front-end/WebKit.qrc: Renamed from WebCore/page/inspector/WebKit.qrc.
+ * inspector/front-end/inspector.css: Renamed from WebCore/page/inspector/inspector.css.
+ * inspector/front-end/inspector.html: Renamed from WebCore/page/inspector/inspector.html.
+ * inspector/front-end/inspector.js: Renamed from WebCore/page/inspector/inspector.js.
+ * inspector/front-end/treeoutline.js: Renamed from WebCore/page/inspector/treeoutline.js.
+ * inspector/front-end/utilities.js: Renamed from WebCore/page/inspector/utilities.js.
+
+2008-10-03 Timothy Hatcher <timothy@apple.com>
+
+ Adds support to the Web Inspector's Elements panel for fast tag name,
+ class name, id and attribute name searching. The panel first tries
+ using getElementById, getElementsByClassName and getElementsByTagName
+ with the search query. Then does a slower search using XPath for partial
+ matches, text and comment matches.
+
+ Adds support for search queries like "<div>", "<h" and "frame>".
+ These forms limit the search to tag names, text and comment matches.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21353
+
+ Reviewed by Maciej Stachowiak.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.performSearch): Add tag syntax
+ support. Add new search functions that try exact matches first.
+
+2008-10-03 Timothy Hatcher <timothy@apple.com>
+
+ Changes how searching works in the Web Inspector's Elements
+ panel. The search tasks are divided into chunks that are small
+ units of work that are performed at a time interval. This
+ change also prevents queries that will select all elements,
+ since that isn't useful.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21285
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.searchCancled):
+ Remove the searchResultsProperty form results since there might
+ be an unfinished search.
+ (WebInspector.ElementsPanel.prototype.performSearch): Divide the
+ documents and search functions into chunks that are performed on
+ a interval of 25ms. Prevent searches for "//*" and "*".
+
+2008-10-03 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ - "this" object in methods called on primitives should be wrapper object
+ https://bugs.webkit.org/show_bug.cgi?id=21362
+
+ Updated so toThis conversion for the split window is handled properly.
+
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+2008-10-03 Sam Weinig <sam@webkit.org>
+
+ Reviewed by David "The Motivator" Hyatt.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=21355
+ Move SecurityOrigin out of platform/ to page/.
+
+ It was a layering violation for SecurityOrigin to be in platform
+ as it depended on FrameLoader.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * page/SecurityOrigin.cpp: Copied from platform/SecurityOrigin.cpp.
+ * page/SecurityOrigin.h: Copied from platform/SecurityOrigin.h.
+ * page/SecurityOriginHash.h: Copied from platform/SecurityOriginHash.h.
+ * platform/SecurityOrigin.cpp: Removed.
+ * platform/SecurityOrigin.h: Removed.
+ * platform/SecurityOriginHash.h: Removed.
+
+2008-10-03 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Alp Toker.
+
+ http://bugs.webkit.org/show_bug.cgi?id=18832
+ [curl] file upload does not work
+
+ The curl_off_t integer type has a different size depending if large
+ file support is enabled or not. There is no different public API for
+ the two cases, so the same function accepts a different type based on
+ a compilation option the could be different in WebKit and libcurl.
+ To fix the bug we query libcurl at runtime for large file support and
+ pass the right type based on that.
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::setupPOST):
+
+2008-10-03 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by David Hyatt.
+
+ Gtk build fixes.
+
+ * platform/gtk/FileChooserGtk.cpp:
+ (WebCore::FileChooser::openFileChooser):
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::screenDepth):
+ (WebCore::screenDepthPerComponent):
+ (WebCore::screenAvailableRect):
+ * platform/gtk/PopupMenuGtk.cpp:
+ (WebCore::PopupMenu::show):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::platformAddChild):
+ (WebCore::ScrollView::platformRemoveChild):
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::setCursor):
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::forceRedraw):
+ (WebCore::PluginView::init):
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Fix Qt bustage from missing include.
+
+ * platform/qt/PlatformScreenQt.cpp:
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Fix Windows scrollbar bustage in popup menus.
+
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupWndProc):
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Fix Windows bustage.
+
+ * platform/win/FileChooserWin.cpp:
+ (WebCore::FileChooser::openFileChooser):
+ * platform/win/PlatformScreenWin.cpp:
+ (WebCore::monitorInfoForWidget):
+ * platform/win/WidgetWin.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::forceRedraw):
+ (WebCore::PluginView::init):
+
+2008-10-03 Darin Adler <darin@apple.com>
+
+ * bindings/js/JSInspectedObjectWrapper.cpp: Try to fix a build failure
+ seen on some machines but not others by adding an include.
+
+2008-10-03 Darin Adler <darin@apple.com>
+
+ - Qt build fix
+
+ * bridge/qt/qt_runtime.cpp: Remove long-obsolete codeType and
+ execute functions. Declarations for these relied on the CodeType
+ enumeration, which used to be in ExecState.h; but the functions
+ aren't needed at all.
+ * bridge/qt/qt_runtime.h: Ditto.
+
+2008-10-03 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ - next step of https://bugs.webkit.org/show_bug.cgi?id=21295
+ Turn ExecState into a call frame pointer.
+
+ Remove m_globalObject and m_globalData from ExecState.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData):
+ Removed an argument now that JSGlobalObject doesn't need it any more.
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed the argument from
+ the JSDOMWindowBaseData constructor, and added the this argument to the
+ JSGlobalObject constructor. This is because a couple key bits of
+ initialization moved from the data constructor to the JSGlobalObject
+ constructor.
+ * bindings/js/JSDOMWindowBase.h: Ditto.
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::RuntimeMethod):
+ Pass JSGlobalData* instead of ExecState* to the InternalFunction
+ constructor.
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Fix Windows/Qt build bustage.
+
+ Reviewed by ggaren
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::platformWindow):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::platformWindow):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * platform/HostWindow.h:
+ * platform/qt/PlatformScreenQt.cpp:
+ (WebCore::screenDepth):
+ (WebCore::screenDepthPerComponent):
+ (WebCore::screenIsMonochrome):
+ (WebCore::screenRect):
+ (WebCore::screenAvailableRect):
+ * platform/qt/PopupMenuQt.cpp:
+ (WebCore::PopupMenu::show):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::show):
+ (WebCore::PopupMenu::calculatePositionAndSize):
+ (WebCore::PopupWndProc):
+
+2008-10-03 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Make setStyle() take a const RenderStyle, to ensure that an
+ earlier RenderStyle::diff() remains valid.
+
+ * rendering/RenderBR.cpp:
+ * rendering/RenderBR.h:
+ * rendering/RenderBlock.cpp:
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ * rendering/RenderBox.h:
+ * rendering/RenderButton.cpp:
+ * rendering/RenderButton.h:
+ * rendering/RenderFieldset.cpp:
+ * rendering/RenderFieldset.h:
+ * rendering/RenderFileUploadControl.cpp:
+ * rendering/RenderFileUploadControl.h:
+ * rendering/RenderInline.cpp:
+ * rendering/RenderInline.h:
+ * rendering/RenderListBox.cpp:
+ * rendering/RenderListBox.h:
+ * rendering/RenderListItem.cpp:
+ * rendering/RenderListItem.h:
+ * rendering/RenderListMarker.cpp:
+ * rendering/RenderListMarker.h:
+ * rendering/RenderMenuList.cpp:
+ * rendering/RenderMenuList.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::setStyle):
+ * rendering/RenderObject.h:
+ * rendering/RenderReplaced.cpp:
+ * rendering/RenderReplaced.h:
+ * rendering/RenderSVGBlock.cpp:
+ (WebCore::RenderSVGBlock::setStyle):
+ * rendering/RenderSVGBlock.h:
+ * rendering/RenderSVGGradientStop.cpp:
+ * rendering/RenderSVGGradientStop.h:
+ * rendering/RenderSlider.cpp:
+ * rendering/RenderSlider.h:
+ * rendering/RenderTable.cpp:
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ * rendering/RenderTableCell.h:
+ * rendering/RenderTableRow.cpp:
+ * rendering/RenderTableRow.h:
+ * rendering/RenderText.cpp:
+ * rendering/RenderText.h:
+ * rendering/RenderTextControl.cpp:
+ * rendering/RenderTextControl.h:
+ * rendering/RenderWidget.cpp:
+ * rendering/RenderWidget.h:
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::isDisplayReplacedType):
+ (WebCore::RenderStyle::isDisplayInlineType):
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Preparation for enabling scrollbars to hit test properly inside transforms. Clean up the scrollbar
+ event handlers to no longer be virtual. Don't pass a mouse event where none is needed. Add a new
+ method on Scrollbars called transformEvent that will apply all of the transforms to make a new event
+ that will work properly for hit testing. This patch just stubs out that method to return the same
+ event untransformed.
+
+ Reviewed by Darin Adler
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMouseDoubleClickEvent):
+ (WebCore::EventHandler::handleMouseMoveEvent):
+ (WebCore::EventHandler::handleMouseReleaseEvent):
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * page/gtk/EventHandlerGtk.cpp:
+ * page/mac/EventHandlerMac.mm:
+ * page/qt/EventHandlerQt.cpp:
+ * page/win/EventHandlerWin.cpp:
+ * page/wx/EventHandlerWx.cpp:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::mouseMoved):
+ (WebCore::Scrollbar::mouseExited):
+ (WebCore::Scrollbar::mouseUp):
+ (WebCore::Scrollbar::mouseDown):
+ (WebCore::Scrollbar::transformEvent):
+ * platform/Scrollbar.h:
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21340
+
+ Remove "containingWindow()/setContainingWindow()" from Widget. HostWindow covers this now.
+
+ Reviewed by Dan Bernstein & Darin Adler
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::addChild):
+ * platform/Widget.cpp:
+ (WebCore::Widget::init):
+ * platform/Widget.h:
+ * platform/mac/WidgetMac.mm:
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::show):
+
+2008-10-03 Adele Peterson <adele@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily):
+ Return early if settings is nil.
+
+2008-10-03 Rob Buis <buis@kde.org>
+
+ Reviewed by Darin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20134
+ REGRESSION (2.0.4-3.0.4): No default value set for <input type=range> with an even difference of (max - min)
+
+ Make sure the input element gets the right default value when no value is set.
+
+ Test: fast/forms/range-default-value.html
+
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::setPositionFromValue):
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Instead of a cross-platform init/destroy that forces every ScrollView platform to have a constructor/
+ destructor that calls them, switch to having a cross-platform constructor/destructor that calls
+ platform-specific init/destroy methods.
+
+ With this change, ScrollViewWin.cpp can be removed from the build (yay!).
+
+ Reviewed by Darin Adler
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+ (WebCore::ScrollView::platformInit):
+ (WebCore::ScrollView::platformDestroy):
+ (WebCore::ScrollView::platformAddChild):
+ (WebCore::ScrollView::platformRemoveChild):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::platformInit):
+ (WebCore::ScrollView::platformDestroy):
+ * platform/mac/ScrollViewMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::platformInit):
+ (WebCore::ScrollView::platformDestroy):
+ * platform/win/ScrollViewWin.cpp: Removed.
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformInit):
+ (WebCore::ScrollView::platformDestroy):
+ (WebCore::ScrollView::setPlatformWidget):
+
+2008-10-03 Adele Peterson <adele@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for <rdar://problem/6012018>
+ https://bugs.webkit.org/show_bug.cgi?id=21335
+ CrashTracer: [USER] 4959 crashes in Safari at com.apple.WebCore: WebCore::Frame::settings const + 8
+
+ * css/CSSFontSelector.cpp: (WebCore::fontDataForGenericFamily): Return early if the frame is nil.
+
+2008-10-03 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Build fix.
+
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::invalidateRect):
+
+2008-10-03 Alp Toker <alp@nuanti.com>
+
+ Remove some left-over GTK+ includes. No change in functionality.
+
+ * platform/Cursor.h:
+ * platform/graphics/Icon.h:
+ * platform/gtk/RenderThemeGtk.h:
+
+2008-10-03 Alp Toker <alp@nuanti.com>
+
+ Build fix for trailing comment after #endif
+
+ * dom/ElementRareData.h:
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Remove addToDirtyRegion.
+
+ Reviewed by Oliver Hunt
+
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+
+2008-10-03 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - fix a CachedResource leak introduced in r37176
+
+ Undo r37176 and instead allow pruneDeadResources() to be re-entered, but
+ afterwards bail out of the outer pruneDeadResources().
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::Cache):
+ (WebCore::Cache::pruneDeadResources):
+ (WebCore::Cache::remove):
+ * loader/Cache.h:
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21330
+
+ Fix Gtk adjustments so that they are properly checked again before creating horizontal/vertical
+ scrollbars.
+
+ Reviewed by Oliver Hunt
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::setHasVerticalScrollbar):
+ (WebCore::ScrollView::platformHasHorizontalAdjustment):
+ (WebCore::ScrollView::platformHasVerticalAdjustment):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::adjustmentChanged):
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+ (WebCore::ScrollView::setGtkAdjustments):
+ (WebCore::ScrollView::platformHandleHorizontalAdjustment):
+ (WebCore::ScrollView::platformHandleVerticalAdjustment):
+
+2008-10-03 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 21106: .in format discussed changes
+ https://bugs.webkit.org/show_bug.cgi?id=21106
+
+ Change "upperCase" to "interfaceName" per-tag parameter as
+ discussed on the mailing list. Removed the per-attribute version
+ as it was not used.
+
+ Also add the "Element" suffix to all interfaceName parameter to match
+ the class name (and thus remove it from make_names.pl).
+
+ * dom/make_names.pl:
+ * html/HTMLTagNames.in:
+ * svg/svgtags.in:
+
+2008-10-03 David Hyatt <hyatt@apple.com>
+
+ Preserve Qt's disabling of blitting when any native widgets are present anywhere on the page (ick).
+ Hopefully this is a temporary hack that could eventually be removed.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::rootPreventsBlitting):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+ (WebCore::ScrollView::platformAddChild):
+ (WebCore::ScrollView::platformRemoveChild):
+
+2008-10-02 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21328
+
+ Make widget invalidation more cross-platform.
+
+ (1) Make invalidateRect a pure virtual function on Widget. All leaf widgets must now implement this function.
+
+ (2) Scrollbars now send invalidations through the ScrollbarClient. windowClipRect on ScrollbarClient has been removed and replaced with this invalidation call.
+ This allows all scrollbar invalidations to go through the render tree so that transforms and reflections will be respected.
+
+ (3) Plugins now have the native window invalidation code for windowed plugins. Windowless plugins do a repaintRectangle on the plugin's renderer.
+
+ (4) FrameViews now do a repaintRectangle on their owner element's renderer.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::invalidateRect):
+ (WebCore::FrameView::invalidateScrollbarRect):
+ * page/FrameView.h:
+ * platform/PopupMenu.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+ * platform/ScrollView.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::setEnabled):
+ (WebCore::Scrollbar::invalidateRect):
+ * platform/Scrollbar.h:
+ * platform/ScrollbarClient.h:
+ * platform/Widget.h:
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/mac/WidgetMac.mm:
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::invalidateScrollbarRect):
+ * platform/win/WidgetWin.cpp:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::invalidateTimerFired):
+ (WebCore::PluginView::invalidateWindowlessPluginRect):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::invalidateRect):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::invalidateRect):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::invalidateRect):
+ (WebCore::PluginView::invalidateRegion):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::invalidateScrollbarRect):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintObject):
+ (WebCore::RenderListBox::paintScrollbar):
+ (WebCore::RenderListBox::invalidateScrollbarRect):
+ * rendering/RenderListBox.h:
+
+2008-10-02 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Geoffrey Garen and Sam Weinig.
+
+ - fix SVGFontFaceElement leaks seen in Acid3
+ - make font-face elements take effect only when they are in the document tree
+
+ Test: svg/custom/font-face-not-in-document.svg
+
+ * svg/SVGFontData.h: Changed the m_svgFontFaceElement member from a
+ RefPtr to a plain pointer to break a ref cycle.
+ (WebCore::SVGFontData::svgFontFaceElement):
+
+ * svg/SVGFontFaceElement.cpp: Changed to insert and remove the
+ @font-face rule from the document's mapped element sheet when the
+ element is inserted and removed from the document, and to update it
+ only when the element is in the document.
+ (WebCore::SVGFontFaceElement::SVGFontFaceElement):
+ (WebCore::SVGFontFaceElement::parseMappedAttribute):
+ (WebCore::SVGFontFaceElement::rebuildFontFace):
+ (WebCore::SVGFontFaceElement::insertedIntoDocument):
+ (WebCore::SVGFontFaceElement::removedFromDocument):
+ (WebCore::SVGFontFaceElement::childrenChanged):
+ (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
+ * svg/SVGFontFaceElement.h:
+
+2008-10-01 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Fix RenderFileUploadControl::setStyle() and
+ RenderMenuList::setStyle() to not touch the style; replace
+ with html4.css and CSSStyleSelector changes.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21287
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ * css/html4.css:
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::setStyle):
+ * rendering/RenderFileUploadControl.cpp:
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::setStyle):
+
+2008-10-01 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Clean up code that changes the RenderStyle passed in to
+ table renderer setStyle() methods.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21287
+
+ Tests: fast/table/floating-th.html
+ fast/table/table-display-types-strict.html
+ fast/table/table-display-types.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::adjustRenderStyle):
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::setStyle):
+ * rendering/RenderTableRow.cpp:
+ (WebCore::RenderTableRow::setStyle):
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::setStyle):
+
+2008-10-02 Darin Adler <darin@apple.com>
+
+ - fix build
+
+ * bindings/scripts/CodeGeneratorJS.pm: Need to replace the -> with a . here too.
+ Not just locally in my generated file!
+
+2008-10-02 Adele Peterson <adele@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21299
+ REGRESSION: <input> color specified in inline style applies to placeholder
+
+ I recently added a pseudo-class for the placeholder, but that can be overridden by inline style changes. A pseudo-element
+ is more appropriate. This change adds "-webkit-input-placeholder".
+
+ * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType):
+ Added definition for "-webkit-input-placeholder" pseudo element.
+ * css/CSSSelector.h: (WebCore::CSSSelector::): Added PseudoInputPlaceholder.
+ * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ Added case for PseudoInputPlaceholder.
+ * css/html4.css: Added rule for -webkit-input-placeholder pseudo-element.
+ * rendering/style/RenderStyle.h: (WebCore::RenderStyle::): Added INPUT_PLACEHOLDER.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setValue): Check that its a text field before calling updatePlaceholderVisibility.
+ (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
+ (WebCore::HTMLInputElement::updatePlaceholderVisibility): Instead of calling setChanged(), call updatePlaceholderVisibility on the renderer.
+ setChanged wouldn't actually trigger setStyle since the style for the input element won't actually change.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::createInnerTextStyle): Get the pseudoStyle when the placeholder is visible.
+ (WebCore::RenderTextControl::updatePlaceholderVisibility): Sets the style on the inner text block, and calls updateFromElement so
+ the text will be updated correctly.
+ * rendering/RenderTextControl.h:
+
+2008-10-02 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21280
+ <rdar://problem/6227690> There are a bunch of tables on this page that don't seem to be real tables
+
+ Updated AXTable detection to be more robust to false-positives. Specifically, added checks
+ to ensure that there is more than one valid table cell, and that at least half of the cells
+ have borders or have specific background colors. Modified the table detection layout test
+ to test for the tables mentioned in the bug
+
+ * page/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+
+2008-10-02 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21321
+ Bug 21321: speed up JavaScriptCore by inlining Heap in JSGlobalData
+
+ * bindings/js/GCController.cpp:
+ (WebCore::collect): Use heap. instead of heap-> to work with the heap.
+ (WebCore::GCController::gcTimerFired): Ditto.
+ (WebCore::GCController::garbageCollectNow): Ditto.
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::operator new): Ditto.
+ * storage/Database.cpp:
+ (WebCore::Database::Database): Ditto.
+
+2008-10-02 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ - fix a Database leak that resulted in Document leaks
+
+ * storage/Database.cpp:
+ (WebCore::Database::openDatabase): Account for the fact that RefCounted
+ objects start out with a ref count of 1.
+
+2008-10-02 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Mr. Geoffrey Garen.
+
+ Always mark your parent before marking members.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::mark):
+
+2008-10-02 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21314
+
+ Make scrollBackingStore cross-platform.
+
+ Reviewed by Sam Weinig
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::repaint):
+ (WebCore::EmptyChromeClient::scroll):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::repaint):
+ (WebCore::Chrome::scroll):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleAutoscroll):
+ * platform/HostWindow.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollContents):
+ (WebCore::ScrollView::addPanScrollIcon):
+ (WebCore::ScrollView::removePanScrollIcon):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::~ScrollView):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+
+2008-10-02 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes after Frame/ScrollView changes.
+
+ * WebCoreSources.bkl:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformContentsToScreen):
+ (WebCore::ScrollView::platformScreenToContents):
+ (WebCore::ScrollView::platformIsOffscreen):
+
+2008-10-02 Brett Wilson <brettw@chromium.org>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=21292
+
+ Revert the changes to enclosingIntRect made in r12530 since the new code
+ doesn't round correctly.
+
+ * ChangeLog:
+ * platform/graphics/FloatRect.cpp:
+ (WebCore::enclosingIntRect):
+
+2008-10-02 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson and Eric Seidel.
+
+ - fix HTMLCanvaseElement leak from -webkit-canvas() values
+
+ Changed the m_element member of CSSCanvasValue from a RefPtr to a plain
+ pointer, as the document owns the canvas elements. Added code to release
+ those elements in Document::removedLastRef() because they reference
+ the document.
+
+ * css/CSSCanvasValue.cpp:
+ (WebCore::CSSCanvasValue::element):
+ * css/CSSCanvasValue.h:
+ (WebCore::CSSCanvasValue::CSSCanvasValue):
+ * dom/Document.cpp:
+ (WebCore::Document::removedLastRef):
+
+2008-10-02 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Build fix for platforms that don't implement WTF::ThreadSpecific.
+
+ * bindings/js/JSDOMBinding.cpp: (WebCore::wrapperSet):
+ Guard ThreadSpecific use with #if ENABLE(WORKERS). No platform defines this yet, but this
+ code is only needed for JS bindings in worker threads.
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21298
+
+ Make updateScrollbars cross-platform. For now a stubbed out scrollContents function is invoked to do the scrolling of the backing store. Next patch
+ will make that cross-platform.
+
+ The ScrollView now implements ScrollbarClient, which means that there was a clash of windowClipRect methods from the
+ multiple inheritance. For now I solved this by adding a Scrollbar* to the ScrollbarClient version of the method, but longer term
+ windowClipRect is going to be removed from ScrollbarClient (when Widget invalidation gets rewritten).
+
+ Reviewed by Sam Weinig
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::windowClipRect):
+ (WebCore::FrameView::isActive):
+ * page/FrameView.h:
+ (WebCore::FrameView::visibleContentsResized):
+ * platform/PopupMenu.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::init):
+ (WebCore::ScrollView::destroy):
+ (WebCore::ScrollView::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::setHasVerticalScrollbar):
+ (WebCore::ScrollView::valueChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollContents):
+ (WebCore::ScrollView::platformHandleHorizontalAdjustment):
+ (WebCore::ScrollView::platformHandleVerticalAdjustment):
+ * platform/ScrollView.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::windowClipRect):
+ * platform/ScrollbarClient.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::platformHandleHorizontalAdjustment):
+ (WebCore::ScrollView::platformHandleVerticalAdjustment):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::scrollContents):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::windowClipRect):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::scrollContents):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::windowClipRect):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::panScroll):
+ (WebCore::RenderListBox::windowClipRect):
+ * rendering/RenderListBox.h:
+
+2008-10-02 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21304
+ Stop using a static wrapper map for WebCore JS bindings
+
+ The static domObjects map was not thread safe.
+
+ * dom/Document.h:
+ (WebCore::Document::messagePorts): Added an accessor for JSDocument to iterate over message
+ ports.
+ (WebCore::Document::xmlHttpRequests): Ditto for XMLHttpRequests.
+
+ * dom/Document.cpp:
+ (WebCore::Document::createdXMLHttpRequest):
+ (WebCore::Document::destroyedXMLHttpRequest):
+ Moved XMLHttpRequest tracking from a global map to Document.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * webcore-base.bkl:
+ * bindings/DOMProtect.cpp: Removed.
+ * bindings/DOMProtect.h: Removed.
+ Removed gcProtect(Unprotect)DOMObject - its callers do not have a JSGlobalData reference,
+ so they can no longer protect bindings objects.
+
+ * dom/MessagePort.cpp:
+ (WebCore::CloseMessagePortTimer::CloseMessagePortTimer):
+ (WebCore::CloseMessagePortTimer::fired):
+ (WebCore::MessagePort::MessagePort):
+ (WebCore::MessagePort::queueCloseEvent):
+ (WebCore::MessagePort::setPendingActivity):
+ (WebCore::MessagePort::unsetPendingActivity):
+ * dom/MessagePort.h:
+ (WebCore::MessagePort::hasPendingActivity):
+ MessagePort now counts outstanding async events, so JSDocument::mark can decide whether
+ to protect it.
+
+ * xml/XMLHttpRequest.h:
+ (WebCore::XMLHttpRequest::hasPendingActivity):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::XMLHttpRequest):
+ (WebCore::XMLHttpRequest::~XMLHttpRequest):
+ (WebCore::XMLHttpRequest::loadRequestAsynchronously):
+ (WebCore::XMLHttpRequest::dropProtection):
+ (WebCore::XMLHttpRequest::didFinishLoadingPreflight):
+ (WebCore::XMLHttpRequest::cancelRequests):
+ (WebCore::XMLHttpRequest::detachRequests):
+ (WebCore::XMLHttpRequest::setPendingActivity):
+ (WebCore::XMLHttpRequest::unsetPendingActivity):
+ Moved XMLHttpRequest tracking from a global map to Document.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::wrapperSet):
+ (WebCore::DOMObjectWrapperMap::mapFor):
+ (WebCore::DOMObjectWrapperMap::get):
+ (WebCore::DOMObjectWrapperMap::set):
+ (WebCore::DOMObjectWrapperMap::remove):
+ (WebCore::getCachedDOMObjectWrapper):
+ (WebCore::cacheDOMObjectWrapper):
+ (WebCore::forgetDOMObject):
+ (WebCore::getCachedDOMNodeWrapper):
+ (WebCore::forgetDOMNode):
+ (WebCore::cacheDOMNodeWrapper):
+ (WebCore::markActiveObjectsForDocument):
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::createDOMObjectWrapper):
+ (WebCore::getDOMObjectWrapper):
+ Wrapper map is now kept as JSGlobalData::clientData. Also changed debug-only wrapperSet
+ to be per-thread (this is slower than going to JSGlobalData, but fast enough for debug).
+ WebCore objects can never migrate between threads.
+
+ * bindings/js/JSDocumentCustom.cpp:
+ (WebCore::JSDocument::mark):
+ Call markActiveObjectsForDocument() from JSDOMBinding.
+
+ * bindings/js/JSCSSRuleCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSCSSValueCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::markDOMObjectWrapper):
+ (WebCore::JSDOMWindow::mark):
+ * bindings/js/JSEventCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSEventTarget.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSImageDataCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSMessageChannelCustom.cpp:
+ (WebCore::JSMessageChannel::mark):
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::mark):
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::JSNode::mark):
+ * bindings/js/JSSVGPathSegCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSStyleSheetCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::mark):
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::mark):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::finishedWithEvent):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ Pass a JSGlobalData reference to functions that track JS wrapper objects.
+
+2008-10-02 Dan Bernstein <mitz@apple.com>
+
+ - build fix
+
+ * page/JavaScriptCallFrame.idl:
+
+2008-10-02 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by NOBODY (Build fix).
+
+ Add new file to project files
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-02 Geoffrey Garen <ggaren@apple.com>
+
+ Not reviewed.
+
+ Try to fix some more builds.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+
+2008-10-02 Geoffrey Garen <ggaren@apple.com>
+
+ Not reviewed.
+
+ Try to fix Windows build.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-10-01 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler and Cameron Zwarich.
+
+ Updated for JavaScriptCore API changes: use a SourceCode instead of
+ broken out parameters; treat sourceId as intptr_t.
+
+ * ForwardingHeaders/kjs/SourceRange.h: Copied from ForwardingHeaders/kjs/SourceProvider.h.
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::evaluate):
+ * bindings/js/StringSourceProvider.h:
+ (WebCore::StringSourceProvider::create):
+ (WebCore::StringSourceProvider::StringSourceProvider):
+
+ (WebCore::makeSource): Added a makeSource function for convenience.
+
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject evaluateWebScript:]):
+ * bridge/NP_jsobject.cpp:
+ (_NPN_Evaluate):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::eval):
+ (JavaJSObject::getMember):
+ (JavaJSObject::setMember):
+ (JavaJSObject::removeMember):
+
+ * bridge/jni/jni_runtime.h:
+ (JSC::Bindings::JavaString::operator UString): Replaced the explicit
+ ustring() function with an implicit operator because this class already
+ holds a UString::rep.
+
+ * page/Console.cpp:
+ (WebCore::retrieveLastCaller):
+ (WebCore::Console::trace):
+ * page/InspectorController.cpp:
+ (WebCore::jsStringRef):
+ (WebCore::InspectorController::addBreakpoint):
+ (WebCore::InspectorController::removeBreakpoint):
+ (WebCore::InspectorController::didParseSource):
+ (WebCore::InspectorController::failedToParseSource):
+ * page/InspectorController.h:
+ * page/JavaScriptCallFrame.cpp:
+ (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
+ * page/JavaScriptCallFrame.h:
+ (WebCore::JavaScriptCallFrame::create):
+ (WebCore::JavaScriptCallFrame::sourceIdentifier):
+ (WebCore::JavaScriptCallFrame::update):
+ * page/JavaScriptDebugListener.h:
+ * page/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::addBreakpoint):
+ (WebCore::JavaScriptDebugServer::removeBreakpoint):
+ (WebCore::JavaScriptDebugServer::hasBreakpoint):
+ (WebCore::dispatchDidParseSource):
+ (WebCore::dispatchFailedToParseSource):
+ (WebCore::JavaScriptDebugServer::sourceParsed):
+ (WebCore::JavaScriptDebugServer::callEvent):
+ (WebCore::JavaScriptDebugServer::atStatement):
+ (WebCore::JavaScriptDebugServer::returnEvent):
+ (WebCore::JavaScriptDebugServer::exception):
+ (WebCore::JavaScriptDebugServer::willExecuteProgram):
+ (WebCore::JavaScriptDebugServer::didExecuteProgram):
+ (WebCore::JavaScriptDebugServer::didReachBreakpoint):
+ * page/JavaScriptDebugServer.h:
+ * page/inspector/ScriptsPanel.js: Renamed internal uses of sourceId and
+ sourceIdentifier to sourceID.
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ - fix SVGFontFaceElement leak seen on svg/custom/acid3-test-77.html
+
+ Broke a ref cycle by changing the m_svgFontFaceElement members of
+ CSSFontFaceSource and CSSFontFaceSrcValue from RefPtrs to plain
+ pointers. Also made sure that the @font-face rule added by
+ SVGFontFaceElement to the document's mapped element sheet is removed
+ when the font-face element is deleted or moved to another document.
+
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::CSSFontFaceSource):
+ (WebCore::CSSFontFaceSource::getFontData):
+ * css/CSSFontFaceSource.h:
+ (WebCore::CSSFontFaceSource::svgFontFaceElement):
+ * css/CSSFontFaceSrcValue.h:
+ (WebCore::CSSFontFaceSrcValue::svgFontFaceElement):
+ (WebCore::CSSFontFaceSrcValue::CSSFontFaceSrcValue):
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
+ (WebCore::SVGFontFaceElement::willMoveToNewOwnerDocument):
+ (WebCore::SVGFontFaceElement::didMoveToNewOwnerDocument):
+ (WebCore::SVGFontFaceElement::removeFromMappedElementSheet):
+ * svg/SVGFontFaceElement.h:
+
+2008-10-01 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 20315: Memory leak with Canvas getImageData
+ <https://bugs.webkit.org/show_bug.cgi?id=20315>
+
+ This wasn't a leak, the issue was that we were reporting the cost
+ of the CanvasPixelArray when creating the JSCanvasPixelArray wrapper
+ and we should have been reporting the cost when we create the
+ JSImageData wrapper.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed.
+ This was only needed to report the extra memory cost
+ of the CPA.
+ * bindings/js/JSImageDataCustom.cpp:
+ (WebCore::toJS):
+ We need a custom toJS function now so that we can report
+ the extra memory cost.
+ * bindings/scripts/CodeGeneratorJS.pm:
+ Need to replace the reference to CanvasPixelArray with ImageData
+ to be able to create the custom toJS implementation.
+ * html/CanvasPixelArray.idl:
+ * html/ImageData.idl:
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21293
+ REGRESSION: Crash beneath RenderSVGViewportContainer::viewportTransform() during SVGSVGElement destruction
+
+ * svg/SVGMarkerElement.cpp:
+ (WebCore::SVGMarkerElement::~SVGMarkerElement): Call detach() here so
+ that renderer destruction happens before the SVGMarkerElement is
+ destroyed.
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::~SVGSVGElement): Ditto for SVGSVGElement.
+
+2008-10-01 Evan Martin <evan@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20669
+
+ * css/makeprop.pl:
+ Die if gperf fails.
+
+2008-10-01 Evan Martin <evan@chromium.org>
+
+ Reviewed by Eric Seidel.
+
+ * loader/icon/IconDatabase.h:
+ IconDatabase uses HashMap, so it needs to #include the header.
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix an assertion failure in http/tests/security/canvas-remote-read-svg-image.html due to re-entry into Cache::pruneDeadResources()
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::remove): Disable pruning temporarily during
+ CachedResource deletion.
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix SVGFontElement leaks seen on buildbot by breaking a ref cycle
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::rebuildFontFace):
+ * svg/SVGFontFaceElement.h:
+ (WebCore::SVGFontFaceElement::associatedFontElement):
+
+2008-10-01 Brett Wilson <brettw@chromium.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Document the rounding behavior of the mapRect(IntRect) function in
+ AffineTransform.h.
+
+ * platform/graphics/AffineTransform.h:
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ Move prohibitsScrolling from the Frame to the ScrollView.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * page/Frame.cpp:
+ (WebCore::FramePrivate::FramePrivate):
+ * page/Frame.h:
+ * page/FramePrivate.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scrollRectIntoViewRecursively):
+ (WebCore::FrameView::setScrollPosition):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::init):
+ (WebCore::ScrollView::scrollRectIntoViewRecursively):
+ (WebCore::ScrollView::setScrollPosition):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::setProhibitsScrolling):
+ (WebCore::ScrollView::prohibitsScrolling):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+
+2008-10-01 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ Fix leaks seen during http/tests/xmlhttprequest/access-control-basic-non-simple-allow.html.
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::didFinishLoadingPreflight): Balance the ref and GC protect
+ that we do during the loadRequestAsynchronously of the preflight request with a deref and
+ GC unprotect.
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ Rename allowsScrolling/setAllowsScrolling to canHaveScrollbars/setCanHaveScrollbars to make it more
+ clear that the boolean doesn't actually stop all scrolling. It just gets rid of scrollbars.
+
+ Reviewed by Tim Hatcher
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::setCanHaveScrollbars):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setCanHaveScrollbars):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::canHaveScrollbars):
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix some CachedResource leaks seen on buildbot
+
+ The issue here was that emptying the cache was a no-op when it only
+ contained resources with no data. Changed to go after those
+ resources when the desired cache capacity is zero.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::pruneLiveResources):
+ (WebCore::Cache::pruneDeadResources):
+ * loader/Cache.h:
+ (WebCore::Cache::prune):
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ Make isOffscreen cross-platform. Only Mac implements this method, so hold off on adding API to the
+ HostWindow object until other platforms decide they want this method. (We need it for Win though at some point.)
+
+ Reviewed by Adam Roben
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::isOffscreen):
+ (WebCore::ScrollView::platformIsOffscreen):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformIsOffscreen):
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ Make show/hide/setParentVisible cross-platform on ScrollView.
+
+ Reviewed by Adam Roben
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setParentVisible):
+ (WebCore::ScrollView::show):
+ (WebCore::ScrollView::hide):
+ * platform/ScrollView.h:
+ * platform/win/ScrollViewWin.cpp:
+
+2008-10-01 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21284
+ Bug 21284: Max height affects max width
+ - Looks like a cut and paste bug
+ - Added layout test fast/css/max-height-and-max-width.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21282
+
+ Make contentsToScreen/screenToContents cross-platform. Only implemented by Mac/Win right now.
+
+ Reviewed by Adam Roben
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::screenToWindow):
+ (WebCore::EmptyChromeClient::windowToScreen):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::screenToWindow):
+ (WebCore::Chrome::windowToScreen):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * platform/HostWindow.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::contentsToScreen):
+ (WebCore::ScrollView::screenToContents):
+ (WebCore::ScrollView::platformContentsToScreen):
+ (WebCore::ScrollView::platformScreenToContents):
+ * platform/ScrollView.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformContentsToScreen):
+ (WebCore::ScrollView::platformScreenToContents):
+ * platform/win/ScrollViewWin.cpp:
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fix <rdar://problem/6255862> domfuzz: null deref in WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks(WebCore::HTMLStackElem*)
+
+ Test: fast/parser/residual-style-close-across-removed-block.html
+
+ * html/HTMLParser.cpp:
+ (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Removed
+ an assertion that turned out to be wrong in this case, and changed to
+ terminate the algorithm at the first empty block.
+
+2008-10-01 David Hyatt <hyatt@apple.com>
+
+ Make setFrameRect on ScrollView cross-platform.
+
+ Reviewed by Sam Weinig
+
+ * page/FrameView.h:
+ (WebCore::FrameView::contentsResized):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setFrameRect):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+
+2008-10-01 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Adele Peterson.
+
+ Move setTimeout, clearTimeout, setInterval, clearInterval, atob and btoa
+ to JSDOMWindow from JSDOMWindowBase.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::removeTimeout):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::setTimeoutOrInterval):
+ (WebCore::JSDOMWindow::setTimeout):
+ (WebCore::JSDOMWindow::clearTimeout):
+ (WebCore::JSDOMWindow::setInterval):
+ (WebCore::JSDOMWindow::clearInterval):
+ (WebCore::JSDOMWindow::atob):
+ (WebCore::JSDOMWindow::btoa):
+ * page/DOMWindow.idl:
+
+2008-10-01 Dan Bernstein <mitz@apple.com>
+
+ - Mac build fix
+
+ * WebCore.base.exp:
+
+2008-10-01 Timothy Hatcher <timothy@apple.com>
+
+ Prevent stealing focus from the search field when focusing a DOM node.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21275
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.treeOutline.focusedNodeChanged):
+ Don't steal focus if the current focus element is the search field.
+
+2008-09-30 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Nikolas Zimmermann and Alexey Proskuryakov.
+
+ Final patch for https://bugs.webkit.org/show_bug.cgi?id=21122
+ Autogenerate JS event listeners
+
+ - Generate getting/setting of EventListeners.
+
+ - Adding a new named EventListener now has the same process as adding any other DOM
+ attribute. (Add a method with the same name in the c++ file).
+
+ (The EventListeners for MessagePort have been intentionally left custom so that we
+ can continue to experiment with making those EventListeners work in a frame-less world.)
+
+ * bindings/js/JSDOMApplicationCacheCustom.cpp: Remove custom methods.
+ * bindings/js/JSDOMWindowCustom.cpp: ditto.
+ * bindings/js/JSEventTargetNodeCustom.cpp: ditto.
+ * bindings/js/JSXMLHttpRequestCustom.cpp: ditto.
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp: ditto.
+ * bindings/scripts/CodeGeneratorJS.pm: Add code to generate EventListener
+ getter/setters
+ * dom/EventTargetNode.cpp: Add getter/setters for named EventListener.
+ * dom/EventTargetNode.h: ditto.
+ * dom/EventTargetNode.idl: Mark EventListeners as Protected so that the codegenerator
+ will use JSEventListerner instead of JSUnprotectedEventListener.
+ * loader/appcache/DOMApplicationCache.idl: Remove custom attributes..
+ * page/DOMWindow.cpp: Add getter/setters for named EventListener
+ * page/DOMWindow.h: ditto.
+ * page/DOMWindow.idl: Mark EventListeners as Protected so that the codegenerator
+ will use JSEventListerner instead of JSUnprotectedEventListener.
+ * xml/XMLHttpRequest.idl: Remove custom attributes.
+ * xml/XMLHttpRequestUpload.idl: ditto.
+
+2008-09-30 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Add a leak counter for CachedResources since we've had two recent leaks involving them.
+
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::CachedResource):
+ (WebCore::CachedResource::~CachedResource):
+
+2008-09-30 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21127
+ <rdar://problem/6259134> REGRESSION: CFF format fonts fail to load
+
+ If TTLoadEmbeddedFont fails, use AddFontMemResourceEx after changing
+ the font name in memory.
+
+ * WebCore.vcproj/WebCore.vcproj: Renamed GetEOTHeader.* to
+ OpenTypeUtilities.*.
+
+ * platform/graphics/win/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added a call
+ to RemoveFontMemResourceEx to match AddFontMemResourceEx when it is
+ used.
+ (WebCore::FontCustomPlatformData::fontPlatformData): Added a code path
+ for fonts loaded using AddFontMemResourceEx.
+ (WebCore::createFontCustomPlatformData): Added a call to
+ renameAndActivateFont() if TTLoadEmbeddedFont fails. If
+ TTLoadEmbeddedFont succeeds, set the font name to the null string, as
+ fontPlatformData() will retrieve the name from the font reference.
+
+ * platform/graphics/win/FontCustomPlatformData.h:
+ (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
+ font name member.
+
+ * platform/graphics/win/GetEOTHeader.cpp: Renamed.
+ * platform/graphics/win/GetEOTHeader.h: Renamed.
+
+ * platform/graphics/win/OpenTypeUtilities.cpp: Copied from platform/graphics/win/GetEOTHeader.cpp.
+ (WebCore::BigEndianUShort::BigEndianUShort): Added a constructor.
+ (WebCore::BigEndianULong::BigEndianULong): Ditto.
+ (WebCore::renameAndActivateFont): Added. Creates an in-memory copy of
+ the font data and modifies it to have the given name, then activates
+ it using AddFontMemResourceEx.
+
+ * platform/graphics/win/OpenTypeUtilities.h: Copied from platform/graphics/win/GetEOTHeader.h.
+
+2008-09-30 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix many leaks seen on fast/backgrounds/svg-as-mask.html.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::arenaDelete): Balance the calls to addClient on maskLayer's images
+ with calls to removeClient when we're being destroyed.
+
+2008-09-30 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Antti Koivisto.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21243
+
+ Fix loopstart and loopend default values.
+
+ Tests: media/loopend-limits.html
+ media/loopstart-limits.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::loopStart): the spec says start() is the default value
+ (WebCore::HTMLMediaElement::loopEnd): the spec says end() is the default value
+
+2008-09-30 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes. Add file to build and remove call to (now gone) ScrollView::update.
+
+ * WebCoreSources.bkl:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
+
+2008-09-30 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix HTMLViewSourceDocument leaks by breaking a ref cycle which
+ was fixed in r17249 and re-introduced in r31435.
+
+ * html/HTMLViewSourceDocument.cpp:
+ (WebCore::HTMLViewSourceDocument::HTMLViewSourceDocument):
+ (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
+ (WebCore::HTMLViewSourceDocument::addLine):
+ (WebCore::HTMLViewSourceDocument::addLink):
+ * html/HTMLViewSourceDocument.h:
+
+2008-09-30 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ More for https://bugs.webkit.org/show_bug.cgi?id=21122
+ Autogenerate JS event listeners
+
+ - Make EventListener getter/setters names in c++ files match those in
+ JS (ie. onLoadListener -> onload).
+ - Add standard way to access the frame associated with the EventTarget
+ for EventListener lookup.
+ - Autogenerate dispatchEvent, it wasn't doing anything custom.
+
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ (WebCore::JSDOMApplicationCache::mark):
+ (WebCore::JSDOMApplicationCache::addEventListener):
+ (WebCore::JSDOMApplicationCache::removeEventListener):
+ (WebCore::JSDOMApplicationCache::setOnchecking):
+ (WebCore::JSDOMApplicationCache::onchecking):
+ (WebCore::JSDOMApplicationCache::setOnerror):
+ (WebCore::JSDOMApplicationCache::onerror):
+ (WebCore::JSDOMApplicationCache::setOnnoupdate):
+ (WebCore::JSDOMApplicationCache::onnoupdate):
+ (WebCore::JSDOMApplicationCache::setOndownloading):
+ (WebCore::JSDOMApplicationCache::ondownloading):
+ (WebCore::JSDOMApplicationCache::setOnprogress):
+ (WebCore::JSDOMApplicationCache::onprogress):
+ (WebCore::JSDOMApplicationCache::setOnupdateready):
+ (WebCore::JSDOMApplicationCache::onupdateready):
+ (WebCore::JSDOMApplicationCache::setOncached):
+ (WebCore::JSDOMApplicationCache::oncached):
+ * bindings/js/JSEventTargetNodeCustom.cpp:
+ (WebCore::JSEventTargetNode::addEventListener):
+ (WebCore::JSEventTargetNode::removeEventListener):
+ (WebCore::JSEventTargetNode::getListener):
+ (WebCore::JSEventTargetNode::setListener):
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::mark):
+ (WebCore::JSMessagePort::addEventListener):
+ (WebCore::JSMessagePort::removeEventListener):
+ (WebCore::JSMessagePort::setOnmessage):
+ (WebCore::JSMessagePort::onmessage):
+ (WebCore::JSMessagePort::setOnclose):
+ (WebCore::JSMessagePort::onclose):
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::mark):
+ (WebCore::JSXMLHttpRequest::onreadystatechange):
+ (WebCore::JSXMLHttpRequest::setOnreadystatechange):
+ (WebCore::JSXMLHttpRequest::onabort):
+ (WebCore::JSXMLHttpRequest::setOnabort):
+ (WebCore::JSXMLHttpRequest::onerror):
+ (WebCore::JSXMLHttpRequest::setOnerror):
+ (WebCore::JSXMLHttpRequest::onload):
+ (WebCore::JSXMLHttpRequest::setOnload):
+ (WebCore::JSXMLHttpRequest::onloadstart):
+ (WebCore::JSXMLHttpRequest::setOnloadstart):
+ (WebCore::JSXMLHttpRequest::onprogress):
+ (WebCore::JSXMLHttpRequest::setOnprogress):
+ (WebCore::JSXMLHttpRequest::addEventListener):
+ (WebCore::JSXMLHttpRequest::removeEventListener):
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::mark):
+ (WebCore::JSXMLHttpRequestUpload::onabort):
+ (WebCore::JSXMLHttpRequestUpload::setOnabort):
+ (WebCore::JSXMLHttpRequestUpload::onerror):
+ (WebCore::JSXMLHttpRequestUpload::setOnerror):
+ (WebCore::JSXMLHttpRequestUpload::onload):
+ (WebCore::JSXMLHttpRequestUpload::setOnload):
+ (WebCore::JSXMLHttpRequestUpload::onloadstart):
+ (WebCore::JSXMLHttpRequestUpload::setOnloadstart):
+ (WebCore::JSXMLHttpRequestUpload::onprogress):
+ (WebCore::JSXMLHttpRequestUpload::setOnprogress):
+ (WebCore::JSXMLHttpRequestUpload::addEventListener):
+ (WebCore::JSXMLHttpRequestUpload::removeEventListener):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * dom/EventTarget.h:
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::associatedFrame):
+ * dom/EventTargetNode.h:
+ * dom/EventTargetNode.idl:
+ * dom/MessagePort.cpp:
+ (WebCore::MessagePort::associatedFrame):
+ * dom/MessagePort.h:
+ (WebCore::MessagePort::setOnmessage):
+ (WebCore::MessagePort::onmessage):
+ (WebCore::MessagePort::setOnclose):
+ (WebCore::MessagePort::onclose):
+ * dom/MessagePort.idl:
+ * loader/appcache/DOMApplicationCache.h:
+ (WebCore::DOMApplicationCache::setOnchecking):
+ (WebCore::DOMApplicationCache::onchecking):
+ (WebCore::DOMApplicationCache::setOnerror):
+ (WebCore::DOMApplicationCache::onerror):
+ (WebCore::DOMApplicationCache::setOnnoupdate):
+ (WebCore::DOMApplicationCache::onnoupdate):
+ (WebCore::DOMApplicationCache::setOndownloading):
+ (WebCore::DOMApplicationCache::ondownloading):
+ (WebCore::DOMApplicationCache::setOnprogress):
+ (WebCore::DOMApplicationCache::onprogress):
+ (WebCore::DOMApplicationCache::setOnupdateready):
+ (WebCore::DOMApplicationCache::onupdateready):
+ (WebCore::DOMApplicationCache::setOncached):
+ (WebCore::DOMApplicationCache::oncached):
+ (WebCore::DOMApplicationCache::associatedFrame):
+ * loader/appcache/DOMApplicationCache.idl:
+ * svg/EventTargetSVGElementInstance.cpp:
+ (WebCore::EventTargetSVGElementInstance::associatedFrame):
+ (WebCore::EventTargetSVGElementInstance::addEventListener):
+ (WebCore::EventTargetSVGElementInstance::removeEventListener):
+ (WebCore::EventTargetSVGElementInstance::dispatchEvent):
+ * svg/EventTargetSVGElementInstance.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::associatedFrame):
+ * xml/XMLHttpRequest.h:
+ (WebCore::XMLHttpRequest::setOnreadystatechange):
+ (WebCore::XMLHttpRequest::onreadystatechange):
+ (WebCore::XMLHttpRequest::setOnabort):
+ (WebCore::XMLHttpRequest::onabort):
+ (WebCore::XMLHttpRequest::setOnerror):
+ (WebCore::XMLHttpRequest::onerror):
+ (WebCore::XMLHttpRequest::setOnload):
+ (WebCore::XMLHttpRequest::onload):
+ (WebCore::XMLHttpRequest::setOnloadstart):
+ (WebCore::XMLHttpRequest::onloadstart):
+ (WebCore::XMLHttpRequest::setOnprogress):
+ (WebCore::XMLHttpRequest::onprogress):
+ * xml/XMLHttpRequest.idl:
+ * xml/XMLHttpRequestUpload.cpp:
+ (WebCore::XMLHttpRequestUpload::associatedFrame):
+ * xml/XMLHttpRequestUpload.h:
+ (WebCore::XMLHttpRequestUpload::setOnabort):
+ (WebCore::XMLHttpRequestUpload::onabort):
+ (WebCore::XMLHttpRequestUpload::setOnerror):
+ (WebCore::XMLHttpRequestUpload::onerror):
+ (WebCore::XMLHttpRequestUpload::setOnload):
+ (WebCore::XMLHttpRequestUpload::onload):
+ (WebCore::XMLHttpRequestUpload::setOnloadstart):
+ (WebCore::XMLHttpRequestUpload::onloadstart):
+ (WebCore::XMLHttpRequestUpload::setOnprogress):
+ (WebCore::XMLHttpRequestUpload::onprogress):
+ * xml/XMLHttpRequestUpload.idl:
+
+2008-09-30 Darin Adler <darin@apple.com>
+
+ - roll out assertion breaking regression tests
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::repaintContentRectangle): Temporarily remove assertion
+ that fires in regression tests. Hyatt can add it back later. The assertion
+ fires in the regression test because of layout that triggers repaint occuring
+ during the process of removing a frame.
+
+2008-09-30 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21227
+ <rdar://problem/6222134> add a way to set color for input placeholder text
+
+ Test: fast/forms/placeholder-pseudo-style.html
+
+ This change adds "-webkit-input-placeholder-mode" as a pseudo class that can be used to style
+ input elements when they are displaying the placeholder text.
+
+ * css/CSSSelector.cpp: (WebCore::CSSSelector::extractPseudoType): Add case for inputPlaceholderMode.
+ * css/CSSSelector.h: (WebCore::CSSSelector::): Add PseudoInputPlaceholderMode.
+ * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
+ Add check for PseudoInputPlaceholderMode that asks the node if placeholderShouldBeVisible is true.
+ * css/html4.css: Add rule to make placeholder text default to darkGray.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::init): Initialize m_placeholderShouldBeVisible.
+ (WebCore::HTMLInputElement::dispatchFocusEvent): Call updatePlaceholderVisibility.
+ (WebCore::HTMLInputElement::dispatchBlurEvent): ditto.
+ (WebCore::HTMLInputElement::parseMappedAttribute): ditto.
+ (WebCore::HTMLInputElement::setValue): ditto.
+ (WebCore::HTMLInputElement::setValueFromRenderer): ditto.
+ (WebCore::HTMLInputElement::updatePlaceholderVisibility): Sets m_placeholderShouldBeVisible based on the current value and the focus state.
+ This calculation used to be done in the renderer, but since the node knows everything about the state, it can make that decision, and the
+ renderer will just ask the node if it should draw the placeholder.
+ * html/HTMLInputElement.h: (WebCore::HTMLInputElement::placeholderShouldBeVisible):
+
+ * rendering/RenderTextControl.cpp:
+ (WebCore::disabledTextColor): Moved to the top of the file. If there's not very much contrast between the disabled color and the background color,
+ just leave the text color alone. We don't want to change a good contrast color scheme so that it has really bad contrast.
+ If the the contrast was already poor, then it doesn't do any good to change it to a different poor contrast color scheme.
+ (WebCore::RenderTextControl::createInnerTextStyle): If the node says the placeholder should be visible, prepare by overriding the text security to be "none".
+ This can only happen as a result of either a setStyle call (which will be followed by a call to updateFromElement) or from createSubtreeIfNeeded, which
+ is called directly from updateFromElement. updateFromElement will immediately update the text displayed.
+ (WebCore::RenderTextControl::updateFromElement): If the placeholder visibility has changed, update the text that is displayed.
+ (WebCore::RenderTextControl::forwardEvent): Remove calls to update the placeholder state. This is now done in HTMLInputElement.
+ * rendering/RenderTextControl.h:
+
+2008-09-30 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20396 Abort caused
+ by failed allocation due to invalid counter/attr
+ and corresponding: <rdar://problem/6152371>
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseCounterContent): The spec indicates that
+ only identifiers should be accepted here.
+
+2008-09-30 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 21255: console.profileEnd() without a console.profile() crashes the
+ web inspector
+
+ * page/Console.cpp:
+ (WebCore::Console::profileEnd):
+
+2008-09-30 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Bug 21252: calling console.profile() with a title that is 2 chars or
+ shorter does not linkify it
+
+ - Previously we tried to not linkify very short URLs but since profile
+ titles can be any length this is not always true.
+
+ * page/inspector/inspector.js:
+
+2008-09-30 Dave Hyatt <hyatt@apple.com>
+
+ Remove the update() method on ScrollView. This method was only called in one place, and its purpose
+ was to cause a display/flush to happen. Here is a breakdown of the method use on each platform:
+ (1) Not used on Mac
+ (2) Used on Windows
+ (3) Used on Qt, but implemented incorrectly to cause a full repaint for no reason.
+ (4) Used on Gtk, but implemented incorrectly to cause a full repaint for no reason.
+ (5) Used on wx, but probably not needed (since wx has platform widgets like Mac).
+
+ There is now a paint method on HostWindow that does an immediate mode repaint of an empty rect to
+ cause the display/flush to happen if needed (thus saving an extra method on ChromeClient).
+ With the changes to this method, the new behavior is as follows:
+ (1) Not used on Mac
+ (2) Used on Windows
+ (3) Nothing happens on Qt, but only because they have not implemented immediate mode updating.
+ (4) Gtk now behaves like Windows and will process updates but not do any incorrect additional invalidation.
+ (5) Not used on wx
+
+ This method was originally added for Windows. It's not clear the display/flush is really even necessary on the other
+ platforms. At the very least stopping unnecessary full invalidations on Qt/Gtk is a good thing. :)
+
+ Reviewed by Sam Weinig
+
+ * ChangeLog:
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+ * platform/HostWindow.h:
+ (WebCore::HostWindow::paint):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-09-30 Timothy Hatcher <timothy@apple.com>
+
+ Focus the DOM tree in the Web Inspector when a node is inspected.
+ So when the search field has focus, the focus moves to the tree,
+ allowing the arrow keys work. This can happen when using the new
+ find in page feature.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21251
+
+ Reviewed by Geoff Garen.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel): Set currentFocusElement to
+ the main-panels element if the panel is visible.
+ (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
+ Remove a set of currentFocusElement since this moved.
+ * page/inspector/inspector.js:
+ (WebInspector.set currentFocusElement): Always focus the element.
+ This ensures that when focus changes in the page and we don't
+ catch it, we will still focus the elements even if we think it
+ was already focused.
+
+2008-09-30 Timothy Hatcher <timothy@apple.com>
+
+ Make the Web Inspector's toolbar icons darker when the mouse is
+ pressed on them. This matches the standard NSToolbar look.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21249
+ rdar://problem/6033752
+
+ Reviewed by Adam Roben.
+
+ * page/inspector/Images/databasesIcon.png:
+ * page/inspector/Images/elementsIcon.png:
+ * page/inspector/Images/profilesIcon.png:
+ * page/inspector/Images/resourcesIcon.png:
+ * page/inspector/Images/scriptsIcon.png:
+ * page/inspector/Panel.js:
+ * page/inspector/inspector.css:
+
+2008-09-30 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Bug 21139: Profiler log message is wrong
+ - Correctly fix =(
+ Don't call _format twice.
+
+ * page/Page.h:
+ * page/inspector/Console.js:
+ * page/inspector/ProfilesPanel.js:
+ * page/inspector/inspector.js:
+
+2008-09-30 Dave Hyatt <hyatt@apple.com>
+
+ http://bugs.webkit.org/show_bug.cgi?id=21250
+
+ Rename updateContents to repaintContentRectangle and make it cross-platform by always sending
+ repaints up through the ChromeClient.
+
+ Reviewed by Darin Adler
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyChromeClient::repaint):
+ * page/Chrome.cpp:
+ (WebCore::Chrome::repaint):
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::hostWindow):
+ (WebCore::FrameView::repaintContentRectangle):
+ * page/FrameView.h:
+ * platform/HostWindow.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::repaintContentRectangle):
+ (WebCore::ScrollView::platformRepaintContentRectangle):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformRepaintContentRectangle):
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformRepaintContentRectangle):
+
+2008-09-30 Alexey Proskuryakov <ap@webkit.org>
+
+ Non-Mac build fixes.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCoreSources.bkl:
+ * webcore-base.bkl:
+ Added DOMProtect.{cpp,h}.
+
+2008-09-39 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by John Sullivan.
+
+ * bridge/npapi.h: Added skeleton for a new plug-in drawing model, the NPCoreAnimationDrawingModel. This model will eventually pave the way
+ for hardware accelerated drawing in plug-ins and out of process plug-in rendering.
+
+2008-09-29 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 21106: .in format discussed changes
+ https://bugs.webkit.org/show_bug.cgi?id=21106
+
+ - Removed "cppNamespace" global parameter and hard-coded "WebCore" as it
+ is the only namespace used.
+
+ - Removed "generateFactory" and "generateWrapperFactory" parameters and
+ re-introduced the command line options.
+
+ - Cleaned up the output of make_names.pl (removed unneeded new line).
+
+ * DerivedSources.make: Added factories command line options.
+ * GNUmakefile.am: Ditto.
+ * WebCore.pro: Ditto and removed some arguments that were migrated to
+ the .in files.
+
+ * dom/make_names.pl: Clean up (see above).
+
+ * html/HTMLAttributeNames.in: Removed "cppNamespace", "generateFactory"
+ and "generateWrapperFactory" occurences.
+ * html/HTMLTagNames.in: Ditto.
+ * svg/svgattrs.in: Ditto.
+ * svg/svgtags.in: Ditto.
+ * svg/xlinkattrs.in: Ditto.
+ * xml/xmlattrs.in: Ditto.
+
+2008-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by John Sullivan.
+
+ <rdar://problem/6255456> AX: <file> input button shouldn't have children exposed
+ Make sure that certain types of elements do not return children and, moreover, do not waste their
+ energy trying to return children
+
+ Test: accessibility/nochildren-elements.html
+
+ * page/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::canHaveChildren):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::canHaveChildren):
+ (WebCore::AccessibilityRenderObject::addChildren):
+ * page/AccessibilityRenderObject.h:
+
+2008-09-30 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21213
+ MessagePort crash when GC collects an object with a pending close event
+
+ Test: fast/events/message-channel-gc-2.html
+ fast/events/message-channel-listener-circular-ownership.html
+
+ * bindings/DOMProtect.cpp: Added.
+ (WebCore::gcProtectDOMObject):
+ (WebCore::gcUnprotectDOMObject):
+ * bindings/DOMProtect.h: Added.
+ Added an abstraction for GC protection to avoid the need to call JS bindings code from
+ DOM objects directly.
+
+ * dom/MessagePort.cpp:
+ (WebCore::CloseMessagePortTimer::fired):
+ (WebCore::MessagePort::queueCloseEvent):
+ GC protect MessagePort wrapper while there is a pending close event.
+ This may be necessary for message events, too, but that case is not a crasher, and actually
+ behaves to the letter of the current HTML5 text, so I'll consider it later.
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::loadRequestAsynchronously):
+ (WebCore::XMLHttpRequest::dropProtection):
+ Use gcProtectDOMObject here, too. Unfortunately, XMLHttpRequest has more dependencies on JSC.
+
+ * bindings/js/JSMessagePortCustom.cpp:
+ (WebCore::JSMessagePort::addEventListener):
+ (WebCore::JSMessagePort::removeEventListener):
+ (WebCore::JSMessagePort::setOnmessage):
+ (WebCore::JSMessagePort::setOnclose):
+ Don't tell DOMWindowBase that MessagePort is a NodeEventTarget, this is not true. I do not
+ know if this was causing any real issues, but we shouldn't lie to DOMWindowBase.
+
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::mark):
+ While at it, changed to use a typedef for event listeners from XMLHttpRequestUpload, not
+ from XMLHttpRequest.
+
+2008-09-30 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * DerivedSources.cpp: Add JSEventTargetNode.cpp.
+
+2008-09-29 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Tim Hatcher.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=21122
+ Autogenerate JS event listeners
+
+ - Generate EventTargetNode.
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventTarget.cpp: Added.
+ (WebCore::toJS):
+ * bindings/js/JSEventTarget.h: Added.
+ * bindings/js/JSEventTargetBase.cpp: Removed.
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSEventTargetNode.cpp: Removed.
+ * bindings/js/JSEventTargetNode.h: Removed.
+ * bindings/js/JSEventTargetNodeCustom.cpp: Added.
+ (WebCore::JSEventTargetNode::addEventListener):
+ (WebCore::JSEventTargetNode::removeEventListener):
+ (WebCore::JSEventTargetNode::dispatchEvent):
+ (WebCore::JSEventTargetNode::getListener):
+ (WebCore::JSEventTargetNode::setListener):
+ (WebCore::JSEventTargetNode::pushEventHandlerScope):
+ * bindings/js/JSEventTargetSVGElementInstance.cpp:
+ (WebCore::):
+ (WebCore::JSEventTargetSVGElementInstancePrototype::self):
+ (WebCore::JSEventTargetSVGElementInstancePrototype::getOwnPropertySlot):
+ (jsEventTargetAddEventListener):
+ (jsEventTargetRemoveEventListener):
+ (jsEventTargetDispatchEvent):
+ * bindings/js/JSEventTargetSVGElementInstance.h:
+ (WebCore::JSEventTargetSVGElementInstancePrototype::JSEventTargetSVGElementInstancePrototype):
+ (WebCore::JSEventTargetSVGElementInstancePrototype::classInfo):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * dom/EventTargetNode.idl: Added.
+
+2008-09-29 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21214
+ work on getting rid of ExecState
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase): Removed globalThisValue argument
+ for base class constructor.
+
+2008-09-29 David Hyatt <hyatt@apple.com>
+
+ Add the new HostWindow base class. A HostWindow hosts a hierarchy of Widgets. The Chrome object on Page
+ now subclasses from HostWindow. The new class will allow objects in platform/ like Widgets, Scrollbars
+ and ScrollViews to talk to the HostWindow object in order to do backing store operations and invalidations.
+ (Right now the platform layering is simply being violated by ScrollViews going directly to the ChromeClient.)
+
+ Reviewed by Sam Weinig
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/Chrome.h:
+ * platform/HostWindow.h: Added.
+ (WebCore::HostWindow::HostWindow):
+ (WebCore::HostWindow::~HostWindow):
+
+2008-09-29 Kevin Decker <kdecker@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ * bridge/npapi.h: Tweaked NPNVariable enum. NPNVsupportsCocoaBool, NPNVsupportsCarbonBool are now in the 3000 range instead of
+ 2000.
+
+2008-09-29 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Adam Roben.
+
+ - WebCore part of fixing <rdar://problem/6247906> REGRESSION (r19500): Crash on quit beneath CloseThemeData
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::setWebKitIsBeingUnloaded): Added.
+ (WebCore::RenderThemeWin::~RenderThemeWin): Check if WebKit is being
+ unloaded, to avoid calling uxtheme.dll functions after that library has
+ been unloaded.
+ * rendering/RenderThemeWin.h:
+
+2008-09-29 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by John Sullivan
+
+ <rdar://problem/6240743> AXLoadComplete is sent for non-top level web areas and bogus web areas
+
+ Sends AXLoadComplete only when the top level web area is finished loading
+
+ * dom/Document.cpp:
+ (WebCore::Document::implicitClose):
+
+2008-09-29 Timothy Hatcher <timothy@apple.com>
+
+ Makes the node highlight always show up when hovering a node in
+ the Web Inspector now that the highlight does not scroll to reveal
+ the node. Also adds a hover effect in the inspector when hovering
+ causes a highlight in the page. This ties the user hovering action
+ to the highlight so it is clear what causes the highlight to appear.
+
+ Also the highlight now temporarily shows up for 2 seconds after
+ selecting a node in the DOM tree. So arrowing around in the tree
+ will show the node on the page, providing feedback to the user.
+
+ Plus fixes an issue where quickly moving away from hovering
+ a node would keep showing the page highlight. This was happening
+ in breadcrumbs and the DOM tree.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21220
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype._mouseOverNode): Added. Used for
+ hovering DOM nodes in the console.
+ (WebInspector.Console.prototype._mouseOutOfNode): Ditto.
+ (WebInspector.Console.prototype._formatnode): Use the new event
+ listeners and add a class name to the anchor element.
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel): Add new event listeners to the
+ crumbs element to do the node hovering highlight.
+ (WebInspector.ElementsPanel.prototype.hide):
+ (WebInspector.ElementsPanel.prototype.reset):
+ (WebInspector.ElementsPanel.prototype._mouseMovedInCrumbs):
+ (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs):
+ (WebInspector.ElementsPanel.prototype.updateBreadcrumb):
+ * page/inspector/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
+ Show the node hishlight for 2 seconds then restore the highlight
+ to the current hovered node.
+ (WebInspector.ElementsTreeOutline.prototype._onmousemove): Set the
+ hovered node and set the hovered state on the tree element.
+ (WebInspector.ElementsTreeOutline.prototype._onmouseout): Set the
+ hovered node to null and removed the hovered state from the previous
+ hovered tree element.
+ (WebInspector.ElementsTreeElement.prototype.set/get hovered): Adds
+ the hovered class to the list item.
+ (WebInspector.ElementsTreeElement.prototype.onattach): Ditto.
+ * page/inspector/inspector.css:
+ * page/inspector/inspector.js:
+ (WebInspector.set hoveredDOMNode): Pass a delay to _updateHoverHighlightSoon
+ based on the showingDOMNodeHighlight property of 50ms or 500ms. This
+ causes the highlight to change sooner if there is one already showing
+ and appear later if there isn't one showing. This is like tooltips,
+ hovering a node for 500ms will cause highlight then mousing between nodes
+ will keep the highlight and change to the new node.
+ (WebInspector._updateHoverHighlightSoon): Take a delay being passed in and
+ always reset the timeout so continuous mousing does not keep flasshing
+ the highlight on the screen.
+ (WebInspector._updateHoverHighlight): Removed the alt key check and added
+ the showingDOMNodeHighlight property.
+ (WebInspector.documentKeyDown): Removed the alt key check.
+ (WebInspector.documentKeyUp): Ditto.
+ (WebInspector.reset): Clear the hoveredDOMNode.
+
+2008-09-29 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Anders Carlsson
+
+ Fix RenderStyle leak in animation code, and assert that
+ keyframe resolution in CSSStyleSelector is not going to clobber
+ m_style.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::~KeyframeAnimation):
+
+2008-09-29 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Fixed https://bugs.webkit.org/show_bug.cgi?id=20995
+ Rewrite keyframe resolution to be like styleForElement()
+
+ Test: animations/lineheight-animation.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::addKeyframeStyle):
+ (WebCore::CSSStyleSelector::~CSSStyleSelector):
+ (WebCore::CSSStyleSelector::keyframeStylesForAnimation):
+ (WebCore::CSSRuleSet::addRulesFromSheet):
+ (WebCore::CSSStyleSelector::mapAnimationName):
+ * css/CSSStyleSelector.h:
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateKeyframeAnimations):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::KeyframeAnimation):
+ (WebCore::KeyframeAnimation::animate):
+ (WebCore::KeyframeAnimation::hasAnimationForProperty):
+ (WebCore::KeyframeAnimation::sendAnimationEvent):
+ (WebCore::KeyframeAnimation::overrideAnimations):
+ (WebCore::KeyframeAnimation::resumeOverriddenAnimations):
+ (WebCore::KeyframeAnimation::affectsProperty):
+ (WebCore::KeyframeAnimation::validateTransformFunctionList):
+ * page/animation/KeyframeAnimation.h:
+ * rendering/style/Animation.cpp:
+ (WebCore::Animation::animationsMatch):
+ * rendering/style/Animation.h:
+ * rendering/style/KeyframeList.cpp:
+ (WebCore::KeyframeList::~KeyframeList):
+ (WebCore::KeyframeList::clear):
+ (WebCore::KeyframeList::insert):
+ * rendering/style/KeyframeList.h:
+ (WebCore::KeyframeValue::KeyframeValue):
+ (WebCore::KeyframeList::KeyframeList):
+ (WebCore::KeyframeList::operator!=):
+ (WebCore::KeyframeList::animationName):
+ (WebCore::KeyframeList::addProperty):
+ (WebCore::KeyframeList::containsProperty):
+ (WebCore::KeyframeList::beginProperties):
+ (WebCore::KeyframeList::endProperties):
+ (WebCore::KeyframeList::isEmpty):
+ (WebCore::KeyframeList::size):
+ (WebCore::KeyframeList::beginKeyframes):
+ (WebCore::KeyframeList::endKeyframes):
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleRareNonInheritedData.cpp:
+ * rendering/style/StyleRareNonInheritedData.h:
+
+2008-09-29 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel
+
+ Clean up fix in PropertyWrapperGetter::equals
+ https://bugs.webkit.org/show_bug.cgi?id=21011
+
+ Test: transitions/override-transition-crash.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::PropertyWrapperGetter::equals):
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+
+2008-09-29 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Eric Seidel
+
+ https://bugs.webkit.org/show_bug.cgi?id=21001
+ Starting transition after animation, when animation
+ is finished, transition is wrong.
+
+ Test: animations/transition-and-animation-2.html
+
+ * page/animation/AnimationBase.h:
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+ (WebCore::CompositeAnimation::updateKeyframeAnimations):
+ (WebCore::CompositeAnimation::resetTransitions):
+ (WebCore::CompositeAnimation::cleanupFinishedAnimations):
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::ImplicitAnimation):
+ (WebCore::ImplicitAnimation::~ImplicitAnimation):
+ (WebCore::ImplicitAnimation::animate):
+ (WebCore::ImplicitAnimation::reset):
+ * page/animation/ImplicitAnimation.h:
+
+2008-09-29 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=20921
+ -webkit-animation-timing-function: inside of keyframes is ignored
+
+ Test: animations/keyframe-timing-functions.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::progress):
+ * page/animation/AnimationBase.h:
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::animate):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::animate):
+
+2008-09-29 Dan Bernstein <mitz@apple.com>
+
+ - Windows build fix
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::platformScroll):
+
+2008-09-29 Dan Bernstein <mitz@apple.com>
+
+ - another attempt at a Windows build fix
+
+ * platform/ScrollView.cpp:
+ (WebCore::platformScroll):
+
+2008-09-29 Dan Bernstein <mitz@apple.com>
+
+ - Windows build fix
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::platformSetScrollPosition):
+
+2008-09-29 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21218
+
+ Accidentally removed a check to see if the scrollbar modes were equal. This caused a crash on Windows.
+ It's silly that the code was this fragile, but for now just put the check back in.
+
+ Reviewed by Dan Bernstein
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setScrollbarModes):
+
+2008-09-29 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21216
+
+ Make setScrollPosition and scroll() cross-platform.
+
+ Reviewed by Anders
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+ (WebCore::ScrollView::scroll):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformSetScrollPosition):
+ (WebCore::ScrollView::platformScroll):
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformSetScrollPosition):
+ (WebCore::ScrollView::platformScroll):
+
+2008-09-29 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Oliver.
+
+ Bug 21139: Profiler log message is wrong
+ - Because _format was called twice the number in the log was incremented
+ too many times, but we were passing it around in the link the whole time
+
+ * page/inspector/ProfilesPanel.js:
+ * page/inspector/inspector.js:
+
+2008-09-29 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Cameron Zwarich.
+
+ Autogenerate EventListeners, addEventListener and removeEventListener
+ for JSDOMWindow.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::onwebkitanimationstart):
+ (WebCore::JSDOMWindow::setOnwebkitanimationstart):
+ (WebCore::JSDOMWindow::onwebkitanimationiteration):
+ (WebCore::JSDOMWindow::setOnwebkitanimationiteration):
+ (WebCore::JSDOMWindow::onwebkitanimationend):
+ (WebCore::JSDOMWindow::setOnwebkitanimationend):
+ (WebCore::JSDOMWindow::onwebkittransitionend):
+ (WebCore::JSDOMWindow::setOnwebkittransitionend):
+ (WebCore::JSDOMWindow::addEventListener):
+ (WebCore::JSDOMWindow::removeEventListener):
+ (WebCore::JSDOMWindow::setListener):
+ (WebCore::JSDOMWindow::getListener):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * page/DOMWindow.idl:
+
+2008-09-29 Thiago Macieira <thiago.macieira@nokia.com>
+
+ Reviewed by Simon.
+
+ Changed copyright from Trolltech ASA to Nokia.
+
+ Nokia acquired Trolltech ASA, assets were transferred on September 26th 2008.
+
+ * bindings/js/JSMimeTypeArrayCustom.cpp:
+ * bindings/js/JSNavigatorCustom.cpp:
+ * bindings/js/JSPluginArrayCustom.cpp:
+ * bindings/js/JSPluginCustom.cpp:
+ * bindings/js/ScriptControllerMac.mm:
+ * bindings/js/ScriptControllerQt.cpp:
+ * bridge/qt/qt_class.cpp:
+ * bridge/qt/qt_class.h:
+ * bridge/qt/qt_instance.cpp:
+ * bridge/qt/qt_instance.h:
+ * bridge/qt/qt_runtime.cpp:
+ * bridge/qt/qt_runtime.h:
+ * bridge/testqtbindings.cpp:
+ * css/makegrammar.pl:
+ * css/makeprop.pl:
+ * css/makevalues.pl:
+ * dom/Node.cpp:
+ * dom/TagNodeList.cpp:
+ * dom/TagNodeList.h:
+ * dom/XMLTokenizer.cpp:
+ * dom/XMLTokenizer.h:
+ * dom/XMLTokenizerLibxml2.cpp:
+ * dom/XMLTokenizerQt.cpp:
+ * editing/Editor.cpp:
+ * editing/EditorCommand.cpp:
+ * html/CanvasRenderingContext2D.cpp:
+ * html/CanvasStyle.cpp:
+ * html/HTMLAppletElement.cpp:
+ * html/HTMLEmbedElement.cpp:
+ * html/HTMLObjectElement.cpp:
+ * loader/FrameLoader.cpp:
+ * page/Chrome.cpp:
+ * page/EditorClient.h:
+ * page/Frame.cpp:
+ * page/Frame.h:
+ * page/FramePrivate.h:
+ * page/Navigator.cpp:
+ * page/Navigator.h:
+ * page/Navigator.idl:
+ * page/mac/FrameMac.mm:
+ * page/qt/EventHandlerQt.cpp:
+ * platform/graphics/qt/FontCacheQt.cpp:
+ * platform/graphics/qt/FontCustomPlatformData.cpp:
+ * platform/graphics/qt/FontCustomPlatformData.h:
+ * platform/graphics/qt/FontPlatformData.h:
+ * platform/graphics/qt/FontQt.cpp:
+ * platform/graphics/qt/GlyphPageTreeNodeQt.cpp:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ * platform/graphics/qt/ImageDecoderQt.cpp:
+ * platform/graphics/qt/ImageDecoderQt.h:
+ * platform/graphics/qt/ImageSourceQt.cpp:
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.h:
+ * platform/graphics/qt/SimpleFontDataQt.cpp:
+ * platform/gtk/MIMETypeRegistryGtk.cpp:
+ * platform/mac/MIMETypeRegistryMac.mm:
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ * platform/network/qt/QNetworkReplyHandler.h:
+ * platform/network/qt/ResourceHandleQt.cpp:
+ * platform/network/qt/ResourceRequestQt.cpp:
+ * platform/qt/ClipboardQt.cpp:
+ * platform/qt/EventLoopQt.cpp:
+ * platform/qt/KURLQt.cpp:
+ * platform/qt/LoggingQt.cpp:
+ * platform/qt/MIMETypeRegistryQt.cpp:
+ * platform/qt/PasteboardQt.cpp:
+ * platform/qt/PlatformScreenQt.cpp:
+ * platform/qt/PopupMenuQt.cpp:
+ * platform/qt/QWebPopup.cpp:
+ * platform/qt/QWebPopup.h:
+ * platform/qt/RenderThemeQt.cpp:
+ * platform/qt/ScrollbarQt.cpp:
+ * platform/qt/ScrollbarThemeQt.cpp:
+ * platform/qt/WheelEventQt.cpp:
+ * platform/qt/html4-adjustments-qt.css:
+ * platform/wx/MimeTypeRegistryWx.cpp:
+ * plugins/MimeType.cpp:
+ * plugins/MimeType.h:
+ * plugins/MimeType.idl:
+ * plugins/MimeTypeArray.cpp:
+ * plugins/MimeTypeArray.h:
+ * plugins/MimeTypeArray.idl:
+ * plugins/Plugin.cpp:
+ * plugins/Plugin.h:
+ * plugins/Plugin.idl:
+ * plugins/PluginArray.cpp:
+ * plugins/PluginArray.h:
+ * plugins/PluginArray.idl:
+ * plugins/PluginData.cpp:
+ * plugins/PluginData.h:
+ * plugins/gtk/PluginDataGtk.cpp:
+ * plugins/mac/PluginDataMac.mm:
+ * plugins/qt/PluginDataQt.cpp:
+ * plugins/win/PluginDataWin.cpp:
+ * rendering/RenderTableCol.cpp:
+ * rendering/RenderTableCol.h:
+
+2008-09-29 Thiago Macieira <thiago.macieira@trolltech.com>
+
+ Reviewed by Simon
+
+ Fix compilation with gcc 4.3
+
+ gcc 4.3 is stricter and ctype.h isn't getting included
+ automatically here by dependencies. So do it directly.
+
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+
+2008-09-29 Morten Sørvig <msorvig@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compilation with Qt/Mac without plugins.
+
+ * platform/qt/TemporaryLinkStubs.cpp:
+
+2008-09-29 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Apply the ASCII fast path optimization from StringImpl::lower to StringImpl::upper.
+ In the few places that we call .upper() in WebCore the strings represent things like
+ tag and attribute names, which are nearly always going to be ASCII.
+
+ * platform/text/StringImpl.cpp:
+ (WebCore::StringImpl::lower): If we have to resize the buffer, be sure to pass the new length
+ in to Unicode::toLower the second time.
+ (WebCore::StringImpl::upper):
+
+2008-09-28 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Speed up getPropertyValue('clip') by 25% by using a Vector<UChar> for building a string,
+ rather than String::operator+=.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+
+2008-09-28 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Speed up computedStyle.getPropertyValue('color') by 4.5x.
+
+ Using a Vector<UChar> while building up the property's cssText is substantially cheaper than using String::operator+=
+ as it avoids many memory reallocations.
+
+ This also speeds up the jQuery .offset() benchmark at <http://dev.jquery.com/~john/speed/1.2.6/offset-1.2.6.html>
+ by 20% due to jQuery's strange need to call getPropertyValue('color') when retrieving the computed styles for
+ unrelated properties on an element.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText): Build the result for the color types into a Vector<UChar>
+ and use appendNumber rather than the String::number in order to cut down on memory allocations.
+ * platform/text/PlatformString.h:
+ (WebCore::appendNumber): A helper function for formatting an unsigned character as a number
+ into a Vector<UChar>.
+
+2008-09-28 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Remove spurious call to lower().
+
+ * css/MediaQueryEvaluator.cpp:
+ (WebCore::MediaQueryEvaluator):
+
+2008-09-28 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Use a CaseFoldingHash instead of calling lower on family strings.
+
+ * css/CSSFontSelector.cpp:
+ (WebCore::CSSFontSelector::addFontFaceRule):
+ (WebCore::CSSFontSelector::getFontData):
+ * css/CSSFontSelector.h:
+
+2008-09-28 Timothy Hatcher <timothy@apple.com>
+
+ Remove the scrollIntoViewIfNeeded() call when drawing the
+ Inspector node highlight.
+
+ <rdar://problem/6115804> Don't scroll when highlighting (21000)
+ https://bugs.webkit.org/show_bug.cgi?id=21000
+
+ Reviewed by Dan Bernstein.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::drawNodeHighlight):
+
+2008-09-28 David Hyatt <hyatt@apple.com>
+
+ Fix crash when WebKit has no instantiated Scrollbars and the appearance prefs for scrollbars are
+ changed.
+
+ Reviewed by Dan Bernstein
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
+
+2008-09-28 Timothy Hatcher <timothy@apple.com>
+
+ Clear the current search results in the Inspector when
+ the search query is less than 3 characters long. Incremental
+ searches only occur for 3 characters or longer, but deleting
+ under this limit would not clear the results unless the whole
+ query was deleted.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21196
+
+ Reviewed by Dan Bernstein.
+
+ * page/inspector/inspector.js:
+ (WebInspector.performSearch): Check for short queries in the
+ if statement that triggers the clear.
+
+2008-09-28 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix <rdar://problem/6202962> "Tibetan Machine Uni" font does not work as a web font on Windows because TTLoadEmbeddedFont fails with E_NAMECHANGEFAILED
+
+ * platform/graphics/win/FontCustomPlatformData.cpp:
+ (WebCore::EOTStream::EOTStream): Added overlayDst, overlaySrc and
+ overlayLength parameters.
+ (WebCore::EOTStream::read): Added code to overlay the
+ m_overlayLength bytes starting at m_overlayDst with the same number of
+ bytes from m_overlaySrc.
+ (WebCore::createFontCustomPlatformData): Changed to get overlay
+ parameters from getEOTHeader.
+ * platform/graphics/win/GetEOTHeader.cpp:
+ (WebCore::getEOTHeader): Added code to specify overlaying of the
+ family name with the prefix of the full name if they differ, because
+ that such a difference causes TTLoadEmbeddedFont to fail.
+ * platform/graphics/win/GetEOTHeader.h:
+
+2008-09-28 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20366
+ Reproducible test failure for editing/undo/undo-iframe-location-change.html
+
+ * ChangeLog-2006-05-10: Added bug URLs for a fix that included this test.
+
+2008-09-28 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig (except for a few comment and header tweaks).
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21158
+ reduce use of virtual functions in Node for speed
+
+ Speeds up Dromaeo a bit less than 1%.
+
+ * bindings/js/JSNamedNodesCollection.cpp: Include Element.h instead of
+ Node.h now that some inlines are in there.
+
+ * dom/Attr.h: Override both the virtual and non-virtual name functions.
+
+ * dom/ChildNodeList.cpp:
+ (WebCore::ChildNodeList::nodeMatches): Updated to take an Element.
+ * dom/ChildNodeList.h: Ditto.
+ * dom/ClassNodeList.cpp:
+ (WebCore::ClassNodeList::nodeMatches): Ditto.
+ * dom/ClassNodeList.h: Ditto.
+
+ * dom/Document.h: Put the Node::isDocumentNode() function's inline
+ definition here where it can see the Document class definition.
+
+ * dom/DynamicNodeList.cpp:
+ (WebCore::DynamicNodeList::length): Changed to pass an Element.
+ (WebCore::DynamicNodeList::itemForwardsFromCurrent): Ditto.
+ (WebCore::DynamicNodeList::itemBackwardsFromCurrent): Ditto.
+ (WebCore::DynamicNodeList::itemWithName): Ditto.
+ * dom/DynamicNodeList.h: Ditto.
+
+ * dom/Element.cpp: Removed virtualHasTagName.
+ * dom/Element.h: Made localName, prefix, namespaceURI, and
+ styleForRenderer non-virtual. Added virtualPrefix, virtualLocalName,
+ virtualNamespaceURI, and removed virtualHasTagName. Put the
+ Node::hasTagName, Node::hasAttributes, and Node::attributes
+ functions' inline definitions here where they can see the Element
+ class definition.
+
+ * dom/NameNodeList.cpp:
+ (WebCore::NameNodeList::nodeMatches): Updated to take an Element.
+ * dom/NameNodeList.h: Ditto.
+
+ * dom/Node.cpp:
+ (WebCore::Node::virtualPrefix): Renamed from prefix.
+ (WebCore::Node::virtualLocalName): Renamed from localName.
+ (WebCore::Node::virtualNamespaceURI): Renamed from namespaceURI.
+ (WebCore::Node::styleForRenderer): Handle the Element case here.
+
+ * dom/Node.h: Removed definition of hasTagName that calls virtual,
+ since we now have a non-virtual version. Made hasAttributes,
+ attributes, remove, localName, namespaceURI, prefix, isDocumentNode,
+ and styleForRenderer non-virtual. Added virtualPrefix,
+ virtualLocalName, and virtualNamespaceURI. Removed isMalformed
+ and setMalformed, which are used only on HTMLFormElement objects.
+
+ * dom/TagNodeList.cpp:
+ (WebCore::TagNodeList::nodeMatches): Updated to take an Element.
+ * dom/TagNodeList.h: Ditto.
+
+ * html/HTMLAnchorElement.cpp: Added a comment.
+ * html/HTMLFormControlElement.cpp: Ditto.
+
+ * html/HTMLAnchorElement.h: Removed unused, unimplemented setTabIndex
+ function. Marked tabIndex function virtual explicitly for clarity.
+
+ * html/HTMLAreaElement.h: Removed unused, unimplemented setTabIndex
+ function. Marked isFocusable function virtual explicitly for clarity.
+
+ * html/HTMLElement.h: Marked tabIndex function virtual explicitly for
+ clarity.
+ * html/HTMLFormControlElement.h: Ditto.
+
+ * html/HTMLFormElement.h: Made isMalformed non-virtual.
+
+ * html/HTMLParser.cpp:
+ (WebCore::HTMLParser::handleError): Use the already-cast-to-HTMLElement
+ pointer to call localName since that one does not need to call a virtual
+ function.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock): Cast to HTMLFormElement before
+ calling isMalformed. We already did a tag name check so we know it's
+ an HTMLFormELement.
+
+ * xml/XPathUtil.cpp:
+ (WebCore::XPath::isValidContextNode): Rewrote to not make so many calls
+ to nodeType(), since it's a virtual function.
+
+2008-09-28 David Hyatt <hyatt@apple.com>
+
+ Make frameRectsChanged() cross-platform on ScrollView.
+
+ Reviewed by Oliver Hunt
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::frameRectsChanged):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-09-28 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 21141: REGRESSION: Exception messages for user entered commands are poor
+ <https://bugs.webkit.org/show_bug.cgi?id=21141>
+
+ The bug repsonsible for this was the the JSInspectedObjectWrapper instances
+ were not initialising their StructureID's to indicate that the wrapper
+ overrides hasInstance, etc. The solution is simply to use the createStructureID
+ helper on JSQuarantinedObjectWrapper to create a correct StructureID.
+
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ (WebCore::JSInspectedObjectWrapper::wrap):
+
+2008-09-28 David Hyatt <hyatt@apple.com>
+
+ Make sure pixel wheel scrolls (formerly "continuous" wheel events) send deltas to DOM wheel events in
+ terms of lines.
+
+ Reviewed by Oliver Hunt
+
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::dispatchWheelEvent):
+
+2008-09-28 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21191
+
+ Rework mouse wheeling significantly to make the platform event less messy and to enable wheelEvent
+ on ScrollView to be cross-platform.
+
+ Give the wheel event a concept of granularity (pixel, line or page). What used to be called continuous
+ events are now pixel wheel events.
+
+ Page scrolling as implemented in bug 17589 was completely broken. It had the following problems:
+ (1) Page scrolling has been corrected to be properly detected (on Windows
+ page wheeling is only done in the vertical direction and it is keyed off a special return value of -1). The
+ old code had some bizarre incorrect heuristic for "guessing" that you should page scroll and also thought
+ you could page scroll horizontally.
+ (2) Page scrolling a layer used the enclosing ScrollView's width/height instead of the layer's width/height.
+ This caused the scroll amount for page scrolling to be way too large on layers.
+
+ Bug 17589 got the default horizontal scrolling value wrong. It assumed 1, when the Vista default is 3.
+
+ Incorporate WebCore's line multiplier right into the deltas of the event. This eliminates the need
+ for separate multiplier fields (or for the need to ask if you're looking for line sensitivity).
+
+ Reviewed by Oliver Hunt
+
+ * editing/EditorCommand.cpp:
+ (WebCore::verticalScrollDistance):
+ * page/EventHandler.cpp:
+ (WebCore::scrollAndAcceptEvent):
+ (WebCore::EventHandler::handleWheelEvent):
+ * platform/PlatformWheelEvent.h:
+ (WebCore::):
+ (WebCore::PlatformWheelEvent::pos):
+ (WebCore::PlatformWheelEvent::globalPos):
+ (WebCore::PlatformWheelEvent::deltaX):
+ (WebCore::PlatformWheelEvent::deltaY):
+ (WebCore::PlatformWheelEvent::granularity):
+ (WebCore::PlatformWheelEvent::x):
+ (WebCore::PlatformWheelEvent::globalX):
+ (WebCore::PlatformWheelEvent::ignore):
+ (WebCore::PlatformWheelEvent::horizontalLineMultiplier):
+ (WebCore::PlatformWheelEvent::verticalLineMultiplier):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::wheelEvent):
+ * platform/Scrollbar.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/gtk/WheelEventGtk.cpp:
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+ * platform/mac/ScrollViewMac.mm:
+ * platform/mac/WheelEventMac.mm:
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/qt/WheelEventQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/win/WheelEventWin.cpp:
+ (WebCore::PlatformWheelEvent::horizontalLineMultiplier):
+ (WebCore::PlatformWheelEvent::verticalLineMultiplier):
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::OnScrollWinEvents):
+ (WebCore::ScrollView::wheelEvent):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateScrollInfoAfterLayout):
+
+2008-09-27 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ fix https://bugs.webkit.org/show_bug.cgi?id=20994
+ <rdar://problem/6171023> HTMLVideoElement width and height attributes are now unsigned
+
+ HTML5 spec says HTMLVideoElement width and height attributes should be unsigned. Convert
+ all unsigned media attributes from string with toUInt() instead of toInt().
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::playCount): convert from attribute with toUInt().
+
+ * html/HTMLVideoElement.cpp:
+ (WebCore::HTMLVideoElement::videoWidth):
+ (WebCore::HTMLVideoElement::videoHeight): return unsigned to match idl.
+ (WebCore::HTMLVideoElement::width): convert from attribute with toUInt() and return
+ unsigned value.
+ (WebCore::HTMLVideoElement::height): Ditto.
+ (WebCore::HTMLVideoElement::setWidth): take unsigned value.
+ (WebCore::HTMLVideoElement::setHeight): Ditto.
+
+ * html/HTMLVideoElement.h: width, height, videoWidth, and videoHeight are unsigned.
+
+ * html/HTMLVideoElement.idl: make width and height unsigned to match HTML5 spec.
+
+2008-09-27 Timothy Hatcher <timothy@apple.com>
+
+ Fixes an exception when typing a command in the Console.
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype.addMessage): Null check
+ this.previosMessage.
+
+2008-09-27 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where the Profiles panel sidebar would be empty
+ after closing and reopening the Web Inspector.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21179
+
+ Reviewed by Sam Weinig.
+
+ * page/inspector/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype.reset): Don't call
+ populateInterface, it is called automatically.
+ (WebInspector.ProfilesPanel.prototype._populateProfiles):
+ Return early if the sidebar is already populated.
+
+2008-09-27 Dave Hyatt <hyatt@apple.com>
+
+ Bug 21190. The line scroll amount on Windows is way too small. A patch for bug 17589 for wheel sensitivity
+ incorrectly applied the tinier wheel step delta (unmultiplied) to line scrolling. Line scrolling with the
+ scrollbar has nothing to do with mouse wheeling. This patch reverts the scrollbars to use the same line
+ step as other platforms while leaving the wheel delta alone for use with wheel scrolling.
+
+ There was a lot wrong with 17589, so more patches will be coming to deal with the fallout of this patch
+ (which should never have landed in the first place).
+
+ Reviewed by Tim Hatcher, Sam Weinig
+
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::adjustDeltaForPageScrollMode):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::wheelEvent):
+
+2008-09-27 David Hyatt <hyatt@apple.com>
+
+ Make the scrollbarUnderMouse method cross-platform.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-09-27 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Gtk+ build fix.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+
+2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Holger Freyther.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20287
+ [Gtk] disable plugins for gtk/directfb target
+
+ Introduce WTF_PLATFORM_X11 for X11 builds.
+ Also use target-specific packages when building the port
+
+ * platform/gtk/PlatformScreenGtk.cpp:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::getValueStatic):
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::init):
+
+2008-09-27 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21188
+
+ Make scrollbar suppression and resizer avoidance cross-platform.
+
+ Reviewed by Anders
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::transitionToCommitted):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::resetScrollbars):
+ (WebCore::FrameView::clear):
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::restoreScrollbar):
+ (WebCore::FrameView::windowResizerRect):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::init):
+ (WebCore::ScrollView::resizerOverlapsContent):
+ (WebCore::ScrollView::adjustScrollbarsAvoidingResizerCount):
+ (WebCore::ScrollView::setParent):
+ (WebCore::ScrollView::setScrollbarsSuppressed):
+ (WebCore::ScrollView::platformSetScrollbarsSuppressed):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::scrollbarsSuppressed):
+ (WebCore::ScrollView::windowResizerRect):
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::setFrameRect):
+ (WebCore::Scrollbar::setParent):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::paint):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+ (WebCore::ScrollView::platformSetScrollbarsSuppressed):
+ (WebCore::ScrollView::setScrollPosition):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::frameRectsChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::paint):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::paint):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+
+2008-09-27 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Rubber-stamped by Anders Carlsson.
+
+ Compile fix.
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::load):
+
+2008-09-27 Mark Rowe <mrowe@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ Fix <https://bugs.webkit.org/show_bug.cgi?id=21184>.
+ Bug 21184: REGRESSION: Reproducible crash below StringImpl::hash while running editing/deleting/5408255.html
+
+ Remove an assertion that was incorrect and that if made correct would have duplicated a check that occurred earlier in the function.
+
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::~CachedResource):
+
+2008-09-27 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon Hausmann.
+
+ [qt] Use QImageReader to figure out which image formats are supported
+ - Qt can have many different plugins for different image formats. Instead
+ of checking only for a few in WebCore use Qt to determine if this data
+ can be treated as an image.
+
+ * platform/graphics/qt/ImageSourceQt.cpp:
+ (WebCore::canHandleImage):
+ (WebCore::createDecoder):
+
+2008-09-27 Holger Hans Peter Freyther <zecke@selfish.org>
+
+
+ [qt] Clean the pattern code
+ - Use save/restore on the painter after manipulating the
+ pen/brush
+ - Make the context and object null checking consistent. CG is using
+ the object unconditionally so the Qt webkit platform can do the
+ same.
+ - Move code below the early exit. Only use the m_ownerElement before
+ the early exit as the CG code is doing it.
+
+ * svg/graphics/SVGPaintServerPattern.h:
+ * svg/graphics/qt/SVGPaintServerPatternQt.cpp:
+ (WebCore::SVGPaintServerPattern::setup):
+ (WebCore::SVGPaintServerPattern::teardown):
+
+2008-09-27 Keishi Hattori <casey.hattori@gmail.com>
+
+ Added support for console.trace.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19157
+
+ Reviewed by Kevin McCullough and Tim Hatcher.
+
+ * bindings/js/JSConsoleCustom.cpp:
+ (WebCore::JSConsole::trace):
+ * page/Console.cpp:
+ (WebCore::Console::trace): Calls Machine::retrieveCaller to
+ get a stack trace.
+ * page/Console.h:
+ (WebCore::): Added TraceMessageLevel.
+ * page/Console.idl: Added console.trace.
+ * page/inspector/Console.js:
+ (ConsoleMessage): Added case for TraceMessageLevel.
+
+2008-09-27 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21178
+ <rdar://problem/6248651>
+
+ Check if the plug-in is allowed to load the resource. This matches Firefox.
+
+ Test: http/tests/plugins/local-geturl-from-remote.html
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::load):
+
+2008-09-22 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ Added SVG pattern support to Qt.
+
+ [Qt] SVG patterns are missing
+ https://bugs.webkit.org/show_bug.cgi?id=20973
+
+ * svg/graphics/qt/SVGPaintServerPatternQt.cpp:
+ (WebCore::SVGPaintServerPattern::setup):
+
+2008-09-27 Keishi Hattori <casey.hattori@gmail.com>
+
+ Fixed a bug in the JS syntax highlighter with multiple line tokens.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21171
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/SourceFrame.js:
+ (syntaxHighlightJavascriptLine): Initialize previousMatchLength.
+
+2008-09-27 Timothy Hatcher <timothy@apple.com>
+
+ Change searching in the Profiles panel to not match the
+ Self and Total columns when there are no units. The only
+ column that is matched for unitless number searches is
+ now the Calls column.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21169
+
+ Reviewed by Sam Weinig.
+
+ * page/inspector/ProfileView.js:
+ (WebInspector.ProfileView.prototype.performSearch):
+
+2008-09-27 David Hyatt <hyatt@apple.com>
+
+ Rename boundsGeometry -> boundsRect. Rename geometryChanged -> frameRectsChanged.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollView.h:
+ * platform/Widget.h:
+ (WebCore::Widget::boundsRect):
+ (WebCore::Widget::invalidate):
+ (WebCore::Widget::frameRectsChanged):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollViewScrollbar::frameRectsChanged):
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::frameRectsChanged):
+ * platform/gtk/ScrollbarGtk.cpp:
+ (ScrollbarGtk::setFrameRect):
+ (ScrollbarGtk::frameRectsChanged):
+ * platform/gtk/ScrollbarGtk.h:
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::frameRectsChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::frameRectsChanged):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::frameRectsChanged):
+ * plugins/PluginView.h:
+
+2008-09-27 Simon Hausmann <hausmann@webkit.org>
+
+ Refix the previous build fix to compile on non-Qt platforms, too.
+
+ * WebCore.pro: Don't pass -i to create_hashtable, added missing -n
+ WebCore to generate the PrototypeTable in the WebCore namespace
+ * bindings/js/JSEventTargetBase.h: Revert previous fix, the Prototype
+ table remains in the Webcore namespace
+ (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot):
+
+2008-09-27 Simon Hausmann <hausmann@webkit.org>
+
+ Fix compilation with gcc 4.3 (probably > 4.0)
+
+ * bindings/js/JSDOMWindowBase.cpp: Don't define static property
+ get/put functions inside the WebCore namespace.
+ * bindings/js/JSEventTargetBase.cpp: Ditto.
+ * bindings/js/JSEventTargetNode.cpp: Ditto.
+ * bindings/js/JSEventTargetSVGElementInstance.cpp: Ditto.
+ * bindings/js/JSEventTargetBase.h: Forward declare
+ JSEventTargetPrototypeTable in the JSC namespace as the lut.h file
+ defines it in the JSC namespace.
+ (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot): Add JSC::
+ prefix for PrototypeTable symbol.
+
+2008-09-27 David Hyatt <hyatt@apple.com>
+
+ Rename frameGeometry to frameRect. Rename setFrameGeometry to setFrameRect.
+
+ Reviewed by Dan Bernstein
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::FrameView):
+ (WebCore::FrameView::updateControlTints):
+ * platform/ScrollView.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ (WebCore::Scrollbar::paint):
+ (WebCore::Scrollbar::setFrameRect):
+ * platform/Scrollbar.h:
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ * platform/Widget.h:
+ (WebCore::Widget::x):
+ (WebCore::Widget::y):
+ (WebCore::Widget::width):
+ (WebCore::Widget::height):
+ (WebCore::Widget::size):
+ (WebCore::Widget::pos):
+ (WebCore::Widget::resize):
+ (WebCore::Widget::move):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollViewScrollbar::geometryChanged):
+ (WebCore::ScrollView::update):
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::paint):
+ * platform/gtk/ScrollbarGtk.cpp:
+ (ScrollbarGtk::setFrameRect):
+ (ScrollbarGtk::geometryChanged):
+ * platform/gtk/ScrollbarGtk.h:
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::frameRect):
+ (WebCore::Widget::setFrameRect):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::trackRect):
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::frameRect):
+ (WebCore::Widget::setFrameRect):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::paint):
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::styleOptionSlider):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::frameRect):
+ (WebCore::Widget::setFrameRect):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::invalidateItem):
+ (WebCore::PopupMenu::valueChanged):
+ (WebCore::PopupWndProc):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::setFrameRect):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::paint):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::trackRect):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::frameRect):
+ (WebCore::Widget::setFrameRect):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::frameRect):
+ (WebCore::Widget::setFrameRect):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::setFrameRect):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::init):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::init):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ (WebCore::PluginView::paintMissingPluginIcon):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::init):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::positionOverflowControls):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintScrollbar):
+ * rendering/RenderPart.cpp:
+ (WebCore::RenderPart::updateWidgetPosition):
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::setWidgetGeometry):
+ (WebCore::RenderWidget::updateWidgetPosition):
+
+2008-09-27 David Hyatt <hyatt@apple.com>
+
+ <rdar://problem/6252041> REGRESSION (4dp-TOT): Crash in Widget::platformWidget() when closing a PDF
+
+ This crash was lurking for a while and basically got exposed by my changes to visibleContentRect() to
+ access an actual member variable.
+
+ Reviewed by Dan Bernstein
+
+ * page/FocusController.cpp:
+ (WebCore::FocusController::setFocusedFrame):
+
+2008-09-27 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Attempt to fix QT Build. Not reviewed.
+
+ * WebCore.pro: add -n WebCore parameter to create_hash_table
+
+2008-09-26 Gwenole Beauchesne <gbeauchesne@splitted-desktop.org>
+
+ Reviewed by Eric Seidel.
+
+ http://bugs.webkit.org/show_bug.cgi?id=18905
+ [GTK] Fix build with older pango (1.14.8)
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ * platform/gtk/Language.cpp:
+ (_pango_get_lc_ctype):
+ (pango_language_get_default):
+
+2008-09-26 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21168
+
+ Make contentsToWindow/windowToContents cross-platform.
+
+ Reviewed by Oliver Hunt
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::windowToContents):
+ (WebCore::ScrollView::contentsToWindow):
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-09-26 Sam Weinig <sam@webkit.org>
+
+ GTK build fix.
+
+ * GNUmakefile.am:
+
+2008-09-26 David Hyatt <hyatt@apple.com>
+
+ Eliminate shouldUpdateWhileOffscreen from ScrollView. Make the concept of not invalidating while
+ offscreen cross-platform. Rename the inWindow method to isOffscreen (which flips the boolean), since that
+ more clearly conveys the intent of the method. Make isOffscreen also check NSWindow visibility on Mac.
+
+ Reviewed by Oliver Hunt
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::repaintContentRectangle):
+ * page/FrameView.h:
+ * platform/ScrollView.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::isOffscreen):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::updateContents):
+ (WebCore::ScrollView::isOffscreen):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::isOffscreen):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::isOffscreen):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::isOffscreen):
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::willRenderImage):
+
+2008-09-26 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21164
+
+ Rework concept of allowsScrolling/setAllowsScrolling to be cross-platform.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::setAllowsScrolling):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setAllowsScrolling):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::allowsScrolling):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::wheelEvent):
+
+2008-09-26 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes after Widget/ScrollView changes.
+
+ * platform/wx/PopupMenuWx.cpp:
+ (WebCore::PopupMenu::show):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformSetContentsSize):
+ (WebCore::ScrollView::platformSetScrollbarModes):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/wx/TemporaryLinkStubs.cpp:
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::containingWindow):
+
+2008-09-26 Timothy Hatcher <timothy@apple.com>
+
+ Allow searching for paths by always performing the
+ three search methods in the Elements panel and not
+ assume a search with a "/" is a XPath query.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21159
+
+ Reviewed by Geoff Garen.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.performSearch):
+
+2008-09-26 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=21152
+ Speedup static property get/put
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMBinding.cpp:
+ * bindings/js/JSDOMBinding.h:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::getDOMConstructor):
+ (WebCore::jsDOMWindowBaseCrypto):
+ (WebCore::jsDOMWindowBaseEvent):
+ (WebCore::jsDOMWindowBaseImage):
+ (WebCore::jsDOMWindowBaseMessageChannel):
+ (WebCore::jsDOMWindowBaseOption):
+ (WebCore::jsDOMWindowBaseXMLHttpRequest):
+ (WebCore::jsDOMWindowBaseAudio):
+ (WebCore::jsDOMWindowBaseXSLTProcessor):
+ (WebCore::jsDOMWindowBaseOnabort):
+ (WebCore::jsDOMWindowBaseOnblur):
+ (WebCore::jsDOMWindowBaseOnchange):
+ (WebCore::jsDOMWindowBaseOnclick):
+ (WebCore::jsDOMWindowBaseOndblclick):
+ (WebCore::jsDOMWindowBaseOnerror):
+ (WebCore::jsDOMWindowBaseOnfocus):
+ (WebCore::jsDOMWindowBaseOnkeydown):
+ (WebCore::jsDOMWindowBaseOnkeypress):
+ (WebCore::jsDOMWindowBaseOnkeyup):
+ (WebCore::jsDOMWindowBaseOnload):
+ (WebCore::jsDOMWindowBaseOnmousedown):
+ (WebCore::jsDOMWindowBaseOnmousemove):
+ (WebCore::jsDOMWindowBaseOnmouseout):
+ (WebCore::jsDOMWindowBaseOnmouseover):
+ (WebCore::jsDOMWindowBaseOnmouseup):
+ (WebCore::jsDOMWindowBaseOnMouseWheel):
+ (WebCore::jsDOMWindowBaseOnreset):
+ (WebCore::jsDOMWindowBaseOnresize):
+ (WebCore::jsDOMWindowBaseOnscroll):
+ (WebCore::jsDOMWindowBaseOnsearch):
+ (WebCore::jsDOMWindowBaseOnselect):
+ (WebCore::jsDOMWindowBaseOnsubmit):
+ (WebCore::jsDOMWindowBaseOnbeforeunload):
+ (WebCore::jsDOMWindowBaseOnunload):
+ (WebCore::jsDOMWindowBaseOnWebKitAnimationStart):
+ (WebCore::jsDOMWindowBaseOnWebKitAnimationIteration):
+ (WebCore::jsDOMWindowBaseOnWebKitAnimationEnd):
+ (WebCore::jsDOMWindowBaseOnWebKitTransitionEnd):
+ (WebCore::JSDOMWindowBase::getOwnPropertySlot):
+ (WebCore::JSDOMWindowBase::put):
+ (WebCore::setJSDOMWindowBaseOnabort):
+ (WebCore::setJSDOMWindowBaseOnblur):
+ (WebCore::setJSDOMWindowBaseOnchange):
+ (WebCore::setJSDOMWindowBaseOnclick):
+ (WebCore::setJSDOMWindowBaseOndblclick):
+ (WebCore::setJSDOMWindowBaseOnerror):
+ (WebCore::setJSDOMWindowBaseOnfocus):
+ (WebCore::setJSDOMWindowBaseOnkeydown):
+ (WebCore::setJSDOMWindowBaseOnkeypress):
+ (WebCore::setJSDOMWindowBaseOnkeyup):
+ (WebCore::setJSDOMWindowBaseOnload):
+ (WebCore::setJSDOMWindowBaseOnmousedown):
+ (WebCore::setJSDOMWindowBaseOnmousemove):
+ (WebCore::setJSDOMWindowBaseOnmouseout):
+ (WebCore::setJSDOMWindowBaseOnmouseover):
+ (WebCore::setJSDOMWindowBaseOnmouseup):
+ (WebCore::setJSDOMWindowBaseOnMouseWheel):
+ (WebCore::setJSDOMWindowBaseOnreset):
+ (WebCore::setJSDOMWindowBaseOnresize):
+ (WebCore::setJSDOMWindowBaseOnscroll):
+ (WebCore::setJSDOMWindowBaseOnsearch):
+ (WebCore::setJSDOMWindowBaseOnselect):
+ (WebCore::setJSDOMWindowBaseOnsubmit):
+ (WebCore::setJSDOMWindowBaseOnbeforeunload):
+ (WebCore::setJSDOMWindowBaseOnunload):
+ (WebCore::setJSDOMWindowBaseOnWebKitAnimationStart):
+ (WebCore::setJSDOMWindowBaseOnWebKitAnimationIteration):
+ (WebCore::setJSDOMWindowBaseOnWebKitAnimationEnd):
+ (WebCore::setJSDOMWindowBaseOnWebKitTransitionEnd):
+ (WebCore::setJSDOMWindowBaseEvent):
+ (WebCore::setJSDOMWindowBaseAudio):
+ (WebCore::setJSDOMWindowBaseImage):
+ (WebCore::setJSDOMWindowBaseMessageChannel):
+ (WebCore::setJSDOMWindowBaseOption):
+ (WebCore::setJSDOMWindowBaseXMLHttpRequest):
+ (WebCore::setJSDOMWindowBaseXSLTProcessor):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::nonCachingStaticCloseFunctionGetter):
+ (WebCore::nonCachingStaticBlurFunctionGetter):
+ (WebCore::nonCachingStaticFocusFunctionGetter):
+ (WebCore::nonCachingStaticPostMessageFunctionGetter):
+ * bindings/js/JSDOMWindowCustom.h:
+ (WebCore::JSDOMWindow::customGetOwnPropertySlot):
+ * bindings/js/JSEventTargetBase.cpp:
+ * bindings/js/JSEventTargetBase.h:
+ (WebCore::JSEventTargetBasePrototype::getOwnPropertySlot):
+ (WebCore::JSEventTargetBasePrototype::classInfo):
+ * bindings/js/JSEventTargetNode.cpp:
+ (WebCore::):
+ (WebCore::JSEventTargetNode::getOwnPropertySlot):
+ (WebCore::JSEventTargetNode::put):
+ * bindings/js/JSEventTargetNode.h:
+ (WebCore::JSEventTargetNode::classInfo):
+ (WebCore::JSEventTargetNode::prototypeClassName):
+ * bindings/js/JSEventTargetSVGElementInstance.cpp:
+ (WebCore::):
+ (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
+ (WebCore::JSEventTargetSVGElementInstance::put):
+ * bindings/js/JSEventTargetSVGElementInstance.h:
+ (WebCore::JSEventTargetSVGElementInstance::classInfo):
+ (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
+ * bindings/js/JSHTMLInputElementCustom.cpp:
+ (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
+ * bindings/js/JSHistoryCustom.cpp:
+ (WebCore::nonCachingStaticBackFunctionGetter):
+ (WebCore::nonCachingStaticForwardFunctionGetter):
+ (WebCore::nonCachingStaticGoFunctionGetter):
+ (WebCore::JSHistory::customGetOwnPropertySlot):
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::nonCachingStaticReplaceFunctionGetter):
+ (WebCore::nonCachingStaticReloadFunctionGetter):
+ (WebCore::nonCachingStaticAssignFunctionGetter):
+ (WebCore::JSLocation::customGetOwnPropertySlot):
+ (WebCore::JSLocation::customPut):
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+2008-09-26 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21149
+
+ Make the concept of scroll modes cross-platform. Move the scrollbars up into ScrollView as well.
+ Eliminate the unused isScrollable() method.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameView::resetScrollbars):
+ (WebCore::FrameView::initScrollbars):
+ (WebCore::FrameView::layout):
+ * page/FrameView.h:
+ * page/mac/WebCoreFrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::init):
+ (WebCore::ScrollView::setScrollbarModes):
+ (WebCore::ScrollView::scrollbarModes):
+ (WebCore::ScrollView::platformSetScrollbarModes):
+ (WebCore::ScrollView::platformScrollbarModes):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ (WebCore::ScrollView::setHorizontalScrollbarMode):
+ (WebCore::ScrollView::setVerticalScrollbarMode):
+ (WebCore::ScrollView::horizontalScrollbarMode):
+ (WebCore::ScrollView::verticalScrollbarMode):
+ (WebCore::ScrollView::convertSelfToChild):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ (WebCore::ScrollView::paint):
+ (WebCore::ScrollView::scroll):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformSetScrollbarModes):
+ (WebCore::ScrollView::platformScrollbarModes):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ (WebCore::ScrollView::invalidateScrollbars):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::paint):
+ (WebCore::ScrollView::scroll):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
+ (WebCore::ScrollView::ScrollViewPrivate::allowsScrolling):
+ (WebCore::ScrollView::suppressScrollbars):
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::paint):
+ (WebCore::ScrollView::scroll):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformSetScrollbarModes):
+ (WebCore::ScrollView::platformScrollbarModes):
+
+2008-09-26 David Kilzer <ddkilzer@apple.com>
+
+ Fix Mac build with XPATH and XSLT disabled
+
+ Reviewed by Alexey.
+
+ * bindings/objc/DOMUtility.mm:
+ (JSC::createDOMWrapper): Conditionalize code with ENABLE(XPATH).
+ * dom/XMLTokenizerLibxml2.cpp:
+ (WebCore::errorFunc): Conditionalize method with ENABLE(XSLT) to
+ prevent an unused code warning.
+
+2008-09-26 Kevin McCullough <kmccullough@apple.com>
+
+ Rubber stamped by Tim Hatcher.
+
+ Bug 21098: Crashing under Console::log
+ - Speculative ASSERT to help find the problem.
+
+ * page/InspectorController.cpp:
+ (WebCore::ConsoleMessage::isEqual):
+
+2008-09-26 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ [gtk+] Build fix for the latest ScrollView changes
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+
+2008-09-26 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where the console message repeat count would be wrong
+ when typing commands in between repeated messages.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21145
+
+ Reviewed by Kevin McCullough.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::clearConsoleMessages): Reset m_groupLevel.
+ (WebCore::InspectorController::didCommitLoad): Call clearConsoleMessages.
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype.addMessage): Remember the original repeat count
+ for each message as totalRepeatCount, since we now modify repeatCount to mean
+ repeats since previous console command. If repeatCountBeforeCommand is a number,
+ subtract that value from the repeatCount.
+ (WebInspector.Console.prototype.clearMessages): Delete the repeatCountBeforeCommand
+ and commandSincePreviousMessage properties.
+
+2008-09-26 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Antti
+
+ https://bugs.webkit.org/show_bug.cgi?id=21116
+ <rdar://problem/5726325> Audio from <video> can still be heard after navigating
+ back to page with <video>, then closing tab
+
+ Rename willSaveToCache/didRestoreFromCache callbacks to documentWillBecomeInactive/
+ documentDidBecomeActive, and post documentWillBecomeInactive when a page is marked for
+ deletion.
+
+ * dom/Document.cpp:
+ (WebCore::Document::documentWillBecomeInactive):
+ (WebCore::Document::documentDidBecomeActive):
+ (WebCore::Document::registerForDocumentActivationCallbacks):
+ (WebCore::Document::unregisterForDocumentActivationCallbacks):
+ * dom/Document.h:
+ * dom/Element.h:
+ (WebCore::Element::documentWillBecomeInactive):
+ (WebCore::Element::documentDidBecomeActive):
+ * history/CachedPage.cpp:
+ (WebCore::CachedPage::CachedPage):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::~HTMLFormElement):
+ (WebCore::HTMLFormElement::parseMappedAttribute):
+ (WebCore::HTMLFormElement::documentDidBecomeActive):
+ (WebCore::HTMLFormElement::willMoveToNewOwnerDocument):
+ (WebCore::HTMLFormElement::didMoveToNewOwnerDocument):
+ * html/HTMLFormElement.h:
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::~HTMLInputElement):
+ (WebCore::HTMLInputElement::setInputType):
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::needsActivationCallback):
+ (WebCore::HTMLInputElement::registerForActivationCallbackIfNeeded):
+ (WebCore::HTMLInputElement::unregisterForActivationCallbackIfNeeded):
+ (WebCore::HTMLInputElement::documentDidBecomeActive):
+ (WebCore::HTMLInputElement::willMoveToNewOwnerDocument):
+ (WebCore::HTMLInputElement::didMoveToNewOwnerDocument):
+ * html/HTMLInputElement.h:
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::HTMLMediaElement):
+ (WebCore::HTMLMediaElement::~HTMLMediaElement):
+ (WebCore::HTMLMediaElement::documentWillBecomeInactive):
+ (WebCore::HTMLMediaElement::documentDidBecomeActive):
+ * html/HTMLMediaElement.h:
+ (WebCore::HTMLMediaElement::inActiveDocument):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::opened):
+ * page/Page.cpp:
+ (WebCore::Page::~Page):
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::updateControls):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::updatePlayer):
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::SVGSVGElement):
+ (WebCore::SVGSVGElement::~SVGSVGElement):
+ (WebCore::SVGSVGElement::documentWillBecomeInactive):
+ (WebCore::SVGSVGElement::documentDidBecomeActive):
+ * svg/SVGSVGElement.h:
+
+2008-09-26 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Reviewed by Simon
+
+ Fix the build inside Qt, don't create faulty prl files for now.
+
+ * WebCore.pro:
+
+2008-09-26 Simon Hausmann <hausmann@webkit.org>
+
+ Fix compilation on Qt/Windows
+
+ * Add WebCore/ to the include path so that config.h is found that enables JSC
+ * Link against winmm for the multimedia timer functions
+ * Include DateMath.h instead of JavaScriptCore/DateMath.h as file is in the kjs/
+ subdirectory
+ * In PluginViewWin.cpp don't use setPlatformWidget with the HWND for the Qt/Windows port
+ but set m_window directly as setPlatformWidget takes a QWidget*.
+
+ * WebCore.pro:
+ * platform/win/SystemTimeWin.cpp:
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::init):
+
+2008-09-26 Oliver Hunt <oliver@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 21054: Construction of certain DOM objects is heavily regressed by r36675
+ <https://bugs.webkit.org/show_bug.cgi?id=21054>
+
+ This performance regression is actually just a symptom of a correctness
+ bug. The constructor objects for a number of properties that have security
+ checks on access were returning new objects each time. The most obvious
+ symptom of this bug is that window.Image != window.Image, etc.
+
+ The solution to this is to make sure we cache these constructors
+ in the same way as all the other DOM constructors. To achieve this
+ without causing any refcount cycles it is necessary to replace the
+ refcounted document pointer in the Image, MessageChannel, Option,
+ XMLHttpRequest, and Audio constructor objects with a reference to
+ the document's JS wrapper.
+
+ Tests: fast/dom/constructors-cached-navigate.html
+ fast/dom/constructors-cached.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::mark):
+ * bindings/js/JSAudioConstructor.h:
+ (WebCore::JSAudioConstructor::document):
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::getDOMConstructor):
+ (WebCore::JSDOMWindowBase::getValueProperty):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSHTMLOptionElementConstructor.cpp:
+ (WebCore::JSHTMLOptionElementConstructor::mark):
+ * bindings/js/JSHTMLOptionElementConstructor.h:
+ (WebCore::JSHTMLOptionElementConstructor::document):
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::mark):
+ * bindings/js/JSImageConstructor.h:
+ (WebCore::JSImageConstructor::document):
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::JSXMLHttpRequestConstructor::mark):
+ * bindings/js/JSXMLHttpRequestConstructor.h:
+ (WebCore::JSXMLHttpRequestConstructor::document):
+
+2008-09-26 Simon Hausmann <hausmann@webkit.org>
+
+ Unreviewed one-liner build fix for the Qt/Windows build.
+
+ The build requires NPAPI support to be enabled, fix the condition in
+ the .pro file for that.
+
+ * WebCore.pro:
+
+2008-09-26 Trenton Schulz <twschulz@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compilation with the Qt/Cocoa port.
+
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+
+2008-09-26 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Holger.
+
+ Fix compilation with VC9SP1, work around bug in TR1 library by
+ disabling it.
+
+ * WebCore.pro:
+
+2008-09-26 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Holger.
+
+ Fix an lupdate() warning.
+
+ Don't use tr() in a class that is not a QObject, use
+ QCoreApplication::translate() directly.
+
+ * platform/qt/ScrollbarQt.cpp:
+ (WebCore::Scrollbar::handleContextMenuEvent):
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ Remove the scrollTo() method from FrameView, since it is not used by anyone.
+
+ Reviewed by Oliver Hunt
+
+ * page/FrameView.cpp:
+ * page/FrameView.h:
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ Make scrollRectIntoViewRecursively cross-platform.
+
+ Reviewed by Oliver Hunt
+
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::scrollRectIntoViewRecursively):
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21133
+
+ Rename resizeContents method on ScrollView to setContentsSize (to match contentsSize()). Make it
+ cross-platform.
+
+ Reviewed by Oliver Hunt
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::begin):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::adjustViewSize):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::setContentsSize):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/gtk/ScrollViewGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformSetContentsSize):
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformSetContentsSize):
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21132
+
+ Clean up the methods that actually do the scrolling in ScrollView.
+
+ Reviewed by Oliver Hunt
+
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::restoreScrollPositionAndViewState):
+ * loader/ImageDocument.cpp:
+ (WebCore::ImageDocument::imageClicked):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::scrollBy):
+ (WebCore::DOMWindow::scrollTo):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scrollTo):
+ (WebCore::FrameView::setScrollPosition):
+ * page/FrameView.h:
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::maximumScrollPosition):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::contentsWidth):
+ (WebCore::ScrollView::contentsHeight):
+ (WebCore::ScrollView::scrollBy):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::setScrollPosition):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+ (WebCore::ScrollView::scrollRectIntoViewRecursively):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+ (WebCore::ScrollView::scrollRectIntoViewRecursively):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::setScrollPosition):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollByRecursively):
+ (WebCore::RenderLayer::scrollRectToVisible):
+
+2008-09-25 Dan Bernstein <mitz@apple.com>
+
+ - attempted Windows build fix
+
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::setContentsPos):
+ (WebCore::ScrollView::paint):
+
+2008-09-25 Timothy Hatcher <timothy@apple.com>
+
+ Revert the padding changes done in r36905 to prevent the
+ scrollbar from overlapping the URLs in the Console.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21126
+
+ * page/inspector/inspector.css:
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21129
+
+ Refactor contents size and scroll offset to be cross-platform. Reduce further the number
+ of platform-specific methods required of ScrollView implementations.
+
+ Reviewed by Tim Hatcher
+
+ * dom/MouseRelatedEvent.cpp:
+ (WebCore::contentsX):
+ (WebCore::contentsY):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::scrollLeft):
+ (WebCore::HTMLBodyElement::setScrollLeft):
+ (WebCore::HTMLBodyElement::scrollTop):
+ (WebCore::HTMLBodyElement::setScrollTop):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::saveScrollPositionAndViewStateToItem):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::scrollX):
+ (WebCore::DOMWindow::scrollY):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::hitTestResultAtPoint):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::scrollTo):
+ (WebCore::FrameView::windowClipRect):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::visibleContentRect):
+ (WebCore::ScrollView::contentsSize):
+ (WebCore::ScrollView::platformContentsSize):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::scrollPosition):
+ (WebCore::ScrollView::scrollOffset):
+ (WebCore::ScrollView::scrollX):
+ (WebCore::ScrollView::scrollY):
+ (WebCore::ScrollView::contentsWidth):
+ (WebCore::ScrollView::contentsHeight):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::adjustmentChanged):
+ (WebCore::ScrollView::setGtkAdjustments):
+ (WebCore::ScrollView::resizeContents):
+ (WebCore::ScrollView::contentsWidth):
+ (WebCore::ScrollView::contentsHeight):
+ (WebCore::ScrollView::scrollOffset):
+ (WebCore::ScrollView::maximumScroll):
+ (WebCore::ScrollView::scrollBy):
+ (WebCore::ScrollView::suppressScrollbars):
+ (WebCore::ScrollView::setHScrollbarMode):
+ (WebCore::ScrollView::setVScrollbarMode):
+ (WebCore::ScrollView::setScrollbarsMode):
+ (WebCore::ScrollView::setFrameGeometry):
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::platformContentsSize):
+ (WebCore::ScrollView::scrollBy):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::convertFromContainingWindow):
+ (WebCore::Widget::convertToContainingWindow):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::resizeContents):
+ (WebCore::ScrollView::setFrameGeometry):
+ (WebCore::ScrollView::scrollOffset):
+ (WebCore::ScrollView::maximumScroll):
+ (WebCore::ScrollView::scrollBy):
+ (WebCore::ScrollView::setHScrollbarMode):
+ (WebCore::ScrollView::setVScrollbarMode):
+ (WebCore::ScrollView::setScrollbarsMode):
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::valueChanged):
+ (WebCore::ScrollView::ScrollViewPrivate::setAllowsScrolling):
+ (WebCore::ScrollView::resizeContents):
+ (WebCore::ScrollView::setFrameGeometry):
+ (WebCore::ScrollView::scrollOffset):
+ (WebCore::ScrollView::maximumScroll):
+ (WebCore::ScrollView::scrollBy):
+ (WebCore::ScrollView::setHScrollbarMode):
+ (WebCore::ScrollView::setVScrollbarMode):
+ (WebCore::ScrollView::setScrollbarsMode):
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformVisibleContentRect):
+ (WebCore::ScrollView::platformContentsSize):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::nodeAtPoint):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollRectToVisible):
+ (WebCore::RenderLayer::calculateClipRects):
+ (WebCore::RenderLayer::calculateRects):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::absolutePosition):
+ (WebCore::RenderView::computeAbsoluteRepaintRect):
+
+2008-09-25 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Dave Hyatt.
+
+ Fix a nasty regression I introduced in the previous commit, which caused infinite recursion on facebook.
+
+ * dom/Element.cpp:
+ (WebCore::Element::rareData):
+ * dom/Element.h:
+ * dom/Node.cpp:
+ (WebCore::Node::rareData):
+ * dom/Node.h:
+
+2008-09-25 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20980
+ Split off uncommonly used data from Node similar to ElementRareData
+
+ Saves an OwnPtr and a short on Node, as well as providing room for an isContainer bit,
+ which in turn allows inlining firstChild(), lastChild(), childNodeCount(), and childNode()
+ for a 5-10+% performance win on SlickSpeed and assorted speedups on other tests.
+
+ * WebCore.base.exp:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/ChildNodeList.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
+ * dom/ContainerNode.cpp: Set isContainer to true
+ (WebCore::ContainerNode::ContainerNode):
+ * dom/ContainerNode.h: These Node inlines are here to avoid including ContainerNode.h in Node.h
+ (WebCore::Node::containerChildNodeCount): Use ContainerNode's definition, having proved that the Node is a container
+ (WebCore::Node::containerChildNode): ditto
+ (WebCore::Node::containerFirstChild): ditto
+ (WebCore::Node::containerLastChild): ditto
+ * dom/Element.cpp: Most of the changes here are moving ElementRareData to ElementRareData.h and NodeRareData.h
+ (WebCore::Element::Element):
+ (WebCore::Element::~Element):
+ (WebCore::Element::rareData):
+ (WebCore::Element::ensureRareData): Renamed from createRareData
+ (WebCore::Element::createRareData): Used by ensureRareData to get the correct rareData type
+ (WebCore::Element::attach): Check hasRareData rather than null-checking rareData()
+ (WebCore::Element::detach): ditto
+ (WebCore::Element::recalcStyle): ditto
+ (WebCore::Element::focus):
+ (WebCore::Element::minimumSizeForResizing): ditto
+ (WebCore::Element::setMinimumSizeForResizing): ditto
+ (WebCore::Element::computedStyle):
+ (WebCore::Element::cancelFocusAppearanceUpdate): ditto
+ * dom/Element.h:
+ * dom/ElementRareData.h: Added; everything copied from Element.cpp
+ (WebCore::defaultMinimumSizeForResizing):
+ (WebCore::ElementRareData::ElementRareData):
+ (WebCore::ElementRareData::resetComputedStyle):
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::EventTargetNode): Pass the isContainer flag up the chain
+ * dom/EventTargetNode.h:
+ * dom/Node.cpp:
+ (WebCore::Node::Node):
+ (WebCore::Node::~Node): rareData cleanup code moved from Element and changed to use hasRareData
+ (WebCore::Node::rareData):
+ (WebCore::Node::ensureRareData):
+ (WebCore::Node::createRareData):
+ (WebCore::Node::tabIndex): nonzero tab indexes are now in rareData
+ (WebCore::Node::setTabIndexExplicitly):
+ (WebCore::Node::childNodes): NodeLists are now in rareData
+ (WebCore::Node::setFocus):
+ (WebCore::Node::rareDataFocused):
+ (WebCore::Node::isFocusable):
+ (WebCore::Node::isKeyboardFocusable):
+ (WebCore::Node::registerDynamicNodeList): NodeLists are now in rareData
+ (WebCore::Node::unregisterDynamicNodeList): ditto
+ (WebCore::Node::notifyLocalNodeListsAttributeChanged): ditto
+ (WebCore::Node::notifyLocalNodeListsChildrenChanged): ditto
+ (WebCore::Node::getElementsByName): ditto
+ (WebCore::Node::getElementsByClassName): ditto
+ * dom/Node.h:
+ (WebCore::Node::firstChild): Use isContainerNode() to devirtualize
+ (WebCore::Node::lastChild): ditto
+ (WebCore::Node::isContainerNode): Take advantage of a newly freed bit to store whether we're a container
+ (WebCore::Node::focused): focus is in rareData if set
+ (WebCore::Node::childTypeAllowed):
+ (WebCore::Node::childNodeCount): Use isContainerNode() to devirtualize
+ (WebCore::Node::childNode): ditto
+ (WebCore::Node::hasRareData): Use another newly freed bit to store whether we have rare data; avoids doing hash lookups in the common case
+ * dom/NodeRareData.h: Added. Most of this is just properties moved from Node
+ (WebCore::NodeListsNodeData::~NodeListsNodeData): Moved from Node.cpp since we NodeRareData needs to put them in a HashTable :(
+ (WebCore::NodeRareData::NodeRareData):
+ (WebCore::NodeRareData::rareDataMap):
+ (WebCore::NodeRareData::rareDataFromMap):
+ (WebCore::NodeRareData::clearNodeLists):
+ (WebCore::NodeRareData::setNodeLists):
+ (WebCore::NodeRareData::nodeLists):
+ (WebCore::NodeRareData::tabIndex):
+ (WebCore::NodeRareData::setTabIndex):
+ (WebCore::NodeRareData::tabIndexSetExplicitly):
+ * dom/TreeWalker.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
+ * xml/XPathUtil.cpp: Include ContainerNode to pick up its definitions for childNodeCount(), etc...
+
+2008-09-25 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon Hausmann.
+
+ [qt] ImageBuffer::toDataURL implementation
+
+ There needs to be a Qt specific test result for the above mentioned
+ implementation.
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::toDataURL):
+
+2008-09-25 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon Hausmann.
+
+ [qt] Implement SharedBuffer for Qt.
+
+ * WebCore.pro:
+ * platform/qt/SharedBufferQt.cpp: Added.
+ (WebCore::SharedBuffer::createWithContentsOfFile):
+ * platform/qt/TemporaryLinkStubs.cpp:
+
+2008-09-25 Feng Qian <feng@chromium.org>
+
+ Fix bug: https://bugs.webkit.org/show_bug.cgi?id=21032
+ <rdar://problem/6243032>
+
+ Reviewed by Dave Hyatt.
+
+ Test: fast/dom/attribute-downcast-right.html
+
+ Add isMappedAttribute function to Attribute for checking if an object
+ is an instance of MappedAttribute. Removed attributeItem,
+ getAttributeItem functions from NamedMappedAttrMap, and callers
+ expecting MappedAttribute have to check isMappedAttribute before
+ downcasting the return value to MappedAttribute.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::styleForElement):
+ * dom/Attribute.h:
+ (WebCore::Attribute::isMappedAttribute):
+ * dom/MappedAttribute.h:
+ (WebCore::MappedAttribute::isMappedAttribute):
+ * dom/NamedMappedAttrMap.cpp:
+ (WebCore::NamedMappedAttrMap::declCount):
+ (WebCore::NamedMappedAttrMap::mapsEquivalent):
+ * dom/NamedMappedAttrMap.h:
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::attributeChanged):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setInputType):
+ * svg/SVGForeignObjectElement.cpp:
+ (WebCore::addCSSPropertyAndNotifyAttributeMap):
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::getPresentationAttribute):
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21120
+
+ Make visibleContentRect cross-platform. Note this does add new horizontal/verticalScrollbar accessors
+ to a bunch of platforms. This is a temporary evil until the scrollbars get made cross-platform (and I
+ didn't want to mix that change in with this patch).
+
+ Reviewed by Sam Weinig
+
+ * page/Frame.cpp:
+ (WebCore::Frame::markAllMatchesForText):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::windowClipRect):
+ (WebCore::FrameView::updateControlTints):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::visibleContentRect):
+ (WebCore::ScrollView::platformVisibleContentRect):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::visibleWidth):
+ (WebCore::ScrollView::visibleHeight):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ (WebCore::ScrollView::platformVisibleContentRect):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::platformVisibleContentRect):
+ (WebCore::ScrollView::horizontalScrollbar):
+ (WebCore::ScrollView::verticalScrollbar):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::scrollRectToVisible):
+ (WebCore::frameVisibleRect):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::viewRect):
+
+2008-09-25 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Timothy Hatcher
+
+ https://bugs.webkit.org/show_bug.cgi?id=21052
+ Generalize id selector special case for querySelectorAll
+
+ By checking the element we get with getElementById against the selector, we can use the special case in many more circumstances.
+ Changes results on http://native.khan.mozilla.org
+ from
+ #title: 2ms
+ h1#title: 55ms
+ div #title: 55ms
+
+ to:
+ #title: 1ms
+ h1#title: 2ms
+ div #title: 5ms
+
+ * dom/Node.cpp:
+ (WebCore::Node::querySelector):
+ * dom/SelectorNodeList.cpp:
+ (WebCore::createSelectorNodeList):
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21118
+
+ Make the concept of whether you can blit on scroll cross-platform on ScrollView.
+
+ Reviewed by Sam Weinig
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::clear):
+ (WebCore::FrameView::layout):
+ (WebCore::FrameView::setUseSlowRepaints):
+ (WebCore::FrameView::addSlowRepaintObject):
+ (WebCore::FrameView::removeSlowRepaintObject):
+ * platform/ScrollView.cpp:
+ (WebCore::ScrollView::init):
+ (WebCore::ScrollView::addChild):
+ (WebCore::ScrollView::removeChild):
+ (WebCore::ScrollView::setCanBlitOnScroll):
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::canBlitOnScroll):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::ScrollView):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::platformAddChild):
+ (WebCore::ScrollView::platformRemoveChild):
+ (WebCore::ScrollView::platformSetCanBlitOnScroll):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::ScrollView):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::ScrollView):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::scrollBy):
+
+2008-09-25 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Bug 21109: Console should right-align urls
+
+ * page/inspector/Console.js: Re-order the message elements so that when
+ it overflows it doesn't get mixed in with the next message.
+ * page/inspector/inspector.css:
+
+2008-09-25 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21113
+
+ Putting r36771 back in with a fix to the addPendingSheet check in CSSImportRule::insertedIntoParent.
+
+ Reviewed by Darin Adler
+
+ * css/CSSImportRule.cpp:
+ (WebCore::CSSImportRule::insertedIntoParent):
+ * css/CSSRule.cpp:
+ (WebCore::CSSRule::parentStyleSheet):
+ (WebCore::CSSRule::parentRule):
+ * css/CSSStyleSheet.cpp:
+ (WebCore::CSSStyleSheet::CSSStyleSheet):
+ * css/CSSStyleSheet.h:
+
+2008-09-25 Darin Adler <darin@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21115
+ <rdar://problem/6245773> REGRESSION (r34702): Safari no longer zips
+ bundled documents
+
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::formData): Use files() instead of value()
+ to get the path, since value() now returns just the basename.
+
+2008-09-25 Brady Eidson <beidson@apple.com>
+
+ Rubberstamped by Mark Rowe
+
+ Roll out 36771 as it caused <rdar://problem/6246554>
+ "nytimes.com doesn't display after returning to it with back/forward"
+
+ * css/CSSImportRule.cpp:
+ (WebCore::CSSImportRule::insertedIntoParent):
+ * css/CSSRule.cpp:
+ (WebCore::CSSRule::parentStyleSheet):
+ (WebCore::CSSRule::parentRule):
+ * css/CSSStyleSheet.cpp:
+ (WebCore::CSSStyleSheet::CSSStyleSheet):
+ (WebCore::CSSStyleSheet::docLoader):
+ * css/CSSStyleSheet.h:
+ (WebCore::CSSStyleSheet::doc):
+
+2008-09-25 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * WebCore.vcproj/WebCore.vcproj: Add ScrollView.cpp to the project.
+
+2008-09-25 Dan Bernstein <mitz@apple.com>
+
+ - Windows build fix
+
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::addChildPlatformWidget):
+ (WebCore::ScrollView::removeChildPlatformWidget):
+
+2008-09-25 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a leak of ConsoleMessage seen when repeated console
+ messages occur.
+
+ Reviewed by Mark Rowe.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::addConsoleMessage): Delete the repeat
+ since we don't add it to m_consoleMessages.
+
+2008-09-25 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Bug 21105: XHRs logged in the console may show the wrong URL for the
+ source
+ - Get the url at the time of the send() and pass it on to the XHR.
+
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ * xml/XMLHttpRequest.h:
+ (WebCore::XMLHttpRequest::setLastSendURL):
+
+2008-09-25 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Geoff and Tim.
+
+ Bug 20322: XHRs logged in the console do not have line numbers
+ - Get the line number at the time of the send and pass it on to the XHR.
+
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::send):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::XMLHttpRequest):
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ * xml/XMLHttpRequest.h:
+ (WebCore::XMLHttpRequest::setLastSendLineNumber):
+
+2008-09-25 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ <rdar://problem/6171047> HTMLMediaElement "begin" event is now "loadstart"
+ https://bugs.webkit.org/show_bug.cgi?id=21003
+
+ * dom/EventNames.h: remove "begin" event
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::load): Post "loadstart" event instead of "begin"
+
+2008-09-25 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21097
+ Calling a MessageChannel constructor from a destroyed document results in a crash
+
+ Test: fast/events/message-port-constructor-for-deleted-document.html
+
+ * bindings/js/JSMessageChannelConstructor.cpp:
+ (WebCore::JSMessageChannelConstructor::construct):
+ * bindings/js/JSMessageChannelConstructor.h:
+ Made m_document a RefPtr.
+
+2008-09-24 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Sam Weinig, Anders Carlsson, and (unofficially) Adam Barth.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20879
+ Implement HTML5 channel messaging
+
+ Tests: fast/events/message-channel-gc.html
+ fast/events/message-port-deleted-document.html
+ fast/events/message-port-deleted-frame.html
+ fast/events/message-port-inactive-document.html
+ fast/events/message-port.html
+ http/tests/security/MessagePort/event-listener-context.html
+
+ * Configurations/WebCore.xcconfig:
+ Removed unused ENABLE_CROSS_DOCUMENT_MESSAGING macro.
+
+ * DerivedSources.make:
+ Added MessageChannel and MessagePort.
+
+ * WebCore.pro: Made MessageEvent compilation unconditional, as it could not possibly be
+ turmed off anyway. Added new files.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Added new files.
+
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowBase.cpp: (WebCore::JSDOMWindowBase::getValueProperty):
+ Added suport for window.MessageChannel constructor.
+
+ * bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::postMessage):
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::postMessage):
+ * page/DOMWindow.h:
+ * page/DOMWindow.idl:
+ Added support for three-argument postMessage (that posts a MessagePort).
+
+ * dom/EventTarget.cpp:
+ (WebCore::EventTarget::toMessagePort):
+ * dom/EventTarget.h:
+ * bindings/js/JSEventTargetBase.cpp: (WebCore::toJS): Added MessagePort as yet another
+ EventTarget variant.
+
+ * bindings/js/JSMessageChannelConstructor.h:
+ * bindings/js/JSMessageChannelConstructor.cpp: Added a custom constructor, so that it could
+ take a browsing context (document) parameter.
+
+ * bindings/js/JSMessageChannelCustom.cpp: Added.
+ (WebCore::JSMessageChannel::mark): JSMessageChannel uses a custom mark function to mark
+ port1 and port2 that it owns.
+
+ * bindings/js/JSMessagePortCustom.cpp: Added.
+ (WebCore::JSMessagePort::startConversation):
+ (WebCore::JSMessagePort::addEventListener):
+ (WebCore::JSMessagePort::removeEventListener):
+ (WebCore::JSMessagePort::dispatchEvent):
+ (WebCore::JSMessagePort::setOnmessage):
+ (WebCore::JSMessagePort::onmessage):
+ (WebCore::JSMessagePort::setOnclose):
+ (WebCore::JSMessagePort::onclose):
+ (WebCore::JSMessagePort::mark):
+ * dom/MessagePort.cpp: Added.
+ * dom/MessagePort.h: Added.
+ * dom/MessagePort.idl: Added.
+ Added a MessagePort implementation. Currently, it is not thread-safe at all, and only works
+ with Documents as contexts, but in the future, it will be used for communication with worker
+ threads.
+
+ * bindings/objc/DOMInternal.h: Include "DOMMessagePortInternal.h". The new APIs do not
+ really have Obj-C bindings, as they are far from being final, but a MessagePort stub is
+ needed for MessageEvent.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Include PlatformString.h for MessagePort happiness.
+
+ * dom/Document.cpp:
+ (WebCore::MessagePortTimer::MessagePortTimer):
+ (WebCore::MessagePortTimer::fired):
+ (WebCore::Document::processMessagePortMessagesSoon):
+ (WebCore::Document::~Document):
+ (WebCore::Document::dispatchMessagePortEvents):
+ (WebCore::Document::createdMessagePort):
+ (WebCore::Document::destroyedMessagePort):
+ * dom/Document.h:
+ Document keeps track of all MessagePort objects that were created when it was fully active
+ in its context.
+
+ * dom/EventNames.h: Added closeEvent.
+
+ * dom/MessageChannel.cpp: Added.
+ (WebCore::MessageChannel::MessageChannel):
+ (WebCore::MessageChannel::~MessageChannel):
+ * dom/MessageChannel.h: Added.
+ (WebCore::MessageChannel::create):
+ (WebCore::MessageChannel::port1):
+ (WebCore::MessageChannel::port2):
+ * dom/MessageChannel.idl: Added.
+ Addded JSMessageChannel implementation.
+
+ * dom/MessageEvent.cpp:
+ (WebCore::MessageEvent::MessageEvent):
+ (WebCore::MessageEvent::initMessageEvent):
+ * dom/MessageEvent.h:
+ (WebCore::MessageEvent::create):
+ (WebCore::MessageEvent::messagePort):
+ * dom/MessageEvent.idl:
+ MessageEvent has a MessagePort member now, making it possible to pass ports across
+ documents.
+
+2008-09-25 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Eric Seidel
+
+ fix https://bugs.webkit.org/show_bug.cgi?id=21091
+ Regression: querySelector matches tag names case sensitively
+
+ Tests: fast/dom/SelectorAPI/caseTag.html
+ fast/dom/SelectorAPI/caseTagX.xhtml
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseSelector): Add a Document argument, since tag case sensitivity is different for HTML documents
+ * css/CSSParser.h:
+ * dom/Node.cpp:
+ (WebCore::Node::querySelector):
+ (WebCore::Node::querySelectorAll):
+
+2008-09-24 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21084
+
+ Make the m_children member of ScrollView cross-platform. Consolidate children add/remove
+ functionality. Add platform stubs for connecting/disconnecting the platform widgets.
+
+ Reviewed by Sam Weinig
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::children):
+ * platform/Widget.h:
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::addChildPlatformWidget):
+ (WebCore::ScrollView::removeChildPlatformWidget):
+ (WebCore::ScrollView::geometryChanged):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::addChildPlatformWidget):
+ (WebCore::ScrollView::removeChildPlatformWidget):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::geometryChanged):
+ (WebCore::ScrollView::addChildPlatformWidget):
+ (WebCore::ScrollView::removeChildPlatformWidget):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::geometryChanged):
+ (WebCore::ScrollView::setParentVisible):
+ (WebCore::ScrollView::show):
+ (WebCore::ScrollView::hide):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::addChildPlatformWidget):
+ (WebCore::ScrollView::removeChildPlatformWidget):
+
+2008-09-25 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21024
+ <rdar://problem/6240821> Scrollbar not painted until hovered
+
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::setWidgetGeometry): Replaced resizeWidget with
+ this method, which sets both the location and the size.
+ (WebCore::RenderWidget::setWidget): Replaced the call to resizeWidget
+ with a call to the new method setWidgetGeometry. Positioning the
+ widget correctly ensures that the scroll bars invalidate correctly when
+ they are created and resized.
+ * rendering/RenderWidget.h:
+
+2008-09-24 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ - create a "style" subfolder under "rendering" and move style files to that folder
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-09-24 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ Remove staticFunctionGetter. There is only one remaining user of
+ staticFunctionGetter and it can be converted to use setUpStaticFunctionSlot.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::getOwnPropertySlot):
+
+2008-09-24 Jeremy Moskovich <jeremy@chromium.org>
+
+ Reviewed by Dan Bernstein.
+
+ Test: editing/spelling/inline_spelling_markers.html
+
+ - https://bugs.webkit.org/show_bug.cgi?id=20092
+ Spelling markers positioned incorrectly in RTL text
+
+ Measure spelling markers with selectionRectForText() to fix RTL.
+
+ This patch also fixes hit-testing for spelling marker tool tips,
+ which used to work only on the first line.
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paintSpellingOrGrammarMarker):
+
+2008-09-24 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21074
+
+ Make sure the viewless scrollbar knows how to paint properly when transformed.
+
+ Reviewed by Sam Weinig
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
+ (WebCore::ScrollbarThemeMac::paint):
+
+2008-09-24 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Not reviewed. Try to fix win build.
+
+ * bindings/js/JSSVGElementInstanceCustom.cpp:
+ (WebCore::toJS):
+ * dom/ContainerNodeAlgorithms.h:
+ (WebCore::removeAllChildrenInContainer):
+ (WebCore::appendChildToContainer):
+ (WebCore::Private::addChildNodesToDeletionQueue):
+
+2008-09-24 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Oliver.
+
+ Add ContainerNodeAlgorithms.h, as central place to share algorithms
+ operating on TreeShared-derived classes with a Node-style interface.
+
+ This allows SVGElementInstance & ContainerNode to share code.
+
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::removeAllChildren):
+ (WebCore::ContainerNode::addChild):
+ * dom/ContainerNode.h:
+ * dom/ContainerNodeAlgorithms.h: Added.
+ (WebCore::removeAllChildrenInContainer):
+ (WebCore::appendChildToContainer):
+ (WebCore::Private::NodeRemovalDispatcher::dispatch):
+ (WebCore::Private::addChildNodesToDeletionQueue):
+
+2008-09-24 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Wrap up dirtying the z-order list of the stacking context
+ RenderLayer into a method.
+ https://bugs.webkit.org/show_bug.cgi?id=21072
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::setHasVisibleContent):
+ (WebCore::RenderLayer::addChild):
+ (WebCore::RenderLayer::removeChild):
+ (WebCore::RenderLayer::dirtyStackingContextZOrderLists):
+ (WebCore::RenderLayer::styleChanged):
+ * rendering/RenderLayer.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::setStyle):
+
+2008-09-24 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ Bug 21070: REGRESSION Repeated messages with arguments are not repeated
+ or displayed multiple times
+ - The Insepctor Controller was comparing JSValue pointers so thought the
+ message was not a repeat, but the JS of the inspector compared the
+ strings and so knew it was the same message and so overwrote the old
+ message.
+
+ * page/InspectorController.cpp:
+ (WebCore::ConsoleMessage::isEqual):
+ (WebCore::InspectorController::addMessageToConsole):
+ (WebCore::InspectorController::addConsoleMessage):
+ (WebCore::InspectorController::startGroup):
+ (WebCore::InspectorController::endGroup):
+ * page/InspectorController.h:
+
+2008-09-24 David Hyatt <hyatt@apple.com>
+
+ Make sure the viewless Mac scrollbar responds properly to system preference changes (including the
+ arrow placement preference and the thumb jump preference).
+
+ Reviewed by Adam Roben
+
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ (WebCore::Scrollbar::~Scrollbar):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::registerScrollbar):
+ (WebCore::ScrollbarTheme::unregisterScrollbar):
+ * platform/mac/ScrollbarThemeMac.h:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (+[ScrollbarPrefsObserver appearancePrefsChanged:]):
+ (+[ScrollbarPrefsObserver behaviorPrefsChanged:]):
+ (+[ScrollbarPrefsObserver registerAsObserver]):
+ (WebCore::ScrollbarThemeMac::registerScrollbar):
+ (WebCore::ScrollbarThemeMac::unregisterScrollbar):
+ (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
+ (WebCore::ScrollbarThemeMac::preferencesChanged):
+
+2008-09-24 Rob Buis <buis@kde.org>
+
+ Reviewed by Darin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20557
+ getScreenCTM() returns wrong values
+
+ Use the absolute position of the svg root when
+ determining the screen ctm.
+
+ Test: svg/custom/getscreenctm-in-mixed-content2.xhtml
+
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::getScreenCTM):
+
+2008-09-24 David Hyatt <hyatt@apple.com>
+
+ Turn off support for CSS variables.
+
+ * ChangeLog:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::createVariablesRule):
+ (WebCore::CSSParser::addVariable):
+ (WebCore::CSSParser::addVariableDeclarationBlock):
+
+2008-09-24 David Hyatt <hyatt@apple.com>
+
+ Back out the alternate forms of CSS variable call syntax (leaving only the -webkit-var version).
+
+ * css/CSSGrammar.y:
+ * css/CSSParserValues.cpp:
+ (WebCore::CSSParserValue::isVariable):
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cleanup):
+ (WebCore::CSSPrimitiveValue::getStringValue):
+ (WebCore::CSSPrimitiveValue::cssText):
+ (WebCore::CSSPrimitiveValue::parserValue):
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::):
+ (WebCore::CSSPrimitiveValue::isVariable):
+
+2008-09-24 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a regression where the "incorrect MIME-type" warning would not
+ show up correctly in the Console or the resources sidebar.
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/Resource.js:
+ (WebInspector.Resource.prototype._addTip): Add the repeat count argument
+ to the WebInspector.ConsoleMessage constructor call.
+ (WebInspector.Resource.prototype._checkWarning): Ditto.
+
+2008-09-23 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Remove deprecated JS Qt bindings object call/construct code and fix autotests
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::QtInstance):
+ * bridge/qt/qt_instance.h:
+
+2008-09-23 Julien Chaffraix <jchaffraix@pleyo.com>
+
+ Reviewed by Alp Toker. Landed by Jan Alonzo.
+
+ Bug 20883: [CURL] Add deferred loading
+ https://bugs.webkit.org/show_bug.cgi?id=20883
+
+ Implement deferred loading for the libcURL backend using curl_easy_pause.
+ As the method was introduced in version 7.18.0, all the code checks for libcURL
+ version.
+
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::ResourceHandle::setDefersLoading):
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::writeCallback): Add an assertion that deferred loading is not
+ activated.
+ (WebCore::headerCallback): Ditto.
+ (WebCore::readCallback): Ditto.
+ (WebCore::ResourceHandleManager::dispatchSynchronousJob): Force
+ defersLoading to be false in order to avoid triggering an assertion.
+ (WebCore::ResourceHandleManager::initializeHandle): If deferred loading is
+ activated, pause the easy handle.
+
+2008-09-23 Matt Lilek <webkit@mattlilek.com>
+
+ Reviewed by Tim Hatcher.
+
+ Inspector search field style tweaks.
+
+ * page/inspector/inspector.css:
+
+2008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Eric.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=21046 (Several LayoutTests crash)
+
+ Fix missing negation in EventTargetNode::insertedIntoDocument.
+ Made handleLocalEvents() virtual again, HTMLFormElement overrides it.
+ Remove code, that wasn't supposed to go in in dispatchGenericEvent().
+
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::insertedIntoDocument):
+ (WebCore::EventTargetNode::dispatchGenericEvent):
+ * dom/EventTargetNode.h:
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Adds search support to the Profiles panel.
+
+ The Profiles panel supports a few types of queries:
+ * Standard string matching for function names and file URLs.
+ * Greater than and less than search for numeric columns.
+ So a query of ">24" will match all rows that have calls
+ greater than 24. Or "<=42" will match all 42 or less.
+ * Percent and time units. Adding a unit of "s", "ms" or "%"
+ is supported and will match only the Self and Total columns.
+ So a query of ">1.25s" will match all rows that took longer
+ than 1.25 seconds.
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ProfileView.js:
+ (WebInspector.ProfileView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
+ it will start at the first result.
+ (WebInspector.ProfileView.prototype.refreshShowAsPercents): Moved from the bottom of the file.
+ (WebInspector.ProfileView.prototype.searchCanceled): Clear the search properties and refresh highlighted
+ data grid nodes.
+ (WebInspector.ProfileView.prototype.performSearch): Search the profile nodes.
+ (WebInspector.ProfileView.prototype.jumpToFirstSearchResult): Does what the function says. Calls _jumpToSearchResult.
+ (WebInspector.ProfileView.prototype.jumpToLastSearchResult): Ditto.
+ (WebInspector.ProfileView.prototype.jumpToNextSearchResult): Ditto.
+ (WebInspector.ProfileView.prototype.jumpToPreviousSearchResult): Ditto.
+ (WebInspector.ProfileView.prototype.showingFirstSearchResult): Does what the function says.
+ (WebInspector.ProfileView.prototype.showingLastSearchResult): Ditto.
+ (WebInspector.ProfileView.prototype._jumpToSearchResult): Select and reveal the profile node.
+ Expand all the ancestors first so the profile node will have a DataGridNode.
+ (WebInspector.ProfileView.prototype._changeView): Perform the search again on the new tree.
+ (WebInspector.ProfileDataGridNode.prototype.createCell): Add the highlight class to cells that
+ have search matches.
+ * page/inspector/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
+ (WebInspector.ProfilesPanel.prototype.showProfile): Use profileViewForProfile.
+ (WebInspector.ProfilesPanel.prototype.showView): Call showProfile. Used by Panel to show a view.
+ (WebInspector.ProfilesPanel.prototype.profileViewForProfile): Create the ProfileView if needed.
+ (WebInspector.ProfilesPanel.prototype.closeVisibleView): Renamed visibleProfileView to visibleView.
+ (WebInspector.ProfilesPanel.prototype.get searchableViews): Return all the views.
+ (WebInspector.ProfilesPanel.prototype.searchMatchFound): Update the sidebar search matches.
+ (WebInspector.ProfilesPanel.prototype.searchCanceled): Clear all the sidebar search matches.
+ (WebInspector.ProfileSidebarTreeElement.prototype.set searchMatches): Set the class and bubbleText.
+ * page/inspector/inspector.css: New style rules for the cell highlight color.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Adds search support to the Resources and Scripts panels.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/Images/searchSmallBlue.png: Added.
+ * page/inspector/Images/searchSmallBrightBlue.png: Added.
+ * page/inspector/Images/searchSmallGray.png: Added.
+ * page/inspector/Images/searchSmallWhite.png: Added.
+ * page/inspector/ResourceView.js:
+ (WebInspector.ResourceView.prototype.attach): Attempt to attach to "resource-views"
+ or "script-resource-views" since one might not be created yet.
+ * page/inspector/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.show): Hide any views that are visible that
+ are not this panel's current visible view. This can happen when a ResourceView is
+ visible in the Scripts panel then switched to the this panel.
+ (WebInspector.ResourcesPanel.prototype.get searchableViews): Return all views, with the
+ visibleView first.
+ (WebInspector.ResourcesPanel.prototype.searchResultsSortFunction): Return a sort function
+ that uses the current graph search function. So cycling through results will be in the order
+ things appear in the sidebar.
+ (WebInspector.ResourcesPanel.prototype.searchMatchFound): Update the search matches on the
+ resource's sidebar tree element.
+ (WebInspector.ResourcesPanel.prototype.searchCanceled): Restore the error and warning bubbles
+ in the sidebar. Calls the Panel prototype's searchCanceled.
+ (WebInspector.ResourcesPanel.prototype.performSearch): Hide all the error and warning bubbles
+ in the sidebar. Calls the Panel prototype's performSearch.
+ (WebInspector.ResourcesPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
+ (WebInspector.ResourcesPanel.prototype.addMessageToResource): Don't call updateErrorsAndWarnings
+ if there is a current search query.
+ (WebInspector.ResourcesPanel.prototype.clearMessages): Ditto.
+ (WebInspector.ResourcesPanel.prototype.recreateViewForResourceIfNeeded): Ditto.
+ (WebInspector.ResourcesPanel.prototype.showView): Call showResource. Used by Panel to show a view.
+ (WebInspector.ResourceSidebarTreeElement.prototype.resetBubble): Clear all the classes and content.
+ (WebInspector.ResourceSidebarTreeElement.prototype.set searchMatches): Set the bubbleText and class.
+ (WebInspector.ResourceSidebarTreeElement.prototype.updateErrorsAndWarnings): Call resetBubble.
+ * page/inspector/ScriptView.js:
+ (WebInspector.ScriptView): Set _sourceFrameSetup to flase.
+ (WebInspector.ScriptView.prototype.hide): Reset _currentSearchResultIndex to -1. So the next time
+ it will start at the first result.
+ (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): Add an event listener for "syntax
+ highlighting complete".
+ (WebInspector.ScriptView.prototype): Share many methods with SourceView.
+ * page/inspector/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.show): Hide any views that are visible that are not this
+ This can happen when a ResourceView is visible in the Resources panel then switched to the this panel.
+ (WebInspector.ScriptsPanel.prototype.get searchableViews): Return all views, with the visibleView first.
+ (WebInspector.ScriptsPanel.prototype.reset): Call searchCanceled and delete the currentQuery.
+ (WebInspector.ScriptsPanel.prototype.showView): Call _showScriptOrResource. Used by Panel to show a view.
+ (WebInspector.ScriptsPanel.prototype._sourceViewForScriptOrResource): Added helper.
+ * page/inspector/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript): Dispatch a "syntax highlighting complete" event.
+ * page/inspector/SourceView.js:
+ (WebInspector.SourceView.prototype.hide):
+ (WebInspector.SourceView.prototype.detach):
+ (WebInspector.SourceView.prototype._resourceLoadingFinished): Moved from the bottom of the file.
+ (WebInspector.SourceView.prototype._addBreakpoint): Ditto.
+ (WebInspector.SourceView.prototype.searchCanceled): Delete search properties.
+ (WebInspector.SourceView.prototype.performSearch): Search the frame if it is loaded, otherwise
+ store the worker function as _delayedFindSearchMatches and call it later in _sourceFrameSetupFinished.
+ (WebInspector.SourceView.prototype.jumpToFirstSearchResult):
+ (WebInspector.SourceView.prototype.jumpToLastSearchResult):
+ (WebInspector.SourceView.prototype.jumpToNextSearchResult):
+ (WebInspector.SourceView.prototype.jumpToPreviousSearchResult):
+ (WebInspector.SourceView.prototype.showingFirstSearchResult):
+ (WebInspector.SourceView.prototype.showingLastSearchResult):
+ (WebInspector.SourceView.prototype._jumpToSearchResult): Selects the found Range.
+ (WebInspector.SourceView.prototype._sourceFrameSetupFinished): Calls _delayedFindSearchMatches.
+ (WebInspector.SourceView.prototype._syntaxHighlightingComplete): Call _sourceFrameSetupFinished.
+ * page/inspector/inspector.css:
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Rename some properties of ResourcesPanel and ScriptsPanel to be the same,
+ so future code can be shared.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ResourcesPanel.js: Renamed resourceViews to viewsContainerElement.
+ And visibleResourceView to visibleView.
+ * page/inspector/ScriptsPanel.js: Renamed scriptResourceViews to viewsContainerElement.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Highlight all matched search results in the Elements panel DOM tree.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.searchCanceled): Clear the highlight
+ on all previous search results.
+ (WebInspector.ElementsPanel.prototype.performSearch): Set the hihglight
+ on all new search results.
+ * page/inspector/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeElement): Delay setting the title until onattach.
+ (WebInspector.ElementsTreeElement.prototype.get/set highlighted): Sets or removes
+ the highlighted class on the listItemElement.
+ (WebInspector.ElementsTreeElement.prototype.onattach): Set the highlighted class
+ if needed. Calls _updateTitle.
+ (WebInspector.ElementsTreeElement.prototype._updateTitle): Adds a span with the highlight
+ class so it can be styled when the highlighted class is present.
+ * page/inspector/inspector.css: New style rules for the hihglight.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Add search support to the Elements panel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.searchCanceled): Call updateSearchMatchesCount
+ with a 0 match count to rest. Reset the other search properties.
+ (WebInspector.ElementsPanel.prototype.performSearch): Evaluates the search as an XPath
+ query and a CSS selector on all the Documents in the page. Remembers the found nodes
+ and avoids duplicates. Focuses the first result.
+ (WebInspector.ElementsPanel.prototype.jumpToNextSearchResult): Focuses the next result.
+ (WebInspector.ElementsPanel.prototype.jumpToPreviousSearchResult): Focuses the previous result.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Add support to Panel that allows easy searching of sub-views.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/Panel.js:
+ (WebInspector.Panel.prototype.searchCanceled): Call searchCanceled on all the
+ views in the search results and delete the currentQuery property. Call
+ WebInspector.updateSearchMatchesCount wit ha 0 match count to rest. Reset the
+ other search properties.
+ (WebInspector.Panel.prototype.performSearch): Call searchCanceled since it will
+ reset everything we need before doing a new search. Get an array of searchableViews
+ from the panel, implemented by sub-classes. Iterate over the views one-by-one
+ with an interval to prevent blocking the UI for large lists of searchableViews.
+ This keeps the interface really responsive. Pass a finishedCallback function to
+ the performSearch on each view so it can notify the panel of results.
+ (WebInspector.Panel.prototype.jumpToNextSearchResult): Finds the index in the
+ searchResults of the visibleView, so we know where in the results we are.
+ This is done every time incase the user manually navigates to a new view.
+ If the view is showing the last result, jump to the next view and show it's
+ first result. Otherwise jump to the next result in the current view.
+ (WebInspector.Panel.prototype.jumpToPreviousSearchResult): Ditto, but in reverse.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Add support for asking the current panel to perform a search, find next/previous and clear.
+ A search is performed on the new new current panel when switching between panels. The search
+ label/placeholder in the toolbar now includes the panel name to make it clear that panel will
+ be searched. The search field contents are selected when Command/Control-F or Enter/Return
+ is pressed, so the user can easily type an entirely new query. The search match count shows
+ up in the toolbar next to the search field.
+
+ Also changed:
+ * Rename lastQuery to currentQuery since it better matches the truth.
+ * Set the search field "results" attribute to zero since results arn't saved for
+ how we use the search field.
+ * Make repeated presses of the Return key jump to the next search result instead
+ of doing nothing.
+ * Increased the search field width.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * English.lproj/localizedStrings.js: New strings.
+ * page/inspector/inspector.css: New styles.
+ * page/inspector/inspector.html: Add the search-results-matches element. Add the
+ incremental attribute to the search field and set the results attribute to zero.
+ * page/inspector/inspector.js:
+ (WebInspector.set currentPanel): perform the search on the new panel.
+ (WebInspector.loaded): Change the event listeners and remove code that changes
+ the search label text.
+ (WebInspector.documentKeyDown): Add support for Command/Control-G and
+ Command/Control-Shift-G. To jump to the next and previous search results.
+ (WebInspector.updateSearchLabel): Added. Update the search placeholder/label.
+ This does different things depending on the attached state.
+ (WebInspector.searchKeyDown): Call preventDefault since this was the Enter key.
+ This prevents a "search" event from firing for key down. We handle the Enter key
+ on key up in searchKeyUp. This stops performSearch from being called twice in a row.
+ (WebInspector.searchKeyUp): Calls performSearch when it is the Enter key.
+ (WebInspector.performSearch): Delete the currentQuery property and call searchCanceled
+ on all the panels. Call jumpToNextSearchResult when this is the same query or a forced search.
+ Call updateSearchMatchesCount to reset the matches count in the toolbar.
+ (WebInspector.updateSearchMatchesCount): Added. Updates the matches count in the toolbar.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Remove the previous Inspector search code to make room for the new stuff.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21005
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/inspector.css:
+ * page/inspector/inspector.html:
+ * page/inspector/inspector.js:
+ (WebInspector.get/set showingSearchResults): Removed.
+ (WebInspector.searchResultsKeyDown): Removed.
+ (WebInspector.searchResultsResizerDragStart): Removed.
+ (WebInspector.searchResultsResizerDragEnd): Removed.
+ (WebInspector.searchResultsResizerDrag): Removed.
+ (WebInspector.performSearch): Removed searching parts.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Use the Array.remove helper function in more places.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21037
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ResourceCategory.js:
+ (WebInspector.ResourceCategory.prototype.removeResource): Use Array.remove.
+ * page/inspector/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel.prototype.removeResource): Ditto.
+ * page/inspector/inspector.js:
+ (WebInspector.removeResource): Ditto.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where inspecting a node after reloading the page
+ would not reveal the node in the DOM tree. The TreeOutline
+ was not being told to forget decendants of a removed child.
+ So old TreeElements would be found that are not in the tree.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21036
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/treeoutline.js:
+ (TreeOutline._removeChildAtIndex): Call _forgetChildrenRecursive
+ in addition to _forgetTreeElement.
+ (TreeOutline._removeChildren): Call _forgetChildrenRecursive
+ in addition to _forgetTreeElement.
+ (TreeOutline._rememberTreeElement): Use Array.indexOf to quickly
+ search for known elements.
+ (TreeOutline._forgetTreeElement): Use Array.remove to remove elements.
+ (TreeOutline._forgetChildrenRecursive): Recursively traverse the
+ descendants and call _forgetTreeElement.
+ * page/inspector/utilities.js:
+ (Array.prototype.remove): Speed up this function by using Array.indexOf
+ when onlyFirst is true.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where inspecting some short text nodes does
+ not reveal them in the Elements panel DOM tree.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21035
+
+ Reviewed by Oliver Hunt.
+
+ * page/inspector/ElementsTreeOutline.js:
+ (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode):
+ The revealAndSelectNode() method might find a different element
+ if there is inlined text, and the select() call would change the
+ focusedDOMNode and reenter this setter. So to avoid calling
+ focusedNodeChanged() twice, first check if _focusedDOMNode is
+ the same node as the one passed in.
+ (WebInspector.ElementsTreeOutline.prototype.update): Remove use of
+ this.treeOutline, since this is the TreeOutline.
+ (WebInspector.ElementsTreeOutline.prototype.findTreeElement): Added.
+ Provides default functions for isAncestor, getParet and equal.
+ Calls the base protoype's findTreeElement. If that returns null
+ and the node is a text node, try finding it's parent.
+ (WebInspector.ElementsTreeOutline.prototype.revealNode): Removed.
+ Renamed to revealAndSelectNode.
+ (WebInspector.ElementsTreeOutline.prototype.revealAndSelectNode):
+ Selects and reveals the node passed in. Use the simple findTreeElement.
+ (WebInspector.ElementsTreeOutline.prototype._treeElementFromEvent):
+ Remove use of this.treeOutline, since this is the TreeOutline.
+
+2008-09-23 Timothy Hatcher <timothy@apple.com>
+
+ Fixes an exception that happened when removing a Resource
+ from the ResourcesPanel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21034
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ResourcesPanel.js:
+ (WebInspctor.ResourcesPanel.prototype.removeResource):
+ Remove the graphElement.
+
+2008-09-23 Kevin McCullough <kmccullough@apple.com>
+
+ Fixed "Time" to "Tim"
+
+ * ChangeLog:
+
+2008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Oliver.
+
+ Move mapInstanceToElement/removeInstanceMapping/instancesForElement
+ from SVGDocumentExtensions to SVGElement. It's more useful to store
+ the list of SVGElementInstances per SVGElement, instead of using
+ a document-wide hash for this purpose.
+
+ * svg/SVGAnimateMotionElement.cpp:
+ (WebCore::SVGAnimateMotionElement::applyResultsToTarget):
+ * svg/SVGAnimateTransformElement.cpp:
+ (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
+ * svg/SVGAnimationElement.cpp:
+ (WebCore::SVGAnimationElement::setTargetAttributeAnimatedValue):
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::SVGDocumentExtensions::~SVGDocumentExtensions):
+ * svg/SVGDocumentExtensions.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::mapInstanceToElement):
+ (WebCore::SVGElement::removeInstanceMapping):
+ (WebCore::SVGElement::instancesForElement):
+ * svg/SVGElement.h:
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::SVGElementInstance):
+ (WebCore::SVGElementInstance::~SVGElementInstance):
+ (WebCore::SVGElementInstance::updateAllInstancesOfElement):
+ * svg/SVGElementInstance.h:
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::svgAttributeChanged):
+ (WebCore::SVGStyledElement::childrenChanged):
+ * svg/SVGStyledElement.h:
+
+2008-09-23 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix.
+
+ * WebCoreSources.bkl:
+
+2008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Rubber stamped by Sam.
+
+ Move code from EventTarget to EventTargetNode.
+
+ I refactored most parts to live in EventTarget, a year ago,
+ though the implementation of EventTargetSVGElementInstance is
+ done in another way, that obsoletes this.
+
+ * dom/Document.cpp:
+ (WebCore::Document::addListenerTypeIfNeeded):
+ * dom/Document.h:
+ * dom/EventTarget.cpp:
+ * dom/EventTarget.h:
+ (WebCore::allowEventDispatch):
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::insertedIntoDocument):
+ (WebCore::EventTargetNode::removedFromDocument):
+ (WebCore::EventTargetNode::willMoveToNewOwnerDocument):
+ (WebCore::EventTargetNode::didMoveToNewOwnerDocument):
+ (WebCore::EventTargetNode::addEventListener):
+ (WebCore::EventTargetNode::removeEventListener):
+ (WebCore::EventTargetNode::removeAllEventListeners):
+ (WebCore::EventTargetNode::handleLocalEvents):
+ (WebCore::setCurrentEventTargetRespectingSVGTargetRules):
+ (WebCore::EventTargetNode::dispatchEvent):
+ (WebCore::EventTargetNode::dispatchGenericEvent):
+ (WebCore::EventTargetNode::dispatchWindowEvent):
+ (WebCore::EventTargetNode::removeEventListenerForType):
+ * dom/EventTargetNode.h:
+ * svg/EventTargetSVGElementInstance.cpp:
+ (WebCore::EventTargetSVGElementInstance::dispatchEvent):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::sendSVGLoadEventIfPossible):
+ * svg/SVGElement.h:
+ (WebCore::SVGElement::supplementalTransform):
+
+2008-09-23 Dave Hyatt <hyatt@apple.com>
+
+ Fix for bug 21012. The Aqua scrollbar was returning the wrong track rect on Windows Aqua theme. Make
+ sure to not accidentally fall into the vertical scrollbar case for horizontal scrollbars. :)
+
+ Reviewed by Sam Weinig
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::trackRect):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::ScrollbarThemeSafari::trackRect):
+
+2008-09-23 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=21041 "Add Contact"
+ link at gmail does not support AXPress action
+ and corresponding: <rdar://problem/6216178>
+
+ I fixed this bug by making AccessibilityObject::anchorElement
+ support ARIA links.
+
+ * page/AccessibilityImageMapLink.cpp:
+ (WebCore::AccessibilityImageMapLink::anchorElement):
+ * page/AccessibilityImageMapLink.h:
+ * page/AccessibilityObject.cpp:
+ (WebCore::AccessibilityObject::anchorElement):
+ * page/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::isNativeAnchor):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isNativeAnchor):
+ (WebCore::AccessibilityRenderObject::anchorElement):
+ (WebCore::AccessibilityRenderObject::internalLinkElement):
+ (WebCore::AccessibilityRenderObject::url):
+ * page/AccessibilityRenderObject.h:
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (AXLinkElementForNode):
+
+2008-09-23 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim and Oliver.
+
+ Bug 20949: Catch repeated messages in Inspector Controller to limit
+ memory usage
+ - Store the repeat count in the Console Message object, in the
+ Inspector Controller and JS ConsoleMessage object.
+
+ * page/InspectorController.cpp:
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ (WebCore::ConsoleMessage::operator==):
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::addConsoleMessage):
+ (WebCore::InspectorController::addScriptConsoleMessage):
+ * page/InspectorController.h:
+ * page/inspector/Console.js:
+ * page/inspector/Resource.js:
+ * page/inspector/ResourcesPanel.js:
+ * page/inspector/SourceFrame.js:
+
+2008-09-23 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Eric.
+
+ Working on proper EventTarget support for SVGElementInstance.
+
+ Add new EventTargetSVGElementInstance class, and it's corresponding JS wrapper.
+ Finally JSEventTargetBase, is actually used for another class than JSEventTargetnode.
+
+ Remove EventTarget inheritance from SVGElementInstance, and the manual "TreeShared"
+ implementation. Let it use TreeShared directly.
+
+ It's not activated so far (SVGUseElement still creating SVGElementInstance objects).
+ The transition to EventTargetSVGElementInstance will be done in a few individual patches.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSEventTargetBase.cpp:
+ (WebCore::retrieveEventTargetAndCorrespondingNode):
+ (WebCore::toJS):
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSEventTargetSVGElementInstance.cpp: Added.
+ (WebCore::):
+ (WebCore::JSEventTargetSVGElementInstance::JSEventTargetSVGElementInstance):
+ (WebCore::JSEventTargetSVGElementInstance::createPrototype):
+ (WebCore::JSEventTargetSVGElementInstance::setListener):
+ (WebCore::JSEventTargetSVGElementInstance::getListener):
+ (WebCore::toEventTargetSVGElementInstance):
+ * bindings/js/JSEventTargetSVGElementInstance.h: Added.
+ (WebCore::JSEventTargetSVGElementInstance::prototypeClassName):
+ (WebCore::JSEventTargetSVGElementInstance::getOwnPropertySlot):
+ (WebCore::JSEventTargetSVGElementInstance::getValueProperty):
+ (WebCore::JSEventTargetSVGElementInstance::put):
+ (WebCore::JSEventTargetSVGElementInstance::putValueProperty):
+ * bindings/js/JSSVGElementInstanceCustom.cpp: Added.
+ (WebCore::toJS):
+ * bindings/objc/DOM.mm:
+ (+[DOMNode _wrapEventTarget:WebCore::]):
+ (-[DOMSVGElementInstance _initWithSVGElementInstance:WebCore::]):
+ (+[DOMSVGElementInstance _wrapSVGElementInstance:WebCore::]):
+ (+[DOMSVGElementInstance _wrapEventTarget:WebCore::]):
+ (-[DOMSVGElementInstance WebCore::]):
+ (-[DOMSVGElementInstance addEventListener:listener:useCapture:]):
+ (-[DOMSVGElementInstance addEventListener:::]):
+ (-[DOMSVGElementInstance removeEventListener:listener:useCapture:]):
+ (-[DOMSVGElementInstance removeEventListener:::]):
+ (-[DOMSVGElementInstance dispatchEvent:]):
+ * bindings/objc/DOMEvents.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ * svg/EventTargetSVGElementInstance.cpp: Added.
+ (WebCore::EventTargetSVGElementInstance::EventTargetSVGElementInstance):
+ (WebCore::EventTargetSVGElementInstance::~EventTargetSVGElementInstance):
+ (WebCore::EventTargetSVGElementInstance::addEventListener):
+ (WebCore::EventTargetSVGElementInstance::removeEventListener):
+ (WebCore::EventTargetSVGElementInstance::dispatchEvent):
+ * svg/EventTargetSVGElementInstance.h: Added.
+ (WebCore::EventTargetSVGElementInstance::isEventTargetSVGElementInstance):
+ (WebCore::EventTargetSVGElementInstance::toNode):
+ (WebCore::EventTargetSVGElementInstance::toSVGElementInstance):
+ (WebCore::EventTargetSVGElementInstance::refEventTarget):
+ (WebCore::EventTargetSVGElementInstance::derefEventTarget):
+ (WebCore::EventTargetSVGElementInstanceCast):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::dispatchEvent):
+ * svg/SVGElementInstance.cpp:
+ (WebCore::SVGElementInstance::SVGElementInstance):
+ (WebCore::SVGElementInstance::~SVGElementInstance):
+ * svg/SVGElementInstance.h:
+ (WebCore::SVGElementInstance::isEventTargetSVGElementInstance):
+ * svg/SVGElementInstance.idl:
+
+2008-09-23 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=21040
+ Pass NULL instead of the identity matrix to CTFontCreateWithGraphicsFont()
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::getCTFont):
+
+2008-09-23 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21039
+
+ Teach the viewless Mac scrollbar how to avoid NSWindow's resizer.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollView.h:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::setFrameGeometry):
+ * platform/Scrollbar.h:
+ * platform/Widget.cpp:
+ (WebCore::Widget::convertFromContainingWindow):
+ * platform/Widget.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::ScrollView):
+ (WebCore::ScrollView::~ScrollView):
+ (WebCore::ScrollView::windowResizerRect):
+ (WebCore::ScrollView::resizerOverlapsContent):
+ (WebCore::ScrollView::adjustOverlappingScrollbarCount):
+ (WebCore::ScrollView::setParent):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::convertFromContainingWindow):
+
+2008-09-23 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Darin Adler. Landed by Jan Alonzo.
+
+ Added support for getImageData() and putImageData()
+ to Cairo.
+
+ [CAIRO] needs getImageData and putImageData support
+ https://bugs.webkit.org/show_bug.cgi?id=20838
+
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::ImageBuffer::getImageData):
+ (WebCore::ImageBuffer::putImageData):
+
+2008-09-23 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Holger Freyther.
+
+ http://bugs.webkit.org/show_bug.cgi?id=18987
+ [GTK] Implement SharedBuffer::createWithContentsOfFile and
+ KURL::fileSystemPath
+
+ * GNUmakefile.am: Add KURLGtk.cpp and SharedBufferGtk.cpp.
+ * platform/gtk/KURLGtk.cpp: Added.
+ (WebCore::KURL::fileSystemPath): Implemented.
+ * platform/gtk/SharedBufferGtk.cpp: Added.
+ (WebCore::SharedBuffer::createWithContentsOfFile): Implemented.
+ * platform/gtk/TemporaryLinkStubs.cpp: Remove the old stubs.
+
+2008-09-23 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Oliver Hunt, okayed by Darin Adler.
+
+ <rdar://problem/5575547> REGRESSION: ATOK has no phrase boundary on Safari/Mail.app
+
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::paintCompositionUnderline): Add 2 pixel spacing between clauses.
+
+2008-09-23 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=21023
+ Don't use TEC for encodings supported by ICU
+
+ * platform/text/mac/mac-encodings.txt: Removed x-mac-centraleurroman, x-mac-cyrillic,
+ x-mac-greek, and x-mac-turkish.
+
+ * platform/text/TextCodecICU.cpp: (WebCore::TextCodecICU::registerExtendedEncodingNames):
+ Register aliases for these encodings that are not registered automatically; updated comments.
+
+2008-09-23 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - speed up instanceof some more
+ https://bugs.webkit.org/show_bug.cgi?id=20818
+
+ ~2% speedup on EarleyBoyer
+
+ (WebCore updates.)
+
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ (WebCore::JSQuarantinedObjectWrapper::createStructureID):
+
+2008-09-22 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21008
+ getting pixels by index from CanvasPixelArray is unnecessarily slow
+
+ * GNUmakefile.am: Added JSCanvasPixelArrayCustom.h.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+
+ * bindings/js/JSCanvasPixelArrayCustom.cpp: Removed indexGetter and
+ indexSetter. These are now both inlined, so in the header.
+ * bindings/js/JSCanvasPixelArrayCustom.h: Added. The getByIndex
+ function is what's used for HasCustomIndexGetter. Also moved the
+ indexSetter function here.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Changed HasCustomIndexGetter
+ to use a getByIndex member function rather than an indexGetter static
+ member function in a property slot. This lets us avoid the property
+ slot mechanism's rule where it turns numeric property names into
+ strings in the identifier table, which is good because that's slow.
+ Also added a new property CustomHeader that allows IDL files to
+ introduce headers to be included -- useful when we have functions
+ that we want to inline into the binding.
+
+ * html/CanvasPixelArray.idl: Added CustomHeader attribute.
+
+2008-09-23 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ Another blind stab in the dark.
+
+ * svg/graphics/cg/SVGResourceClipperCg.cpp: Add missing header.
+
+2008-09-23 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ Third time's the charm, eh? My local build is sadly still not done...
+
+ * platform/graphics/AffineTransform.cpp: remove extra &
+ * platform/graphics/AffineTransform.h: remove extra &
+
+2008-09-22 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ * platform/graphics/AffineTransform.cpp: remove extra ;
+
+2008-09-22 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ Speculative fix for the build while I wait for my compile to finish.
+
+ * platform/graphics/AffineTransform.cpp:
+
+2008-09-22 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by eseidel. Landed by eseidel.
+
+ Moved makeMapBetweenRects from SVG/CG to AffineTransform
+ Make SVGResourceClipper::applyClip more cross-platform
+
+ * platform/graphics/AffineTransform.cpp:
+ * platform/graphics/AffineTransform.h:
+ * svg/graphics/cg/CgSupport.cpp:
+ * svg/graphics/cg/CgSupport.h:
+ * svg/graphics/cg/SVGPaintServerGradientCg.cpp:
+ (WebCore::SVGPaintServerGradient::handleBoundingBoxModeAndGradientTransformation):
+ * svg/graphics/cg/SVGResourceClipperCg.cpp:
+ (WebCore::SVGResourceClipper::applyClip):
+
+2008-09-22 Alp Toker <alp@nuanti.com>
+
+ Reviewed by David Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=16331
+ [Gtk] no focus when button/checkbox/radiobutton clicked, only when tabbed
+
+ Obey GTK+ focusing conventions for controls and anchor elements.
+
+ It could be interesting to push these decisions up to Settings or
+ ChromeClient some day but this gets things working.
+
+ Right and middle click events still need some work to match GTK+
+ conventions.
+
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::isMouseFocusable):
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::isMouseFocusable):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::sendContextMenuEvent):
+
+2008-09-22 Darin Adler <darin@apple.com>
+
+ * page/mac/FrameMac.mm:
+ (WebCore::Frame::baseWritingDirectionForSelectionStart): Fix indentation.
+
+2008-09-22 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Dan Bernstein.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=21013
+ Match Firefox in how we hide HTMLInputElement.selectionStart, selectionEnd
+ and setSelectionRange. This also allows us to remove the legacy JSHTMLInputElementBase
+ class!
+
+ - selectionStart, selectionEnd and setSelectionRange now are visible in iteration of
+ non-selectable input types, but return undefined when accessed.
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * bindings/js/JSHTMLInputElementBase.cpp: Removed.
+ * bindings/js/JSHTMLInputElementBase.h: Removed.
+ * bindings/js/JSHTMLInputElementCustom.cpp: Added.
+ (WebCore::JSHTMLInputElement::customGetOwnPropertySlot):
+ (WebCore::JSHTMLInputElement::selectionStart):
+ (WebCore::JSHTMLInputElement::selectionEnd):
+ * bindings/js/JSHTMLInputElementCustom.h: Added.
+ * html/HTMLInputElement.idl:
+
+2008-09-22 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix <rdar://problem/5699571> Mail: Unable to change writing direction to LTR in an empty message
+
+ Not testable in DumpRenderTree or in Safari
+
+ * page/mac/FrameMac.mm:
+ (WebCore::Frame::baseWritingDirectionForSelectionStart): Account for the
+ case that the selection start node is a block.
+
+2008-09-22 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21007
+
+ Make sure that the scrollbar gets sent a release event on platforms that call handleMouseDoubleClickEvent.
+
+ Reviewed by Sam Weinig
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMouseDoubleClickEvent):
+
+2008-09-22 Eric Seidel <eric@webkit.org>
+
+ No review, rollback only.
+
+ Roll out Peter's change (per his request)
+ http://trac.webkit.org/changeset/36069
+ https://bugs.webkit.org/show_bug.cgi?id=19663
+ This change has been the source of numerous regressions
+ (several of which were latent bugs revealed by this change,
+ others were bugs in this change)
+
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::startAnimation):
+ (WebCore::BitmapImage::advanceAnimation):
+ * platform/graphics/BitmapImage.h:
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/wx/ImageWx.cpp:
+ (WebCore::BitmapImage::draw):
+
+2008-09-22 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix <rdar://problem/5158514> Switch the complex text code path to Core Text
+
+ Tests: platform/mac-snowleopard/fast/text/myanmar-shaping.html
+ platform/mac-snowleopard/fast/text/thai-combining-mark-positioning.html
+
+ * config.h: Use Core Text if not building for Leopard or Tiger.
+
+2008-09-22 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=21006
+
+ Add code that paints an NSView-less scroller using HIThemeDrawTrack. This scrollbar is still not
+ switched on. There are still a few more refinements to make to the rendering and behavior.
+
+ Reviewed by Darin Adler
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::paintTrack):
+ (WebCore::ScrollbarThemeComposite::paintButton):
+ (WebCore::ScrollbarThemeComposite::paintThumb):
+ * platform/mac/ScrollbarThemeMac.h:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::backButtonRect):
+ (WebCore::ScrollbarThemeMac::forwardButtonRect):
+ (WebCore::scrollbarPartToHIPressedState):
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::invalidateRect):
+
+2008-09-22 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Sam Weinig
+
+ transition end event when -webkit-transition-property: all puts wrong
+ propertyName in event
+ https://bugs.webkit.org/show_bug.cgi?id=20903
+
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::sendTransitionEvent):
+
+2008-09-22 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/6230234> AXTable should probably not be exposed in there's only one cell
+
+ Test: accessibility/table-one-cell.html
+
+ * page/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+
+2008-09-22 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/6167779> Setting AXSelectedTextRange for TextAreas in a WebView behaves incorrectly
+
+ Test: accessibility/textarea-selected-text-range.html
+
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::setSelectedTextRange):
+
+2008-09-22 David Hyatt <hyatt@apple.com>
+
+ Clean up some parent relationships in the back end stylesheet code. Make sure parentStyleSheet
+ properly walks up nested rule blocks to reach the parent sheet instead of giving up at the immediate
+ parent. Also fix the doc() method so that it is properly set when the parent of the sheet is an import
+ rule.
+
+ Reviewed by Sam Weinig
+
+ Added fast/css/nested-rule-parent-sheet.html
+
+ * css/CSSImportRule.cpp:
+ (WebCore::CSSImportRule::insertedIntoParent):
+ * css/CSSRule.cpp:
+ (WebCore::CSSRule::parentStyleSheet):
+ (WebCore::CSSRule::parentRule):
+ * css/CSSStyleSheet.cpp:
+ (WebCore::CSSStyleSheet::CSSStyleSheet):
+ * css/CSSStyleSheet.h:
+
+2008-09-22 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=21002
+ Make the ATSUI code path respect spacingDisabled()
+
+ Fixes svg/text/text-spacing-01-b.svg in run-webkit-tests --complex-text
+
+ * platform/graphics/mac/FontMacATSUI.mm:
+ (WebCore::overrideLayoutOperation):
+
+2008-09-22 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ - speed up instanceof operator by replacing implementsHasInstance method with a TypeInfo flag
+
+ Partial work towards <https://bugs.webkit.org/show_bug.cgi?id=20818>
+
+ 2.2% speedup on EarleyBoyer benchmark.
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ (WebCore::JSQuarantinedObjectWrapper::createStructureID):
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+2008-09-22 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * WebCore.vcproj/WebCore.vcproj: Add a missing </File> tag.
+
+2008-09-22 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Based on initial work by Darin Adler.
+
+ - replace masqueradesAsUndefined virtual method with a flag in TypeInfo
+ - use this to JIT inline code for eq_null and neq_null
+ https://bugs.webkit.org/show_bug.cgi?id=20823
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCore.vcproj/WebCore.vcproj:
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::nameGetter):
+ * bindings/js/JSHTMLAllCollection.cpp: Added.
+ (WebCore::):
+ * bindings/js/JSHTMLAllCollection.h:
+ (WebCore::JSHTMLAllCollection::createStructureID):
+ (WebCore::JSHTMLAllCollection::toBoolean):
+
+2008-09-22 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix the QtWebKit build
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObjectImp::construct):
+ * bridge/qt/qt_runtime.cpp:
+
+2008-09-22 Alp Toker <alp@nuanti.com>
+
+ Suggested by David Hyatt.
+
+ Build fix: ScrollView::update() is still used by Document.cpp on !MAC
+ so make it public.
+
+ * platform/ScrollView.h:
+
+2008-09-22 David Hyatt <hyatt@apple.com>
+
+ Fix a regression in Windows scrollbar painting. (Also fix the same
+ bug in my new viewless Mac scrollbar painting code). The track rect
+ was being improperly inflated when painting resulting in the scrollbar
+ being too tall and painting in the border of overflow sections.
+
+ Reviewed by Oliver Hunt
+
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::trackRect):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::trackRect):
+
+2008-09-22 David Hyatt <hyatt@apple.com>
+
+ Fix a hit testing bug where events are mistakenly passed to subframes
+ if the mouse is over the border or padding area of the frame. Add
+ a boolean flag, isOverWidget(), to hit test results so that EventHandler
+ can check it to tell if the mouse is really over the content box of a
+ RenderWidget and not just in the border/padding area.
+
+ This is not testable, since the old code properly recovered when it detected
+ that the mouse was outside the bounds of the view, but this prevents
+ the extra passdown from even occurring (and is basically a nice cleanup).
+
+ Reviewed by Oliver Hunt
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::hitTestResultAtPoint):
+ (WebCore::subframeForHitTestResult):
+ (WebCore::EventHandler::handleMouseDoubleClickEvent):
+ (WebCore::EventHandler::handleMouseMoveEvent):
+ (WebCore::EventHandler::handleMouseReleaseEvent):
+ (WebCore::EventHandler::handleWheelEvent):
+ * page/MouseEventWithHitTestResults.h:
+ (WebCore::MouseEventWithHitTestResults::isOverWidget):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::HitTestResult):
+ (WebCore::HitTestResult::operator=):
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::isOverWidget):
+ (WebCore::HitTestResult::setIsOverWidget):
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::nodeAtPoint):
+ * rendering/RenderWidget.h:
+
+2008-09-21 David Hyatt <hyatt@apple.com>
+
+ Rename FrameView's repaintRectangle method to repaintContentRectangle. Make
+ both it and ScrollView's updateContents method be off-limits to everyone in
+ WebCore except for RenderView.
+
+ Make repaintViewRectangle the only possible method for WebCore code to do
+ an invalidation. This ensures that all invalidates triggered by WebCore
+ cross-platform code that cross ownerElement() boundaries are transform-aware.
+
+ Make sure that iframes/frames contained inside objects that have transforms
+ or reflections are not allowed to blit (this was already true for transparency).
+
+ It is not possible to make a test for any of this, since iframe scrolling
+ still doesn't work on Mac (since the invalidates are not being done
+ through WebCore's cross-platform invalidation code but are instead going
+ through NSScrollView's setNeedsDisplay still).
+
+ Reviewed by Oliver Hunt
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::recomputeCaretRect):
+ (WebCore::SelectionController::invalidateCaretRect):
+ (WebCore::SelectionController::focusedOrActiveStateChanged):
+ * page/FrameView.cpp:
+ (WebCore::FrameView::repaintContentRectangle):
+ (WebCore::FrameView::endDeferredRepaints):
+ * page/FrameView.h:
+ * platform/ScrollView.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::paintFillLayerExtended):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::enclosingPositionedAncestor):
+ (WebCore::RenderLayer::requiresSlowRepaints):
+ * rendering/RenderLayer.h:
+ (WebCore::RenderLayer::hasTransform):
+ * rendering/RenderView.cpp:
+ (WebCore::RenderView::paintBoxDecorations):
+ (WebCore::RenderView::repaintViewRectangle):
+ (WebCore::RenderView::setSelection):
+
+2008-09-21 Maciej Stachowiak <mjs@apple.com>
+
+ Reviewed by Darin.
+
+ - introduce a TypeInfo class, for holding per-type (in the C++ class sense) date in StructureID
+ https://bugs.webkit.org/show_bug.cgi?id=20981
+
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::JSAudioConstructor):
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::nameGetter):
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::createDOMStructure):
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::getDOMStructure):
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::JSDOMWindowShell):
+ (WebCore::JSDOMWindowShell::setWindow):
+ * bindings/js/JSEventTargetNode.cpp:
+ (WebCore::JSEventTargetNode::createPrototype):
+ * bindings/js/JSHTMLOptionElementConstructor.cpp:
+ (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::JSImageConstructor):
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
+ * bindings/js/JSXSLTProcessorConstructor.cpp:
+ (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+2008-09-21 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - fix problem Maciej noticed where every JSNamedNodesCollection
+ gets its own StructureID
+
+ * bindings/js/JSNamedNodesCollection.cpp:
+ (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Use
+ getDOMStructure to get the structure.
+ * bindings/js/JSNamedNodesCollection.h:
+ (WebCore::JSNamedNodesCollection::createPrototype): Return the
+ object prototype.
+
+2008-09-20 David Hyatt <hyatt@apple.com>
+
+ Make sure transformed scrollbars in overflow sections position
+ properly. This patch mimics the same behavior that works for
+ iframes, namely making sure that the same code that dynamically
+ adjusts iframe widget positions at paint time for fixed positioning
+ and transforms also applies to scrollbars. (This is as simple as passing
+ in the current translation factor at paint time rather than crawling
+ up the layer tree to compute a "false" absolute position.)
+
+ An existing transform test covers this (although only a pixel result
+ reveals the correct rendering).
+
+ Reviewed by Darin Adler
+
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateLayerPositions):
+ (WebCore::RenderLayer::positionOverflowControls):
+ (WebCore::RenderLayer::paintOverflowControls):
+ (WebCore::RenderLayer::paintLayer):
+ * rendering/RenderLayer.h:
+
+2008-09-21 Steve Falkenburg <sfalken@apple.com>
+
+ Removed unnecessary nested timer check.
+
+ Rubber-stamped by Dan Bernstein.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::TimerWindowWndProc):
+
+2008-09-21 Steve Falkenburg <sfalken@apple.com>
+
+ Improve timer resolution on WinXP.
+ https://bugs.webkit.org/show_bug.cgi?id=20979
+
+ Removed last-chance timer. It should not be necessary.
+ Change timeEndPeriod timer to fire in 300ms instead of 20ms. Calling timeBeginPeriod/timeEndPeriod too often throws off accuracy.
+ Remove Vista checks. We now run the same code on both XP and Vista.
+
+ Call through to JSC::getCurrentUTCTimeWithMicroseconds from WebCore::currentTime.
+ The code previously called GetSystemTimeAsFileTime, which is always low-resolution on XP, even within timeBeginPeriod(1).
+
+ Reviewed by Maciej Stachowiak.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::):
+ (WebCore::TimerWindowWndProc):
+ (WebCore::setSharedTimerFireTime):
+ * platform/win/SystemTimeWin.cpp:
+ (WebCore::currentTime):
+
+2008-09-21 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by eseidel. Landed by eseidel.
+
+ All platforms use the DashArray in the GraphicsContext.
+
+ * svg/graphics/SVGPaintServer.h:
+ * svg/graphics/cairo/SVGPaintServerGradientCairo.cpp:
+ (WebCore::SVGPaintServerGradient::setup):
+ * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
+ (WebCore::SVGPaintServerPattern::setup):
+ * svg/graphics/cairo/SVGPaintServerSolidCairo.cpp:
+ (WebCore::SVGPaintServerSolid::setup):
+ * svg/graphics/qt/SVGPaintServerGradientQt.cpp:
+ (WebCore::SVGPaintServerGradient::setup):
+ * svg/graphics/qt/SVGPaintServerQt.cpp:
+ * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
+ (WebCore::SVGPaintServerSolid::setup):
+
+2008-09-21 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by eseidel. Landed by eseidel.
+
+ Moved DashArray to GraphicsContext.
+
+ * GNUmakefile.am:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/graphics/DashArray.h: Added.
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::setLineDash):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setLineDash):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::setLineDash):
+ * svg/graphics/SVGPaintServer.cpp:
+ (WebCore::applyStrokeStyleToContext):
+ * svg/graphics/SVGPaintServer.h:
+ * svg/graphics/cg/CgSupport.cpp:
+ * svg/graphics/cg/CgSupport.h:
+
+2008-09-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - fix linker warnings
+
+ * WebCore.base.exp:
+
+2008-09-20 Darin Adler <darin@apple.com>
+
+ - another try at fixing Qt
+
+ * bridge/qt/qt_runtime.cpp: "using namespce WebCore"
+
+2008-09-20 Darin Adler <darin@apple.com>
+
+ - blind attempt to fix Qt build
+
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue): Use regExpStructure instead
+ of regExpPrototype to make a RegExpObject. There should really be
+ some sort of public helper function for this. Same thing for
+ DateInstance and dateStructure. For JSObject, use constructEmptyObject.
+ (JSC::Bindings::):
+ (JSC::Bindings::QtRuntimeMethod::QtRuntimeMethod): Use getDOMStructure.
+ It is not correct to do this inside the constructor because it could
+ cause a garbage collect while the QtRuntimeMethod object is half-
+ allocated, which could lead to a crash; note that RuntimeMethod,
+ QtRuntimeObjectImp, and RuntimeObjectImp have the same bug.
+ * bridge/qt/qt_runtime.h: Add s_info and createPrototype.
+
+2008-09-20 Collin Jackson <collinj@webkit.org>
+
+ Prefetch DNS for hyperlinks that the user mouses over.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20931
+
+ Reviewed by Sam Weinig.
+
+ * page/Chrome.cpp:
+ (WebCore::Chrome::mouseDidMoveOverElement):
+
+2008-09-20 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - finish https://bugs.webkit.org/show_bug.cgi?id=20858
+ make each distinct C++ class get a distinct JSC::Structure
+
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::nameGetter): Pass in a structure
+ ID. Note that this makes a new structure every time -- we could
+ optimize this slightly be caching and reusing a single one.
+
+ * bridge/runtime_method.cpp:
+ (JSC::RuntimeMethod::RuntimeMethod): Create a unique structure using
+ getDOMStructure.
+ * bridge/runtime_method.h:
+ (JSC::RuntimeMethod::createPrototype): Added createPrototype so
+ getDOMStructure will work.
+
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::JSDOMWindowShell): Initialize m_window to
+ 0; needed in case garbage collection happens while creating the
+ JSDOMWindow.
+
+2008-09-20 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=20950
+ <rdar://problem/6234059> Reproducible assertion failure running svg/custom/acid3-test-77.html multiple times under guard malloc
+
+ * svg/SVGTextContentElement.cpp:
+ (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): Changed to
+ not include the first character in the extraCharsAvailable count.
+
+2008-09-20 Kevin Ollivier <kevino@theolliviers.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix memory leak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20505
+
+ * platform/wx/wxcode/mac/carbon/fontprops.cpp:
+ (GetTextExtent):
+
+2008-09-20 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes. Added/removed build sources, and nativeWindow->platformWidget updates.
+
+ * WebCoreSources.bkl:
+ * platform/ScrollView.h:
+ * platform/wx/PopupMenuWx.cpp:
+ (WebCore::PopupMenu::show):
+ * platform/wx/RenderThemeWx.cpp:
+ (WebCore::RenderThemeWx::paintButton):
+ (WebCore::RenderThemeWx::paintTextField):
+ (WebCore::RenderThemeWx::paintMenuList):
+ (WebCore::RenderThemeWx::paintMenuListButton):
+ * platform/wx/ScrollViewWx.cpp:
+ (WebCore::ScrollView::setPlatformWidget):
+ (WebCore::ScrollView::updateContents):
+ (WebCore::ScrollView::update):
+ (WebCore::ScrollView::visibleWidth):
+ (WebCore::ScrollView::visibleHeight):
+ (WebCore::ScrollView::scrollBy):
+ (WebCore::ScrollView::resizeContents):
+ (WebCore::ScrollView::contentsWidth):
+ (WebCore::ScrollView::contentsHeight):
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ (WebCore::ScrollView::adjustScrollbars):
+ (WebCore::ScrollView::inWindow):
+ (WebCore::ScrollView::removeChild):
+ * platform/wx/WidgetWx.cpp:
+ * plugins/wx/PluginViewWx.cpp:
+ (WebCore::PluginView::setParentVisible):
+ (WebCore::PluginView::updatePluginWidget):
+
+2008-09-20 Timothy Hatcher <timothy@apple.com>
+
+ Fix the new Node Search button image to not be blurry.
+
+ * page/inspector/Images/nodeSearchButtons.png:
+
+2008-09-20 Matt Lilek <webkit@mattlilek.com>
+
+ Reviewed by Tim Hatcher.
+
+ Cut down some of the inspector javascript -> InspectorController glue code
+ with two new macros. Also rearrange the exposed function list to be grouped
+ by implementation and to all explicitly use the WebCore namespace.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+
+2008-09-20 Matt Lilek <webkit@mattlilek.com>
+
+ Reviewed by Tim Hatcher.
+
+ Fix regression from my previous patch where the breadcrumbs bar was not displayed.
+
+ * page/inspector/inspector.css:
+
+2008-09-20 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Eric.
+
+ Refactor HTMLImageLoader/SVGImageLoader code.
+ Move html/HTMLImageLoader.* to loader/ImageLoader.*
+
+ Let HTMLImageLoader & SVGImageLoader inherit from the new base class.
+ SVGImageLoader used to inherit from HTMLImageLoader which is awkward.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * dom/Document.cpp:
+ (WebCore::Document::dispatchImageLoadEventSoon):
+ (WebCore::Document::removeImage):
+ (WebCore::Document::dispatchImageLoadEventsNow):
+ * dom/Document.h:
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::HTMLImageLoader):
+ (WebCore::HTMLImageLoader::~HTMLImageLoader):
+ (WebCore::HTMLImageLoader::sourceURI):
+ (WebCore::HTMLImageLoader::notifyFinished):
+ * html/HTMLImageLoader.h:
+ * loader/DocLoader.h:
+ * loader/ImageLoader.cpp: Copied from html/HTMLImageLoader.cpp.
+ (WebCore::ImageLoader::ImageLoader):
+ (WebCore::ImageLoader::~ImageLoader):
+ (WebCore::ImageLoader::setImage):
+ (WebCore::ImageLoader::setLoadingImage):
+ (WebCore::ImageLoader::updateFromElement):
+ (WebCore::ImageLoader::notifyFinished):
+ * loader/ImageLoader.h: Copied from html/HTMLImageLoader.h.
+ * svg/SVGImageElement.cpp:
+ (WebCore::SVGImageElement::attach):
+ (WebCore::SVGImageElement::insertedIntoDocument):
+ (WebCore::SVGImageElement::imageSourceAttributeName):
+ * svg/SVGImageElement.h:
+ * svg/SVGImageLoader.cpp:
+ (WebCore::SVGImageLoader::SVGImageLoader):
+ (WebCore::SVGImageLoader::dispatchLoadEvent):
+ (WebCore::SVGImageLoader::sourceURI):
+ * svg/SVGImageLoader.h:
+
+2008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Build fix.
+
+ [qtwebkit] ScrollBar build fix after r36684.
+ BackButtonPart was split into Start and End Part
+ ForwardButtonPart was split into Start and End Part
+
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::scPart):
+ (WebCore::scrollbarPart):
+ (WebCore::styleOptionSlider):
+
+2008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Build fix.
+
+ [qtwebkit] Make qt_instance.cpp compile.
+ Revision of 36675 introduced getDOMStructure to give unique
+ structure id's to C++ classes. Catch up. RuntimeObjectImp assigns
+ the the StructureID inside the c'tor, do the same in QtRuntimeObjectImp
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::getRuntimeObject):
+
+2008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ [svg] Change SVGLocatable to deal with a plain SVGElement
+ There is no requirement in the code that we have to have a
+ SVGStyledElement. Remove that artificial limitation and compile
+ with SVGElement.
+
+ * svg/SVGLocatable.cpp:
+ * svg/SVGLocatable.h:
+
+2008-09-20 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ [svg] Use OwnPtr for the SVGExtensions to avoid custom lifetime
+ management.
+
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ (WebCore::Document::svgExtensions):
+ (WebCore::Document::accessSVGExtensions):
+ * dom/Document.h:
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Fix for crash in updateTransitions. Make sure to test for a style
+ being null when comparing two RenderStyles.
+
+ Reviewed by Oliver Hunt
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::PropertyWrapperGetter::equals):
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=20954
+
+ Roll out r36628 since it has caused horrible regressions with
+ animated GIF CPU usage.
+
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::cacheFrame):
+ (WebCore::BitmapImage::startAnimation):
+ * platform/graphics/BitmapImage.h:
+ (WebCore::FrameData::FrameData):
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::FrameData::clear):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::FrameData::clear):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::FrameData::clear):
+ * platform/graphics/wx/ImageWx.cpp:
+ (WebCore::FrameData::clear):
+
+2008-09-20 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Timothy Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20913
+ Avoid redudant includes
+
+ Document.h is included excessively such that a modification to Document.h (or
+ any of the header it includes itself) triggers a rebuild of many files
+ including the whole of SVG and a lot of the JS bindings.
+
+ Some of these includes can be avoided by only including Document.h where
+ necessary.
+
+ * bindings/js/JSAttrCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/js/JSEventTargetBase.cpp:
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSEventTargetNode.cpp:
+ * bindings/js/JSHTMLFrameElementCustom.cpp:
+ * bindings/js/JSHTMLIFrameElementCustom.cpp:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * css/CSSCursorImageValue.cpp:
+ * css/SVGCSSStyleSelector.cpp:
+ * dom/make_names.pl:
+ * svg/SVGAnimateElement.h:
+ * svg/SVGAnimatedProperty.h:
+ (WebCore::::baseValue):
+ (WebCore::::setBaseValue):
+ (WebCore::::startAnimation):
+ (WebCore::::stopAnimation):
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::accessDocumentSVGExtensions):
+ * svg/SVGElement.h:
+ * svg/SVGElementInstance.cpp:
+ * svg/SVGFitToViewBox.cpp:
+ * svg/SVGFontElement.cpp:
+ * svg/SVGFontFaceElement.cpp:
+ * svg/SVGLinearGradientElement.cpp:
+ * svg/SVGMPathElement.cpp:
+ * svg/SVGViewSpec.cpp:
+
+2008-09-19 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Antti & Eric.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
+
+ Finish HTMLScriptElement / SVGScriptElement unification.
+ SVG <script> support is complete now, full SVGLoad event
+ respecting the influence of the externalResourcesRequired attribute
+ as well as SVGError event support. All other features shared with HTML.
+
+ Tests: fast/dom/HTMLScriptElement/script-reexecution.html
+ svg/dom/SVGScriptElement/script-change-externalResourcesRequired-while-loading.svg
+ svg/dom/SVGScriptElement/script-load-and-error-events.svg
+ svg/dom/SVGScriptElement/script-reexecution.svg
+ svg/dom/SVGScriptElement/script-set-href.svg
+
+ * dom/ScriptElement.cpp:
+ (WebCore::ScriptElementData::ScriptElementData):
+ (WebCore::ScriptElementData::requestScript):
+ * dom/ScriptElement.h:
+ (WebCore::ScriptElementData::haveFiredLoadEvent):
+ (WebCore::ScriptElementData::setHaveFiredLoadEvent):
+ * dom/XMLTokenizer.cpp:
+ (WebCore::XMLTokenizer::notifyFinished):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::dispatchLoadEvent):
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::setCreatedByParser):
+ (WebCore::SVGScriptElement::parseMappedAttribute):
+ (WebCore::SVGScriptElement::svgAttributeChanged):
+ (WebCore::SVGScriptElement::insertedIntoDocument):
+ (WebCore::SVGScriptElement::removedFromDocument):
+ (WebCore::SVGScriptElement::childrenChanged):
+ (WebCore::SVGScriptElement::isURLAttribute):
+ (WebCore::SVGScriptElement::finishParsingChildren):
+ (WebCore::SVGScriptElement::type):
+ (WebCore::SVGScriptElement::setType):
+ (WebCore::SVGScriptElement::haveLoadedRequiredResources):
+ (WebCore::SVGScriptElement::dispatchLoadEvent):
+ (WebCore::SVGScriptElement::dispatchErrorEvent):
+ * svg/SVGScriptElement.h:
+
+2008-09-19 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=20951
+ Typo in Position::getInlineBoxAndOffset()
+ and add an assertion
+
+ Without the fix, the newly-added assertion fails in platform/mac/editing/input/caret-primary-bidi.html
+
+ * dom/Position.cpp:
+ (WebCore::Position::getInlineBoxAndOffset):
+ * rendering/InlineTextBox.cpp:
+ (WebCore::InlineTextBox::positionForOffset):
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Add support for hit testing of all five possible scrollbar button placements.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::):
+ (WebCore::ScrollbarThemeMac::backButtonRect):
+ (WebCore::ScrollbarThemeMac::forwardButtonRect):
+ (WebCore::ScrollbarThemeMac::trackRect):
+ (WebCore::ScrollbarThemeMac::paintButton):
+
+2008-09-19 Darin Adler <darin@apple.com>
+
+ - try to fix Qt build
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtRuntimeObjectImp::QtRuntimeObjectImp): Add structure argument.
+ (JSC::Bindings::QtInstance::getRuntimeObject): Ditto.
+ * bridge/runtime_object.cpp:
+ (JSC::RuntimeObjectImp::RuntimeObjectImp): Add an overload just for Qt.
+ * bridge/runtime_object.h: Ditto.
+
+2008-09-19 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Transition starts running when it shouldn't
+ https://bugs.webkit.org/show_bug.cgi?id=20892
+
+ When there is a transition and an animation on the
+ same element, make sure the animation wins.
+
+ The fix is to save the unanimated style when an animation is started.
+ Then, when starting a transition, check to see if there is a current
+ animation on the same prop. If so, use the unanimated style as the
+ fromStyle rather than the current style.
+
+ Test: animations/transition-and-animation-1.html
+
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+ (WebCore::CompositeAnimation::updateKeyframeAnimations):
+ (WebCore::CompositeAnimation::animate):
+ (WebCore::CompositeAnimation::getAnimationForProperty):
+ * page/animation/CompositeAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::reset):
+ * page/animation/ImplicitAnimation.h:
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::hasAnimationForProperty):
+ * page/animation/KeyframeAnimation.h:
+ (WebCore::KeyframeAnimation::KeyframeAnimation):
+ (WebCore::KeyframeAnimation::unanimatedStyle):
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Add support for painting/hit testing of four possible scrollbar buttons.
+ The Windows themes simply ignore the two parts that they will never
+ show. The Mac theme also ignores the other two buttons for now.
+
+ The cross-platform base for all three themes, ScrollbarThemeComposite,
+ has all the proper support though.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::invalidatePart):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/mac/ScrollbarThemeMac.h:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::backButtonRect):
+ (WebCore::ScrollbarThemeMac::forwardButtonRect):
+ (WebCore::ScrollbarThemeMac::paintButton):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::backButtonRect):
+ (WebCore::ScrollbarThemeSafari::forwardButtonRect):
+ (WebCore::ScrollbarThemeSafari::paintButton):
+ * platform/win/ScrollbarThemeSafari.h:
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::backButtonRect):
+ (WebCore::ScrollbarThemeWin::forwardButtonRect):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-09-19 Matt Lilek <webkit@mattlilek.com>
+
+ Reviewed by Tim Hatcher.
+
+ Bug 17772: Inspector should support point-and-click to select a node to inspect
+ https://bugs.webkit.org/show_bug.cgi?id=17772
+ <rdar://problem/5792395>
+
+ * English.lproj/localizedStrings.js:
+ * page/Chrome.cpp:
+ (WebCore::Chrome::mouseDidMoveOverElement):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMousePressEvent):
+ * page/InspectorController.cpp:
+ (WebCore::toggleNodeSearch):
+ (WebCore::searchingForNode):
+ (WebCore::InspectorController::InspectorController):
+ (WebCore::InspectorController::toggleSearchForNodeInPage):
+ (WebCore::InspectorController::mouseDidMoveOverElement):
+ (WebCore::InspectorController::handleMousePressOnNode):
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ * page/InspectorController.h:
+ (WebCore::InspectorController::searchingForNodeInPage):
+ * page/inspector/ElementsPanel.js:
+ * page/inspector/Images/nodeSearchButtons.png: Added.
+ * page/inspector/inspector.css:
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Add new scrollbar parts to be able to represent back and forward buttons
+ at either end of the scrollbar. The current scrollbar still just draws
+ a single button at either end, but the parts now exist.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollTypes.h:
+ (WebCore::):
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::autoscrollTimerFired):
+ (WebCore::Scrollbar::pressedPartScrollDirection):
+ (WebCore::Scrollbar::pressedPartScrollGranularity):
+ (WebCore::Scrollbar::handleMouseMoveEvent):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::buttonsPlacement):
+ (WebCore::ScrollbarTheme::invalidateParts):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::invalidatePart):
+ * platform/ScrollbarThemeComposite.h:
+
+2008-09-19 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Fix for <rdar://problem/6231308> crash in AutoTableLayout
+
+ The code assumes later on that a TableSection's grid's row vector
+ will never be empty. So make 1 the minimum number of columns.
+
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::ensureRows):
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Add a new ScrollbarButtonsPlacement type for specifying where
+ the button arrows are in a scrollbar.
+
+ Read in the placement settings for Mac. Nothing is done with the
+ setting yet.
+
+ Add a new buttonsPlacement() method to ScrollbarTheme composite
+ so that the arrow settings can be obtained.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollTypes.h:
+ (WebCore::):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::buttonsPlacement):
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::updateArrowPlacement):
+ (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
+
+2008-09-19 Steve Falkenburg <sfalken@apple.com>
+
+ Roll out r36626. It is causing variance in SunSpider numbers on XP.
+
+ Rubber stamped by Mark Rowe.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::isRunningOnVistaOrLater):
+ (WebCore::setSharedTimerFireTime):
+
+2008-09-19 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20942
+ Bug 20942: Repeated messages in resources don't collapse
+ - Now repeated messages in a resource's view are collapsed and a message
+ says how many were repeated.
+
+ * English.lproj/localizedStrings.js:
+ * manual-tests/inspector/multiple-console-messages.html:
+ * page/inspector/Console.js: Send all the messages to the resource's
+ view before possibly returning early if the message is a repeat.
+ * page/inspector/SourceFrame.js: Add the text about the message being
+ repeated, if it is, and increment it when necessary.
+
+2008-09-19 Chris Fleizach <cfleizach@apple.com>
+
+ Removed unnecessary #if
+
+ * page/mac/AccessibilityObjectWrapper.mm:
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Read in prefs for the scroll delay repeat values for buttons. Also
+ honor the option-click pref for jumping to the thumb when clicking in
+ the track.
+
+ Reviewed by Sam Weinig
+
+ * platform/mac/ScrollbarThemeMac.h:
+ * platform/mac/ScrollbarThemeMac.mm:
+ (WebCore::ScrollbarThemeMac::ScrollbarThemeMac):
+ (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
+ (WebCore::ScrollbarThemeMac::autoscrollTimerDelay):
+ (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Move ScrollbarThemeMac.cpp to ScrollbarThemeMac.mm so it can use Obj-C.
+ Set the initial button repeat delay to 0.5 for Mac.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/mac/ScrollbarThemeMac.cpp: Removed.
+ * platform/mac/ScrollbarThemeMac.h:
+ (WebCore::ScrollbarThemeMac::initialAutoscrollTimerDelay):
+ * platform/mac/ScrollbarThemeMac.mm: Copied from platform/mac/ScrollbarThemeMac.cpp.
+
+2008-09-19 Darin Adler <darin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - part 2 of https://bugs.webkit.org/show_bug.cgi?id=20858
+ make each distinct C++ class get a distinct JSC::Structure
+
+ + Fixed all cases where we were using a shared structure for multiple
+ C++ classes in WebCore. This still has to be done in JavaScriptCore.
+
+ + Got rid of cacheGlobalObject.
+
+ + Improved use of PassRefPtr in bindings code.
+
+ + Removed a couple cases where we were potentially allocating prototypes
+ inside a JSObject's construction process -- this can lead to trouble if
+ we do a garbage collection while an object is only partly constructed.
+
+ * bindings/js/JSAudioConstructor.cpp:
+ (WebCore::JSAudioConstructor::JSAudioConstructor): Create a structure explicitly
+ so we don't implicitly share the structure with other objects that use the object
+ prototype.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::getCachedDOMConstructor): Added. To be used for constructors so we
+ don't need cacheGlobalObject any more.
+ (WebCore::cacheDOMConstructor): Ditto.
+
+ * bindings/js/JSDOMBinding.h: Removed DOMObject constructor that takes a prototype.
+ Added functions and a function template for getting cached DOM constructors.
+ Removed cacheGlobalObject function template.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::JSDOMWindowBase): Take a PassRefPtr<DOMWindow> since
+ we're taking ownership.
+ * bindings/js/JSDOMWindowBase.h: Changed constructor to take PassRefPtr, since
+ we're taking ownership. Added constructor map.
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::mark): Mark the constructors in the map.
+
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::JSDOMWindowShell): Take a PassRefPtr<DOMWindow> since
+ we're taking ownership. Use the new setWindow function to create the JSDOMWindow;
+ this is now done in only that one place.
+ (WebCore::JSDOMWindowShell::setWindow): Added. Creates the JSDOMWindow based on
+ the passed-in DOMWindow. Code was moved here and changed to allocate unique
+ structures for both the window prototype and the window.
+ * bindings/js/JSDOMWindowShell.h: Ditto.
+
+ * bindings/js/JSEventTargetBase.h: Changed class template argument so it doesn't
+ have the same name (JSEventTarget) as an actual class. Removed unhelpful use of
+ private/friend in JSEventTargetBase. Removed comments referring to defunct
+ macros. Changed JSEventTargetBasePrototype to get the prototype with the new
+ rather than its own copy of cacheGlobalObject (I missed this during pass 1).
+ Changed JSEventTargetBasePrototype so it doesn't have so many template arguments.
+
+ * bindings/js/JSEventTargetNode.cpp: Added s_info; needed for the new scheme
+ for caching structures and prototypes.
+ (WebCore::JSEventTargetNode::JSEventTargetNode): Use PassRefPtr.
+ (WebCore::JSEventTargetNode::createPrototype): Added.
+ * bindings/js/JSEventTargetNode.h: Updated for above changes.
+
+ * bindings/js/JSHTMLAllCollection.h:
+ (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Use PassRefPtr.
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ (WebCore::getNamedItems): Pass ExecState instead of prototype.
+ * bindings/js/JSHTMLFormElementCustom.cpp:
+ (WebCore::JSHTMLFormElement::nameGetter): Ditto.
+ * bindings/js/JSHTMLInputElementBase.cpp:
+ (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Use PassRefPtr.
+ * bindings/js/JSHTMLInputElementBase.h: Ditto.
+ * bindings/js/JSHTMLOptionElementConstructor.cpp:
+ (WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
+ Create a unique structure instead of sharing.
+ * bindings/js/JSImageConstructor.cpp:
+ (WebCore::JSImageConstructor::JSImageConstructor): Ditto.
+
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ (WebCore::JSInspectedObjectWrapper::wrap): Removed overload that takes
+ a prototype rather than a structure. Made the use of inheritorID() here
+ explicit.
+ * bindings/js/JSInspectedObjectWrapper.h: Ditto.
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ (WebCore::JSInspectorCallbackWrapper::wrap): Ditto.
+ * bindings/js/JSInspectorCallbackWrapper.h: Ditto.
+
+ * bindings/js/JSNamedNodesCollection.cpp:
+ (WebCore::JSNamedNodesCollection::JSNamedNodesCollection): Changed to
+ take an ExecState argument instead of a prototype. Create a unique
+ StructureID instead of sharing.
+ * bindings/js/JSNamedNodesCollection.h: Ditto.
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp: Removed overloaded
+ constructor that takes a prototype instead of a structure.
+ * bindings/js/JSQuarantinedObjectWrapper.h: Ditto.
+
+ * bindings/js/JSRGBColor.cpp:
+ (WebCore::JSRGBColor::JSRGBColor): Take ExecState instead of a
+ prototype; create a unique structure.
+ (WebCore::getJSRGBColor): Ditto.
+ * bindings/js/JSRGBColor.h: Ditto.
+
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ (WebCore::JSSQLResultSetRowList::item): Use constructEmptyObject instead
+ of explicit coding the idiom for making a new object.
+
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::JSXMLHttpRequestConstructor::JSXMLHttpRequestConstructor):
+ Create a unique structure instead of the shared one.
+ * bindings/js/JSXSLTProcessorConstructor.cpp:
+ (WebCore::JSXSLTProcessorConstructor::JSXSLTProcessorConstructor):
+ Ditto.
+
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::clearWindowShell): Let the window shell's
+ setWindow function create the JSDOMWindow instead of doing it here.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Changed to use PassRefPtr for
+ the structure and the wrapped object when creating wrappers.
+ Simplified some of the special cases for DOMWindow so they are
+ different only in ways the need to be. Eliminated the
+ JSDOMWindow::createPrototype and JSDOMWindowPrototype::self
+ functions. Moved responsibility for creating the structure and
+ parent prototype out of the prototype constructor into the
+ createPrototype function. Removed the unused "DoNotCache" flag for
+ objects other than DOMWindow. Use getDOMConstructor instead of
+ cacheGlobalObject for constructors. Make each constructor have
+ a unique structure ID.
+
+ * bridge/objc/objc_runtime.h: Added createPrototype and changed the
+ name of the info member to s_info so we can use the standard DOM
+ binding macros to handl the prototype.
+ * bridge/objc/objc_runtime.mm: Fixed namespacing a bit.
+ (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ Create a unique structure using getDOMStructure.
+
+ * bridge/runtime_array.cpp: Fixed namespacing a bit.
+ (JSC::RuntimeArray::RuntimeArray): Create a unique structure using
+ getDOMStructure.
+ * bridge/runtime_array.h: Added createPrototype so getDOMStructure
+ will work.
+
+ * bridge/runtime_object.cpp:
+ (JSC::RuntimeObjectImp::RuntimeObjectImp): Create a unique structure using
+ getDOMStructure.
+ * bridge/runtime_object.h: Added createPrototype so getDOMStructure
+ will work.
+
+ * history/CachedPage.cpp:
+ (WebCore::CachedPage::restore): Let the window shell's
+ setWindow function create the JSDOMWindow instead of doing it here.
+
+ * page/DOMWindow.idl: Removed DoNotCache, which is no longer used.
+
+2008-09-19 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ This optimization was suggested by Daniel Fenwick
+
+ - speed up measuring text on the Core Text code path by not specifying a paragraph writing direction
+
+ Specifying LTR paragraph directionality when measuring runs of RTL text
+ resulted in typically two CTRuns being generated for every run instead
+ of one, due to the leading space being reordered to the left.
+
+ * platform/graphics/SimpleFontData.h: Removed the ltr parameter to
+ getCFStringAttributes() and changed m_CFStringAttributes from an array
+ to a single value.
+ * platform/graphics/mac/CoreTextController.cpp:
+ (WebCore::CoreTextController::CoreTextController): Added a
+ mayUseNaturalWritingDirection parameter.
+ (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Changed
+ to force the bidi embedding level whenever
+ m_mayUseNaturalWritingDirectrion is false. Since this is now a common
+ case, made the typesetter options dictionaries static.
+ * platform/graphics/mac/CoreTextController.h:
+ * platform/graphics/mac/FontMacCoreText.cpp:
+ (WebCore::Font::selectionRectForComplexText): Renamed a local variable.
+ (WebCore::Font::floatWidthForComplexText): Changed to allow the
+ CoreTextController to not set the writing direction.
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::getCFStringAttributes): Removed the ltr
+ parameter and the paragraph style attribute.
+
+2008-09-19 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Sam Weinig
+
+ https://bugs.webkit.org/show_bug.cgi?id=20941
+
+ Incorrect height calculation for replaced element inside nested
+ positioned elements (where the inner has a percentage height and
+ the outer implicitly has a fixed height because of explicit top/bottom
+ values).
+
+ Added fast/block/positioning/replaced-inside-top-bottom.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::availableHeightUsing):
+
+2008-09-19 Chris Fleizach <cfleizach@apple.com>
+
+ Fix Tiger bustage
+
+ * page/mac/AccessibilityObjectWrapper.mm:
+
+2008-09-18 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/6211041> Expose legend tag in accessibility
+
+ Exposes the legend tag as the titleUIElement of a fieldset
+
+ Test: accessibility/legend.html
+
+ * page/AccessibilityObject.h:
+ (WebCore::AccessibilityObject::isFieldset):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::isFieldset):
+ (WebCore::AccessibilityRenderObject::titleUIElement):
+ * page/AccessibilityRenderObject.h:
+ * rendering/RenderFieldset.h:
+
+2008-09-19 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/6213171> WebKit should use new array-centric methods for AX performance
+
+ Implement a few AX API methods that will be called by AppKit, which will
+ speed up access to accessibility objects
+
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]):
+ (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
+ (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]):
+
+2008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon Hausmann.
+
+ [qtwebkit] Set the m_should* flags to their proper value on entry
+ With plugins it was possible that we finished a job twice. This was
+ some kind of reentrancy in QNetworkReplyHandler::sendQueuedItems. By
+ setting the flag to (m_loadMode == LoadDeferred) they will always have
+ the right value and we will not send responses twice.
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+
+2008-09-19 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon Hausmann.
+
+ [qtwebkit] Pass test 70 of acid3. Handle text decoding errors
+ Handle text decoding errors before instructing the parser to parse. We
+ have converted the text to QString and all encoding errors are gone and
+ the parser will not be able to detect them. So handle them before parsing.
+
+ * dom/XMLTokenizerQt.cpp:
+ (WebCore::XMLTokenizer::doWrite):
+
+2008-09-18 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - part 1 of https://bugs.webkit.org/show_bug.cgi?id=20858
+ make each distinct C++ class get a distinct JSC::Structure
+
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ (WebCore::JSCSSStyleDeclaration::customPut): Use setDOMException
+ instead of DOMExceptionTranslator.
+
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::getCachedDOMObjectWrapper): Updated function name.
+ (WebCore::cacheDOMObjectWrapper): Ditto.
+ (WebCore::forgetDOMObject): Ditto.
+ (WebCore::getCachedDOMNodeWrapper): Ditto.
+ (WebCore::forgetDOMNode): Ditto.
+ (WebCore::cacheDOMNodeWrapper): Ditto.
+ (WebCore::forgetAllDOMNodesForDocument): Ditto.
+ (WebCore::markDOMNodesForDocument): Ditto.
+ (WebCore::updateDOMNodeDocument): Ditto.
+ (WebCore::getCachedDOMStructure): Added.
+ (WebCore::createDOMStructure): Ditto.
+
+ * bindings/js/JSDOMBinding.h: Get rid of the ScriptInterpreter
+ class and replace the static member functions with non-member
+ functions. Added many other functions for getting at structures,
+ prototypes, wrappers, and creating them. Also moved the
+ cacheGlobalObject function here from JavaScriptCore; eventually
+ I'll remove that once I get rid of the remaining callers. Also
+ removed the DOMExceptionTranslator class.
+
+ * bindings/js/JSDOMWindowBase.h: Added JSDOMStructureMap type,
+ and put one of those maps in each window.
+
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::markDOMObjectWrapper): Updated for function name change.
+ (WebCore::JSDOMWindow::mark): Added code to mark all the structures
+ in the structure map.
+
+ * bindings/js/JSEventTargetNode.cpp:
+ (WebCore::JSEventTargetNode::JSEventTargetNode): Changed to take
+ a structure instead of a prototype.
+ * bindings/js/JSEventTargetNode.h: Ditto.
+ * bindings/js/JSHTMLAllCollection.h:
+ (WebCore::JSHTMLAllCollection::JSHTMLAllCollection): Ditto.
+
+ * bindings/js/JSHTMLInputElementBase.cpp:
+ (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase): Removed
+ use of the JSC_IMPLEMENT_PROTOTYPE macro, and changed to take a
+ structure instead of a prototype.
+ * bindings/js/JSHTMLInputElementBase.h: Removed use of the
+ JSC_DEFINE_PROTOTYPE_WITH_PROTOTYPE macro, and changed constructor
+ to take a structure instead of a prototype. Created a dummy prototype
+ class that causes the HTMLInputElement prototype to have the
+ HTMLElement prototype.
+
+ * bindings/scripts/CodeGeneratorJS.pm: Change constructors to take
+ structures instead of prototypes. Changed the prototype self function
+ to use the getDOMPrototype function -- later we can eliminate it and
+ have callers invoke getDOMPrototype directly instead. Updated other
+ functions that have name changes. Added code to generate the
+ createPrototype member function. Changed use of cacheGlobalObject to
+ get it from the WebCore namespace instead of the JSC namespace.
+ Changed cacheDOMObject calls to use getDOMObjectWrapper instead.
+
+ * dom/Document.cpp:
+ (WebCore::Document::~Document): Updated for name change and also
+ removed unnecessary JSLock use -- there's no need to lock around this.
+ * dom/Node.cpp:
+ (WebCore::Node::setDocument): Ditto.
+
+ * dom/make_names.pl: Changed to use CREATE_DOM_NODE_WRAPPER macro
+ instead of calling new directly.
+
+ * bindings/js/JSCSSRuleCustom.cpp:
+ (WebCore::toJS): Updated for function name changes and used the
+ CREATE_DOM_OBJECT_WRAPPER macro.
+ * bindings/js/JSCSSValueCustom.cpp:
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSCanvasPixelArrayCustom.cpp:
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSDocumentCustom.cpp:
+ (WebCore::JSDocument::mark): Ditto.
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSElementCustom.cpp:
+ (WebCore::toJSNewlyCreated): Ditto.
+ * bindings/js/JSEventCustom.cpp:
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSEventTargetBase.cpp:
+ (WebCore::jsEventTargetDispatchEvent): Use setDOMException instead
+ of DOMExceptionTranslator.
+ (WebCore::toJS): Updated for function name changes and used the
+ CREATE_DOM_OBJECT_WRAPPER macro.
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSNodeCustom.cpp:
+ (WebCore::JSNode::mark): Ditto.
+ (WebCore::createWrapper): Ditto.
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSSVGPathSegCustom.cpp:
+ (WebCore::toJS): Ditto.
+ * bindings/js/JSStyleSheetCustom.cpp:
+ (WebCore::toJS): Ditto.
+ (WebCore::JSStyleSheet::mark): Ditto.
+ * bindings/js/JSTextCustom.cpp:
+ (WebCore::toJSNewlyCreated): Ditto.
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ (WebCore::constructXMLHttpRequest): Ditto.
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ (WebCore::JSXMLHttpRequest::mark): Ditto.
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ (WebCore::JSXMLHttpRequestUpload::mark): Ditto.
+ * bindings/js/JSXSLTProcessorConstructor.cpp:
+ (WebCore::constructXSLTProcessor): Ditto.
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::finishedWithEvent): Ditto.
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::loadRequestAsynchronously): Ditto.
+ (WebCore::XMLHttpRequest::dropProtection): Ditto.
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ This patch gets a viewless scrollbar working on Mac. It is turned off
+ by default. Hit testing works. For now the scrollbar just paints ugly
+ debug rects in the place of the buttons, track and thumb. It does match
+ Aqua metrics though.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::paint):
+ (WebCore::ScrollbarThemeComposite::trackPosition):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::addChild):
+ * platform/mac/ScrollbarThemeMac.cpp:
+ (WebCore::):
+ (WebCore::ScrollbarThemeMac::hasButtons):
+ (WebCore::ScrollbarThemeMac::hasThumb):
+ (WebCore::buttonRepaintRect):
+ (WebCore::ScrollbarThemeMac::backButtonRect):
+ (WebCore::ScrollbarThemeMac::forwardButtonRect):
+ (WebCore::trackRepaintRect):
+ (WebCore::ScrollbarThemeMac::trackRect):
+ (WebCore::ScrollbarThemeMac::minimumThumbLength):
+ (WebCore::ScrollbarThemeMac::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeMac::paintTrack):
+ (WebCore::ScrollbarThemeMac::paintButton):
+ (WebCore::ScrollbarThemeMac::paintThumb):
+ * platform/mac/ScrollbarThemeMac.h:
+ (WebCore::ScrollbarThemeMac::supportsControlTints):
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::ScrollbarThemeQt::trackPosition):
+
+2008-09-18 Collin Jackson <collinj@webkit.org>
+
+ Build fix; added missing header file to GNUmakefile.am
+
+ * GNUmakefile.am:
+
+2008-09-18 Sam Weinig <sam@webkit.org>
+
+ Reviewed by David "the Hair" Hyatt.
+
+ Move DataRef, SVGRenderStyle and SVGRenderStyleDefs in render/style.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/DataRef.h: Removed.
+ * rendering/SVGRenderStyle.cpp: Removed.
+ * rendering/SVGRenderStyle.h: Removed.
+ * rendering/SVGRenderStyleDefs.cpp: Removed.
+ * rendering/SVGRenderStyleDefs.h: Removed.
+ * rendering/style/DataRef.h: Copied from rendering/DataRef.h.
+ * rendering/style/SVGRenderStyle.cpp: Copied from rendering/SVGRenderStyle.cpp.
+ * rendering/style/SVGRenderStyle.h: Copied from rendering/SVGRenderStyle.h.
+ * rendering/style/SVGRenderStyleDefs.cpp: Copied from rendering/SVGRenderStyleDefs.cpp.
+ * rendering/style/SVGRenderStyleDefs.h: Copied from rendering/SVGRenderStyleDefs.h.
+
+2008-09-18 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Add a means of clearing a FrameTree's name.
+
+ * WebCore.base.exp:
+ * page/FrameTree.cpp:
+ (WebCore::FrameTree::clearName):
+ * page/FrameTree.h:
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Eliminate addToSuperview from Widget, since it was only called
+ by ScrollViewMac's addChild method. Just shift the original body
+ of addToSuperView into addChild.
+
+ Reviewed by Sam Weinig
+
+ * platform/Widget.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::addChild):
+ * platform/mac/WidgetMac.mm:
+
+2008-09-18 Collin Jackson <collinj@webkit.org>
+
+ Reviewed by Antti Koivisto and Mark Rowe.
+
+ Test: http/tests/misc/dns-prefetch-control.html
+
+ https://bugs.webkit.org/show_bug.cgi?id=20690
+
+ Invoke WebCore::prefetchDNS() on host names that appear in
+ in the href of hyperlinks and <link rel="dns-prefetch">. This
+ can be used to implement DNS prefetching.
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.cpp:
+ (WebCore::Document::Document):
+ (WebCore::Document::processHttpEquiv):
+ (WebCore::Document::setSecurityOrigin):
+ (WebCore::Document::initDNSPrefetch):
+ (WebCore::Document::parseDNSPrefetchControlHeader):
+ * dom/Document.h:
+ (WebCore::Document::isDNSPrefetchEnabled):
+ * html/HTMLAnchorElement.cpp:
+ (WebCore::HTMLAnchorElement::parseMappedAttribute):
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::HTMLLinkElement):
+ (WebCore::HTMLLinkElement::parseMappedAttribute):
+ (WebCore::HTMLLinkElement::tokenizeRelAttribute):
+ (WebCore::HTMLLinkElement::process):
+ * html/HTMLLinkElement.h:
+ * html/PreloadScanner.cpp:
+ (WebCore::PreloadScanner::processAttribute):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::begin):
+ * platform/gtk/TemporaryLinkStubs.cpp:
+ (WebCore::prefetchDNS):
+ * platform/network/DNS.h: Added.
+ * platform/network/cf/DNSCFNet.cpp: Added.
+ (WebCore::prefetchDNS):
+ * platform/qt/TemporaryLinkStubs.cpp:
+ (WebCore::prefetchDNS):
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (WebCore::prefetchDNS):
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Eliminate the convertToScreenCoordinate method on Widget, since
+ ScrollView has redundant methods that already do the same thing.
+
+ Reviewed by Sam Weinig
+
+ * editing/mac/SelectionControllerMac.mm:
+ (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
+ * platform/Widget.h:
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::containingWindow):
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Move to only one constructor for Widgets. Rename data to m_data and make
+ it have an #ifdef only for platforms that have platform-specific data (Mac
+ and Gtk).
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * platform/Widget.cpp:
+ (WebCore::Widget::init):
+ * platform/Widget.h:
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::~Widget):
+ (WebCore::Widget::cursor):
+ (WebCore::Widget::setCursor):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::~Widget):
+ (WebCore::Widget::addToSuperview):
+ (WebCore::Widget::removeFromSuperview):
+ (WebCore::Widget::beforeMouseDown):
+ (WebCore::Widget::afterMouseDown):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::Widget):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::Widget):
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Move Qt's isNPAPIPlugin boolean from Widget down to PluginView, since there
+ was no reason for it to be on Widget. This change eliminates Qt ifdefs
+ from Widget.
+
+ Reviewed by Sam Weinig
+
+ * bindings/js/ScriptControllerQt.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ (WebCore::WidgetPrivate::~WidgetPrivate):
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::~Widget):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::PluginView):
+ * plugins/PluginView.h:
+ (WebCore::PluginView::isNPAPIPlugin):
+ (WebCore::PluginView::setIsNPAPIPlugin):
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Make geometryChanged() cross-platform on Widget. GTK and WIN platform
+ ifdefs are now gone from Widget!
+
+ Reviewed by Sam Weinig
+
+ * platform/Widget.h:
+ (WebCore::Widget::geometryChanged):
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/qt/WidgetQt.cpp:
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Consolidate convertTo/FromContainingWindow methods so that all platforms
+ but Mac share the same code.
+
+ Move convertSelfToChild and convertChildToSelf to ScrollView, since
+ Widget should know nothing about children. Make the methods cross-platform
+ on ScrollView.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::convertChildToSelf):
+ (WebCore::ScrollView::convertSelfToChild):
+ * platform/Widget.cpp:
+ (WebCore::Widget::convertToContainingWindow):
+ (WebCore::Widget::convertFromContainingWindow):
+ * platform/Widget.h:
+ (WebCore::Widget::geometryChanged):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ * platform/mac/WidgetMac.mm:
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ * platform/qt/WidgetQt.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::isScrollViewScrollbar):
+ * platform/win/WidgetWin.cpp:
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Make the conversion methods that go to and from some containingWindow
+ cross-platform. Implement them on Mac.
+
+ Reviewed by Sam Weinig
+
+ * platform/Widget.h:
+ (WebCore::Widget::setContainingWindow):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::convertFromContainingWindow):
+ (WebCore::Widget::convertToContainingWindow):
+
+2008-09-18 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by David "Yeah-yeah" Hyatt.
+
+ Cleanup RenderStyle.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/style/CounterContent.h:
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+
+2008-09-18 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Sam Weinig
+
+ Fixed https://bugs.webkit.org/show_bug.cgi?id=20908
+ Now TransformOperations and AnimationList no longer
+ inherit from Vector<> but rather have API to access.
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::computedTransform):
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::createTransformOperations):
+ * page/animation/AnimationBase.cpp:
+ (WebCore::blendFunc):
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+ (WebCore::CompositeAnimation::updateKeyframeAnimations):
+ (WebCore::CompositeAnimation::animate):
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::validateTransformFunctionList):
+ * page/animation/KeyframeAnimation.cpp:
+ (WebCore::KeyframeAnimation::validateTransformFunctionList):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::updateReflectionStyle):
+ * rendering/style/AnimationList.cpp:
+ (WebCore::AnimationList::operator==):
+ * rendering/style/AnimationList.h:
+ (WebCore::AnimationList::operator!=):
+ (WebCore::AnimationList::size):
+ (WebCore::AnimationList::isEmpty):
+ (WebCore::AnimationList::resize):
+ (WebCore::AnimationList::remove):
+ (WebCore::AnimationList::append):
+ (WebCore::AnimationList::animation):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::StyleRareNonInheritedData::updateKeyframes):
+ (WebCore::RenderStyle::applyTransform):
+ (WebCore::RenderStyle::adjustAnimations):
+ (WebCore::RenderStyle::adjustTransitions):
+ (WebCore::RenderStyle::transitionForProperty):
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::hasTransform):
+ * rendering/style/TransformOperations.cpp:
+ (WebCore::TransformOperations::TransformOperations):
+ (WebCore::TransformOperations::operator==):
+ * rendering/style/TransformOperations.h:
+ (WebCore::TransformOperations::apply):
+ (WebCore::TransformOperations::operations):
+
+2008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Build fix.
+
+ [qt] Build fixes after the Widget/ScrollView cleanup
+ topLevel() is now root()
+
+
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::scrollBackingStore):
+ (WebCore::ScrollView::addChild):
+ (WebCore::ScrollView::removeChild):
+
+2008-09-18 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Mark Rowe.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20437
+
+ XMLTokenizer.cpp used to contain two different implementations. One was using
+ libxml2 and the other was using the Qt XML StreamReader. Clean up the code by
+ separating the two implementations from each other.
+ Common code and some small bits are kept inside the XMLTokenizer.cpp, the Qt code
+ was moved to XMLTokenizerQt.cpp and the Libxml2 based code was moved to
+ XMLTokenizerLibxml2.cpp. There should be no functional changes.
+
+ Attempt to add XMLTokenizerLibxml2.cpp to every buildsystem so the build continues
+ to work.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * dom/XMLTokenizer.cpp:
+ (WebCore::isScriptElement):
+ (WebCore::castToScriptElement):
+ (WebCore::XMLTokenizer::setCurrentNode):
+ (WebCore::XMLTokenizer::write):
+ (WebCore::XMLTokenizer::eventuallyMarkAsParserCreated):
+ (WebCore::XMLTokenizer::enterText):
+ (WebCore::toString):
+ (WebCore::XMLTokenizer::exitText):
+ (WebCore::XMLTokenizer::end):
+ (WebCore::XMLTokenizer::insertErrorMessageBlock):
+ * dom/XMLTokenizer.h:
+ (WebCore::XMLTokenizer::wellFormed):
+ * dom/XMLTokenizerLibxml2.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
+ (WebCore::createMemoryParser):
+ (WebCore::XMLTokenizer::XMLTokenizer):
+ (WebCore::XMLTokenizer::~XMLTokenizer):
+ (WebCore::XMLTokenizer::doWrite):
+ (WebCore::ignorableWhitespaceHandler):
+ (WebCore::XMLTokenizer::initializeParserContext):
+ (WebCore::XMLTokenizer::doEnd):
+ (WebCore::XMLTokenizer::lineNumber):
+ (WebCore::XMLTokenizer::columnNumber):
+ (WebCore::XMLTokenizer::stopParsing):
+ (WebCore::XMLTokenizer::resumeParsing):
+ (WebCore::parseXMLDocumentFragment):
+ (WebCore::attributesStartElementNsHandler):
+ (WebCore::parseAttributes):
+ * dom/XMLTokenizerQt.cpp: Copied from WebCore/dom/XMLTokenizer.cpp.
+ (WebCore::EntityResolver::resolveUndeclaredEntity):
+ (WebCore::XMLTokenizer::XMLTokenizer):
+ (WebCore::XMLTokenizer::~XMLTokenizer):
+ (WebCore::XMLTokenizer::doWrite):
+ (WebCore::XMLTokenizer::initializeParserContext):
+ (WebCore::XMLTokenizer::doEnd):
+ (WebCore::XMLTokenizer::lineNumber):
+ (WebCore::XMLTokenizer::columnNumber):
+ (WebCore::XMLTokenizer::stopParsing):
+ (WebCore::XMLTokenizer::resumeParsing):
+ (WebCore::parseXMLDocumentFragment):
+ (WebCore::attributesStartElementNsHandler):
+ (WebCore::parseAttributes):
+ (WebCore::):
+
+2008-09-18 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Geoff Garen.
+
+ Build fix for non-Mac builds.
+
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+
+2008-09-18 Peter Kasting <pkasting@google.com>
+
+ Reviewed by hyatt. Landed by eseidel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20745
+ Animated GIFs do not animate properly with (at least) CG.
+
+ * WebCore\platform\graphics\BitmapImage.cpp:
+ * WebCore\platform\graphics\BitmapImage.h:
+ * WebCore\platform\graphics\cairo\ImageCairo.cpp:
+ * WebCore\platform\graphics\cg\ImageCG.cpp:
+ * WebCore\platform\graphics\qt\ImageQt.cpp:
+ * WebCore\platform\graphics\wx\ImageWx.cpp:
+
+2008-09-18 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin
+
+ <rdar://problem/6224222> AX: should not expose a <table> as an AXTable if ARIA
+ role specifies otherwise
+
+ If a <table> isn't an AXTable, the rows and cells should default to AccessibilityRenderObject
+
+ Test: accessibility/table-with-aria-role.html
+
+ * page/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+ (WebCore::AccessibilityTable::addChildren):
+ (WebCore::AccessibilityTable::roleValue):
+ (WebCore::AccessibilityTable::accessibilityIsIgnored):
+ (WebCore::AccessibilityTable::title):
+ * page/AccessibilityTableCell.cpp:
+ (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
+ (WebCore::AccessibilityTableCell::isTableCell):
+ (WebCore::AccessibilityTableCell::roleValue):
+ * page/AccessibilityTableCell.h:
+ * page/AccessibilityTableRow.cpp:
+ (WebCore::AccessibilityTableRow::roleValue):
+ (WebCore::AccessibilityTableRow::isTableRow):
+ (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
+ * page/AccessibilityTableRow.h:
+
+2008-09-18 Steve Falkenburg <sfalken@apple.com>
+
+ Use higher-resolution timers on all variants of Windows.
+
+ Reviewed by Darin Adler.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::setSharedTimerFireTime):
+
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Make containingWindow() and setContainingWindow() cross-platform.
+ Add a root() function cross-platform so Qt doesn't have to
+ define its own.
+
+ Reviewed by Darin Adler
+
+ * platform/Widget.cpp:
+ (WebCore::Widget::root):
+ * platform/Widget.h:
+ (WebCore::Widget::setContainingWindow):
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::containingWindow):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::addChild):
+ (WebCore::ScrollView::removeChild):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::containingWindow):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::invalidateRect):
+ (WebCore::Widget::containingWindow):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::~Widget):
+ (WebCore::Widget::containingWindow):
+
+2008-09-18 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20515 Crash upon
+ parsing CSS: unicode-range: searchfield-cancel-buttonpt=-webkit-
+ dashboard-region=
+ and corresponding: <rdar://problem/6174100>
+
+ This patch makes CSSParserValue::createCSSValue handle unknown
+ identifiers.
+
+ * css/CSSParserValues.cpp:
+ (WebCore::CSSParserValue::createCSSValue): If we have an identifier
+ with no id (an unknown identifier) create a CSSPrimitiveValue of
+ type CSS_PARSER_IDENTIFIER
+ * css/CSSPrimitiveValue.cpp:
+ (WebCore::CSSPrimitiveValue::cssText):
+ (WebCore::CSSPrimitiveValue::parserValue):
+ * css/CSSPrimitiveValue.h:
+ (WebCore::CSSPrimitiveValue::):
+
+2008-09-18 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by David "I'd prefer not" Hyatt.
+
+ More the remaining class out of RenderStyle.h/cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * rendering/style/CursorData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::CursorData::CursorData):
+ (WebCore::CursorData::operator==):
+ (WebCore::CursorData::operator!=):
+ * rendering/style/CursorList.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::CursorList::operator[]):
+ (WebCore::CursorList::CursorList):
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::deref):
+ (WebCore::RenderStyle::hasOneRef):
+ (WebCore::RenderStyle::InheritedFlags::operator!=):
+ (WebCore::RenderStyle::NonInheritedFlags::operator!=):
+ (WebCore::RenderStyle::hasBackground):
+ (WebCore::RenderStyle::outlineWidth):
+ (WebCore::RenderStyle::autoWrap):
+ (WebCore::RenderStyle::preserveNewline):
+ (WebCore::RenderStyle::collapseWhiteSpace):
+ (WebCore::RenderStyle::isCollapsibleWhiteSpace):
+ (WebCore::RenderStyle::breakOnlyAfterWhiteSpace):
+ (WebCore::RenderStyle::breakWords):
+ (WebCore::RenderStyle::outlineOffset):
+ (WebCore::RenderStyle::setLeft):
+ (WebCore::RenderStyle::setRight):
+ (WebCore::RenderStyle::setTop):
+ (WebCore::RenderStyle::setBottom):
+ (WebCore::RenderStyle::setDashboardRegion):
+ (WebCore::RenderStyle::setBackgroundColor):
+ (WebCore::RenderStyle::setBorderImage):
+ (WebCore::RenderStyle::setBorderRadius):
+ (WebCore::RenderStyle::setFontDescription):
+ (WebCore::RenderStyle::adjustBackgroundLayers):
+ (WebCore::RenderStyle::adjustMaskLayers):
+ (WebCore::RenderStyle::deleteBindingURIs):
+ (WebCore::RenderStyle::inheritBindingURIs):
+ (WebCore::RenderStyle::isDisplayReplacedType):
+ (WebCore::RenderStyle::isDisplayInlineType):
+ (WebCore::RenderStyle::isOriginalDisplayInlineType):
+ * rendering/style/StyleInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleInheritedData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleInheritedData::operator!=):
+ * rendering/style/StyleRareInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleRareInheritedData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleRareInheritedData::operator!=):
+ * rendering/style/StyleRareNonInheritedData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleRareNonInheritedData.h: Copied from rendering/style/RenderStyle.h.
+ * rendering/style/StyleReflection.h: Copied from rendering/style/RenderStyle.h.
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Move the concept of suppression invalidation on Widgets to Scrollbar
+ instead. Since this is only used by Scrollbars, there is no need for
+ it to be on Widget.
+
+ Reviewed by Sam Weinig
+
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ (WebCore::Scrollbar::invalidateRect):
+ * platform/Scrollbar.h:
+ (WebCore::Scrollbar::suppressInvalidation):
+ (WebCore::Scrollbar::setSuppressInvalidation):
+ * platform/Widget.h:
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::invalidateRect):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ (WebCore::Widget::invalidateRect):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::invalidateRect):
+
+2008-09-18 David Hyatt <hyatt@apple.com>
+
+ Make invalidate() on Widget non-virtual and make it just call
+ invalidateRect() on the boundsGeometry() of the Widget.
+
+ Reviewed by Dan Bernstein
+
+ * platform/Widget.h:
+ (WebCore::Widget::boundsGeometry):
+ (WebCore::Widget::invalidate):
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/mac/WidgetMac.mm:
+ * platform/qt/WidgetQt.cpp:
+ * platform/win/WidgetWin.cpp:
+ * platform/wx/WidgetWx.cpp:
+
+2008-09-18 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped in exile by David Hyatt.
+
+ Split Animation, AnimationList, BindingURI, ContentData, CounterContent,
+ KeyframeList, ShadowData, StyleFlexibleBoxData and TimingFunction out of
+ RenderStyle.h/cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * css/CSSStyleSelector.cpp:
+ * css/CSSStyleSelector.h:
+ * page/animation/CompositeAnimation.cpp:
+ * page/animation/KeyframeAnimation.cpp:
+ * page/animation/KeyframeAnimation.h:
+ * rendering/RenderCounter.h:
+ * rendering/style/Animation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ (WebCore::Animation::~Animation):
+ (WebCore::Animation::animationsMatch):
+ (WebCore::Animation::keyframeList):
+ (WebCore::Animation::setAnimationKeyframe):
+ * rendering/style/Animation.h: Copied from rendering/style/RenderStyle.h.
+ * rendering/style/AnimationList.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/AnimationList.h: Copied from rendering/style/RenderStyle.h.
+ * rendering/style/BindingURI.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/BindingURI.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::BindingURI::operator!=):
+ * rendering/style/ContentData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/ContentData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::ContentData::ContentData):
+ (WebCore::ContentData::~ContentData):
+ * rendering/style/CounterContent.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::CounterContent::CounterContent):
+ * rendering/style/CounterDirectives.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/CounterDirectives.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::CounterDirectives::CounterDirectives):
+ * rendering/style/KeyframeList.cpp: Copied from rendering/style/RenderStyle.cpp.
+ (WebCore::KeyframeList::insert):
+ * rendering/style/KeyframeList.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::KeyframeValue::KeyframeValue):
+ (WebCore::KeyframeList::create):
+ (WebCore::KeyframeList::KeyframeList):
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/ShadowData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/ShadowData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::ShadowData::ShadowData):
+ (WebCore::ShadowData::~ShadowData):
+ (WebCore::ShadowData::operator!=):
+ * rendering/style/StyleFlexibleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleFlexibleBoxData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleFlexibleBoxData::operator!=):
+ * rendering/style/TimingFunction.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::TimingFunction::TimingFunction):
+ (WebCore::TimingFunction::operator==):
+
+2008-09-18 Adele Peterson <adele@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix RenderStyle leaks.
+
+ * rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::createSubtreeIfNeeded):
+
+2008-09-18 Kevin McCullough <kmccullough@apple.com>
+
+ Accidentally checked in code.
+
+ * html/HTMLElementFactory.cpp:
+ (WebCore::frameConstructor):
+ (WebCore::iframeConstructor):
+
+2008-09-18 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/5722310> gracefully handle too many console messages
+ (20904)
+ - Keep track of the most previous message and then compare it to the
+ subsequent messages as they come in. If there are multiple of the same
+ message create a count that indicates the current number.
+
+ * manual-tests/inspector/multiple-console-messages.html: Added.
+ * page/inspector/Console.js:
+ * page/inspector/inspector.css:
+
+2008-09-18 Jonathon Jongsma <jonathon@quotidian.org>
+
+ Reviewed by Alp Toker
+
+ https://bugs.webkit.org/show_bug.cgi?id=20830
+ [GTK] Don't use deprecated pango API
+
+ Replace deprecated pango functions with non-deprecated ones for newer
+ versions of pango
+
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::getDefaultPangoLayout):
+ * platform/graphics/gtk/FontPlatformDataPango.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+
+2008-09-18 Alp Toker <alp@nuanti.com>
+
+ Build fix for r36587. Add new sources (and sort the lists).
+
+ * GNUmakefile.am:
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Fix Windows build.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Switch back to having frameGeometry be virtual in order to keep Mac
+ the way it used to be.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * platform/Widget.cpp:
+ (WebCore::Widget::setParent):
+ * platform/Widget.h:
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFrameGeometry):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFrameGeometry):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFrameGeometry):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFrameGeometry):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFrameGeometry):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::setFrameGeometry):
+ (WebCore::PluginView::geometryChanged):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::updatePluginWidget):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Mark Rowe.
+
+ Fix assertion in DOMWindow::adjustWindowRect where we were passing
+ in garbage values and were getting lucky that they were a not Nan.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::windowProtoFuncOpen):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Fix gtk build.
+
+ * rendering/style/MatrixTransformOperation.cpp:
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped with love by David Hyatt.
+
+ Split IdentityTransformOperation, MatrixTransformOperation, RotateTransformOperation,
+ ScaleTransformOperation, SkewTransformOperation, StyleTransformData, TransformOperation,
+ TransformOperations and TranslateTransformOperation out of RenderStyle.h/cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * css/CSSStyleSelector.cpp:
+ * page/animation/AnimationBase.cpp:
+ (WebCore::solveEpsilon):
+ * rendering/RenderLayer.cpp:
+ * rendering/style/IdentityTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ * rendering/style/MatrixTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/MatrixTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::MatrixTransformOperation::MatrixTransformOperation):
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/RotateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/RotateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::RotateTransformOperation::RotateTransformOperation):
+ * rendering/style/ScaleTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/ScaleTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::ScaleTransformOperation::ScaleTransformOperation):
+ * rendering/style/SkewTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/SkewTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::SkewTransformOperation::SkewTransformOperation):
+ * rendering/style/StyleTransformData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleTransformData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleTransformData::operator!=):
+ * rendering/style/TransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::TransformOperation::):
+ * rendering/style/TransformOperations.cpp: Copied from rendering/style/RenderStyle.cpp.
+ (WebCore::TransformOperations::TransformOperations):
+ * rendering/style/TransformOperations.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::TransformOperations::operator!=):
+ * rendering/style/TranslateTransformOperation.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/TranslateTransformOperation.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::TranslateTransformOperation::TranslateTransformOperation):
+
+2008-09-17 Mark Rowe <mrowe@apple.com>
+
+ Build fix.
+
+ * rendering/style/StyleDashboardRegion.h: PlatformString.h rather than String.h.
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ (1) Inline a bunch of methods for accessing frame geometry.
+ (2) Make sure frameGeometry() works even when you have no underlying
+ native widget.
+ (3) Cache a frame geometry rect cross-platform (even for widgets that
+ have underlying native widgets.
+ (4) PluginView's updateWindow call is now a virtual function on Widget.
+
+ Reviewed by Sam Weinig
+
+ * ChangeLog:
+ * WebCore.base.exp:
+ * platform/Widget.cpp:
+ (WebCore::Widget::setFrameGeometry):
+ * platform/Widget.h:
+ (WebCore::Widget::x):
+ (WebCore::Widget::y):
+ (WebCore::Widget::width):
+ (WebCore::Widget::height):
+ (WebCore::Widget::size):
+ (WebCore::Widget::pos):
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::resize):
+ (WebCore::Widget::move):
+ (WebCore::Widget::isFrameView):
+ (WebCore::Widget::windowClipRect):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::~Widget):
+ (WebCore::Widget::updatePlatformWidgetFrameGeometry):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::updatePlatformWidgetFrameGeometry):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::setFrameGeometry):
+ (WebCore::PluginView::geometryChanged):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::updatePlatformWidgetFrameGeometry):
+ * plugins/wx/PluginViewWx.cpp:
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by David "Waterman" Hyatt.
+
+ Fix a leak of NSViews in WidgetMac.mm.
+
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::~Widget):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by David Waterman Hyatt.
+
+ Split FillLayer, StyleBackgroundData, StyleBoxData, StyleDashboardRegion, StyleMarqueeData
+ StyleMultiColData and StyleVisualData out of RenderStyle.h/cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * rendering/style/FillLayer.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/FillLayer.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::FillLayer::operator!=):
+ (WebCore::FillLayer::hasImage):
+ (WebCore::FillLayer::hasFixedImage):
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleBackgroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ (WebCore::StyleBackgroundData::StyleBackgroundData):
+ * rendering/style/StyleBackgroundData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleBackgroundData::~StyleBackgroundData):
+ (WebCore::StyleBackgroundData::operator!=):
+ * rendering/style/StyleBoxData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleBoxData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleBoxData::operator!=):
+ * rendering/style/StyleDashboardRegion.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleDashboardRegion::operator!=):
+ * rendering/style/StyleMarqueeData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleMarqueeData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleMarqueeData::operator!=):
+ * rendering/style/StyleMultiColData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleMultiColData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleMultiColData::operator!=):
+ (WebCore::StyleMultiColData::ruleWidth):
+ * rendering/style/StyleVisualData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleVisualData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleVisualData::operator==):
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Remove WidgetClient from Widget.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * platform/Widget.h:
+ (WebCore::Widget::setClient):
+ (WebCore::Widget::client):
+ * platform/WidgetClient.h: Removed.
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::show):
+ (WebCore::Widget::hide):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::Widget):
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Remove isEnabled/setEnabled from Widget. The concept of being enabled now
+ only applies to Scrollbars so the method has been moved there and made
+ cross-platform. Scrollbar subclasses that have a corresponding native
+ widget can subclass setEnabled to change the enabled state of the native
+ widget.
+
+ Reviewed by Sam Weinig & Darin Adler
+
+ * WebCore.base.exp:
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ * platform/Scrollbar.h:
+ (WebCore::Scrollbar::enabled):
+ (WebCore::Scrollbar::setEnabled):
+ * platform/Widget.h:
+ * platform/gtk/ScrollbarGtk.cpp:
+ (ScrollbarGtk::setEnabled):
+ * platform/gtk/ScrollbarGtk.h:
+ * platform/gtk/WidgetGtk.cpp:
+ * platform/mac/ScrollbarMac.h:
+ * platform/mac/ScrollbarMac.mm:
+ (WebCore::ScrollbarMac::scrollbarHit):
+ (WebCore::ScrollbarMac::setEnabled):
+ * platform/mac/WidgetMac.mm:
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ * platform/wx/WidgetWx.cpp:
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by David Hyatt.
+
+ Split all RenderStyle enums into their own file.
+
+ * GNUmakefile.am:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * rendering/style/BorderValue.h:
+ * rendering/style/CollapsedBorderValue.h:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/RenderStyleConstants.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::):
+ * rendering/style/StyleCachedImage.h:
+ * rendering/style/StyleGeneratedImage.h:
+ * rendering/style/StyleImage.h:
+
+2008-09-17 Steve Falkenburg <sfalken@apple.com>
+
+ Add back isFrameView check to fix failed assertion during scroll bar teardown.
+
+ Reviewed by Dave Hyatt.
+
+ * platform/Scrollbar.cpp:
+ (WebCore::Scrollbar::setParent):
+
+2008-09-17 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Mac build fix
+
+ * WebCore.xcodeproj/project.pbxproj: Send appropriate headers to WebKit
+
+2008-09-17 Steve Falkenburg <sfalken@apple.com>
+
+ Fix build.
+
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::setParentVisible):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::init):
+
+2008-09-17 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon.
+
+ [QtWebKit] Implement error handling in TextCodecQt::decode
+ Use the QTextCodec parsing state to set the sawError out variable. This
+ is needed to pass Test 70 of acid3. The test case for this bug is
+ fast/encoding/invalid-xml.html that is now partially passed. To pass
+ it completely the Qt text codecs need to be adjusted to have proper
+ error handling.
+
+ * platform/text/qt/TextCodecQt.cpp:
+ (WebCore::TextCodecQt::decode):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Rubber-stamped by Dave Hyatt.
+
+ Split BorderData, BorderValue, CollapsedBorderValue, OutlineValue and StyleSurroundData
+ out of RenderStyle.h/cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * rendering/style/BorderData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::BorderData::hasBorderRadius):
+ (WebCore::BorderData::borderLeftWidth):
+ (WebCore::BorderData::borderRightWidth):
+ (WebCore::BorderData::borderTopWidth):
+ (WebCore::BorderData::borderBottomWidth):
+ (WebCore::BorderData::operator!=):
+ * rendering/style/BorderValue.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::):
+ (WebCore::BorderValue::BorderValue):
+ (WebCore::BorderValue::nonZero):
+ (WebCore::BorderValue::isTransparent):
+ (WebCore::BorderValue::isVisible):
+ * rendering/style/CollapsedBorderValue.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::):
+ (WebCore::CollapsedBorderValue::CollapsedBorderValue):
+ (WebCore::CollapsedBorderValue::operator==):
+ * rendering/style/OutlineValue.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::OutlineValue::OutlineValue):
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleSurroundData.cpp: Copied from rendering/style/RenderStyle.cpp.
+ * rendering/style/StyleSurroundData.h: Copied from rendering/style/RenderStyle.h.
+ (WebCore::StyleSurroundData::operator!=):
+
+2008-09-17 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ This is a better fix for: Invalid CSS code crashes Safari
+ https://bugs.webkit.org/show_bug.cgi?id=20512
+
+ The spec indicates that the only valid input for a counter is a
+ number or an identifier. So that is exactly what we allow.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseCounterContent):
+
+2008-09-17 Alp Toker <alp@nuanti.com>
+
+ GTK+ build fix. Adapt to use PlatformWidget functions.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollViewScrollbar::geometryChanged):
+ (WebCore::ScrollView::addChild):
+ (WebCore::ScrollView::removeChild):
+ * platform/gtk/ScrollbarGtk.cpp:
+ (ScrollbarGtk::ScrollbarGtk):
+ (ScrollbarGtk::~ScrollbarGtk):
+ (ScrollbarGtk::geometryChanged):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Adele Peterson.
+
+ Patch for <rdar://problem/6133884>
+ Calling window.resizeTo() on a subframe shouldn't change the window size
+
+ Test: fast/dom/Window/window-resize-and-move-sub-frame.html
+
+ * page/DOMWindow.cpp:
+ (WebCore::DOMWindow::moveBy):
+ (WebCore::DOMWindow::moveTo):
+ (WebCore::DOMWindow::resizeBy):
+ (WebCore::DOMWindow::resizeTo):
+
+2008-09-17 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20512 Invalid CSS
+ code crashes Safari
+ and corresponding: <rdar://problem/6173832>
+
+ Reading through the spec, it seems like a function is not valid
+ input for a counter. So this patch checks for that and bails in the
+ case of invalid input.
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseCounterContent):
+
+2008-09-17 Greg Bolsinga <bolsinga@apple.com>
+
+ Reviewed by Antti Koivisto.
+
+ Fix <rdar://problem/6227089>
+ Crash in WebCore::Frame::setNeedsReapplyStyles()
+
+ View is null checked elsewhere too.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::setNeedsReapplyStyles):
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Make the notion of having a native widget backing a Widget cross-platform.
+ The PlatformWidget abstraction (which already existed) is used for this.
+ Windows = HWND
+ Qt = QWidget
+ Mac = NSView
+ wx = wxWindow
+ Gtk = GtkWidget
+
+ There are new cross-platform methods that replace all of the unique
+ platform-specific methods.
+ platformWidget()
+ setPlatformWidget()
+
+ For plugins, on every platform except Qt on Windows, the plugin's native
+ widget is now stored in the Widget base class. Since Qt on Windows uses
+ HWNDs for plugins instead of QWidget, it is the only platform to keep the
+ m_window variable in PluginView.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * bindings/js/ScriptControllerMac.mm:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper attachmentView]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::passMouseDownEventToWidget):
+ (WebCore::EventHandler::mouseDownViewIfStillGood):
+ (WebCore::EventHandler::passWheelEventToWidget):
+ (WebCore::EventHandler::sendFakeEventsAfterWidgetTracking):
+ * platform/Widget.cpp:
+ (WebCore::Widget::init):
+ (WebCore::Widget::setParent):
+ (WebCore::Widget::releasePlatformWidget):
+ (WebCore::Widget::retainPlatformWidget):
+ * platform/Widget.h:
+ (WebCore::Widget::platformWidget):
+ (WebCore::Widget::setPlatformWidget):
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::setFocus):
+ (WebCore::gdkDrawable):
+ (WebCore::Widget::setCursor):
+ (WebCore::Widget::show):
+ (WebCore::Widget::hide):
+ (WebCore::Widget::setEnabled):
+ (WebCore::Widget::isEnabled):
+ (WebCore::Widget::paint):
+ * platform/mac/PlatformScreenMac.mm:
+ (WebCore::screenRect):
+ (WebCore::screenAvailableRect):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::scrollView):
+ (WebCore::ScrollView::update):
+ (WebCore::ScrollView::inWindow):
+ * platform/mac/ScrollbarMac.mm:
+ (WebCore::ScrollbarMac::ScrollbarMac):
+ (WebCore::ScrollbarMac::~ScrollbarMac):
+ (WebCore::ScrollbarMac::updateThumbPosition):
+ (WebCore::ScrollbarMac::updateThumbProportion):
+ (WebCore::ScrollbarMac::scrollbarHit):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::setEnabled):
+ (WebCore::Widget::isEnabled):
+ (WebCore::Widget::setFocus):
+ (WebCore::Widget::getOuterView):
+ (WebCore::Widget::paint):
+ (WebCore::Widget::invalidate):
+ (WebCore::Widget::invalidateRect):
+ (WebCore::Widget::setIsSelected):
+ (WebCore::Widget::releasePlatformWidget):
+ (WebCore::Widget::retainPlatformWidget):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::setFrameGeometry):
+ (WebCore::Widget::show):
+ (WebCore::Widget::hide):
+ (WebCore::Widget::isEnabled):
+ (WebCore::Widget::setEnabled):
+ (WebCore::Widget::invalidateRect):
+ (WebCore::Widget::containingWindow):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::frameGeometry):
+ (WebCore::Widget::setFocus):
+ (WebCore::Widget::setCursor):
+ (WebCore::Widget::show):
+ (WebCore::Widget::hide):
+ (WebCore::Widget::setFrameGeometry):
+ (WebCore::Widget::setEnabled):
+ (WebCore::Widget::isEnabled):
+ (WebCore::Widget::invalidate):
+ (WebCore::Widget::invalidateRect):
+ (WebCore::Widget::paint):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::PluginView):
+ * plugins/PluginView.h:
+ (WebCore::PluginView::platformPluginWidget):
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::updateWindow):
+ (WebCore::PluginView::setFocus):
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::setParent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::setParentVisible):
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::forceRedraw):
+ (WebCore::PluginView::init):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::updateWindow):
+ (WebCore::PluginView::setFocus):
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::setParent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::setParentVisible):
+ (WebCore::PluginView::getValue):
+ (WebCore::PluginView::~PluginView):
+ (WebCore::PluginView::init):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::updateWindow):
+ (WebCore::PluginView::setFocus):
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::setParent):
+ (WebCore::PluginView::setParentVisible):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ (WebCore::PluginView::invalidateRect):
+ (WebCore::PluginView::forceRedraw):
+ (WebCore::PluginView::~PluginView):
+ (WebCore::PluginView::init):
+
+2008-09-17 Sam Weinig <sam@webkit.org>
+
+ Fix assert.
+
+ * platform/Widget.cpp:
+ (WebCore::Widget::setParent):
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Beginnings of Widget refactoring (in order to make the mixing of
+ widgets with and without corresponding native widgets more cross-platform).
+
+ This first patch makes the concept of a parent ScrollView cross-platform.
+
+ Note the similarity of the show/hide methods on the three PluginViews. This
+ will be refactored better in a later patch so that they can all share
+ a base class Widget show/hide method. For now the changes were made
+ simply to be able to bring WidgetWin's setParent method up into Widget.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.base.exp:
+ * platform/ScrollView.h:
+ * platform/Widget.cpp:
+ (WebCore::Widget::init):
+ (WebCore::Widget::setParent):
+ * platform/Widget.h:
+ (WebCore::Widget::isSelfVisible):
+ (WebCore::Widget::isParentVisible):
+ (WebCore::Widget::isVisible):
+ (WebCore::Widget::setParentVisible):
+ (WebCore::Widget::isPluginView):
+ (WebCore::Widget::parent):
+ (WebCore::Widget::handleEvent):
+ (WebCore::Widget::geometryChanged):
+ * platform/gtk/WidgetGtk.cpp:
+ (WebCore::Widget::Widget):
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::addChild):
+ (WebCore::ScrollView::removeChild):
+ * platform/mac/ScrollbarMac.mm:
+ (WebCore::ScrollbarMac::~ScrollbarMac):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::~Widget):
+ * platform/qt/WidgetQt.cpp:
+ (WebCore::WidgetPrivate::WidgetPrivate):
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::topLevel):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::ScrollViewPrivate):
+ (WebCore::ScrollView::setAncestorVisible):
+ (WebCore::ScrollView::show):
+ (WebCore::ScrollView::hide):
+ * platform/win/WidgetWin.cpp:
+ (WebCore::Widget::Widget):
+ (WebCore::Widget::setParent):
+ * platform/wx/WidgetWx.cpp:
+ (WebCore::Widget::Widget):
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::PluginView):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::setParentVisible):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::setParentVisible):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::show):
+ (WebCore::PluginView::hide):
+ (WebCore::PluginView::setParentVisible):
+
+2008-09-17 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ <rdar://problem/6219577> Spew in console at launch about encoding mappings when running with ICU 4.0
+
+ * platform/text/TextCodecICU.cpp:
+ (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated for new encoding names.
+
+2008-09-17 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Fix the QtWebKit/Mac build
+
+ * platform/qt/ScrollViewQt.cpp: add include
+
+2008-09-17 David Hyatt <hyatt@apple.com>
+
+ Add a #define to control whether or not to use an NSScroller on Mac.
+ This ifdef will allow the new NSView-less NSScroller on Mac to be
+ developed side by side with the current one.
+
+ The new scroller paints a debug red if turned on (although due to
+ Widget issues you won't see anything paint yet).
+
+ Reviewed by olliej
+
+ * platform/Scrollbar.cpp:
+ * platform/Scrollbar.h:
+ * platform/mac/ScrollbarMac.h:
+ * platform/mac/ScrollbarMac.mm:
+ * platform/mac/ScrollbarThemeMac.cpp:
+ (WebCore::ScrollbarThemeMac::paint):
+ * platform/mac/ScrollbarThemeMac.h:
+
+2008-09-16 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Alp Toker.
+
+ http://bugs.webkit.org/show_bug.cgi?id=20854
+ [GTK] Windows can be not realized in ScrollView::update
+
+ Do not call gdk_window_invalidate_rect on a non-realized GtkWidget.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::update):
+
+2008-09-16 Alp Toker <alp@nuanti.com>
+
+ Suggested by Dave Hyatt.
+
+ Build fix and cleanup. Rename ScrollBar to Scrollbar.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * editing/EditorCommand.cpp:
+ * page/EventHandler.cpp:
+ * page/gtk/EventHandlerGtk.cpp:
+ * page/mac/EventHandlerMac.mm:
+ * page/mac/FrameMac.mm:
+ * page/qt/EventHandlerQt.cpp:
+ * page/wx/EventHandlerWx.cpp:
+ * platform/PopupMenu.h:
+ * platform/ScrollBar.cpp: Removed.
+ * platform/ScrollBar.h: Removed.
+ * platform/Scrollbar.cpp: Copied from WebCore/platform/ScrollBar.cpp.
+ * platform/Scrollbar.h: Copied from WebCore/platform/ScrollBar.h.
+ * platform/gtk/ScrollbarGtk.cpp:
+ (ScrollbarGtk::ScrollbarGtk):
+ * platform/gtk/ScrollbarGtk.h:
+ * platform/mac/ScrollbarMac.h:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/qt/ScrollbarQt.cpp:
+ * platform/qt/ScrollbarThemeQt.cpp:
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PopupMenuWin.cpp:
+ * platform/win/ScrollViewWin.cpp:
+ * platform/win/ScrollbarThemeWin.cpp:
+ * platform/wx/ScrollViewWx.cpp:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ * rendering/HitTestResult.cpp:
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderTextControl.cpp:
+
+2008-09-16 David Hyatt <hyatt@apple.com>
+
+ Fix Qt build bustage by making moveThumb a member of Scrollbar so that
+ it can be called from ScrollbarQt.
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::moveThumb):
+ (WebCore::Scrollbar::handleMouseMoveEvent):
+ (WebCore::Scrollbar::handleMousePressEvent):
+ * platform/ScrollBar.h:
+ * platform/qt/ScrollViewQt.cpp:
+ * platform/qt/ScrollbarQt.cpp:
+ (WebCore::Scrollbar::handleContextMenuEvent):
+
+2008-09-16 David Hyatt <hyatt@apple.com>
+
+ Eliminate PlatformScrollbar. Mac and Gtk now have subclasses for their
+ native-widget scrollbars (ScrollbarMac and ScrollbarGtk). Other platforms
+ now just use Scrollbar.
+
+ Reviewed by Sam Weinig
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/mac/FrameMac.mm:
+ * platform/PopupMenu.h:
+ (WebCore::PopupMenu::scrollbar):
+ * platform/ScrollBar.cpp:
+ (WebCore::createNativeScrollbar):
+ * platform/ScrollBar.h:
+ * platform/gtk/PlatformScrollBar.h: Removed.
+ * platform/gtk/PlatformScrollBarGtk.cpp: Removed.
+ * platform/gtk/ScrollbarGtk.cpp: Copied from platform/gtk/PlatformScrollBarGtk.cpp.
+ (gtkScrollEventCallback):
+ (ScrollbarGtk::ScrollbarGtk):
+ (ScrollbarGtk::~ScrollbarGtk):
+ (ScrollbarGtk::updateThumbPosition):
+ (ScrollbarGtk::updateThumbProportion):
+ (ScrollbarGtk::setFrameGeometry):
+ (ScrollbarGtk::geometryChanged):
+ (ScrollbarGtk::gtkValueChanged):
+ * platform/gtk/ScrollbarGtk.h: Copied from platform/gtk/PlatformScrollBar.h.
+ * platform/mac/PlatformScrollBar.h: Removed.
+ * platform/mac/PlatformScrollBarMac.mm: Removed.
+ * platform/mac/ScrollbarMac.h: Copied from platform/mac/PlatformScrollBar.h.
+ * platform/mac/ScrollbarMac.mm: Copied from platform/mac/PlatformScrollBarMac.mm.
+ (-[WebCoreScrollBar initWithScrollbarMac:]):
+ (-[WebCoreScrollBar detachScrollbarMac]):
+ (WebCore::Scrollbar::createNativeScrollbar):
+ (WebCore::ScrollbarMac::ScrollbarMac):
+ (WebCore::ScrollbarMac::~ScrollbarMac):
+ (WebCore::ScrollbarMac::updateThumbPosition):
+ (WebCore::ScrollbarMac::updateThumbProportion):
+ (WebCore::ScrollbarMac::scrollbarHit):
+ * platform/qt/PlatformScrollBar.h: Removed.
+ * platform/qt/PlatformScrollBarQt.cpp: Removed.
+ * platform/qt/ScrollbarQt.cpp: Copied from platform/qt/PlatformScrollBarQt.cpp.
+ (WebCore::Scrollbar::handleContextMenuEvent):
+ * rendering/HitTestResult.cpp:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::createScrollbar):
+ (WebCore::RenderLayer::destroyScrollbar):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::~RenderListBox):
+ (WebCore::RenderListBox::updateFromElement):
+ (WebCore::RenderListBox::isPointInOverflowControl):
+ * rendering/RenderObject.h:
+ * rendering/RenderTextControl.cpp:
+
+2008-09-16 David Hyatt <hyatt@apple.com>
+
+ Make the scrollbar resizer-dodging logic cross-platform in the
+ Scrollbar class.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::setFrameGeometry):
+ (WebCore::Scrollbar::setParent):
+ (WebCore::Scrollbar::windowClipRect):
+ * platform/ScrollBar.h:
+ * platform/ScrollView.h:
+ (WebCore::ScrollView::windowResizerRect):
+ (WebCore::ScrollView::resizerOverlapsContent):
+ (WebCore::ScrollView::adjustOverlappingScrollbarCount):
+ * platform/Widget.h:
+ (WebCore::Widget::setParent):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::convertToContainingWindow):
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarWin.cpp:
+
+2008-09-16 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=15129
+ <rdar://problem/4644824> adding a new line with DOM does unnecessary additional repaint
+
+ Covered by fast/repaint/4776765.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutBlock): Avoid repainting this object if it
+ did not have layout in the beginning.
+ (WebCore::RenderBlock::layoutBlockChildren): If a child did not have
+ layout in the beginning, repaint it in its new position, to compensate
+ for the above (regardless of whether it "moved").
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::checkForRepaintDuringLayout): Added a comment
+ about generalizing this fix in the future.
+
+2008-09-16 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=15384
+ Div does not notice when grandparent changes height
+
+ Test: fast/block/basic/quirk-percent-height-grandchild.html
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=20714
+ Resizing Gmail inbox vertically results in whitespace at the bottom of the window
+
+ Test: fast/replaced/percent-height-in-anonymous-block.html
+
+ Added a two-way mapping between boxes with percentage heights and
+ their non-parent ancestors up to the one the height is computed relative
+ to. In quirks mode (the first bug), this can be any number of containing
+ block with auto height. In strict mode (the second bug) this can be
+ the containing block of an anonymous block containing a replaced
+ element.
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::~RenderBlock): Added code to remove the all the
+ mapping to/from this block to percentage-height descendants.
+ (WebCore::RenderBlock::layoutBlockChildren): Added code to mark
+ percentage-height descendants (and their containing block ancestry chain
+ up to this block) for layout. This ensures that those descendants whose
+ height depends on the height of this block (or an ancestor) are updated.
+ (WebCore::RenderBlock::addPercentHeightDescendant): Added. Establishes
+ a two-way mapping between this block and the given box.
+ (WebCore::RenderBlock::removePercentHeightDescendant): Added. Removes
+ all the mapping to/from this box.
+ * rendering/RenderBlock.h:
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::setStyle): Added calls to
+ removePercentHeightDescendant() when style changes and the box
+ previously had a percentage height. An exception is when the style
+ change does not require layout, in which case the box still has
+ a percentage height and the mappings are valid. In all other cases,
+ any required mappings will be (re-)established during layout.
+ (WebCore::RenderBox::destroy): Added a call to
+ removePercentHeightDescendant.
+ (WebCore::RenderBox::calcPercentageHeight): Added code that, in quirks
+ mode, if a higher-than-parent containing block is affecting the box's
+ height, creates a mapping between the box and that block.
+ (WebCore::RenderBox::calcReplacedHeightUsing): Changed to skip over
+ anonymous containing blocks, if any, and when that happens, use
+ addPercentHeightDescendant() to ensure that the non-anonymous block
+ is aware of the dependent percent-height box.
+
+2008-09-16 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Oliver Hunt and Alp Toker.
+
+ Implemented toDataURL in Cairo. Only PNG support
+ at the moment.
+
+ Qt, Cairo and wx require toDataURL implementations
+ https://bugs.webkit.org/show_bug.cgi?id=17719
+
+ * platform/MIMETypeRegistry.cpp:
+ (WebCore::initializeSupportedImageMIMETypesForEncoding):
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::ImageBuffer):
+ (WebCore::writeFunction):
+ (WebCore::ImageBuffer::toDataURL):
+
+2008-09-16 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Hide unused media element controls in the QtWebKit port
+
+ * platform/qt/html4-adjustments-qt.css
+
+2008-09-16 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compilation of the Qt scrollbar code.
+
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::scPart):
+ (WebCore::styleOptionSlider):
+ (WebCore::thumbLength):
+ (WebCore::pixelPosToRangeValue):
+ (WebCore::PlatformScrollbar::handleContextMenuEvent):
+
+2008-09-16 Adam Treat <treat@kde.org>
+
+ Reviewed by Anders Carlsson.
+
+ Prevent accesses off of the end of the buffer introduced in r36450
+ and when checking for descriptions of mime. Also, coding style fix.
+
+ * plugins/qt/PluginPackageQt.cpp:
+ (WebCore::PluginPackage::fetchInfo):
+
+2008-09-15 Rob Buis <buis@kde.org>
+
+ Reviewed by Eric.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20634
+ SVG transform attribute is ignored by <use> in <clipPath>
+
+ Transform the paths with the local transform when part
+ of a clip path.
+
+ Test: svg/custom/use-clipped-transform.svg
+
+ * svg/SVGClipPathElement.cpp:
+ (WebCore::SVGClipPathElement::canvasResource):
+ * svg/SVGStyledTransformableElement.cpp:
+ (WebCore::SVGStyledTransformableElement::toClipPath):
+ * svg/SVGStyledTransformableElement.h:
+
+2008-09-15 Dave Hyatt <hyatt@apple.com>
+
+ Convert Qt over to its ScrollbarTheme. Add cross-platform support for jumping the thumb location directly
+ to a pressed location on the track (this is done with the middle mouse on Qt and with Shift-Click on Windows).
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::thumbUnderMouse):
+ (WebCore::Scrollbar::autoscrollPressedPart):
+ (WebCore::Scrollbar::startTimerIfNeeded):
+ (WebCore::moveThumb):
+ (WebCore::Scrollbar::handleMouseMoveEvent):
+ (WebCore::Scrollbar::handleMousePressEvent):
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::pressedPos):
+ (WebCore::Scrollbar::pixelStep):
+ (WebCore::Scrollbar::setPressedPos):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::thumbPosition):
+ (WebCore::ScrollbarTheme::thumbLength):
+ (WebCore::ScrollbarTheme::trackPosition):
+ (WebCore::ScrollbarTheme::trackLength):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::trackPosition):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::):
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::styleOptionSlider):
+ (WebCore::ScrollbarThemeQt::hitTest):
+ (WebCore::ScrollbarThemeQt::shouldCenterOnThumb):
+ (WebCore::ScrollbarThemeQt::invalidatePart):
+ (WebCore::ScrollbarThemeQt::thumbPosition):
+ (WebCore::):
+ * platform/qt/ScrollbarThemeQt.h:
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarThemeSafari::shouldCenterOnThumb):
+ * platform/win/ScrollbarThemeSafari.h:
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::shouldCenterOnThumb):
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-09-15 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20180
+
+ Cache the result of parsing the an+b expression in :nth-child(an+b). Roughly a 2x speedup for :nth-child on SlickSpeed.
+
+ * GNUmakefile.am: Add CSSNthSelector
+ * WebCore.pro: Add CSSNthSelector
+ * WebCore.vcproj/WebCore.vcproj: Add CSSNthSelector
+ * WebCore.xcodeproj/project.pbxproj: Add CSSNthSelector
+ * css/CSSGrammar.y: Create CSSNthSelectors instead of CSSSelectors for :nth-*
+ * css/CSSNthSelector.cpp: Added.
+ (WebCore::CSSNthSelector::parseNth): Moved from CSSStyleSelector and modified to cache
+ (WebCore::CSSNthSelector::matchNth): Moved from CSSStyleSelector and modified to use the cache
+ * css/CSSNthSelector.h: Added.
+ (WebCore::CSSNthSelector::CSSNthSelector):
+ (WebCore::CSSNthSelector::~CSSNthSelector):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::createFloatingNthSelector):
+ * css/CSSParser.h:
+ * css/CSSSelector.h: Use the free bit here to store a flag for CSSNthSelector
+ (WebCore::CSSSelector::CSSSelector):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): Take advantage of knowing that all :nth-* selectors are CSSNthSelectors
+
+2008-09-15 Matt Lilek <webkit@mattlilek.com>
+
+ Reviewed by Tim Hatcher.
+
+ Clean up some inspector JS callbacks to remove an extra return.
+
+ * page/InspectorController.cpp:
+ (WebCore::hideDOMNodeHighlight):
+ (WebCore::loaded):
+ (WebCore::unloading):
+ (WebCore::attach):
+ (WebCore::detach):
+ (WebCore::startDebuggingAndReloadInspectedPage):
+ (WebCore::stopDebugging):
+ (WebCore::debuggerAttached):
+ (WebCore::pauseOnExceptions):
+ (WebCore::pauseInDebugger):
+ (WebCore::resumeDebugger):
+ (WebCore::stepOverStatementInDebugger):
+ (WebCore::stepIntoStatementInDebugger):
+ (WebCore::stepOutOfFunctionInDebugger):
+ (WebCore::isWindowVisible):
+ (WebCore::closeWindow):
+
+2008-09-15 Dave Hyatt <hyatt@apple.com>
+
+ Completely switch Windows scrollbars over to ScrollbarTheme. The Aqua windows scrollbar and native scrollbar
+ now share most of their code.
+
+ Also removing mini size scrollbar support, since it would have crashed Windows had it ever been used, and it
+ also is never used in our code anyway.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/ScrollTypes.h:
+ (WebCore::):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::splitTrack):
+ (WebCore::ScrollbarThemeComposite::thumbLength):
+ (WebCore::ScrollbarThemeComposite::minimumThumbLength):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/mac/PlatformScrollBarMac.mm:
+ (NSControlSizeForScrollBarControlSize):
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp: Removed.
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ * platform/win/ScrollbarThemeSafari.cpp:
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::):
+ (WebCore::scrollbarControlStateFromThemeState):
+ (WebCore::ScrollbarThemeSafari::hasButtons):
+ (WebCore::ScrollbarThemeSafari::hasThumb):
+ (WebCore::buttonRepaintRect):
+ (WebCore::ScrollbarThemeSafari::backButtonRect):
+ (WebCore::ScrollbarThemeSafari::forwardButtonRect):
+ (WebCore::trackRepaintRect):
+ (WebCore::ScrollbarThemeSafari::trackRect):
+ (WebCore::ScrollbarThemeSafari::minimumThumbLength):
+ (WebCore::ScrollbarThemeSafari::paintTrack):
+ (WebCore::ScrollbarThemeSafari::paintButton):
+ (WebCore::ScrollbarThemeSafari::paintThumb):
+ * platform/win/ScrollbarThemeSafari.h:
+ * platform/win/ScrollbarThemeWin.cpp:
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-09-15 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler, Beth Dakin
+
+ <rdar://problem/4003789> Expose lists as AXList
+ <rdar://problem/5707399> VO: Definition lists not announced in Safari
+
+ Lists are now exposed through AX. On the mac (in SnowLeopard) they use two new subroles
+ AXContentList for <ul>, <ol> and AXDefinitionList for <dl>
+ Inside the definition list, each <dt> "term" has an accessibility description ("term"),
+ as does each <dd> tag ("definition")
+
+ Test: accessibility/lists.html
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * page/AXObjectCache.cpp:
+ * page/AccessibilityList.cpp: Added.
+ * page/AccessibilityList.h: Added.
+ * page/AccessibilityObject.h:
+ * page/AccessibilityRenderObject.cpp:
+ * page/AccessibilityTable.cpp:
+ * page/mac/AccessibilityObjectWrapper.mm:
+ * page/mac/WebCoreViewFactory.h:
+ * platform/LocalizedStrings.h:
+ * platform/mac/LocalizedStringsMac.mm:
+ * platform/qt/Localizations.cpp:
+
+2008-09-15 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Eric.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=20865
+ Prepare HTMLScriptElement & SVGScriptElement unification, and unification of event handling.
+
+ Several renames:
+ dispatchHTMLEvent -> dispatchEventForType
+ setHTMLEventListener -> setEventListenerForType
+ getHTMLEventListener -> eventListenerForType
+ removeHTMLEventListener -> removeEventListenerForType
+ isHTMLEventListener -> isAttachedToEventTargetNode
+ ...
+
+ Similar renames for the dispatch/get/set/*Window*Event functions.
+ Kill JSSVGLazyEventListener and merge with JSLazyEventListener.
+
+ Most important change: Rename setHTMLEventListener to setEventListenerForTypeAndAttribute,
+ as there exists a generic createEventListener() method now, taking care of JSLazyEventListener creation.
+
+ setHTMLEventListener() used createHTMLEventListener() before and was HTML specific.
+ SVG is able to use the code as well now. This affects most files in html/.
+
+ No functional changes.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::~JSDOMWindowBase):
+ (WebCore::JSDOMWindowBase::setListener):
+ (WebCore::JSDOMWindowBase::getListener):
+ (WebCore::JSDOMWindowBase::findJSEventListener):
+ (WebCore::JSDOMWindowBase::findOrCreateJSEventListener):
+ (WebCore::JSDOMWindowBase::findJSUnprotectedEventListener):
+ (WebCore::JSDOMWindowBase::findOrCreateJSUnprotectedEventListener):
+ (WebCore::JSDOMWindowBase::jsEventListenersAttachedToEventTargetNodes):
+ (WebCore::JSDOMWindowBase::jsUnprotectedEventListenersAttachedToEventTargetNodes):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent):
+ (WebCore::JSAbstractEventListener::isAttachedToEventTargetNode):
+ (WebCore::JSUnprotectedEventListener::JSUnprotectedEventListener):
+ (WebCore::JSUnprotectedEventListener::~JSUnprotectedEventListener):
+ (WebCore::JSEventListener::JSEventListener):
+ (WebCore::JSEventListener::~JSEventListener):
+ (WebCore::JSLazyEventListener::JSLazyEventListener):
+ (WebCore::eventParameterName):
+ (WebCore::JSLazyEventListener::parseCode):
+ (WebCore::getNodeEventListener):
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSAbstractEventListener::JSAbstractEventListener):
+ (WebCore::JSUnprotectedEventListener::create):
+ (WebCore::JSEventListener::create):
+ (WebCore::JSLazyEventListener::):
+ (WebCore::JSLazyEventListener::create):
+ * bindings/js/JSEventTargetNode.cpp:
+ (WebCore::JSEventTargetNode::setListener):
+ (WebCore::JSEventTargetNode::getListener):
+ * bindings/js/JSSVGLazyEventListener.cpp: Removed.
+ * bindings/js/JSSVGLazyEventListener.h: Removed.
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::createHTMLEventHandler):
+ (WebCore::ScriptController::createSVGEventHandler):
+ * dom/Document.cpp:
+ (WebCore::Document::setFocusedNode):
+ (WebCore::Document::handleWindowEvent):
+ (WebCore::Document::setWindowEventListenerForType):
+ (WebCore::Document::windowEventListenerForType):
+ (WebCore::Document::removeWindowEventListenerForType):
+ (WebCore::Document::addWindowEventListener):
+ (WebCore::Document::hasWindowEventListener):
+ (WebCore::Document::removePendingFrameBeforeUnloadEventCount):
+ (WebCore::Document::createEventListener):
+ (WebCore::Document::setWindowEventListenerForTypeAndAttribute):
+ * dom/Document.h:
+ * dom/EventListener.h:
+ (WebCore::EventListener::isAttachedToEventTargetNode):
+ * dom/EventTargetNode.cpp:
+ (WebCore::EventTargetNode::dispatchFocusEvent):
+ (WebCore::EventTargetNode::dispatchBlurEvent):
+ (WebCore::EventTargetNode::dispatchEventForType):
+ (WebCore::EventTargetNode::removeEventListenerForType):
+ (WebCore::EventTargetNode::setEventListenerForType):
+ (WebCore::EventTargetNode::setEventListenerForTypeAndAttribute):
+ (WebCore::EventTargetNode::eventListenerForType):
+ * dom/EventTargetNode.h:
+ * dom/XMLTokenizer.cpp:
+ (WebCore::XMLTokenizer::notifyFinished):
+ * editing/ReplaceSelectionCommand.cpp:
+ (WebCore::ReplacementFragment::ReplacementFragment):
+ * html/HTMLBodyElement.cpp:
+ (WebCore::HTMLBodyElement::parseMappedAttribute):
+ * html/HTMLButtonElement.cpp:
+ (WebCore::HTMLButtonElement::parseMappedAttribute):
+ * html/HTMLElement.cpp:
+ (WebCore::HTMLElement::parseMappedAttribute):
+ (WebCore::HTMLElement::checkDTD):
+ * html/HTMLElement.h:
+ * html/HTMLFormControlElement.cpp:
+ (WebCore::HTMLFormControlElement::onChange):
+ * html/HTMLFormElement.cpp:
+ (WebCore::HTMLFormElement::prepareSubmit):
+ (WebCore::HTMLFormElement::reset):
+ (WebCore::HTMLFormElement::parseMappedAttribute):
+ * html/HTMLFrameElementBase.cpp:
+ (WebCore::HTMLFrameElementBase::parseMappedAttribute):
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::parseMappedAttribute):
+ * html/HTMLImageElement.cpp:
+ (WebCore::HTMLImageElement::parseMappedAttribute):
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::dispatchLoadEvent):
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::parseMappedAttribute):
+ (WebCore::HTMLInputElement::setValueFromRenderer):
+ (WebCore::HTMLInputElement::onSearch):
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::asyncEventTimerFired):
+ (WebCore::HTMLMediaElement::load):
+ (WebCore::HTMLMediaElement::mediaPlayerNetworkStateChanged):
+ (WebCore::HTMLMediaElement::setReadyState):
+ (WebCore::HTMLMediaElement::seek):
+ (WebCore::HTMLMediaElement::mediaPlayerTimeChanged):
+ (WebCore::HTMLMediaElement::willSaveToCache):
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::parseMappedAttribute):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::parseMappedAttribute):
+ (WebCore::HTMLScriptElement::dispatchLoadEvent):
+ (WebCore::HTMLScriptElement::dispatchErrorEvent):
+ * html/HTMLSelectElement.cpp:
+ (WebCore::HTMLSelectElement::parseMappedAttribute):
+ * html/HTMLTextAreaElement.cpp:
+ (WebCore::HTMLTextAreaElement::parseMappedAttribute):
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::notifyFinished):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::mouseButtonListener):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::canMouseDownStartSelect):
+ (WebCore::EventHandler::canMouseDragExtendSelect):
+ * page/Frame.cpp:
+ (WebCore::Frame::sendScrollEvent):
+ * page/Page.cpp:
+ (WebCore::networkStateChanged):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::valueChanged):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::selectionChanged):
+ * svg/SVGDocumentExtensions.cpp:
+ * svg/SVGDocumentExtensions.h:
+ * svg/SVGElement.cpp:
+ (WebCore::SVGElement::parseMappedAttribute):
+ (WebCore::SVGElement::finishParsingChildren):
+ * svg/SVGElement.h:
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::parseMappedAttribute):
+ * svg/SVGSVGElement.h:
+
+2008-09-15 Dave Hyatt <hyatt@apple.com>
+
+ Convert PlatformScrollbarWin to use ScrollbarTheme for hit testing. PlatformScrollbarQt/Gtk still
+ need to be converted.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ (WebCore::Scrollbar::updateThumbPosition):
+ (WebCore::Scrollbar::updateThumbProportion):
+ (WebCore::Scrollbar::autoscrollPressedPart):
+ (WebCore::Scrollbar::startTimerIfNeeded):
+ * platform/ScrollBar.h:
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::invalidateParts):
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::ScrollbarThemeComposite::hitTest):
+ (WebCore::ScrollbarThemeComposite::invalidatePart):
+ (WebCore::ScrollbarThemeComposite::thumbPosition):
+ (WebCore::ScrollbarThemeComposite::thumbLength):
+ (WebCore::ScrollbarThemeComposite::trackLength):
+ * platform/ScrollbarThemeComposite.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+
+2008-09-15 David Smith <catfish.man@gmail.com>
+
+ "Just do it"'d by Mark Rowe
+
+ https://bugs.webkit.org/show_bug.cgi?id=20856
+ Add missing license header
+
+ * dom/NodeRenderStyle.h:
+
+2008-09-15 Dean Jackson <dino@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Add default constructor for ShadowData
+ https://bugs.webkit.org/show_bug.cgi?id=20757
+
+ Test: transitions/shadow.html
+
+ * rendering/style/RenderStyle.h:
+
+2008-09-15 Dean Jackson <dino@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ RenderStyle should update keyframes.
+ http://bugs.webkit.org/show_bug.cgi?id=20756
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::StyleRareNonInheritedData::updateKeyframes):
+
+2008-09-15 Dean Jackson <dino@apple.com>
+
+ Reviewed by Tim Hatcher.
+
+ Unnecessary ASSERT in ImplicitAnimation destructor.
+ https://bugs.webkit.org/show_bug.cgi?id=20817
+
+ * page/animation/ImplicitAnimation.cpp:
+ (WebCore::ImplicitAnimation::~ImplicitAnimation):
+
+2008-09-15 Adam Treat <treat@kde.org>
+
+ Reviewed by Simon.
+
+ Fix plugin extension info. It was returning the mimetype where the
+ extension was given.
+
+ * plugins/qt/PluginPackageQt.cpp:
+ (WebCore::PluginPackage::fetchInfo):
+
+2008-09-15 Dean Jackson <dino@apple.com>
+
+ Reviewed by Tim Hatcher
+
+ Coding style violation!!!! Cleanup AnimationBase.cpp
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::blendFunc):
+
+2008-09-15 David Hyatt <hyatt@apple.com>
+
+ Move all hit testing code for scrollbars into the base class. Refactor
+ it to accommodate all platform-specific behaviors using virtual ScrollbarTheme
+ functions.
+
+ No platform is using this code yet. Although it has been moved and compiles
+ (even on Mac), it is not being used on any platform.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::autoscrollPressedPart):
+ (WebCore::Scrollbar::startTimerIfNeeded):
+ (WebCore::Scrollbar::handleMouseMoveEvent):
+ (WebCore::Scrollbar::handleMouseOutEvent):
+ (WebCore::Scrollbar::handleMouseReleaseEvent):
+ (WebCore::Scrollbar::handleMousePressEvent):
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::handleContextMenuEvent):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::hitTest):
+ (WebCore::ScrollbarTheme::invalidateOnMouseEnterExit):
+ (WebCore::ScrollbarTheme::invalidatePart):
+ (WebCore::ScrollbarTheme::shouldCenterOnThumb):
+ (WebCore::ScrollbarTheme::centerOnThumb):
+ (WebCore::ScrollbarTheme::thumbPosition):
+ (WebCore::ScrollbarTheme::thumbLength):
+ (WebCore::ScrollbarTheme::trackLength):
+ (WebCore::ScrollbarTheme::initialAutoscrollTimerDelay):
+ (WebCore::ScrollbarTheme::autoscrollTimerDelay):
+ * platform/Widget.h:
+ (WebCore::Widget::parent):
+ * platform/mac/PlatformScrollBar.h:
+ (WebCore::PlatformScrollbar::handleMouseMoveEvent):
+ (WebCore::PlatformScrollbar::handleMouseOutEvent):
+ (WebCore::PlatformScrollbar::handleMousePressEvent):
+ (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
+ * platform/mac/WidgetMac.mm:
+ (WebCore::Widget::convertFromContainingWindow):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::ScrollbarThemeWin::invalidateOnMouseEnterExit):
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-09-15 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix <rdar://problem/5842247> Single long breakable word takes O(n^2) to lay out
+
+ Cache the next breakable position for text nodes in InlineIterator.
+
+ * rendering/bidi.cpp:
+ (WebCore::InlineIterator::InlineIterator):
+ (WebCore::InlineIterator::increment):
+ (WebCore::RenderBlock::findNextLineBreak):
+
+2008-09-15 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein
+
+ Fix assertion and integral pixel issue when creating subimages.
+ https://bugs.webkit.org/show_bug.cgi?id=20786
+
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::draw):
+
+2008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Implment seek() and clean up and improve debugging output
+
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ (debugMediaObject):
+ (WebCore::MediaPlayerPrivate::seek):
+ (WebCore::MediaPlayerPrivate::setVolume):
+ (WebCore::MediaPlayerPrivate::setMuted):
+ (WebCore::MediaPlayerPrivate::updateStates):
+ (WebCore::MediaPlayerPrivate::naturalSize):
+ (WebCore::MediaPlayerPrivate::paint):
+ (WebCore::MediaPlayerPrivate::stateChanged):
+ (WebCore::MediaPlayerPrivate::tick):
+
+2008-09-15 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon.
+
+ Remove bogus Q_ASSERTs from the MediaPlayer Phonon implementation
+
+ m_mediaObject, m_audioOutput, m_videoWidget get created in the
+ c'tor and will only be deleted in the c'tor. The Q_ASSERTs would
+ only check if we use the MediaPlayerPrivate after it has been deleted.
+
+ Acked-by: Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ (WebCore::MediaPlayerPrivate::play):
+ (WebCore::MediaPlayerPrivate::setVolume):
+ (WebCore::MediaPlayerPrivate::updateStates):
+
+2008-09-15 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/6163988>
+ https://bugs.webkit.org/show_bug.cgi?id=20457
+ Canvas: createPattern crashes WebKit in WTF::RefPtr<WebCore::Image>::operator!() const + 9 with a 1D pattern
+
+ Check the width and height and throw an exception if any of them are 0.
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::createPattern):
+
+2008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Render media element controls with antialiasing enabled
+
+ * platform/qt/RenderThemeQt.cpp:
+ (WebCore::RenderThemeQt::paintMediaMuteButton):
+ (WebCore::RenderThemeQt::paintMediaPlayButton):
+ (WebCore::RenderThemeQt::paintMediaSliderTrack):
+ (WebCore::RenderThemeQt::paintMediaSliderThumb):
+
+2008-09-15 Ariya Hidayat <ariya.hidayat@trolltech.com>
+
+ Reviewed by Simon.
+
+ Upon non fatal error, switch to the pause state (so that playback can continue)
+
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
+ (WebCore::MediaPlayerPrivate::updateStates):
+
+2008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Don't set WTF_USE_JSC in WebCore.pro now that it's set in config.h
+
+ * WebCore.pro:
+
+2008-09-15 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Make QtInstance::create() private and fix caching
+
+ * bindings/js/ScriptControllerQt.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::getQtInstance):
+ (JSC::Bindings::QtInstance::getRuntimeObject):
+ * bridge/qt/qt_instance.h:
+ (JSC::Bindings::QtInstance::create):
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue):
+ (JSC::Bindings::QtConnectionObject::execute):
+
+2008-09-15 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Dave Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20180
+
+ >2x speedup on querySelector[All] with :nth-child by removing the collectRulesOnly argument on SelectorChecker.
+ With collectRulesOnly set to true (the default) an optimization is turned off, and no callers were intentionally leaving it true.
+ querySelector[All] assumed that the default was probably the right way to go, and so ended up being slow.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::CSSStyleSelector::SelectorChecker::SelectorChecker):
+ * css/CSSStyleSelector.h:
+
+2008-09-14 Dave Hyatt <hyatt@apple.com>
+
+ Refactor PlatformScrollbarWin's painting so that it is now done by ScrollbarThemeWin. PlatformScrollbarSafari
+ is still painting itself (a subsequent patch will move its painting into ScrollbarThemeSafari).
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::client):
+ (WebCore::Scrollbar::currentPos):
+ (WebCore::Scrollbar::totalSize):
+ * platform/ScrollbarTheme.h:
+ * platform/ScrollbarThemeComposite.cpp:
+ (WebCore::pageForScrollView):
+ (WebCore::ScrollbarThemeComposite::paint):
+ * platform/ScrollbarThemeComposite.h:
+ (WebCore::ScrollbarThemeComposite::trackIsSinglePiece):
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ * platform/win/PlatformScrollBarWin.cpp:
+ * platform/win/ScrollbarThemeSafari.h:
+ (WebCore::ScrollbarThemeSafari::hasButtons):
+ (WebCore::ScrollbarThemeSafari::hasThumb):
+ (WebCore::ScrollbarThemeSafari::backButtonRect):
+ (WebCore::ScrollbarThemeSafari::forwardButtonRect):
+ (WebCore::ScrollbarThemeSafari::trackRect):
+ (WebCore::ScrollbarThemeSafari::splitTrack):
+ (WebCore::ScrollbarThemeSafari::paintTrack):
+ (WebCore::ScrollbarThemeSafari::paintButton):
+ (WebCore::ScrollbarThemeSafari::paintThumb):
+ * platform/win/ScrollbarThemeWin.cpp:
+ (WebCore::isRunningOnVistaOrLater):
+ (WebCore::checkAndInitScrollbarTheme):
+ (WebCore::ScrollbarThemeWin::ScrollbarThemeWin):
+ (WebCore::ScrollbarThemeWin::themeChanged):
+ (WebCore::ScrollbarThemeWin::hasThumb):
+ (WebCore::ScrollbarThemeWin::backButtonRect):
+ (WebCore::ScrollbarThemeWin::forwardButtonRect):
+ (WebCore::ScrollbarThemeWin::trackRect):
+ (WebCore::ScrollbarThemeWin::splitTrack):
+ (WebCore::ScrollbarThemeWin::paintTrack):
+ (WebCore::ScrollbarThemeWin::paintButton):
+ (WebCore::gripperRect):
+ (WebCore::paintGripper):
+ (WebCore::ScrollbarThemeWin::paintThumb):
+ (WebCore::ScrollbarThemeWin::thumbPosition):
+ (WebCore::ScrollbarThemeWin::thumbLength):
+ (WebCore::ScrollbarThemeWin::trackLength):
+ * platform/win/ScrollbarThemeWin.h:
+ (WebCore::ScrollbarThemeWin::hasButtons):
+ (WebCore::ScrollbarThemeWin::trackIsSinglePiece):
+
+2008-09-14 Anthony Ricaud <rik24d@gmail.com>
+
+ Moving all resource graphs under the same container for future scalable feature.
+ This is a speedup on resize but maybe a loss on changing the sorting function.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20555
+
+ Reviewed by Timothy Hatcher.
+
+ * page/inspector/ResourcesPanel.js: Added a container for all resource graphs.
+ Added WebInspector.ResourceGraph. No more _updateGraphBars on resize.
+ * page/inspector/inspector.css: Edited corresponding rules and removed unnecessaries.
+
+2008-09-14 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Maciej Stachowiak.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20738
+ compareBoundaryPoints gives incorrect results
+
+ Test: fast/dom/Range/compareBoundaryPoints-2.html
+
+ * dom/Range.cpp: (WebCore::Range::compareBoundaryPoints): Correct meanings of START_TO_END
+ and END_TO_START.
+ * page/DOMSelection.cpp: (WebCore::DOMSelection::addRange): Updated for this change.
+
+2008-09-14 Maciej Stachowiak <mjs@apple.com>
+
+ Unreviewed build fix.
+
+ Trying again.
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::hasInstance):
+
+2008-09-14 Maciej Stachowiak <mjs@apple.com>
+
+ Unreviewed build fix.
+
+ Blind attempt to fix build. Correct parameters for hasInstance.
+
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::hasInstance):
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+
+2008-09-14 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ - revert <http://trac.webkit.org/changeset/36382> because it exposed
+ <https://bugs.webkit.org/show_bug.cgi?id=20846> and resulted in crashes
+ on Tiger.
+
+ * platform/graphics/mac/FontCacheMac.mm:
+ (WebCore::FontCache::getFontDataForCharacters):
+ (WebCore::FontCache::getLastResortFallbackFont):
+
+2008-09-14 Dave Hyatt <hyatt@apple.com>
+
+ Add a new ScrollbarThemeComposite base class that is shared by ScrollbarThemeSafari and
+ ScrollbarThemeWin. Any scrollbar that wants to render by ScrollbarPart can subclass from this
+ theme.
+
+ Reviewed by Sam Weinig
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/win/ScrollbarThemeSafari.h:
+ * platform/win/ScrollbarThemeWin.h:
+
+2008-09-14 Alp Toker <alp@nuanti.com>
+
+ https://bugs.webkit.org/show_bug.cgi?id=20320
+ [GTK] A white rectangle is visible behind widgets with rounded corners
+
+ Sync bundled gtk2drawing.c to the latest version from Mozilla (coding
+ style exempt).
+
+ Requested by Michael Monreal.
+
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::RenderThemeGtk::RenderThemeGtk):
+ * platform/gtk/gtk2drawing.c:
+ (moz_gtk_set_widget_name):
+ (ensure_window_widget):
+ (setup_widget_prototype):
+ (ensure_button_arrow_widget):
+ (moz_gtk_get_combo_box_inner_button):
+ (moz_gtk_get_combo_box_button_inner_widgets):
+ (ensure_combo_box_widgets):
+ (moz_gtk_get_combo_box_entry_inner_widgets):
+ (moz_gtk_get_combo_box_entry_arrow):
+ (ensure_combo_box_entry_widgets):
+ (ensure_toolbar_widget):
+ (ensure_tooltip_widget):
+ (ensure_menu_bar_widget):
+ (ensure_menu_bar_item_widget):
+ (ensure_menu_popup_widget):
+ (ensure_menu_item_widget):
+ (ensure_image_menu_item_widget):
+ (ensure_menu_separator_widget):
+ (ensure_check_menu_item_widget):
+ (ensure_tree_header_cell_widget):
+ (ensure_scrolled_window_widget):
+ (moz_gtk_button_paint):
+ (moz_gtk_init):
+ (moz_gtk_button_get_inner_border):
+ (moz_gtk_toggle_paint):
+ (calculate_button_inner_rect):
+ (calculate_arrow_rect):
+ (moz_gtk_scrollbar_button_paint):
+ (moz_gtk_scrollbar_thumb_paint):
+ (moz_gtk_caret_paint):
+ (moz_gtk_entry_paint):
+ (moz_gtk_treeview_paint):
+ (moz_gtk_tree_header_cell_paint):
+ (moz_gtk_combo_box_paint):
+ (moz_gtk_downarrow_paint):
+ (moz_gtk_combo_box_entry_button_paint):
+ (moz_gtk_toolbar_paint):
+ (moz_gtk_tab_scroll_arrow_paint):
+ (moz_gtk_menu_bar_paint):
+ (moz_gtk_menu_item_paint):
+ (moz_gtk_get_widget_border):
+ (moz_gtk_get_combo_box_entry_button_size):
+ (moz_gtk_get_tab_scroll_arrow_size):
+ (moz_gtk_get_downarrow_size):
+ (moz_gtk_images_in_menus):
+ (moz_gtk_widget_paint):
+ (moz_gtk_shutdown):
+ * platform/gtk/gtkdrawing.h:
+
+2008-09-14 David Hyatt <hyatt@apple.com>
+
+ Convert Mac, Gtk, wx and Qt over to the new ScrollbarTheme for
+ painting. Mac and Gtk themes don't do anything and just let the
+ underlying widget paint. Qt now uses the theme to paint. wx doesn't
+ do anything yet.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::paint):
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::value):
+ (WebCore::Scrollbar::visibleSize):
+ (WebCore::Scrollbar::maximum):
+ (WebCore::Scrollbar::lineStep):
+ (WebCore::Scrollbar::pageStep):
+ (WebCore::Scrollbar::pixelStep):
+ (WebCore::Scrollbar::pressedPart):
+ (WebCore::Scrollbar::hoveredPart):
+ (WebCore::Scrollbar::theme):
+ * platform/ScrollbarTheme.h:
+ (WebCore::ScrollbarTheme::paint):
+ (WebCore::ScrollbarTheme::scrollbarThickness):
+ (WebCore::ScrollbarTheme::supportsControlTints):
+ (WebCore::ScrollbarTheme::themeChanged):
+ * platform/gtk/PlatformScrollBar.h:
+ * platform/gtk/PlatformScrollBarGtk.cpp:
+ * platform/mac/PlatformScrollBar.h:
+ * platform/mac/PlatformScrollBarMac.mm:
+ * platform/qt/PlatformScrollBar.h:
+ * platform/qt/PlatformScrollBarQt.cpp:
+ * platform/qt/ScrollbarThemeQt.cpp:
+ (WebCore::styleOptionSlider):
+ * platform/qt/ScrollbarThemeQt.h:
+ (WebCore::ScrollbarThemeQt::paint):
+ * platform/win/PlatformScrollBarSafari.cpp:
+ (WebCore::PlatformScrollbar::paint):
+ * platform/win/ScrollbarThemeSafari.h:
+ (WebCore::ScrollbarThemeSafari::supportsControlTints):
+ * platform/wx/PlatformScrollBar.h:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (PlatformScrollbar::~PlatformScrollbar):
+
+2008-09-14 Sam Weinig <sam@webkit.org>
+
+ Qt build fix.
+
+ * platform/qt/PlatformScrollBarQt.cpp:
+
+2008-09-14 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Mark Rowe.
+
+ Remove extraneous semicolons.
+
+ * bindings/scripts/CodeGeneratorObjC.pm:
+ * html/HTMLLinkElement.cpp:
+ (WebCore::HTMLLinkElement::tokenizeRelAttribute):
+ * html/HTMLScriptElement.cpp:
+ (WebCore::HTMLScriptElement::charsetAttributeValue):
+ (WebCore::HTMLScriptElement::typeAttributeValue):
+ * platform/graphics/qt/GradientQt.cpp:
+ (WebCore::Gradient::platformGradient):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintEllipsisBoxes):
+ * svg/SVGPathSegList.cpp:
+ (WebCore::SVGPathSegList::toPathData):
+
+2008-09-14 Sam Weinig <sam@webkit.org>
+
+ Qt build fix.
+
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+
+2008-09-14 Sam Weinig <sam@webkit.org>
+
+ Qt build fix.
+
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::PlatformScrollbar::paint):
+
+2008-09-13 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Gtk build fix, not reviewed.
+
+ * platform/gtk/PlatformScrollBarGtk.cpp:
+ (PlatformScrollbar::PlatformScrollbar):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+
+2008-09-13 Dave Hyatt <hyatt@apple.com>
+
+ Remove scrollbar's setRect method. Clients can now just call setFrameGeometry (the corresponding Widget) method
+ to set the dimensions of a scrollbar.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.h:
+ * platform/gtk/PlatformScrollBar.h:
+ * platform/gtk/PlatformScrollBarGtk.cpp:
+ (PlatformScrollbar::setFrameGeometry):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/mac/PlatformScrollBarMac.mm:
+ * platform/qt/PlatformScrollBarQt.cpp:
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::PlatformScrollbar::setFrameGeometry):
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::PlatformScrollbar::setFrameGeometry):
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupWndProc):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ * platform/wx/PlatformScrollBar.h:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (PlatformScrollbar::updateThumbProportion):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::positionOverflowControls):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::paintScrollbar):
+
+2008-09-13 Dave Hyatt <hyatt@apple.com>
+
+ Remove setEnabled() from all Scrollbar classes that were just using their Widget base class methods.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.h:
+ * platform/gtk/PlatformScrollBar.h:
+ * platform/gtk/PlatformScrollBarGtk.cpp:
+ * platform/mac/PlatformScrollBar.h:
+ * platform/mac/PlatformScrollBarMac.mm:
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ * platform/win/PlatformScrollBarWin.cpp:
+ * platform/wx/PlatformScrollBar.h:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (PlatformScrollbar::~PlatformScrollbar):
+
+2008-09-13 Dave Hyatt <hyatt@apple.com>
+
+ Remove width()/height() from Scrollbar now that it derives from Widget. Remove width()/height() from
+ all PlatformScrollbar subclasses that just called the Widget base class versions of those methods.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.h:
+ * platform/gtk/PlatformScrollBar.h:
+ * platform/gtk/PlatformScrollBarGtk.cpp:
+ * platform/mac/PlatformScrollBar.h:
+ * platform/mac/PlatformScrollBarMac.mm:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ * platform/win/PlatformScrollBarWin.cpp:
+ * platform/wx/PlatformScrollBar.h:
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (PlatformScrollbar::~PlatformScrollbar):
+
+2008-09-13 Dave Hyatt <hyatt@apple.com>
+
+ Move stopTimerIfNeeded out of PlatformScrollbar destructors and into Scrollbar.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::~Scrollbar):
+ * platform/ScrollBar.h:
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::PlatformScrollbar::~PlatformScrollbar):
+ * platform/win/PlatformScrollBarSafari.cpp:
+ (WebCore::PlatformScrollbar::~PlatformScrollbar):
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::PlatformScrollbar::~PlatformScrollbar):
+
+2008-09-13 David Hyatt <hyatt@apple.com>
+
+ Move maximum() from Qt's PlatformScrollbar to be a cross-platform
+ function on Scrollbar. Fixes Qt build bustage.
+
+ Reviewed by Sam Weinig
+
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::orientation):
+ (WebCore::Scrollbar::value):
+ (WebCore::Scrollbar::maximum):
+ * platform/qt/PlatformScrollBar.h:
+
+2008-09-13 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - use the LastResort font for missing glyphs instead of showing the
+ primary font's missing glyph
+
+ Test: platform/mac/fast/text/last-resort-font.html
+
+ * platform/graphics/mac/FontCacheMac.mm:
+ (WebCore::FontCache::getFontDataForCharacters): Changed to return the
+ last resort font if a substitute font cannot be found.
+ (WebCore::FontCache::getLastResortFallbackFont): Removed an outdated
+ comment (the user's preferred standard font is included in the search
+ thanks to code in FontCache::getFontData()) and changed to return the
+ LastResort font.
+
+2008-09-13 Dave Hyatt <hyatt@apple.com>
+
+ This patch adds ScrollbarTheme to the build. ScrollbarTheme is similar to RenderTheme (but for
+ scrollbars only). For now ScrollbarTheme just handles returning the size of scrollbars. Subsequent
+ patches will move rendering and hit testing functionality into this class.
+
+ Implemented ScrollbarTheme subclasses for four ports (Mac, Win, Gtk, Qt). The wxWidgets port does not
+ implement scrollbars yet, so I added a temporary link stub to keep things compiling on wx.
+
+ Reviewed by Sam Weinig
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ * platform/ScrollBar.h:
+ * platform/ScrollbarTheme.h: Added.
+ (WebCore::ScrollbarTheme::~ScrollbarTheme):
+ (WebCore::ScrollbarTheme::scrollbarThickness):
+ (WebCore::ScrollbarTheme::themeChanged):
+ * platform/gtk/ScrollbarThemeGtk.cpp: Added.
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::ScrollbarThemeGtk::~ScrollbarThemeGtk):
+ (WebCore::ScrollbarThemeGtk::scrollbarThickness):
+ * platform/gtk/ScrollbarThemeGtk.h: Added.
+ * platform/mac/PlatformScrollBar.h:
+ * platform/mac/ScrollbarThemeMac.cpp: Added.
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::):
+ (WebCore::ScrollbarThemeMac::~ScrollbarThemeMac):
+ (WebCore::ScrollbarThemeMac::scrollbarThickness):
+ * platform/mac/ScrollbarThemeMac.h: Added.
+ * platform/qt/PlatformScrollBarQt.cpp:
+ * platform/qt/ScrollbarThemeQt.cpp: Added.
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::ScrollbarThemeQt::~ScrollbarThemeQt):
+ (WebCore::ScrollbarThemeQt::scrollbarThickness):
+ * platform/qt/ScrollbarThemeQt.h: Added.
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ * platform/win/PlatformScrollBarWin.cpp:
+ * platform/win/PopupMenuWin.cpp:
+ (WebCore::PopupMenu::calculatePositionAndSize):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::updateScrollbars):
+ (WebCore::ScrollView::themeChanged):
+ * platform/win/ScrollbarThemeSafari.cpp: Added.
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::):
+ (WebCore::ScrollbarThemeSafari::~ScrollbarThemeSafari):
+ (WebCore::ScrollbarThemeSafari::scrollbarThickness):
+ * platform/win/ScrollbarThemeSafari.h: Added.
+ * platform/win/ScrollbarThemeWin.cpp: Added.
+ (WebCore::ScrollbarTheme::nativeTheme):
+ (WebCore::ScrollbarThemeWin::~ScrollbarThemeWin):
+ (WebCore::ScrollbarThemeWin::scrollbarThickness):
+ (WebCore::ScrollbarThemeWin::themeChanged):
+ * platform/win/ScrollbarThemeWin.h: Added.
+ * platform/wx/TemporaryLinkStubs.cpp:
+ (ScrollbarTheme::nativeTheme):
+ * rendering/RenderLayer.cpp:
+ (WebCore::scrollCornerRect):
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::calcHeight):
+ (WebCore::RenderTextControl::calcPrefWidths):
+
+2008-09-13 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Timothy Hatcher.
+
+ <rdar://problem/5060439> Web elements should have an AXTopLevelUIElement
+
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+
+2008-09-13 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Timothy Hatcher.
+
+ - fix <rdar://problem/6171280> REGRESSION (r35667): Assertion failure in WebCore::FrameView::scheduleRelayout() when releasing a page with counters from the b/f cache
+
+ No regression test because the back/forward cache is disabled in DumpRenderTree
+
+ * rendering/RenderContainer.cpp:
+ (WebCore::RenderContainer::invalidateCounters): Bail out if the document
+ is being destroyed.
+
+2008-09-13 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes for new methods recently introduced.
+
+ * platform/graphics/wx/AffineTransformWx.cpp:
+ (WebCore::AffineTransform::AffineTransform):
+ (WebCore::AffineTransform::setMatrix):
+ (WebCore::AffineTransform::setA):
+ (WebCore::AffineTransform::setB):
+ (WebCore::AffineTransform::setC):
+ (WebCore::AffineTransform::setD):
+ (WebCore::AffineTransform::setE):
+ (WebCore::AffineTransform::setF):
+ * platform/wx/LocalizedStringsWx.cpp:
+ (WebCore::AXDefinitionListTermText):
+ (WebCore::AXDefinitionListDefinitionText):
+
+2008-09-12 Dave Hyatt <hyatt@apple.com>
+
+ Move the member variables of PlatformScrollbar up into Scrollbar. Move autoscroll timer handling
+ up into scrollbar. Make sure a bunch of cross-platform code now just uses "Scrollbar" instead of
+ "PlatformScrollbar."
+
+ Reviewed by Sam Weinig
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * editing/EditorCommand.cpp:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectCursor):
+ (WebCore::EventHandler::handleMousePressEvent):
+ (WebCore::EventHandler::handleMouseMoveEvent):
+ * page/EventHandler.h:
+ * page/MouseEventWithHitTestResults.cpp:
+ (WebCore::MouseEventWithHitTestResults::scrollbar):
+ * page/MouseEventWithHitTestResults.h:
+ * page/gtk/EventHandlerGtk.cpp:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * page/mac/EventHandlerMac.mm:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * page/qt/EventHandlerQt.cpp:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * page/win/EventHandlerWin.cpp:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * page/wx/EventHandlerWx.cpp:
+ (WebCore::EventHandler::passMousePressEventToScrollbar):
+ * platform/PopupMenu.h:
+ * platform/ScrollBar.cpp:
+ (WebCore::Scrollbar::Scrollbar):
+ (WebCore::Scrollbar::autoscrollTimerFired):
+ (WebCore::Scrollbar::autoscrollPressedPart):
+ (WebCore::Scrollbar::startTimerIfNeeded):
+ (WebCore::Scrollbar::stopTimerIfNeeded):
+ (WebCore::Scrollbar::pressedPartScrollDirection):
+ (WebCore::Scrollbar::pressedPartScrollGranularity):
+ * platform/ScrollBar.h:
+ (WebCore::Scrollbar::handleMousePressEvent):
+ (WebCore::Scrollbar::invalidatePart):
+ (WebCore::Scrollbar::thumbUnderMouse):
+ * platform/ScrollView.h:
+ * platform/ScrollbarClient.h: Added.
+ (WebCore::ScrollbarClient::~ScrollbarClient):
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ * platform/qt/PlatformScrollBar.h:
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::scrollbarPart):
+ (WebCore::PlatformScrollbar::handleMouseMoveEvent):
+ (WebCore::PlatformScrollbar::handleMouseOutEvent):
+ (WebCore::PlatformScrollbar::handleMousePressEvent):
+ (WebCore::PlatformScrollbar::handleMouseReleaseEvent):
+ * platform/qt/ScrollViewQt.cpp:
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ (WebCore::ScrollView::wheelEvent):
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBarSafari.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::scrollbarUnderMouse):
+ * rendering/HitTestResult.cpp:
+ (WebCore::HitTestResult::setScrollbar):
+ * rendering/HitTestResult.h:
+ (WebCore::HitTestResult::scrollbar):
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::hitTestOverflowControls):
+ * rendering/RenderLayer.h:
+ * rendering/RenderListBox.h:
+
+2008-09-12 Steve Falkenburg <sfalken@apple.com>
+
+ Fix Mac build.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::getTransformOperationType):
+
+2008-09-12 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Make transform animation behavior match spec
+ https://bugs.webkit.org/show_bug.cgi?id=20770
+
+ Tests: transitions/transform-op-list-match.html
+ transitions/transform-op-list-no-match.html
+
+ * css/CSSStyleSelector.cpp:
+ * css/CSSStyleSelector.h:
+ * page/animation/AnimationBase.cpp:
+ * page/animation/AnimationBase.h:
+ * page/animation/ImplicitAnimation.cpp:
+ * page/animation/ImplicitAnimation.h:
+ * page/animation/KeyframeAnimation.cpp:
+ * page/animation/KeyframeAnimation.h:
+ * rendering/RenderLayer.cpp:
+ * rendering/style/RenderStyle.cpp:
+ * rendering/style/RenderStyle.h:
+
+2008-09-12 Ojan Vafai <ojan@chromium.org>
+
+ Properly escape contents of links added to the inspector.
+ For now, just build the link with the DOM and get the
+ outerHTML. Eventually, we probably just want to do
+ this entirely with the DOM.
+
+ Reviewed by Timothy Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20684
+
+ * manual-tests/inspector/escape-links.html: Added.
+ * page/inspector/StylesSidebarPane.js:
+ * page/inspector/inspector.js:
+ * page/inspector/utilities.js:
+
+2008-09-12 Adele Peterson <adele@apple.com>
+
+ Reviewed by John Sullivan and Kevin McCullough.
+
+ Fix for <rdar://problem/6216951> REGRESSION (r36000?): Crash due to infinite recursion into EventHandler::hitTestResultAtPoint() with disconnected frames
+
+ * page/EventHandler.cpp: (WebCore::EventHandler::hitTestResultAtPoint):
+ Hit testing again on the main frame will only work if we aren't already on the main frame. If we are already on the main frame, that will
+ cause infinite recursion. This change checks that we're not already on the main frame before hit testing again.
+
+2008-09-12 Kevin McCullough <kmccullough@apple.com>
+
+ RS by Tim .
+
+ Re-introducing the code since it was not the cause of the crash.
+ See r36343.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::canBeProgramaticallyScrolled):
+ * rendering/RenderObject.h:
+
+2008-09-12 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ When changing one animation in a list, don't reset other animations
+ https://bugs.webkit.org/show_bug.cgi?id=20675
+
+ Test: animations/change-one-anim.html
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::getNumProperties):
+ * page/animation/AnimationBase.h:
+ * page/animation/AnimationController.cpp:
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateKeyframeAnimations):
+ * page/animation/CompositeAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ * page/animation/KeyframeAnimation.cpp:
+ * page/animation/KeyframeAnimation.h:
+ (WebCore::KeyframeAnimation::setIndex):
+
+2008-09-12 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Mitz Pettel
+
+ Fix the ASSERT and failure in webarchive/archive-empty-frame-source.html
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::mainResource): Further restoration of original WebArchive behavior.
+ Subresources can never be created from nil data, but there is always a MainResource, whether
+ or not there's any data. So in the case where the main resource has no data, fake it for the
+ sake of creating the ArchiveResource.
+
+2008-09-12 Dave Hyatt <hyatt@apple.com>
+
+ Preparation for major scrollbar rearchitecture. Eliminate the concept of non-widget based
+ scrollbars (which we never supported anyway). Make Scrollbar derive from Widget directly.
+ Remove all the isWidget and hasPlatformScrollbars guards.
+
+ Reviewed by Tim Hatcher
+
+ * platform/ScrollBar.h:
+ * platform/gtk/PlatformScrollBar.h:
+ * platform/mac/PlatformScrollBar.h:
+ * platform/qt/PlatformScrollBar.h:
+ * platform/win/PlatformScrollBar.h:
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::ScrollViewPrivate::setHasHorizontalScrollbar):
+ (WebCore::ScrollView::ScrollViewPrivate::setHasVerticalScrollbar):
+ * platform/wx/PlatformScrollBar.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::horizontalScrollbarWidget):
+ (WebCore::RenderLayer::verticalScrollbarWidget):
+ (WebCore::RenderLayer::createScrollbar):
+ (WebCore::RenderLayer::destroyScrollbar):
+ * rendering/RenderListBox.cpp:
+ (WebCore::RenderListBox::~RenderListBox):
+ (WebCore::RenderListBox::updateFromElement):
+ (WebCore::RenderListBox::isPointInOverflowControl):
+
+2008-09-12 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - https://bugs.webkit.org/show_bug.cgi?id=20793 clean up page/animation
+
+ * page/animation/AnimationController.cpp:
+ * page/animation/AnimationController.h:
+ * page/animation/CompositeAnimation.cpp:
+ * page/animation/CompositeAnimation.h:
+ * page/animation/ImplicitAnimation.cpp:
+ * page/animation/ImplicitAnimation.h:
+ * page/animation/KeyframeAnimation.cpp:
+ * page/animation/KeyframeAnimation.h:
+
+2008-09-11 Timothy Hatcher <timothy@apple.com>
+
+ Add a renderedImage method to DOMNode to get an image
+ of the rendering for the node and it's descendants.
+
+ <rdar://problem/5849349> Would like API to create
+ an image for a DOM node
+
+ Reviewed by Oliver Hunt.
+
+ * bindings/objc/DOM.mm:
+ (-[DOMNode renderedImage]): Call Frame::nodeImage.
+ * bindings/objc/DOMPrivate.h:
+ * page/Frame.h:
+ * page/mac/FrameMac.mm:
+ (WebCore::Frame::nodeImage):
+
+2008-09-08 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Need to support comma separated list of key times in keyframes selectors
+ https://bugs.webkit.org/show_bug.cgi?id=20680
+
+ Test: animations/keyframes-comma-separated.html
+
+ * css/CSSGrammar.y:
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::createKeyframeRule):
+ * css/CSSParser.h:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::addKeyframeStyle):
+ * css/WebKitCSSKeyframeRule.cpp:
+ (WebCore::WebKitCSSKeyframeRule::WebKitCSSKeyframeRule):
+ (WebCore::WebKitCSSKeyframeRule::cssText):
+ (WebCore::WebKitCSSKeyframeRule::parseKeyString):
+ * css/WebKitCSSKeyframeRule.h:
+ (WebCore::WebKitCSSKeyframeRule::keyText):
+ (WebCore::WebKitCSSKeyframeRule::setKeyText):
+ (WebCore::WebKitCSSKeyframeRule::getKeys):
+ * css/WebKitCSSKeyframesRule.cpp:
+ (WebCore::WebKitCSSKeyframesRule::append):
+ (WebCore::WebKitCSSKeyframesRule::insertRule):
+ (WebCore::WebKitCSSKeyframesRule::deleteRule):
+ (WebCore::WebKitCSSKeyframesRule::findRule):
+ (WebCore::WebKitCSSKeyframesRule::findRuleIndex):
+ * css/WebKitCSSKeyframesRule.h:
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::blendProperties):
+
+2008-09-11 Kevin McCullough <kmccullough@apple.com>
+
+ RS by Tim.
+
+ Reverting because this caused a crash.
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::canBeProgramaticallyScrolled):
+ (WebCore::RenderObject::hasScrollableView):
+ * rendering/RenderObject.h:
+
+2008-09-11 Dean Jackson <dino@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix assertion on transition property "none"
+ https://bugs.webkit.org/show_bug.cgi?id=20751
+
+ Test: transitions/transition-end-event-set-none.html
+
+ * page/animation/CompositeAnimation.cpp:
+ (WebCore::CompositeAnimation::updateTransitions):
+
+2008-09-11 David Smith <catfish.man@gmail.com>
+
+ Rubber-stamped by mitzpettel.
+
+ Remove an accidentally added extra file.
+
+ * WebCore: Removed.
+
+2008-09-11 David Smith <catfish.man@gmail.com>
+
+ Reviewed by Darin
+
+ https://bugs.webkit.org/show_bug.cgi?id=20180
+
+ This speeds up :nth-child matching as tested by querySelectorAll by around 10% by inlining the common case of Node::renderStyle(). Many thanks to mitzpettel and othermaciej for suggestions and help.
+
+ * WebCore.xcodeproj/project.pbxproj: Add NodeRenderStyle.h
+ * css/CSSStyleSelector.cpp: include NodeRenderStyle.h
+ * dom/Element.cpp: include NodeRenderStyle.h
+ * dom/Node.cpp: Remove the definition of renderStyle()
+ (WebCore::Node::nonRendererRenderStyle):
+ * dom/Node.h: Make renderStyle() nonvirtual and add nonRendererRenderStyle()
+ * dom/NodeRenderStyle.h: Added.
+ (WebCore::Node::renderStyle): Inline the common case of this, call nonRendererRenderStyle for the part that needed to be virtual
+ * html/HTMLOptGroupElement.cpp: include NodeRenderStyle.h
+ * html/HTMLOptGroupElement.h:
+ (WebCore::HTMLOptGroupElement::nonRendererRenderStyle): override to return m_style
+ * html/HTMLOptionElement.cpp: include NodeRenderStyle.h
+ * html/HTMLOptionElement.h:
+ (WebCore::HTMLOptionElement::nonRendererRenderStyle): override to return m_style
+ * rendering/RenderListBox.cpp: include NodeRenderStyle.h
+ * rendering/RenderMenuList.cpp: include NodeRenderStyle.h
+ * svg/SVGUseElement.cpp: include NodeRenderStyle.h
+
+2008-09-11 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Adele and Tim.
+
+ <rdar://problem/6100597> REGRESSION: clicking on search results in Web
+ Inspector does not scroll to the line of the results (20167)
+ - This was put in by Max to fix auto scrolling but is not correct for
+ the whole web: rdar://problem/6213098
+
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::canBeProgramaticallyScrolled):
+ * rendering/RenderObject.h:
+
+2008-09-11 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin
+
+ <rdar://problem/6210511> AX: if a frame has a title, that should be reported as the AXWebArea's title
+
+ Test: accessibility/frame-with-title.html
+
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityDescription):
+
+2008-09-11 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Simon.
+
+ Fixed stroke() and strokeRect() to support gradients
+ and patterns on Qt.
+
+ [Qt] Canvas stroke don't work for gradients and patterns
+ [https://bugs.webkit.org/show_bug.cgi?id=20749]
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::strokeRect):
+
+2008-09-11 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Simon.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20729
+
+ Fixed canvas gradients for Qt
+
+ [Qt] Canvas gradients don't work as expected
+ [https://bugs.webkit.org/show_bug.cgi?id=20729]
+
+ * platform/graphics/qt/GradientQt.cpp:
+ (WebCore::Gradient::platformGradient):
+
+2008-09-11 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Simon.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20568
+
+ Add support for patterns to Qt.
+
+ * platform/graphics/qt/PatternQt.cpp:
+ (WebCore::Pattern::createPlatformPattern):
+
+2008-09-10 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - clean up AnimationBase
+
+ * page/animation/AnimationBase.cpp:
+ * page/animation/AnimationBase.h:
+ * page/animation/CompositeAnimation.cpp:
+ * page/animation/ImplicitAnimation.cpp:
+ * page/animation/ImplicitAnimation.h:
+ * page/animation/KeyframeAnimation.cpp:
+ * page/animation/KeyframeAnimation.h:
+
+2008-09-10 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20741
+ REGRESSION: ISO-8859-8-I encoding is registered incorrectly
+
+ Turns out that there were no real behavior changes for 8859-8, as it was only a debug-only
+ check to ignore this specific registration that was failing. Yet, I decided to add a bunch of
+ tests for ISO-8859-8 encoding aliases, as we handle them in a quite complicated manner.
+
+ I also found and fixed a potential crasher for non-Mac ports.
+
+ Tests: fast/encoding/hebrew/8859-8-e.html
+ fast/encoding/hebrew/8859-8-i.html
+ fast/encoding/hebrew/8859-8.html
+ fast/encoding/hebrew/csISO88598I.html
+ fast/encoding/hebrew/hebrew.html
+ fast/encoding/hebrew/iso-ir-138.html
+ fast/encoding/hebrew/logical.html
+
+ * platform/text/TextEncodingRegistry.cpp: (WebCore::checkExistingName): Check for iso-8859-8
+ (case-insensitively, because different versions of ICU report this MIME name in different
+ case).
+
+ * platform/text/TextCodecICU.cpp:
+ (WebCore::TextCodecICU::registerExtendedEncodingNames): Updated some comments.
+ (WebCore::TextCodecICU::registerExtendedCodecs): Try both MIME and IANA names here, too.
+ There are four names in ICU that only have MIME names (x-mac-* ones), so we could end up
+ with an encoding map entry, but no codec for these. This was not an issue on the Mac, as
+ we also support these via TEC (which we should stop doing), but on Windows, this would
+ likely crash.
+
+2008-09-09 Dave Hyatt <hyatt@apple.com
+
+ Resurrect PlatformScrollbarWin.
+
+ Reviewed by Adam Roben
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * platform/win/PlatformScrollBarWin.cpp:
+ (WebCore::isRunningOnVistaOrLater):
+ (WebCore::checkAndInitScrollbarTheme):
+ (WebCore::PlatformScrollbar::PlatformScrollbar):
+ (WebCore::PlatformScrollbar::invalidateTrack):
+ (WebCore::PlatformScrollbar::invalidatePart):
+ (WebCore::PlatformScrollbar::paint):
+ (WebCore::PlatformScrollbar::hasButtons):
+ (WebCore::PlatformScrollbar::hasThumb):
+ (WebCore::PlatformScrollbar::backButtonRect):
+ (WebCore::PlatformScrollbar::forwardButtonRect):
+ (WebCore::PlatformScrollbar::trackRect):
+ (WebCore::PlatformScrollbar::gripperRect):
+ (WebCore::PlatformScrollbar::thumbLength):
+ (WebCore::PlatformScrollbar::paintButton):
+ (WebCore::PlatformScrollbar::paintTrack):
+ (WebCore::PlatformScrollbar::paintThumb):
+ (WebCore::PlatformScrollbar::paintGripper):
+ (WebCore::PlatformScrollbar::hitTest):
+ (WebCore::PlatformScrollbar::handleMouseMoveEvent):
+ (WebCore::PlatformScrollbar::handleMouseOutEvent):
+ (WebCore::PlatformScrollbar::themeChanged):
+
+2008-09-09 Cameron Zwarich <cwzwarich@uwaterloo.ca>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 20759: Remove MacroAssembler
+ <https://bugs.webkit.org/show_bug.cgi?id=20759>
+
+ Make the necessary changes to ForwardingHeaders to remove
+ MacroAssembler.
+
+ * ForwardingHeaders/masm/IA32MacroAsm.h: Removed.
+ * ForwardingHeaders/masm/MacroAssembler.h: Removed.
+ * ForwardingHeaders/masm/X86Assembler.h: Added.
+
+2008-09-09 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Dave Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=16792
+ [GTK] Fails to render Japanese/Chinese text with simple path
+
+ https://bugs.webkit.org/show_bug.cgi?id=16942
+ [GTK] Oddities in font selection and fall back
+
+ https://bugs.webkit.org/show_bug.cgi?id=16862
+ [GTK] Custom fonts hard-coded to use grayscale antialiasing and no hinting
+
+ GTK+ font fixes and enhancements.
+
+ Implement font fallback for the simple FontConfig-based text path and
+ improve the Pango-based complex text path to make use of requested
+ font properties and available font selection.
+
+ Add text shadow support to the complex path.
+
+ * platform/graphics/gtk/FontCacheGtk.cpp:
+ (WebCore::FontCache::getFontDataForCharacters):
+ (WebCore::FontCache::getSimilarFontPlatformData):
+ * platform/graphics/gtk/FontGtk.cpp:
+ (WebCore::setPangoAttributes):
+ (WebCore::Font::drawComplexText):
+ (WebCore::getDefaultPangoLayout):
+ (WebCore::Font::floatWidthForComplexText):
+ (WebCore::Font::offsetForPositionForComplexText):
+ (WebCore::Font::selectionRectForComplexText):
+ * platform/graphics/gtk/FontPlatformData.h:
+ (WebCore::FontPlatformData::FontPlatformData):
+ (WebCore::FontPlatformData::hash):
+ * platform/graphics/gtk/FontPlatformDataGtk.cpp:
+ (WebCore::FontPlatformData::FontPlatformData):
+ * platform/graphics/gtk/SimpleFontDataGtk.cpp:
+ (WebCore::SimpleFontData::platformDestroy):
+
+2008-09-09 Dave Hyatt <hyatt@apple.com>
+
+ Make the Windows classic case work again. Overlap in slider constants and other constants broke
+ the push state for buttons and checkboxes. Make sure to check the RenderObject's appearance
+ value to make sure it's really a slider thumb to resolve this conflict.
+
+ Reviewed by Adam Roben
+
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::drawControl):
+
+2008-09-05 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Need to handle the case when 0% or 100% keyframe is omitted
+ https://bugs.webkit.org/show_bug.cgi?id=20679
+
+ Tests: animations/keyframes-from-missing.html
+ animations/keyframes-to-missing.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::addKeyframeStyle):
+
+2008-09-09 Dave Hyatt <hyatt@apple.com>
+
+ Resurrect Safari's original RenderThemeWin and bring it up to date with ToT. Having a current
+ RenderThemeWin that does not have any Skia dependencies should provide a good basis for a potential
+ merge of Google Chrome's RenderThemeWin (to help us see where the Skia stuff can be cut and to see
+ what changes have been made as compared with the old RenderThemeWin).
+
+ Fix CSS2 system fonts to properly set both the rendering mode (so that they properly pick up GDI vs. CG
+ text rendering modes) and the printer font setting (so that OS X system fonts properly pick up screen
+ vs. printer advancement rounding).
+
+ Reviewed by Adam/Sam
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * platform/graphics/Icon.h:
+ (WebCore::Icon::create):
+ * rendering/RenderThemeWin.cpp:
+ (WebCore::RenderThemeWin::RenderThemeWin):
+ (WebCore::RenderThemeWin::~RenderThemeWin):
+ (WebCore::RenderThemeWin::buttonTheme):
+ (WebCore::RenderThemeWin::textFieldTheme):
+ (WebCore::RenderThemeWin::menuListTheme):
+ (WebCore::RenderThemeWin::sliderTheme):
+ (WebCore::RenderThemeWin::close):
+ (WebCore::RenderThemeWin::themeChanged):
+ (WebCore::RenderThemeWin::supportsHover):
+ (WebCore::fillFontDescription):
+ (WebCore::RenderThemeWin::systemFont):
+ (WebCore::RenderThemeWin::supportsFocus):
+ (WebCore::RenderThemeWin::determineClassicState):
+ (WebCore::RenderThemeWin::determineState):
+ (WebCore::RenderThemeWin::determineSliderThumbState):
+ (WebCore::RenderThemeWin::getClassicThemeData):
+ (WebCore::RenderThemeWin::getThemeData):
+ (WebCore::drawControl):
+ (WebCore::RenderThemeWin::paintButton):
+ (WebCore::RenderThemeWin::paintTextField):
+ (WebCore::RenderThemeWin::paintMenuList):
+ (WebCore::RenderThemeWin::adjustMenuListStyle):
+ (WebCore::RenderThemeWin::adjustMenuListButtonStyle):
+ (WebCore::RenderThemeWin::paintMenuListButton):
+ (WebCore::RenderThemeWin::paintSliderTrack):
+ (WebCore::RenderThemeWin::paintSliderThumb):
+ (WebCore::RenderThemeWin::adjustSliderThumbSize):
+ (WebCore::RenderThemeWin::paintSearchField):
+ (WebCore::RenderThemeWin::adjustSearchFieldStyle):
+ (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeWin::adjustSearchFieldCancelButtonStyle):
+ (WebCore::RenderThemeWin::adjustSearchFieldDecorationStyle):
+ (WebCore::RenderThemeWin::adjustSearchFieldResultsDecorationStyle):
+ (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
+ (WebCore::RenderThemeWin::adjustSearchFieldResultsButtonStyle):
+ (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
+ * rendering/RenderThemeWin.h:
+ (WebCore::ThemeData::ThemeData):
+ (WebCore::RenderThemeWin::paintSearchFieldDecoration):
+ (WebCore::RenderThemeWin::adjustButtonStyle):
+ (WebCore::RenderThemeWin::adjustTextFieldStyle):
+ (WebCore::RenderThemeWin::adjustTextAreaStyle):
+
+2008-09-09 Dean Jackson <dino@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Document::createEvent missing cases for animation and
+ transition events.
+ https://bugs.webkit.org/show_bug.cgi?id=20734
+
+ Test: transitions/transition-end-event-create.html
+ Test: animations/animation-events-create.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::createEvent):
+ - add the two cases
+
+2008-09-09 Dan Bernstein <mitz@apple.com>
+
+ - Tiger build fix
+
+ * WebCore.Tiger.exp:
+ * WebCore.base.exp:
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2008-09-09 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - WebCore part of <rdar://problem/6206244> Use alternate character-to-glyph interface on Leopard
+
+ * WebCore.Tiger.exp:
+ * WebCore.base.exp:
+ * platform/graphics/SimpleFontData.h:
+ * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
+ (WebCore::GlyphPage::fill):
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::initFontData):
+ (WebCore::SimpleFontData::platformInit):
+ (WebCore::SimpleFontData::platformDestroy):
+ * platform/mac/WebCoreSystemInterface.h:
+ * platform/mac/WebCoreSystemInterface.mm:
+
+2008-09-09 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/6198545> REGRESSION: Inspector debugger barfs on
+ breakpoints inside eval.
+
+ * page/inspector/inspector.js:
+
+2008-09-09 Joerg Bornemann <joerg.bornemann@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compilation of the Qt port with disabled plugins on Windows
+
+ * WebCore.pro:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::PluginView):
+ * plugins/PluginView.h:
+
+2008-09-09 Jungshik Shin <jungshik.shin@gmail.com>
+
+ Reviewed by Alexey Proskuryakov.
+
+ Try MIME charset names before trying IANA names
+ ( https://bugs.webkit.org/show_bug.cgi?id=17537 )
+
+ With this change, shorter and more widely used names (preferred MIME
+ names) are returned by document.charset, document.characterSet,
+ document.inputEncoding rather than IANA names. This helps
+ fixing bug 18085 in addition to web developers who are more familiar
+ with MIME names. For instance, EUC-JP, ISO-8859-X and US-ASCII will be
+ returned instead of Extended_UNIX_Code_Packed_Format_for_Japanese,
+ ISO-8859-X:19xx, and ANSI_X3.4-1968. It also replaces IBM8xx with cp8xx.
+ Note that cp/IBM 8xx are extremly rare in today's web. Even if they're
+ used, the former is still recognized as aliases to the latter so that
+ there's very little, if any, to worry about.
+
+ * platform/text/TextCodecICU.cpp:
+ (WebCore::TextCodecICU::registerExtendedEncodingNames):
+
+2008-09-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Maciej Stachowiak and Oliver Hunt.
+
+ Add forwarding headers.
+
+ * ForwardingHeaders/wtf/HashFunctions.h: Added.
+
+2008-09-05 Dean Jackson <dino@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Update grammar so that we can add a keyframe rule via the DOM.
+ https://bugs.webkit.org/show_bug.cgi?id=20613
+
+ * css/CSSGrammar.y:
+ * css/tokenizer.flex:
+
+2008-09-08 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Allow <br> for simple UA stylesheet. Editing code generates them. It does not
+ actually show up in any of the default stylesheets.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::elementCanUseSimpleDefaultStyle):
+
+2008-09-08 Dimitri Glazkov <dglazkov@google.com>
+
+ Reviewed by Dan Bernstein.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=20237
+ Zero width and space characters are displayed incorrectly if not contained in a fallback font
+
+ Adds an extra check for Object Replacement Character (U+FFFC) to address
+ the issue with fast/text/zero-width-characters.html test when run
+ with Windows system default fonts.
+
+ * platform/graphics/Font.h:
+ (WebCore::Font::treatAsZeroWidthSpace):
+
+2008-09-08 Dean Jackson <dino@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Code style issue I forgot to fix from previous commit.
+
+ * platform/graphics/AffineTransform.cpp:
+ (WebCore::AffineTransform::blend):
+
+2008-09-08 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Sam Weinig
+
+ - Animation of -webkit-transform matrix() function should not do linear interpolation
+ https://bugs.webkit.org/show_bug.cgi?id=20667
+
+ Test: animations/matrix-anim.html
+
+ * ChangeLog:
+ * platform/graphics/AffineTransform.cpp:
+ (WebCore::affineTransformDecompose):
+ (WebCore::affineTransformCompose):
+ (WebCore::AffineTransform::blend):
+ * platform/graphics/AffineTransform.h:
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::MatrixTransformOperation::blend):
+
+2008-09-08 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20668
+ multipart/form-data does not always include Content-type for submitted files
+
+ Cannot be tested with DRT or manual tests.
+
+ * platform/MIMETypeRegistry.cpp:
+ (WebCore::initializeSupportedNonImageMimeTypes): Fix spacing.
+ (WebCore::MIMETypeRegistry::getMIMETypeForPath): Default to application/octet-stream for
+ unknown extensions, not just missing ones.
+
+2008-09-08 Simon Hausmann <hausmann@webkit.org>
+
+ Build fix for the Qt/Windows build, define USE_JSC to
+ enable the WebCore::String -> JSC::UString operator that
+ MSVC insists on seeing
+
+ * WebCore.pro:
+
+2008-09-08 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Maciej.
+
+ <rdar://problem/5850387> Showing bookmarks reloads Google Reader instead.
+
+ In some cases, timeouts scheduled by a page in the onunload handler could fire even when the
+ page had been unloaded and replaced by a non-HTML representation based view (such as the bookmarks view).
+
+ Fix this by clearing timeouts for pages that aren't cached when the provisional load is committed.
+
+ * bindings/js/JSDOMWindowBase.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::commitProvisionalLoad):
+
+2008-09-07 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ Don't leak the simple stylesheet.
+ Also call RenderTheme::adjustDefaultStyleSheet() in right place.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::loadFullDefaultStyle):
+ (WebCore::loadSimpleDefaultStyle):
+ (WebCore::CSSStyleSelector::styleForElement):
+
+2008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
+
+ Reviewed by Oliver Hunt.
+
+ Bug 20711: Change KJS prefix on preprocessor macros to JSC
+ <https://bugs.webkit.org/show_bug.cgi?id=20711>
+
+ * bindings/js/JSEventTargetBase.h:
+ * bindings/js/JSHTMLInputElementBase.cpp:
+ * bindings/js/JSHTMLInputElementBase.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+
+2008-09-07 Cameron Zwarich <cwzwarich@uwaterloo.ca>
+
+ Reviewed by Maciej Stachowiak.
+
+ Bug 20704: Replace the KJS namespace
+ <https://bugs.webkit.org/show_bug.cgi?id=20704>
+
+ Rename the KJS namespace to JSC. There are still some uses of KJS in the
+ names of JNI functions, and I will check if these are safe to change
+ as well.
+
+ * WebCore.base.exp:
+ * bindings/js/GCController.cpp:
+ * bindings/js/JSAttrCustom.cpp:
+ * bindings/js/JSAudioConstructor.cpp:
+ * bindings/js/JSAudioConstructor.h:
+ (WebCore::JSAudioConstructor::classInfo):
+ * bindings/js/JSCSSRuleCustom.cpp:
+ * bindings/js/JSCSSStyleDeclarationCustom.cpp:
+ * bindings/js/JSCSSValueCustom.cpp:
+ * bindings/js/JSCanvasPixelArrayCustom.cpp:
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ * bindings/js/JSClipboardCustom.cpp:
+ * bindings/js/JSConsoleCustom.cpp:
+ * bindings/js/JSCustomSQLStatementCallback.cpp:
+ (WebCore::JSCustomSQLStatementCallback::handleEvent):
+ * bindings/js/JSCustomSQLStatementCallback.h:
+ (WebCore::JSCustomSQLStatementCallback::create):
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
+ * bindings/js/JSCustomSQLStatementErrorCallback.h:
+ (WebCore::JSCustomSQLStatementErrorCallback::create):
+ * bindings/js/JSCustomSQLTransactionCallback.cpp:
+ (WebCore::JSCustomSQLTransactionCallback::handleEvent):
+ * bindings/js/JSCustomSQLTransactionCallback.h:
+ (WebCore::JSCustomSQLTransactionCallback::create):
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
+ * bindings/js/JSCustomSQLTransactionErrorCallback.h:
+ (WebCore::JSCustomSQLTransactionErrorCallback::create):
+ * bindings/js/JSCustomVoidCallback.cpp:
+ (WebCore::JSCustomVoidCallback::handleEvent):
+ * bindings/js/JSCustomVoidCallback.h:
+ (WebCore::JSCustomVoidCallback::create):
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ (WebCore::JSCustomXPathNSResolver::create):
+ * bindings/js/JSCustomXPathNSResolver.h:
+ * bindings/js/JSDOMApplicationCacheCustom.cpp:
+ (WebCore::JSDOMApplicationCache::dispatchEvent):
+ * bindings/js/JSDOMBinding.cpp:
+ (WebCore::jsOwnedStringOrNull):
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMObject::DOMObject):
+ (WebCore::cacheDOMObject):
+ (WebCore::cacheSVGDOMObject):
+ (WebCore::DOMExceptionTranslator::DOMExceptionTranslator):
+ (WebCore::toJS):
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ (WebCore::JSDOMWindowBase::classInfo):
+ (WebCore::JSDOMWindowBase::d):
+ * bindings/js/JSDOMWindowCustom.cpp:
+ (WebCore::JSDOMWindow::getPropertyAttributes):
+ * bindings/js/JSDOMWindowCustom.h:
+ (WebCore::asJSDOMWindow):
+ (WebCore::JSDOMWindow::customGetOwnPropertySlot):
+ (WebCore::JSDOMWindow::customPut):
+ (WebCore::JSDOMWindowBase::allowsAccessFrom):
+ (WebCore::JSDOMWindowBase::allowsAccessFromNoErrorMessage):
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::getPropertyAttributes):
+ * bindings/js/JSDOMWindowShell.h:
+ (WebCore::JSDOMWindowShell::classInfo):
+ * bindings/js/JSDatabaseCustom.cpp:
+ * bindings/js/JSDocumentCustom.cpp:
+ * bindings/js/JSDocumentFragmentCustom.cpp:
+ * bindings/js/JSElementCustom.cpp:
+ * bindings/js/JSEventCustom.cpp:
+ * bindings/js/JSEventListener.cpp:
+ * bindings/js/JSEventListener.h:
+ (WebCore::JSUnprotectedEventListener::create):
+ (WebCore::JSEventListener::create):
+ * bindings/js/JSEventTargetBase.cpp:
+ * bindings/js/JSEventTargetBase.h:
+ (WebCore::JSEventTargetBase::getValueProperty):
+ (WebCore::JSEventTargetBase::putValueProperty):
+ (WebCore::JSEventTargetBase::getOwnPropertySlot):
+ (WebCore::JSEventTargetBase::put):
+ (WebCore::JSEventTargetPrototype::JSEventTargetPrototype):
+ (WebCore::JSEventTargetPrototype::self):
+ (WebCore::JSEventTargetPrototype::getOwnPropertySlot):
+ (WebCore::JSEventTargetPrototype::classInfo):
+ * bindings/js/JSEventTargetNode.cpp:
+ * bindings/js/JSEventTargetNode.h:
+ (WebCore::JSEventTargetNode::getOwnPropertySlot):
+ (WebCore::JSEventTargetNode::getValueProperty):
+ (WebCore::JSEventTargetNode::put):
+ (WebCore::JSEventTargetNode::putValueProperty):
+ * bindings/js/JSHTMLAllCollection.h:
+ (WebCore::JSHTMLAllCollection::JSHTMLAllCollection):
+ (WebCore::JSHTMLAllCollection::toBoolean):
+ * bindings/js/JSHTMLAppletElementCustom.cpp:
+ * bindings/js/JSHTMLCollectionCustom.cpp:
+ * bindings/js/JSHTMLDocumentCustom.cpp:
+ * bindings/js/JSHTMLElementCustom.cpp:
+ * bindings/js/JSHTMLEmbedElementCustom.cpp:
+ * bindings/js/JSHTMLFormElementCustom.cpp:
+ * bindings/js/JSHTMLFrameElementCustom.cpp:
+ * bindings/js/JSHTMLFrameSetElementCustom.cpp:
+ * bindings/js/JSHTMLIFrameElementCustom.cpp:
+ * bindings/js/JSHTMLInputElementBase.cpp:
+ (WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
+ (WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
+ * bindings/js/JSHTMLInputElementBase.h:
+ (WebCore::JSHTMLInputElementBase::classInfo):
+ * bindings/js/JSHTMLObjectElementCustom.cpp:
+ * bindings/js/JSHTMLOptionElementConstructor.cpp:
+ * bindings/js/JSHTMLOptionElementConstructor.h:
+ (WebCore::JSHTMLOptionElementConstructor::classInfo):
+ * bindings/js/JSHTMLOptionsCollectionCustom.cpp:
+ * bindings/js/JSHTMLSelectElementCustom.cpp:
+ (WebCore::selectIndexSetter):
+ (WebCore::JSHTMLSelectElement::indexSetter):
+ * bindings/js/JSHTMLSelectElementCustom.h:
+ * bindings/js/JSHistoryCustom.cpp:
+ * bindings/js/JSImageConstructor.cpp:
+ * bindings/js/JSImageConstructor.h:
+ (WebCore::JSImageConstructor::classInfo):
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ * bindings/js/JSInspectedObjectWrapper.h:
+ (WebCore::JSInspectedObjectWrapper::wrapOutgoingValue):
+ (WebCore::JSInspectedObjectWrapper::classInfo):
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ * bindings/js/JSInspectorCallbackWrapper.h:
+ (WebCore::JSInspectorCallbackWrapper::classInfo):
+ (WebCore::JSInspectorCallbackWrapper::wrapOutgoingValue):
+ * bindings/js/JSJavaScriptCallFrameCustom.cpp:
+ * bindings/js/JSLocationCustom.cpp:
+ * bindings/js/JSMimeTypeArrayCustom.cpp:
+ * bindings/js/JSNSResolver.cpp:
+ * bindings/js/JSNSResolver.h:
+ (WebCore::JSNSResolver::create):
+ * bindings/js/JSNamedNodeMapCustom.cpp:
+ * bindings/js/JSNamedNodesCollection.cpp:
+ (WebCore::JSNamedNodesCollection::JSNamedNodesCollection):
+ * bindings/js/JSNamedNodesCollection.h:
+ (WebCore::JSNamedNodesCollection::classInfo):
+ * bindings/js/JSNavigatorCustom.cpp:
+ * bindings/js/JSNodeCustom.cpp:
+ * bindings/js/JSNodeFilterCondition.cpp:
+ (WebCore::JSNodeFilterCondition::acceptNode):
+ * bindings/js/JSNodeFilterCondition.h:
+ (WebCore::JSNodeFilterCondition::create):
+ * bindings/js/JSNodeFilterCustom.cpp:
+ * bindings/js/JSNodeIteratorCustom.cpp:
+ * bindings/js/JSNodeListCustom.cpp:
+ * bindings/js/JSPluginArrayCustom.cpp:
+ * bindings/js/JSPluginCustom.cpp:
+ * bindings/js/JSPluginElementFunctions.cpp:
+ (WebCore::getRuntimeObject):
+ * bindings/js/JSPluginElementFunctions.h:
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::construct):
+ (WebCore::JSQuarantinedObjectWrapper::call):
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ (WebCore::JSQuarantinedObjectWrapper::unwrappedObject):
+ (WebCore::JSQuarantinedObjectWrapper::unwrappedGlobalObject):
+ (WebCore::JSQuarantinedObjectWrapper::className):
+ * bindings/js/JSRGBColor.cpp:
+ * bindings/js/JSRGBColor.h:
+ (WebCore::JSRGBColor::classInfo):
+ * bindings/js/JSSQLResultSetRowListCustom.cpp:
+ * bindings/js/JSSQLTransactionCustom.cpp:
+ * bindings/js/JSSVGLazyEventListener.cpp:
+ * bindings/js/JSSVGLazyEventListener.h:
+ * bindings/js/JSSVGLengthCustom.cpp:
+ * bindings/js/JSSVGMatrixCustom.cpp:
+ (WebCore::JSSVGMatrix::inverse):
+ (WebCore::JSSVGMatrix::rotateFromVector):
+ * bindings/js/JSSVGPathSegCustom.cpp:
+ * bindings/js/JSSVGPathSegListCustom.cpp:
+ (WebCore::JSSVGPathSegList::initialize):
+ (WebCore::JSSVGPathSegList::getItem):
+ (WebCore::JSSVGPathSegList::insertItemBefore):
+ (WebCore::JSSVGPathSegList::replaceItem):
+ (WebCore::JSSVGPathSegList::removeItem):
+ (WebCore::JSSVGPathSegList::appendItem):
+ * bindings/js/JSSVGPointListCustom.cpp:
+ * bindings/js/JSSVGTransformListCustom.cpp:
+ * bindings/js/JSStorageCustom.cpp:
+ * bindings/js/JSStyleSheetCustom.cpp:
+ * bindings/js/JSStyleSheetListCustom.cpp:
+ * bindings/js/JSTextCustom.cpp:
+ * bindings/js/JSTreeWalkerCustom.cpp:
+ * bindings/js/JSXMLHttpRequestConstructor.cpp:
+ * bindings/js/JSXMLHttpRequestConstructor.h:
+ (WebCore::JSXMLHttpRequestConstructor::classInfo):
+ * bindings/js/JSXMLHttpRequestCustom.cpp:
+ * bindings/js/JSXMLHttpRequestUploadCustom.cpp:
+ * bindings/js/JSXSLTProcessorConstructor.cpp:
+ * bindings/js/JSXSLTProcessorConstructor.h:
+ (WebCore::JSXSLTProcessorConstructor::classInfo):
+ * bindings/js/JSXSLTProcessorCustom.cpp:
+ * bindings/js/ScheduledAction.cpp:
+ * bindings/js/ScheduledAction.h:
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::attachDebugger):
+ (WebCore::ScriptController::windowScriptNPObject):
+ * bindings/js/ScriptController.h:
+ * bindings/js/ScriptControllerGtk.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * bindings/js/ScriptControllerMac.mm:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ (WebCore::ScriptController::windowScriptObject):
+ (WebCore::ScriptController::clearPlatformScriptObjects):
+ (WebCore::updateRenderingForBindings):
+ (WebCore::ScriptController::initJavaJSBindings):
+ * bindings/js/ScriptControllerQt.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * bindings/js/ScriptControllerWin.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * bindings/js/ScriptControllerWx.cpp:
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * bindings/js/StringSourceProvider.h:
+ (WebCore::StringSourceProvider::getRange):
+ * bindings/objc/DOM.mm:
+ (-[DOMNode JSC::Bindings::]):
+ * bindings/objc/DOMInternal.h:
+ * bindings/objc/DOMInternal.mm:
+ (-[WebScriptObject _initializeScriptDOMNodeImp]):
+ * bindings/objc/DOMUtility.mm:
+ (JSC::createDOMWrapper):
+ (WebCore::createDOMWrapper):
+ * bindings/objc/WebScriptObject.mm:
+ (WebCore::createJSWrapper):
+ (-[WebScriptObject _initWithJSObject:JSC::originRootObject:JSC::Bindings::rootObject:JSC::Bindings::]):
+ * bindings/objc/WebScriptObjectPrivate.h:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+ * bridge/NP_jsobject.h:
+ * bridge/c/c_class.cpp:
+ * bridge/c/c_class.h:
+ * bridge/c/c_instance.cpp:
+ * bridge/c/c_instance.h:
+ * bridge/c/c_runtime.cpp:
+ * bridge/c/c_runtime.h:
+ * bridge/c/c_utility.cpp:
+ * bridge/c/c_utility.h:
+ * bridge/jni/jni_class.cpp:
+ * bridge/jni/jni_class.h:
+ * bridge/jni/jni_instance.cpp:
+ * bridge/jni/jni_instance.h:
+ * bridge/jni/jni_jsobject.h:
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::convertJObjectToValue):
+ * bridge/jni/jni_objc.mm:
+ (JSC::Bindings::dispatchJNICall):
+ * bridge/jni/jni_runtime.cpp:
+ * bridge/jni/jni_runtime.h:
+ * bridge/jni/jni_utility.cpp:
+ * bridge/jni/jni_utility.h:
+ * bridge/npruntime.cpp:
+ (_NPN_GetStringIdentifier):
+ * bridge/objc/WebScriptObject.h:
+ * bridge/objc/objc_class.h:
+ * bridge/objc/objc_class.mm:
+ * bridge/objc/objc_instance.h:
+ * bridge/objc/objc_instance.mm:
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ * bridge/objc/objc_utility.h:
+ * bridge/objc/objc_utility.mm:
+ * bridge/qt/qt_class.cpp:
+ * bridge/qt/qt_class.h:
+ * bridge/qt/qt_instance.cpp:
+ * bridge/qt/qt_instance.h:
+ * bridge/qt/qt_runtime.cpp:
+ (JSC::Bindings::convertQVariantToValue):
+ (JSC::Bindings::):
+ * bridge/qt/qt_runtime.h:
+ * bridge/runtime.cpp:
+ * bridge/runtime.h:
+ * bridge/runtime_array.cpp:
+ * bridge/runtime_array.h:
+ * bridge/runtime_method.cpp:
+ * bridge/runtime_method.h:
+ * bridge/runtime_object.cpp:
+ * bridge/runtime_object.h:
+ * bridge/runtime_root.cpp:
+ (JSC::Bindings::RootObject::invalidate):
+ (JSC::Bindings::RootObject::gcProtect):
+ (JSC::Bindings::RootObject::gcUnprotect):
+ * bridge/runtime_root.h:
+ * bridge/testbindings.cpp:
+ * bridge/testbindings.mm:
+ * bridge/testqtbindings.cpp:
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ * dom/NSResolver.h:
+ * dom/Node.cpp:
+ (WebCore::Node::setDocument):
+ (WebCore::ResolveNamespaceFunctor::ResolveNamespaceFunctor):
+ (WebCore::resolveNamespacesForSelector):
+ (WebCore::Node::querySelector):
+ (WebCore::Node::querySelectorAll):
+ * dom/Node.h:
+ * dom/NodeFilter.cpp:
+ * dom/NodeFilter.h:
+ * dom/NodeFilterCondition.cpp:
+ * dom/NodeFilterCondition.h:
+ * dom/NodeIterator.cpp:
+ * dom/NodeIterator.h:
+ * dom/Traversal.cpp:
+ * dom/Traversal.h:
+ * dom/TreeWalker.cpp:
+ * dom/TreeWalker.h:
+ * dom/make_names.pl:
+ * history/CachedPage.cpp:
+ * history/CachedPage.h:
+ * html/HTMLPlugInElement.cpp:
+ (WebCore::HTMLPlugInElement::getInstance):
+ * html/HTMLPlugInElement.h:
+ * loader/FrameLoader.cpp:
+ * loader/FrameLoader.h:
+ * loader/icon/IconDatabase.cpp:
+ (WebCore::iconDatabase):
+ * page/Console.cpp:
+ * page/Console.h:
+ * page/InspectorController.cpp:
+ (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
+ (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
+ (WebCore::InspectorResource::setXMLHttpRequestProperties):
+ (WebCore::InspectorResource::sourceString):
+ (WebCore::getResourceDocumentNode):
+ (WebCore::search):
+ (WebCore::InspectorController::focusNode):
+ (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
+ (WebCore::InspectorController::addDatabaseScriptResource):
+ (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
+ * page/InspectorController.h:
+ (WebCore::InspectorController::profiles):
+ * page/JavaScriptCallFrame.cpp:
+ (WebCore::JavaScriptCallFrame::scopeChain):
+ * page/JavaScriptCallFrame.h:
+ (WebCore::JavaScriptCallFrame::create):
+ (WebCore::JavaScriptCallFrame::update):
+ * page/JavaScriptDebugListener.h:
+ * page/JavaScriptDebugServer.cpp:
+ (WebCore::dispatchDidParseSource):
+ * page/JavaScriptDebugServer.h:
+ * page/JavaScriptProfile.cpp:
+ * page/JavaScriptProfile.h:
+ * page/JavaScriptProfileNode.cpp:
+ (WebCore::getTotalTime):
+ (WebCore::getSelfTime):
+ (WebCore::getTotalPercent):
+ (WebCore::getSelfPercent):
+ (WebCore::getNumberOfCalls):
+ (WebCore::getChildren):
+ (WebCore::getVisible):
+ * page/JavaScriptProfileNode.h:
+ * page/Page.cpp:
+ (WebCore::Page::setDebuggerForAllPages):
+ (WebCore::Page::setDebugger):
+ * page/Page.h:
+ (WebCore::Page::debugger):
+ * page/mac/FrameMac.mm:
+ * platform/KURL.h:
+ (WebCore::KURL::operator JSC::UString):
+ * platform/text/AtomicString.cpp:
+ (WebCore::AtomicString::add):
+ (WebCore::AtomicString::find):
+ * platform/text/AtomicString.h:
+ (WebCore::AtomicString::AtomicString):
+ * platform/text/PlatformString.h:
+ * platform/text/String.cpp:
+ (WebCore::charactersToDouble):
+ * platform/win/BString.cpp:
+ * platform/win/BString.h:
+ * plugins/MimeTypeArray.h:
+ * plugins/Plugin.h:
+ * plugins/PluginArray.h:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::start):
+ (WebCore::PluginView::performRequest):
+ (WebCore::PluginView::bindingInstance):
+ * plugins/PluginView.h:
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::handleKeyboardEvent):
+ (WebCore::PluginView::handleMouseEvent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ (WebCore::PluginView::init):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ (WebCore::PluginView::init):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::dispatchNPEvent):
+ (WebCore::PluginView::handleKeyboardEvent):
+ (WebCore::PluginView::handleMouseEvent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ * storage/Database.cpp:
+ (WebCore::Database::Database):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::responseText):
+ (WebCore::XMLHttpRequest::loadRequestAsynchronously):
+ (WebCore::XMLHttpRequest::clearResponse):
+ (WebCore::XMLHttpRequest::dropProtection):
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ (WebCore::XMLHttpRequest::didReceiveData):
+ * xml/XMLHttpRequest.h:
+
+2008-09-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Adopt opener restriction on frame navigation.
+ https://bugs.webkit.org/show_bug.cgi?id=20642
+
+ This restriction helps prevent an attacker from navigating top-level
+ windows that were created by another web site.
+
+ Tests: http/tests/security/frameNavigation/not-opener.html
+ http/tests/security/frameNavigation/opener.html
+
+ * loader/FrameLoader.cpp:
+ (WebCore::canAccessAncestor):
+ (WebCore::FrameLoader::shouldAllowNavigation):
+
+2008-09-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Maciej Stachowiak.
+
+ - use the correct sign for vertical offsets of combining marks
+
+ * platform/graphics/win/UniscribeController.cpp:
+ (WebCore::UniscribeController::shapeAndPlaceItem):
+
+2008-09-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - add the combining mark offsets in two places where I forgot them
+
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::Font::drawGlyphs):
+
+2008-09-07 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - correct glyph advances in complex text using web fonts rendered with
+ Core Graphics
+
+ * platform/graphics/win/FontCustomPlatformData.cpp:
+ (WebCore::FontCustomPlatformData::fontPlatformData):
+
+2008-09-07 Keishi Hattori <casey.hattori@gmail.com>
+
+ Adds console.dirxml support to the Web Inspector.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19156
+
+ Reviewed by Timothy Hatcher.
+
+ * WebCore.vcproj/WebCore.vcproj: Added ElementsTreeOutline.js.
+ * bindings/js/JSConsoleCustom.cpp:
+ (WebCore::JSConsole::dirxml):
+ * page/Console.cpp:
+ (WebCore::Console::dirxml): Adds a ConsoleMessage with NodeMessageLevel.
+ * page/Console.h:
+ (WebCore::): Added NodeMessageLevel.
+ * page/Console.idl: Added console.dirxml.
+ * page/inspector/Console.js: A NodeMessage creates a ElementsTreeOutline.
+ * page/inspector/ElementsPanel.js: Modified to use ElementsTreeOutline. The ElementsTreeOutline
+ in the ElementsPanel has includeRootDOMNode and selectEnabled set to true.
+ * page/inspector/ElementsTreeOutline.js: Added.
+ (WebInspector.ElementsTreeOutline): A subclass of TreeOutline for displaying a DOM node tree.
+ (WebInspector.ElementsTreeElement): A subclass of TreeElement for ElementsTreeOutline.
+ * page/inspector/WebKit.qrc: Added ElementsTreeOutline.js.
+ * page/inspector/inspector.css:
+ * page/inspector/inspector.html: Added ElementsTreeOutline.js.
+ * page/inspector/inspector.js: Moved hover related methods to WebInspector.
+ (WebInspector.altKeyDown):
+ (WebInspector.forceHoverHighlight):
+ (WebInspector.hoveredDOMNode):
+ (WebInspector._updateHoverHighlightSoon):
+ (WebInspector._updateHoverHighlight):
+ (WebInspector.documentKeyDown): Updates WebInspector.altKeyDown
+ (WebInspector.documentKeyUp): Updates WebInspector.altKeyDown
+ * page/inspector/utilities.js: Added getDocumentForNode, parentNodeOrFrameElement,
+ isAncestorIncludingParentFrames.
+
+2008-09-06 Mark Rowe <mrowe@apple.com>
+
+ Qt build fix.
+
+ * bridge/qt/qt_runtime.cpp:
+ (KJS::Bindings::convertQVariantToValue):
+
+=== End merge of squirrelfish-extreme ===
+
+2008-09-05 Oliver Hunt <oliver@apple.com>
+
+ Start bringing up SFX on windows.
+
+ Reviewed by Mark Rowe and Sam Weinig
+
+ Start doing the work to bring up SFX on windows. Initially
+ just working on WREC, as it does not make any calls so reduces
+ the amount of code that needs to be corrected.
+
+ Add forwarding headers
+
+ * ChangeLog:
+ * ForwardingHeaders/masm/MacroAssembler.h: Added.
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-08-27 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Fix the build of the full WebKit stack.
+
+ Add forwarding headers.
+
+ * ForwardingHeaders/masm/IA32MacroAsm.h: Added.
+ * ForwardingHeaders/wrec/WREC.h: Added.
+
+=== Start merge of squirrelfish-extreme ===
+
+2008-09-06 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ <rdar://problem/6187043>
+ Don't parse full HTML user agent style sheet unless it is actually needed
+ <rdar://problem/6131889>
+ WebView is significantly more expensive to create recently
+
+ Parsing the html4.css takes significant amount of time and memory (~50kb) on application
+ startup. Some clients may never use most of the rules.
+
+ With this patch we use simplified UA stylesheet until we hit something it can't handle.
+ This avoids full stylesheet parsing on application startup (due to empty document construction)
+ and also makes it possible for clients with very simple demands (divs and spans only) never to load
+ the full style.
+
+ It also delays view source style parsing until it is used.
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::elementCanUseSimpleDefaultStyle):
+ (WebCore::CSSStyleSelector::CSSStyleSelector):
+ (WebCore::loadFullDefaultStyle):
+ (WebCore::loadSimpleDefaultStyle):
+ (WebCore::loadViewSourceStyle):
+ (WebCore::CSSStyleSelector::matchUARules):
+ (WebCore::CSSStyleSelector::styleForElement):
+
+2008-09-06 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix.
+
+ * WebCoreSources.bkl:
+
+2008-09-06 Antti Koivisto <antti@apple.com>
+
+ Reverting r35953 which was causing problems on Windows which relies on
+ WebCore timers in nested event loops. r36132 did alternative fix.
+
+ * page/Chrome.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2008-09-06 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix <rdar://problem/6201644>
+ https://bugs.webkit.org/show_bug.cgi?id=20493
+ Crash after OK in dialog box and reloading page in secure mode
+
+ Limited loader only fix since the general timer fix is causing problems on Windows.
+
+ * loader/loader.cpp:
+ (WebCore::Loader::servePendingRequests):
+ (WebCore::Loader::Host::Host):
+ (WebCore::Loader::Host::didFinishLoading):
+ (WebCore::Loader::Host::didFail):
+ (WebCore::Loader::Host::didReceiveData):
+ * loader/loader.h:
+ (WebCore::Loader::Host::processingResource):
+
+2008-09-06 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ The initial Core Text adoption prototype was made by Daniel Fenwick.
+
+ - <rdar://problem/5158514> Add a Core Text-based complex text code path
+
+ Currently the Core Text code path is not used in any configuration.
+
+ * WebCore.xcodeproj/project.pbxproj: Added files.
+ * config.h: Defined WTF_USE_ATSUI and WTF_USE_CORE_TEXT.
+ * platform/graphics/Font.cpp:
+ (WebCore::WidthIterator::advance): Moved the spacingDisabled() test out
+ of the loop.
+ * platform/graphics/GlyphBuffer.h:
+ (WebCore::GlyphBuffer::add): Added this version that takes an advance.
+ * platform/graphics/SimpleFontData.h: Added ATSUI and CORE_TEXT #ifdefs.
+ Added getCTFont() and getCFStringAttributes() and corresponding data
+ members for Core Text.
+ * platform/graphics/mac/CoreTextController.cpp: Added.
+ (WebCore::roundCGFloat): Helper function.
+ (WebCore::ceilCGFloat): Helper function.
+ (WebCore::CoreTextController::CoreTextRun::CoreTextRun):
+ (WebCore::CoreTextController::CoreTextController):
+ (WebCore::CoreTextController::offsetForPosition):
+ (WebCore::CoreTextController::collectCoreTextRuns): Added. Segments the
+ run into subruns as necessary such that each subrun can be rendered with
+ a single font. Also separates out soft hyphens and replaces them with
+ real hyphens, because Core Text does not emit a glyph for soft hyphens.
+ Then calls collectCoreTextRunsForCharacters() on each subrun.
+ (WebCore::CoreTextController::advance):
+ (WebCore::CoreTextController::collectCoreTextRunsForCharacters): Creates
+ a CTLine from the given subrun and collects its CoreTextRuns.
+ (WebCore::CoreTextController::adjustGlyphsAndAdvances): Applies the
+ rounding hacks, letter- and word-spacing and glyph substitutions and
+ stores the resulting adjusted glyphs and advances.
+ * platform/graphics/mac/CoreTextController.h: Copied from WebCore/platform/graphics/win/UniscribeController.h.
+ (WebCore::CoreTextController::totalWidth):
+ (WebCore::CoreTextController::finalRoundingWidth):
+ (WebCore::CoreTextController::CoreTextRun::ctRun):
+ (WebCore::CoreTextController::CoreTextRun::glyphCount):
+ (WebCore::CoreTextController::CoreTextRun::fontData):
+ (WebCore::CoreTextController::CoreTextRun::characters):
+ (WebCore::CoreTextController::CoreTextRun::stringLocation):
+ (WebCore::CoreTextController::CoreTextRun::stringLength):
+ (WebCore::CoreTextController::CoreTextRun::indexAt):
+ * platform/graphics/mac/FontMac.mm: Moved the ATSUI-specific parts to
+ FontMacATSUI.mm.
+ * platform/graphics/mac/FontMacATSUI.mm: Copied from WebCore/platform/graphics/mac/FontMac.mm.
+ (WebCore::disableLigatures): Changed to call
+ FontPlatformData::allowsLigatures().
+ (WebCore::overrideLayoutOperation): Changed to call
+ FontPlatformData::roundsGlyphAdvances().
+ * platform/graphics/mac/FontMacCoreText.cpp: Copied from WebCore/platform/graphics/win/FontWin.cpp.
+ (WebCore::Font::selectionRectForComplexText): Changed to use
+ totalWidth() instead of advancing to the end and using runWidthSoFar().
+ (WebCore::Font::drawComplexText):
+ (WebCore::Font::floatWidthForComplexText): Ditto.
+ (WebCore::Font::offsetForPositionForComplexText):
+ * platform/graphics/mac/FontPlatformData.h:
+ * platform/graphics/mac/FontPlatformDataMac.mm:
+ (WebCore::FontPlatformData::setFont):
+ (WebCore::FontPlatformData::roundsGlyphAdvances): Added. Checks the
+ AppKit rendering mode.
+ (WebCore::FontPlatformData::allowsLigatures): Added. Implements the
+ heuristic that allows ligatures in fonts that do not have a glyph for
+ 'a', based on the assumption that such fonts are only used in complex
+ text.
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit):
+ (WebCore::SimpleFontData::platformDestroy):
+ (WebCore::SimpleFontData::getCTFont): Added.
+ (WebCore::SimpleFontData::getCFStringAttributes): Added. Caches and
+ returns an attributes dictionary.
+ * platform/text/mac/ShapeArabic.c: Added ATSUI #ifdefs.
+ * platform/text/mac/ShapeArabic.h: Ditto.
+
+2008-09-06 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - make combining mark offsets work in CG text on Windows
+
+ * platform/graphics/win/FontCGWin.cpp:
+ (WebCore::Font::drawGlyphs): The old code tried to translate the text
+ matrix, but failed for two reasons: it did not actually change the
+ matrix, and even if it did, CGContextSetTextPosition overwrites the
+ translation values in the text matrix. Instead, just added the
+ translation to the anchor point.
+
+2008-09-05 Gustavo Noronha Silva <gns@gnome.org>
+
+ Reviewed by Alp Toker.
+
+ https://bugs.webkit.org/show_bug.cgi?id=18346
+ [GTK] Remove build warnings
+
+ Applied some casts, and removed an unused typedef to make the
+ compiler happy, printing less warnings when building.
+
+ * page/gtk/AccessibilityObjectWrapperAtk.cpp:
+ * platform/graphics/gtk/SimpleFontDataPango.cpp:
+ (WebCore::SimpleFontData::containsCharacters):
+ * platform/graphics/gtk/VideoSinkGStreamer.cpp:
+ (webkit_video_sink_set_caps):
+ * platform/network/soup/ResourceHandleSoup.cpp:
+
+2008-09-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ Build fix for WebKitWin and Chromium
+
+ * platform/FileSystem.h:
+
+2008-09-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Try to make Chromium compile with ToT:
+ - Wrap a few places which depend on KJS:: in #if USE(JSC)
+ - Include some windows forward declarations
+
+ * dom/Node.h:
+ * page/Console.h:
+ * page/animation/CompositeAnimation.h:
+ * platform/FileSystem.h:
+ * platform/graphics/Image.h:
+ * platform/text/AtomicString.h:
+ * platform/text/String.cpp:
+ * rendering/style/RenderStyle.h:
+
+2008-09-05 Dave Hyatt <hyatt@apple.com>
+
+ Add support for runtime switchability of the Aqua look and the native look on Windows.
+ Make RenderThemeWin compile by default even when USE(SAFARI_THEME) is set.
+
+ Reviewed by Adam Roben
+
+ * WebCore.vcproj/WebCore.vcproj:
+ * page/Settings.cpp:
+ (WebCore::Settings::setShouldPaintNativeControls):
+ * page/Settings.h:
+ (WebCore::Settings::shouldPaintNativeControls):
+ * rendering/RenderThemeSafari.cpp:
+ (WebCore::theme):
+ * rendering/RenderThemeWin.cpp:
+
+2008-09-05 Antti Koivisto <antti@apple.com>
+
+ Qt build fix.
+
+ * svg/SVGFEImageElement.cpp:
+ (WebCore::SVGFEImageElement::build):
+
+2008-09-05 Dirk Schulze <vbs85@gmx.de>
+
+ Gtk build fix
+
+ * GNUmakefile.am:
+
+2008-09-05 Antti Koivisto <antti@apple.com>
+
+ Another build fix.
+
+ * svg/SVGFEImageElement.cpp:
+ (WebCore::SVGFEImageElement::notifyFinished):
+
+2008-09-05 Antti Koivisto <antti@apple.com>
+
+ Build fixes.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * svg/graphics/filters/SVGFEImage.cpp:
+ (WebCore::FEImage::cachedImage):
+
+2008-09-05 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Most of the implementation for https://bugs.webkit.org/show_bug.cgi?id=17998
+ When a resource is cached locally, WebKit should follow RFC 2616 "Specific end-to-end revalidation" instead of "Unspecified end-to-end revalidation"
+
+ Implement HTTP 1.1 "Specific end-to-end revalidation" for WebCore memory cache. This patch does
+ not yet enable it for the biggest use case, reloading. However it is good for general browsing as
+ well. Doing this in WebCore level as opposed to relying on disk cache has big benefit that
+ we avoid re-decoding resources, especially images.
+
+ To be exact the enabled case is not actually the "Specific end-to-end revalidation" since it does not include
+ CacheControl: max-age=0 header. That would be added in reload case.
+
+ The approach for revalidation is to kick the original resource out from the memory cache
+ and create a new CachedResource that represents the revalidation request. In case
+ we get 304 back for the request we put the original resource back to the cache, update
+ its expiration date and switch the clients registered to revalidation resource to be
+ clients of the original resource.
+
+ All heap allocated CachedImage pointers now use CachedResourceHandle<CachedImage> (and so on) instead.
+ This allows updating the handles to point to the original resource when the revalidation succeeds. It
+ also acts as refcounting smart pointer.
+
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * css/CSSFontFaceSource.h:
+ * css/CSSImportRule.h:
+ * dom/Clipboard.h:
+ (WebCore::Clipboard::dragImage):
+ * dom/ProcessingInstruction.h:
+ * dom/ScriptElement.h:
+ * dom/XMLTokenizer.cpp:
+ (WebCore::XMLTokenizer::isWaitingForScripts):
+ * dom/XMLTokenizer.h:
+ * html/HTMLImageLoader.cpp:
+ (WebCore::HTMLImageLoader::setImage):
+ (WebCore::HTMLImageLoader::updateFromElement):
+ (WebCore::HTMLImageLoader::notifyFinished):
+ * html/HTMLImageLoader.h:
+ (WebCore::HTMLImageLoader::image):
+ * html/HTMLLinkElement.h:
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::reset):
+ (WebCore::HTMLTokenizer::scriptHandler):
+ (WebCore::HTMLTokenizer::notifyFinished):
+ * html/HTMLTokenizer.h:
+ * loader/Cache.cpp:
+ (WebCore::Cache::revalidateResource):
+ (WebCore::Cache::revalidationSucceeded):
+ (WebCore::Cache::revalidationFailed):
+ * loader/Cache.h:
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::CachedResource):
+ (WebCore::CachedResource::~CachedResource):
+ (WebCore::CachedResource::isExpired):
+ (WebCore::CachedResource::setResponse):
+ (WebCore::CachedResource::deleteIfPossible):
+ (WebCore::CachedResource::setResourceToRevalidate):
+ (WebCore::CachedResource::clearResourceToRevalidate):
+ (WebCore::CachedResource::switchClientsToRevalidatedResource):
+ (WebCore::CachedResource::canUseCacheValidator):
+ (WebCore::CachedResource::mustRevalidate):
+ * loader/CachedResource.h:
+ (WebCore::CachedResource::canDelete):
+ (WebCore::CachedResource::registerHandle):
+ (WebCore::CachedResource::unregisterHandle):
+ (WebCore::CachedResource::isCacheValidator):
+ (WebCore::CachedResource::resourceToRevalidate):
+ (WebCore::CachedResource::setExpirationDate):
+ * loader/CachedResourceHandle.cpp: Added.
+ (WebCore::CachedResourceHandleBase::setResource):
+ * loader/CachedResourceHandle.h: Added.
+ (WebCore::CachedResourceHandleBase::~CachedResourceHandleBase):
+ (WebCore::CachedResourceHandleBase::get):
+ (WebCore::CachedResourceHandleBase::operator!):
+ (WebCore::CachedResourceHandleBase::operator UnspecifiedBoolType):
+ (WebCore::CachedResourceHandleBase::CachedResourceHandleBase):
+ (WebCore::CachedResourceHandleBase::operator=):
+ (WebCore::CachedResourceHandle::CachedResourceHandle):
+ (WebCore::CachedResourceHandle::get):
+ (WebCore::CachedResourceHandle::operator->):
+ (WebCore::CachedResourceHandle::operator=):
+ (WebCore::CachedResourceHandle::operator==):
+ (WebCore::CachedResourceHandle::operator!=):
+ (WebCore::operator==):
+ (WebCore::operator!=):
+ * loader/DocLoader.cpp:
+ (WebCore::DocLoader::checkForReload):
+ * loader/UserStyleSheetLoader.h:
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::servePendingRequests):
+ (WebCore::Loader::Host::didFinishLoading):
+ (WebCore::Loader::Host::didFail):
+ (WebCore::Loader::Host::didReceiveResponse):
+ (WebCore::Loader::Host::didReceiveData):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectCursor):
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::setCachedImage):
+ (WebCore::RenderImage::imageChanged):
+ * rendering/RenderImage.h:
+ (WebCore::RenderImage::cachedImage):
+ (WebCore::RenderImage::imagePtr):
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleCachedImage.h:
+ (WebCore::StyleCachedImage::data):
+ (WebCore::StyleCachedImage::cachedImage):
+ * svg/SVGFEImageElement.h:
+ * svg/graphics/filters/SVGFEImage.h:
+ * xml/XSLImportRule.h:
+
+2008-09-04 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Mitz
+
+ <rdar://problem/6180236> - Safari times out connections after 1 or 2 minutes
+
+ A 60-second default timeout was added in http://trac.webkit.org/changeset/17144 in an attempt
+ to model default NSURLRequest behavior in a cross-platform manner.
+
+ Sadly by always enforcing this 60 second timeout, WebCore was stomping over the wishes of any Webkit
+ client that wished to enforce a much larger default timeout using NSURLRequest API.
+
+ Additionally, upon reviewing what all other browsers do, it seems apparent that "no limit" is desirable
+ behavior on the web and this restores previous Safari/WebKit behavior.
+
+ It would be easy to write a layout test for this, but to be effective it would have
+ to run for at least 61 seconds, which seems insane until will can parallelize run-webkit-tests
+
+ * manual-tests/timeout-test.html: Added.
+ * manual-tests/timeout-test.php: Added.
+
+ * platform/network/ResourceRequestBase.h:
+ (WebCore::ResourceRequestBase::ResourceRequestBase): Rename the constant to "unspecifiedTimeoutInterval"
+ and make it UINT_MAX so platforms that do set it have an effective "no timeout." (Windows, for example)
+ * platform/network/mac/ResourceRequestMac.mm:
+ (WebCore::ResourceRequest::doUpdatePlatformRequest): If the timeout for this request is
+ "unspecifiedTimeoutInterval", then don't bother setting the timeout using NSURLRequest API, allowing
+ WebKit applications to enforce their own default timeout.
+
+2008-09-04 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ - fix <rdar://problem/6198514> Changing a button's opacity triggers relayout
+
+ Test: fast/repaint/button-spurious-layout-hint.html
+
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::setStyle): Reset the inner block's style box
+ flex to 0 to avoid getting a spurious layout hint.
+
+2008-09-04 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes.
+
+ * WebCoreSources.bkl:
+ * bindings/js/ScriptControllerWx.cpp: Added.
+ (WebCore::ScriptController::createScriptInstanceForWidget):
+ * page/wx/AccessibilityObjectWx.cpp: Added.
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ * webcore-base.bkl:
+ * webcore-wx.bkl:
+
+2008-09-04 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Mark Rowe.
+
+ - roll out r36050 because it made svg/custom/invalid-fill-hex.svg fail,
+ and fixing https://bugs.webkit.org/show_bug.cgi?id=15360 appears to
+ require a different approach
+
+ * css/CSSGrammar.y:
+
+2008-09-04 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20639.
+ Bug 20639: ENABLE_DASHBOARD_SUPPORT does not need to be a FEATURE_DEFINE
+
+ * Configurations/WebCore.xcconfig: Remove ENABLE_DASHBOARD_SUPPORT from FEATURE_DEFINES.
+ * DerivedSources.make: Revert to checking for ENABLE_DASHBOARD_SUPPORT rather than looking
+ for ENABLE_DASHBOARD_SUPPORT in FEATURE_DEFINES.
+
+2008-09-04 Mark Rowe <mrowe@apple.com>
+
+ Mac build fix.
+
+ * config.h: Only check the value of HAVE_CONFIG_H if it is defined.
+
+2008-09-04 Eric Seidel <eric@webkit.org>
+
+ Build fix only, no review.
+
+ * dom/XMLTokenizer.cpp: Fix the Chromium merge build by adding a missing header (the Mac files must include it somewhere).
+
+2008-09-04 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Eric Seidel.
+
+ http://bugs.webkit.org/show_bug.cgi?id=20380
+ [GTK][AUTOTOOLS] Include autotoolsconfig.h from config.h
+
+ * config.h: Include the configuration header generated by autotools if
+ available.
+
+2008-09-04 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by Dave Hyatt.
+
+ - rename CachedResource::allReferencesRemoved() to allClientsRemoved()
+
+ * loader/CachedFont.cpp:
+ (WebCore::CachedFont::allClientsRemoved):
+ * loader/CachedFont.h:
+ * loader/CachedImage.cpp:
+ (WebCore::CachedImage::allClientsRemoved):
+ * loader/CachedImage.h:
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::removeClient):
+ * loader/CachedResource.h:
+ (WebCore::CachedResource::allClientsRemoved):
+
+2008-09-04 Adam Roben <aroben@apple.com>
+
+ Windows build fix after r36071
+
+ We were getting these errors:
+
+ error C2356: initialization segment must not change during translation
+ unit
+
+ This was happening because multiple files #included by
+ DerivedSources.cpp were themselves #including StaticConstructors.h. I
+ fixed the error by adding header guards to StaticConstructors.h so its
+ contents will only be included once.
+
+ But it's also not a good idea for StaticConstructors.h to end up in
+ DerivedSources.cpp, since it ends up "polluting" all the source files
+ we have in there. So I removed all the files that include
+ StaticConstructors.h and added some preprocessor directives to
+ DerivedSources.cpp to catch this error in the future.
+
+ * DerivedSources.cpp: Removed the *Names.cpp files, which include
+ StaticConstructors.h, and added some preprocessor directives to make
+ sure we don't end up accidentally including StaticConstructors.h in
+ the future.
+ * WebCore.vcproj/WebCore.vcproj: Added the *Names.cpp files.
+ * platform/StaticConstructors.h: Added header guards.
+
+2008-09-04 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * platform/graphics/win/FontPlatformData.h: Added a missing #include
+ of PassRefPtr.h, and corrected the capitalization of RefCounted.h.
+ * platform/text/PlatformString.h: Added a missing #include of
+ PassRefPtr.h.
+
+2008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix the QtWebKit build to match changes in r36016
+
+ * WebCore.pro:
+ * bridge/qt/qt_instance.cpp:
+ (KJS::Bindings::QtInstance::getRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (KJS::Bindings::convertQVariantToValue):
+ (KJS::Bindings::QtConnectionObject::execute):
+
+2008-09-04 Tor Arne Vestbø <tavestbo@trolltech.com>
+
+ Reviewed by Simon.
+
+ Re-enable support for user stylesheets in QtWebKit
+
+ QtWebKit now follows the FRAME_LOADS_USER_STYLESHEET
+ code path, which allows us to keep API support for
+ loading user style sheets from remote URLs.
+
+ As part of the change UserStyleSheetLoader.cpp/h was
+ moved from WebCore/loader/mac to WebCore/loader.
+
+ * WebCore.pro:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/Document.h:
+ * loader/UserStyleSheetLoader.cpp: Renamed from WebCore/loader/mac/UserStyleSheetLoader.cpp.
+ (UserStyleSheetLoader::UserStyleSheetLoader):
+ (UserStyleSheetLoader::~UserStyleSheetLoader):
+ * loader/UserStyleSheetLoader.h: Renamed from WebCore/loader/mac/UserStyleSheetLoader.h.
+ * page/qt/FrameQt.cpp:
+ (WebCore::Frame::setUserStyleSheetLocation):
+ (WebCore::Frame::setUserStyleSheet):
+
+2008-09-04 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Eric.
+
+ Remove left-over QT and CAIRO platform checks.
+
+ * html/CanvasRenderingContext2D.cpp:
+
+2008-09-04 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Mark Rowe.
+
+ Fix leak of TextMetrics due to over-ref as see on buildbot.
+
+ * html/TextMetrics.h: use adoptRef since RefCounted starts @ refcount 1 instead of 0 now.
+
+2008-09-04 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=19717
+ <rdar://problem/6026832> REGRESSION (r31876): menu items render horizontally at the Economist
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::layoutOnlyPositionedObjects): In the
+ positioned movement only case, call
+ tryLayoutDoingPositionedMovementOnly() and fall back on doing a full
+ layout if that fails.
+ (WebCore::RenderBlock::layoutPositionedObjects): Ditto.
+ * rendering/RenderBox.h:
+ (WebCore::RenderBox::tryLayoutDoingPositionedMovementOnly): Renamed
+ layoutDoingPositionedMovementOnly to this, and made this function
+ check if the width changed. If it did, return, leaving the object
+ dirty. The caller can then call layout(). The width can change even
+ in the "positioned movement only" case if the object is shrink-to-fit
+ and the available width constraint is met. (This was the case in the
+ bug).
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::tryLayoutDoingPositionedMovementOnly):
+ Renamed layoutDoingPositionedMovementOnly() to this.
+
+2008-09-03 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ Attempt to fix the Qt build.
+
+ * WebCore.pro: add page/animation to include path
+
+2008-09-03 Mark Rowe <mrowe@apple.com>
+
+ Mac build fix. Correctly detect whether dashboard support is enabled.
+
+ * DerivedSources.make:
+
+2008-09-03 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam.
+
+ Clean up Platform.h and add PLATFORM(CHROMIUM), PLATFORM(SKIA) and USE(V8_BINDINGS)
+
+ * Configurations/WebCore.xcconfig: add missing ENABLE_*
+ * config.h: add rules for V8_BINDINGS
+
+2008-09-03 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20620
+
+ Add #if USE(JSC) around KJS dependencies
+ Remove !USE(JAVASCRIPTCORE_BINDINGS) support for 3 reasons:
+ 1. Most platforms have it on anyway
+ 2. V8 is going to want to share some of that code
+ 3. Those platforms which want it off, should have a separate file instead of an #ifdef in our .cpp
+
+ * bindings/js/JSPluginElementFunctions.cpp: remove !USE(JAVASCRIPTCORE_BINDINGS) support
+ * config.h: change JAVASCRIPTCORE_BINDINGS to JSC and add USE(V8)
+ * html/HTMLAppletElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLAppletElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLEmbedElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLEmbedElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLObjectElement.cpp: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLObjectElement.h: remove USE(JAVASCRIPTCORE_BINDINGS) wrappers
+ * html/HTMLPlugInElement.cpp: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
+ * html/HTMLPlugInElement.h: replace USE(JAVASCRIPTCORE_BINDINGS) with USE(JSC) where needed
+ * platform/text/AtomicString.cpp: add USE(JSC)
+ * platform/text/AtomicString.h: add USE(JSC)
+ * platform/text/PlatformString.h: add USE(JSC)
+ * platform/text/String.cpp: add USE(JSC)
+ * platform/text/StringImpl.cpp: add USE(JSC)
+ * platform/text/StringImpl.h: add USE(JSC)
+
+2008-09-03 Dean McNamee <deanm@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20511
+ Bug 20511: Remove static initializers on Windows
+
+ Avoid static initializers on Windows by forcing Visual C++ to put
+ all static initializers in a code segment that is never executed.
+
+ * config.h:
+ * css/MediaFeatureNames.cpp:
+ * dom/EventNames.cpp:
+ * dom/QualifiedName.cpp:
+ * dom/make_names.pl:
+ * platform/StaticConstructors.h:
+ * platform/text/AtomicString.cpp:
+
+2008-09-03 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Dave Hyatt.
+
+ Make FontCairo draw TextStroke and TextFill separately.
+
+ [CAIRO] draw TextFill and TextStroke separately.
+ [https://bugs.webkit.org/show_bug.cgi?id=20631]
+
+ * platform/graphics/cairo/FontCairo.cpp:
+ (WebCore::Font::drawGlyphs):
+
+2008-09-03 Peter Kasting <pkasting@google.com>
+
+ Reviewed by Dave Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19663
+ Account for paint and timer lag when animating images. Also pretend
+ that images whose animations were paused (by becoming invisible)
+ continued to animate, by "catching up" to the correct frame when they're
+ shown again.
+
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::BitmapImage):
+ (WebCore::BitmapImage::startAnimation):
+ (WebCore::BitmapImage::advanceAnimation):
+ (WebCore::BitmapImage::internalAdvanceAnimation):
+ (WebCore::BitmapImage::notifyObserverAndTrimDecodedData):
+ * platform/graphics/BitmapImage.h:
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/qt/ImageQt.cpp:
+ (WebCore::BitmapImage::draw):
+ * platform/graphics/wx/ImageWx.cpp:
+ (WebCore::BitmapImage::draw):
+
+2008-09-03 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ Remove the rest of the "zombie" code from the profiler.
+ - There is no longer a need for the ProfilerClient callback mechanism.
+
+ * page/Console.cpp:
+ (WebCore::Console::Console):
+ (WebCore::Console::profile):
+ (WebCore::Console::profileEnd): Move the variables from the header to
+ here since we don't have to wait for a callback to use them.
+ * page/Console.h:
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::startUserInitiatedProfiling):
+ (WebCore::InspectorController::stopUserInitiatedProfiling):
+ * page/InspectorController.h:
+
+2008-09-03 Ada Chan <adachan@apple.com>
+
+ Windows build fix.
+
+ * WebCore.vcproj/WebCore.vcproj: Added JSWebKitCSSKeyframeRule.cpp and JSWebKitCSSKeyframesRule.cpp to the project.
+
+2008-09-01 Dean Jackson <dino@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20594
+ Add DOM interfaces for WebKitCSSKeyframeRule
+ and WebKitCSSKeyframesRule.
+
+ TEST: LayoutTests/css3/keyframes-rule.html
+
+ * css/WebKitCSSKeyframeRule.idl: Added
+ * css/WebKitCSSKeyframesRule.idl: Added
+
+ * bindings/js/JSCSSRuleCustom.cpp:
+ (WebCore::toJS):
+ Add return of new JS Keyframe rules
+ * bindings/objc/DOMInternal.h:
+ Include new internal header
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Build configs for new files
+
+2008-09-03 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * DerivedSources.cpp: Add JSTextMetrics.cpp to fix the build.
+ * WebCore.vcproj/WebCore.vcproj: Add JSTextMetrics.h for
+ convenience/consistency.
+
+2008-09-03 Adele Peterson <adele@apple.com>
+
+ Build fix.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-09-03 David Hyatt <hyatt@apple.com>
+
+ Fix for bug 18203, right floats should be allowed to overflow past the left border edge.
+
+ Reviewed by Darin (ages ago)
+
+ Added fast/block/float/clamped-right-float.html
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::positionNewFloats):
+
+2008-09-02 David Hyatt <hyatt@apple.com>
+
+ Add support for canvas text drawing APIs.
+
+ Reviewed by olliej
+
+ Tests added as fast/canvas/canvas-text-*.html
+
+ * DerivedSources.make:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ (WebCore::JSCanvasRenderingContext2D::fillText):
+ (WebCore::JSCanvasRenderingContext2D::strokeText):
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::initForStyleResolve):
+ (WebCore::CSSStyleSelector::applyPropertyToStyle):
+ * css/CSSStyleSelector.h:
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::State::State):
+ (WebCore::CanvasRenderingContext2D::font):
+ (WebCore::CanvasRenderingContext2D::setFont):
+ (WebCore::CanvasRenderingContext2D::textAlign):
+ (WebCore::CanvasRenderingContext2D::setTextAlign):
+ (WebCore::CanvasRenderingContext2D::textBaseline):
+ (WebCore::CanvasRenderingContext2D::setTextBaseline):
+ (WebCore::CanvasRenderingContext2D::fillText):
+ (WebCore::CanvasRenderingContext2D::strokeText):
+ (WebCore::CanvasRenderingContext2D::measureText):
+ (WebCore::CanvasRenderingContext2D::drawTextInternal):
+ (WebCore::CanvasRenderingContext2D::accessFont):
+ * html/CanvasRenderingContext2D.h:
+ * html/CanvasRenderingContext2D.idl:
+ * html/TextMetrics.h: Added.
+ (WebCore::TextMetrics::create):
+ (WebCore::TextMetrics::width):
+ (WebCore::TextMetrics::setWidth):
+ (WebCore::TextMetrics::TextMetrics):
+ * html/TextMetrics.idl: Added.
+ * platform/graphics/Font.cpp:
+ (WebCore::Font::lineGap):
+ * platform/graphics/Font.h:
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::drawBidiText):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsTypes.cpp:
+ (WebCore::textAlignName):
+ (WebCore::parseTextAlign):
+ (WebCore::textBaselineName):
+ (WebCore::parseTextBaseline):
+ * platform/graphics/GraphicsTypes.h:
+ (WebCore::):
+
+2008-09-03 John Sullivan <sullivan@apple.com>
+
+ Fixed <rdar://problem/6193022> <rdar://problem/6193022> Crash occurs at WebCore::AnimationBase::propertiesEqual () after certain steps
+
+ Fixed by Darin, reviewed by me
+
+ * page/animation/AnimationBase.cpp:
+ (WebCore::AnimationBase::propertiesEqual):
+ added ensurePropertyMap() to this static function
+ (WebCore::AnimationBase::getPropertyAtIndex):
+ ditto
+ (WebCore::AnimationBase::getNumProperties):
+ ditto
+
+2008-09-03 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Darin and Tim.
+
+ Remove most of the "zombie" mode from the profiler. Next we will need
+ to remove the client callback mechanism in profiles.
+ - These changes are a result of changes to JSCore.
+
+ * manual-tests/inspector/profiler-test-nested-start-and-stop-profiler.html:
+ * page/Console.cpp:
+ (WebCore::retrieveLastCaller):
+ (WebCore::Console::profileEnd):
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::stopUserInitiatedProfiling):
+
+2008-09-03 Adele Peterson <adele@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Test: fast/forms/search-display-none-cancel-button.html
+
+ Allow display:none to work on a search field's cancel button. Prepare for adding more style-ability for the results button too.
+
+ * css/html4.css: Set display:inline-block for these buttons. Now they can be overridden by a web author.
+
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::setStyle): Add nil checks for the button renderers.
+ (WebCore::RenderTextControl::createResultsButtonStyle): Don't set the display explicitly. This is now done in html4.css.
+ (WebCore::RenderTextControl::createCancelButtonStyle): ditto.
+ (WebCore::RenderTextControl::createSubtreeIfNeeded):
+ Reorganize this code so our complicated way of adding shadow nodes is abstracted out into the TextControlInnerElement class.
+ (WebCore::RenderTextControl::updateFromElement): Added nil checks for the button renderers.
+ (WebCore::RenderTextControl::subtreeHasChanged): ditto.
+ (WebCore::RenderTextControl::calcHeight): ditto.
+ (WebCore::RenderTextControl::nodeAtPoint): ditto.
+ (WebCore::RenderTextControl::layout): ditto.
+ (WebCore::RenderTextControl::calcPrefWidths): ditto.
+ (WebCore::RenderTextControl::clientPaddingLeft): ditto.
+ (WebCore::RenderTextControl::clientPaddingRight): ditto.
+
+ * rendering/TextControlInnerElements.cpp:
+ (WebCore::RenderTextControlInnerBlock::RenderTextControlInnerBlock): Moved from RenderTextControl.cpp.
+ (WebCore::RenderTextControlInnerBlock::nodeAtPoint): ditto.
+ (WebCore::TextControlInnerElement::attachInnerElement): Added.
+ This does all the separate steps of attaching a shadow node that used to be repeated in RenderTextControl::createSubtreeIfNeeded for each element.
+ (WebCore::TextControlInnerTextElement::createRenderer): Added. Creates a RenderTextControlInnerBlock.
+ * rendering/TextControlInnerElements.h:
+
+2008-08-28 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Maciej.
+
+ Elminate SQLiteAuthorizer class.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCore.vcproj/WebCore.vcproj:
+ * GNUmakefile.am
+ Removed SQLiteAuthorizer.h.
+
+ * platform/sql/SQLiteAuthorizer.cpp:
+ * platform/sql/SQLiteAuthorizer.h: Removed.
+ * platform/sql/SQLiteDatabase.cpp:
+ (WebCore::SQLiteDatabase::authorizerFunction):
+ (WebCore::SQLiteDatabase::setAuthorizer):
+ * platform/sql/SQLiteDatabase.h:
+ * storage/DatabaseAuthorizer.h:
+ (WebCore::DatabaseAuthorizer::create):
+ (WebCore::DatabaseAuthorizer::createView):
+ (WebCore::DatabaseAuthorizer::createTempView):
+ (WebCore::DatabaseAuthorizer::dropView):
+ (WebCore::DatabaseAuthorizer::dropTempView):
+ (WebCore::DatabaseAuthorizer::allowSelect):
+ (WebCore::DatabaseAuthorizer::allowReindex):
+ Merge SQLiteAuthorizer and DatabaseAuthorizer, as keeping them separate serves no purpose.
+
+2008-09-03 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Mark Rowe.
+
+ WebKitGtk build fix.
+
+ * GNUmakefile.am:
+ * page/animation/AnimationController.h:
+
+2008-09-02 Robert Blaut <webkit@blaut.biz>
+
+ Reviewed by Geoff Garen.
+
+ Fix for <https://bugs.webkit.org/show_bug.cgi?id=16913>
+ Misplaced elements should not close DL lists.
+
+ Test: fast/invalid/test-case-tr-th-td-should-not-close-dl-list.html
+
+ * html/HTMLParser.cpp:
+ (WebCore::HTMLParser::handleError):
+
+2008-09-02 Glenn Wilson <wilsong@gmail.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for <https://bugs.webkit.org/show_bug.cgi?id=15360>
+ Bug 15360: color:#{predefined colorName} is treated as colorName in Safari
+
+ We would inappropriately interpret and apply an invalid CSS "color" property
+ when the value is a predefined color preceded by a '#' symbol. For example,
+ style="color:#gray;" would apply the color gray when it should not.
+
+ In the bison template, "hexcolor" was defined as both "HEX maybe_space" OR "IDENT maybe_space".
+ This caused identifiers not fitting the appropriate hex format but preceded by a '#' to be
+ interpreted as a valid color (CSSPrimitiveValue::CSS_PARSER_HEXCOLOR), when it was really just
+ an ignorable token.
+
+ To correct this, "IDENT maybe_space" was removed from "hexcolor" and added under "term" as
+ '#' IDENT maybe_space, which is then processed as a CSSPrimitiveValue::CSS_STRING instead of
+ CSSPrimitiveValue::CSS_PARSER_HEXCOLOR.
+
+ Test: css1/color_and_background/invalid_color.html
+
+ * css/CSSGrammar.y:
+
+2008-09-02 Mihnea Ovidenie <mihnea@adobe.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=19964
+ Bug 19964: Divide by zero crash in RenderBox::calculateBackgroundSize with 0,0 bmp background image
+
+ Add a check to RenderBox::repaintLayerRectsForImage to make sure the current layer image can be rendered.
+
+ Test: css3/khtml-background-size-0x0-bmp.html
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::repaintLayerRectsForImage):
+
+2008-09-02 Glenn Wilson <wilsong@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20397
+ Bug 20397: Invalid webkit-border-bottom-left-radius property causes crash
+
+ The function checkForOrphanedUnits() would change the length of a list whose size was
+ was already determined before the call to checkForOrphanedUnits was made. Later in
+ the caller, the old size was being used for boundary management.
+
+ This has been fixed by moving the call to checkForOrphanedUnits() earlier in the
+ calling function, before the size of the list is determined.
+
+ Test: fast/css/orphaned_units_crash.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Moved call to checkForOrphanedUnits() earlier in the function.
+
+2008-09-02 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Darin Adler.
+
+ Fallback on invalid fill or stroke styles in Canvas was
+ transparent black. Changed it to last valid style.
+
+ Canvas fillStyle() and strokeStyle() needs fallback
+ https://bugs.webkit.org/show_bug.cgi?id=20474
+
+ Tests: fast/canvas/canvas-invalid-fillstyle.html
+ fast/canvas/canvas-invalid-strokestyle.html
+
+ * html/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+
+2008-09-02 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Darin Adler.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20468
+ Updated drawImage() in canvas to match the current specification.
+
+ Test: fast/canvas/drawImage-with-negative-source-destination.html
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::normalizeRect):
+ (WebCore::CanvasRenderingContext2D::drawImage):
+
+2008-08-26 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/5768210> Switch back to the system version of SQLite
+
+ Use the system version of SQLite when it is new enough to provide the functionality
+ that WebCore requires.
+
+ * Configurations/Base.xcconfig:
+ * Configurations/DebugRelease.xcconfig:
+ * Configurations/WebCore.xcconfig:
+
+2008-09-02 Dan Bernstein <mitz@apple.com>
+
+ - build fix
+
+ * page/animation/AnimationBase.h:
+
+2008-09-02 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ AnimationController.cpp should be split into separate files
+ https://bugs.webkit.org/show_bug.cgi?id=20604
+
+ Note: All makefiles, except WebCore.xcodeproj have been changed without testing, upon
+ recommendation of Dave Hyatt.
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Build files.
+
+ * page/AnimationController.cpp: Removed.
+ * page/AnimationController.h: Removed.
+ * page/animation: Added.
+ * page/animation/AnimationBase.cpp: Added.
+ * page/animation/AnimationBase.h: Added.
+ * page/animation/AnimationController.cpp: Copied from WebCore/page/AnimationController.cpp.
+ * page/animation/AnimationController.h: Copied from WebCore/page/AnimationController.h.
+ * page/animation/CompositeAnimation.cpp: Added.
+ * page/animation/CompositeAnimation.h: Added.
+ * page/animation/ImplicitAnimation.cpp: Added.
+ * page/animation/ImplicitAnimation.h: Added.
+ * page/animation/KeyframeAnimation.cpp: Added.
+ * page/animation/KeyframeAnimation.h: Added.
+
+2008-09-02 Dan Bernstein <mitz@apple.com>
+
+ - release build fix
+
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::calculateDrawingMode):
+
+2008-09-02 Timothy Hatcher <timothy@apple.com>
+
+ Make console functions log the correct resource URL and
+ line number for where the call originated.
+
+ https://bugs.webkit.org/show_bug.cgi?id=17234
+ <rdar://problem/5732837>
+
+ Reviewed by Kevin McCullough.
+
+ Test: manual-tests/inspector/console-call-line-numbers.html
+
+ * bindings/js/JSConsoleCustom.cpp:
+ (WebCore::JSConsole::count): Call the impl.
+ (WebCore::JSConsole::timeEnd): Ditto.
+ * manual-tests/inspector/console-call-line-numbers.html: Added.
+ * manual-tests/inspector/resources/script-console-calls.js: Added.
+ * page/Console.cpp:
+ (WebCore::retrieveLastCaller): Helper to get the URL and line.
+ (WebCore::Console::error): Call retrieveLastCaller to get the URL and
+ line number to pass to addMessageToConsole.
+ (WebCore::Console::info): Ditto.
+ (WebCore::Console::log): Ditto.
+ (WebCore::Console::assertCondition): Ditto.
+ (WebCore::Console::count): Ditto.
+ (WebCore::Console::timeEnd): Ditto.
+ (WebCore::Console::warn): Ditto.
+ * page/Console.h:
+ * page/Console.idl: Make count and timeEnd custom.
+
+2008-09-02 Timothy Hatcher <timothy@apple.com>
+
+ Removed IDL files from WebCore's framework resources.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2008-09-02 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - <rdar://problem/5681647> pages at http://www.stendmarsofa.com/ are so slow to calculate style it seems like a hang
+
+ * html/HTMLParser.cpp:
+ (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks): Added a
+ cap on the number of consecutive identical residual style tags to
+ reopen.
+ (WebCore::HTMLParser::popBlock): Ditto.
+
+2008-09-02 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Adam Roben.
+
+ A little database quota management cleanup.
+
+ * storage/OriginQuotaManager.cpp:
+ (WebCore::OriginQuotaManager::OriginQuotaManager):
+ (WebCore::OriginQuotaManager::lock):
+ (WebCore::OriginQuotaManager::unlock):
+ (WebCore::OriginQuotaManager::trackOrigin):
+ (WebCore::OriginQuotaManager::tracksOrigin):
+ (WebCore::OriginQuotaManager::addDatabase):
+ (WebCore::OriginQuotaManager::removeDatabase):
+ (WebCore::OriginQuotaManager::removeOrigin):
+ (WebCore::OriginQuotaManager::markDatabase):
+ (WebCore::OriginQuotaManager::diskUsage):
+ * storage/OriginQuotaManager.h:
+ Changed to assert that a lock is taken more directly and reliably. Removed comments about
+ main/background threads, as this is likely to stop being true with synchronous Database calls
+ being made on worker threads.
+
+ * storage/OriginUsageRecord.cpp:
+ (WebCore::OriginUsageRecord::OriginUsageRecord):
+ (WebCore::OriginUsageRecord::addDatabase):
+ (WebCore::OriginUsageRecord::removeDatabase):
+ (WebCore::OriginUsageRecord::markDatabase):
+ (WebCore::OriginUsageRecord::diskUsage):
+ * storage/OriginUsageRecord.h:
+ (WebCore::OriginUsageRecord::DatabaseEntry::DatabaseEntry):
+ Don't use a magic value for unknown. It is totally unnecessary for DatabaseEntry, and
+ can be replaced with a single boolean for OriginUsageRecord.
+ Added assertions for string parameters being unshared.
+
+
+2008-09-01 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19760
+
+ Make granting LoadLocalResources conditional on a policy.
+
+ * WebCore.base.exp:
+ * dom/Document.cpp:
+ (WebCore::Document::initSecurityContext):
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::setLocalLoadPolicy):
+ (WebCore::FrameLoader::restrictAccessToLocal):
+ * loader/FrameLoader.h:
+ (WebCore::FrameLoader::):
+ * platform/SecurityOrigin.cpp:
+ (WebCore::SecurityOrigin::grantLoadLocalResources):
+ * platform/SecurityOrigin.h:
+
+2008-09-01 Dean Jackson <dino@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20571
+ Make sure Window object can assign Animation/Transition event
+ listeners via attributes.
+
+ Also added a bunch of transition event tests, although
+ only transition-end-event-window is directly relevant to this patch.
+
+ (WebCore::JSDOMWindowBase::put):
+
+ Tests: transitions/transition-end-event-all-properties.html
+ transitions/transition-end-event-attributes.html
+ transitions/transition-end-event-container.html
+ transitions/transition-end-event-left.html
+ transitions/transition-end-event-multiple-01.html
+ transitions/transition-end-event-multiple-02.html
+ transitions/transition-end-event-multiple-03.html
+ transitions/transition-end-event-multiple-04.html
+ transitions/transition-end-event-nested.html
+ transitions/transition-end-event-transform.html
+ transitions/transition-end-event-window.html
+
+2008-09-01 Dean Jackson <dino@apple.com>
+
+ Reviewed by Sam Weinig
+
+ Code styling cleanup.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::getValueProperty):
+ (WebCore::JSDOMWindowBase::put):
+
+2008-09-01 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Darin Adler.
+
+ First cut at inline caching for access to vanilla JavaScript properties.
+
+ Updated for JavaScriptCore changes. Mostly mechanical addition of StructureIDs
+ to WebCore classes, and PutPropertySlot& arguments to put functions.
+
+ (WebCore::JSCSSStyleDeclaration::customPut): Be sure to play nice with
+ inline caching for global properties, so global assignment can be optimized.
+
+ * ForwardingHeaders/kjs/StructureID.h: Added.
+ * bindings/js/JSDOMBinding.h:
+ (WebCore::DOMObject::DOMObject):
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::put):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSDOMWindowCustom.h:
+ (WebCore::JSDOMWindow::customPut):
+ * bindings/js/JSDOMWindowShell.cpp:
+ (WebCore::JSDOMWindowShell::JSDOMWindowShell):
+ (WebCore::JSDOMWindowShell::put):
+ * bindings/js/JSDOMWindowShell.h:
+ * bindings/js/JSEventTargetBase.h:
+ (WebCore::JSEventTargetBase::put):
+ * bindings/js/JSEventTargetNode.h:
+ (WebCore::JSEventTargetNode::put):
+ * bindings/js/JSHTMLAppletElementCustom.cpp:
+ (WebCore::JSHTMLAppletElement::customPut):
+ * bindings/js/JSHTMLEmbedElementCustom.cpp:
+ (WebCore::JSHTMLEmbedElement::customPut):
+ * bindings/js/JSHTMLInputElementBase.cpp:
+ (WebCore::JSHTMLInputElementBase::put):
+ * bindings/js/JSHTMLInputElementBase.h:
+ * bindings/js/JSHTMLObjectElementCustom.cpp:
+ (WebCore::JSHTMLObjectElement::customPut):
+ * bindings/js/JSHistoryCustom.cpp:
+ (WebCore::JSHistory::customPut):
+ * bindings/js/JSInspectedObjectWrapper.cpp:
+ (WebCore::JSInspectedObjectWrapper::wrap):
+ (WebCore::JSInspectedObjectWrapper::JSInspectedObjectWrapper):
+ * bindings/js/JSInspectedObjectWrapper.h:
+ * bindings/js/JSInspectorCallbackWrapper.cpp:
+ (WebCore::JSInspectorCallbackWrapper::wrap):
+ (WebCore::JSInspectorCallbackWrapper::JSInspectorCallbackWrapper):
+ * bindings/js/JSInspectorCallbackWrapper.h:
+ * bindings/js/JSLocationCustom.cpp:
+ (WebCore::JSLocation::customPut):
+ * bindings/js/JSPluginElementFunctions.cpp:
+ (WebCore::runtimeObjectCustomPut):
+ * bindings/js/JSPluginElementFunctions.h:
+ * bindings/js/JSQuarantinedObjectWrapper.cpp:
+ (WebCore::JSQuarantinedObjectWrapper::JSQuarantinedObjectWrapper):
+ (WebCore::JSQuarantinedObjectWrapper::put):
+ * bindings/js/JSQuarantinedObjectWrapper.h:
+ * bindings/js/JSStorageCustom.cpp:
+ (WebCore::JSStorage::customPut):
+ * bindings/objc/WebScriptObject.mm:
+ (-[WebScriptObject setValue:forKey:]):
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * bridge/NP_jsobject.cpp:
+ (_NPN_SetProperty):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::setMember):
+ * bridge/objc/objc_class.mm:
+ (KJS::Bindings::ObjcClass::fallbackObject):
+ * bridge/objc/objc_runtime.h:
+ * bridge/objc/objc_runtime.mm:
+ (ObjcFallbackObjectImp::ObjcFallbackObjectImp):
+ (ObjcFallbackObjectImp::put):
+ * bridge/runtime.cpp:
+ (KJS::Bindings::Instance::createRuntimeObject):
+ * bridge/runtime_array.cpp:
+ (RuntimeArray::put):
+ * bridge/runtime_array.h:
+ * bridge/runtime_object.cpp:
+ (RuntimeObjectImp::RuntimeObjectImp):
+ (RuntimeObjectImp::put):
+ * bridge/runtime_object.h:
+
+2008-09-01 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ Fixed border-radius for Cairo.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::strokeArc):
+
+2008-09-01 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ Added canvas's globalAlpha to cairo.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::setAlpha):
+ (WebCore::GraphicsContext::getAlpha):
+ * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ * platform/graphics/cairo/ImageCairo.cpp:
+ (WebCore::BitmapImage::draw):
+
+2008-08-31 Simon Hausmann <hausmann@webkit.org>
+
+ Unreviewed Qt build fix.
+
+ * WebCore.pro: Add TextControlInnerElements.cpp to SOURCES instead of
+ the .h file
+
+2008-08-30 Darin Adler <darin@apple.com>
+
+ Reviewed by Maciej.
+
+ - adopt some new JavaScriptCore functions where appropriate
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::windowProtoFuncAToB): Adopted jsEmptyString.
+ (WebCore::windowProtoFuncBToA): Ditto.
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSLazyEventListener::eventParameterName): Adopted
+ jsNontrivialString.
+ * bindings/js/JSSVGLazyEventListener.cpp:
+ (WebCore::JSSVGLazyEventListener::eventParameterName): Ditto.
+
+2008-08-29 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders' rubberstamp
+
+ Style cleanup to match MediaTokenizer::writeRawData()
+
+ * loader/PluginDocument.cpp:
+ (WebCore::PluginTokenizer::writeRawData):
+
+2008-08-29 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders
+
+ https://bugs.webkit.org/show_bug.cgi?id=20556
+ <rdar://problem/6181817> REGRESSION (r35946): media/video-click-dlbclick-standalone.html [sic] fails because load never fires
+
+ Fix regression I introducted in 35946
+ Already covered by media/video-click-dlbclick-standalone.html
+
+ * loader/MediaDocument.cpp:
+ (WebCore::MediaTokenizer::createDocumentStructure): Don't cancel the load here - too early!
+ (WebCore::MediaTokenizer::writeRawData): Call finish() here so onload() can be called. Also add
+ an ASSERT signifying that this method should only be called once, to more closely follow the
+ PluginDocument case.
+
+2008-08-29 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for <rdar://problem/6181588>
+
+ This patch makes hit testing take into account the new concept of a
+ disconnected frame, in which some of the content may not be
+ visible. The current hit testing mechanism starts at a target frame
+ and drills down for a HitTestResult. In some cases, drilling down
+ will find a non-visible result. When this happens, we need to try
+ again, starting at a higher level -- namely, starting at the main
+ frame.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::insideVisibleArea): New function that tests if a
+ point is inside the visible area for a disconnected frame.
+ * editing/Editor.h:
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::hitTestResultAtPoint):
+
+2008-08-29 Adele Peterson <adele@apple.com>
+
+ Reviewed by Adam Roben.
+
+ Rename HTMLTextFieldInnerElement.h/.cpp to TextControlInnerElements.h/.cpp
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * html/HTMLTextFieldInnerElement.cpp: Removed.
+ * html/HTMLTextFieldInnerElement.h: Removed.
+ * rendering/RenderTextControl.cpp:
+ (WebCore::RenderTextControl::createSubtreeIfNeeded):
+ * rendering/RenderTextControl.h:
+ * rendering/TextControlInnerElements.cpp: Copied from html/HTMLTextFieldInnerElement.cpp.
+ (WebCore::TextControlInnerElement::TextControlInnerElement):
+ (WebCore::TextControlInnerTextElement::TextControlInnerTextElement):
+ (WebCore::TextControlInnerTextElement::defaultEventHandler):
+ (WebCore::SearchFieldResultsButtonElement::SearchFieldResultsButtonElement):
+ (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
+ (WebCore::SearchFieldCancelButtonElement::SearchFieldCancelButtonElement):
+ (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
+ * rendering/TextControlInnerElements.h: Copied from html/HTMLTextFieldInnerElement.h.
+
+2008-08-29 Eric Seidel <eric@webkit.org>
+
+ Rubber-stamped by aroben.
+
+ Add GraphicsContext.h include to GraphcisContextPrivate.h
+
+ GraphicsContextPrivate uses StrokeStyle which is defined
+ in GraphicsContext.h but it doesn't include that header.
+ CoreGraphics build doesn't fail here due to the order
+ it happens to include files.
+
+ * platform/graphics/GraphicsContextPrivate.h:
+
+2008-08-29 Eric Seidel <eric@webkit.org>
+
+ Reviewed by hyatt.
+
+ Fix GeneratedImage to respect Image's refcounting
+ Fixing potential crashers (future if not current)
+ https://bugs.webkit.org/show_bug.cgi?id=20567
+
+ I don't know if it's possible to make the current code
+ crash, thus I've not made a test.
+
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSGradientValue::image):
+ * css/CSSImageGeneratorValue.cpp:
+ (WebCore::CSSImageGeneratorValue::removeClient):
+ (WebCore::CSSImageGeneratorValue::getImage):
+ * css/CSSImageGeneratorValue.h:
+ * platform/graphics/GeneratedImage.h:
+ (WebCore::GeneratedImage::GeneratedImage):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setContent):
+ * rendering/style/RenderStyle.h:
+
+2008-08-29 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Adele.
+
+ Fix for <rdar://problem/6093767>
+ https://bugs.webkit.org/show_bug.cgi?id=20526
+
+ Don't allow video to render until unsupported track types have been disabled.
+
+ * platform/graphics/win/QTMovieWin.cpp:
+ (QTMovieWinPrivate::task):
+ (QTMovieWinPrivate::drawingComplete):
+ (QTMovieWinPrivate::clearGWorld):
+
+2008-08-29 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Adele.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20525
+ <rdar://problem/6169301>
+
+ Return the size of the movie data instead of 1000.
+
+ Test: media/progress-event-total.html
+
+ * platform/graphics/win/QTMovieWin.cpp:
+ (QTMovieWin::dataSize):
+
+2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Eric Seidel.
+
+ [janitor/qt] Start replacing port specific getters with the generic native getter
+ To get the native presentation of an image we currently have platform
+ specific #ifdef's and a generic getter using NativeImagePtr. This patch
+ extends this to the ImageBuffer and updates the Qt platform to get rid
+ of the special #ifdefs.
+
+ https://bugs.webkit.org/attachment.cgi?id=22861
+
+ * platform/graphics/BitmapImage.h:
+ * platform/graphics/Image.h:
+ * platform/graphics/qt/ImageQt.cpp:
+ * platform/graphics/qt/StillImageQt.cpp:
+ * platform/graphics/qt/StillImageQt.h:
+ * platform/qt/ClipboardQt.cpp:
+ (WebCore::ClipboardQt::createDragImage):
+ (WebCore::ClipboardQt::declareAndWriteDragImage):
+ * platform/qt/CursorQt.cpp:
+ * platform/qt/PasteboardQt.cpp:
+ (WebCore::Pasteboard::writeImage):
+
+2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon.
+
+ [svg/qt] Stop crashing... when no RenderPath/RenderObject is given...
+
+ * svg/graphics/qt/SVGPaintServerQt.cpp:
+ (WebCore::SVGPaintServer::renderPath):
+ * svg/graphics/qt/SVGPaintServerSolidQt.cpp:
+ (WebCore::SVGPaintServerSolid::setup):
+
+2008-08-29 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon.
+
+ [network/qt] Implement defering of loading ResourceHandle's
+ This is needed otherwise we end in an ASSERT in the MainResourceLoader. The
+ implementation is simply not forwarding anything to the
+ ResourceHandleClient until we are allowed to. This might lead to a deadlock
+ in Qt as we do not empty the QNetworkReply input buffer and wait until we
+ are allowed to read. If that happens we are forced to buffer the data
+ within QNetworkReplyHandler, for now this is not done.
+
+ Manual test:
+ - Open http://acid3.acidtests.org
+ - Wait for the test to complete
+ - Click on the Reference Rendering link
+ - Be fast and see the results of acid3
+ => assert
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::QNetworkReplyHandler):
+ (WebCore::QNetworkReplyHandler::setLoadMode):
+ (WebCore::QNetworkReplyHandler::finish):
+ (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
+ (WebCore::QNetworkReplyHandler::forwardData):
+ (WebCore::QNetworkReplyHandler::start):
+ (WebCore::QNetworkReplyHandler::resetState):
+ (WebCore::QNetworkReplyHandler::sendQueuedItems):
+ * platform/network/qt/QNetworkReplyHandler.h:
+ (WebCore::QNetworkReplyHandler::):
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::start):
+ (WebCore::ResourceHandle::loadResourceSynchronously):
+ (WebCore::ResourceHandle::setDefersLoading):
+
+2008-08-29 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Holger.
+
+ Don't crash when drawing patterns with the HTML canvas. Patterns
+ remain unimplemented but at least they don't crash anymore. This is
+ done by changing the PlatformPatternPtr to be a brush for the Qt
+ platform.
+
+ * platform/graphics/Pattern.h:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ * platform/graphics/qt/PatternQt.cpp:
+ (WebCore::Pattern::createPlatformPattern):
+
+2008-08-29 Simon Hausmann <hausmann@webkit.org>
+
+ Fix the Qt build, fontSelector() is not used by the Qt port yet
+ and we just return 0 in Font::fontSelector().
+
+ * platform/graphics/Font.h:
+
+2008-08-28 Alp Toker <alp@nuanti.com>
+
+ GTK+ dist/build fix. List newly added header files.
+
+ * GNUmakefile.am:
+
+2008-08-28 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Various WebKitCSSTransformValue-related fixes
+ https://bugs.webkit.org/show_bug.cgi?id=20562
+
+ Test: css3/transform-value-types.html
+
+ * bindings/js/JSCSSValueCustom.cpp:
+ (WebCore::toJS):
+ * css/CSSValue.h:
+ * css/WebKitCSSTransformValue.cpp:
+ (WebCore::WebKitCSSTransformValue::cssText):
+ * css/WebKitCSSTransformValue.h:
+ (WebCore::WebKitCSSTransformValue::):
+ * css/WebKitCSSTransformValue.idl:
+
+2008-08-28 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Steve Falkenburg.
+
+ - do not let the "last chance" WM_TIMER trigger WebCore timers when they should be deferred
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::TimerWindowWndProc):
+
+2008-08-28 David Hyatt <hyatt@apple.com>
+
+ RenderStyle cleanup.
+
+ Break out StyleImage, StyleGeneratedImage, StyleCachedImage and NinePieceImage into separate files.
+
+ Reviewed by Adam
+
+ * css/CSSImageGeneratorValue.cpp:
+ * css/CSSImageValue.cpp:
+ * css/CSSStyleSelector.cpp:
+ * rendering/RenderImageGeneratedContent.cpp:
+ * rendering/style/NinePieceImage.cpp: Added.
+ * rendering/style/NinePieceImage.h: Added.
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::FillLayer::operator==):
+ (WebCore::FillLayer::containsImage):
+ (WebCore::StyleInheritedData::operator==):
+ (WebCore::RenderStyle::contentDataEquivalent):
+ * rendering/style/RenderStyle.h:
+ * rendering/style/StyleCachedImage.cpp: Added.
+ * rendering/style/StyleCachedImage.h: Added.
+ * rendering/style/StyleGeneratedImage.cpp: Added.
+ * rendering/style/StyleGeneratedImage.h: Added.
+ * rendering/style/StyleImage.h: Added.
+
+2008-08-28 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Make all the 'isFoo()' methods on CSSValue const,
+ and fix the subclasses.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20561
+
+ * css/CSSTimingFunctionValue.h:
+ * css/CSSValue.h:
+ (WebCore::CSSValue::isFontValue):
+ (WebCore::CSSValue::isImageGeneratorValue):
+ (WebCore::CSSValue::isImageValue):
+ (WebCore::CSSValue::isImplicitInitialValue):
+ * css/CSSValueList.h:
+ * css/FontValue.h:
+
+2008-08-28 David Hyatt <hyatt@apple.com>
+
+ The great RenderStyle cleanup begins!
+
+ Move LengthBox and LengthSize out of RenderStyle and into Length.
+
+ Reviewed by Adam
+
+ * rendering/Length.h:
+ (WebCore::):
+ (WebCore::Length::Length):
+ (WebCore::Length::operator==):
+ (WebCore::Length::operator!=):
+ (WebCore::Length::value):
+ (WebCore::Length::rawValue):
+ (WebCore::Length::percent):
+ (WebCore::Length::type):
+ (WebCore::Length::quirk):
+ (WebCore::Length::setValue):
+ (WebCore::Length::setRawValue):
+ (WebCore::Length::calcValue):
+ (WebCore::Length::calcMinValue):
+ (WebCore::Length::calcFloatValue):
+ (WebCore::Length::isUndefined):
+ (WebCore::Length::isZero):
+ (WebCore::Length::isPositive):
+ (WebCore::Length::isNegative):
+ (WebCore::Length::isAuto):
+ (WebCore::Length::isRelative):
+ (WebCore::Length::isPercent):
+ (WebCore::Length::isFixed):
+ (WebCore::Length::isStatic):
+ (WebCore::Length::isIntrinsicOrAuto):
+ (WebCore::Length::blend):
+ (WebCore::LengthBox::LengthBox):
+ (WebCore::LengthBox::operator=):
+ (WebCore::LengthBox::operator==):
+ (WebCore::LengthBox::operator!=):
+ (WebCore::LengthBox::nonZero):
+ (WebCore::LengthSize::LengthSize):
+ * rendering/style/RenderStyle.h:
+
+2008-08-28 David Hyatt <hyatt@apple.com>
+
+ Reviewed by Darin
+
+ https://bugs.webkit.org/show_bug.cgi?id=18091
+
+ font-size should be animatable using -webkit-transition.
+
+ * page/AnimationController.cpp:
+ (WebCore::AnimationControllerPrivate::ensurePropertyMap):
+ * rendering/style/RenderStyle.h:
+ (WebCore::RenderStyle::setFontSize):
+
+2008-08-28 Brad Garcia <bgarcia@google.com>
+
+ Reviewed by Dan Bernstein.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20549
+ Correctly determine when cursor is over a resizable border within
+ a nested frameset.
+
+ * rendering/RenderFrameSet.cpp:
+ (WebCore::RenderFrameSet::canResizeRow):
+ (WebCore::RenderFrameSet::canResizeColumn):
+
+2008-08-28 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Eric Seidel
+
+ Add RuleTypes to CSSRule.idl for keyframes and keyframe rules.
+ https://bugs.webkit.org/show_bug.cgi?id=20552
+
+ Test: animations/animation-css-rule-types.html
+
+ * css/CSSRule.idl:
+
+2008-08-28 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Kevin and Darin.
+
+ <rdar://problem/6182541>
+ https://bugs.webkit.org/show_bug.cgi?id=20202
+ Missing http status line from the http headers.
+
+ Add a status line to the header string.
+
+ * plugins/PluginStream.cpp:
+ (WebCore::PluginStream::startStream):
+
+2008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Rubber-stamped by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=17261
+
+ Make it possible to theme the default Url icon and enable this for
+ the Qt port. To have a minimal usage of #ifdef in the code the setting
+ of the icon was moved to a new method which comes in two flavors.
+
+ * loader/icon/IconDatabase.cpp:
+ (WebCore::loadDefaultIconRecord): Load or set the default icon
+ (WebCore::IconDatabase::defaultIcon):
+
+2008-08-28 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Unreviewed compile fix
+
+ * platform/graphics/qt/GraphicsContextQt.cpp: Remove redefinitions
+
+2008-08-28 Adam Roben <aroben@apple.com>
+
+ Windows (and others?) build fix
+
+ * page/Chrome.cpp: Added a missing #include.
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): Fixed typo.
+
+2008-08-27 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Qt and Cairo support from krit (and blind stab @ wx compile support)
+ https://bugs.webkit.org/show_bug.cgi?id=20373
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformFillColor):
+ (WebCore::GraphicsContext::setPlatformStrokeColor):
+ (WebCore::GraphicsContext::setPlatformStrokeStyle):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+ (WebCore::GraphicsContext::setPlatformFillPattern):
+ (WebCore::GraphicsContext::setPlatformStrokePattern):
+ (WebCore::GraphicsContext::setPlatformFillGradient):
+ (WebCore::GraphicsContext::setPlatformStrokeGradient):
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::strokeRect):
+ (WebCore::GraphicsContext::clipToImageBuffer):
+ (WebCore::GraphicsContext::setPlatformFillPattern):
+ (WebCore::GraphicsContext::setPlatformStrokePattern):
+ (WebCore::GraphicsContext::setPlatformFillGradient):
+ (WebCore::GraphicsContext::setPlatformStrokeGradient):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::clipToImageBuffer):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::setPlatformFillPattern):
+ (WebCore::GraphicsContext::setPlatformStrokePattern):
+ (WebCore::GraphicsContext::setPlatformFillGradient):
+
+2008-08-27 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Add stroke/fill Gradient and Pattern support to GraphicsContext and update <canvas> to use it.
+ https://bugs.webkit.org/show_bug.cgi?id=20373
+
+ Changed pattern() to canvasPattern() on CanvasStyle to match canvasGradient()
+
+ Made Generator (aka Gradient) RefCounted so that GraphicsContext didn't
+ have to store large Gradient objects in the GraphicsContextState
+
+ Made Pattern RefCounted for the same reason.
+
+ Many updates to GraphicsContext to support easier drawing with
+ Patterns and Gradients.
+
+ * WebCore.xcodeproj/project.pbxproj: Add pre-existing GraphicsContextPrivate.h
+ * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
+ (WebCore::toJS):
+ * css/CSSGradientValue.cpp:
+ (WebCore::CSSGradientValue::createGradient):
+ * css/CSSGradientValue.h:
+ * html/CanvasGradient.cpp:
+ (WebCore::CanvasGradient::CanvasGradient):
+ * html/CanvasGradient.h:
+ (WebCore::CanvasGradient::gradient):
+ (WebCore::CanvasGradient::addColorStop):
+ (WebCore::CanvasGradient::getColor):
+ * html/CanvasPattern.cpp:
+ * html/CanvasPattern.h:
+ (WebCore::CanvasPattern::pattern):
+ (WebCore::CanvasPattern::originClean):
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::State::State):
+ (WebCore::CanvasRenderingContext2D::setStrokeStyle):
+ (WebCore::CanvasRenderingContext2D::setFillStyle):
+ (WebCore::CanvasRenderingContext2D::fill):
+ (WebCore::CanvasRenderingContext2D::stroke):
+ (WebCore::CanvasRenderingContext2D::fillRect):
+ (WebCore::CanvasRenderingContext2D::strokeRect):
+ * html/CanvasRenderingContext2D.h:
+ * html/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+ * html/CanvasStyle.h:
+ * platform/graphics/GeneratedImage.h:
+ (WebCore::GeneratedImage::GeneratedImage):
+ * platform/graphics/Generator.h:
+ * platform/graphics/Gradient.h:
+ (WebCore::Gradient::create):
+ * platform/graphics/GraphicsContext.cpp:
+ (WebCore::GraphicsContext::fillRule):
+ (WebCore::GraphicsContext::setFillRule):
+ (WebCore::GraphicsContext::setStrokePattern):
+ (WebCore::GraphicsContext::setFillPattern):
+ (WebCore::GraphicsContext::setStrokeGradient):
+ (WebCore::GraphicsContext::setFillGradient):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/GraphicsContextPrivate.h:
+ (WebCore::):
+ (WebCore::GraphicsContextState::GraphicsContextState):
+ * platform/graphics/GraphicsTypes.h:
+ * platform/graphics/Path.h:
+ * platform/graphics/Pattern.h:
+ (WebCore::Pattern::create):
+ (WebCore::Pattern::tileImage):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::drawRect):
+ (WebCore::GraphicsContext::drawEllipse):
+ (WebCore::GraphicsContext::drawConvexPolygon):
+ (WebCore::calculateDrawingMode):
+ (WebCore::GraphicsContext::drawPath):
+ (WebCore::fillPathWithFillRule):
+ (WebCore::GraphicsContext::fillPath):
+ (WebCore::GraphicsContext::strokePath):
+ (WebCore::GraphicsContext::fillRect):
+ (WebCore::GraphicsContext::fillRoundedRect):
+ (WebCore::GraphicsContext::setPlatformStrokePattern):
+ (WebCore::GraphicsContext::setPlatformFillPattern):
+ (WebCore::GraphicsContext::setPlatformStrokeGradient):
+ (WebCore::GraphicsContext::setPlatformFillGradient):
+
+2008-08-20 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Darin and Alexey.
+
+ Close a leak of PausedTimeouts if the JavaScriptDebugServer was destroyed
+ with timeouts paused.
+ https://bugs.webkit.org/show_bug.cgi?id=20469
+
+ I attempted to clean up the memory management of PausedTimeouts, I'm not
+ sure the solution I came up with is "cleaner", but it's in some ways
+ "safer", since it no longer uses raw pointers and manual new/delete.
+
+ This also now prevents CachedPage from needlessly creating Window
+ objects when caching pages which didn't already have one. :)
+
+ I also made Chrome.cpp no longer depend on the JavaScript bindings
+ (aka JSDOMWindowBase.h), since there was no real reason for it to.
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::JSDOMWindowBase::pauseTimeouts):
+ (WebCore::JSDOMWindowBase::resumeTimeouts):
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::pauseTimeouts):
+ (WebCore::ScriptController::resumeTimeouts):
+ * bindings/js/ScriptController.h:
+ * history/CachedPage.cpp:
+ (WebCore::CachedPage::CachedPage):
+ (WebCore::CachedPage::restore):
+ * page/Chrome.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+ * page/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer):
+ (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
+
+2008-08-27 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Unreviewed compile fix
+
+ Add the stub for the Qt port.
+
+ * WebCore.pro:
+ * page/qt/AccessibilityObjectQt.cpp: Added.
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+
+2008-08-27 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Eric.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20551
+ [GTK] search popup crash
+
+ * platform/gtk/SearchPopupMenuGtk.cpp:
+ (WebCore::SearchPopupMenu::enabled):
+ Fix a search popup crasher by disabling the history popup since we
+ don't support this feature yet in the GTK+ port.
+
+2008-08-27 Alp Toker <alp@nuanti.com>
+
+ Reviewed by Eric.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20551
+ [GTK] curl crashers
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::ResourceHandleManager::startScheduledJobs):
+ Remove the resource handle from the pending list before starting the
+ job, not afterwards. Fixes crashers in the test suite.
+
+ Test: fast/dom/clientWidthAfterDocumentIsRemoved.html
+ Test: fast/encoding/char-encoding.html
+
+2008-08-27 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by eseidel.
+
+ Fix canvas drawImage to support composite operations.
+ Composite had no effect on canvas elements like these:
+ http://philip.html5.org/tests/canvas/suite/tests/index.2d.composite.canvas.html
+
+ [CAIRO] Canvas composite don't work on canvas-elements.
+ https://bugs.webkit.org/show_bug.cgi?id=20548
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage): pass the current composite operator to the drawImage call
+
+2008-08-27 Mario Bensi <mbensi@pleyo.com>
+
+ Reviewed by Eric Seidel.
+
+ Fix the data content of an image with a base64.
+
+ * platform/network/curl/ResourceHandleManager.cpp:
+ (WebCore::parseDataUrl): Remove the String and use only the data
+ Vector because the data.latin1().data() convert the data content and
+ the image test ( https://bugs.webkit.org/attachment.cgi?id=21726 ) is
+ not drawn correctly.
+
+2008-08-27 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Eric Seidel.
+
+ Crash after OK in dialog box and reloading page in secure mode
+ https://bugs.webkit.org/show_bug.cgi?id=20493
+
+ The new run loop spawned by a modal dialog causes a timer in the loader to run
+ synchronously inside didFinishLoading() deleting "this" object.
+
+ Defer all WebCore timers when a modal dialog is up. They are not
+ safe to execute.
+
+ * page/Chrome.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ (WebCore::PageGroupLoadDeferrer::~PageGroupLoadDeferrer):
+
+2008-08-27 Chris Marrin <cmarrin@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Memory leaks when animating transforms
+ https://bugs.webkit.org/show_bug.cgi?id=20532
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::ScaleTransformOperation::blend):
+ (WebCore::RotateTransformOperation::blend):
+ (WebCore::SkewTransformOperation::blend):
+ (WebCore::TranslateTransformOperation::blend):
+ (WebCore::MatrixTransformOperation::blend):
+ * rendering/style/RenderStyle.h:
+
+2008-08-27 Timothy Hatcher <timothy@apple.com>
+
+ Add support for support for -webkit-appearance: default-button on the Mac platform.
+
+ <rdar://problem/6173530>
+
+ Reviewed by Dave Hyatt.
+
+ * WebCore.base.exp: Export new symbols.
+ * platform/mac/WebCoreSystemInterface.h: Add wkAdvanceDefaultButtonPulseAnimation.
+ * platform/mac/WebCoreSystemInterface.mm: Ditto.
+ * rendering/RenderButton.cpp:
+ (WebCore::RenderButton::RenderButton): Remove #if PLATFORM(WIN).
+ (WebCore::RenderButton::setStyle): Ditto.
+ * rendering/RenderButton.h: Ditto.
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::adjustRepaintRect): Add a case for DefaultButtonAppearance.
+ (WebCore::RenderThemeMac::setButtonCellState): Set the key equivalent to the return
+ key if the button is default, otherwise reset the key equivalent.
+ (WebCore::RenderThemeMac::paintButton): If the button is default call setDefaultButtonCell:
+ on the window, then wkAdvanceDefaultButtonPulseAnimation before painting. Restore
+ the window's previous default button cell when finished.
+
+2008-08-26 David Hyatt <hyatt@apple.com>
+
+ First cut at making form controls on OS X respect full page zoom. There are lots of bugs.
+
+ Reviewed by weinig
+
+ Added fast/forms/zoomed-controls.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::addIntrinsicMargins):
+ * rendering/RenderSlider.cpp:
+ (WebCore::RenderSlider::calcPrefWidths):
+ * rendering/RenderThemeMac.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::adjustRepaintRect):
+ (WebCore::RenderThemeMac::inflateRect):
+ (WebCore::RenderThemeMac::baselinePosition):
+ (WebCore::RenderThemeMac::setControlSize):
+ (WebCore::RenderThemeMac::sizeForFont):
+ (WebCore::RenderThemeMac::sizeForSystemFont):
+ (WebCore::RenderThemeMac::setFontFromControlSize):
+ (WebCore::RenderThemeMac::paintCheckbox):
+ (WebCore::RenderThemeMac::setCheckboxCellState):
+ (WebCore::RenderThemeMac::paintRadio):
+ (WebCore::RenderThemeMac::setRadioCellState):
+ (WebCore::RenderThemeMac::setButtonPaddingFromControlSize):
+ (WebCore::RenderThemeMac::adjustButtonStyle):
+ (WebCore::RenderThemeMac::setButtonCellState):
+ (WebCore::RenderThemeMac::paintButton):
+ (WebCore::RenderThemeMac::paintMenuList):
+ (WebCore::RenderThemeMac::paintMenuListButton):
+ (WebCore::RenderThemeMac::popupInternalPaddingLeft):
+ (WebCore::RenderThemeMac::popupInternalPaddingRight):
+ (WebCore::RenderThemeMac::popupInternalPaddingTop):
+ (WebCore::RenderThemeMac::popupInternalPaddingBottom):
+ (WebCore::RenderThemeMac::setPopupButtonCellState):
+ (WebCore::RenderThemeMac::paintSliderTrack):
+ (WebCore::RenderThemeMac::paintSliderThumb):
+ (WebCore::RenderThemeMac::adjustSliderThumbSize):
+ (WebCore::RenderThemeMac::paintSearchField):
+ (WebCore::RenderThemeMac::adjustSearchFieldStyle):
+ (WebCore::RenderThemeMac::paintSearchFieldCancelButton):
+ (WebCore::RenderThemeMac::paintSearchFieldResultsButton):
+
+2008-08-27 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders
+
+ <rdar://problem/6134133> - Crash when loading large movie as a standalone document
+
+ We hand off these loads to Quicktime which manages and spools the data itself, but we also continued
+ to load and buffer the data for the movie in WebCore. With large media files, this results in blowing
+ away the virtual address space and a crash.
+
+ * loader/EmptyClients.h:
+ (WebCore::EmptyFrameLoaderClient::pluginWillHandleLoadError):
+ * loader/FrameLoaderClient.h: Added client method to get platform specific error for
+ "plugin will handle load"
+
+ * loader/MediaDocument.cpp:
+ (WebCore::MediaTokenizer::createDocumentStructure): Tell the MainResourceLoader to not buffer data,
+ and cancel the WebCore-managed load
+ (WebCore::MediaTokenizer::writeRawData):
+ (WebCore::MediaTokenizer::finish):
+
+2008-08-26 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Eric Seidel
+
+ Linear timing functions should have control points 0, 0, 1, 1.
+ https://bugs.webkit.org/show_bug.cgi?id=20535
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::mapAnimationTimingFunction):
+ * rendering/style/RenderStyle.h:
+
+2008-08-27 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * WebCore.vcproj/WebCore.vcproj: Fix file extension.
+
+2008-08-26 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/6069462> REGRESSION: webkit is returning flash objects as AXUnknown
+
+ Added platform-specific accessibilityIgnoreAttachment, which allows the platform
+ to determine if an attachment is ignored through accessibility. Added equivalent
+ methods in Gtk, Win and Mac
+
+ Test: accessibility/plugin.html
+
+ * GNUmakefile.am:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/AccessibilityObject.h:
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
+ * page/gtk/AccessibilityObjectAtk.cpp: Added.
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+ * page/mac/AccessibilityObjectMac.mm: Added.
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+ * page/mac/AccessibilityObjectWrapper.h:
+ * page/win/AccessibilityObjectWin.cpp: Added.
+ (WebCore::AccessibilityObject::accessibilityIgnoreAttachment):
+
+2008-08-26 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/5817770> can't bring up contextual menu for embedded objects in WebText
+
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
+ (-[AccessibilityObjectWrapper accessibilityShowContextMenu]):
+
+2008-08-26 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <rdar://problem/6176924> CrashTracer: [USER] 4 crashes in Safari at com.apple.WebCore: WebCore::RenderTableSection::numColumns
+
+ Tests: accessibility/table-notbody.html
+
+ * page/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+
+2008-08-26 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Beth Dakin.
+
+ Fix typo.
+
+ * dom/DOMCoreException.h:
+
+2008-08-26 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20479
+ <rdar://problem/6167660>
+ Take image redirects into account when tainting the canvas.
+
+ Test: http/tests/security/canvas-remote-read-redirect-to-remote-image.html
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::drawImageFromRect):
+
+2008-08-26 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Change canvas tainting logic to ask the image if it contains
+ any resources outside of its own origin. Since there is no
+ way to determine if SVG images contain any resources outside its
+ origin, we always assume it does.
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::drawImageFromRect):
+ * platform/graphics/BitmapImage.h:
+ (WebCore::BitmapImage::hasSingleSecurityOrigin):
+ * platform/graphics/GeneratedImage.h:
+ (WebCore::GeneratedImage::hasSingleSecurityOrigin):
+ * platform/graphics/Image.h:
+ (WebCore::Image::hasSingleSecurityOrigin):
+ * platform/graphics/cg/PDFDocumentImage.h:
+ (WebCore::PDFDocumentImage::hasSingleSecurityOrigin):
+ * svg/graphics/SVGImage.h:
+
+2008-08-26 Maxime Britto <britto@apple.com>
+
+ Reviewed by Adele.
+
+ <rdar://6159244> Pan-scrolling does not work on particular sites (starmagazine.com, nytimes.com)
+ This patch fixes the issues and modify the behavior of the panscroll by allowing it to jump to a parent layer when it reaches the end of its scrollable area.
+ This is matching the behavior of the mouse wheel when trying to scroll in a smaller layer of the page (div, textarea, ...) and when we reach the edge and keep scrolling then the whole page scrolls.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::updateAutoscrollRenderer): if we switch to the parent layer to do the scroll we want to change the renderer for the panning
+ * page/EventHandler.h:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::panScrollFromPoint): now calls the scrollByRecursively method when it has computed the xDelta and yDelta
+ (WebCore::RenderLayer::scrollByRecursively): try to scroll the current layer by the xDelta and yDelta provided, if it can't it ask its parent layer to do so.
+ * rendering/RenderLayer.h:
+ * rendering/RenderObject.cpp:
+ (WebCore::RenderObject::canBeProgramaticallyScrolled): a RenderObject must have a RenderLayer to be programatically scrolled
+ (WebCore::RenderObject::autoscroll): No need to check for the layer anymore since we verify it's present in the upmentionned method
+ (WebCore::RenderObject::panScroll): No need to check for the layer anymore too.
+
+2008-08-25 Julien Chaffraix <jchaffraix@webkit.org>
+
+ Reviewed by Darin Adler.
+
+ Bug 20247: setAttributeNode() does not work when attribute name has a capital letter in it
+ https://bugs.webkit.org/show_bug.cgi?id=20247
+
+ <rdar://problem/6118218>
+
+ Add a boolean parameter to getAttributeItem to choose between case sensitive and case insensitive
+ check. This keeps the behaviour for setAttribute / hasAttribute (case sensitive) and getAttribute
+ (case insensitive for HTML elements).
+
+ Test: fast/dom/Element/getAttribute-check-case-sensitivity.html
+
+ * dom/Element.cpp:
+ (WebCore::Element::getAttribute):
+ * dom/NamedAttrMap.cpp:
+ (WebCore::NamedAttrMap::getNamedItem):
+ (WebCore::NamedAttrMap::getAttributeItem):
+ * dom/NamedAttrMap.h:
+
+2008-08-25 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20514
+ <rdar://problem/6174096>
+ Treat SVG images as dirty when drawing to a canvas.
+
+ Test: http/tests/security/canvas-remote-read-svg-image.html
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::drawImage):
+ (WebCore::CanvasRenderingContext2D::drawImageFromRect):
+ * platform/graphics/Image.h:
+ (WebCore::Image::isSVGImage):
+ * svg/graphics/SVGImage.h:
+ (WebCore::SVGImage::isSVGImage):
+
+2008-08-25 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Mark Rowe.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20377
+ Leak in XMLHttpRequest.
+
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::makeCrossSiteAccessRequestWithPreflight):
+
+2008-08-25 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Anders
+
+ Speculative fix for <rdar://problem/6173217>
+
+ Moves the "clearArchivedResources()" call to exactly where it used to be in the old version of WebArchive code.
+ Also, adds a null check for m_documentLoader since DocumentLoader::stopLoading() can end up clearing it, rendering
+ the first null check invalid.
+
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::stopAllLoaders):
+
+
+2008-08-25 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/6157711> Heavy/Tree view selector is not grayed out if
+ there is no profile, can cause crash
+
+ * page/inspector/ProfilesPanel.js:
+
+2008-08-25 Dean Jackson <dino@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Make sure 'inherit' is handled by transition property.
+ https://bugs.webkit.org/show_bug.cgi?id=20513
+
+ Test: transitions/inherit.html
+ Test: transitions/inherit-other-props.html
+
+ * css/CSSStyleSelector.cpp:
+ fix macro to check existence of list before getting size
+
+2008-08-25 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Mark.
+
+ <rdar://problem/6149787> crash @ com.apple.JavaScriptCore: WTF::callOnMainThread + 37.
+
+ Initialize threading in the call to WebCoreObjCFinalizeOnMainThread. We currently assume
+ (safely) that any class that needs finalization on the main thread will also need to be deallocated
+ on the main thread, and calling initializeThreading from WebCoreObjCFinalizeOnMainThread instead of
+ calling it from WebCoreObjCScheduleDeallocateOnMainThread seems safer.
+
+ * platform/mac/WebCoreObjCExtras.c:
+ (WebCoreObjCFinalizeOnMainThread):
+
+2008-08-25 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Rename CachedResource::referenced() to CachedResource::hasClients() to
+ match previous ref() -> addClient() rename.
+
+ * loader/Cache.cpp:
+ (WebCore::Cache::pruneLiveResources):
+ (WebCore::Cache::pruneDeadResources):
+ (WebCore::Cache::remove):
+ (WebCore::Cache::getStatistics):
+ (WebCore::Cache::dumpLRULists):
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::addClient):
+ (WebCore::CachedResource::removeClient):
+ (WebCore::CachedResource::setDecodedSize):
+ (WebCore::CachedResource::setEncodedSize):
+ * loader/CachedResource.h:
+ (WebCore::CachedResource::hasClients):
+ (WebCore::CachedResource::canDelete):
+
+2008-08-25 Anthony Ricaud <rik24d@gmail.com>
+
+ Add a missing Inspector localized string for "other".
+
+ https://bugs.webkit.org/show_bug.cgi?id=20509
+
+ Reviewed by Tim Hatcher.
+
+ * English.lproj/localizedStrings.js:
+
+2008-08-22 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Geoff, Mark and Tim.
+
+ <rdar://problem/6150623> JSProfiler: It would be nice if the profiles
+ in the console said what file and line number they came from
+ - Lay the foundation for getting line numbers and other data from the
+ JavaScript engine.
+
+ * ForwardingHeaders/VM: Added.
+ * ForwardingHeaders/VM/Machine.h: Added.
+ * page/Console.cpp: Gather the line number and file information when
+ profileEnd has been called, but don't use it until didFinishProfiling is
+ called. We won't need to wait once we remove the profiler "zombie" mode
+ which this patch helps pave the foundation for.
+ (WebCore::Console::Console):
+ (WebCore::Console::profileEnd):
+ (WebCore::Console::finishedProfiling):
+ * page/Console.h:
+ * page/InspectorController.cpp: Modify calls to
+ addProfileMessageToConsole to satisfy the new arguments it takes.
+ (WebCore::InspectorController::finishedProfiling):
+ (WebCore::InspectorController::addProfile):
+ (WebCore::InspectorController::addProfileMessageToConsole):
+ (WebCore::InspectorController::finishedProfiling):
+ * page/InspectorController.h:
+
+2008-08-25 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Reviewed by Simon.
+
+ [inspector] Update the WebKit.qrc Qt resources file
+ Catchup with the changes in the directory.
+
+ * page/inspector/WebKit.qrc:
+
+2008-08-25 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Simon.
+
+ Transformed the radian to degree, to get rotate()
+ in canvas work as expected.
+
+ [Qt] Canvas.rotate() doesn't work
+ https://bugs.webkit.org/show_bug.cgi?id=20496
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::rotate):
+
+2008-08-24 Steve Falkenburg <sfalken@apple.com>
+
+ Add a "last chance" WM_TIMER to the Windows shared timer.
+
+ The last chance timer fires every 5 seconds to run any lost WM_TIMER based timers.
+ Failure to fire a timer is fatal to the cross-platform Timer code, since it won't re-schedule
+ timers if a timer with an earlier expiration is already pending. This results in no timers
+ firing from that point on.
+
+ We lose WM_TIMER messages occasionally (in the neighborhood of 1 per hour) probably due to a
+ buggy window message hook.
+
+ This timer will start when the first WM_TIMER is scheduled, and will
+ fire every 5 seconds thereafter, causing any lost timers to be fired.
+
+ Found this via one of its symptoms: leaking WebFrames. The fix prevents timers from stalling
+ and prevents the WebFrame leak.
+
+ Reviewed by Darin Adler, Geoff Garen.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::):
+ (WebCore::TimerWindowWndProc):
+ (WebCore::setSharedTimerFireTime):
+
+2008-08-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fix <rdar://problem/6065547> REGRESSION (r34879): "Subject" in unread emails in Yahoo mail is not shown in bold
+
+ Test: fast/css/font-property-priority.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue): Changed to pass the 'important' flag
+ to the font-property-parsing functions.
+ (WebCore::CSSParser::parseFontStyle): Added an 'important' argument and
+ changed to use it rather than the m_important member.
+ (WebCore::CSSParser::parseFontVariant): Ditto.
+ (WebCore::CSSParser::parseFontWeight): Ditto.
+ * css/CSSParser.h:
+
+2008-08-24 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where the Inspector's UI would not animate or
+ fully function because JavaScript timeouts, intervals and
+ CSS animation timers where not firing while paused at a
+ a breakpoint in the inspected page.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20042
+
+ Reviewed by Darin Adler.
+
+ Test: manual-tests/inspector/forzen-ui-while-paused.html
+
+ * page/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::pauseIfNeeded):
+ Add a call to TimerBase::fireTimersInNestedEventLoop before
+ spinning the EventLoop.
+
+2008-08-24 Rob Buis <buis@kde.org>
+
+ Reviewed by Sam Weinig.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20324
+ A change in SVG Glyph wont show up
+
+ Invalidate the glyph cache when the d attribute is set.
+
+ Test: svg/custom/glyph-setting-d-attribute.svg
+
+ * svg/SVGGlyphElement.cpp:
+ (WebCore::SVGGlyphElement::invalidateGlyphCache):
+ (WebCore::SVGGlyphElement::parseMappedAttribute):
+ (WebCore::SVGGlyphElement::insertedIntoDocument):
+ (WebCore::SVGGlyphElement::removedFromDocument):
+ * svg/SVGGlyphElement.h:
+
+2008-08-24 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=13864
+ <rdar://problem/5451470> REGRESSION: Uninitialized value in RenderBlock::calcInlinePrefWidths()
+
+ * rendering/RenderText.cpp:
+ (WebCore::RenderText::trimmedPrefWidths): Moved the assignment to
+ beginWS and endWS before the early return to ensure that they are
+ initialized in that case.
+
+2008-08-23 Cameron Zwarich <cwzwarich@uwaterloo.ca>
+
+ Rubber-stamped by Mark Rowe.
+
+ Remove modelines.
+
+ * WebCore.pro:
+ * bridge/testbindings.cpp:
+ * dom/DocPtr.h:
+ * loader/SubstituteData.h:
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/Frame.h:
+ * page/FrameLoadRequest.h:
+ * page/FrameTree.cpp:
+ * page/FrameTree.h:
+ * page/Page.h:
+ * page/mac/ChromeMac.mm:
+ * platform/network/HTTPHeaderMap.h:
+ * platform/network/ResourceErrorBase.cpp:
+ * platform/network/ResourceErrorBase.h:
+ * platform/network/ResourceHandleInternal.h:
+ * platform/network/ResourceRequestBase.cpp:
+ * platform/network/ResourceRequestBase.h:
+ * platform/network/ResourceResponseBase.cpp:
+ * platform/network/ResourceResponseBase.h:
+ * platform/network/cf/ResourceError.h:
+ * platform/network/cf/ResourceRequest.h:
+ * platform/network/cf/ResourceRequestCFNet.h:
+ * platform/network/cf/ResourceResponse.h:
+ * platform/network/cf/ResourceResponseCFNet.h:
+ * platform/network/curl/ResourceError.h:
+ * platform/network/curl/ResourceRequest.h:
+ * platform/network/curl/ResourceResponse.h:
+ * platform/network/mac/ResourceError.h:
+ * platform/network/mac/ResourceErrorMac.mm:
+ * platform/network/mac/ResourceRequest.h:
+ * platform/network/mac/ResourceRequestMac.mm:
+ * platform/network/mac/ResourceResponse.h:
+ * platform/network/mac/ResourceResponseMac.mm:
+ * platform/network/qt/ResourceError.h:
+ * platform/network/qt/ResourceRequest.h:
+ * platform/network/qt/ResourceResponse.h:
+ * platform/network/soup/CookieJarSoup.cpp:
+ * platform/network/soup/ResourceError.h:
+ * platform/network/soup/ResourceRequest.h:
+ * platform/network/soup/ResourceResponse.h:
+
+2008-08-23 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix <rdar://problem/6065143> Reflowed image in first line of table doesn't affect baseline
+
+ Test: fast/table/vertical-align-baseline.html
+
+ * rendering/RenderTable.cpp:
+ (WebCore::RenderTable::getBaselineOfFirstLineBox): Added. Returns the
+ baseline of the first table row, if there is one, -1 otherwise.
+ * rendering/RenderTable.h:
+ * rendering/RenderTableCell.cpp:
+ (WebCore::RenderTableCell::baselinePosition): Changed to follow the
+ CSS2.1 definition of the baseline of a table cell.
+ * rendering/RenderTableSection.cpp:
+ (WebCore::RenderTableSection::getBaselineOfFirstLineBox): Added. Returns
+ the baseline of the first row in the section.
+ * rendering/RenderTableSection.h:
+
+2008-08-18 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Add SPI to make a Windows WebView transparent.
+
+ Reviewed by Dan Bernstein.
+
+ * platform/graphics/GraphicsContext.h: Add a parameter, hasAlpha, that
+ determines whether the created context has an alpha channel.
+ * platform/graphics/win/GraphicsContextCGWin.cpp:
+ (WebCore::CGContextWithHDC):
+
+2008-08-22 Timothy Hatcher <timothy@apple.com>
+
+ Rolls out r35834 because it caused a regression in the Inspector's
+ Console where some expressions always threw a syntax error.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20487
+
+ * page/inspector/Console.js:
+ (Console.prototype._evalInInspectedWindow): Removes parenthesis
+ around the expression.
+
+2008-08-22 Timothy Hatcher <timothy@apple.com>
+
+ Makes getStyleProperty return a value for the overflow property
+ when overflow-x and overflow-y are equal.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20485
+
+ Reviewed by Dan Bernstein.
+
+ Test: fast/css/overflow-property.html
+
+ * css/CSSMutableStyleDeclaration.cpp:
+ (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
+
+2008-08-22 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where while editing in the Inspector the
+ sidebar scroll position would jump to the top.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20484
+
+ Reviewed by Darin Adler.
+
+ * page/inspector/treeoutline.js:
+ (TreeOutline._removeChildren): Remove the offsetTop call that
+ was forcing a layout, since layout causes scroll positions
+ to be clamped to the new scrollHeight/Width. Layout will happen
+ normally when needed.
+
+2008-08-22 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix. Add AccessibilityTable sources.
+
+ * WebCoreSources.bkl:
+
+2008-08-21 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Jon Honeycutt and Alexey Proskuryakov.
+
+ - fix <rdar://problem/6162701> WebKit should correct Geeza Pro's font metrics
+
+ Test: platform/mac/fast/text/international/Geeza-Pro-vertical-metrics-adjustment.html
+
+ * platform/graphics/mac/SimpleFontDataMac.mm:
+ (WebCore::SimpleFontData::platformInit): Add 8% to Geeza Pro's reported
+ ascent and 100% to its reported descent.
+
+2008-08-21 Kalle Vahlman <kalle.vahlman@movial.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20267
+ [GTK] Crash on some pages due to a plugin
+
+ Fix handling of badly formatted and empty plugin mime descriptions
+
+ * plugins/gtk/PluginPackageGtk.cpp:
+ (WebCore::PluginPackage::fetchInfo):
+
+2008-08-21 Kevin Watters <kevinwatters@gmail.com>
+
+ Reviewed by Darin Adler.
+
+ Follow other ports (and IE) in ImageSourceWx.cpp never to return an
+ animated GIF frame duration of less than 50ms.
+
+ * platform/graphics/wx/ImageSourceWx.cpp:
+ (WebCore::ImageSource::frameDurationAtIndex):
+
+2008-08-21 Maxime Britto <britto@apple.com>
+
+ Reviewed by Kevin McCullough.
+
+ Test: fast/events/autoscroll-nonscrollable-iframe-in-scrollable-div.html
+ https://bugs.webkit.org/show_bug.cgi?id=20451
+
+ rdar://problem/6166435 Inspector doesn't auto scroll when selecting text (20451)
+ When we climb up the rendering tree looking for a scrollable renderer, we need to be able to jump outside of an iframe.
+ This way we can see if what is embedding the iframe can be scrolled even if the iframe content can't.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::handleMouseDraggedEvent): when we reach the document node and it can't be scrolled we set the next parent as the document's owner element if it exists.
+
+ (WebCore::EventHandler::handleMousePressEvent): ditto
+
+2008-08-21 Anthony Ricaud <rik24d@gmail.com>
+
+ Small optimization for when the dividers in the Inspector's
+ Resources panel are updated.
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/ResourcesPanel.js:
+ (WebInsector.ResourcesPanel.prototype._updateGraphDividersIfNeeded):
+ Combind a for loop and clone the divider element.
+
+2008-08-21 Chris Marrin <cmarrin@apple.com>
+
+ Allow 0 (without units) for Time eg. duration
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20467
+
+ Reviewed by Dave Hyatt.
+
+ Test: css1/units/zero-duration-without-units.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::validUnit):
+
+2008-08-21 Timothy Hatcher <timothy@apple.com>
+
+ Make deleting all text while editing a DOM attribute in
+ the Inspector delete the attribute. This also fixes
+ an exception that would happen before.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20472
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.DOMNodeTreeElement.prototype._attributeEditingCommitted):
+ Don't check for hasAttributes on the parseElement, continuing
+ through the function will correctly remove the attribute.
+ If the parseElement is null, call _editingCancelled not
+ editingCancelled, this fixes an exception.
+
+2008-08-21 Timothy Hatcher <timothy@apple.com>
+
+ Update the Inspector's Metrics pane when editing in
+ the Styles pane. This makes sure the metrics shown
+ always match what the Styles pane shows.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20470
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel): Add event listeners for
+ the "style edited" and "style property toggled" events,
+ so the Metrics pane is updated.
+ (WebInspector.ElementsPanel.prototype._stylesPaneEdited):
+ Update the Metrics pane.
+ * page/inspector/StylesSidebarPane.js:
+ (WebInspector.StylePropertyTreeElement.prototype.toggleEnabled):
+ Dispatch the "style property toggled" event.
+ (WebInspector.StylePropertyTreeElement.prototype.editingCancelled):
+ Dispatch the "style edited" event when the CSS text is restored.
+ (WebInspector.StylePropertyTreeElement.prototype.applyStyleText):
+ Dispatch the "style edited" event.
+
+2008-08-21 Timothy Hatcher <timothy@apple.com>
+
+ Make the Inspector's Metrics sidebar pane editable.
+
+ https://bugs.webkit.org/show_bug.cgi?id=17218
+ rdar://problem/5732818
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ElementsPanel.js:
+ (WebInspector.ElementsPanel): Add an event listener for
+ the "metrics edited" event, so the Styles pane is updated.
+ * page/inspector/MetricsSidebarPane.js:
+ (WebInspector.MetricsSidebarPane.prototype.update): Remember the node
+ so future updates work. Add a double click event listener for the
+ metric values to start editing.
+ (WebInspector.MetricsSidebarPane.prototype.startEditing):
+ Call WebInspector.startEditing with some context.
+ (WebInspector.MetricsSidebarPane.prototype.editingCancelled):
+ (WebInspector.MetricsSidebarPane.prototype.editingCommitted):
+ Set the user input on the elements inline style. Fire the
+ "metrics edited" event.
+
+2008-08-21 Steve Falkenburg <sfalken@apple.com>
+
+ Fix a race condition in Windows timer code.
+ Timer function could end up being called with a 0 timer, leading to a Windows exception.
+
+ Don't post a timer message if one is already pending.
+
+ Reviewed by Ada Chan.
+
+ * platform/win/SharedTimerWin.cpp:
+ (WebCore::TimerWindowWndProc):
+ (WebCore::clearTimer):
+ (WebCore::queueTimerProc):
+ (WebCore::setSharedTimerFireTime):
+
+2008-08-21 Anthony Ricaud <rik24d@gmail.com>
+
+ After trying to add the expression, try again with quotes for
+ easier edition.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20466
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/ObjectPropertiesSection.js: Added an
+ evaluateExpression function.
+
+2008-08-21 Anthony Ricaud <rik24d@gmail.com>
+
+ Perform Inspector searches on search event to clear results when
+ clicking the cross to empty it. Delete the lastQuery when the field
+ is emptied in order to perform the search if exactly the same query
+ is entered next.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20462
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/inspector.js:
+
+2008-08-21 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Mark Rowe.
+
+ http://bugs.webkit.org/show_bug.cgi?id=19656
+ [SOUP] The gio code should call didFail() instead of
+ didFinishLoading() in case of error
+
+ In case of error call didFail() instead of didReceiveResponse() and
+ didFinishLoading().
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::networkErrorForFile):
+ (WebCore::readCallback):
+ (WebCore::openCallback):
+ (WebCore::queryInfoCallback):
+
+2008-08-20 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Jon Honeycutt.
+
+ Fix build failure.
+
+ * bridge/c/c_instance.cpp:
+ (KJS::Bindings::CInstance::getPropertyNames): Declare count as uint32_t rather than unsigned
+ as that is what NPEnumerationFunctionPtr is declared as accepting.
+
+2008-08-20 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Build fix. Handle kCGInterpolationMedium in switch statements if it is available.
+
+ * platform/graphics/GraphicsContext.h:
+ (WebCore::):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+ (WebCore::GraphicsContext::imageInterpolationQuality):
+
+2008-08-20 Dan Bernstein <mitz@apple.com>
+
+ Rubber-stamped by John Sullivan.
+
+ - rename shouldUpdateWhileHidden to shouldUpdateWhileOffscreen and
+ rename related methods and variables accordingly.
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameViewPrivate::FrameViewPrivate):
+ (WebCore::FrameView::shouldUpdateWhileOffscreen):
+ (WebCore::FrameView::setShouldUpdateWhileOffscreen):
+ * page/FrameView.h:
+ * platform/ScrollView.h:
+ * platform/mac/ScrollViewMac.mm:
+ (WebCore::ScrollView::updateContents):
+
+2008-08-20 Brady Eidson <beidson@apple.com>
+
+ Reviewed by Mitzpettel
+
+ <rdar://problem/6163636> - Many images broken in Mail
+
+ This can be traced back to the preload scanner. With that change, CachedResources are created a lot
+ sooner than before and confuse the WebArchive machinery.
+
+ When referencing WebArchive subresources directly through the WebKit API it is appropriate to ignore
+ such CachedResources since they are placeholders and have not been submitted to the ResourceLoadDelegate
+ machinery and nothing is known about where the data will eventually come from.
+
+ * loader/DocumentLoader.cpp:
+ (WebCore::DocumentLoader::subresource): Ignore a CachedResource if its preloadResult is
+ CachedResource::PreloadReferenced.
+
+2008-08-20 Holger Hans Peter Freyther <zecke@selfish.org>
+
+ Unreviewed compile fix
+
+ Catch up with the JSValue::type elimination.
+
+ * bridge/qt/qt_instance.cpp:
+ (KJS::Bindings::QtRuntimeObjectImp::construct):
+ (KJS::Bindings::QtInstance::defaultValue):
+ * bridge/qt/qt_runtime.cpp:
+ (KJS::Bindings::QtRuntimeConnectionMethod::call):
+
+2008-08-20 Chris Teague <chris.teague@gmail.com>
+
+ Reviewed by Mark Rowe.
+
+ Fix https://bugs.webkit.org/show_bug.cgi?id=20449
+ Bug 20449: Build fails if LOW_BANDWIDTH_DISPLAY is defined
+
+ * ChangeLog:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::switchOutLowBandwidthDisplayIfReady):
+
+2008-08-20 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ getComputedStyle() for webkitTransform should return a transform
+ that does not have the transform origin baked into it.
+ https://bugs.webkit.org/show_bug.cgi?id=20464
+
+ Test: fast/css/getComputedStyle-transform.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::computedTransform):
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::applyTransform):
+ * rendering/style/RenderStyle.h:
+
+2008-08-20 Josh Aas <joshmoz@gmail.com>
+
+ Reviewed and landed by Anders.
+
+ <rdar://problem/6163636>
+ rename NPCocoaEvent's "event" struct to "data" (20446)
+
+ * bridge/npapi.h:
+ (_NPCocoaEvent::):
+
+2008-08-20 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Fix for <rdar://problem/6145626>
+ This patch fixes a number of remaining problems getting
+ disconnected frames to work correctly with markAllMatchesForText()
+ and findString(). Details inline.
+
+ This was a static helper function in Frame, but this patch requires
+ the same functionality in Editor, so I just added it as a function
+ on Node.
+ * dom/Node.cpp:
+ (WebCore::Node::isInShadowTree):
+ * dom/Node.h:
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::insideVisibleArea): Returns false if
+ excludeFromTextSearch() is true.
+
+ In a normal (non-disconnected) frame, findString returns a range of
+ the document node if the text is not found in the frame. I changed
+ firstVisibleRange and lastVisibleRange to match that behavior when
+ the text is not found
+ (WebCore::Editor::firstVisibleRange):
+ (WebCore::Editor::lastVisibleRange):
+
+ Here are the bulk of the changes in the patch. A lot of text was
+ not being found in disconnected frames because I failed to account
+ for all of the possible problems associated with shadow trees. That
+ is fixed here.
+ (WebCore::Editor::nextVisibleRange):
+ * editing/Editor.h:
+
+ excludeFromTextSearch() is new. It allows a WebKit client to mark a
+ frame as not-text-searchable through SPI.
+ * WebCore.base.exp:
+ * page/Frame.cpp:
+ (WebCore::Frame::excludeFromTextSearch):
+ (WebCore::Frame::setExcludeFromTextSearch):
+ (WebCore::FramePrivate::FramePrivate):
+ * page/Frame.h:
+ * page/FramePrivate.h:
+
+ (WebCore::Frame::findString):
+ (WebCore::Frame::markAllMatchesForText): I kept running into an
+ assertion failure in paining code because of the forced paint on
+ empty visible rects.
+
+2008-08-20 Timothy Hatcher <timothy@apple.com>
+
+ Adds a positon box to the Inspector's Metrics sidebar
+ pane. When an element is not statically positioned, there
+ is now a position box that show top, right, bottom and
+ left computed values.
+
+ Reviewed by Kevin McCullough.
+
+ * English.lproj/localizedStrings.js: Updated the strings.
+ * page/inspector/MetricsSidebarPane.js:
+ (WebInspector.MetricsSidebarPane.prototype.update):
+ Renamed the boxPartValue function to createBoxPartElement
+ and made it create the entire element. Made it understand
+ how to get position style properties. Don't use the figure dash
+ when 0px is used for positions, since the 0 is meaningful there.
+ Instead use the figure dash when a position is auto.
+ * page/inspector/inspector.css: Added a new rule for position.
+
+2008-08-20 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin
+
+ Qt build fix
+
+ * WebCore.pro:
+
+2008-08-20 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ - avoid using a deprecated NSScroller method on Leopard
+
+ * platform/mac/PlatformScrollBarMac.mm:
+ (WebCore::PlatformScrollbar::updateThumbPosition):
+ (WebCore::PlatformScrollbar::updateThumbProportion):
+
+2008-08-20 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Gtk build fix
+
+ * GNUmakefile.am:
+ * page/AccessibilityTable.cpp: Change nil to 0
+ (WebCore::AccessibilityTable::cellForColumnAndRow):
+
+2008-08-19 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Geoff Garen.
+
+ Bring back shared JSGlobalData and implicit locking, because too many clients rely on it.
+
+ * ForwardingHeaders/kjs/JSLock.h: Added.
+ * WebCore.vcproj/WebCore.vcproj:
+ * bindings/js/GCController.cpp:
+ (WebCore::collect):
+ (WebCore::GCController::gcTimerFired):
+ (WebCore::GCController::garbageCollectNow):
+ * bindings/js/JSCustomSQLStatementCallback.cpp:
+ (WebCore::JSCustomSQLStatementCallback::handleEvent):
+ * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
+ (WebCore::JSCustomSQLStatementErrorCallback::handleEvent):
+ * bindings/js/JSCustomSQLTransactionCallback.cpp:
+ (WebCore::JSCustomSQLTransactionCallback::handleEvent):
+ * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
+ (WebCore::JSCustomSQLTransactionErrorCallback::handleEvent):
+ * bindings/js/JSCustomVoidCallback.cpp:
+ (WebCore::JSCustomVoidCallback::handleEvent):
+ * bindings/js/JSCustomXPathNSResolver.cpp:
+ (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
+ * bindings/js/JSDOMWindowBase.cpp:
+ (WebCore::DOMWindowTimer::~DOMWindowTimer):
+ (WebCore::JSDOMWindowBase::clear):
+ (WebCore::JSDOMWindowBase::timerFired):
+ * bindings/js/JSEventCustom.cpp:
+ (WebCore::toJS):
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSAbstractEventListener::handleEvent):
+ * bindings/js/JSNSResolver.cpp:
+ (WebCore::JSNSResolver::lookupNamespaceURI):
+ * bindings/js/JSNodeFilterCondition.cpp:
+ (WebCore::JSNodeFilterCondition::acceptNode):
+ * bindings/js/ScheduledAction.cpp:
+ (WebCore::ScheduledAction::execute):
+ * bindings/js/ScriptController.cpp:
+ (WebCore::ScriptController::evaluate):
+ (WebCore::ScriptController::clearWindowShell):
+ (WebCore::ScriptController::createHTMLEventHandler):
+ (WebCore::ScriptController::createSVGEventHandler):
+ (WebCore::ScriptController::initScript):
+ (WebCore::ScriptController::updateDocument):
+ (WebCore::ScriptController::bindingRootObject):
+ (WebCore::ScriptController::windowScriptNPObject):
+ (WebCore::ScriptController::createScriptObjectForPluginElement):
+ (WebCore::ScriptController::clearScriptObjects):
+ * bindings/js/ScriptControllerMac.mm:
+ (WebCore::ScriptController::windowScriptObject):
+ * bindings/objc/WebScriptObject.mm:
+ (_didExecute):
+ (-[WebScriptObject callWebScriptMethod:withArguments:]):
+ (-[WebScriptObject evaluateWebScript:]):
+ (-[WebScriptObject setValue:forKey:]):
+ (-[WebScriptObject valueForKey:]):
+ (-[WebScriptObject removeWebScriptKey:]):
+ (-[WebScriptObject stringRepresentation]):
+ (-[WebScriptObject webScriptValueAtIndex:]):
+ (-[WebScriptObject setWebScriptValueAtIndex:value:]):
+ (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):
+ * bridge/NP_jsobject.cpp:
+ (_NPN_InvokeDefault):
+ (_NPN_Invoke):
+ (_NPN_Evaluate):
+ (_NPN_GetProperty):
+ (_NPN_SetProperty):
+ (_NPN_RemoveProperty):
+ (_NPN_HasProperty):
+ (_NPN_HasMethod):
+ (_NPN_Enumerate):
+ * bridge/c/c_class.cpp:
+ (KJS::Bindings::CClass::~CClass):
+ (KJS::Bindings::CClass::methodsNamed):
+ (KJS::Bindings::CClass::fieldNamed):
+ * bridge/c/c_instance.cpp:
+ (KJS::Bindings::CInstance::invokeMethod):
+ (KJS::Bindings::CInstance::invokeDefaultMethod):
+ (KJS::Bindings::CInstance::getPropertyNames):
+ * bridge/c/c_runtime.cpp:
+ (KJS::Bindings::CField::valueFromInstance):
+ (KJS::Bindings::CField::setValueToInstance):
+ * bridge/c/c_utility.cpp:
+ (KJS::Bindings::convertValueToNPVariant):
+ (KJS::Bindings::convertNPVariantToValue):
+ * bridge/jni/jni_class.cpp:
+ (JavaClass::JavaClass):
+ (JavaClass::~JavaClass):
+ * bridge/jni/jni_instance.cpp:
+ (JavaInstance::stringValue):
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::call):
+ (JavaJSObject::eval):
+ (JavaJSObject::getMember):
+ (JavaJSObject::setMember):
+ (JavaJSObject::removeMember):
+ (JavaJSObject::getSlot):
+ (JavaJSObject::setSlot):
+ (JavaJSObject::toString):
+ (JavaJSObject::convertValueToJObject):
+ (JavaJSObject::convertJObjectToValue):
+ * bridge/jni/jni_objc.mm:
+ (KJS::Bindings::dispatchJNICall):
+ * bridge/jni/jni_runtime.cpp:
+ (appendClassName):
+ (JavaMethod::signature):
+ * bridge/jni/jni_runtime.h:
+ (KJS::Bindings::JavaString::JavaString):
+ (KJS::Bindings::JavaString::_commonInit):
+ (KJS::Bindings::JavaString::~JavaString):
+ (KJS::Bindings::JavaString::UTF8String):
+ * bridge/jni/jni_utility.cpp:
+ (KJS::Bindings::convertValueToJValue):
+ * bridge/npruntime.cpp:
+ (_NPN_GetStringIdentifier):
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::moveGlobalExceptionToExecState):
+ (ObjcInstance::invokeMethod):
+ (ObjcInstance::invokeDefaultMethod):
+ (ObjcInstance::setValueOfUndefinedField):
+ (ObjcInstance::getValueOfUndefinedField):
+ * bridge/objc/objc_runtime.mm:
+ (ObjcField::valueFromInstance):
+ (ObjcField::setValueToInstance):
+ * bridge/objc/objc_utility.mm:
+ (KJS::Bindings::convertValueToObjcValue):
+ (KJS::Bindings::convertNSStringToString):
+ (KJS::Bindings::convertObjcValueToValue):
+ * bridge/qt/qt_instance.cpp:
+ (KJS::Bindings::QtRuntimeObjectImp::removeFromCache):
+ (KJS::Bindings::QtInstance::~QtInstance):
+ (KJS::Bindings::QtInstance::getQtInstance):
+ (KJS::Bindings::QtInstance::getRuntimeObject):
+ * bridge/qt/qt_runtime.cpp:
+ (KJS::Bindings::convertValueToQVariant):
+ (KJS::Bindings::convertQVariantToValue):
+ (KJS::Bindings::QtRuntimeMetaMethod::call):
+ (KJS::Bindings::QtRuntimeConnectionMethod::call):
+ (KJS::Bindings::QtConnectionObject::QtConnectionObject):
+ (KJS::Bindings::QtConnectionObject::execute):
+ * bridge/runtime.cpp:
+ (KJS::Bindings::Instance::createRuntimeObject):
+ * bridge/testbindings.cpp:
+ (main):
+ * bridge/testbindings.mm:
+ (main):
+ * bridge/testqtbindings.cpp:
+ (main):
+ * dom/Document.cpp:
+ (WebCore::Document::~Document):
+ * dom/Node.cpp:
+ (WebCore::Node::setDocument):
+ * history/CachedPage.cpp:
+ (WebCore::CachedPage::CachedPage):
+ (WebCore::CachedPage::restore):
+ (WebCore::CachedPage::clear):
+ * loader/FrameLoader.cpp:
+ (WebCore::getString):
+ * page/InspectorController.cpp:
+ (WebCore::ConsoleMessage::ConsoleMessage):
+ (WebCore::XMLHttpRequestResource::XMLHttpRequestResource):
+ (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource):
+ (WebCore::getResourceDocumentNode):
+ (WebCore::search):
+ (WebCore::inspectedWindow):
+ (WebCore::wrapCallback):
+ (WebCore::currentCallFrame):
+ (WebCore::profiles):
+ (WebCore::InspectorController::focusNode):
+ (WebCore::InspectorController::inspectedWindowScriptObjectCleared):
+ (WebCore::InspectorController::addDatabaseScriptResource):
+ (WebCore::InspectorController::addScriptProfile):
+ * page/JavaScriptCallFrame.cpp:
+ (WebCore::JavaScriptCallFrame::evaluate):
+ * page/JavaScriptProfileNode.cpp:
+ (WebCore::getTotalTime):
+ (WebCore::getSelfTime):
+ (WebCore::getTotalPercent):
+ (WebCore::getSelfPercent):
+ (WebCore::getNumberOfCalls):
+ (WebCore::getChildren):
+ (WebCore::getVisible):
+ * page/Page.cpp:
+ * page/mac/FrameMac.mm:
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::start):
+ (WebCore::getString):
+ (WebCore::PluginView::performRequest):
+ (WebCore::PluginView::bindingInstance):
+ * plugins/gtk/PluginViewGtk.cpp:
+ (WebCore::PluginView::paint):
+ (WebCore::PluginView::handleKeyboardEvent):
+ (WebCore::PluginView::handleMouseEvent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ (WebCore::PluginView::init):
+ * plugins/qt/PluginViewQt.cpp:
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ (WebCore::PluginView::init):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::dispatchNPEvent):
+ (WebCore::PluginView::handleKeyboardEvent):
+ (WebCore::PluginView::handleMouseEvent):
+ (WebCore::PluginView::setNPWindowRect):
+ (WebCore::PluginView::stop):
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::clearResponse):
+ (WebCore::XMLHttpRequest::didFinishLoading):
+ (WebCore::XMLHttpRequest::didReceiveData):
+
+2008-08-19 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Geoff Garen.
+
+ Add the beginnings of Skia graphics support to WebCore
+ as I try to begin the long process of un-forking the changes
+ needed to WebCore to make Andriod's WebCore build.
+
+ I'll follow this up with actual *Skia.cpp files in a separate patch.
+
+ * platform/graphics/AffineTransform.h:
+ * platform/graphics/FloatPoint.h:
+ * platform/graphics/FloatRect.h:
+ * platform/graphics/Gradient.h:
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/Image.h:
+ * platform/graphics/ImageBuffer.h:
+ * platform/graphics/ImageSource.h:
+ * platform/graphics/IntPoint.h:
+ * platform/graphics/IntRect.h:
+ * platform/graphics/Path.h:
+ * platform/graphics/Pattern.h:
+ * svg/graphics/SVGPaintServerPattern.h:
+ * svg/graphics/SVGPaintServerSolid.h:
+
+2008-08-19 Steve Falkenburg <sfalken@apple.com>
+
+ Fix Windows build more.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2008-08-19 Steve Falkenburg <sfalken@apple.com>
+
+ Fix Windows build.
+
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
+
+2008-08-19 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ <rdar://problem/4003764> Expose tables as AXTables
+
+ Tests: accessibility/table-attributes.html
+ accessibility/table-cell-spans.html
+ accessibility/table-cells.html
+ accessibility/table-detection.html
+ accessibility/table-sections.html
+ accessibility/table-with-rules.html
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/AXObjectCache.cpp:
+ (WebCore::AXObjectCache::get):
+ * page/AccessibilityObject.h:
+ (WebCore::):
+ (WebCore::AccessibilityObject::isDataTable):
+ (WebCore::AccessibilityObject::isTableRow):
+ (WebCore::AccessibilityObject::isTableColumn):
+ (WebCore::AccessibilityObject::isTableCell):
+ * page/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
+ * page/AccessibilityTable.cpp: Added.
+ (WebCore::AccessibilityTable::AccessibilityTable):
+ (WebCore::AccessibilityTable::~AccessibilityTable):
+ (WebCore::AccessibilityTable::create):
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+ (WebCore::AccessibilityTable::clearChildren):
+ (WebCore::AccessibilityTable::addChildren):
+ (WebCore::AccessibilityTable::headerContainer):
+ (WebCore::AccessibilityTable::columns):
+ (WebCore::AccessibilityTable::rows):
+ (WebCore::AccessibilityTable::rowHeaders):
+ (WebCore::AccessibilityTable::columnHeaders):
+ (WebCore::AccessibilityTable::cells):
+ (WebCore::AccessibilityTable::columnCount):
+ (WebCore::AccessibilityTable::rowCount):
+ (WebCore::AccessibilityTable::cellForColumnAndRow):
+ (WebCore::AccessibilityTable::roleValue):
+ (WebCore::AccessibilityTable::accessibilityIsIgnored):
+ (WebCore::AccessibilityTable::title):
+ (WebCore::AccessibilityTable::isDataTable):
+ * page/AccessibilityTable.h: Added.
+ * page/AccessibilityTableCell.cpp: Added.
+ (WebCore::AccessibilityTableCell::AccessibilityTableCell):
+ (WebCore::AccessibilityTableCell::~AccessibilityTableCell):
+ (WebCore::AccessibilityTableCell::create):
+ (WebCore::AccessibilityTableCell::accessibilityIsIgnored):
+ (WebCore::AccessibilityTableCell::rowIndexRange):
+ (WebCore::AccessibilityTableCell::columnIndexRange):
+ * page/AccessibilityTableCell.h: Added.
+ (WebCore::AccessibilityTableCell::isTableCell):
+ (WebCore::AccessibilityTableCell::roleValue):
+ * page/AccessibilityTableColumn.cpp: Added.
+ (WebCore::AccessibilityTableColumn::AccessibilityTableColumn):
+ (WebCore::AccessibilityTableColumn::~AccessibilityTableColumn):
+ (WebCore::AccessibilityTableColumn::create):
+ (WebCore::AccessibilityTableColumn::setParentTable):
+ (WebCore::AccessibilityTableColumn::elementRect):
+ (WebCore::AccessibilityTableColumn::size):
+ (WebCore::AccessibilityTableColumn::children):
+ (WebCore::AccessibilityTableColumn::headerObject):
+ (WebCore::AccessibilityTableColumn::headerObjectForSection):
+ (WebCore::AccessibilityTableColumn::addChildren):
+ * page/AccessibilityTableColumn.h: Added.
+ (WebCore::AccessibilityTableColumn::parentObject):
+ (WebCore::AccessibilityTableColumn::roleValue):
+ (WebCore::AccessibilityTableColumn::accessibilityIsIgnored):
+ (WebCore::AccessibilityTableColumn::isTableColumn):
+ (WebCore::AccessibilityTableColumn::setColumnIndex):
+ (WebCore::AccessibilityTableColumn::columnIndex):
+ * page/AccessibilityTableHeaderContainer.cpp: Added.
+ (WebCore::AccessibilityTableHeaderContainer::AccessibilityTableHeaderContainer):
+ (WebCore::AccessibilityTableHeaderContainer::~AccessibilityTableHeaderContainer):
+ (WebCore::AccessibilityTableHeaderContainer::create):
+ (WebCore::AccessibilityTableHeaderContainer::children):
+ (WebCore::AccessibilityTableHeaderContainer::elementRect):
+ (WebCore::AccessibilityTableHeaderContainer::size):
+ (WebCore::AccessibilityTableHeaderContainer::addChildren):
+ * page/AccessibilityTableHeaderContainer.h: Added.
+ (WebCore::AccessibilityTableHeaderContainer::roleValue):
+ (WebCore::AccessibilityTableHeaderContainer::setParentTable):
+ (WebCore::AccessibilityTableHeaderContainer::parentObject):
+ (WebCore::AccessibilityTableHeaderContainer::accessibilityIsIgnored):
+ * page/AccessibilityTableRow.cpp: Added.
+ (WebCore::AccessibilityTableRow::AccessibilityTableRow):
+ (WebCore::AccessibilityTableRow::~AccessibilityTableRow):
+ (WebCore::AccessibilityTableRow::create):
+ (WebCore::AccessibilityTableRow::accessibilityIsIgnored):
+ (WebCore::AccessibilityTableRow::headerObject):
+ * page/AccessibilityTableRow.h: Added.
+ (WebCore::AccessibilityTableRow::isTableRow):
+ (WebCore::AccessibilityTableRow::roleValue):
+ (WebCore::AccessibilityTableRow::setRowIndex):
+ (WebCore::AccessibilityTableRow::rowIndex):
+ * page/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
+ (RoleEntry::):
+ (-[AccessibilityObjectWrapper roleDescription]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+ (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
+
+2008-08-19 Steve Falkenburg <sfalken@apple.com>
+
+ Build fix.
+ Add buildfailed support to stop builds early (preventing inaccurate error messages).
+ Add missing post-build rule to Release.
+
+ * WebCore.vcproj/QTMovieWin.vcproj:
+
+2008-08-19 Keishi Hattori <casey.hattori@gmail.com>
+
+ Added support for console.count in the inspector.
+
+ Reviewed by Geoff Garen.
+
+ * page/Console.cpp:
+ (WebCore::Console::count):
+ * page/Console.h:
+ * page/Console.idl: Added console.count.
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::didCommitLoad): Clears m_counts.
+ (WebCore::InspectorController::count): Updates the count number
+ sing "title@source:line" as the identifier, and adds a
+ message to the console.
+ * page/InspectorController.h: Added m_counts.
+
+2008-08-19 Keishi Hattori <casey.hattori@gmail.com>
+
+ Clear console.time timers when changing page.
+
+ Reviewed by Geoff Garen.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::didCommitLoad):
+
+2008-08-19 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Adele.
+
+ Fix for <rdar://problem/6154695> Full-page movies flicker while playing
+ https://bugs.webkit.org/show_bug.cgi?id=20404
+
+ Ignore setVisible() when visibility doesn't change.
+
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
+ * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
+ (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
+ (WebCore::MediaPlayerPrivate::setVisible):
+
+2008-08-19 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug in the Profile view where switching sort order, then
+ switching from heavy to tree mode would show the tree in the
+ previous sort order.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20441
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ProfileView.js:
+ (WebInspector.ProfileView.prototype._changeView): Call _sortProfile
+ on the next profile before assigning it to this.profile.
+ (WebInspector.ProfileView.prototype._sortData): Call _sortProfile.
+ (WebInspector.ProfileView.prototype._sortProfile): Moves from
+ _sortData and takes a profile argument. If the profile passed in
+ matches the this.profile, then call refresh.
+
+2008-08-18 Timothy Hatcher <timothy@apple.com>
+
+ Changed the default sort order now that heavy view is the default.
+ Also fixes a bug where the heavy profile was not sorted at first.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20440
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ProfileView.js:
+ (WebInspector.ProfileView): Changed the default sort column. Also assign
+ heavyProfile to profile, so the sortSelfTimeDescending call happens
+ on the heavy profile before assigning to this.profile.
+
+2008-08-18 Timothy Hatcher <timothy@apple.com>
+
+ Add support for editing DOM properties and scope variables by double
+ clicking a property to enter edit mode.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20415
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/ObjectPropertiesSection.js:
+ (WebInspector.ObjectPropertiesSection): Set editable to true by default.
+ (WebInspector.ObjectPropertiesSection.prototype.onpopulate):
+ Factored out code into update, and calls update.
+ (WebInspector.ObjectPropertiesSection.prototype.update): Moved from onpopulate.
+ Call removeChildren since this method can be called multiple times now.
+ (WebInspector.ObjectPropertyTreeElement): Pass an empty title, the title
+ gets made later in onattach.
+ (WebInspector.ObjectPropertyTreeElement.prototype.onpopulate): Don't return early
+ if shouldRefreshChildren is true. Call removeChildren since this method can be
+ called multiple times now.
+ (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): Call startEditing.
+ (WebInspector.ObjectPropertyTreeElement.prototype.onattach): Call update.
+ (WebInspector.ObjectPropertyTreeElement.prototype.update): Update the title for
+ this element (code moved from the constructor.)
+ (WebInspector.ObjectPropertyTreeElement.prototype.updateSiblings): Recreate all
+ sibling property elements.
+ (WebInspector.ObjectPropertyTreeElement.prototype.startEditing): Call
+ WebInspector.startEditing after rememebring some context.
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingEnded): Reset the scrollLeft
+ for the list element, since it might have scrolled during editing.
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingCancelled): Call editingEnded
+ then restore the state from the context. Then call update to restore the title.
+ (WebInspector.ObjectPropertyTreeElement.prototype.editingCommitted): Call editingCancelled
+ if the user input and the previous input are the same. Call editingEnded, then call applyExpression
+ to commit the user input.
+ (WebInspector.ObjectPropertyTreeElement.prototype.applyExpression): Evaluates the input expression
+ and stores the result on the object for the property name of this element. If the expression is
+ empty, delete the property and remove the tree element.
+ * page/inspector/ScopeChainSidebarPane.js:
+ (WebInspector.ScopeChainSidebarPane.prototype.update): Set the editInSelectedCallFrameWhenPaused
+ property on each ObjectPropertiesSection.
+ (WebInspector.ScopeVariableTreeElement.prototype.onattach): Call ObjectPropertyTreeElement's onattach
+ since it is now implemented.
+ * page/inspector/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.evaluateInSelectedCallFrame): Added an updateInterface argument
+ that defaults to true if omitted. It specifies whether to call update on the scope chain.
+ * page/inspector/inspector.css: New styles.
+ * page/inspector/treeoutline.js:
+ (TreeElement.prototype._attach): Fixed an exception that fired when handling the shouldRefreshChildren
+ change. The nextSibling would exist but have a _listItemNode that didn't match the new parent.
+
+2008-08-18 Timothy Hatcher <timothy@apple.com>
+
+ Surround the expression to be evaluated in parenthesis so the
+ result of the eval is the result of the whole expression not
+ the last potential sub-expression. So evaluating {x: 123}
+ will show the Object not 123.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20428
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/Console.js:
+ (Console.prototype._evalInInspectedWindow): Add parenthesis
+ around the expression. And add couple comments.
+
+2008-08-19 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Geoff.
+
+ -Implement a page() function to extract a common code pattern.
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * page/Console.cpp:
+ (WebCore::Console::addMessage):
+ (WebCore::Console::error):
+ (WebCore::Console::info):
+ (WebCore::Console::log):
+ (WebCore::Console::dir):
+ (WebCore::Console::assertCondition):
+ (WebCore::Console::time):
+ (WebCore::Console::timeEnd):
+ (WebCore::Console::group):
+ (WebCore::Console::groupEnd):
+ (WebCore::Console::finishedProfiling):
+ (WebCore::Console::warn):
+ (WebCore::Console::framePage):
+ * page/Console.h:
+
+2008-08-12 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoff.
+
+ - eliminate JSValue::type()
+
+ * bridge/c/c_instance.cpp:
+ (KJS::Bindings::CInstance::defaultValue): Take PreferredPrimitiveType
+ argument instead of JSType argument. Removed unneeded code to handle
+ boolean, since that's never passed.
+ * bridge/c/c_instance.h: Ditto.
+
+ * bridge/c/c_utility.cpp:
+ (KJS::Bindings::convertValueToNPVariant): Use JSValue::is functions
+ instead of JSValue::type(). Removed unneeded code to handle
+ "unspecified".
+
+ * bridge/jni/jni_instance.cpp:
+ (JavaInstance::defaultValue): Take PreferredPrimitiveType argument
+ instead of JSType argument. Removed unneeded code to handle boolean.
+ * bridge/jni/jni_instance.h: Ditto.
+
+ * bridge/jni/jni_jsobject.mm:
+ (JavaJSObject::convertValueToJObject): Use JSValue::is functions
+ instead of JSValue::type().
+
+ * bridge/objc/objc_instance.h: Take PreferredPrimitiveType argument
+ instead of JSType argument. Removed unused argument.
+ * bridge/objc/objc_instance.mm:
+ (ObjcInstance::getValueOfUndefinedField): Removed unused argument.
+ (ObjcInstance::defaultValue): Take PreferredPrimitiveType argument
+ instead of JSType argument. Removed unneeded code to handle boolean
+ and another dead code path for unknown types.
+
+ * bridge/objc/objc_runtime.h: Take PreferredPrimitiveType argument
+ instead of JSType argument. Removed override of type() that caused
+ the fallback object to return "UndefinedType" when there is no
+ invokeUndefinedMethodFromWebScript:withArguments: method defined.
+ That didn't accomplish much, since most checks for undefined don't
+ ever call type().
+ * bridge/objc/objc_runtime.mm:
+ (ObjcFallbackObjectImp::defaultValue): Ditto.
+
+ * bridge/qt/qt_instance.cpp:
+ (KJS::Bindings::QtInstance::defaultValue): Take PreferredPrimitiveType
+ argument instead of JSType argument. Removed unneeded code to handle
+ boolean.
+ * bridge/qt/qt_instance.h: Ditto.
+
+ * bridge/runtime.h:
+ (KJS::Bindings::Instance::getValueOfUndefinedField): Removed
+ unsed argument.
+ * bridge/runtime_object.cpp:
+ (RuntimeObjectImp::defaultValue): Take PreferredPrimitiveType
+ argument instead of JSType argument.
+ * bridge/runtime_object.h: Ditto.
+
+2008-08-18 Maxime Britto <britto@apple.com>
+
+ Reviewed by Adele.
+
+ <rdar://6157207> Mouse pointer does not change when new window is opened after pan-scrolling original window
+ Related to the discussion from rdar://6102511 , we should disable every key event (except for the esc key which stops the panning).
+ We shouldn't be able to create another window while we are in pan scrolling.
+ Other browsers behaviors :
+ FF3 : Most of the keys are disabled, there is no way to create another window while in panscroll mode
+ IE7 : Keys are not disabled but stops immediately the panning.
+ This patch matches FF3 behavior by disabling every key but the esc key.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::stopAutoscrollTimer): Change the cursor back to the regular arrow cursor when the pannning is stopped.
+ (WebCore::EventHandler::keyEvent): When a key event is received while in panning or autoscroll we swallow the event early.
+
+2008-08-18 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Dave Hyatt.
+
+ - fix <rdar://problem/5862634> REGRESSION (3.1.1): In iChat, inline image not resizable past current size after another IM is received
+
+ Test: fast/replaced/max-width-percent.html
+
+ Added an includeMaxWidth boolean to RenderBox::calcReplaedWidth().
+ When false, max-width is not factored into the
+ calculation.
+ Changed RenderReplaced and subclasses' calcPrefWidths() to call
+ calcReplacedWidth(false) and then apply max-width only if it has a
+ fixed, positive value.
+
+ * rendering/RenderBox.cpp:
+ (WebCore::RenderBox::calcReplacedWidth):
+ * rendering/RenderBox.h:
+ * rendering/RenderImage.cpp:
+ (WebCore::RenderImage::calcReplacedWidth):
+ (WebCore::RenderImage::calcPrefWidths):
+ * rendering/RenderImage.h:
+ * rendering/RenderReplaced.cpp:
+ (WebCore::RenderReplaced::calcPrefWidths):
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::calcPrefWidths):
+ * rendering/RenderVideo.cpp:
+ (WebCore::RenderVideo::calcReplacedWidth):
+ (WebCore::RenderVideo::calcPrefWidths):
+ * rendering/RenderVideo.h:
+
+2008-08-18 Daniel Macks <dmacks@netspace.org>
+
+ Reviewed by Mark Rowe.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20410
+ More portable/self-documenting replacement for SIZE_MAX.
+
+ * platform/network/curl/FormDataStreamCurl.cpp:
+ (WebCore::FormDataStream::read):
+
+2008-08-18 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ Need to make sure we have an Animation in the AnimationList
+ before setting the initial value.
+ https://bugs.webkit.org/show_bug.cgi?id=20408
+
+ Test: fast/css/transition_shorthand_parsing.html
+
+ * css/CSSStyleSelector.cpp:
+
+2008-08-18 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/6150593> JSProfiler: Empty profiles disappear when there
+ is another profile.
+
+ * page/inspector/ProfilesPanel.js:
+
+2008-08-18 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Geoff.
+
+ <rdar://problem/6150642> REGRESSION: Closing the Web Inspector clears
+ all console messages
+
+ * page/inspector/Console.js:
+
+2008-08-18 Dirk Schulze <vbs85@gmx.de>
+
+ Reviewed by Eric Seidel.
+
+ Fixed Canvas for Cairo. Stroke and fill colors didn't work after
+ the canvas clean up.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20405
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::fill):
+ (WebCore::CanvasRenderingContext2D::stroke):
+ (WebCore::CanvasRenderingContext2D::fillRect):
+
+2008-08-17 Timothy Hatcher <timothy@apple.com>
+
+ Complete in scope variables in the Console when paused.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19115
+
+ Reviewed by Geoffrey Garen.
+
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype.completions): If the expressionString
+ is null or empty and the debugger is paused, call variablesInScopeForSelectedCallFrame
+ to get an object that declares all the in scope variables. That way
+ "top level" expressions are completed.
+ * page/inspector/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel.prototype.variablesInScopeForSelectedCallFrame):
+ Return an object that has all the variables that are in scope for the
+ selected call frame. The value of each property is just true.
+ The return object is useful for quick lookups or auto completion.
+
+2008-08-17 Cameron Zwarich <cwzwarich@uwaterloo.ca>
+
+ Not reviewed.
+
+ Speculative Qt build fix.
+
+ * bridge/qt/qt_runtime.cpp:
+ (KJS::Bindings::convertValueToQVariant):
+ (KJS::Bindings::QtRuntimeMethod::QtRuntimeMethod):
+
+2008-08-17 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Updated project files to XCode 3.1.
+
+ * manual-tests/NPN_Invoke/NPN_Invoke.xcodeproj/project.pbxproj:
+
+2008-08-17 Geoffrey Garen <ggaren@apple.com>
+
+ Reviewed by Cameron Zwarich.
+
+ Made room for a free word in JSCell.
+
+ Changed JSDOMWindowBase to store its auxiliary data in a subclass of
+ JSGlobalData, so the two could share a pointer.
+
+ Added a bunch of ASSERTs, to help catch over-sized objects.
+
+2008-08-15 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Disable dead code stripping in debug builds.
+
+ * Configurations/Base.xcconfig:
+ * WebCore.xcodeproj/project.pbxproj:
+
+2008-08-15 Mark Rowe <mrowe@apple.com>
+
+ Rubber-stamped by Geoff Garen.
+
+ <rdar://problem/6139914> Please include a _debug version of JavaScriptCore framework
+
+ * Configurations/Base.xcconfig: Factor out the debug-only settings so that they can shared
+ between the Debug configuration and debug Production variant.
+ * WebCore.xcodeproj/project.pbxproj: Enable the debug variant.
+
+2008-08-15 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Anders.
+
+ Don't start preloading body resources before the head is complete. This prevents
+ body preloads from slowing down initial display when there is limited amount
+ of bandwidth available.
+
+ Works by queuing up found body preloads to DocLoader and only issuing them
+ after document has rendering.
+
+ With bandwidth capped to 300kbit/s this speeds up cnn.com initial display by ~25% or 5s
+ without affecting complete load time.
+
+ * html/PreloadScanner.cpp:
+ (WebCore::PreloadScanner::PreloadScanner):
+ (WebCore::PreloadScanner::scanningBody):
+ (WebCore::PreloadScanner::emitTag):
+ (WebCore::PreloadScanner::emitCSSRule):
+ * html/PreloadScanner.h:
+ * loader/DocLoader.cpp:
+ (WebCore::DocLoader::preload):
+ (WebCore::DocLoader::checkForPendingPreloads):
+ (WebCore::DocLoader::requestPreload):
+ * loader/DocLoader.h:
+ * loader/loader.cpp:
+ (WebCore::Loader::Host::didFinishLoading):
+ (WebCore::Loader::Host::didFail):
+
+2008-08-15 Ada Chan <adachan@apple.com>
+
+ Use item's computed style if the render style is 0 before falling back to the <select>'s style.
+ This way style set on an <hr> within a <select> will be honored.
+
+ Reviewed by Dave Hyatt and Dan Bernstein.
+
+ * rendering/RenderMenuList.cpp:
+ (WebCore::RenderMenuList::itemStyle):
+
+2008-08-15 Antti Koivisto <antti@apple.com>
+
+ Reviewed by Oliver.
+
+ Some loader performance tweaks:
+ - Make stylesheets highest priority instead of scripts. We block script execution on stylesheets.
+ Especially if a stylesheet @imports other stylesheets it is important to get them to the front of the queue
+ to not delay rendering.
+ - Issue the first resource load for a host immediately even if the resource is low priority. TCP connection setup
+ can take long time when latency is high so it is good to get started early.
+ - When the document is fully parsed and stylesheets have been loaded there is no need to keep managing the
+ load queues. Issue remaining loads to the network layer.
+
+ * loader/loader.cpp:
+ (WebCore::Loader::determinePriority):
+ (WebCore::Loader::load):
+ (WebCore::Loader::Host::servePendingRequests):
+ * loader/loader.h:
+
+2008-08-15 Timothy Hatcher <timothy@apple.com>
+
+ Detach the script debugger when the Web Inspector's window closes.
+ This has always been the intended design, but never fully implemented.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20402
+
+ Reviewed by Adam Roben.
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::setWindowVisible): Call stopDebugging()
+ if the window is no longer visible.
+
+2008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fixes: compile with QT_NO_CONTEXTMENU
+
+ * platform/qt/PlatformMouseEventQt.cpp:
+ (WebCore::PlatformMouseEvent::PlatformMouseEvent):
+ * platform/qt/PlatformScrollBarQt.cpp:
+ (WebCore::PlatformScrollbar::handleMouseMoveEvent):
+ (WebCore::PlatformScrollbar::handleContextMenuEvent):
+
+2008-08-15 HÃ¥vard Wall <hwall@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fixes: compile with QT_NO_WHEELEVENT
+
+ * platform/qt/WheelEventQt.cpp:
+ (WebCore::PlatformWheelEvent::PlatformWheelEvent):
+
+2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
+
+ Fixed Bug 20210: Console groups are incorrect when closing and reopening the Inspector
+
+ https://bugs.webkit.org/show_bug.cgi?id=20210
+
+ Reviewed by Tim Hatcher.
+
+ * page/Console.cpp:
+ (WebCore::Console::group):
+ (WebCore::Console::groupEnd):
+ * page/Console.h:
+ (WebCore::): Removed GroupTitleMessageLevel. Added StartGroupMessaageLevel and EndGroupMessageLevel.
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::startGroup): Increments group level by
+ one and adds console message with StartGroupMessaageLevel.
+ (WebCore::InspectorController::endGroup): Decrements group level by one
+ and adds console message with EndGroupMessaageLevel.
+ * page/InspectorController.h:
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype.addMessage): Creates new ConsoleGroup
+ if the message is StartGroupMessaageLevel.
+ (WebInspector.ConsoleMessage.prototype.toMessageElement):
+ (WebInspector.ConsoleGroup.prototype.addMessage):
+ * page/inspector/inspector.js:
+
+2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
+
+ Adds support for console.dir to the Inspector
+
+ https://bugs.webkit.org/show_bug.cgi?id=19155
+
+ Reviewed by Tim Hatcher.
+
+ * bindings/js/JSConsoleCustom.cpp:
+ (WebCore::JSConsole::dir):
+ * page/Console.cpp:
+ (WebCore::Console::dir):
+ * page/Console.h: Added ObjectMessageLevel.
+ * page/Console.idl: Added console.dir.
+ * page/inspector/Console.js:
+ (WebInspector.ConsoleMessage.prototypet.toMessageElement): Creates an
+ ObjectPropertiesSection if the MessageLevel is Object.
+ * page/inspector/ObjectPropertiesSection.js: "in" operator can't be
+ used on primitive data types.
+ * page/inspector/inspector.css:
+
+2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
+
+ Adds support for clear() in the Inspector console.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19873
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/Console.js:
+
+2008-08-15 Anthony Ricaud <rik24d@gmail.com>
+
+ Cmd-F on Mac or Ctrl-F on other platforms now focus the search field.
+
+ Platform distinction and modifier key matching adjusted
+ by Daniel Jalkut <jalkut@red-sweater.com>
+
+ Bug 16313: text search (find) keybindings should work in the Web Inspector
+ https://bugs.webkit.org/show_bug.cgi?id=16313
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/inspector.js: Added a case for the F key
+
+2008-08-15 Keishi Hattori <casey.hattori@gmail.com>
+
+ Fix for error when the string doesn't contain a webkit-profile link.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20399
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/inspector.js:
+
+2008-08-15 Timothy Hatcher <timothy@apple.com>
+
+ Fixes two bugs where JavaScript could be executed from the page
+ while the debugger is paused.
+
+ The first issue was JSLazyEventListener not checking the paused
+ state before parsing the code.
+
+ The second issue was with the PageGroup version of
+ JavaScriptDebugServer::setJavaScriptPaused always passing false
+ to the Page version of JavaScriptDebugServer::setJavaScriptPaused,
+ and not the paused argument.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20284
+
+ Reviewed by Adam Roben.
+
+ * bindings/js/JSEventListener.cpp:
+ (WebCore::JSLazyEventListener::parseCode): Check the paused
+ state of the ScriptController. Return early if paused.
+ * manual-tests/inspector/debugger-execution-while-paused.html: Added.
+ * page/JavaScriptDebugServer.cpp:
+ (WebCore::JavaScriptDebugServer::setJavaScriptPaused):
+ Pass the paused argument to the Page version of setJavaScriptPaused.
+
+2008-08-15 Alexey Proskuryakov <ap@webkit.org>
+
+ Reviewed by Geoff Garen.
+
+ JSStringRef is created context-free, but can get linked to one via an identifier table,
+ breaking an implicit API contract.
+
+ * page/InspectorController.cpp:
+ (WebCore::jsStringRef):
+ (WebCore::InspectorController::didParseSource):
+ (WebCore::InspectorController::failedToParseSource):
+ * page/JavaScriptProfile.cpp:
+ (WebCore::getTitleCallback):
+ Updated for JavaScriptCore changes.
+
+2008-08-14 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx !USE(WXGC) build fix. This is necessary until we find a way to replace GDI with
+ an alternative that performs reasonably well. (GDI+ is too slow in many cases.)
+
+ * platform/graphics/AffineTransform.h:
+
+2008-08-14 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Adele.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=20388
+ <video> elements on Windows never becomes visible when a page is restored from the cache
+
+ Always pass "set" calls down to MediaPlayerPrivate instead of only when the
+ value is different from the cached value. Let the implementation decide when
+ to avoid work because nothing has changed.
+
+ * platform/graphics/MediaPlayer.cpp:
+ (WebCore::MediaPlayer::setVolume):
+ (WebCore::MediaPlayer::setRate):
+ (WebCore::MediaPlayer::setRect):
+ (WebCore::MediaPlayer::setVisible):
+
+2008-08-14 Keishi Hattori <casey.hattori@gmail.com>
+
+ Make Firebug command line API respect predefined variables.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20385
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/Console.js:
+
+2008-08-14 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Geoffrey Garen and Timothy Hatcher.
+
+ Allow programatically setting the HTMLTokenizers time delay and chunk size
+ which are used for determining how aggressively we yield.
+
+ * WebCore.base.exp:
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::begin):
+ (WebCore::HTMLTokenizer::continueProcessing):
+ * html/HTMLTokenizer.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ (WebCore::Page::setCustomHTMLTokenizerTimeDelay):
+ (WebCore::Page::setCustomHTMLTokenizerChunkSize):
+ * page/Page.h:
+ (WebCore::Page::hasCustomHTMLTokenizerTimeDelay):
+ (WebCore::Page::customHTMLTokenizerTimeDelay):
+ (WebCore::Page::hasCustomHTMLTokenizerChunkSize):
+ (WebCore::Page::customHTMLTokenizerChunkSize):
+
+2008-08-14 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Beth.
+
+ Move us one step closer to cross-platform svg/graphics code
+
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/CanvasStyle.cpp:
+ * platform/graphics/Color.cpp:
+ (WebCore::colorWithOverrideAlpha):
+ * platform/graphics/Color.h:
+ * svg/graphics/cg/CgSupport.cpp:
+ (WebCore::applyStrokeStyleToContext):
+ (WebCore::strokeBoundingBox):
+ * svg/graphics/cg/SVGPaintServerSolidCg.cpp:
+ (WebCore::SVGPaintServerSolid::setup):
+
+2008-08-14 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Alexey.
+
+ Remove un-need includes from HTMLCanvas and use the
+ Gradient platform abstraction in one place in CanvasStyle
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::fillRect):
+ * html/CanvasStyle.cpp:
+ * html/HTMLCanvasElement.cpp:
+
+2008-08-14 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Alexey.
+
+ Clean up GlyphBuffer.h, removing more #ifdefs
+
+ * platform/graphics/GlyphBuffer.h:
+ (WebCore::GlyphBuffer::glyphAt):
+ (WebCore::GlyphBuffer::advanceAt):
+ (WebCore::GlyphBuffer::add):
+
+2008-08-14 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam.
+
+ Clean up AffineTransform.h, removing #ifdefs
+
+ * platform/graphics/AffineTransform.h:
+ * platform/graphics/cairo/AffineTransformCairo.cpp:
+ * platform/graphics/cg/AffineTransformCG.cpp:
+ * platform/graphics/qt/AffineTransformQt.cpp:
+ * platform/graphics/wx/AffineTransformWx.cpp:
+
+2008-08-14 Dan Bernstein <mitz@apple.com>
+
+ - fix non-CG builds by adding an ImageSource::frameSizeAtIndex() that returns size().
+
+ * platform/graphics/cairo/ImageSourceCairo.cpp:
+ (WebCore::ImageSource::frameSizeAtIndex):
+ * platform/graphics/qt/ImageSourceQt.cpp:
+ (WebCore::ImageSource::frameSizeAtIndex):
+ * platform/graphics/wx/ImageSourceWx.cpp:
+ (WebCore::ImageSource::frameSizeAtIndex):
+
+2008-08-14 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Brady Eidson.
+
+ - fix <rdar://problem/5993323> REGRESSION (r34210): Apple.com favicon appears stretched/clipped
+
+ * platform/graphics/BitmapImage.cpp:
+ (WebCore::BitmapImage::BitmapImage): Added initialization of
+ m_hasUniformFrameSize.
+ (WebCore::BitmapImage::cacheFrame): Added code to get the size of the
+ cached frame for use in decoded size computation and for setting
+ m_hasUniformFrameSize.
+ (WebCore::BitmapImage::currentFrameSize): Added.
+ (WebCore::BitmapImage::dataChanged): Added code to reset
+ m_hasUniformFrameSize.
+ * platform/graphics/BitmapImage.h: Added currentFrameSize() and
+ m_hasUniformFrameSize.
+ * platform/graphics/ImageSource.h: Added frameSizeAtIndex().
+ * platform/graphics/cg/ImageCG.cpp:
+ (WebCore::BitmapImage::draw): Changed to use currentFrameSize(). This
+ fixes the bug, which resulted from assuming that the frame being drawn
+ was the same size as the first frame.
+ * platform/graphics/cg/ImageSourceCG.cpp:
+ (WebCore::ImageSource::frameSizeAtIndex): Renamed size() to this and
+ changed to get the size of the frame at the given index.
+ (WebCore::ImageSource::size): Added. Returns frameSizeAtIndex(0).
+
+2008-08-13 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Eric Seidel
+
+ Fix @font-face inside @media rule crash.
+ https://bugs.webkit.org/show_bug.cgi?id=20367
+
+ Test: fast/css/font-face-in-media-rule.html
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSRuleSet::addRulesFromSheet):
+
+2008-08-14 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fixes after recent changes to Canvas and Image classes.
+
+ * platform/graphics/Pattern.h:
+ * platform/graphics/wx/GradientWx.cpp:
+ (WebCore::Gradient::fill):
+ * platform/graphics/wx/GraphicsContextWx.cpp:
+ (WebCore::GraphicsContext::applyFillPattern):
+ (WebCore::GraphicsContext::applyStrokePattern):
+ * platform/graphics/wx/ImageBufferWx.cpp:
+ (WebCore::ImageBuffer::image):
+ * platform/graphics/wx/ImageWx.cpp:
+ (WebCore::Image::loadPlatformResource):
+
+2008-08-14 Maxime Britto <britto@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ rdar://6102511
+ When pan-scrolling, typing on the keyboard should either stop the pan scroll or be ignored
+ IE and FF are both preventing the keyboard event to interact with the page while scrolling.
+ Some differences exist between them concerning the kind of key which is pressed :
+ IE7 : every key leads to a stop of the panning
+ FF3 : the ESC and TAB keys leads to a stop, the other keys are inactive.
+ For WebKit this patch is adopting the FF3 behavior except for the TAB key which is inactive too.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::keyEvent): Verifies which key has been hit and decide either to stop the pan scroll or to swallow the key event.
+
+2008-08-14 Christian Dywan <christian@twotoasts.de>
+
+ Gtk+/ Cairo build fix, patch by Dirk Schulze.
+
+ * html/CanvasStyle.cpp:
+ * platform/graphics/cairo/PatternCairo.cpp:
+ (WebCore::Pattern::createPlatformPattern):
+ * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
+
+2008-08-14 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ <rdar://problem/6115819> Notify of profile in console
+
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::addProfile):
+ (WebCore::InspectorController::addProfileMessageToConsole): Called by
+ addProfile this is the function that adds a message to the console that
+ a profile finished.
+ * page/InspectorController.h:
+ * page/JavaScriptProfile.cpp: Expose the profiler's unique ID to match
+ the console log to the profile in the web inspector.
+ (WebCore::getUniqueIdCallback):
+ (WebCore::ProfileClass):
+ * page/inspector/ProfilesPanel.js: Created a map of all the profiles by
+ Id to bring up the requested profile. Also select and reveal the
+ profile in the profile panel. And created displayTitleForProfileLink()
+ which formats a title taking into account if it's user initiated or if
+ there are multiples. Lasty, I put the user initiated profile in a
+ variable.
+ * page/inspector/inspector.js: Make the profile title be a clickable
+ link that will take the user to the identified profile. Also expose
+ the count of user initiated profiles so they can be displayed in the
+ console with the correct count.
+
+2008-08-14 Timothy Hatcher <timothy@apple.com>
+
+ Avoid formating ConsoleMessages twice unless the message will be
+ displayed in bubbles of a SourceFrame.
+
+ Reviewed by Kevin McCullough.
+
+ * page/inspector/Console.js:
+ (WebInspector.ConsoleMessage): Only format the plain text message
+ if the URL and line are valid and the level is error or warning.
+ (WebInspector.ConsoleMessage.prototype.isErrorOrWarning): Added.
+ Helper to test for error or warning level.
+ * page/inspector/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype.addMessage): Don't add the
+ message if there is no message or valid line or if the msg
+ isn't an error or warning.
+
+2008-08-14 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ partial Gtk build fix, not reviewed
+
+ * platform/graphics/cairo/PatternCairo.cpp:
+
+2008-08-13 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Fix style issue.
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::pickMedia):
+
+2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Build fix for Cairo, not reviewed. (exposed by gtk build slave)
+ Continue Erics build fixes, after the Image cleanup.
+
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::image):
+
+2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Build fix for Qt, not reviewed.
+ Don't declare eventuallyMarkAsParserCreated in a block wrapped by !USE_QXMLSTREAM.
+
+ * dom/XMLTokenizer.cpp:
+ (WebCore::eventuallyMarkAsParserCreated): Was erre
+
+2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Build fix, not reviewed.
+ Add ScriptElement.cpp to Gtk build.
+
+ * GNUmakefile.am:
+
+2008-08-13 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Eric.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=20372
+
+ Refactor HTMLScriptElement's code into a common base class: ScriptElement.
+ SVGScriptElement will be converted to use ScriptElement in a follow-up patch.
+
+ This resolves code duplications and allows us to completly replace the old
+ SVGScriptElement (which doesn't use CachedScript, no dynamic injected scripts etc..)
+
+ As ScriptElement, doesn't actually inherit from Element, we may want to rename
+ it, though StyleElement uses the same naming convention, so I left it as is for now.
+ Eventually we'll rename both files in future.
+
+ No functional changes yet, as SVGScriptElement doesn't yet use the new base class.
+
+ * WebCore.pro: Add new ScriptElement.cpp to build.
+ * WebCore.vcproj/WebCore.vcproj: Ditto.
+ * WebCore.xcodeproj/project.pbxproj: Ditto.
+ * WebCoreSources.bkl: Dutto.
+ * dom/ScriptElement.cpp: Added. 1:1 based on HTMLScriptElement
+ (WebCore::ScriptElement::insertedIntoDocument):
+ (WebCore::ScriptElement::removedFromDocument):
+ (WebCore::ScriptElement::childrenChanged):
+ (WebCore::ScriptElement::finishParsingChildren):
+ (WebCore::ScriptElement::handleSourceAttribute):
+ (WebCore::isSupportedJavaScriptLanguage):
+ (WebCore::ScriptElementData::ScriptElementData):
+ (WebCore::ScriptElementData::~ScriptElementData):
+ (WebCore::ScriptElementData::requestScript):
+ (WebCore::ScriptElementData::evaluateScript):
+ (WebCore::ScriptElementData::stopLoadRequest):
+ (WebCore::ScriptElementData::notifyFinished):
+ (WebCore::ScriptElementData::ignoresLoadRequest):
+ (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
+ (WebCore::ScriptElementData::scriptCharset):
+ (WebCore::ScriptElementData::scriptContent):
+ * dom/ScriptElement.h: Added.
+ (WebCore::ScriptElement::ScriptElement):
+ (WebCore::ScriptElement::~ScriptElement):
+ (WebCore::ScriptElementData::element):
+ (WebCore::ScriptElementData::createdByParser):
+ (WebCore::ScriptElementData::setCreatedByParser):
+ * dom/XMLTokenizer.cpp:
+ (WebCore::isScriptElement):
+ (WebCore::castToScriptElement):
+ (WebCore::eventuallyMarkAsParserCreated):
+ (WebCore::XMLTokenizer::startElementNs):
+ (WebCore::XMLTokenizer::endElementNs):
+ (WebCore::createXHTMLParserErrorHeader):
+ (WebCore::XMLTokenizer::insertErrorMessageBlock):
+ * html/HTMLScriptElement.cpp: Refactored code, pushed most code down to ScriptElement.
+ (WebCore::HTMLScriptElement::HTMLScriptElement):
+ (WebCore::HTMLScriptElement::~HTMLScriptElement):
+ (WebCore::HTMLScriptElement::isURLAttribute):
+ (WebCore::HTMLScriptElement::setCreatedByParser):
+ (WebCore::HTMLScriptElement::shouldExecuteAsJavaScript):
+ (WebCore::HTMLScriptElement::childrenChanged):
+ (WebCore::HTMLScriptElement::parseMappedAttribute):
+ (WebCore::HTMLScriptElement::finishParsingChildren):
+ (WebCore::HTMLScriptElement::insertedIntoDocument):
+ (WebCore::HTMLScriptElement::removedFromDocument):
+ (WebCore::HTMLScriptElement::text):
+ (WebCore::HTMLScriptElement::setText):
+ (WebCore::HTMLScriptElement::setHtmlFor):
+ (WebCore::HTMLScriptElement::setEvent):
+ (WebCore::HTMLScriptElement::charset):
+ (WebCore::HTMLScriptElement::src):
+ (WebCore::HTMLScriptElement::type):
+ (WebCore::HTMLScriptElement::scriptCharset):
+ (WebCore::HTMLScriptElement::scriptContent):
+ (WebCore::HTMLScriptElement::sourceAttributeValue):
+ (WebCore::HTMLScriptElement::charsetAttributeValue):
+ (WebCore::HTMLScriptElement::typeAttributeValue):
+ (WebCore::HTMLScriptElement::languageAttributeValue):
+ (WebCore::HTMLScriptElement::dispatchLoadEvent):
+ (WebCore::HTMLScriptElement::dispatchErrorEvent):
+ * html/HTMLScriptElement.h:
+ * svg/SVGScriptElement.cpp: Inherit from ScriptElement, don't actually use it yet.
+ * svg/SVGScriptElement.cpp:
+ (WebCore::SVGScriptElement::SVGScriptElement):
+ (WebCore::SVGScriptElement::scriptContent):
+ (WebCore::SVGScriptElement::sourceAttributeValue):
+ (WebCore::SVGScriptElement::charsetAttributeValue):
+ (WebCore::SVGScriptElement::typeAttributeValue):
+ (WebCore::SVGScriptElement::languageAttributeValue):
+ (WebCore::SVGScriptElement::dispatchLoadEvent):
+ (WebCore::SVGScriptElement::dispatchErrorEvent):
+ * svg/SVGScriptElement.h:
+ (WebCore::SVGScriptElement::setCreatedByParser):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Attempt to fix the Gtk build, no review.
+
+ I removed the bogus GraphicsContext::translatePoint() hack for Gtk in the process.
+
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ * platform/graphics/qt/GradientQt.cpp:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ * platform/gtk/RenderThemeGtk.cpp:
+ (WebCore::paintMozWidget):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Yet another attempt to fix the Qt build, no review.
+
+ * platform/graphics/qt/GradientQt.cpp:
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Attempt to fix the Windows build, no review.
+
+ * platform/win/CursorWin.cpp:
+ (WebCore::loadCursorByName):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::paint):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Attempt to fix the Windows build, no review.
+
+ * platform/win/CursorWin.cpp:
+ (WebCore::loadCursorByName):
+ * platform/win/ScrollViewWin.cpp:
+ (WebCore::ScrollView::paint):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Attempt to fix the Qt build, no review.
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::ImageBuffer::image):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Attempt to fix the Windows build, no review.
+
+ * platform/graphics/win/ImageWin.cpp:
+ (WebCore::Image::loadPlatformResource):
+ * plugins/win/PluginViewWin.cpp:
+ (WebCore::PluginView::paintMissingPluginIcon):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Another attempt to fix the Qt build, no review.
+
+ * platform/graphics/qt/ImageQt.cpp:
+ * platform/graphics/qt/StillImageQt.h:
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ No review, build fix only.
+
+ Fix mac build, due to change in new code since my patch was written.
+
+ * svg/graphics/cg/SVGResourceMaskerCg.mm:
+ (WebCore::SVGResourceMasker::applyMask):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Build fix only, no review.
+
+ Attempt to fix the Qt build.
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ * platform/graphics/qt/StillImageQt.h:
+ (WebCore::StillImage::create):
+ (WebCore::StillImage::destroyDecodedData):
+ (WebCore::StillImage::decodedSize):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Build fix only, no review.
+
+ Attempt to fix the Qt build.
+
+ * html/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Sam.
+
+ Match HTML5 spec by throwing INVALID_STATE_ERR when
+ createPattern is called and the HTMLImageElement is not
+ yet done loading the image (!isComplete)
+ https://bugs.webkit.org/show_bug.cgi?id=20351
+
+ Test: http/misc/canvas-pattern-from-incremental-image.html
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::createPattern):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Niko.
+
+ Split out a Pattern class from CanvasPattern
+ and remove all the Pattern-related #ifdefs
+ (This will break non-mac platforms! I will fix them.)
+ https://bugs.webkit.org/show_bug.cgi?id=20351
+
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ * html/CanvasPattern.cpp:
+ (WebCore::CanvasPattern::parseRepetitionType):
+ (WebCore::CanvasPattern::CanvasPattern):
+ * html/CanvasPattern.h:
+ (WebCore::CanvasPattern::create):
+ (WebCore::CanvasPattern::pattern):
+ (WebCore::CanvasPattern::originClean):
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::createPattern):
+ (WebCore::CanvasRenderingContext2D::applyStrokePattern):
+ (WebCore::CanvasRenderingContext2D::applyFillPattern):
+ * html/CanvasRenderingContext2D.h:
+ * html/HTMLCanvasElement.cpp:
+ * html/HTMLCanvasElement.h:
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::createHistoryItem):
+ * platform/graphics/GraphicsContext.h:
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+ * platform/graphics/cg/GraphicsContextCG.cpp:
+ (WebCore::GraphicsContext::clipToImageBuffer):
+ (WebCore::GraphicsContext::applyStrokePattern):
+ (WebCore::GraphicsContext::applyFillPattern):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Niko.
+
+ Make Images RefCounted (and clean up callers)
+ https://bugs.webkit.org/show_bug.cgi?id=20351
+
+ * editing/DeleteButtonController.cpp:
+ (WebCore::DeleteButtonController::createDeletionUI):
+ * loader/CachedImage.cpp:
+ (WebCore::CachedImage::CachedImage):
+ (WebCore::brokenImage):
+ (WebCore::nullImage):
+ (WebCore::CachedImage::image):
+ (WebCore::CachedImage::notifyObservers):
+ (WebCore::CachedImage::createImage):
+ * loader/CachedImage.h:
+ * loader/icon/IconRecord.cpp:
+ (WebCore::IconRecord::setImageData):
+ (WebCore::IconRecord::loadImageFromResource):
+ * loader/icon/IconRecord.h:
+ * platform/graphics/BitmapImage.h:
+ (WebCore::BitmapImage::create):
+ * platform/graphics/GeneratedImage.h:
+ * platform/graphics/Gradient.cpp:
+ * platform/graphics/Gradient.h:
+ * platform/graphics/Image.cpp:
+ (WebCore::Image::nullImage):
+ * platform/graphics/Image.h:
+ * platform/graphics/ImageBuffer.h:
+ * platform/graphics/cairo/ImageBufferCairo.cpp:
+ (WebCore::ImageBuffer::image):
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::image):
+ (WebCore::ImageBuffer::getImageData):
+ (WebCore::ImageBuffer::putImageData):
+ * platform/graphics/cg/PDFDocumentImage.h:
+ (WebCore::PDFDocumentImage::create):
+ (WebCore::PDFDocumentImage::destroyDecodedData):
+ (WebCore::PDFDocumentImage::decodedSize):
+ * platform/graphics/gtk/ImageGtk.cpp:
+ (WebCore::Image::loadPlatformResource):
+ * platform/graphics/mac/ImageMac.mm:
+ (WebCore::Image::loadPlatformResource):
+ * rendering/RenderImage.cpp:
+ * rendering/RenderLayer.cpp:
+ (WebCore::RenderLayer::paintOverflowControls):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::nativeImageForCurrentFrame):
+ * svg/graphics/SVGImage.h:
+ (WebCore::SVGImage::create):
+ (WebCore::SVGImage::destroyDecodedData):
+ (WebCore::SVGImage::decodedSize):
+ (WebCore::SVGImage::frameAtIndex):
+ * svg/graphics/cairo/SVGPaintServerPatternCairo.cpp:
+ (WebCore::SVGPaintServerPattern::setup):
+ * svg/graphics/cairo/SVGResourceMaskerCairo.cpp:
+ (WebCore::SVGResourceMasker::applyMask):
+ * svg/graphics/cg/SVGPaintServerPatternCg.cpp:
+ (WebCore::patternCallback):
+ * svg/graphics/cg/SVGResourceMaskerCg.mm:
+ (WebCore::SVGResourceMasker::applyMask):
+
+2008-08-13 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Niko.
+
+ Remove #ifdefs from CanvasStyle by using platform/Color.h
+ https://bugs.webkit.org/show_bug.cgi?id=20351
+
+ There are some down-sides to this commit.
+ This commit limits us to 255 levels of grey for calls like:
+ context.setStrokeStyle(.37, 1.0)
+ previously CG might have used up to 32bits to store the grey level
+ Since setStrokeStyle is not part of HTML5, I don't suspect the web will notice.
+
+ Likewise, setStrokeStyle/setFillStyle calls which used float colors are now limited
+ to RGBA32 (like all the rest of colors in WebCore), thus:
+ context.setStrokStyle(.37, .24, .456, .99) will now have the same precision as:
+ context.strokeStyle = "rgba(.37, .24, .456, .99)", which is to say RGBA32
+
+ If this is a problem for Dashboard, we can either roll out this commit
+ or add a beefier Color abstraction, which can be used internally by GraphicsContext
+ when keeping state, and then GraphicsContext can grow some additional set* routines
+ for setting the a grey/float/whatever fill and stroke.
+
+ * html/CanvasRenderingContext2D.cpp:
+ (WebCore::CanvasRenderingContext2D::setFillStyle):
+ * html/CanvasStyle.cpp:
+ (WebCore::CanvasStyle::CanvasStyle):
+ (WebCore::colorWithOverrideAlpha):
+ (WebCore::CanvasStyle::applyStrokeColor):
+ (WebCore::CanvasStyle::applyFillColor):
+ * html/CanvasStyle.h:
+ * platform/graphics/Color.cpp:
+ (WebCore::colorFloatToRGBAByte):
+ (WebCore::makeRGBA32FromFloats):
+ * platform/graphics/Color.h:
+
+2008-08-13 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Adele Peterson.
+
+ Fix for <rdar://problem/6137931>
+ https://bugs.webkit.org/show_bug.cgi?id=20360
+ Remove all parameters from the MIME type before checking with the MIME type registry
+
+ Tests: media/video-source-type-params.html
+
+ * html/HTMLMediaElement.cpp:
+ (WebCore::HTMLMediaElement::pickMedia): only pass the portion before the first ';'
+ to isSupportedMediaMIMEType()
+
+2008-08-13 Beth Dakin <bdakin@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Fix for <rdar://problem/6141345>
+
+ This patch refines findString and markAllMatchesForText functions'
+ interactions with disconnected frames. They no longer rely on
+ knowing where a range is relative to the visible region and work
+ with disconnected frames that contain frames.
+
+ * editing/Editor.cpp:
+ (WebCore::Editor::insideVisibleArea): Now returns a bool instead of
+ the visiblity enum.
+ (WebCore::Editor::firstVisibleRange): This now returns the very
+ first visible range in the document. It's no longer dependent on
+ searching forward.
+ (WebCore::Editor::lastVisibleRange): This now returns the very last
+ visible range in the document. It's no longer dependent on
+ searching backwards.
+ (WebCore::Editor::nextVisibleRange): This returns the next visible
+ range in the appropriate direction from the current range.
+ * editing/Editor.h:
+ * page/Frame.cpp:
+ (WebCore::Frame::findString):
+ (WebCore::Frame::markAllMatchesForText):
+
+2008-08-13 Kevin Ollivier <kevino@theolliviers.com>
+
+ wx build fix for case-sensitive platforms, like Linux.
+
+ * WebCoreSources.bkl:
+
+2008-08-13 Marco Barisione <marco.barisione@collabora.co.uk>
+
+ Reviewed by Holger Freyther.
+
+ http://bugs.webkit.org/show_bug.cgi?id=16881
+ [GTK] PlatformScreenGtk is unimplemented
+
+ Original patch by Christian Dywan.
+
+ * platform/gtk/PlatformScreenGtk.cpp:
+ (WebCore::screenDepth):
+ (WebCore::screenDepthPerComponent):
+ (WebCore::screenIsMonochrome):
+ (WebCore::screenRect):
+ (WebCore::screenAvailableRect):
+
+2008-08-13 Jan Michael Alonzo <jmalonzo@webkit.org>
+
+ Reviewed by Holger Freyther.
+
+ http://bugs.webkit.org/show_bug.cgi?id=20318
+ SharedTimerGtk should use G_PRIORITY_DEFAULT_IDLE for g_idle_add
+
+ g_idle_add is the same as g_idle_add_full with a priority of
+ G_PRIORITY_DEFAULT_IDLE, so we can safely use that.
+
+ * platform/gtk/SharedTimerGtk.cpp:
+ (WebCore::setSharedTimerFireTime):
+
+2008-08-13 Timothy Hatcher <timothy@apple.com>
+
+ Changed the InspectorController so it can be notified when the
+ attached state of the Inspector changes in WebKit.
+
+ Reviewed by Kevin McCullough.
+
+ * WebCore.base.exp: Updated the symbol for setWindowVisible.
+ * page/InspectorController.cpp:
+ (WebCore::InspectorController::setWindowVisible): Added an attached argument,
+ that defaults to false.Call setAttachedWindow with the attached argument.
+ (WebCore::InspectorController::setAttachedWindow): Call the script version
+ of setAttachedWindow.
+ * page/InspectorController.h:
+ * page/inspector/inspector.js:
+ (WebInspector.setAttachedWindow): Set the attached property.
+
+2008-08-12 Timothy Hatcher <timothy@apple.com>
+
+ Added a close button to the Inspector's toolbar when docked.
+
+ https://bugs.webkit.org/show_bug.cgi?id=14270
+
+ Reviewed by Kevin McCullough.
+
+ * page/InspectorController.cpp:
+ (WebCore::closeWindow): Call InspectorController::closeWindow.
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ Added closeWindow to the script class.
+ * page/InspectorController.h:
+ * page/inspector/Images/closeButtons.png: Added.
+ * page/inspector/inspector.css: Added and changed styles.
+ * page/inspector/inspector.html: Added the close button.
+ * page/inspector/inspector.js:
+ (WebInspector.loaded): Added click event listener to the close button.
+ (WebInspector.close): Call InspectorController.closeWindow.
+
+2008-08-12 Timothy Hatcher <timothy@apple.com>
+
+ Make the docked Web Inspector resizable. This is the cross platform
+ portion of the code. Each InspectorClient needs to implement the
+ real resize code.
+
+ https://bugs.webkit.org/show_bug.cgi?id=14282
+
+ Reviewed by Kevin McCullough.
+
+ * loader/EmptyClients.h: Added an empty setAttachedWindowHeight.
+ * page/InspectorClient.h: Added setAttachedWindowHeight.
+ * page/InspectorController.cpp:
+ (WebCore::setAttachedWindowHeight): Call setAttachedWindowHeight
+ on the InspectorController.
+ (WebCore::InspectorController::setAttachedWindowHeight): Call
+ setAttachedWindowHeight on the client.
+ (WebCore::InspectorController::windowScriptObjectAvailable):
+ Added setAttachedWindowHeight to the script class.
+ * page/InspectorController.h:
+ * page/inspector/inspector.css: Make the cursor on the toolbar be
+ row-resize when docked.
+ * page/inspector/inspector.js:
+ (WebInspector.loaded): Always add the toolbarDragStart event listener.
+ (WebInspector.toolbarDragStart): Return early if we are not attached
+ and not on Leopard. Call WebInspector.elementDragStart.
+ (WebInspector.toolbarDragEnd): Call WebInspector.elementDragEnd.
+ (WebInspector.toolbarDrag): When attached call setAttachedWindowHeight,
+ otherwise call moveByUnrestricted.
+
+2008-08-13 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Holger.
+
+ Initialize m_zoomsTextOnly in the Settings constructor.
+
+ * page/Settings.cpp:
+ (WebCore::Settings::Settings):
+
+2008-08-13 Brad Hughes <bhughes@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix compiling of QtWebKit in release mode with the Intel C++ Compiler for Linux
+
+ The latest upgrade of the intel compiler allows us to compile all of
+ Qt with optimizations enabled (yay!).
+
+ * WebCore.pro:
+
+2008-08-13 Prasanth Ullattil <prasanth.ullattil@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix QtWebKit not displaying content on 403 HTTP responses
+
+ Just like with 404 responses also display content with 403, as
+ used by http://audiio.ejamming.proteus-tech.com/audiio/profile/original_signup/
+
+ * platform/network/qt/QNetworkReplyHandler.cpp:
+ (WebCore::QNetworkReplyHandler::finish):
+
+2008-08-13 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Holger.
+
+ Qt part of https://bugs.webkit.org/show_bug.cgi?id=18994
+
+ Make the formatting of String::format() locale independent through the use of QString::vsprintf.
+
+ * platform/text/String.cpp:
+ (WebCore::String::format):
+
+2008-08-13 Simon Hausmann <hausmann@webkit.org>
+
+ Reviewed by Lars.
+
+ Fix QWebFrame::setHtml() not setting the new contents immediately.
+
+ Added a setter to the DocumentLoader to toggle the deferred loading of the main
+ resource when it comes from substitute data.
+
+ Disable deferred loading of the main resource when we have valid substitute data,
+ as used by QWebFrame::setHtml.
+
+ * loader/DocumentLoader.h:
+
+2008-08-13 Mark Rowe <mrowe@apple.com>
+
+ Speculative GTK build fix.
+
+ * GNUmakefile.am: Add dependency info for JSSVGElementWrapperFactory.cpp.
+
+2008-08-13 Thiago Macieira <tjmaciei@trolltech.com>
+
+ Reviewed by Simon.
+
+ Fix encoding of [ and ] in the host part of the URL
+
+ Until QUrl is fixed (making QUrl's tolerant parser more tolerant), we have to
+ add this workaround to the QUrl <> WebCore::KURL conversion operator so that it
+ doesn't encode [ and ] when they are found in the host part. That is, the
+ following URL:
+ http://[::1]/
+ is valid and should not be reencoded to:
+ http://%5b::1%5d/
+
+ * platform/qt/KURLQt.cpp:
+ (WebCore::KURL::operator QUrl):
+
+2008-08-12 Mihnea Ovidenie <mihnea@adobe.com>
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=19891
+ Broken HTML object elements cause de-reference of pointer to freed memory.
+ If we fail to load an image for an object tag and we no longer believe the object tag points at
+ an image, then clear m_imageLoader in the HTMLObjectElement so that we attempt to render the
+ fall back content.
+
+ Reviewed by Dave Hyatt and Alexey Proskuryakov.
+
+ Test: http/tests/misc/object-image-error-with-onload.html
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::renderFallbackContent):
+ * page/Frame.cpp:
+ (WebCore::Frame::Frame):
+
+2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Dave.
+
+ Fixes: https://bugs.webkit.org/show_bug.cgi?id=19798
+ Masks are translated, and the mask images are swapped on the y-axis.
+
+ Turned out that http://trac.webkit.org/changeset/31830/trunk/WebCore/svg/graphics/cg/SVGResourceMaskerCg.mm
+ is guilty. GraphicsContext::clipToImageBuffer() does some extra transformations that SVGResourcesMaskerCg does not want.
+
+ Long term goal is to remove the SVGResource*/SVGPaintServer* classes anyway, so it's okay to duplicate
+ the "clip to image buffer" functionality, in the CG specific SVGResourceMaskerCg class - as it was before.
+
+ * svg/graphics/cg/SVGResourceMaskerCg.mm:
+ (WebCore::SVGResourceMasker::applyMask): Changed back to use CG clipping again.
+
+2008-08-12 Dan Bernstein <mitz@apple.com>
+
+ - WebCore part of <rdar://problem/6121636>
+ Make fast*alloc() abort() on failure and add "try" variants that
+ return NULL on failure.
+
+ Reviewed by Darin Adler.
+
+ * platform/Arena.cpp:
+ (WebCore::ArenaAllocate): Removed null checking of fastMalloc()'s
+ result.
+ * platform/graphics/cg/ImageBufferCG.cpp:
+ (WebCore::ImageBuffer::create): Changed to use tryFastCalloc().
+
+2008-08-12 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fix https://bugs.webkit.org/show_bug.cgi?id=19348
+ <rdar://problem/5978447> REGRESSION (r34193): Setting the size of a frame with javascript document.body.row no longer works
+
+ Test: fast/frames/frameset-style-recalc.html
+
+ * html/HTMLFrameSetElement.cpp:
+ (WebCore::HTMLFrameSetElement::recalcStyle): Changed to call the base
+ class implementation after marking for layout.
+
+2008-08-12 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by John Sullivan.
+
+ - move shouldUpdateWhenOffscreen from Settings to FrameView and rename it shouldUpdateWhileHidden
+
+ * WebCore.base.exp:
+ * page/FrameView.cpp:
+ (WebCore::FrameViewPrivate::FrameViewPrivate):
+ (WebCore::FrameView::shouldUpdateWhileHidden):
+ (WebCore::FrameView::setShouldUpdateWhileHidden):
+ * page/FrameView.h:
+ * page/Settings.cpp:
+ * page/Settings.h:
+
+2008-08-12 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * bindings/js/JSSVGPODTypeWrapper.h: Align
+ JSSVGDynamicPODTypeWrapper's and JSSVGStaticPODTypeWrapperWithParent's
+ members on 16-byte boundaries to avoid an alignment warning.
+
+2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Oliver.
+
+ Add new dynamice-update layout tests covering SVGMarkerElement.
+ Fix bug: SVGMarkerElement's SVG DOM function calls don't update rendering.
+ Fix orientAngle/orientType confusion: "auto" orient should always return "0" as angle.
+
+ Tests: svg/dynamic-updates/SVGMarkerElement-dom-markerHeight-attr.html
+ svg/dynamic-updates/SVGMarkerElement-dom-markerUnits-attr.html
+ svg/dynamic-updates/SVGMarkerElement-dom-markerWidth-attr.html
+ svg/dynamic-updates/SVGMarkerElement-dom-orient-attr.html
+ svg/dynamic-updates/SVGMarkerElement-dom-refX-attr.html
+ svg/dynamic-updates/SVGMarkerElement-dom-refY-attr.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-markerHeight-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-markerUnits-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-markerWidth-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-orientAngle-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-orientType-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-refX-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-refY-prop.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAngle-call.html
+ svg/dynamic-updates/SVGMarkerElement-svgdom-setOrientToAuto-call.html
+
+ * svg/SVGMarkerElement.cpp:
+ (WebCore::SVGMarkerElement::SVGMarkerElement):
+ (WebCore::SVGMarkerElement::parseMappedAttribute):
+ (WebCore::SVGMarkerElement::svgAttributeChanged):
+ (WebCore::SVGMarkerElement::childrenChanged):
+ (WebCore::SVGMarkerElement::setOrientToAuto):
+ (WebCore::SVGMarkerElement::setOrientToAngle):
+ (WebCore::SVGMarkerElement::canvasResource):
+
+2008-08-12 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Oliver.
+
+ Add new dynamic-update layout tests covering SVGImageElement.
+ Fix bug: SVGImageElement doesn't react on 'preserveAspectRatio' changes.
+
+ Tests: svg/dynamic-updates/SVGImageElement-dom-height-attr.html
+ svg/dynamic-updates/SVGImageElement-dom-preserveAspectRatio-attr.html
+ svg/dynamic-updates/SVGImageElement-dom-width-attr.html
+ svg/dynamic-updates/SVGImageElement-dom-x-attr.html
+ svg/dynamic-updates/SVGImageElement-dom-y-attr.html
+ svg/dynamic-updates/SVGImageElement-svgdom-height-prop.html
+ svg/dynamic-updates/SVGImageElement-svgdom-preserveAspectRatio-prop.html
+ svg/dynamic-updates/SVGImageElement-svgdom-width-prop.html
+ svg/dynamic-updates/SVGImageElement-svgdom-x-prop.html
+ svg/dynamic-updates/SVGImageElement-svgdom-y-prop.html
+
+ * svg/SVGImageElement.cpp:
+ (WebCore::SVGImageElement::svgAttributeChanged):
+
+2008-08-11 Anthony Ricaud <rik24d@gmail.com>
+
+ Changed Option/Alt-Up or Down in CSS editing when the value is
+ near zero to jump to the next integer.
+
+ Reviewed by Tim Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20326
+
+ * page/inspector/StylesSidebarPane.js:
+
+2008-08-11 Anthony Ricaud <rik24d@gmail.com>
+
+ Changed the line highlight transition for an easier animation.
+
+ Reviewed by Tim Hatcher.
+
+ * page/inspector/SourceFrame.js:
+
+2008-08-11 Keishi Hattori <casey.hattori@gmail.com>
+
+ Added support for some Firebug Command Line APIs.
+
+ Reviewed by Tim Hatcher.
+
+ https://bugs.webkit.org/show_bug.cgi?id=19867
+ https://bugs.webkit.org/show_bug.cgi?id=19868
+ https://bugs.webkit.org/show_bug.cgi?id=19869
+ https://bugs.webkit.org/show_bug.cgi?id=19875
+ https://bugs.webkit.org/show_bug.cgi?id=19876
+ https://bugs.webkit.org/show_bug.cgi?id=19880
+
+ * page/inspector/Console.js:
+ (WebInspector.Console.prototype._evalInInspectedWindow):
+ Create an object on the inspected window that holds the console
+ command line API functions. This object is used in a with statement
+ around the typed expression.
+
+2008-08-11 Nikolas Zimmermann <zimmermann@kde.org>
+
+ Reviewed by Antti.
+
+ Fixes: http://bugs.webkit.org/show_bug.cgi?id=17736
+
+ JS wrapper objects around SVG POD types, that contain other SVG POD types with writable properties
+ failed to update. Modification of the values were completly ignored (ie. transform.matrix.a = 50, didn't take any effect)
+
+ Added tests: svg/custom/svg-modify-currentTranslate.html
+ svg/custom/tearoffs-with-tearoffs.html
+ svg/custom/immutable-properties.html
+
+ Fixed tests: svg/dynamic-updates/SVGLinearGradientElement-svgdom-gradientTransform-prop.html
+
+ * bindings/js/JSSVGPODTypeWrapper.h:
+ (WebCore::JSSVGDynamicPODTypeWrapper::commitChange):
+ (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::create):
+ (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::commitChange):
+ (WebCore::JSSVGStaticPODTypeWrapperWithPODTypeParent::JSSVGStaticPODTypeWrapperWithPODTypeParent):
+ (WebCore::JSSVGStaticPODTypeWrapperWithParent::create):
+ (WebCore::JSSVGStaticPODTypeWrapperWithParent::operator PODType):
+ (WebCore::JSSVGStaticPODTypeWrapperWithParent::commitChange):
+ (WebCore::JSSVGStaticPODTypeWrapperWithParent::JSSVGStaticPODTypeWrapperWithParent):
+ * bindings/scripts/CodeGenerator.pm:
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * svg/SVGSVGElement.idl: Add [Immutable] markers to SVG POD attributes, that contain POD types with writable attributes.
+ * svg/SVGZoomEvent.idl: SVG specification explicitely demands these attributes to be readonly, even its content.
+
+2008-08-11 Brady Eidson <beidson@apple.com>
+
+ Reviewed by John and Anders
+
+ Fix for <rdar://problem/6141797>
+
+ When WebArchives were entirely a WebKit concept, there was a guarantee that a WebResource
+ would never have nil data.
+
+ When they were pushed down into WebCore, that guarantee was lost, subtly changing a few
+ semantics with some WebKit applications.
+
+ The guarantee was a good one and should be restored.
+
+ Note that ApplicationCacheResource doesn't need any updates to follow this rule as it already
+ creates an empty data object in the case of null data for its own purposes.
+
+ * loader/SubstituteResource.h:
+ (WebCore::SubstituteResource::SubstituteResource): ASSERT that the data is not null. This
+ well help any future subclassers not make this mistake.
+
+ * loader/archive/ArchiveResource.cpp:
+ (WebCore::ArchiveResource::create): Return 0 if the data is null.
+
+2008-08-11 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dave Hyatt
+
+ https://bugs.webkit.org/show_bug.cgi?id=20328
+ Fix a problem when an 'all' transition transition with more than
+ one property changing is interrupted, and did some AnimationController
+ cleanup.
+
+ Test: transitions/interrupted-all-transition.html
+
+ * page/AnimationController.cpp:
+ (WebCore::ImplicitAnimation::ImplicitAnimation):
+ (WebCore::AnimationControllerPrivate::blendProperties):
+ (WebCore::CompositeAnimation::updateTransitions):
+ (WebCore::CompositeAnimation::cleanupFinishedAnimations):
+ (WebCore::CompositeAnimation::setTransitionStartTime):
+ (WebCore::CompositeAnimation::overrideImplicitAnimations):
+ (WebCore::CompositeAnimation::resumeOverriddenImplicitAnimations):
+ (WebCore::ImplicitAnimation::animate):
+ (WebCore::ImplicitAnimation::onAnimationEnd):
+ (WebCore::ImplicitAnimation::sendTransitionEvent):
+ (WebCore::ImplicitAnimation::affectsProperty):
+ (WebCore::KeyframeAnimation::endAnimation):
+ (WebCore::KeyframeAnimation::onAnimationEnd):
+
+2008-08-11 Kevin McCullough <kmccullough@apple.com>
+
+ Reviewed by Tim.
+
+ - Because console messages have group levels now, newly created messages
+ that do not specify the level lose their message since the number of
+ arguments is wrong.
+
+ * page/inspector/Console.js:
+ * page/inspector/Resource.js:
+
+2008-08-11 Alp Toker <alp@nuanti.com>
+
+ Build fix. Add new files from r35666 (WebKitAnimationEvent). Also take
+ the opportunity to sort the sources lists.
+
+ * GNUmakefile.am:
+
+2008-08-11 Timothy Hatcher <timothy@apple.com>
+
+ Speed up the the JavaScript syntax highlighter by generating
+ the finders only once per script instead of per line.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20346
+
+ Reviewed by Adam Roben.
+
+ * page/inspector/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
+ Removed, factored into syntaxHighlightJavascript as an inline function.
+ (WebInspector.SourceFrame.prototype.syntaxHighlightJavascript):
+ Pulled in the _syntaxHighlightJavascriptLine so it will create a closure.
+ Generate the finders before iterating the lines.
+
+2008-08-11 Adam Roben <aroben@apple.com>
+
+ Windows build fix
+
+ * WebCore.vcproj/WebCore.vcproj: Added JSWebKitAnimationEvent.cpp and
+ JSWebKitTransitionEvent.cpp to the project. Let VS reformat the file,
+ too.
+
+2008-08-11 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Darin Adler.
+
+ - fix <rdar://problem/6131096> Reproducible crash in CounterNode::isReset under guard malloc
+
+ Test: fast/css/counters/invalidate-cached-counter-node.html
+
+ * rendering/RenderContainer.cpp:
+ (WebCore::RenderContainer::invalidateCounters): Added. Invalidates all
+ RenderCounters in :before and :after content.
+ * rendering/RenderContainer.h:
+ * rendering/RenderCounter.cpp:
+ (WebCore::RenderCounter::isCounter): Renamed isRenderCounter() to this
+ to match the RenderObject method.
+ (WebCore::RenderCounter::invalidate): Added. Resets the cached
+ CounterNode and invalidates the object's layout and preferred widths.
+ (WebCore::destroyCounterNodeChildren): Added a call to
+ invalidateCounters().
+ * rendering/RenderCounter.h:
+ * rendering/RenderObject.h:
+ (WebCore::RenderObject::invalidateCounters):
+
+2008-08-11 Dean Jackson <dino@apple.com>
+
+ Implement CSS Animation and Transition Events
+ https://bugs.webkit.org/show_bug.cgi?id=20337
+
+ Implement the events defined in the CSS Animations
+ and Transitions specifications so code can react
+ to animations and transitions.
+
+ Reviewed by Tim Hatcher and Dave Hyatt.
+
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * WebCoreSources.bkl:
+ Build configs for new files
+
+ * bindings/js/JSDOMWindowBase.cpp:
+ * bindings/js/JSDOMWindowBase.h:
+ * bindings/js/JSEventCustom.cpp:
+ * dom/Document.h:
+ * dom/Event.cpp:
+ * dom/Event.h:
+ * dom/EventTarget.cpp:
+ * dom/EventTargetNode.cpp:
+ * dom/EventTargetNode.h:
+ * html/HTMLElement.cpp:
+ * page/AnimationController.cpp:
+ do all the new event stuff
+
+ * html/HTMLAttributeNames.in:
+ the onwebkitanimation* and onwebkittransitionend attrs
+
+ * dom/WebKitAnimationEvent.cpp: Added.
+ * dom/WebKitAnimationEvent.h: Added.
+ * dom/WebKitAnimationEvent.idl: Added.
+ * dom/WebKitTransitionEvent.cpp: Added.
+ * dom/WebKitTransitionEvent.h: Added.
+ * dom/WebKitTransitionEvent.idl: Added.
+ New files for the events
+
+ * manual-tests/transition-events.html: Added.
+ New testfile
+
+2008-08-11 Adam Roben <aroben@apple.com>
+
+ Add a ForwardingHeader for wtf/NotFound.h
+
+ Rubberstamped by Darin Adler.
+
+ * ForwardingHeaders/wtf/NotFound.h: Added.
+
+2008-08-11 Timothy Hatcher <timothy@apple.com>
+
+ Fixes a bug where error bubbles in JavaScript resources would
+ be clobbered by the syntax highlighter.
+
+ https://bugs.webkit.org/show_bug.cgi?id=20345
+
+ Reviewed by Adam Roben.
+
+ * manual-tests/inspector/resources/script-error.js: Added.
+ * manual-tests/inspector/styled-error-bubbles-in-scripts.html: Added.
+ * page/inspector/SourceFrame.js:
+ (WebInspector.SourceFrame.prototype._addMessageToSource):
+ Check the nodeType and not the nodeName, this is less fragile.
+ (WebInspector.SourceFrame.prototype._syntaxHighlightJavascriptLine):
+ Check if the lastChild is an error bubble, if so remove it before
+ getting the line's textContent. Add the error bubble back at the end.
+
+== Rolled over to ChangeLog-2008-08-10 ==