diff options
author | Steve Block <steveblock@google.com> | 2009-12-15 10:12:09 +0000 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2009-12-17 17:41:10 +0000 |
commit | 643ca7872b450ea4efacab6188849e5aac2ba161 (patch) | |
tree | 6982576c228bcd1a7efe98afed544d840751094c /WebCore/ChangeLog | |
parent | d026980fde6eb3b01c1fe49441174e89cd1be298 (diff) | |
download | external_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.zip external_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.tar.gz external_webkit-643ca7872b450ea4efacab6188849e5aac2ba161.tar.bz2 |
Merge webkit.org at r51976 : Initial merge by git.
Change-Id: Ib0e7e2f0fb4bee5a186610272edf3186f0986b43
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r-- | WebCore/ChangeLog | 16673 |
1 files changed, 16672 insertions, 1 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog index 1727089..67567ab 100644 --- a/WebCore/ChangeLog +++ b/WebCore/ChangeLog @@ -1,3 +1,16674 @@ +2009-12-10 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=32140 + REGRESSION(r50072): Mailman administrative functionality is broken + + Test: http/tests/misc/percent-sign-in-form-field-name.html + + * platform/network/FormDataBuilder.cpp: (WebCore::appendQuotedString): Don't encode percent + sign, we never had a good reason to do that. + +2009-12-10 Kent Hansen <kent.hansen@nokia.com> + + Reviewed by Geoffrey Garen. + + Remove getPropertyAttributes() from JavaScript bindings. + https://bugs.webkit.org/show_bug.cgi?id=31933 + + The functionality is provided by getOwnPropertyDescriptor(). + + * WebCore.order: + * bindings/js/JSDOMWindowCustom.cpp: + * bindings/js/JSDOMWindowShell.cpp: + * bindings/js/JSDOMWindowShell.h: + * bindings/scripts/CodeGeneratorJS.pm: + * page/DOMWindow.idl: + +2009-12-10 Kenneth Russell <kbr@google.com> + + Reviewed by Oliver Hunt. + + Changed WebGLRenderingContext to synthesize GL errors rather than + raising JavaScript exceptions. Removed internal getError() calls + after each graphics call. The GraphicsContext3D maintains the + synthetic exceptions because only it has complete information + about certain conditions requiring them to be raised. + + Based on idea from Ilmari Heikkinen, added create3DDebugContext() + to webgl-test.js and changed the WebGL layout tests expecting + error conditions to use it. Updated expected.txt files, which now + implicitly test the OpenGL error as it is part of the exception's + message. + + Added new targeted test covering aspects of synthetic errors as + well as regression tests for bugs uncovered during its development. + + Test: fast/canvas/webgl/error-reporting.html + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::sizeInBytes): + (WebCore::WebGLRenderingContext::activeTexture): + (WebCore::WebGLRenderingContext::attachShader): + (WebCore::WebGLRenderingContext::bindAttribLocation): + (WebCore::WebGLRenderingContext::bindBuffer): + (WebCore::WebGLRenderingContext::bindFramebuffer): + (WebCore::WebGLRenderingContext::bindRenderbuffer): + (WebCore::WebGLRenderingContext::bindTexture): + (WebCore::WebGLRenderingContext::bufferData): + (WebCore::WebGLRenderingContext::bufferSubData): + (WebCore::WebGLRenderingContext::compileShader): + (WebCore::WebGLRenderingContext::createShader): + (WebCore::WebGLRenderingContext::detachShader): + (WebCore::WebGLRenderingContext::disableVertexAttribArray): + (WebCore::WebGLRenderingContext::drawArrays): + (WebCore::WebGLRenderingContext::drawElements): + (WebCore::WebGLRenderingContext::enableVertexAttribArray): + (WebCore::WebGLRenderingContext::framebufferRenderbuffer): + (WebCore::WebGLRenderingContext::framebufferTexture2D): + (WebCore::WebGLRenderingContext::getActiveAttrib): + (WebCore::WebGLRenderingContext::getActiveUniform): + (WebCore::WebGLRenderingContext::getBufferParameter): + (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): + (WebCore::WebGLRenderingContext::getParameter): + (WebCore::WebGLRenderingContext::getProgramParameter): + (WebCore::WebGLRenderingContext::getProgramInfoLog): + (WebCore::WebGLRenderingContext::getRenderbufferParameter): + (WebCore::WebGLRenderingContext::getShaderParameter): + (WebCore::WebGLRenderingContext::getShaderInfoLog): + (WebCore::WebGLRenderingContext::getShaderSource): + (WebCore::WebGLRenderingContext::getTexParameter): + (WebCore::WebGLRenderingContext::getUniform): + (WebCore::WebGLRenderingContext::getUniformLocation): + (WebCore::WebGLRenderingContext::getVertexAttrib): + (WebCore::WebGLRenderingContext::linkProgram): + (WebCore::WebGLRenderingContext::shaderSource): + (WebCore::WebGLRenderingContext::texImage2D): + (WebCore::WebGLRenderingContext::texSubImage2D): + (WebCore::WebGLRenderingContext::uniform1f): + (WebCore::WebGLRenderingContext::uniform1fv): + (WebCore::WebGLRenderingContext::uniform1i): + (WebCore::WebGLRenderingContext::uniform1iv): + (WebCore::WebGLRenderingContext::uniform2f): + (WebCore::WebGLRenderingContext::uniform2fv): + (WebCore::WebGLRenderingContext::uniform2i): + (WebCore::WebGLRenderingContext::uniform2iv): + (WebCore::WebGLRenderingContext::uniform3f): + (WebCore::WebGLRenderingContext::uniform3fv): + (WebCore::WebGLRenderingContext::uniform3i): + (WebCore::WebGLRenderingContext::uniform3iv): + (WebCore::WebGLRenderingContext::uniform4f): + (WebCore::WebGLRenderingContext::uniform4fv): + (WebCore::WebGLRenderingContext::uniform4i): + (WebCore::WebGLRenderingContext::uniform4iv): + (WebCore::WebGLRenderingContext::uniformMatrix2fv): + (WebCore::WebGLRenderingContext::uniformMatrix3fv): + (WebCore::WebGLRenderingContext::uniformMatrix4fv): + (WebCore::WebGLRenderingContext::useProgram): + (WebCore::WebGLRenderingContext::validateProgram): + (WebCore::WebGLRenderingContext::vertexAttribPointer): + * html/canvas/WebGLRenderingContext.h: + (WebCore::WebGLRenderingContext::cleanupAfterGraphicsCall): + * platform/graphics/GraphicsContext3D.h: + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::getActiveAttrib): + (WebCore::GraphicsContext3D::getActiveUniform): + (WebCore::GraphicsContext3D::getError): + (WebCore::GraphicsContext3D::synthesizeGLError): + +2009-12-10 Stephen White <senorblanco@chromium.org> + + Reviewed by Dimitri Glazkov. + + Fix for assert on Chrome/skia with SVG Filters enabled. + https://bugs.webkit.org/show_bug.cgi?id=32394 + + Covered by LayoutTests/svg/W3C-SVG-1.1/filters-tile-01-b.svg and others. + + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::ImageBuffer::platformTransformColorSpace): + +2009-12-10 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + REGRESSION(4.0.4-42a12): With 2 highlighted lines of text in gmail/hotmail selecting Bold selects other 2 edit buttons automatically. + <rdar://problem/7442065> + https://bugs.webkit.org/show_bug.cgi?id=32285 + + When examining the styles of the nodes after the first in a range selection, we take into + cosideration differences in style of txt nodes only. + + Test: editing/execCommand/queryCommandState-02.html + + * editing/Editor.cpp: + (WebCore::Editor::selectionHasStyle): + +2009-12-10 Oliver Hunt <oliver@apple.com> + + Reviewed by Alexey Proskuryakov. + + Crash in XMLTokenizer::popCurrentNode if window.close() is called during parsing + https://bugs.webkit.org/show_bug.cgi?id=31576 + + Add a RefCounted wrapper object around xmlParserCtxtPtr so we can + maintain it's lifetime more effectively. + + Test: fast/parser/xhtml-close-while-parsing.xhtml + + * dom/XMLTokenizer.cpp: + (WebCore::XMLTokenizer::popCurrentNode): + * dom/XMLTokenizer.h: + (WebCore::XMLParserContext::context): + (WebCore::XMLParserContext::XMLParserContext): + (WebCore::XMLTokenizer::context): + * dom/XMLTokenizerLibxml2.cpp: + (WebCore::XMLParserContext::createStringParser): + (WebCore::XMLParserContext::createMemoryParser): + (WebCore::XMLParserContext::~XMLParserContext): + (WebCore::XMLTokenizer::~XMLTokenizer): + (WebCore::XMLTokenizer::doWrite): + (WebCore::XMLTokenizer::initializeParserContext): + (WebCore::XMLTokenizer::doEnd): + (WebCore::XMLTokenizer::lineNumber): + (WebCore::XMLTokenizer::columnNumber): + (WebCore::XMLTokenizer::stopParsing): + (WebCore::parseXMLDocumentFragment): + (WebCore::parseAttributes): + +2009-12-10 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: debugger shortcuts don't work when + Search field or Console drawer has focus. + + https://bugs.webkit.org/show_bug.cgi?id=32392 + + * inspector/front-end/inspector.js: + (WebInspector.loaded): + (WebInspector.documentKeyDown): + (WebInspector.documentKeyUp): + (WebInspector.searchKeyDown): + +2009-12-10 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Adam Barth. + + [V8] Events created in isolated worlds may fire in main world. + https://bugs.webkit.org/show_bug.cgi?id=32386 + + Test: http/tests/security/isolatedWorld/events.html + + * WebCore.gypi: Added WorldContextHandle. + * bindings/v8/ScriptEventListener.cpp: + (WebCore::createAttributeEventListener): Added WorldContextHandle params. + * bindings/v8/SharedPersistent.h: Fixed a few style/include issues. + * bindings/v8/V8AbstractEventListener.cpp: + (WebCore::V8AbstractEventListener::V8AbstractEventListener): Added WorldContextHandle params. + (WebCore::V8AbstractEventListener::handleEvent): Adjusted context retrieval to use WorldContextHandle. + (WebCore::V8AbstractEventListener::invokeEventHandler): Ditto. + * bindings/v8/V8AbstractEventListener.h: + (WebCore::V8AbstractEventListener::worldContext): Added WorldContextHandle params. + * bindings/v8/V8EventListenerList.h: + (WebCore::V8EventListenerList::findOrCreateWrapper): Ditto. + * bindings/v8/V8LazyEventListener.cpp: + (WebCore::V8LazyEventListener::V8LazyEventListener): Ditto. + (WebCore::V8LazyEventListener::prepareListenerObject): Adjusted context retrieval to use WorldContextHandle. + * bindings/v8/V8LazyEventListener.h: + (WebCore::V8LazyEventListener::create): Added WorldContextHandle params. + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::context): Refactored to use mainWorldContext(); + (WebCore::V8Proxy::mainWorldContext): Added. + (WebCore::toV8Context): Changed to use WorldContextHandle. + * bindings/v8/V8Proxy.h: Added mainWorldContext decl. + * bindings/v8/V8Utilities.cpp: + (WebCore::reportException): Added an extra check to avoid crashes during frame teardown. + * bindings/v8/V8WorkerContextEventListener.cpp: + (WebCore::V8WorkerContextEventListener::V8WorkerContextEventListener): Added WorldContextHandle params. + * bindings/v8/V8WorkerContextEventListener.h: + (WebCore::V8WorkerContextEventListener::create): Added WorldContextHandle params. + * bindings/v8/WorldContextHandle.cpp: Added. + * bindings/v8/WorldContextHandle.h: Added. + * bindings/v8/custom/V8CustomEventListener.cpp: + (WebCore::V8EventListener::V8EventListener): Added WorldContextHandle params. + * bindings/v8/custom/V8CustomEventListener.h: + (WebCore::V8EventListener::create): Added WorldContextHandle params. + +2009-12-10 Jon Honeycutt <jhoneycutt@apple.com> + + Pass more information about a plug-in to the PluginHalterDelegate + + Reviewed by Adam Roben. + + * loader/EmptyClients.h: + Remove this unused class. + + * page/HaltablePlugin.h: + Add new functions to return the plug-in's name and whether it is + windowed. + + * page/PluginHalter.cpp: + (WebCore::PluginHalter::timerFired): + Pass new arguments to the client. + + * page/PluginHalterClient.h: + Add new parameters. + + * plugins/PluginView.cpp: + (WebCore::PluginView::pluginName): + Return the name from the PluginPackage. + + * plugins/PluginView.h: + (WebCore::PluginView::isWindowed): + +2009-12-09 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Pavel Feldman. + + Fixes <http://webkit.org/b/31738>. + Web Inspector: Console Scope Bar should be on top of console when Console is a Panel. + + When the console is set to be shown as a full panel, move the scope bar to the top + where it looks best. When it is only shown as a drawer, move it to the bottom, where + it originally was. This takes up less space as a drawer, and makes it more discoverable + and usable when it is the full panel. + + * inspector/front-end/ConsolePanel.js: + (WebInspector.ConsolePanel.prototype.show): Move filter bar to top. + (WebInspector.ConsolePanel.prototype.hide): Move filter bar back to bottom. + * inspector/front-end/inspector.css: + +2009-12-10 Stephen White <senorblanco@chromium.org> + + Reviewed by Dirk Schulze. + + Fix for alpha blending in SVG Filters on Chromium/skia. + https://bugs.webkit.org/show_bug.cgi?id=32378 + + Covered by LayoutTests/svg/filters/feGaussianBlur.svg and others. + + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::ImageBuffer::platformTransformColorSpace): + +2009-12-10 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Add context menu actions for DOM tree. + + https://bugs.webkit.org/show_bug.cgi?id=32348 + + * English.lproj/localizedStrings.js: + * inspector/front-end/ContextMenu.js: + (WebInspector.ContextMenu): + (WebInspector.ContextMenu.prototype.show): + (WebInspector.ContextMenu.prototype.appendItem): + (WebInspector.ContextMenu.prototype.appendSeparator): + (WebInspector.ContextMenu.prototype._itemSelected): + (WebInspector.contextMenuItemSelected): + (WebInspector.contextMenuCleared): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype._onmouseout): + (WebInspector.ElementsTreeOutline.prototype.populateContextMenu): + (WebInspector.ElementsTreeElement.prototype.ondblclick): + (WebInspector.ElementsTreeElement.prototype._startEditingFromEvent): + (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu): + (WebInspector.ElementsTreeElement.prototype._populateTextContextMenu): + (WebInspector.ElementsTreeElement.prototype._startEditing): + (WebInspector.ElementsTreeElement.prototype._addNewAttribute): + * inspector/front-end/ObjectPropertiesSection.js: + (WebInspector.ObjectPropertyTreeElement.prototype.ondblclick): + * inspector/front-end/ResourceView.js: + (WebInspector.ResourceView.prototype._toggleURLdecoding): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourceSidebarTreeElement.prototype.ondblclick): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylePropertyTreeElement.prototype): + * inspector/front-end/inspector.js: + (WebInspector.contextMenuEventFired): + * inspector/front-end/treeoutline.js: + (TreeElement.treeElementDoubleClicked): + +2009-12-09 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Oliver Hunt. + + Filters contain some leaks in untested code + https://bugs.webkit.org/show_bug.cgi?id=32325 + + Fix obvious leak in SVGFE*Lighting classes. Implement the create() idiom for + all classes in svg/graphics, that were missing it. The lighting filters aren't + implemented so far, but the associated FilterEffect objects are build, which created + these leaks. + + This removes the SVG related failures in the leaks bot. + + * svg/SVGFEDiffuseLightingElement.cpp: + (WebCore::SVGFEDiffuseLightingElement::findLights): + * svg/SVGFEDiffuseLightingElement.h: + * svg/SVGFEDistantLightElement.cpp: + (WebCore::SVGFEDistantLightElement::lightSource): + * svg/SVGFEDistantLightElement.h: + * svg/SVGFELightElement.h: + * svg/SVGFEPointLightElement.cpp: + (WebCore::SVGFEPointLightElement::lightSource): + * svg/SVGFEPointLightElement.h: + * svg/SVGFESpecularLightingElement.cpp: + (WebCore::SVGFESpecularLightingElement::findLights): + * svg/SVGFESpecularLightingElement.h: + * svg/SVGFESpotLightElement.cpp: + (WebCore::SVGFESpotLightElement::lightSource): + * svg/SVGFESpotLightElement.h: + * svg/graphics/filters/SVGDistantLightSource.h: + (WebCore::DistantLightSource::create): + (WebCore::DistantLightSource::DistantLightSource): + * svg/graphics/filters/SVGFEDiffuseLighting.cpp: + (WebCore::FEDiffuseLighting::FEDiffuseLighting): + (WebCore::FEDiffuseLighting::create): + (WebCore::FEDiffuseLighting::setLightSource): + * svg/graphics/filters/SVGFEDiffuseLighting.h: + * svg/graphics/filters/SVGFESpecularLighting.cpp: + (WebCore::FESpecularLighting::FESpecularLighting): + (WebCore::FESpecularLighting::create): + (WebCore::FESpecularLighting::setLightSource): + * svg/graphics/filters/SVGFESpecularLighting.h: + * svg/graphics/filters/SVGLightSource.h: + * svg/graphics/filters/SVGPointLightSource.h: + (WebCore::PointLightSource::create): + (WebCore::PointLightSource::PointLightSource): + * svg/graphics/filters/SVGSpotLightSource.h: + (WebCore::SpotLightSource::create): + (WebCore::SpotLightSource::SpotLightSource): + +2009-12-10 Kenneth Russell <kbr@google.com> + + Reviewed by Oliver Hunt. + + [Chromium] SporeViewer demo doesn't work in Chromium + https://bugs.webkit.org/show_bug.cgi?id=32364 + + Test: fast/canvas/webgl/bug-32364.html + + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::vertexAttribAndUniformHelperf): + (WebCore::uniformHelperi): + +2009-12-09 Beth Dakin <bdakin@apple.com> + + Reviewed by Oliver Hunt. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=32346 SVG property + -webkit-shadow should apply shadow on the result after compositing + -and corresponding- + <rdar://problem/7389404> + + Set a transparency layer when setting a shadow to apply the shadow + to the composite. + * rendering/SVGRenderSupport.cpp: + (WebCore::SVGRenderBase::prepareToRenderSVGContent): + (WebCore::SVGRenderBase::finishRenderSVGContent): + +2009-12-09 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=32332 + WebSocket events should be dispatched synchronously + + Updated websocket/tests/simple to test for the new behavior. + + When Web Sockets API says that events should be queued for async dispatch, it means something + different. We should keep this in mind when dealing with other HTML5-related specs. + + The model for HTML5 is that code running in response to network events (e.g. WebSocket or + XMLHttpRequest algorithms) runs in a separate thread of execution, and thus needs to post + async events as its only way to communicate with client code. As long as network events are + queued themselves (as they are in WebKit), there is no need to queue JS events for async + dispatch. + + * websockets/WebSocket.cpp: + (WebCore::WebSocket::didConnect): + (WebCore::WebSocket::didReceiveMessage): + (WebCore::WebSocket::didClose): + +2009-12-09 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=32355 + Assertion failure when opening a WebSocket connection + + I couldn't make a reliable test for this. Once the test from bug 32299 is landed, it + will provide partial coverage, as I was frequently seeing the assertion failure with it. + + * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::send): + It's not an error if zero is returned from platformSend() - it just means that nothing could + be pushed down to the network layer, and all data was queued for later. + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::readStreamCallback): This will no longer happen with SocketStream, + but a client can potentially destroy the handle from any callback, so we need to check that + this didn't happen. + (WebCore::SocketStreamHandle::writeStreamCallback): Ditto. + +2009-12-09 Sam Weinig <sam@webkit.org> + + Roll out 51919 and 51920. They were incorrect and unnecessary right now. + + * platform/mac/WebCoreObjCExtras.mm: + (WebCoreObjCScheduleDeallocateOnMainThread): + * platform/network/mac/NetworkStateNotifierMac.cpp: + (WebCore::NetworkStateNotifier::NetworkStateNotifier): + +2009-12-09 Steve Block <steveblock@google.com> + + Reviewed by Darin Fisher. + + Adds wtf/StdLibExtras.h include for DEFINE_STATIC_LOCAL in V8 ScriptState. + https://bugs.webkit.org/show_bug.cgi?id=32330 + + Build fix only, no new tests. + + * bindings/v8/ScriptState.cpp: Modified. Adds wtf/StdLibExtras.h include. + +2009-12-09 Steve Block <steveblock@google.com> + + Reviewed by Darin Adler. + + Adds ENABLE(INSPECTOR) guards around script binding methods that use types + defined only when INSPECTOR is enabled. + https://bugs.webkit.org/show_bug.cgi?id=32328 + + Build fix only, no new tests. + + * bindings/js/ScriptValue.cpp: Modified. Added ENABLE(INSPECTOR) guard to ScriptValue::quarantineValue. + * bindings/v8/ScriptObject.cpp: Modified. Added ENABLE(INSPECTOR) guard to some overloads of ScriptGlobalObject::set. + +2009-12-09 Steve Block <steveblock@google.com> + + Reviewed by Adam Barth. + + Adds Android Makefiles for building with V8. + Also updates existing Android Makefiles with latest additions. + https://bugs.webkit.org/show_bug.cgi?id=32278 + + Build fix only, no new tests. + + * Android.derived.jscbindings.mk: Modified. + * Android.derived.mk: Modified. + * Android.derived.v8bindings.mk: Added. + * Android.jscbindings.mk: Modified. + * Android.mk: Modified. + * Android.v8bindings.mk: Added. + +2009-12-09 Jonathan Dixon <joth@chromium.org> + + Reviewed by Dimitri Glazkov. + + Bug 32338 - [Chromium] Fix Chromium builder by including missing GeolocationServiceChromium + https://bugs.webkit.org/show_bug.cgi?id=32338 + + Fix build break: re-include file dropped out by merge in http://trac.webkit.org/changeset/51681/trunk/WebCore/WebCore.gypi + + * WebCore.gypi: Add missing GeolocationServiceChromium.cpp + +2009-12-09 Andreas Kling <andreas.kling@nokia.com> + + Reviewed by Brady Eidson. + + Fixed a typo in http://trac.webkit.org/changeset/51644 that broke + the QWebPage autotest. + + No new test required. + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::navigateToDifferentDocument): + +2009-12-09 Robert Hogan <robert@roberthogan.net> + + Reviewed by Eric Seidel. + + Exclude JSSVG*.cpp generated files from --minimal and --no-svg builds. + + https://bugs.webkit.org/show_bug.cgi?id=32286 + + * WebCore.pro: + +2009-12-09 Philippe Normand <pnormand@igalia.com> + + Reviewed by Eric Carlson. + + Ogg mimetypes are incorrect + https://bugs.webkit.org/show_bug.cgi?id=27113 + + The ogg extension is handled by audio/ogg instead of + application/ogg. See + http://wiki.xiph.org/MIME_Types_and_File_Extensions + + * platform/MIMETypeRegistry.cpp: + (WebCore::TypeExtensionPair::): + +2009-12-09 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Use the current run loop instead of the main runloop for the NetworkStateNotifier. + + * platform/network/mac/NetworkStateNotifierMac.cpp: + (WebCore::NetworkStateNotifier::NetworkStateNotifier): + +2009-12-09 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Use isMainThread() helper instead of pthread_main_np() != 0. + + * platform/mac/WebCoreObjCExtras.mm: + (WebCoreObjCScheduleDeallocateOnMainThread): + +2009-12-09 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Add some #ifdefs to allow us to experiment with a single NSView mac WebKit. + + * page/Chrome.h: + * page/EventHandler.h: + * page/mac/ChromeMac.mm: + * page/mac/DragControllerMac.mm: + (WebCore::DragController::dragOperation): + * page/mac/EventHandlerMac.mm: + (WebCore::EventHandler::eventLoopHandleMouseDragged): + (WebCore::EventHandler::eventActivatedView): + (WebCore::EventHandler::passMousePressEventToSubframe): + (WebCore::EventHandler::passMouseMoveEventToSubframe): + (WebCore::EventHandler::passMouseReleaseEventToSubframe): + (WebCore::EventHandler::passWheelEventToWidget): + (WebCore::EventHandler::focusDocumentView): + (WebCore::EventHandler::passWidgetMouseDownEventToWidget): + (WebCore::EventHandler::createDraggingClipboard): + (WebCore::isKeyboardOptionTab): + (WebCore::EventHandler::invertSenseOfTabsToLinks): + (WebCore::EventHandler::tabsToAllControls): + (WebCore::EventHandler::needsKeyboardEventDisambiguationQuirks): + (WebCore::EventHandler::accessKeyModifiers): + * platform/ScrollView.cpp: + (WebCore::ScrollView::wheelEvent): + * platform/Widget.cpp: + * platform/Widget.h: + * platform/mac/ScrollViewMac.mm: + * platform/mac/WidgetMac.mm: + (WebCore::Widget::Widget): + (WebCore::Widget::~Widget): + (WebCore::Widget::show): + (WebCore::Widget::hide): + (WebCore::Widget::setCursor): + (WebCore::Widget::paint): + (WebCore::Widget::setFocus): + (WebCore::Widget::setIsSelected): + (WebCore::Widget::frameRect): + (WebCore::Widget::setFrameRect): + +2009-12-09 Michael Nordman <michaeln@google.com> + + Reviewed by Dimitri Glazkov. + + Chromium build fix. + + No new tests. + + * bindings/v8/DOMData.cpp + * bindings/v8/V8DOMWrapper.cpp + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::vertexAttribAndUniformHelperf): + (WebCore::uniformHelperi): + (WebCore::uniformMatrixHelper): + +2009-12-09 Søren Gjesse <sgjesse@chromium.org> + + Reviewed by Pavel Feldman. + + [V8] Isolated world reuse failure + https://bugs.webkit.org/show_bug.cgi?id=32306 + + Fixed bug introduced in r51407: (http://trac.webkit.org/changeset/51407) which caused layout test + LayoutTests/http/tests/security/isolatedWorld/world-reuse.html to fail. + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::setInjectedScriptContextDebugId): + (WebCore::V8Proxy::contextDebugId): + +2009-12-09 Patrick Scott <phanna@email.unc.edu> + + Fix the build with ENABLE_ORIENTATION_EVENTS + https://bugs.webkit.org/show_bug.cgi?id=32321 + + * page/Frame.cpp: + (WebCore::Frame::sendOrientationChangeEvent): + +2009-12-09 Avi Drissman <avi@chromium.org> + + Reviewed by Darin Fisher. + + Chromium tickmarks in scrollbar now UX approved. + https://bugs.webkit.org/show_bug.cgi?id=32069 + + * platform/chromium/ScrollbarThemeChromiumMac.mm: + (WebCore::ScrollbarThemeChromiumMac::paint): + +2009-12-09 Chris Marrin <cmarrin@apple.com> + + Reviewed by Adam Roben. + + Delay load DLLs for accelerated compositing + https://bugs.webkit.org/show_bug.cgi?id=31856 + + Add logic to turn off accelerated compositing if d3d9 or QuartzCore + DLLs are not present. + + This patch also changes the WKCACFLayerRenderer to be a pointer. + This allows me to have a create() method which will not create it when + accelerated compositing is disabled because of missing DLLs. It + avoids having to do so many checks. I also made WebViewWndProc + a member function to allow several methods to be made protected, which + allows me to avoid doing availability checks there as well. + + * platform/graphics/win/WKCACFLayer.cpp: + * platform/graphics/win/WKCACFLayer.h: + * platform/graphics/win/WKCACFLayerRenderer.cpp: + * platform/graphics/win/WKCACFLayerRenderer.h: + * rendering/RenderLayerBacking.cpp: + +2009-12-09 Nate Chapin <japhet@chromium.org> + + Reviewed by Darin Adler. + + Rename dom/ClassNames to SpaceSplitString and update build files. + + https://bugs.webkit.org/show_bug.cgi?id=32250 + + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * WebCoreSources.bkl: + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::matchRules): + * dom/ClassNames.cpp: Removed. + * dom/ClassNames.h: Removed. + * dom/ClassNodeList.h: + * dom/NamedMappedAttrMap.h: + (WebCore::NamedMappedAttrMap::classNames): + * dom/SpaceSplitString.cpp: Copied from WebCore/dom/ClassNames.cpp. + (WebCore::SpaceSplitStringData::createVector): + (WebCore::SpaceSplitStringData::containsAll): + * dom/SpaceSplitString.h: Copied from WebCore/dom/ClassNames.h. + (WebCore::SpaceSplitStringData::SpaceSplitStringData): + (WebCore::SpaceSplitString::SpaceSplitString): + (WebCore::SpaceSplitString::set): + (WebCore::SpaceSplitString::containsAll): + * dom/StyledElement.h: + (WebCore::StyledElement::classNames): + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::setRel): + +2009-12-09 Stephen White <senorblanco@chromium.org> + + Reviewed by Darin Fisher. + + Enable SVG filters in Chromium build. + https://bugs.webkit.org/show_bug.cgi?id=32323 + + Covered by SVG filter layout tests. + + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/DerivedSourcesAllInOne.cpp: + * bindings/v8/V8DOMWrapper.cpp: + * bindings/v8/V8Index.cpp: + * bindings/v8/V8Index.h: + +2009-12-09 Oliver Hunt <oliver@apple.com> + + Build fix + + * bindings/js/JSWebGLRenderingContextCustom.cpp: + (WebCore::functionForUniform): + +2009-12-08 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Darin Adler. + + WebSocket allow space (U+0020) in sub protocol name. + https://bugs.webkit.org/show_bug.cgi?id=32266 + + Test: websocket/tests/sub-protocol-with-space.html + + * websockets/WebSocket.cpp: + (WebCore::isValidProtocolString): + +2009-12-08 Peterson Trethewey <petersont@google.com> + + Reviewed by Oliver Hunt. + + Implement WebGLUniformLocation and change API to use it. + https://bugs.webkit.org/show_bug.cgi?id=31173 + + Test: fast/canvas/webgl/uniform-location.html + + * DerivedSources.make: + * WebCore.gypi: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSWebGLRenderingContextCustom.cpp: + (WebCore::JSWebGLRenderingContext::getProgramParameter): + (WebCore::JSWebGLRenderingContext::getUniform): + (WebCore::functionForUniform): + (WebCore::dataFunctionf): + (WebCore::dataFunctioni): + (WebCore::dataFunctionMatrix): + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/DerivedSourcesAllInOne.cpp: + * bindings/v8/V8Index.cpp: + * bindings/v8/V8Index.h: + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::toWebGLUniformLocation): + (WebCore::): + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::isFunctionToCallForAttribute): + (WebCore::vertexAttribAndUniformHelperf): + (WebCore::uniformHelperi): + (WebCore::uniformMatrixHelper): + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::getUniform): + (WebCore::WebGLRenderingContext::getUniformLocation): + (WebCore::WebGLRenderingContext::uniform1f): + (WebCore::WebGLRenderingContext::uniform1fv): + (WebCore::WebGLRenderingContext::uniform1i): + (WebCore::WebGLRenderingContext::uniform1iv): + (WebCore::WebGLRenderingContext::uniform2f): + (WebCore::WebGLRenderingContext::uniform2fv): + (WebCore::WebGLRenderingContext::uniform2i): + (WebCore::WebGLRenderingContext::uniform2iv): + (WebCore::WebGLRenderingContext::uniform3f): + (WebCore::WebGLRenderingContext::uniform3fv): + (WebCore::WebGLRenderingContext::uniform3i): + (WebCore::WebGLRenderingContext::uniform3iv): + (WebCore::WebGLRenderingContext::uniform4f): + (WebCore::WebGLRenderingContext::uniform4fv): + (WebCore::WebGLRenderingContext::uniform4i): + (WebCore::WebGLRenderingContext::uniform4iv): + (WebCore::WebGLRenderingContext::uniformMatrix2fv): + (WebCore::WebGLRenderingContext::uniformMatrix3fv): + (WebCore::WebGLRenderingContext::uniformMatrix4fv): + * html/canvas/WebGLRenderingContext.h: + * html/canvas/WebGLRenderingContext.idl: + * html/canvas/WebGLUniformLocation.cpp: Added. + (WebCore::WebGLUniformLocation::create): + (WebCore::WebGLUniformLocation::WebGLUniformLocation): + * html/canvas/WebGLUniformLocation.h: Added. + (WebCore::WebGLUniformLocation::~WebGLUniformLocation): + (WebCore::WebGLUniformLocation::program): + (WebCore::WebGLUniformLocation::location): + * html/canvas/WebGLUniformLocation.idl: Added. + +2009-12-08 Adam Langley <agl@google.com> + + Reviewed by Darin Adler. + + Fix assertion failure in WebCore::RenderBlock::startDelayUpdateScrollInfo + + startDelayUpdateScrollInfo calls a function that can end up calling + startDelayUpdateScrollInfo again. However, it's static state is + inconsistent when this happens leading to an assertion failure (or + probably a memory leak if assertions are off). + + Thanks to Robert Swiecki for the test case. + + https://bugs.webkit.org/show_bug.cgi?id=32172 + http://code.google.com/p/chromium/issues/detail?id=28880 + + Test: fast/css/recursive-delay-update-scroll.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::finishDelayUpdateScrollInfo): + +2009-12-08 Steve Falkenburg <sfalken@apple.com> + + Reviewed by Adam Roben. + + WebCore source level debugging on Windows not reliable in some cases + https://bugs.webkit.org/show_bug.cgi?id=32297 + + Customized pdb file name/location for WebCore static library. + + * WebCore.vcproj/WebCoreCommon.vsprops: Add ProgramDataBaseFileName. + +2009-12-08 Kevin Watters <kevinwatters@gmail.com> + + Reviewed by Kevin Ollivier. + + [wx] Mac plugins support. + + https://bugs.webkit.org/show_bug.cgi?id=32236 + + * platform/FileSystem.h: + * platform/cf/BinaryPropertyList.h: + * platform/network/curl/ResourceHandleManager.cpp: + * platform/wx/FileSystemWx.cpp: + (WebCore::fileExists): + (WebCore::unloadModule): + (WebCore::wxDirTraverserNonRecursive::wxDirTraverserNonRecursive): + (WebCore::wxDirTraverserNonRecursive::OnFile): + (WebCore::wxDirTraverserNonRecursive::OnDir): + (WebCore::listDirectory): + * plugins/mac/PluginViewMac.cpp: + (WebCore::nativeWindowFor): + (WebCore::cgHandleFor): + (WebCore::topLevelOffsetFor): + (WebCore::PluginView::platformStart): + (WebCore::PluginView::setFocus): + (WebCore::PluginView::invalidateRect): + (WebCore::PluginView::handleKeyboardEvent): + (WebCore::PluginView::globalMousePosForPlugin): + * plugins/wx/PluginDataWx.cpp: Added. + (WebCore::PluginData::initPlugins): + (WebCore::PluginData::refresh): + * wscript: + +2009-12-08 Brady Eidson <beidson@apple.com> + + Reviewed by Darin Adler. + + Navigating to a cached page can result in accessing a destroyed HTMLInputElement. + <rdar://problem/6856662> and https://webkit.org/b/32293 + + Test: fast/loader/input-element-page-cache-crash.html + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::parseMappedAttribute): Make sure to unregister for the activation + callback after the new m_autocomplete setting has been stored so the unregistration actually + takes place. + +2009-12-08 Dmitry Titov <dimich@chromium.org> + + Rubber-stamped by David Levin. + + Revert and reopen "Add asserts to RefCounted to make sure ref/deref happens on the right thread." + It may have caused massive increase of reported leaks on the bots. + https://bugs.webkit.org/show_bug.cgi?id=31639 + + * ForwardingHeaders/wtf/ThreadVerifier.h: Removed. + * loader/icon/IconRecord.cpp: + (WebCore::IconRecord::IconRecord): + * platform/SharedBuffer.cpp: + (WebCore::SharedBuffer::SharedBuffer): + * platform/text/StringImpl.cpp: + (WebCore::StringImpl::StringImpl): + +2009-12-08 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Darin Fisher. + + Chromium: support custom WebCore context menu items in Chromium port. + + https://bugs.webkit.org/show_bug.cgi?id=32277 + + * platform/ContextMenu.h: + * platform/ContextMenuItem.h: + (WebCore::PlatformMenuItemDescription::PlatformMenuItemDescription): + * platform/chromium/ContextMenuChromium.cpp: + (WebCore::ContextMenu::ContextMenu): + (WebCore::ContextMenu::itemCount): + (WebCore::ContextMenu::insertItem): + (WebCore::ContextMenu::appendItem): + (WebCore::ContextMenu::itemWithAction): + (WebCore::ContextMenu::itemAtIndex): + (WebCore::ContextMenu::platformDescription): + * platform/chromium/ContextMenuItemChromium.cpp: + (WebCore::ContextMenuItem::ContextMenuItem): + (WebCore::ContextMenuItem::releasePlatformDescription): + (WebCore::ContextMenuItem::type): + (WebCore::ContextMenuItem::action): + (WebCore::ContextMenuItem::title): + (WebCore::ContextMenuItem::checked): + (WebCore::ContextMenuItem::enabled): + (WebCore::ContextMenuItem::setType): + (WebCore::ContextMenuItem::setAction): + (WebCore::ContextMenuItem::setTitle): + (WebCore::ContextMenuItem::setChecked): + (WebCore::ContextMenuItem::setEnabled): + +2009-12-08 Adam Langley <agl@google.com> + + Reviewed by Dimitri Glazkov. + + Chromium Linux: set default scrollbar colours. + + This is so that layout tests have sane defaults for the scrollbar + colours, even if the API user doesn't set any. + + This is a fix due to r51827. + + https://bugs.webkit.org/show_bug.cgi?id=32287 + + This is very well covered by existing layout tests. + + * rendering/RenderThemeChromiumLinux.cpp: + +2009-12-08 Beth Dakin <bdakin@apple.com> + + Reviewed by Sam Weinig. + + Fix for <rdar://problem/7397808> Crash occurs at + RenderObject::containingBlock() as I type in the Google Search + field (during page load) + + * editing/Editor.cpp: + (WebCore::Editor::insideVisibleArea): ownerRenderer() needs to be + null checked. + +2009-12-08 Dmitry Titov <dimich@chromium.org> + + Reviewed by Darin Adler. + + Add asserts to RefCounted to make sure ref/deref happens on the right thread. + https://bugs.webkit.org/show_bug.cgi?id=31639 + + * loader/icon/IconRecord.cpp: + (WebCore::IconRecord::IconRecord): Disable thread verification for this class because of its cross-thread use in IconDatabase. + * platform/SharedBuffer.cpp: + (WebCore::SharedBuffer::SharedBuffer): Ditto. + * platform/text/StringImpl.cpp: + (WebCore::StringImpl::StringImpl): Disable thread verification for this class, add FIXME to enforce proper usage via crossThreadString. + * ForwardingHeaders/wtf/ThreadVerifier.h: Added. + +2009-12-08 John Gregg <johnnyg@google.com> + + Reviewed by Adam Barth. + + Inform the NotificationCenter when its window goes away in the same + manner as other DOMWindow fields, and prevent invalid operations on + it after that happens. + + As part of this, change the V8 bindings for notifications to call + through the NotificationCenter rather than doing those operations + itself. + + https://bugs.webkit.org/show_bug.cgi?id=31886 + + Test: fast/notifications/notification-after-close.html + + * bindings/v8/custom/V8NotificationCenterCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * notifications/Notification.cpp: + (WebCore::Notification::Notification): + * notifications/NotificationCenter.cpp: + (WebCore::NotificationCenter::checkPermission): + (WebCore::NotificationCenter::requestPermission): + * notifications/NotificationCenter.h: + (WebCore::NotificationCenter::createHTMLNotification): + (WebCore::NotificationCenter::createNotification): + (WebCore::NotificationCenter::disconnectFrame): + * page/DOMWindow.cpp: + (WebCore::DOMWindow::clear): + +2009-12-08 Dan Bernstein <mitz@apple.com> + + Reviewed by John Sullivan. + + Fixed block selection gap repainting in table cells + + Test: fast/repaint/block-selection-gap-in-table-cell.html + + This recently-introduced regression exposed the fact that + RenderTableCell did not override offsetFromContainer() to adjust for + the fact that table cells’ coordinates are relative to the table + section, not the table row. With this fixed, RenderTableCell no longer + needs to override mapLocalToContainer() and mapAbsoluteToLocalPoint(), + since the base class implementations of those use offsetFromContainer(). + + * rendering/RenderTableCell.cpp: + (WebCore::RenderTableCell::offsetFromContainer): + * rendering/RenderTableCell.h: + +2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Sane way to force a rebuild on all win slaves, according to Adam Roben. + + * WebCorePrefix.h: + +2009-12-08 Dan Bernstein <mitz@apple.com> + + Build fix + + * loader/loader.cpp: + (WebCore::cachedResourceTypeToTargetType): + +2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Touch svgtags.in to eventually fix the win debug build. + + * svg/svgtags.in: + +2009-12-08 Mike Belshe <mike@belshe.com> + + Reviewed by Darin Fisher. + + https://bugs.webkit.org/show_bug.cgi?id=32167 + Update the ResourceRequest::RequestType. This previously + was specific to Chromium. Moved into ResourceRequestBase, enabling + more specificity about the type (which is otherwise only known to the + loader), and also making this information available to all platforms. + Any platform with a network layer which can utilize this information + may want to use it for prioritization. + + Note to Chromium glue: TargetIsSubResource renamed to TargetIsSubresource. + + * loader/loader.cpp: + (WebCore::Loader::Loader): + (WebCore::CachedResourceTypeToTargetType): + (WebCore::Loader::Host::servePendingRequests): + * platform/network/ResourceRequestBase.h: + (WebCore::ResourceRequestBase::): + (WebCore::ResourceRequestBase::targetType): + (WebCore::ResourceRequestBase::setTargetType): + (WebCore::ResourceRequestBase::ResourceRequestBase): + * platform/network/chromium/ResourceRequest.h: + (WebCore::ResourceRequest::ResourceRequest): + +2009-12-08 Steve Block <steveblock@google.com> + + Reviewed by Adam Barth. + + [Android] Adds Makefiles for Android port. + https://bugs.webkit.org/show_bug.cgi?id=31325 + + Build system change only. No tests possible. + + * Android.derived.jscbindings.mk: Added. + * Android.derived.mk: Added. + * Android.jscbindings.mk: Added. + * Android.mk: Added. + * WebCorePrefix.h: Modified. Sets up some flags and adds a header required for building on Android. + +2009-12-08 Christian Dywan <christian@twotoasts.de> + + Reviewed by Xan Lopez. + + * platform/network/soup/DNSSoup.cpp: + (WebCore::prefetchDNS): Conditionalize prefetching on + the libSoup version. + +2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> + + Rubber-stamped by Maciej Stachowiak. + + Turn on (SVG) Filters for Win. + https://bugs.webkit.org/show_bug.cgi?id=32224 + + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.vcproj/build-generated-files.sh: + * bindings/scripts/CodeGeneratorCOM.pm: Touch file to assure a world rebuild. Hopefully. + +2009-12-08 Carol Szabo <carol.szabo@nokia.com> + + Reviewed by Darin Adler. + + CSS Counter Nesting still does not work according to the spec. + https://bugs.webkit.org/show_bug.cgi?id=31723 + + Test: fast/css/counters/nesting.html + + * rendering/RenderCounter.cpp: + (WebCore::findPlaceForCounter): + Replaced the faulty counter insertion algorithm with one that works. + +2009-12-08 John Sullivan <sullivan@apple.com> + + Add isAutofilled getter to match existing setter. + + Reviewed by Ada Chan. + + * bindings/objc/DOMHTML.mm: + (-[DOMHTMLInputElement _isAutofilled]): + Implemented new cover function. + + * bindings/objc/DOMPrivate.h: + Declared new cover function. + +2009-12-08 Dominik Röttsches <dominik.roettsches@access-company.com> + + Reviewed by Gustavo Noronha Silva. + + [Gtk] Create a TextBreakIterator implementation based on GLib (without ICU) + https://bugs.webkit.org/show_bug.cgi?id=31469 + + Added a TextBreakIterator implementation based on GLib and pango, + which allows compiling WebCore without ICU. + + * GNUmakefile.am: + * platform/text/gtk/TextBreakIteratorGtk.cpp: Added. + (WebCore::): + (WebCore::setUpIterator): + (WebCore::characterBreakIterator): + (WebCore::cursorMovementIterator): + (WebCore::wordBreakIterator): + (WebCore::lineBreakIterator): + (WebCore::sentenceBreakIterator): + (WebCore::textBreakFirst): + (WebCore::textBreakLast): + (WebCore::textBreakNext): + (WebCore::textBreakPrevious): + (WebCore::textBreakPreceding): + (WebCore::textBreakFollowing): + (WebCore::textBreakCurrent): + (WebCore::isTextBreak): + +2009-12-08 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Change the way cookies are retrieved in the WebInspector frontend. + + Moved the cookie filtering from the native code into the frontend so that + all cookies can be retrieved regardless of the associated domain + (required for certain audits to run.) + https://bugs.webkit.org/show_bug.cgi?id=32160 + + Test: inspector/cookie-resource-match.html + + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::getCookies): + * inspector/InspectorBackend.h: + * inspector/InspectorBackend.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::getCookies): + * inspector/InspectorController.h: + * inspector/front-end/CookieItemsView.js: + (WebInspector.CookieItemsView.prototype.update.callback): + (WebInspector.CookieItemsView.prototype.update): + (WebInspector.CookieItemsView.prototype._cookiesForDomain): + * inspector/front-end/DOMAgent.js: + (WebInspector.Cookies.getCookiesAsync): + (WebInspector.Cookies.cookieMatchesResourceURL): + (WebInspector.Cookies.cookieDomainMatchesResourceDomain): + * inspector/front-end/Resource.js: + (WebInspector.Resource): + (WebInspector.Resource.prototype.get documentURL): + (WebInspector.Resource.prototype.set documentURL): + * inspector/front-end/inspector.js: + (WebInspector.addResource): + +2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Touch svgtags.in, in order to force SVGNames.* regeneration. Praying for gtk bot to be fixed :-) + + * svg/svgtags.in: + +2009-12-08 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Trying to force a rebuild on the Gtk slave. If that doesn't work, someone must force a rebuild from scratch. + + * bindings/scripts/CodeGeneratorJS.pm: + +2009-12-06 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: provide custom context menu in the front-end window. + + https://bugs.webkit.org/show_bug.cgi?id=32200 + + * English.lproj/localizedStrings.js: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSInspectorFrontendHostCustom.cpp: + (WebCore::JSInspectorFrontendHost::showContextMenu): + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::contextMenuItemSelected): + (WebCore::InspectorFrontend::contextMenuCleared): + * inspector/InspectorFrontend.h: + * inspector/InspectorFrontendHost.cpp: + (WebCore::InspectorFrontendHost::InspectorFrontendHost): + (WebCore::InspectorFrontendHost::~InspectorFrontendHost): + (WebCore::InspectorFrontendHost::showContextMenu): + (WebCore::InspectorFrontendHost::contextMenuItemSelected): + (WebCore::InspectorFrontendHost::contextMenuCleared): + * inspector/InspectorFrontendHost.h: + (WebCore::InspectorFrontendHost::MenuSelectionHandler::create): + (WebCore::InspectorFrontendHost::MenuSelectionHandler::~MenuSelectionHandler): + (WebCore::InspectorFrontendHost::MenuSelectionHandler::disconnect): + (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuItemSelected): + (WebCore::InspectorFrontendHost::MenuSelectionHandler::contextMenuCleared): + (WebCore::InspectorFrontendHost::MenuSelectionHandler::MenuSelectionHandler): + * inspector/InspectorFrontendHost.idl: + * inspector/front-end/ContextMenu.js: Added. + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector.loaded): + (WebInspector.documentContextMenu): + * page/ContextMenuController.cpp: + (WebCore::ContextMenuController::ContextMenuController): + (WebCore::ContextMenuController::clearContextMenu): + (WebCore::ContextMenuController::handleContextMenuEvent): + (WebCore::ContextMenuController::showContextMenu): + (WebCore::ContextMenuController::createContextMenu): + (WebCore::ContextMenuController::contextMenuItemSelected): + * page/ContextMenuController.h: + * page/ContextMenuSelectionHandler.h: Added. + (WebCore::ContextMenuSelectionHandler::ContextMenuSelectionHandler): + (WebCore::ContextMenuSelectionHandler::~ContextMenuSelectionHandler): + * platform/ContextMenu.cpp: + (WebCore::ContextMenu::checkOrEnableIfNeeded): + * platform/ContextMenuItem.h: + +2009-12-08 Andras Becsi <abecsi@inf.u-szeged.hu> + + Rubber-stamped by Kenneth Rohde Christiansen. + + [Qt] Build fix of duplicated platform/graphics/filters/FEGaussianBlur.cpp in WebCore.pro after enabled svg filters. + + No new tests needed. + * WebCore.pro: + +2009-12-07 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + Add a function to show render tree for debugging + https://bugs.webkit.org/show_bug.cgi?id=31288 + + No new tests because this just adds a function for debugging. + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::showRenderObject): + (WebCore::RenderObject::showRenderTreeAndMark): + (showRenderTree): + * rendering/RenderObject.h: + +2009-12-07 Victor Wang <victorw@chromium.org> + + Reviewed by Dimitri Glazkov. + + Implement NamedPropertyEnumerator and IndexedPropertyEnumerator for + V8 NPObject. This should make the object enumerable and fix the + enumeration issue in layout test plugins/netscape-enumerate.html. + + Also fix some existing style issues per webkit style guidelines. + + https://bugs.webkit.org/show_bug.cgi?id=32254 + + Test: plugins/netscape-enumerate.html + + * bindings/v8/V8NPObject.cpp: + (npObjectInvokeImpl): + (npObjectInvokeDefaultHandler): + (npObjectGetProperty): + (npObjectPropertyEnumerator): + (npObjectNamedPropertyEnumerator): + (npObjectIndexedPropertyEnumerator): + (createV8ObjectForNPObject): + +2009-12-07 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + Fragments now make WebSocket URL parsing fail. + https://bugs.webkit.org/show_bug.cgi?id=32144 + + * websockets/WebSocket.cpp: + (WebCore::WebSocket::connect): + +2009-12-07 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Darin Adler. + + Fix wrong length parsing in WebSocket. + https://bugs.webkit.org/show_bug.cgi?id=32203 + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::didReceiveData): + +2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Rubber-stamped by Maciej Stachowiak. + + Turn on (SVG) Filters for Qt. + https://bugs.webkit.org/show_bug.cgi?id=32224 + + * WebCore.pro: + +2009-12-07 Evan Martin <evan@chromium.org> + + Reviewed by Eric Seidel. + + Chromium: theme scrollbars to match GTK theme. + Add functions to RenderThemeChromiumLinux to change the scrollbar + color. + + Since the change is to the Chromium WebKit API layer, testing will + be in Chromium's test shell. + http://bugs.webkit.org/show_bug.cgi?id=32048 + + Patch from Markus Gutschke <markus@chromium.org>. + + * platform/chromium/ScrollbarThemeChromiumLinux.cpp: + (WebCore::saturateAndBrighten): + (WebCore::outlineColor): + (WebCore::ScrollbarThemeChromiumLinux::paintTrackPiece): + (WebCore::ScrollbarThemeChromiumLinux::paintThumb): + * rendering/RenderThemeChromiumLinux.cpp: + (WebCore::RenderThemeChromiumLinux::setScrollbarColors): + * rendering/RenderThemeChromiumLinux.h: + (WebCore::RenderThemeChromiumLinux::thumbInactiveColor): + (WebCore::RenderThemeChromiumLinux::thumbActiveColor): + (WebCore::RenderThemeChromiumLinux::trackColor): + +2009-12-08 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + [GTK] Doesn't respect Content-Disposition for downloads, and provides no way for apps to do that + https://bugs.webkit.org/show_bug.cgi?id=32247 + + Allow creating a ResourceResponse from a SoupMessage. + + Covered by API test. + + * platform/network/soup/ResourceResponse.h: + (WebCore::ResourceResponse::ResourceResponse): + * platform/network/soup/ResourceResponseSoup.cpp: + (WebCore::ResourceResponse::updateFromSoupMessage): + +2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Reverting problematic patch, causing errors. + + Revert r51789 (Avoid zero division during SVGPaintServerPattern::setup()). Crashes on all Windows slaves. + Reopen bug https://bugs.webkit.org/show_bug.cgi?id=29912. + + * svg/graphics/SVGPaintServerPattern.cpp: + (WebCore::SVGPaintServerPattern::setup): + +2009-12-07 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Add support for HTMLInputElement::stepUp() and stepDown() for + type=number and type=range. + https://bugs.webkit.org/show_bug.cgi?id=27451 + + Our implementation of stepUp() and stepDown() rounds the resultant + value to conform to the step value. + Change the number-string conversion method for RenderSlider to be + consistent with type=number. + + Tests: fast/forms/input-step-number.html + fast/forms/input-step-range.html + fast/forms/input-step-unsupported.html + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::rangeUnderflow): Unify the code for NUMBER and RANGE. + (WebCore::HTMLInputElement::rangeOverflow): Unify the code for NUMBER and RANGE. + (WebCore::HTMLInputElement::minimum): Renamed from rangeMinimum(), and support for NUMBER. + (WebCore::HTMLInputElement::maximum): Renamed from rangeMaximum(), and support for NUMBER. + (WebCore::HTMLInputElement::stepBase): + (WebCore::HTMLInputElement::stepMismatch): Use stepBase(). + (WebCore::HTMLInputElement::applyStepForNumberOrRange): + (WebCore::HTMLInputElement::stepUp): + (WebCore::HTMLInputElement::stepDown): + (WebCore::HTMLInputElement::formStringFromDouble): + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::stepUp): + (WebCore::HTMLInputElement::stepDown): + * html/HTMLInputElement.idl: Add stepUp() and stepDown(). + * rendering/RenderSlider.cpp: + (WebCore::SliderRange::SliderRange): Sync with rangeMinimum()/rangeMaximum() renaming. + (WebCore::RenderSlider::updateFromElement): Use formStringFromDouble(). + (WebCore::RenderSlider::setValueForPosition): Use formStringFromDouble(). + +2009-12-07 Albert J. Wong <ajwong@chromium.org> + + Not reviewed: Chromium build fix try 2 (dumb error). + + * bindings/v8/ScriptValue.h: + (WebCore::ScriptValue::getString): + +2009-12-07 Albert J. Wong <ajwong@chromium.org> + + Not reviewed: Chromium build fix. + + Fix Chromium build break caused by an added dependency from + ScriptControllerBase to JSDOMWindowShell, and an API change in + ScriptValue. + + * bindings/ScriptControllerBase.cpp: + (WebCore::ScriptController::executeIfJavaScriptURL): + * bindings/v8/ScriptValue.h: + (WebCore::ScriptValue::getString): + +2009-12-07 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + REGRESSION(4.0.4-42a12): Indent does not work for twice modified with background text in gmail. + <rdar://problem/7442387> + https://bugs.webkit.org/show_bug.cgi?id=32233 + + Fixes problem in re-creating the correct hierarchy under the new block. + Added extensive testing to cover all the cases. + + Test: editing/execCommand/indent-with-style2.html + + * editing/CompositeEditCommand.cpp: + (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): + +2009-12-07 Dmitry Titov <dimich@chromium.org> + + Rubber-stamped by Darin Adler. + + Remove ENABLE_SHARED_SCRIPT flags + https://bugs.webkit.org/show_bug.cgi?id=32245 + This patch was obtained by "git revert" command and then un-reverting of ChangeLog files. + + * Configurations/FeatureDefines.xcconfig: + * GNUmakefile.am: + * WebCore.pro: + +2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Force JS binding regeneration, eventually fixing the broken tests on the bots. + + * bindings/scripts/CodeGeneratorJS.pm: + +2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Try to fix mac builds by touching svgtags.in - I only tried from-scratch builds. + + * svg/svgtags.in: + +2009-12-07 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=32184 + Handle out-of-memory conditions with JSC Ropes with a JS exception, rather than crashing. + Switch from using fastMalloc to tryFastMalloc, pass an ExecState to record the exception on. + + * bindings/ScriptControllerBase.cpp: + (WebCore::ScriptController::executeIfJavaScriptURL): + * bindings/js/JSCanvasRenderingContext2DCustom.cpp: + (WebCore::toHTMLCanvasStyle): + (WebCore::JSCanvasRenderingContext2D::setFillColor): + (WebCore::JSCanvasRenderingContext2D::setStrokeColor): + (WebCore::JSCanvasRenderingContext2D::setShadow): + * bindings/js/ScriptCallStack.cpp: + (WebCore::ScriptCallStack::ScriptCallStack): + (WebCore::ScriptCallStack::initialize): + * bindings/js/ScriptValue.cpp: + (WebCore::ScriptValue::getString): + * bindings/js/ScriptValue.h: + * bindings/js/SerializedScriptValue.cpp: + (WebCore::SerializingTreeWalker::convertIfTerminal): + * bindings/objc/WebScriptObject.mm: + (+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]): + * page/Console.cpp: + (WebCore::Console::addMessage): + +2009-12-07 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Holger Hans Peter Freyther. + + Turn on (SVG) Filters support, by default. + https://bugs.webkit.org/show_bug.cgi?id=32224 + + Only enable filters on mac for now, skipped all affected tests on the other platforms. + Will enable them one after another, to minimize breakage. + + * Configurations/FeatureDefines.xcconfig: Enable FILTERS build flag. + +2009-12-07 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Fix a bug that KURL rejects a host name which has an IPv4 address + inside an IPv6 form like [::127.0.0.1]. + https://bugs.webkit.org/show_bug.cgi?id=29913 + + * platform/KURL.cpp: + (WebCore::characterClassTable): Add IPv6Char to '.'. + +2009-12-07 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + <rdar://problem/7443417> - Closing a window opened with "New windows open with: Same Page" results in crash in ::~HistoryItem + + The HistoryItem copy constructor has one very specific use case - to support the feature of a WebView copying another WebView's + BackForwardList. That constructor wasn't initializing its m_document pointer, leading to this crash in the destructor. + + * history/HistoryItem.cpp: + (WebCore::HistoryItem::~HistoryItem): Change the setDocument(0) to an ASSERT that the document is already 0. A HistoryItem cannot + outlive its Document and Documents will always clear the back-pointer in their ::detach() method. + (WebCore::HistoryItem::HistoryItem): Missed the m_document initializer in the copy constructor. Also remove an invalid assertion + about the original items m_cachedPage object (which is irrelevant to the copy). + +2009-12-07 Dmitry Titov <dimich@chromium.org> + + Reviewed by Darin Adler. + + Remove partial SharedScript implementation. + https://bugs.webkit.org/show_bug.cgi?id=32237 + The patch was obtained by running "git revert" command and then un-reverting WebCore/ChangeLog. + + * DerivedSources.make: + * SharedScript/SharedScriptContext.cpp: Removed. + * SharedScript/SharedScriptContext.h: Removed. + * SharedScript/SharedScriptContext.idl: Removed. + * SharedScript/SharedScriptController.h: Removed. + * SharedScript/WebKitSharedScript.cpp: Removed. + * SharedScript/WebKitSharedScript.h: Removed. + * SharedScript/WebKitSharedScript.idl: Removed. + * SharedScript/WebKitSharedScriptRepository.cpp: Removed. + * SharedScript/WebKitSharedScriptRepository.h: Removed. + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * dom/Document.cpp: + (WebCore::Document::detach): + * dom/EventTarget.cpp: + * dom/EventTarget.h: + * dom/ScriptExecutionContext.h: + +2009-12-07 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Nikolas Zimmermann. + + https://bugs.webkit.org/show_bug.cgi?id=32226 + Random crashes in WebSocket tests on Leopard Debug builbot + + * platform/network/SocketStreamHandleBase.cpp: (WebCore::SocketStreamHandleBase::close): + Make sure the object still exists when setting m_state. + +2009-12-07 Shiki Okasaka <shiki@google.com> + + Reviewed by Dirk Schulze. + + Avoid zero division during SVGPaintServerPattern::setup() + https://bugs.webkit.org/show_bug.cgi?id=29912 + + Fix zero division bugs in SVGPaintServerPattern::setup() that occurred + if the tile of a pattern was bigger than the pattern and the pattern + size was < 0.5, and if the attribute overflow was set to visible. + + Test: svg/custom/small-pattern.html + + * svg/graphics/SVGPaintServerPattern.cpp: + (WebCore::SVGPaintServerPattern::setup): + +2009-12-07 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + [v8] WebCore::WebGLArrayBufferInternal::byteLengthAttrGetter NULL pointer + https://bugs.webkit.org/show_bug.cgi?id=31889 + + Fixed bug in handling of zero-argument constructor call. + + Test: fast/canvas/webgl/bug-31889.html + + * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-12-07 Gyuyoung Kim <gyuyoung@gmail.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=32024 + [GTK] WebKit does not compile without JAVASCRIPT_DEBUGGER + + Fix build errors when javascript-debugger is disabled on GTK + + * GNUmakefile.am: + +2009-12-07 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + Fixed <rdar://problem/7437820> Weird selection artifacts + + Tests: fast/repaint/block-selection-gap-stale-cache-2.html + fast/repaint/block-selection-gap-stale-cache.html + + Instead of caching the block selection gaps’ bounds in the RenderView at setSelection() + time, cache them in each RenderLayer at paint time. This prevents the cache from getting + stale due to layout changes and overflow scrolling. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::selectionGapRectsForRepaint): Account for overflow scroll. + (WebCore::RenderBlock::paintSelection): Update the enclosing layer’s selection gaps bounds. + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::addBlockSelectionGapsBounds): Added. Updates the selection gaps + bounds to include the given rect. + (WebCore::RenderLayer::clearBlockSelectionGapsBounds): Added. Recursively clears the cached + selection gaps bounds. + (WebCore::RenderLayer::repaintBlockSelectionGaps): Added. Recursively invalidates the + selection gaps bounds. + * rendering/RenderLayer.h: + * rendering/RenderView.cpp: + (WebCore::RenderView::setSelection): Clear the layer-level selection gaps bounds instead + of the view-level cache. + (WebCore::RenderView::clearSelection): Changed to call repaintBlockSelectionGaps(). + * rendering/RenderView.h: + +2009-12-07 Philippe Normand <pnormand@igalia.com> + + Reviewed by Gustavo Noronha. + + Fixed whitelist comment and removed useless (tags, sdp) mimetypes + from it. Also, GStreamer doesn't handle directly SMIL. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::mimeTypeCache): + +2009-12-07 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25415 + [GTK][ATK] Please implement support for get_text_at_offset + + Eliminate the segfaults which occur when accessing the text interface now + implemented by text controls. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (getPangoLayoutForAtk): + +2009-12-07 Gustavo Noronha Silva <gns@gnome.org> + + Reviewed by Xan Lopez. + + Turn the MediaPlayer supported types blacklist into a whitelist + + [GTK] REGRESSION: webkit thinks it can render PDFs + https://bugs.webkit.org/show_bug.cgi?id=32183 + + Covered by API test. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::mimeTypeCache): + +2009-12-07 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25524 + [Gtk] Expose the title attribute to assistive technologies + + Expose 'alt' attribute from images as accessible name. + Expose the 'title' core HTML attribute as accessible description. + This is a modified version of the original fix submitted by Mario Sanchez Prada, + adjusted so that it doesn't impact other platforms. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (webkit_accessible_get_name): + (webkit_accessible_get_description): + +2009-12-07 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Fix support for generic font families + + By not propagating the resolved font family in FontCacheQt and + only concidering the font description we ended up passing the + generic font families to Qt directly. Since most systems don't + have a mapping for these font families we ended up using the + default font in most cases. + + * platform/graphics/qt/FontCacheQt.cpp: + * platform/graphics/qt/FontPlatformData.h: + * platform/graphics/qt/FontPlatformDataQt.cpp: + +2009-12-06 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + Object.getOwnPropertyDescriptor() allows cross-frame access + https://bugs.webkit.org/show_bug.cgi?id=32119 + + Make all implementations of getOwnPropertyDescriptor that have + cross domain restrictions simply fail immediately on cross domain + access, rather than trying to mimic the behaviour of normal + property access. + + Test: http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html + + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::getOwnPropertyDescriptor): + * bindings/js/JSHistoryCustom.cpp: + (WebCore::JSHistory::getOwnPropertyDescriptorDelegate): + * bindings/js/JSLocationCustom.cpp: + (WebCore::JSLocation::getOwnPropertyDescriptorDelegate): + * bindings/scripts/CodeGeneratorJS.pm: + +2009-12-07 Steve Block <steveblock@google.com> + + Reviewed by Adam Barth. + + Moves JSC-specific functions from jni_utility and moves them to new jsc/jni_utility_private files. + https://bugs.webkit.org/show_bug.cgi?id=32157 + + Build fix only, no new tests. + + * WebCore.xcodeproj/project.pbxproj: Modified. Add jni_utility_private.[cpp|h]. + * bridge/jni/jni_instance.cpp: Modified. Include jni_utility_private.h for JSC. + * bridge/jni/jni_jsobject.mm: Modified. Include jni_utility_private.h for JSC. + * bridge/jni/jni_objc.mm: Modified. Include jni_utility_private.h for JSC. + * bridge/jni/jni_runtime.cpp: Modified. Include jni_utility_private.h for JSC. + * bridge/jni/jni_utility.cpp: Modified. Removed convertValueToJValue and convertArrayInstanceToJavaArray. + * bridge/jni/jni_utility.h: Modified. Removed convertValueToJValue and dispatchJNICall. + * bridge/jni/jsc: Added. + * bridge/jni/jsc/jni_utility_private.cpp: Added. + (JSC::Bindings::convertArrayInstanceToJavaArray): + (JSC::Bindings::convertValueToJValue): + * bridge/jni/jsc/jni_utility_private.h: Added. Header for convertValueToJValue and dispatchJNICall. + * platform/android/TemporaryLinkStubs.cpp: Modified. Include jni_utility_private.h for JSC. + +2009-12-06 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + texImage2D pixel junk for transparency + https://bugs.webkit.org/show_bug.cgi?id=32188 + + Use kCGBlendModeCopy when drawing an image to the intermediate context + used to create a GL texture. + + No test as we don't currently have any mechanism to retrieve pixel data + from the webgl context. + + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::imageToTexture): + +2009-12-03 Philippe Normand <pnormand@igalia.com> + + Reviewed by Gustavo Noronha. + + Advertize audio/ogg correctly and refactored mime-type cache + building. + + [GTK] Recognize oga as audio/ogg + https://bugs.webkit.org/show_bug.cgi?id=31990 + + Test: media/media-can-play-ogg.html + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::mimeTypeCache): + +2009-12-05 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=32175 + REGRESSION: websocket/tests/url-parsing.html is crashing on Leopard Bot + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::readStreamCallback): Call platformClose() to unschedule both + streams, guaranteeing that there will be no callbacks after SocketStreamHandle is destroyed. + (WebCore::SocketStreamHandle::writeStreamCallback): Edited a comment a bit. + +2009-12-05 Adam Langley <agl@google.com> + + Reviewed by Adam Barth. + + Check that a CSS format() argument is of a valid type. + + https://bugs.webkit.org/show_bug.cgi?id=31815 + http://code.google.com/p/chromium/issues/detail?id=28582 + + Test: fast/css/url-format-non-string.html + + * css/CSSParser.cpp: + (WebCore::CSSParser::parseFontFaceSrc): + +2009-12-04 Adam Langley <agl@google.com> + + Reviewed by Eric Seidel. + + Chromium: make rounded borders heavier. + + Skia draws its rounded corners differently from the other ports. + Whereas they have anti-aliased clipping regions, Skia only has 1-bit + regions. (Which is technically more correct, but somewhat unhelpful + for us.) Instead, with Skia we use a layer and collect all the + clipping paths in effect. When the state is popped, we paint + transparency outside the clipping paths and merge the layer down. + + This appears to cause rounded borders to look a little thin, which is + addressed in this patch. + + This is well covered by existing tests but will require new baselines + in the Chromium tree. + + https://bugs.webkit.org/show_bug.cgi?id=31778 + + * platform/graphics/skia/GraphicsContextSkia.cpp: + (WebCore::GraphicsContext::addInnerRoundedRectClip): + +2009-12-04 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + <rdar://problem/7441571> Hardware-backed layers are skipped when printing + + When printing, set the PaintBehaviorFlattenCompositingLayers flag so that compositing layers + paint. This also causes 3D transforms to be flattened to 2D. + + Test: printing/compositing-layer-printing.html + + * page/FrameView.cpp: + (WebCore::FrameView::paintContents): + +2009-12-04 Oliver Hunt <oliver@apple.com> + + Reviewed by Beth Dakin. + + Fix up some issues in my SVGListTraits change from yesterday. + + * svg/SVGListTraits.h: + (WebCore::): + +2009-12-04 Albert J. Wong <ajwong@chromium.org> + + Not reviewed: chromium build fix. + + Fix Chromium build break caused by moving of isDefaultPortForProtocol() and + portAllowed() into KURL.h/KURL.cpp. Cloning code. + + * platform/KURLGoogle.cpp: + (WebCore::isDefaultPortForProtocol): + (WebCore::portAllowed): + +2009-12-04 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Remove suppress highlight when restoring selected node. + + https://bugs.webkit.org/show_bug.cgi?id=32152 + + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.setDocument.selectNode): + (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode): + (WebInspector.ElementsPanel.prototype.setDocument): + +2009-12-04 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + Gradient SVG animation demonstrates tearing at animation extremes + https://bugs.webkit.org/show_bug.cgi?id=11929 + + The focalPoint of a radial gradient is temporarly substracted by + the centralPoint, if the focalPoint is not in the radius of the + gradient. This is needed to calculate a new postion of the focalPoint + according to the specification. But the new focalPoint needs to be + moved by the centralPoint after this calculation, which is not the case + at the moment. This patch fixes this issue. It was also introduced a + deviation of maximal 0.2% for Cairo to get around the fixed point numbers + in Cairo. + + W3C-SVG-1.1/pservers-grad-13-b needed an update. The missing adjustment + of the new focalPoint caused wrong results for the last three tests. + + Test: svg/custom/radial-gradient-with-outstanding-focalPoint.svg + + * svg/SVGRadialGradientElement.cpp: + (WebCore::SVGRadialGradientElement::buildGradient): + +2009-12-04 Anton Muhin <antonm@chromium.org> + + Reviewed by Dmitry Titov. + + Do not use WebCore::String::String(const UChar*, int length) to convert + short v8 strings. + + Plus added string traits. + https://bugs.webkit.org/show_bug.cgi?id=31415 + + * bindings/v8/V8Binding.cpp: + (WebCore::): + (WebCore::v8StringToWebCoreString): + +2009-12-04 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + REGRESSION: AX: buttons now extremely repetitive + https://bugs.webkit.org/show_bug.cgi?id=32164 + + Test: platform/mac/accessibility/button-shouldnot-have-axvalue.html + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::isButton): + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper accessibilityAttributeNames]): + +2009-12-04 Zoltan Herczeg <zherczeg@inf.u-szeged.hu> + + Reviewed by Darin Adler. + + Check whether the right side of a string append is non-empty + https://bugs.webkit.org/show_bug.cgi?id=32151 + + Especially beneficial for CachedScript::script() method + which usually appends an empty string returned by flush() + to its m_script member. m_script is often hundreds of kbytes + which is duplated without reason. + + * platform/text/String.cpp: + (WebCore::String::append): + +2009-12-04 Enrica Casucci <enrica@apple.com> + + Reviewed by John Sullivan. + + Mail.app crashes when indenting table pasted from Numbers.app. + <rdar://problem/7209507> + https://bugs.webkit.org/show_bug.cgi?id=32166 + + Test: LayoutTests/editing/execCommand/indent-partial-table.html + + * editing/IndentOutdentCommand.cpp: + (WebCore::IndentOutdentCommand::indentRegion): Added test to verify that the end of the paragraph + after the selection has not been moved. + +2009-12-04 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=32085 + WebSocket should block the same ports that are blocked for resource loading + + Test: websocket/tests/url-parsing.html + + * page/SecurityOrigin.cpp: + (WebCore::SecurityOrigin::SecurityOrigin): + (WebCore::SecurityOrigin::localURLSchemes): + * page/SecurityOrigin.h: + Move isDefaultPortForProtocol() to KURL, because that's a better place for it (SecurityOrigin + is not even in WebCore/platform directory). + + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::host): + (WebCore::HTMLAnchorElement::setHost): + (WebCore::HTMLAnchorElement::setPort): + Updated for the new location of isDefaultPortForProtocol(). + + * platform/KURL.cpp: + (WebCore::KURL::protocolIs): In an assertion, compare to "javascript" case-insensitively, + since the function doesn't require lower case input. + (WebCore::isDefaultPortForProtocol): Moved from SecurityOrigin. + (WebCore::portAllowed): Moved from ResourceHandle. + * platform/KURL.h: + + * platform/network/ResourceHandle.cpp: (WebCore::ResourceHandle::create): Updated for the + new location of portAllowed(). + + * websockets/WebSocket.cpp: (WebCore::WebSocket::connect): Per the spec, raise a SECURITY_ERR + if trying to connect to a blocked port. + +2009-12-04 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] WebKit crashes when loading certain SVG images + https://bugs.webkit.org/show_bug.cgi?id=29443 + + Remove FontFallbackListQt and rely on the common FontFallbackList + to handle the fonts. FontCache and FontPlatformData have been + updated to work with the common FontFallbackList. + + In the previous implementation, FontPlatformDataCacheKey + was a clone of FontPlatformData with the hashing + capabilities added in order to use it as a key in the cache's + hashmap. FontPlatformData has been modified to handle the hashing + function directly so the data are not copied twice in memory. + + FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of + code from FontCache::getFontData() and FontFallbackList::fontDataAt(). + The behavior is similar except currFamily->family().length() was + not tested and the fallback fonts selector were not used. + + Existing tests cover the change. + + * WebCore.pro: + * platform/graphics/qt/FontCacheQt.cpp: + (WebCore::FontCache::platformInit): + (WebCore::FontCache::getFontDataForCharacters): + (WebCore::FontCache::getSimilarFontPlatformData): + (WebCore::FontCache::getLastResortFallbackFont): + (WebCore::FontCache::getTraitsInFamily): + (WebCore::FontCache::createFontPlatformData): + * platform/graphics/qt/FontCustomPlatformData.cpp: + (WebCore::FontCustomPlatformData::fontPlatformData): + * platform/graphics/qt/FontFallbackListQt.cpp: + Removed. We now use the implementation from FontFallbackList.cpp + * platform/graphics/qt/FontPlatformData.h: + Add hashing capabilities to be able to use the data with the FontCache. + This was previously done in FontCacheQt.cpp + (WebCore::FontPlatformDataPrivate::FontPlatformDataPrivate): + (WebCore::FontPlatformData::FontPlatformData): + (WebCore::FontPlatformData::isHashTableDeletedValue): + (WebCore::FontPlatformData::font): + (WebCore::FontPlatformData::size): + (WebCore::FontPlatformData::family): + (WebCore::FontPlatformData::bold): + (WebCore::FontPlatformData::italic): + (WebCore::FontPlatformData::smallCaps): + (WebCore::FontPlatformData::pixelSize): + * platform/graphics/qt/FontPlatformDataQt.cpp: + (WebCore::FontPlatformData::FontPlatformData): + (WebCore::FontPlatformData::~FontPlatformData): + (WebCore::FontPlatformData::operator=): + (WebCore::FontPlatformData::operator==): + (WebCore::FontPlatformData::hash): + +2009-12-04 Adam Treat <atreat@rim.com> + + Reviewed by Dan Bernstein. + + Fix wrong assert that was only working through sheer luck. + https://bugs.webkit.org/show_bug.cgi?id=32162 + + * platform/text/BidiContext.cpp: + (WebCore::BidiContext::create): + +2009-12-04 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Allow removing 'qrc' as a local security origin scheme + + * page/SecurityOrigin.cpp: + +2009-12-04 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for WebCore's CollectionCache + https://bugs.webkit.org/show_bug.cgi?id=32109 + + Inherits the following class from FastAllocBase because it is + instantiated by 'new': + + struct name - instantiated at: WebCore/'location' + + struct CollectionCache - dom/Document.cpp:4029 + + * html/CollectionCache.h: + +2009-12-04 Steve Block <steveblock@google.com> + + Reviewed by Darin Adler. + + Fixes a crashing bug in Geolocation when a watch is cleared from some callbacks. + https://bugs.webkit.org/show_bug.cgi?id=32111 + + In Geolocation::GeoNotifier::timerFired, a JS callback may be invoked if a + fatal error was registered on this GeoNotifier or if this request has timed + out. If the request is a watch, and is cleared by a call to clearWatch in the + callback, the GeoNotifier object will be destroyed. We must therefore cache the + m_geolocation member to allow us to call Geolocation::fatalErrorOccurred or + Geolocation::requestTimedOut. + + Tests: fast/dom/Geolocation/permission-denied-already-clear-watch.html + fast/dom/Geolocation/timeout-clear-watch.html + + * page/Geolocation.cpp: Modified. + (WebCore::Geolocation::GeoNotifier::timerFired): Modified. Cache the m_geolocation member before invoking the JS callback. + +2009-12-04 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for 2 classes of the platform directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id= + + Inherits the following class from Noncopyable because it is instantiated + by 'new' and no need to be copyable: + + class/struct name - instantiated at: WebCore/'location' + + class SharedTimer - (its child class) workers/WorkerRunLoop.cpp:91 + + Inherits the following class from FastAllocBase because it is + instantiated by 'new': + + class TransformOperations - rendering/style/RenderStyle.h:1175 + + Noncopyable.h's include added to SharedTimer.h. + + * platform/SharedTimer.h: + * platform/graphics/transforms/TransformOperations.h: + +2009-12-04 Xan Lopez <xlopez@igalia.com> + + Reviewed by Gustavo Noronha. + + [GTK]Enable DNS prefetching + https://bugs.webkit.org/show_bug.cgi?id=23846 + + Enable DNS prefetching. + + Based on a patch by José Millán. + + * platform/network/soup/DNSSoup.cpp: + (WebCore::prefetchDNS): + +2009-12-04 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for the svg directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id= + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and no need to be copyable: + + class/struct name - instantiated at: WebCore/'location' + + struct ResourceSet - svg/graphics/SVGResource.cpp:148 + class SVGFontData - css/CSSFontFaceSource.cpp:156 + class SVGDocumentExtensions - dom/Document.cpp:3962 + class SVGViewSpec - svg/SVGSVGElement.cpp:191 + + * svg/SVGDocumentExtensions.h: + * svg/SVGFontData.h: + * svg/SVGViewSpec.h: + * svg/graphics/SVGResource.cpp: + +2009-12-03 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + WAI-ARIA: aria-activedescendant doesn't work as intended + https://bugs.webkit.org/show_bug.cgi?id=32100 + + Fixes a number of issues regarding the "tree" role and aria-activedescendant. + 1. The indexes were being reported incorrectly by treeitems. + 2. aria-activedescendant changes were not being sent to the containing item. + 3. The tree's selected rows need to consult aria-activedescendant. + 4. Since a tree changes what it returns as its children (it returns its rows) + the mac-specific array indexing methods need to correctly handle the tree case. + + Tests: platform/mac/accessibility/aria-tree-activedescendant.html + platform/mac/accessibility/aria-tree-index-of-items.html + + * accessibility/AXObjectCache.h: + (WebCore::AXObjectCache::): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::shouldFocusActiveDescendant): + (WebCore::AccessibilityRenderObject::activeDescendant): + (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged): + (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows): + * accessibility/mac/AXObjectCacheMac.mm: + (WebCore::AXObjectCache::postPlatformNotification): + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + (-[AccessibilityObjectWrapper accessibilityIndexOfChild:]): + (-[AccessibilityObjectWrapper accessibilityArrayAttributeValues:index:maxCount:]): + * accessibility/win/AXObjectCacheWin.cpp: + (WebCore::AXObjectCache::postPlatformNotification): + +2009-12-03 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for the xml directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id= + + Inherits the following class from Noncopyable because it is instantiated + by 'new' and no need to be copyable: + + class/struct name - instantiated at: WebCore/'location' + + struct XMLHttpRequestStaticData - xml/XMLHttpRequest.cpp:134 + + Inherits the following classes from FastAllocBase because these are instantiated by 'new': + + class NodeTest - xml/XPathGrammar.y:258 + class NodeSet - xml/XPathValue.cpp:52 + struct EvaluationContext - xml/XPathExpressionNode.cpp:40 + + * xml/XMLHttpRequest.cpp: + * xml/XPathExpressionNode.h: + * xml/XPathNodeSet.h: + * xml/XPathStep.h: + +2009-12-03 Drew Wilson <atwilson@chromium.org> + + Reviewed by Adam Barth. + + New History changes do not compile for Chromium/V8 + https://bugs.webkit.org/show_bug.cgi?id=32148 + + Existing tests suffice (just trying to get code to compile). + + * WebCore.gypi: + Added V8HistoryCustom.cpp and other missing files. + * bindings/v8/custom/V8CustomBinding.h: + Added custom handlers for History.pushState()/replaceState(). + * bindings/v8/custom/V8HistoryCustom.cpp: Added. + Added custom handlers for History.pushState()/replaceState(). + * history/BackForwardListChromium.cpp: + (WebCore::BackForwardList::pushStateItem): + Stubbed out this routine for now - will implement in the future. + +2009-12-03 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + OwnPtr<XBLBindingManager> Document::m_bindingManager; + https://bugs.webkit.org/show_bug.cgi?id=32147 + + The document actually owns the bindingManager. That's what the code + should say. + + * dom/Document.cpp: + (WebCore::Document::~Document): + * dom/Document.h: + (WebCore::Document::bindingManager): + +2009-12-03 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + OwnPtr<Tokenizer> Document::m_tokenizer; + https://bugs.webkit.org/show_bug.cgi?id=32145 + + The document actually owns the tokenizer. That's what the code should say. + + * dom/Document.cpp: + (WebCore::Document::removedLastRef): + (WebCore::Document::~Document): + (WebCore::Document::cancelParsing): + (WebCore::Document::implicitOpen): + (WebCore::Document::implicitClose): + * dom/Document.h: + (WebCore::Document::tokenizer): + +2009-12-03 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + OwnPtr<RenderArena> Document::m_renderArena; + https://bugs.webkit.org/show_bug.cgi?id=32146 + + The document owns the renderArena. That's what the code should say. + + * dom/Document.cpp: + (WebCore::Document::Document): Also, removed a redundant initialization + of the tokenizer that I missed in my previous patch. + (WebCore::Document::~Document): + (WebCore::Document::attach): + (WebCore::Document::detach): + * dom/Document.h: + (WebCore::Document::renderArena): + +2009-12-03 Drew Wilson <atwilson@chromium.org> + + Rolling back r51633 because it causes a chromium perf regression. + + * platform/graphics/SimpleFontData.h: + * platform/graphics/mac/ComplexTextControllerCoreText.cpp: + +2009-12-03 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + The code should say that Document owns DocLoader + https://bugs.webkit.org/show_bug.cgi?id=32143 + + It's the truth. + + * dom/Document.cpp: + (WebCore::Document::~Document): + * dom/Document.h: + (WebCore::Document::docLoader): + +2009-12-03 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Eric Seidel. + + AX: VO just says "term" on many web sites + https://bugs.webkit.org/show_bug.cgi?id=32139 + + Test: platform/mac/accessibility/definition-list-term.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::accessibilityDescription): + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper subrole]): + (-[AccessibilityObjectWrapper roleDescription]): + +2009-12-03 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + Implement WAI-ARIA scrollbar role and related property aria-orientation + https://bugs.webkit.org/show_bug.cgi?id=32126 + + Test: accessibility/aria-scrollbar-role.html + + * accessibility/AccessibilityObject.cpp: + (WebCore::createARIARoleMap): + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::isScrollbar): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::valueForRange): + (WebCore::AccessibilityRenderObject::orientation): + (WebCore::AccessibilityRenderObject::canHaveChildren): + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + * html/HTMLAttributeNames.in: + +2009-12-03 Dan Bernstein <mitz@apple.com> + + Reviewed by Darin Adler. + + Fixed <rdar://problem/7401617> Selection painting issue in hardware- + accelerated layers + which is another part of https://bugs.webkit.org/show_bug.cgi?id=23628 + Fix selection painting to do container-relative repaints + + Test: fast/repaint/block-selection-gap-in-composited-layer.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::selectionGapRectsForRepaint): Compute and paint + gap rects in the coordinate space of the repaint container. + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::recursiveRepaintLayerRect): Added a + FIXME. + * rendering/RenderView.cpp: + (WebCore::RenderView::setSelection): Map block selection gap rects from + the repaint container’s coordinate space to the view’s coordinate space + before adding them to the cached selection bounds. + (WebCore::RenderView::clearSelection): Changed to use + repaintRectangleInViewAndCompositedLayers() so that the selection rect + is invalidated in composited layers as well. + +2009-12-03 Jonathan Dixon <joth@chromium.org> + + Reviewed by Dimitri Glazkov. + + Bug 32066 - Add enable geolocation flag to WebCore::Settings for Chromium + https://bugs.webkit.org/show_bug.cgi?id=32066 + + Adds geolocationEnabled in Settings for runtime control of geolocaiton features. This defaults to ON + as it is intended as a development and testing aid, not a user control. To completely remove geolocation + from a given port, the compile time ENABLE_GEOLOCATION should still be used. + Adding placeholder GeolocationServiceChromium implementation, as this is required to allows + ENABLE_GEOLOCATION to be defined (in turn required for testing), even though this patch does not + make that the default just yet. + + * WebCore.gypi: + * page/Settings.cpp: + (WebCore::Settings::Settings): Add new m_geolocationEnabled flag default value + (WebCore::Settings::setGeolocationEnabled): Setter for m_geolocationEnabled flag + * page/Settings.h: + (WebCore::Settings::geolocationEnabled): Add m_geolocationEnabled flag + * platform/chromium/GeolocationServiceChromium.cpp: Added. + (WebCore::GeolocationServiceChromium::GeolocationServiceChromium): Place holder GeolocationServiceChromium) + (WebCore::createGeolocationService): factory function, only required when ENABLED(GEOLOCATION) is true + +2009-12-03 Enrica Casucci <enrica@apple.com> + + Reviewed by John Sullivan. + + SpinTracer: 349 spins in Mail at WebCore::Editor::advanceToNextMisspelling(bool) + <rdar://problem/7198592> + https://bugs.webkit.org/show_bug.cgi?id=32129 + + Fixed the way the next paragraph is calculated. + I've added a repro case in Safari and attached it to the Bugzilla bug. + + * editing/Editor.cpp: + (WebCore::findFirstMisspellingOrBadGrammarInRange): Changed the way we move to the + next paragraph in the loop. + +2009-12-03 Oliver Hunt <oliver@apple.com> + + Build fix + + * svg/SVGListTraits.h: + (WebCore::): + +2009-12-03 Oliver Hunt <oliver@apple.com> + + Build fix + + * svg/SVGListTraits.h: + (WebCore::): + +2009-12-03 Brady Eidson <beidson@apple.com> + + No wonder editing WebCore.exp repeatedly while I worked on this patch never seemed to stick. + + Long live our auto-generated overlords that I didn't know about... + + * WebCore.base.exp: + +2009-12-03 Oliver Hunt <oliver@apple.com> + + Reviewed by Dan Bernstein. + + REGRESSION (r51627): 3 SVG tests are failing + https://bugs.webkit.org/show_bug.cgi?id=32117 + + Null checking Items in the SVGList is insufficient as items may + be floats, etc so add SVGListTraits::isNull and add appropriate + specializations. + + Test: svg/dom/svglist-exception-on-out-bounds-error.html + + * svg/SVGList.h: + (WebCore::SVGListTypeOperations::isNull): + (WebCore::SVGList::initialize): + (WebCore::SVGList::insertItemBefore): + (WebCore::SVGList::replaceItem): + (WebCore::SVGList::appendItem): + * svg/SVGListTraits.h: + (WebCore::): + +2009-12-03 Brady Eidson <beidson@apple.com> + + No review - release build fix. + + * history/HistoryItem.cpp: + (WebCore::HistoryItem::documentDetached): + +2009-12-03 Brady Eidson <beidson@apple.com> + + No review - release build fix. + + * loader/HistoryController.cpp: + (WebCore::HistoryController::pushState): + +2009-12-03 Enrica Casucci <enrica@apple.com> + + Reviewed by Adele Peterson. + + Multiple Undos removes the last posted comment and/or the ones before it. + <rdar://problem/6557066> + https://bugs.webkit.org/show_bug.cgi?id=32079 + + The fix consists in preventing Undos and Redos to be applied to elements that + are no longer editable. We do not attempt to remove the commands from the queue. + It is a relatively simple fix that comes with a little extra overhead for the apply + and unapply methods where we are now performing the editability check. + + Test: editing/undo/undo-indent-noneditable.html + + * editing/AppendNodeCommand.cpp: + (WebCore::AppendNodeCommand::doApply): + (WebCore::AppendNodeCommand::doUnapply): + * editing/DeleteFromTextNodeCommand.cpp: + (WebCore::DeleteFromTextNodeCommand::doApply): + (WebCore::DeleteFromTextNodeCommand::doUnapply): + * editing/InsertIntoTextNodeCommand.cpp: + (WebCore::InsertIntoTextNodeCommand::doApply): + (WebCore::InsertIntoTextNodeCommand::doUnapply): + * editing/InsertNodeBeforeCommand.cpp: + (WebCore::InsertNodeBeforeCommand::doApply): + (WebCore::InsertNodeBeforeCommand::doUnapply): + * editing/JoinTextNodesCommand.cpp: + (WebCore::JoinTextNodesCommand::doApply): + (WebCore::JoinTextNodesCommand::doUnapply): + * editing/MergeIdenticalElementsCommand.cpp: + (WebCore::MergeIdenticalElementsCommand::doApply): + (WebCore::MergeIdenticalElementsCommand::doUnapply): + * editing/RemoveNodeCommand.cpp: + (WebCore::RemoveNodeCommand::doApply): + (WebCore::RemoveNodeCommand::doUnapply): + * editing/SplitElementCommand.cpp: + (WebCore::SplitElementCommand::executeApply): + (WebCore::SplitElementCommand::doUnapply): + * editing/SplitTextNodeCommand.cpp: + (WebCore::SplitTextNodeCommand::doApply): + (WebCore::SplitTextNodeCommand::doUnapply): + * editing/WrapContentsInDummySpanCommand.cpp: + (WebCore::WrapContentsInDummySpanCommand::doUnapply): + (WebCore::WrapContentsInDummySpanCommand::doReapply): + +2009-12-03 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + <rdar://problem/7214236> and http://webkit.org/b/32052 - Implement HTML5 state object history API + + Tests: fast/loader/stateobjects/document-destroyed-navigate-back.html + fast/loader/stateobjects/document-destroyed-navigate-back-with-fragment-scroll.html + fast/loader/stateobjects/popstate-after-load-complete-addeventlistener.html + fast/loader/stateobjects/popstate-after-load-complete-body-attribute.html + fast/loader/stateobjects/popstate-after-load-complete-window-attribute.html + fast/loader/stateobjects/pushstate-object-types.html + fast/loader/stateobjects/pushstate-then-replacestate.html + fast/loader/stateobjects/pushstate-with-fragment-urls-and-hashchange.html + fast/loader/stateobjects/replacestate-then-pushstate.html + http/tests/loading/state-object-security-exception.html + + Derived sources and project file changes: + * DerivedSources.cpp: + * DerivedSources.make: + * GNUmakefile.am + * WebCore.pro + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + + Add the new PopStateEvent: + * dom/PopStateEvent.cpp: Added. + (WebCore::PopStateEvent::PopStateEvent): + (WebCore::PopStateEvent::initPopStateEvent): + * dom/PopStateEvent.h: Added. + (WebCore::PopStateEvent::create): + (WebCore::PopStateEvent::isPopStateEvent): + (WebCore::PopStateEvent::state): + * dom/PopStateEvent.idl: Added. + * bindings/js/JSPopStateEventCustom.cpp: Added. + (WebCore::JSPopStateEvent::initPopStateEvent): + (WebCore::JSPopStateEvent::state): + * bindings/js/JSEventCustom.cpp: + (WebCore::toJS): + * dom/Event.cpp: + (WebCore::Event::isPopStateEvent): + * dom/Event.h: + * dom/EventNames.h: + + Add the "onpopstate" attribute: + * html/HTMLAttributeNames.in: + * html/HTMLBodyElement.cpp: + (WebCore::HTMLBodyElement::parseMappedAttribute): + * html/HTMLBodyElement.idl: + * html/HTMLFrameSetElement.cpp: + (WebCore::HTMLFrameSetElement::parseMappedAttribute): + * html/HTMLFrameSetElement.h: + * html/HTMLFrameSetElement.idl: + * page/DOMWindow.h: + * page/DOMWindow.idl: + + Add pushState and replaceState management to the loader and history machinery: + * bindings/js/JSHistoryCustom.cpp: + (WebCore::JSHistory::pushState): + (WebCore::JSHistory::replaceState): + * loader/HistoryController.cpp: + (WebCore::HistoryController::updateForSameDocumentNavigation): Augmented from "scrollToAnchor()", combining + both the same-document fragment scroll case with the new same-document state object activation case. + (WebCore::HistoryController::pushState): + (WebCore::HistoryController::replaceState): + * loader/HistoryController.h: + * history/BackForwardList.cpp: + (WebCore::BackForwardList::addItem): Use insertItemAfterCurrent. + (WebCore::BackForwardList::insertItemAfterCurrent): Optionally insert the item without clearing the forward + list, as pushStateItem might've selectively cleared only certain items, with the bulk of the forward list + meant to remain. + (WebCore::BackForwardList::pushStateItem): Clear the forward list *only* for the state item's document, then + insert the new item. + (WebCore::BackForwardList::removeItem): + * history/BackForwardList.h: + * page/History.cpp: + (WebCore::History::urlForState): + (WebCore::History::stateObjectAdded): + * page/History.h: + * page/History.idl: + + Let HistoryItems and Documents associate with each other, as well as letting HistoryItems contain state objects: + * history/HistoryItem.cpp: + (WebCore::HistoryItem::HistoryItem): + (WebCore::HistoryItem::~HistoryItem): + (WebCore::HistoryItem::setStateObject): + (WebCore::HistoryItem::setDocument): + (WebCore::HistoryItem::documentDetached): + * history/HistoryItem.h: + (WebCore::HistoryItem::stateObject): + (WebCore::HistoryItem::document): + * dom/Document.cpp: + (WebCore::Document::detach): Notify all back/forward history items owned by this Document that it + is going away. + (WebCore::Document::registerHistoryItem): Manage the list of back/forward history items this document owns. + (WebCore::Document::unregisterHistoryItem): Ditto. + * dom/Document.h: + + Add the ability for Documents, DocumentLoaders, and FrameLoaderClients to be notified when a Documents + URL changes as the result of pushState(), replaceState(), or a popstate navigation: + * dom/Document.cpp: + (WebCore::Document::implicitClose): If there's a pending state object, dispatch the popstate event. + (WebCore::Document::updateURLForPushOrReplaceState): + (WebCore::Document::statePopped): If loading is complete, dispatch the popstate event. Otherwise, set + the pending state object. + * loader/DocumentLoader.cpp: + (WebCore::DocumentLoader::replaceRequestURLForSameDocumentNavigation): + * loader/DocumentLoader.h: + * loader/FrameLoaderClient.h: + * loader/EmptyClients.h: + (WebCore::EmptyFrameLoaderClient::dispatchDidChangeStateObjectForPageForFrame): + + Change handling of "loading a HistoryItem" to distinguish between new-Document navigations and same-Document + navigations, combining the old concept of anchor scrolls with the new concept of state object navigations: + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::loadInSameDocument): + (WebCore::FrameLoader::continueFragmentScrollAfterNavigationPolicy): + (WebCore::FrameLoader::navigateWithinDocument): + (WebCore::FrameLoader::navigateToDifferentDocument): + (WebCore::FrameLoader::loadItem): + * loader/FrameLoader.h: + * page/Page.cpp: + (WebCore::Page::goToItem): Changed to allow state object activations to pass through without the load stopping. + +2009-12-03 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: chromium build fix. + r51621 changed JS bindings only, broke v8's. + + * bindings/v8/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::appendArgument): + * bindings/v8/ScriptFunctionCall.h: + +2009-12-03 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Adam Barth. + + [V8] Attributes and NamedNodeMaps aren't tracked correctly and may be prematurely garbage-collected. + https://bugs.webkit.org/show_bug.cgi?id=32094 + + Covered by existing test: LayoutTests/fast/dom/Attr/access-after-element-destruction.html + + * bindings/v8/DOMObjectsInclude.h: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::getTemplate): + (WebCore::V8DOMWrapper::convertToV8Object): + (WebCore::V8DOMWrapper::convertNamedNodeMapToV8Object): + * bindings/v8/V8DOMWrapper.h: + * bindings/v8/V8GCController.cpp: + (WebCore::ObjectGrouperVisitor::visitDOMWrapper): + * bindings/v8/custom/V8CustomBinding.h: + +2009-12-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Chromium: Add support for settings containing ":" + + https://bugs.webkit.org/show_bug.cgi?id=32118 + + * inspector/front-end/WatchExpressionsSidebarPane.js: + (WebInspector.WatchExpressionsSection): + +2009-12-03 Rafael Antognolli <antognolli@profusion.mobi>, Kenneth Christiansen <kenneth@webkit.org> + + Reviewed by Simon Fraser. + + repaint events from outside the viewport aren't received + https://bugs.webkit.org/show_bug.cgi?id=32081 + + When using a tiled backing store for painting, you need to receive + event from outside the viewport. Setting the viewport to the size + of the contents is not an option if you want to make use of WebCore's + infrastructure for drawing scrollbars etc. + + A new property, paintsEntireContents, has been introduced for the + above use-case. It is settable, as tiling will be optional for Qt, + and for the not yet upstreamed EFL port, there will be two different + views, where only one of them are tiled. + + No change in behavior, so no new tests added. + + * page/FrameView.cpp: + (WebCore::FrameView::repaintContentRectangle): + * platform/ScrollView.cpp: + (WebCore::ScrollView::ScrollView): + (WebCore::ScrollView::setPaintsEntireContents): + (WebCore::ScrollView::wheelEvent): + * platform/ScrollView.h: + (WebCore::ScrollView::paintsEntireContents): + +2009-11-23 Jeremy Moskovich <jeremy@chromium.org> + + Reviewed by Eric Seidel. + + Switch Chrome/Mac to use Core Text APIs rather than ATSUI APIs. + https://bugs.webkit.org/show_bug.cgi?id=31802 + + No test since this is already covered by existing pixel tests. + + * platform/graphics/SimpleFontData.h: Change #ifdef to define getNSFont() on Chrome/Mac . + * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Provide forward declarations + of Core Text functions that are public on 10.6 but SPI on 10.5. + +2009-12-03 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Simplify the settings support in inspector controller. + + https://bugs.webkit.org/show_bug.cgi?id=32076 + + Test: inspector/settings-set-get.html + + * WebCore.Inspector.exp: + * bindings/js/JSInspectorFrontendHostCustom.cpp: + * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: + * inspector/InspectorClient.h: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::~InspectorController): + (WebCore::InspectorController::setting): + (WebCore::InspectorController::setSetting): + (WebCore::InspectorController::setWindowVisible): + (WebCore::InspectorController::attachWindow): + (WebCore::InspectorController::setAttachedWindowHeight): + (WebCore::InspectorController::storeLastActivePanel): + (WebCore::InspectorController::scriptObjectReady): + (WebCore::InspectorController::showWindow): + (WebCore::InspectorController::enableResourceTracking): + (WebCore::InspectorController::disableResourceTracking): + (WebCore::InspectorController::ensureResourceTrackingSettingsLoaded): + (WebCore::InspectorController::enableProfiler): + (WebCore::InspectorController::disableProfiler): + (WebCore::InspectorController::enableDebuggerFromFrontend): + (WebCore::InspectorController::disableDebugger): + * inspector/InspectorController.h: + * inspector/InspectorFrontendHost.cpp: + (WebCore::InspectorFrontendHost::setting): + (WebCore::InspectorFrontendHost::setSetting): + * inspector/InspectorFrontendHost.h: + * inspector/InspectorFrontendHost.idl: + * loader/EmptyClients.h: + (WebCore::EmptyInspectorClient::populateSetting): + (WebCore::EmptyInspectorClient::storeSetting): + +2009-12-03 Ben Murdoch <benm@google.com> + + Reviewed by Brady Eidson. + + [Android] notifyHistoryItemChanged() should pass a pointer to the HistoryItem that changed. + https://bugs.webkit.org/show_bug.cgi?id=31915 + + No change in functionality so no new tests required. + + * history/HistoryItem.cpp: + (WebCore::defaultNotifyHistoryItemChanged): Update this function to pass the HistoryItem that is being changed. + (WebCore::HistoryItem::setAlternateTitle): Update call to notifyHistoryItemChanged to include the new parameter. + (WebCore::HistoryItem::setURLString): ditto. + (WebCore::HistoryItem::setOriginalURLString): ditto. + (WebCore::HistoryItem::setReferrer): ditto. + (WebCore::HistoryItem::setTitle): ditto. + (WebCore::HistoryItem::setTarget): ditto. + (WebCore::HistoryItem::setDocumentState): On Android, add a call to notifyHistoryItemChanged. See bug for a discussion of why this is needed. + (WebCore::HistoryItem::clearDocumentState): ditto. + (WebCore::HistoryItem::setIsTargetItem): ditto. + (WebCore::HistoryItem::addChildItem): ditto. + (WebCore::HistoryItem::setFormInfoFromRequest): ditto. + * history/HistoryItem.h: Update signature of notifyHistoryItemChanged. + +2009-12-03 Ben Murdoch <benm@google.com> + + Reviewed by Brady Eidson. + + [Android] The FrameLoaderClient is unaware of BackForwardList changes. + https://bugs.webkit.org/show_bug.cgi?id=31914 + + This change adds three new methods on the FrameLoaderClient interface to receive notifications when the BackForwardList changes. + + No new tests required. Functionality on all platforms upstream remains the same. Android is the first platform to make use of these callbacks. + + * history/BackForwardList.cpp: + (WebCore::BackForwardList::addItem): Execute the callback. + (WebCore::BackForwardList::goBack): ditto. + (WebCore::BackForwardList::goForward): ditto. + (WebCore::BackForwardList::goToItem): ditto. + (WebCore::BackForwardList::setCapacity): dito. + * loader/EmptyClients.h: + (WebCore::EmptyFrameLoaderClient::dispatchDidAddBackForwardItem): Add an empty implementation for the callback that does nothing. + (WebCore::EmptyFrameLoaderClient::dispatchDidRemoveBackForwardItem): ditto. + (WebCore::EmptyFrameLoaderClient::dispatchDidChangeBackForwardIndex): ditto. + * loader/FrameLoaderClient.h: + +2009-12-03 Ben Murdoch <benm@google.com> + + Reviewed by Brady Eidson. + + [Android] Upstream WebCore/history/android: Require some platform specific state attached to HistoryItem. + https://bugs.webkit.org/show_bug.cgi?id=31913 + + Android stores information such as the zoom scale factor and bridge back to the Java counterpart with HistoryItem. + + No new tests required as this is Android specific code. + + * history/HistoryItem.h: Add Android specific member data to HistoryItem. + * history/android: Added. + * history/android/AndroidWebHistoryBridge.h: Added. + * history/android/HistoryItemAndroid.cpp: Added, provides implementation for Android specific member functions in HistoryItem. + (WebCore::HistoryItem::bridge): Added. + (WebCore::HistoryItem::setBridge): Added. + +2009-12-03 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + NULL ptr in SVGPathSegList::getPathSegAtLength() + https://bugs.webkit.org/show_bug.cgi?id=30313 + + Add exception checks to SVGPathSegList's implementation to catch (and propagate) exceptions. + Add null checks to SVGList's content manipulation functions to prevent + null values from entering the list in the first place. + + Test: svg/dom/svgpath-out-of-bounds-getPathSeg.html + + * svg/SVGList.h: + (WebCore::SVGList::initialize): + (WebCore::SVGList::insertItemBefore): + (WebCore::SVGList::replaceItem): + (WebCore::SVGList::appendItem): + * svg/SVGPathElement.cpp: + (WebCore::SVGPathElement::getPathSegAtLength): + * svg/SVGPathElement.h: + * svg/SVGPathElement.idl: + * svg/SVGPathSegList.cpp: + (WebCore::SVGPathSegList::getPathSegAtLength): + (WebCore::SVGPathSegList::toPathData): + (WebCore::SVGPathSegList::createAnimated): + * svg/SVGPathSegList.h: + +2009-12-02 Yusuke Sato <yusukes@chromium.org> + + Reviewed by Eric Seidel. + + Sanitize web fonts using the OTS library + https://bugs.webkit.org/show_bug.cgi?id=31106 + + Add support for OpenType sanitizer (OTS). It parses OpenType files (from @font-face) + and attempts to validate and sanitize them. We hope this reduces the attack surface + of the system font libraries. + + * WebCore.gyp/WebCore.gyp: Added dependency to (chromium_src_dir)/third_party/ots/ library. + * WebCore.gypi: Added new files below. + * WebCore.xcodeproj/project.pbxproj: Ditto. + * platform/graphics/chromium/FontCustomPlatformData.cpp: Validate and transcode a web font. + (WebCore::createFontCustomPlatformData): + * platform/graphics/mac/FontCustomPlatformData.cpp: Ditto. + (WebCore::createFontCustomPlatformData): + * platform/graphics/opentype/OpenTypeSanitizer.cpp: Added. + (WebCore::OpenTypeSanitizer::sanitize): + * platform/graphics/opentype/OpenTypeSanitizer.h: Added. + (WebCore::OpenTypeSanitizer::OpenTypeSanitizer): + +2009-12-02 Oliver Hunt <oliver@apple.com> + + Reviewed by Sam Weinig. + + Web Inspector frontend heap allocates ScriptFunctionCall which is unsafe + https://bugs.webkit.org/show_bug.cgi?id=32098 + + Fix is simply to make the ScriptFunctionCall stack allocated as nature intended. + Doing this required adding an appendArgument(char*) to ScriptFunctionCall so + that an explicit String cast would not be necessary. + + To prevent something like this happening again in future i've added private + operator new implementations to ScriptFunctionCall making this type of mistake + produce errors when compiling. + + Test case: Inspector tests now pass with GC on every alloc enabled. + + * bindings/js/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::appendArgument): + * bindings/js/ScriptFunctionCall.h: + (WebCore::ScriptFunctionCall::operator new): + (WebCore::ScriptFunctionCall::operator new[]): + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::addConsoleMessage): + (WebCore::InspectorFrontend::updateConsoleMessageRepeatCount): + (WebCore::InspectorFrontend::addResource): + (WebCore::InspectorFrontend::updateResource): + (WebCore::InspectorFrontend::removeResource): + (WebCore::InspectorFrontend::updateFocusedNode): + (WebCore::InspectorFrontend::setAttachedWindow): + (WebCore::InspectorFrontend::addRecordToTimeline): + (WebCore::InspectorFrontend::parsedScriptSource): + (WebCore::InspectorFrontend::failedToParseScriptSource): + (WebCore::InspectorFrontend::addProfileHeader): + (WebCore::InspectorFrontend::setRecordingProfile): + (WebCore::InspectorFrontend::didGetProfileHeaders): + (WebCore::InspectorFrontend::didGetProfile): + (WebCore::InspectorFrontend::pausedScript): + (WebCore::InspectorFrontend::setDocument): + (WebCore::InspectorFrontend::setDetachedRoot): + (WebCore::InspectorFrontend::setChildNodes): + (WebCore::InspectorFrontend::childNodeCountUpdated): + (WebCore::InspectorFrontend::childNodeInserted): + (WebCore::InspectorFrontend::childNodeRemoved): + (WebCore::InspectorFrontend::attributesUpdated): + (WebCore::InspectorFrontend::didRemoveNode): + (WebCore::InspectorFrontend::didGetChildNodes): + (WebCore::InspectorFrontend::didApplyDomChange): + (WebCore::InspectorFrontend::didGetEventListenersForNode): + (WebCore::InspectorFrontend::didGetCookies): + (WebCore::InspectorFrontend::didDispatchOnInjectedScript): + (WebCore::InspectorFrontend::addDatabase): + (WebCore::InspectorFrontend::selectDatabase): + (WebCore::InspectorFrontend::didGetDatabaseTableNames): + (WebCore::InspectorFrontend::addDOMStorage): + (WebCore::InspectorFrontend::selectDOMStorage): + (WebCore::InspectorFrontend::didGetDOMStorageEntries): + (WebCore::InspectorFrontend::didSetDOMStorageItem): + (WebCore::InspectorFrontend::didRemoveDOMStorageItem): + (WebCore::InspectorFrontend::updateDOMStorage): + (WebCore::InspectorFrontend::addNodesToSearchResult): + (WebCore::InspectorFrontend::evaluateForTestInFrontend): + * inspector/InspectorFrontend.h: + +2009-12-02 Dave Hyatt <hyatt@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=32072, clean up invalid @-rule error handling so that we + pass more CSS test suite stuff. Make the grammar stop enforcing the ordering of @namespace vs. + @variables vs. @import. Just let the parser handle that instead. This simplifies the grammar and + makes error handling deal with more cases correctly. + + Added fast/css/namespaces/namespaces-invalid-at-rules.xml + + * css/CSSGrammar.y: + * css/CSSParser.cpp: + (WebCore::CSSParser::CSSParser): + (WebCore::CSSParser::parseRule): + (WebCore::CSSParser::createCharsetRule): + (WebCore::CSSParser::createImportRule): + (WebCore::CSSParser::createMediaRule): + (WebCore::CSSParser::createKeyframesRule): + (WebCore::CSSParser::createStyleRule): + (WebCore::CSSParser::createFontFaceRule): + (WebCore::CSSParser::addNamespace): + (WebCore::CSSParser::createVariablesRule): + * css/CSSParser.h: + +2009-12-02 Yusuke Sato <yusukes@chromium.org> + + Reviewed by Dan Bernstein. + + Safari/Chromium for Windows fails to load CJK WebFonts + https://bugs.webkit.org/show_bug.cgi?id=31804 + + * platform/graphics/opentype/OpenTypeUtilities.cpp: + (WebCore::renameAndActivateFont): Load a remote font even if the font has 2 or more faces. + +2009-12-02 Avi Drissman <avi@chromium.org> + + Reviewed by Darin Fisher. + + Chromium: Need tickmarks in scrollbar + https://bugs.webkit.org/show_bug.cgi?id=32069 + + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * platform/chromium/ScrollbarThemeChromiumMac.h: Added. + * platform/chromium/ScrollbarThemeChromiumMac.mm: Added. + +2009-11-13 Timothy Hatcher <timothy@apple.com> + + Expose a function to set the value of an input element on behalf of the user. + This function will dispatch the change event so the page is notified when autofill + happens. Also dispatch a change event when a select element is changed by autofill. + + <rdar://problem/6760590> Would like a way to detect a login form AutoFill from JavaScript + + Reviewed by Darin Adler. + + * WebCore.xcodeproj/project.pbxproj: Added the DOMHTMLInputElementPrivate.h header. + * bindings/objc/DOMHTML.mm: + (-[DOMHTMLSelectElement _activateItemAtIndex:]): Call setSelectedIndexByUser instead so + a change event is fired. This method is called by Safari autofill. + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): Use dispatchFormControlChangeEvent instead + of dispatching the change event directly to be consistent. + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLInputElement::setValueForUser): Added. Calls setValue with the sendChangeEvent + (WebCore::HTMLInputElement::setValue): Added the optional sendChangeEvent argument. Mimics setChecked. + * html/HTMLInputElement.h: + * html/HTMLInputElement.idl: Added setValueForUser for non-JS languages. + * html/InputElement.h: Added setValueForUser. + +2009-12-02 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: DOM tree selection disappears upon page refresh. + + https://bugs.webkit.org/show_bug.cgi?id=31142 + + Test: inspector/elements-panel-selection-on-refresh.html + + * inspector/InjectedScriptHost.cpp: + (WebCore::InjectedScriptHost::pushNodeByPathToFrontend): + * inspector/InjectedScriptHost.h: + * inspector/InjectedScriptHost.idl: + * inspector/InspectorBackend.h: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::close): + (WebCore::InspectorController::releaseDOMAgent): + (WebCore::InspectorController::resetScriptObjects): + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::~InspectorDOMAgent): + (WebCore::InspectorDOMAgent::reset): + (WebCore::InspectorDOMAgent::setDocument): + (WebCore::InspectorDOMAgent::pushDocumentToFrontend): + (WebCore::InspectorDOMAgent::nodeForPath): + (WebCore::InspectorDOMAgent::pushNodePathToFrontend): + * inspector/InspectorDOMAgent.h: + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMNode.prototype._renumber): + (WebInspector.DOMAgent.prototype._setDocument): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.reset): + (WebInspector.ElementsPanel.prototype.setDocument.selectDefaultNode): + (WebInspector.ElementsPanel.prototype.setDocument.selectLastSelectedNode): + (WebInspector.ElementsPanel.prototype.setDocument): + * inspector/front-end/InjectedScript.js: + (InjectedScript.pushNodeByPathToFrontend): + * inspector/front-end/InjectedScriptAccess.js: + +2009-12-01 Dave Hyatt <hyatt@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=32045, make sure escape sequences work with + all the @-rules we support. When escape sequences are present, the lexical scanner + just returns a generic token name: ATKEYWORD. We have to process the escape sequences + and then recheck against the rules we support with the final processed name. If we + find a match, we mutate the token value to the appropriate rule name token, e.g., + NAMESPACE_SYM. + + Added fast/css/namespaces/namespaces-escapes.xml + + * css/CSSParser.cpp: + (WebCore::CSSParser::lex): + (WebCore::CSSParser::recheckAtKeyword): + (WebCore::CSSParser::text): + * css/CSSParser.h: + +2009-12-02 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth.:w + + Allow to skip thread checks when accessing DOMDataStore for processes + which run V8 in single thread mode. + https://bugs.webkit.org/show_bug.cgi?id=31877 + + Should be covered by buildbots. + + * bindings/v8/V8DOMMap.cpp: + (WebCore::getDOMDataStore): + (WebCore::enableFasterDOMStoreAccess): + (WebCore::getDOMNodeMap): + (WebCore::getDOMObjectMap): + (WebCore::getActiveDOMObjectMap): + (WebCore::getDOMSVGElementInstanceMap): + (WebCore::getDOMSVGObjectWithContextMap): + * bindings/v8/V8DOMMap.h: + +2009-12-02 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Code clean up: remove ScriptObjectQuarantine.* as a whole. + + https://bugs.webkit.org/show_bug.cgi?id=32060 + + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * WebCoreSources.bkl: + * bindings/js/JSBindingsAllInOne.cpp: + * bindings/js/ScriptObjectQuarantine.cpp: Removed. + * bindings/js/ScriptObjectQuarantine.h: Removed. + * bindings/js/ScriptValue.cpp: + (WebCore::ScriptValue::quarantineValue): + * bindings/js/ScriptValue.h: + * bindings/v8/ScriptObjectQuarantine.cpp: Removed. + * bindings/v8/ScriptObjectQuarantine.h: Removed. + * bindings/v8/ScriptValue.h: + (WebCore::ScriptValue::quarantineValue): + * inspector/ConsoleMessage.cpp: + (WebCore::ConsoleMessage::ConsoleMessage): + * inspector/InspectorController.cpp: + * inspector/InspectorDatabaseResource.cpp: + (WebCore::InspectorDatabaseResource::bind): + * inspector/InspectorFrontend.cpp: + +2009-12-02 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + WebSocket handshake check query component of URL + https://bugs.webkit.org/show_bug.cgi?id=31617 + + Tests: websocket/tests/url-with-credential.html + websocket/tests/url-with-empty-query.html + websocket/tests/url-with-fragment.html + websocket/tests/url-with-query-for-no-query.html + websocket/tests/url-with-query.html + + * platform/KURLGoogle.cpp: + (WebCore::KURL::query): returns a null if query is not specified and returns an empty if query is specified but empty. + * websockets/WebSocketHandshake.cpp: + (WebCore::resourceName): added. add query component to path if specified. + (WebCore::WebSocketHandshake::clientLocation): + (WebCore::WebSocketHandshake::clientHandshakeMessage): + +2009-12-01 David Levin <levin@chromium.org> + + Reviewed by Eric Seidel. + + Incorrect code in WebGLRenderingContext.cpp + https://bugs.webkit.org/show_bug.cgi?id=32046 + + Fix incorrect code that happened to work. != has higher precendence than &. + The simplest fix is to remove the "!= 0" which violates WebKit style + guidelines anyway. + + Also added periods to few comments in the same function. + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::validateIndexArray): + +2009-12-01 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Change [Reflect] to [ConvertNullToNullString, Reflect] for min, max, + pattern and step attributes of HTMLInputElement. + https://bugs.webkit.org/show_bug.cgi?id=31708 + + * html/HTMLInputElement.idl: + +2009-12-01 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + WAI-ARIA: implement support for ARIA drag and drop + https://bugs.webkit.org/show_bug.cgi?id=32007 + + Test: platform/mac/accessibility/aria-drag-drop.html + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::supportsARIADropping): + (WebCore::AccessibilityObject::supportsARIADragging): + (WebCore::AccessibilityObject::isARIAGrabbed): + (WebCore::AccessibilityObject::setARIAGrabbed): + (WebCore::AccessibilityObject::determineARIADropEffects): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::supportsARIADropping): + (WebCore::AccessibilityRenderObject::supportsARIADragging): + (WebCore::AccessibilityRenderObject::isARIAGrabbed): + (WebCore::AccessibilityRenderObject::setARIAGrabbed): + (WebCore::AccessibilityRenderObject::determineARIADropEffects): + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]): + (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): + * html/HTMLAttributeNames.in: + +2009-12-01 Adam Barth <abarth@webkit.org> + + https://bugs.webkit.org/show_bug.cgi?id=21288 + + Unreviewed port of @sandbox to V8. + + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::isEnabled): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::createWindow): + +2009-12-01 Patrik Persson <patrik.j.persson@ericsson.com> + + Reviewed by Darin Adler. + + Implement HTML5 sandbox attribute for iframes. + http://www.w3.org/TR/html5/text-level-semantics.html#attr-iframe-sandbox + https://bugs.webkit.org/show_bug.cgi?id=21288 + + Tests: fast/frames/sandboxed-iframe-attribute-parsing.html + fast/frames/sandboxed-iframe-forms.html + fast/frames/sandboxed-iframe-navigation-allowed.html + fast/frames/sandboxed-iframe-navigation-parent.html + fast/frames/sandboxed-iframe-navigation-targetlink.html + fast/frames/sandboxed-iframe-navigation-windowopen.html + fast/frames/sandboxed-iframe-plugins.html + fast/frames/sandboxed-iframe-scripting.html + fast/frames/sandboxed-iframe-storage.html + http/tests/security/sandboxed-iframe-document-cookie.html + http/tests/security/sandboxed-iframe-modify-self.html + http/tests/security/xss-DENIED-sandboxed-iframe.html + http/tests/xmlhttprequest/access-control-sandboxed-iframe-allow.html + http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied-without-wildcard.html + http/tests/xmlhttprequest/access-control-sandboxed-iframe-denied.html + + * bindings/js/JSDOMWindowCustom.cpp: sandboxing navigation + (WebCore::createWindow): + * bindings/js/ScriptController.cpp: sandboxing scripts + (WebCore::ScriptController::isEnabled): + * dom/Document.cpp: + (WebCore::Document::processHttpEquiv): + (WebCore::Document::cookie): raise exception when accessed from sandbox + (WebCore::Document::setCookie): raise exception when accessed from sandbox + (WebCore::Document::initSecurityContext): updae sandbox status + (WebCore::Document::updateSandboxFlags): + * dom/Document.h: + * dom/Document.idl: + * html/HTMLAppletElement.cpp: sandboxing applets + (WebCore::HTMLAppletElement::createRenderer): + (WebCore::HTMLAppletElement::renderWidgetForJSBindings): + (WebCore::HTMLAppletElement::canEmbedJava): + * html/HTMLAppletElement.h: + * html/HTMLAttributeNames.in: + * html/HTMLFrameOwnerElement.cpp: management of sandbox flags as stated in attribute + (WebCore::HTMLFrameOwnerElement::HTMLFrameOwnerElement): + (WebCore::HTMLFrameOwnerElement::setSandboxFlags): + * html/HTMLFrameOwnerElement.h: + (WebCore::HTMLFrameOwnerElement::sandboxFlags): + * html/HTMLIFrameElement.cpp: sandbox attribute parsing + (WebCore::parseSandboxAttribute): + (WebCore::HTMLIFrameElement::parseMappedAttribute): + * html/HTMLIFrameElement.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::getCookies): + * loader/CrossOriginAccessControl.cpp: + (WebCore::passesAccessControlCheck): + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::FrameLoader): + (WebCore::FrameLoader::init): + (WebCore::FrameLoader::submitForm): sandboxing forms + (WebCore::FrameLoader::requestObject): sandboxing plugins + (WebCore::FrameLoader::shouldAllowNavigation): sandboxing navigation + (WebCore::FrameLoader::updateSandboxFlags): propagation of sandbox flags + * loader/FrameLoader.h: + (WebCore::FrameLoader::ownerElementSandboxFlagsChanged): + (WebCore::FrameLoader::isSandboxed): + (WebCore::FrameLoader::sandboxFlags): + * loader/FrameLoaderTypes.h: + (WebCore::): + * page/DOMWindow.cpp: disable storage and databases in sandboxed frames + (WebCore::DOMWindow::sessionStorage): + (WebCore::DOMWindow::localStorage): + (WebCore::DOMWindow::openDatabase): + * page/SecurityOrigin.cpp: added sandboxing status + (WebCore::SecurityOrigin::SecurityOrigin): + (WebCore::SecurityOrigin::canAccess): + (WebCore::SecurityOrigin::canRequest): + (WebCore::SecurityOrigin::toString): + * page/SecurityOrigin.h: + (WebCore::SecurityOrigin::setSandboxFlags): + (WebCore::SecurityOrigin::isSandboxed): + (WebCore::SecurityOrigin::canAccessDatabase): + (WebCore::SecurityOrigin::canAccessStorage): + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::didReceiveData): + +2009-12-01 Chris Fleizach <cfleizach@apple.com> + + Reviewed by David Kilzer. + + ARIA: support a way to create a static text object + https://bugs.webkit.org/show_bug.cgi?id=32030 + + Test: accessibility/aria-text-role.html + + * accessibility/AccessibilityObject.cpp: + (WebCore::createARIARoleMap): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::stringValue): + (WebCore::AccessibilityRenderObject::isDescendantOfBarrenParent): + (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): + (WebCore::AccessibilityRenderObject::text): + * accessibility/AccessibilityRenderObject.h: + +2009-12-01 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + Inspector crashes when collecting on every allocation + https://bugs.webkit.org/show_bug.cgi?id=32044 + + The crash is caused by the prototype wrapper object getting collected + when allocating the object that is going to use it as a prototype. + Because the only reference to the prototype wrapper is through the + new object's Structure it does not get marked automatically. + + * bindings/js/JSInspectedObjectWrapper.cpp: + (WebCore::JSInspectedObjectWrapper::wrap): + * bindings/js/JSInspectorCallbackWrapper.cpp: + (WebCore::JSInspectorCallbackWrapper::wrap): + +2009-12-01 Nikolas Zimmermann <nzimmermann@rim.com> + + Reviewed by Simon Fraser. + + Add SVG animation test framework with 'snapshot' functionality + https://bugs.webkit.org/show_bug.cgi?id=31897 + + Add 'sampleSVGAnimationForElementAtTime' method to the LayoutTestController, + for the use within the new SVG animation test framework (LayoutTests/svg/animations/) + + layoutTestController.sampleAnimationAtTime(<svg animation id>, <absolute time>, <svg element id>); + to sample a svg animateMotion/animateColor/animate/set element at certain times. + + After the desired SVG animation starts and calling the method above, it's immediately forwarded to + the desired sampling time. After JS returns from the 'sampleSVGAnimationForElementAtTime' method + a callback is fired used to sample the animation value at the target time. It's modelled similar + to the CSS animation/transition testing framework, inspired by + LayoutTests/animations/animation-test-helpers.js. + + Though it has been extended to integrate within the fast/js/js-test-* framework, that's used for + the SVG dynamic-updates tests, to simplify test creation, by utilizing script-tests/* only. + + Adding a simple testcase testing the DRT methods, it will soon be extended to test animVal/baseVal + interaction, while animating. + + Test: svg/animations/animVal-basics.html + + * WebCore.base.exp: + * WebCore.xcodeproj/project.pbxproj: + * svg/SVGDocumentExtensions.cpp: + (WebCore::SVGDocumentExtensions::sampleAnimationAtTime): + * svg/SVGDocumentExtensions.h: + * svg/animation/SMILTimeContainer.cpp: + (WebCore::SMILTimeContainer::SMILTimeContainer): + (WebCore::SMILTimeContainer::sampleAnimationAtTime): + (WebCore::SMILTimeContainer::updateAnimations): + * svg/animation/SMILTimeContainer.h: + +2009-12-01 Jens Alfke <snej@chromium.org> + + Reviewed by Darin Adler. + + Add convenience methods to Element and QualifiedName that take + char* instead of AtomicString, in preparation for removing the + implicit conversion between the two types (30187). + https://bugs.webkit.org/show_bug.cgi?id=31749 + + * dom/Element.cpp: + (WebCore::Element::setCStringAttribute): Equivalent to setAttribute. + * dom/Element.h: + * dom/QualifiedName.cpp: + (WebCore::QualifiedName::init): Shared impl of both constructors + (WebCore::QualifiedName::QualifiedName): New c'tor taking char*. + * dom/QualifiedName.h: + * platform/network/HTTPHeaderMap.cpp: + (WebCore::CaseFoldingCStringTranslator): Enables lookup by C string + (WebCore::HTTPHeaderMap::get): New variant that takes C string + (WebCore::HTTPHeaderMap::contains): New variant that takes C string + (WebCore::HTTPHeaderMap::add): New variant that takes C string + * platform/network/HTTPHeaderMap.h: + (WebCore::HTTPHeaderMap::get): + (WebCore::HTTPHeaderMap::add): + * platform/network/ResourceRequestBase.cpp: + (WebCore::ResourceRequestBase::httpHeaderField): New variant that takes C string + * platform/network/ResourceRequestBase.h: + (WebCore::ResourceRequestBase::setHTTPHeaderField): Use symbolic names for headers + * platform/network/ResourceResponseBase.cpp: + (WebCore::ResourceResponseBase::httpHeaderField): New variant that takes C string + * platform/network/ResourceResponseBase.h: + +2009-12-01 Alexey Proskuryakov <ap@apple.com> + + More Windows build fix. + + * platform/network/cf/CredentialStorageCFNet.cpp: + (WebCore::CredentialStorage::getFromPersistentStorage): + +2009-12-01 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/CredentialStorageCFNet.cpp: Include RetainPtr.h. + +2009-12-01 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=32036 + Implement CredentialStorage::getFromPersistentStorage for CFNetwork + + * platform/network/cf/CredentialStorageCFNet.cpp: + (WebCore::CredentialStorage::getFromPersistentStorage): + +2009-12-01 Daniel Bates <dbates@webkit.org> + + Reviewed by Pavel Feldman. + + https://bugs.webkit.org/show_bug.cgi?id=32001 + + Added missing localized strings (that I left out of the patch for bug #21554): + %d × %d pixels + %d × %d pixels (Natural: %d × %d pixels) + + Also, changed formatting of these stings to conform with existing ones (added + a space on both sides of the multiply sign). + + * English.lproj/localizedStrings.js: Added stings. + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode): + +2009-12-01 Dave Hyatt <hyatt@apple.com> + + Reviewed by Simon Fraser. + + Fix for bug 32032, empty namespaces should be allowed in @namespace directives in CSS. + + Added fast/css/namespaces/namespaces-empty.xml + + * css/CSSStyleSheet.cpp: + (WebCore::CSSStyleSheet::addNamespace): + (WebCore::CSSStyleSheet::determineNamespace): + +2009-12-01 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Escape key in the Search Field should be more User Friendly + https://bugs.webkit.org/show_bug.cgi?id=32005 + + * inspector/front-end/inspector.js: + (WebInspector.loaded): add mousedown listener on the search field + (WebInspector.searchFieldManualFocus): user clicked to focus on the search field + (WebInspector.searchKeyDown): handle escape + +2009-12-01 Dave Hyatt <hyatt@apple.com> + + Reviewed by David Kilzer. + + @namespace directives need to use "maybe_space" in the "maybe_ns_prefix" portion of the grammar to match + the spec. Not doing so prevent comments from being used immmediately after the namespace prefix. + + Added fast/css/namespaces-comments.xml + + * css/CSSGrammar.y: + +2009-12-01 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Timothy Hatcher. + + Reloading WebInspector from context menu is closing it instead of reloading. + https://bugs.webkit.org/show_bug.cgi?id=32004 + + When reloading WebInspector, don't delete its m_page. + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::close): + +2009-12-01 Steve Block <steveblock@google.com> + + Reviewed by Dimitri Glazkov. + + Adds V8 bindings for Geolocation. + https://bugs.webkit.org/show_bug.cgi?id=30206 + + Also adds Geolocation files to Chrome build files. + + * WebCore.gyp/WebCore.gyp: Modified. Corrects list of Geolocation IDL files. + * WebCore.gypi: Modified. Adds Geolocation files. + * bindings/v8/DOMObjectsInclude.h: Modified. Adds Geolocation includes. + * bindings/v8/DerivedSourcesAllInOne.cpp: Modified. Adds Geolocation files. + * bindings/v8/V8Index.cpp: Modified. Includes Geolocation generated headers. + * bindings/v8/V8Index.h: Modified. Adds Geolocation types to DOM_OBJECT_TYPES. + * bindings/v8/custom/V8CoordinatesCustom.cpp: Added. Handles optional properties. + * bindings/v8/custom/V8CustomBinding.h: Modified. Declares callbacks and getters. + * bindings/v8/custom/V8CustomPositionCallback.cpp: Added. + (WebCore::V8CustomPositionCallback::V8CustomPositionCallback): Added. Constructor. + (WebCore::V8CustomPositionCallback::~V8CustomPositionCallback): Added. Destructor. + (WebCore::V8CustomPositionCallback::handleEvent): Added. Invokes callback. + * bindings/v8/custom/V8CustomPositionCallback.h: Added. + (WebCore::V8CustomPositionCallback::create): Added. Factory method. + * bindings/v8/custom/V8CustomPositionErrorCallback.cpp: Added. + (WebCore::V8CustomPositionErrorCallback::V8CustomPositionErrorCallback): Added. Constructor. + (WebCore::V8CustomPositionErrorCallback::~V8CustomPositionErrorCallback): Added. Destructor. + (WebCore::V8CustomPositionErrorCallback::handleEvent): Added. Invokes callback. + * bindings/v8/custom/V8CustomPositionErrorCallback.h: Added. + (WebCore::V8CustomPositionErrorCallback::create): Added. Factory method. + * bindings/v8/custom/V8GeolocationCustom.cpp: Added. + (WebCore::throwTypeMismatchException): Added. Throws a type mismatch error. + (WebCore::createPositionCallback): Added. Handles type checking for successCallback argument. + (WebCore::createPositionErrorCallback): Added. Handles type checking for errorCallback argument. + (WebCore::createPositionOptions): Added. Handles type checking for positionOptions argument. + +2009-12-01 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Adam Barth. + + Provide a way to get ScriptState for the inspected page. + + https://bugs.webkit.org/show_bug.cgi?id=32020 + + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::mainWorldScriptState): + * bindings/v8/ScriptController.h: + * bindings/v8/ScriptState.cpp: + (WebCore::scriptStateFromPage): + +2009-12-01 Chris Marrin <cmarrin@apple.com> + + Reviewed by Adam Roben. + + Changed mallocs to fastMallocs and frees to fastFrees in GraphicsContext3D. Also added error returns + https://bugs.webkit.org/show_bug.cgi?id=30778 + + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::getProgramInfoLog): + (WebCore::GraphicsContext3D::getShaderInfoLog): + (WebCore::GraphicsContext3D::getShaderSource): + (WebCore::imageToTexture): + +2009-12-01 Mads Ager <ager@chromium.org> + + Reviewed by Eric Seidel. + + [V8] Don't crash in DOMWindow event getter in OOM situations + https://bugs.webkit.org/show_bug.cgi?id=32017 + + Add missing null handle checks in DOMWindow event property + accessors. V8Proxy::context(frame) can return a null handle in + OOM situations either if failing to initialize a context or if an + OOM is handled gracefully and javascript is disabled. + + No new tests because we don't have a good way to test + out-of-memory bugs. + + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_GETTER): + (WebCore::ACCESSOR_SETTER): + +2009-12-01 Chris Marrin <cmarrin@apple.com> + + Reviewed by Oliver Hunt. + + Updated HTMLCanvasElement to accept "experimental-webgl" as the context name. + https://bugs.webkit.org/show_bug.cgi?id=31672 + + * html/HTMLCanvasElement.cpp: + (WebCore::HTMLCanvasElement::getContext): + +2009-12-01 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> + + Not reviewed: chromium build fix, added missing import. + + * inspector/InspectorFrontendHost.cpp: + +2009-12-01 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: fix windows build via unexcluding generated files from + project. + + * WebCore.vcproj/WebCore.vcproj: + +2009-12-01 Mark Rowe <mrowe@apple.com> + + Stop copying IDL files in to the WebCore framework wrapper. + + * WebCore.xcodeproj/project.pbxproj: + +2009-12-01 Mark Rowe <mrowe@apple.com> + + Fix the Tiger build by making the Xcode project compatible with Xcode 2.4. + + This was probably broken by hand-editing the project file as Xcode itself + knows how to keep project files to a backwards-compatible subset of its format. + + * WebCore.xcodeproj/project.pbxproj: + +2009-12-01 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: windows build fix (bad vcproj in r51528). + + * WebCore.vcproj/WebCore.vcproj: + +2009-11-27 Pavel Feldman <pfeldman@dhcp-172-28-174-220.spb.corp.google.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Split InspectorBackend into three parts: backend, + injected script host and frontend host. + + https://bugs.webkit.org/show_bug.cgi?id=31888 + + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * WebCoreSources.bkl: + * bindings/js/JSBindingsAllInOne.cpp: + * bindings/js/JSInspectorBackendCustom.cpp: Removed. + * bindings/js/JSInspectorFrontendHostCustom.cpp: Added. + (WebCore::JSInspectorFrontendHost::search): + (WebCore::JSInspectorFrontendHost::setting): + (WebCore::JSInspectorFrontendHost::setSetting): + * bindings/js/ScriptObject.cpp: + (WebCore::ScriptGlobalObject::set): + * bindings/js/ScriptObject.h: + * bindings/v8/DOMObjectsInclude.h: + * bindings/v8/DerivedSourcesAllInOne.cpp: + * bindings/v8/ScriptObject.cpp: + (WebCore::ScriptGlobalObject::set): + * bindings/v8/ScriptObject.h: + * bindings/v8/V8Index.cpp: + * bindings/v8/V8Index.h: + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8InjectedScriptHostCustom.cpp: Added. + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8InspectorBackendCustom.cpp: Removed. + * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp: Added. + (WebCore::CALLBACK_FUNC_DECL): + * inspector/InjectedScriptHost.cpp: Added. + (WebCore::InjectedScriptHost::InjectedScriptHost): + (WebCore::InjectedScriptHost::~InjectedScriptHost): + (WebCore::InjectedScriptHost::copyText): + (WebCore::InjectedScriptHost::nodeForId): + (WebCore::InjectedScriptHost::wrapObject): + (WebCore::InjectedScriptHost::unwrapObject): + (WebCore::InjectedScriptHost::pushNodePathToFrontend): + (WebCore::InjectedScriptHost::addNodesToSearchResult): + (WebCore::InjectedScriptHost::currentCallFrame): + (WebCore::InjectedScriptHost::databaseForId): + (WebCore::InjectedScriptHost::selectDatabase): + (WebCore::InjectedScriptHost::selectDOMStorage): + (WebCore::InjectedScriptHost::reportDidDispatchOnInjectedScript): + (WebCore::InjectedScriptHost::inspectorDOMAgent): + (WebCore::InjectedScriptHost::inspectorFrontend): + * inspector/InjectedScriptHost.h: Added. + (WebCore::InjectedScriptHost::create): + (WebCore::InjectedScriptHost::inspectorController): + (WebCore::InjectedScriptHost::disconnectController): + * inspector/InjectedScriptHost.idl: Added. + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::InspectorBackend): + (WebCore::InspectorBackend::storeLastActivePanel): + (WebCore::InspectorBackend::toggleNodeSearch): + (WebCore::InspectorBackend::resourceTrackingEnabled): + (WebCore::InspectorBackend::debuggerEnabled): + (WebCore::InspectorBackend::enableDebugger): + (WebCore::InspectorBackend::disableDebugger): + (WebCore::InspectorBackend::addBreakpoint): + (WebCore::InspectorBackend::updateBreakpoint): + (WebCore::InspectorBackend::removeBreakpoint): + (WebCore::InspectorBackend::pauseInDebugger): + (WebCore::InspectorBackend::resumeDebugger): + (WebCore::InspectorBackend::stepOverStatementInDebugger): + (WebCore::InspectorBackend::stepIntoStatementInDebugger): + (WebCore::InspectorBackend::stepOutOfFunctionInDebugger): + (WebCore::InspectorBackend::pauseOnExceptions): + (WebCore::InspectorBackend::setPauseOnExceptions): + (WebCore::InspectorBackend::profilerEnabled): + (WebCore::InspectorBackend::enableProfiler): + (WebCore::InspectorBackend::disableProfiler): + (WebCore::InspectorBackend::startProfiling): + (WebCore::InspectorBackend::stopProfiling): + (WebCore::InspectorBackend::getProfileHeaders): + (WebCore::InspectorBackend::getProfile): + (WebCore::InspectorBackend::currentCallFrame): + (WebCore::InspectorBackend::highlightDOMNode): + (WebCore::InspectorBackend::hideDOMNodeHighlight): + (WebCore::InspectorBackend::getCookies): + (WebCore::InspectorBackend::deleteCookie): + (WebCore::InspectorBackend::didEvaluateForTestInFrontend): + (WebCore::InspectorBackend::nodeForId): + * inspector/InspectorBackend.h: + (WebCore::InspectorBackend::create): + * inspector/InspectorBackend.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::InspectorController): + (WebCore::InspectorController::~InspectorController): + (WebCore::InspectorController::inspectedPageDestroyed): + (WebCore::InspectorController::windowScriptObjectAvailable): + * inspector/InspectorController.h: + (WebCore::InspectorController::inspectorFrontendHost): + (WebCore::InspectorController::injectedScriptHost): + * inspector/InspectorFrontendHost.cpp: Added. + (WebCore::InspectorFrontendHost::InspectorFrontendHost): + (WebCore::InspectorFrontendHost::~InspectorFrontendHost): + (WebCore::InspectorFrontendHost::loaded): + (WebCore::InspectorFrontendHost::attach): + (WebCore::InspectorFrontendHost::detach): + (WebCore::InspectorFrontendHost::closeWindow): + (WebCore::InspectorFrontendHost::windowUnloading): + (WebCore::InspectorFrontendHost::setAttachedWindowHeight): + (WebCore::InspectorFrontendHost::moveWindowBy): + (WebCore::InspectorFrontendHost::localizedStringsURL): + (WebCore::InspectorFrontendHost::hiddenPanels): + (WebCore::InspectorFrontendHost::platform): + (WebCore::InspectorFrontendHost::port): + (WebCore::InspectorFrontendHost::addResourceSourceToFrame): + (WebCore::InspectorFrontendHost::addSourceToFrame): + * inspector/InspectorFrontendHost.h: Added. + (WebCore::InspectorFrontendHost::create): + (WebCore::InspectorFrontendHost::inspectorController): + (WebCore::InspectorFrontendHost::disconnectController): + * inspector/InspectorFrontendHost.idl: Added. + * inspector/front-end/Breakpoint.js: + (WebInspector.Breakpoint.prototype.set condition): + * inspector/front-end/BreakpointsSidebarPane.js: + (WebInspector.BreakpointsSidebarPane.prototype.addBreakpoint): + (WebInspector.BreakpointsSidebarPane.prototype.removeBreakpoint): + (WebInspector.BreakpointsSidebarPane.prototype._breakpointEnableChanged): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype.clearMessages): + * inspector/front-end/CookieItemsView.js: + (WebInspector.CookieItemsView.prototype._deleteCookieCallback): + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMAgent.prototype.getChildNodesAsync): + (WebInspector.DOMAgent.prototype.setAttributeAsync): + (WebInspector.DOMAgent.prototype.removeAttributeAsync): + (WebInspector.DOMAgent.prototype.setTextNodeValueAsync): + (WebInspector.Cookies.getCookiesAsync): + (WebInspector.EventListeners.getEventListenersForNodeAsync): + * inspector/front-end/DOMStorage.js: + (WebInspector.DOMStorage.prototype.getEntries): + (WebInspector.DOMStorage.prototype.setItem): + (WebInspector.DOMStorage.prototype.removeItem): + * inspector/front-end/Database.js: + (WebInspector.Database.prototype.getTableNames): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.this.treeOutline.focusedNodeChanged): + (WebInspector.ElementsPanel.prototype.hide): + (WebInspector.ElementsPanel.prototype.reset): + (WebInspector.ElementsPanel.prototype.handleCopyEvent): + (WebInspector.ElementsPanel.prototype._nodeSearchButtonClicked): + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode.restoreHighlightToHoveredNode): + (WebInspector.ElementsTreeOutline.prototype.set focusedDOMNode): + (): + * inspector/front-end/EventListenersSidebarPane.js: + (WebInspector.EventListenersSidebarPane.prototype): + * inspector/front-end/InjectedScript.js: + (InjectedScript._evaluateAndWrap): + (InjectedScript.performSearch.addNodesToResults): + (InjectedScript.getCallFrames): + (InjectedScript._callFrameForId): + (InjectedScript._clearConsoleMessages): + (InjectedScript._inspectObject): + (InjectedScript._copy): + (InjectedScript._ensureCommandLineAPIInstalled): + (InjectedScript._window): + (InjectedScript._nodeForId): + (InjectedScript._objectForId): + (InjectedScript.pushNodeToFrontend): + (InjectedScript.executeSql): + (InjectedScript.executeSql.errorCallback): + (InjectedScript.executeSql.queryTransaction): + * inspector/front-end/InjectedScriptAccess.js: + (InjectedScriptAccess._installHandler.InjectedScriptAccess.methodName): + (InjectedScriptAccess._installHandler): + * inspector/front-end/InspectorBackendStub.js: Added. + (.WebInspector.InspectorBackendStub): + (.WebInspector.InspectorBackendStub.prototype.wrapCallback): + (.WebInspector.InspectorBackendStub.prototype.platform): + (.WebInspector.InspectorBackendStub.prototype.port): + (.WebInspector.InspectorBackendStub.prototype.closeWindow): + (.WebInspector.InspectorBackendStub.prototype.attach): + (.WebInspector.InspectorBackendStub.prototype.detach): + (.WebInspector.InspectorBackendStub.prototype.storeLastActivePanel): + (.WebInspector.InspectorBackendStub.prototype.clearMessages): + (.WebInspector.InspectorBackendStub.prototype.searchingForNode): + (.WebInspector.InspectorBackendStub.prototype.search): + (.WebInspector.InspectorBackendStub.prototype.toggleNodeSearch): + (.WebInspector.InspectorBackendStub.prototype.setAttachedWindowHeight): + (.WebInspector.InspectorBackendStub.prototype.moveByUnrestricted): + (.WebInspector.InspectorBackendStub.prototype.addResourceSourceToFrame): + (.WebInspector.InspectorBackendStub.prototype.addSourceToFrame): + (.WebInspector.InspectorBackendStub.prototype.getResourceDocumentNode): + (.WebInspector.InspectorBackendStub.prototype.highlightDOMNode): + (.WebInspector.InspectorBackendStub.prototype.hideDOMNodeHighlight): + (.WebInspector.InspectorBackendStub.prototype.inspectedWindow): + (.WebInspector.InspectorBackendStub.prototype.loaded): + (.WebInspector.InspectorBackendStub.prototype.localizedStringsURL): + (.WebInspector.InspectorBackendStub.prototype.windowUnloading): + (.WebInspector.InspectorBackendStub.prototype.hiddenPanels): + (.WebInspector.InspectorBackendStub.prototype.debuggerEnabled): + (.WebInspector.InspectorBackendStub.prototype.enableResourceTracking): + (.WebInspector.InspectorBackendStub.prototype.disableResourceTracking): + (.WebInspector.InspectorBackendStub.prototype.resourceTrackingEnabled): + (.WebInspector.InspectorBackendStub.prototype.enableDebugger): + (.WebInspector.InspectorBackendStub.prototype.disableDebugger): + (.WebInspector.InspectorBackendStub.prototype.addBreakpoint): + (.WebInspector.InspectorBackendStub.prototype.removeBreakpoint): + (.WebInspector.InspectorBackendStub.prototype.updateBreakpoint): + (.WebInspector.InspectorBackendStub.prototype.pauseInDebugger): + (.WebInspector.InspectorBackendStub.prototype.pauseOnExceptions): + (.WebInspector.InspectorBackendStub.prototype.setPauseOnExceptions): + (.WebInspector.InspectorBackendStub.prototype.resumeDebugger): + (.WebInspector.InspectorBackendStub.prototype.profilerEnabled): + (.WebInspector.InspectorBackendStub.prototype.enableProfiler): + (.WebInspector.InspectorBackendStub.prototype.disableProfiler): + (.WebInspector.InspectorBackendStub.prototype.startProfiling): + (.WebInspector.InspectorBackendStub.prototype.stopProfiling): + (.WebInspector.InspectorBackendStub.prototype.getProfileHeaders): + (.WebInspector.InspectorBackendStub.prototype.getProfile): + (.WebInspector.InspectorBackendStub.prototype.takeHeapSnapshot): + (.WebInspector.InspectorBackendStub.prototype.databaseTableNames): + (.WebInspector.InspectorBackendStub.prototype.stepIntoStatementInDebugger): + (.WebInspector.InspectorBackendStub.prototype.stepOutOfFunctionInDebugger): + (.WebInspector.InspectorBackendStub.prototype.stepOverStatementInDebugger): + (.WebInspector.InspectorBackendStub.prototype.setSetting): + (.WebInspector.InspectorBackendStub.prototype.dispatchOnInjectedScript): + (.WebInspector.InspectorBackendStub.prototype.releaseWrapperObjectGroup): + (.WebInspector.InspectorBackendStub.prototype.setting): + * inspector/front-end/InspectorControllerStub.js: + * inspector/front-end/InspectorFrontendHostStub.js: Added. + (.WebInspector.InspectorFrontendHostStub): + (.WebInspector.InspectorFrontendHostStub.prototype.platform): + (.WebInspector.InspectorFrontendHostStub.prototype.port): + (.WebInspector.InspectorFrontendHostStub.prototype.closeWindow): + (.WebInspector.InspectorFrontendHostStub.prototype.attach): + (.WebInspector.InspectorFrontendHostStub.prototype.detach): + (.WebInspector.InspectorFrontendHostStub.prototype.search): + (.WebInspector.InspectorFrontendHostStub.prototype.setAttachedWindowHeight): + (.WebInspector.InspectorFrontendHostStub.prototype.moveWindowBy): + (.WebInspector.InspectorFrontendHostStub.prototype.addResourceSourceToFrame): + (.WebInspector.InspectorFrontendHostStub.prototype.addSourceToFrame): + (.WebInspector.InspectorFrontendHostStub.prototype.loaded): + (.WebInspector.InspectorFrontendHostStub.prototype.localizedStringsURL): + (.WebInspector.InspectorFrontendHostStub.prototype.hiddenPanels): + (.WebInspector.InspectorFrontendHostStub.prototype.setSetting): + (.WebInspector.InspectorFrontendHostStub.prototype.setting): + * inspector/front-end/ProfileView.js: + (WebInspector.CPUProfileView): + (WebInspector.CPUProfileType.prototype.buttonClicked): + * inspector/front-end/ProfilesPanel.js: + (WebInspector.ProfilesPanel.prototype._updateInterface): + (WebInspector.ProfilesPanel.prototype._enableProfiling): + (WebInspector.ProfilesPanel.prototype._toggleProfiling): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourcesPanel.prototype.reset): + (WebInspector.ResourcesPanel.prototype._toggleLargerResources): + (WebInspector.ResourcesPanel.prototype._enableResourceTracking): + (WebInspector.ResourcesPanel.prototype._toggleResourceTracking): + * inspector/front-end/ScriptView.js: + (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.show): + (WebInspector.ScriptsPanel.prototype.addScript): + (WebInspector.ScriptsPanel.prototype.attachDebuggerWhenShown): + (WebInspector.ScriptsPanel.prototype.reset): + (WebInspector.ScriptsPanel.prototype.canShowResource): + (WebInspector.ScriptsPanel.prototype._showScriptOrResource): + (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): + (WebInspector.ScriptsPanel.prototype._updatePauseOnExceptionsButton): + (WebInspector.ScriptsPanel.prototype._updateDebuggerButtons): + (WebInspector.ScriptsPanel.prototype._enableDebugging): + (WebInspector.ScriptsPanel.prototype._toggleDebugging): + (WebInspector.ScriptsPanel.prototype._togglePauseOnExceptions): + (WebInspector.ScriptsPanel.prototype._togglePause): + (WebInspector.ScriptsPanel.prototype._stepOverClicked): + (WebInspector.ScriptsPanel.prototype._stepIntoClicked): + (WebInspector.ScriptsPanel.prototype._stepOutClicked): + * inspector/front-end/SourceView.js: + (WebInspector.SourceView.prototype.setupSourceFrameIfNeeded): + (WebInspector.SourceView.prototype.performSearch.findSearchMatches): + (WebInspector.SourceView.prototype.performSearch): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylesSidebarPane.prototype._changeColorFormat): + * inspector/front-end/TestController.js: + (WebInspector.TestController.prototype.notifyDone): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked): + * inspector/front-end/WatchExpressionsSidebarPane.js: + (WebInspector.WatchExpressionsSection.prototype.update): + (WebInspector.WatchExpressionsSection.prototype.loadSavedExpressions): + (WebInspector.WatchExpressionsSection.prototype.saveExpressions): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector.pendingDispatches.0.get platform): + (WebInspector.get port): + (WebInspector.set currentPanel): + (WebInspector._createPanels): + (WebInspector._loadPreferences): + (WebInspector.set attached): + (WebInspector._updateHoverHighlight): + (WebInspector.loaded): + (windowLoaded): + (WebInspector.windowUnload): + (WebInspector.close): + (WebInspector.toolbarDrag): + (WebInspector.UIString): + +2009-11-30 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dan Bernstein. + + css2.1/t1205-c566-list-stl-00-e-ag.html is failing + https://bugs.webkit.org/show_bug.cgi?id=23264 + css2.1/t1205-c565-list-pos-00-b.html is failing + https://bugs.webkit.org/show_bug.cgi?id=23263 + + Ignore whitespaces after list markers. + Rendering of this was already done for the case where inside=false. + This fixes the rendering of inside=true case and calcInlinePrefWidths. + + Test: fast/lists/calc-width-with-space.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::calcInlinePrefWidths): + * rendering/RenderBlockLineLayout.cpp: + (WebCore::RenderBlock::findNextLineBreak): + +2009-11-30 Fumitoshi Ukai <ukai@chromium.org> + + Unreviewed Chromium build fix introduced by r51212 + + Fix scriptStateFromNode and ScriptStateFromPage to take DOMWrapperWorld + as the first argument. + Move mainThreadNormalWorld() to ScriptState.{h,cpp}. + Add debuggerWorld() and pluginWorld() in ScriptState.h. + + * bindings/v8/ScriptController.cpp: + * bindings/v8/ScriptController.h: + * bindings/v8/ScriptState.cpp: + (WebCore::scriptStateFromNode): + (WebCore::scriptStateFromPage): + (WebCore::mainThreadNormalWorld): + * bindings/v8/ScriptState.h: + (WebCore::debuggerWorld): + (WebCore::pluginWorld): + +2009-11-30 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + Can focus but not type into content editable block that contains only non-editable content. + <rdar://problem/5982901> + https://bugs.webkit.org/show_bug.cgi?id=31750 + + The goal is to change the way we choose a visible position + after hit detection, by preferring a visually equivalent editable + position if available. By doing this, it is possible to add content + to an editable block that initially contains only non editable elements. + + Test: editing/selection/mixed-editability-10.html + + * WebCore.base.exp: Changed to match the new signature of downstream + and upstream in the Position class. + * dom/Position.cpp: + (WebCore::Position::atEditingBoundary): Added. + (WebCore::Position::upstream): Modified to allow to cross the boundary + between editable and non editable content if required. + (WebCore::Position::downstream): Modified to allow to cross the boundary + between editable and non editable content if required. + (WebCore::Position::isCandidate): Modified to qualify as candidates positions + that are at the editability boundary. + (WebCore::Position::getInlineBoxAndOffset): Modified to retrieve the inline box + to be used in calculating the caret rectangle. + * dom/Position.h: + (WebCore::Position::): + * dom/PositionIterator.cpp: + (WebCore::PositionIterator::atEditingBoundary): Added. + (WebCore::PositionIterator::isCandidate): Modified to qualify as candidates positions + that are at the editability boundary. + * dom/PositionIterator.h: + * editing/htmlediting.cpp: + (WebCore::firstEditablePositionAfterPositionInRoot): Modified to accept not only + descendants of the editable container, but the container itself. + (WebCore::lastEditablePositionBeforePositionInRoot): Modified to accept not only + descendants of the editable container, but the container itself. + * rendering/RenderObject.cpp: + (WebCore::RenderObject::createVisiblePosition): Added logic to prefer an editable position, + if available. + * rendering/RenderText.cpp: + (WebCore::RenderText::isAllCollapsibleWhitespace): Added. + * rendering/RenderText.h: + +2009-11-30 Kevin Ollivier <kevino@theolliviers.com> + + wx build fix, add header needed for wx build. + + * css/CSSFontFaceSrcValue.cpp: + +2009-11-30 Mark Rowe <mrowe@apple.com> + + Reviewed by David Kilzer. + + <rdar://problem/7424387> WebCore binary missing symbols when built for x86_64 from a machine that cannot run x86_64 binaries + + The check for whether WTF_USE_PLUGIN_HOST_PROCESS is defined occurs under the native architecture of the build machine. + If that is 32-bit then WTF_USE_PLUGIN_HOST_PROCESS will not be defined. We work around this by forcing the check to + be performed against the x86_64 architecture. + + * DerivedSources.make: + +2009-11-30 Beth Dakin <bdakin@apple.com> + + Reviewed by Oliver Hunt. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=32000 Crash in + Safari caused by extreme column-gap and column-width values + -and corresponding- + <rdar://problem/7425433> + + Prevent desiredColumnCount from being less than 1 since it is used + as a divisor. + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::calcColumnWidth): + +2009-11-30 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=31659 + Connection must be closed in case of Web Socket handshake error + + The network connection was closed, but the close event wasn't dispatched. + + Tested by websocket/tests/handshake-error.html, which is un-skipped now. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::platformClose): + Call client didHandle() method. This looks strange in CFNetwork implementation, because + it's the client that asked to close the stream, so it shouldn't need the callback. It makes + more sense in cross-process implementation, because closing is async there. + +2009-11-30 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Geoff Garen. + + Bug 31859 - Make world selection for JSC IsolatedWorlds automagical. + + WebCore presently has to explicitly specify the world before entering into JSC, + which is a little fragile (particularly since property access via a + getter/setter might invoke execution). Instead derive the current world from + the lexical global object. + + Remove the last uses of mainThreadCurrentWorld(), so the world is always obtained via + currentWorld(). Switch this to obtain the world from the ExecsState's lexical global + object instead. Remove the call/construct/evaluate 'InWorld' methods, since these + are no longer necessary. + + * WebCore.base.exp: + * bindings/js/JSCallbackData.cpp: + (WebCore::JSCallbackData::invokeCallback): + * bindings/js/JSCallbackData.h: + (WebCore::JSCallbackData::JSCallbackData): + * bindings/js/JSCustomXPathNSResolver.cpp: + (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI): + * bindings/js/JSDOMBinding.cpp: + (WebCore::currentWorld): + (WebCore::mainThreadNormalWorld): + * bindings/js/JSDOMBinding.h: + (WebCore::WebCoreJSClientData::WebCoreJSClientData): + * bindings/js/JSDOMWindowBase.cpp: + (WebCore::JSDOMWindowBase::updateDocument): + * bindings/js/JSDOMWindowBase.h: + * bindings/js/JSEventListener.cpp: + (WebCore::JSEventListener::handleEvent): + (WebCore::JSEventListener::reportError): + * bindings/js/JSHTMLDocumentCustom.cpp: + (WebCore::JSHTMLDocument::open): + * bindings/js/JSNodeFilterCondition.cpp: + (WebCore::JSNodeFilterCondition::acceptNode): + * bindings/js/JSQuarantinedObjectWrapper.cpp: + (WebCore::JSQuarantinedObjectWrapper::construct): + (WebCore::JSQuarantinedObjectWrapper::call): + * bindings/js/ScheduledAction.cpp: + (WebCore::ScheduledAction::executeFunctionInContext): + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::evaluateInWorld): + (WebCore::ScriptController::initScript): + (WebCore::ScriptController::updateDocument): + * bindings/js/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::call): + (WebCore::ScriptFunctionCall::construct): + * bindings/js/ScriptObjectQuarantine.cpp: + (WebCore::getQuarantinedScriptObject): + * bindings/js/ScriptState.cpp: + (WebCore::scriptStateFromNode): + (WebCore::scriptStateFromPage): + * bindings/js/ScriptState.h: + * bindings/js/WorkerScriptController.cpp: + (WebCore::WorkerScriptController::evaluate): + * bindings/objc/WebScriptObject.mm: + (-[WebScriptObject callWebScriptMethod:withArguments:]): + (-[WebScriptObject evaluateWebScript:]): + * bridge/NP_jsobject.cpp: + (_NPN_InvokeDefault): + (_NPN_Invoke): + (_NPN_Evaluate): + (_NPN_Construct): + * bridge/jni/jni_jsobject.mm: + (JavaJSObject::call): + (JavaJSObject::eval): + * dom/NodeFilter.h: + (WebCore::NodeFilter::acceptNode): + * dom/NodeIterator.h: + (WebCore::NodeIterator::nextNode): + (WebCore::NodeIterator::previousNode): + * dom/TreeWalker.h: + (WebCore::TreeWalker::parentNode): + (WebCore::TreeWalker::firstChild): + (WebCore::TreeWalker::lastChild): + (WebCore::TreeWalker::previousSibling): + (WebCore::TreeWalker::nextSibling): + (WebCore::TreeWalker::previousNode): + (WebCore::TreeWalker::nextNode): + * inspector/InspectorController.cpp: + (WebCore::InspectorController::windowScriptObjectAvailable): + (WebCore::InspectorController::didEvaluateForTestInFrontend): + * inspector/JavaScriptCallFrame.cpp: + (WebCore::JavaScriptCallFrame::evaluate): + +2009-11-30 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Simon Fraser. + + All HTML5 media element events should be regular events + https://bugs.webkit.org/show_bug.cgi?id=30513 + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::selectMediaResource): + (WebCore::HTMLMediaElement::noneSupported): + (WebCore::HTMLMediaElement::mediaEngineError): + (WebCore::HTMLMediaElement::setNetworkState): + (WebCore::HTMLMediaElement::userCancelledLoad): + Call scheduleEvent instead of scheduleProgressEvent. + (WebCore::HTMLMediaElement::progressEventTimerFired): + Call scheduleEvent instead of scheduleProgressEvent. Call renderer->updateFromElement + after scheduling a 'progress' event so the controller will update download + progress indicator. + * html/HTMLMediaElement.h: + Remove scheduleProgressEvent prototype. + +2009-11-30 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Pavel Feldman. + + Web Inspector: Wrong console output for Regexp escape sequence + https://bugs.webkit.org/show_bug.cgi?id=31538 + + Updated inspector/console-format.html + + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.createDividerElement): style issues. + (WebInspector.ConsoleView.createFilterElement): style issues. + (WebInspector.ConsoleView): added _customFormatters table. + (WebInspector.ConsoleView.prototype.updateMessageRepeatCount): style isses. + (WebInspector.ConsoleView.prototype._incrementErrorWarningCount): style issues. + (WebInspector.ConsoleView.prototype._format): simplified delegation to formatter logic. + (WebInspector.ConsoleView.prototype._formatobject): + (WebInspector.ConsoleView.prototype._formatnode): + (WebInspector.ConsoleView.prototype._printArray): + (WebInspector.ConsoleMessage.prototype._format): commented and broke down the algorithm into parts. + (WebInspector.ConsoleMessage.prototype._formatWithSubstitutionString.append): handle substitution string formatting. + (WebInspector.ConsoleMessage.prototype._formatIndividualValue): handling individual value formatting. + (WebInspector.ConsoleCommandResult): + * inspector/front-end/InjectedScript.js: simplified regex formatting. + * inspector/front-end/inspector.js: + (WebInspector.linkifyStringAsFragment): converted new RegExp to literal for performance benefits. + * inspector/front-end/utilities.js: + (Element.prototype.hasStyleClass): update inaccurate comment. + (String.prototype.trimURL): converted new RegExp to literal for performance benefits. + +2009-11-30 Erik Arvidsson <arv@chromium.org> + + Reviewed by Adam Barth. + + Clean up V8 bindings for CSSStyleDeclaration and CSSVariableDeclaration + https://bugs.webkit.org/show_bug.cgi?id=31895 + + No new tests. This is already covered by: + fast/dom/CSSStyleDeclaration/css-computed-style-item.html + fast/dom/CSSStyleDeclaration/css-style-item.html + + * bindings/v8/V8Collection.h: + (WebCore::collectionStringIndexedPropertyGetter): + (WebCore::setCollectionStringIndexedGetter): + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::getTemplate): + +2009-11-30 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Adds include of wtf/StdLibExtras.h for DEFINE_STATIC_LOCAL in V8 ScriptController. + https://bugs.webkit.org/show_bug.cgi?id=31932 + + Build fix only, no new tests. + + * bindings/v8/ScriptController.cpp: Modified. Adds include of wtf/StdLibExtras.h. + +2009-11-30 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Adds PassOwnPtr include to ScriptExecutionContext.h. + https://bugs.webkit.org/show_bug.cgi?id=31929 + + Build fix only, no new tests. + + * dom/ScriptExecutionContext.h: Modified. Adds PassOwnPtr include. + +2009-11-30 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + REGRESSION (r49757): masking-mask-01-b.svg rendered incorrectly + [https://bugs.webkit.org/show_bug.cgi?id=31980] + + It turns out, that we did not handle maskUnits="userSpaceOnUse" + correctly. We just need to move the context of the maskImage + if maskContentUnits="objectBoundingBox". The context gets scaled + on this unit combination, so we have to substract the position of + the targetRect. On userSpaceOnUse the position just depends on the + position of the mask element. + I added a test with some senseless and reasonable values for size + and postion of the mask and it's contents. I also used every + combination of maskUnits and maskContentUnits to be sure, that it + is fixed this time. + + Test: svg/custom/mask-with-all-units.svg + + * svg/SVGMaskElement.cpp: + (WebCore::SVGMaskElement::drawMaskerContent): + +2009-11-30 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent. + https://bugs.webkit.org/show_bug.cgi?id=31928 + + Build fix only, no new tests. + + * page/DOMWindow.cpp: Modified. Adds ENABLE(INSPECTOR) guards around DOMWindow::inspectorTimelineAgent. + +2009-11-30 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Adds SHARED_WORKERS guards to V8 WorkerContextExecutionProxy. + https://bugs.webkit.org/show_bug.cgi?id=31926 + + Build fix only, no new tests. + + * bindings/v8/WorkerContextExecutionProxy.cpp: + (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): + (WebCore::WorkerContextExecutionProxy::convertToV8Object): + (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object): + +2009-11-30 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Chrome::contentsSizeChanged() is called when the content size has not changed + https://bugs.webkit.org/show_bug.cgi?id=31978 + + Do not trigger contentsSizeChaned() is the new size is the same as the old one. + + * page/FrameView.cpp: + (WebCore::FrameView::setContentsSize): + +2009-11-30 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Fix some compiler warnings seen on QtWebKit/Mac + https://bugs.webkit.org/show_bug.cgi?id=31962 + + No new tests as there is no functional change. + + * platform/network/ResourceHandle.h: Make destructor virtual as + after r50772 ResourceHandle has virtual functions. + + * plugins/mac/PluginPackageMac.cpp: + (WebCore::PluginPackage::fetchInfo): Fix typo WTF is a namespace + not a label + + * plugins/mac/PluginViewMac.cpp: + (WebCore::PluginView::setNPWindowIfNeeded): Add l to the format + specifier + +2009-11-30 Xan Lopez <xlopez@igalia.com> + + Reviewed by Gustavo Noronha. + + Add new headers to sources list. + + * GNUmakefile.am: + +2009-11-30 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Holger Freyther. + + [Qt] Mac Plugins : Get context menu to work in QGraphicsView + + Flash expects the value in record.where to be the global position for + displaying the context menu. + + https://bugs.webkit.org/show_bug.cgi?id=31979 + + * plugins/mac/PluginViewMac.cpp: + (WebCore::PluginView::handleMouseEvent): + +2009-11-30 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Adds PLATFORM(CHROMIUM) guards around memory usage code in V8GCController. + https://bugs.webkit.org/show_bug.cgi?id=31925 + + This code uses ChromiumBridge and Chromium-specific constant values not + appropriate for other platforms such as Android. + + Build fix only, no new tests. + + * bindings/v8/V8GCController.cpp: Modified. Adds PLATFORM(CHROMIUM) around Chromium-specific code. + +2009-11-29 Brent Fulgham <bfulgham@webkit.org> + + Build fix. + + Correct draw signature used in ImageCairoWin.cpp. + + * platform/graphics/win/ImageCairoWin.cpp: + (WebCore::BitmapImage::getHBITMAPOfSize): + (WebCore::BitmapImage::drawFrameMatchingSourceSize): + +2009-11-28 Oliver Hunt <oliver@apple.com> + + Reviewed by Sam Weinig. + + postMessage should serialize File objects + https://bugs.webkit.org/show_bug.cgi?id=31955 + + Update SerializedScriptValue to include support for + File objects in the serialized object graph. + + * bindings/js/SerializedScriptValue.cpp: + (WebCore::SerializedScriptValueData::SerializedScriptValueData): + (WebCore::SerializingTreeWalker::convertIfTerminal): + (WebCore::DeserializingTreeWalker::convertIfTerminal): + * bindings/js/SerializedScriptValue.h: + (WebCore::SerializedScriptValueData::): + (WebCore::SerializedScriptValueData::asString): + +2009-11-29 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Optimize the hierarchy rebuilding of compositing layers + https://bugs.webkit.org/show_bug.cgi?id=31879 + + When updating the compositing layer hierarchy, instead of removing all + child layers and then re-adding them one by one, build a vector of child + layers, and set them in one go. + + * platform/graphics/GraphicsLayer.h: + * platform/graphics/GraphicsLayer.cpp: + (WebCore::GraphicsLayer::setChildren): New method that takes a Vector of child + GraphicsLayers. + + * platform/graphics/mac/GraphicsLayerCA.h: Override setChildren(). + * platform/graphics/win/GraphicsLayerCACF.h: Ditto. + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::GraphicsLayerCA::setChildren): Implement setChildren() to + set the bit that notes that sublayers changed. + * platform/graphics/win/GraphicsLayerCACF.cpp: + (WebCore::GraphicsLayerCACF::setChildren): Implement setChildren() to + udpate sublayers, with a note that this is not efficient. + + * rendering/RenderLayerCompositor.h: + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::updateCompositingLayers): + When updating compositing layers, use the faster updateLayerTreeGeometry() if + we know that no layer hierarchy changes are needed, and, at the root, use + the vector returned from rebuildCompositingLayerTree() to attach the root + layer. + (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree): Changed to + collect child layers into Vectors of GraphicsLayers, which can be set as + layer children in one go. + (WebCore::RenderLayerCompositor::updateLayerTreeGeometry): Split out from + rebuildCompositingLayerTree() for simplicity, and called when we just need to + update layer geometry, without doing any reparenting. + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Reviewed by Adam Barth. + + https://bugs.webkit.org/show_bug.cgi?id=31971 + + Updated comment to reflect latest XSSAuditor bindings. + + No functionality was changed. So, no new tests. + + * page/XSSAuditor.h: + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=31969 + + Removes unnecessary #include files. + + No functionality was changed. So, no new tests. + + * css/CSSComputedStyleDeclaration.cpp: Removed include CachedImage.h, and + Pair.h + * css/CSSCursorImageValue.cpp: Removed include RenderStyle.h + * css/CSSFontFaceSrcValue.cpp: Removed include Node.h + * css/CSSFontSelector.cpp: Removed include NodeList.h + * css/CSSGradientValue.cpp: Removed include GraphicsContext.h, ImageBuffer.h + * css/CSSImageValue.cpp: Removed include RenderStyle.h + * css/CSSImportRule.cpp: Removed include MediaList.h + * css/CSSMutableStyleDeclaration.cpp: Removed include CSSProperty.h + * css/CSSRule.cpp: Removed include CSSStyleSheet.h + * css/CSSStyleSelector.cpp: Removed include CSSFontFace.h, + CSSFontFaceSource.h, and CSSProperty.h + * page/EventSource.h: Removed include EventListener.h + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=31965 + + Removed #include KeyframeList.h from CSSStyleSelector.h. Instead, + forward declared it. + + As a side effect, we need to #include KeyframeList.h in + RenderLayerBacking.cpp. + + No functionality was changed. So, no new tests. + + * css/CSSStyleSelector.cpp: + * css/CSSStyleSelector.h: Removed #include KeyframeList.h + * rendering/RenderLayerBacking.cpp: Added #include KeyframeList.h + +2009-11-29 Shu Chang <Chang.Shu@nokia.com> + + Reviewed by Eric Seidel. + + Continue to search for matching node in the case where multiple nodes + have the same id. + https://bugs.webkit.org/show_bug.cgi?id=31428 + + Test: fast/dom/Element/id-in-node-list-index01.html + + * dom/DynamicNodeList.cpp: + (WebCore::DynamicNodeList::itemWithName): + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=31966 + + Removed #include RenderStyle.h from file KeyframeAnimation.h. Instead, + forward declared it. + + No functionality was changed. So, no new tests. + + * page/animation/KeyframeAnimation.cpp: + * page/animation/KeyframeAnimation.h: + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Unreviewed, fix change log entry date. + + For some reason, bugzilla-tool did not update the date in the change + log entry for my last commit (r51468). So, this commit fixes the date + of that entry. + +2009-11-29 Daniel Bates <dbates@webkit.org> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=31964 + + Removed #include StringImpl, StyleImage. Instead, forward declared them. + Also, we can substitute #include <wtf/PassRefPtr.h> for #include PlatformString.h, + since it seems we only really used it to include PassRefPtr.h. + + No functionality was changed. So, no new tests. + + * rendering/style/ContentData.h: + +2009-11-29 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for classes of the rendering and storage directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31906 + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and no need to be copyable: + + class/struct name - instantiated at: WebCore/'location' + + class SQLTransactionClient - storage/DatabaseThread.cpp:45 + class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46 + class OriginUsageRecord - storage/OriginQuotaManager.cpp:66 + class DatabaseTracker - storage/DatabaseTracker.cpp:62 + class ScrollbarTheme - (its child class) rendering/RenderScrollbarTheme.cpp:35 + class RenderSelectionInfoBase - (its child class) rendering/RenderView.cpp:310 + class RenderOverflow - rendering/RenderBox.cpp:2846 + + Inherits the following classes from FastAllocBase because these are instantiated by 'new': + + struct FillLayer - css/CSSStyleSelector.cpp:197 + struct ShadowData - rendering/style/ShadowData.cpp:35 + class CounterContent - css/CSSStyleSelector.cpp:4111 + + * platform/ScrollbarTheme.h: + * rendering/RenderOverflow.h: + * rendering/RenderSelectionInfo.h: + * rendering/style/CounterContent.h: + * rendering/style/FillLayer.h: + * rendering/style/ShadowData.h: + * storage/DatabaseTracker.h: + * storage/OriginUsageRecord.h: + * storage/SQLTransactionClient.h: + * storage/SQLTransactionCoordinator.h: + +2009-11-28 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + [Chromium] Sify compose button alerts error + https://bugs.webkit.org/show_bug.cgi?id=31394 + + Test: http/tests/security/calling-versus-current.html + + We're supposed to use the calling context for security checks. In JSC + land, this is the lexicalGlobalObject. + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::canAccessPrivate): + +2009-11-27 Shinichiro Hamaji <hamaji@chromium.org> + + Unreviewed Chromium build fix introduced by r51428. + + [Chromium] Ignore line-height CSS property for PushButton + https://bugs.webkit.org/show_bug.cgi?id=31712 + + * rendering/RenderThemeChromiumSkia.cpp: + (WebCore::RenderThemeChromiumSkia::adjustButtonStyle): + +2009-11-27 Shinichiro Hamaji <hamaji@chromium.org> + + Unreviewed Chromium test fix by reverting r51413. + + [v8] Do not check the thread when accessing DOMDataStore + https://bugs.webkit.org/show_bug.cgi?id=31877 + + * bindings/v8/V8DOMMap.cpp: + (WebCore::getDOMNodeMap): + (WebCore::getDOMObjectMap): + (WebCore::getActiveDOMObjectMap): + (WebCore::getDOMSVGElementInstanceMap): + (WebCore::getDOMSVGObjectWithContextMap): + +2009-11-27 Daniel Bates <dbates@webkit.org> + + Unreviewed, comment fix. + + Corrected misspelling of the word "implemented". + + * inspector/front-end/InjectedScriptAccess.js: + +2009-11-27 Daniel Bates <dbates@webkit.org> + + Reviewed by Adam Barth. + + https://bugs.webkit.org/show_bug.cgi?id=31940 + + Makes the error messages more descriptive when we refuse to load an object/embed or + refuse to load from the document base URL. + + * page/XSSAuditor.cpp: + (WebCore::XSSAuditor::canLoadObject): Changed console message to be more descriptive. + (WebCore::XSSAuditor::canSetBaseElementURL): Ditto. + +2009-11-27 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + This is a WebCore part of the fix that allows to view plugin + resources loaded by plugins. + + https://bugs.webkit.org/show_bug.cgi?id=31832 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::willSendRequest): + (WebCore::InspectorController::didReceiveResponse): + (WebCore::InspectorController::didReceiveContentLength): + (WebCore::InspectorController::didFinishLoading): + (WebCore::InspectorController::didFailLoading): + * inspector/InspectorController.h: + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::addLength): + * loader/ResourceLoadNotifier.cpp: + (WebCore::ResourceLoadNotifier::didFailToLoad): + (WebCore::ResourceLoadNotifier::dispatchWillSendRequest): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength): + (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): + +2009-11-27 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Instead of generating negative identifiers for cached resources in + InspectorController and extending identifier type from 'unsigned long' to 'long + long' reuse progress tracker from the inspected page to generate those + identifiers. It guarantees that InspectorResources have unique ids since + all of them are generated by that progress tracker. + + Added a couple new overloaded methods to Script* objects that accept + long and unsigned long arguments. These types of argumens have already + been passed as long long. + + https://bugs.webkit.org/show_bug.cgi?id=31921 + + * bindings/js/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::appendArgument): + * bindings/js/ScriptFunctionCall.h: + * bindings/js/ScriptObject.cpp: + (WebCore::ScriptObject::set): + * bindings/js/ScriptObject.h: + * bindings/v8/ScriptFunctionCall.cpp: + (WebCore::ScriptFunctionCall::appendArgument): + * bindings/v8/ScriptFunctionCall.h: + * bindings/v8/ScriptObject.cpp: + (WebCore::ScriptObject::set): + * bindings/v8/ScriptObject.h: + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::dispatchOnInjectedScript): + * inspector/InspectorController.cpp: + (WebCore::InspectorController::InspectorController): + (WebCore::InspectorController::getTrackedResource): + (WebCore::InspectorController::didLoadResourceFromMemoryCache): Use inspected page's ProgressTracker to generate unique identifiers for cached resources in InspectorController. + * inspector/InspectorController.h: + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::buildObjectForNode): + (WebCore::InspectorDOMAgent::buildObjectForEventListener): + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::addResource): + (WebCore::InspectorFrontend::updateResource): + (WebCore::InspectorFrontend::removeResource): + (WebCore::InspectorFrontend::updateFocusedNode): + * inspector/InspectorFrontend.h: + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::InspectorResource): + (WebCore::InspectorResource::createCached): + * inspector/InspectorResource.h: Change InspectorResource identifier type from 'long long' to 'unsigned long'. + (WebCore::InspectorResource::create): + (WebCore::InspectorResource::identifier): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createResourceSendRequestRecord): + (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord): + (WebCore::TimelineRecordFactory::createResourceFinishRecord): + +2009-11-26 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dan Bernstein. + + Assertion failure in RenderBlock::positionForPointWithInlineChildren when running fast/inline/relative-positioned-overflow.html + https://bugs.webkit.org/show_bug.cgi?id=29966 + + When an empty inline element is clicked, the root inline box has + no leaf children. Use the renderer of a normal child instead. + + This change resolves Windows port's assertion failure in a layout test. + Also, this fixes the behavior when a user drags the mouse from an + empty inline element to above texts. + + Test: editing/selection/last-empty-inline.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::positionForPointWithInlineChildren): + +2009-11-26 Kent Tamura <tkent@chromium.org> + + Reviewed by Eric Seidel. + + [Chromium] Ignore line-height CSS property specified to push buttons on + Windows and Linux. + https://bugs.webkit.org/show_bug.cgi?id=31712 + + LayoutTests/fast/forms/control-restrict-line-height.html checks that the + following controls should ignore line-height CSS property. + - <select> + - <input type=button> + - <input type=search> + This change addresses the <input type=button> issue with Chromium/Windows + and Chromium/Linux. + + * rendering/RenderThemeChromiumSkia.cpp: Implement adjustButtonStyle() to ignore line-height. + * rendering/RenderThemeChromiumSkia.h: Declare adjustButtonStyle(). + +2009-11-26 Kinuko Yasuda <kinuko@chromium.com> + + Reviewed by Eric Seidel. + + Remove the special charset meta tag in the clipboard so that + copy-and-paste with interchange breaklines/spaces works correctly + within WebKit. + + No new tests. Layout tests that involve copy-and-paste with + interchange breaklines (like editing/pasteboard/paste-line-endings-00?) + should pass on Mac/Chromium with this fix. + + * platform/chromium/ClipboardChromium.cpp: + * platform/chromium/PasteboardChromium.cpp: + (WebCore::Pasteboard::documentFragment): + +2009-11-26 İsmail Dönmez <ismail@namtrac.org> + + Reviewed by Eric Seidel. + + Compile with QT_NO_WHEELEVENT defined. + + * platform/qt/WheelEventQt.cpp: + (WebCore::PlatformWheelEvent::applyDelta): + +2009-11-26 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Oliver Hunt. + + Move GOwnPtr* from wtf to wtf/gtk + https://bugs.webkit.org/show_bug.cgi?id=31793 + + No new tests as there is no functional change. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: Change the + path for GOwnPtr.h. + * platform/text/TextEncoding.cpp: Ditto. + * platform/text/gtk/TextCodecGtk.cpp: Ditto. + +2009-11-26 Yury Semikhatsky <yurys@chromium.org> + + Not reviewed. Build fix: revert r51421. + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::willSendRequest): + (WebCore::InspectorController::didReceiveResponse): + (WebCore::InspectorController::didReceiveContentLength): + (WebCore::InspectorController::didFinishLoading): + (WebCore::InspectorController::didFailLoading): + * inspector/InspectorController.h: + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::addLength): + * loader/ResourceLoadNotifier.cpp: + (WebCore::ResourceLoadNotifier::didFailToLoad): + (WebCore::ResourceLoadNotifier::dispatchWillSendRequest): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength): + (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): + +2009-11-26 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + This is a WebCore part of the fix that allows to view plugin + resources loaded by plugins. + + https://bugs.webkit.org/show_bug.cgi?id=31832 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::willSendRequest): + (WebCore::InspectorController::didReceiveResponse): + (WebCore::InspectorController::didReceiveContentLength): + (WebCore::InspectorController::didFinishLoading): + (WebCore::InspectorController::didFailLoading): + * inspector/InspectorController.h: Remove unused DocumentLoader parameters from inspector methods. + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::addLength): Update loading end time when new data are received. + * loader/ResourceLoadNotifier.cpp: + (WebCore::ResourceLoadNotifier::didFailToLoad): Notify InspectorController about the failure. + (WebCore::ResourceLoadNotifier::dispatchWillSendRequest): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse): + (WebCore::ResourceLoadNotifier::dispatchDidReceiveContentLength): + (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading): + +2009-11-26 Daniel Bates <dbates@webkit.org> + + Reviewed by Pavel Feldman. + + https://bugs.webkit.org/show_bug.cgi?id=21554 + + Implements support for hovering over <img> src to display the height and width of that image + in a tooltip. Displays both the displayable and natural dimensions of the image. + + Test: inspector/elements-img-tooltip.html + + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype.createTooltipForImageNode): Added. + (WebInspector.ElementsTreeElement.prototype._updateTitle.callback): + (WebInspector.ElementsTreeElement.prototype._updateTitle): + (WebInspector.ElementsTreeElement.prototype._nodeTitleInfo): + * inspector/front-end/ObjectProxy.js: + (WebInspector.ObjectProxy.getPropertiesAsync): Added. + * inspector/front-end/inspector.js: + (WebInspector.linkifyURLAsNode): Added tooltipText argument. + (WebInspector.linkifyURL): Ditto. + +2009-11-26 Kevin Ollivier <kevino@theolliviers.com> + + wx build fix after drawPattern API change. + + * platform/graphics/wx/ImageWx.cpp: + (WebCore::Image::drawPattern): + +2009-11-26 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth. + + Use an internal field instead of hidden property to speedup lookup + of entered isolated world. + + Plus some inlinings. + https://bugs.webkit.org/show_bug.cgi?id=31884 + + Covered by layout tests + manual running of some benchmarks as + content scripts. + + * bindings/v8/V8DOMWrapper.cpp: + * bindings/v8/V8DOMWrapper.h: + (WebCore::V8DOMWrapper::setDOMWrapper): + * bindings/v8/V8HiddenPropertyName.h: + * bindings/v8/V8IsolatedWorld.cpp: + (WebCore::V8IsolatedWorld::V8IsolatedWorld): + * bindings/v8/V8IsolatedWorld.h: + (WebCore::V8IsolatedWorld::getEntered): + (WebCore::V8IsolatedWorld::getGlobalObject): + * bindings/v8/custom/V8CustomBinding.h: + +2009-11-26 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Corrects build break on Windows. + + Rename platform/text/qt/TextBoundaries.cpp to TextBoundariesQt.cpp since + platform/text/TextBoundaries.cpp was compiled instead when compiling with nmake. + + * WebCore.pro: + * platform/text/qt/TextBoundariesQt.cpp: Renamed from WebCore/platform/text/qt/TextBoundaries.cpp. + (WebCore::findNextWordFromIndex): + (WebCore::findWordBoundary): + +2009-11-26 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth. + + Do not check if the thread is main or not when accessing DOMDataStore as currently in Chromium WebKit is used in main thread only. + https://bugs.webkit.org/show_bug.cgi?id=31877 + + Covered by layout tests and buildbots. + + * bindings/v8/V8DOMMap.cpp: + (WebCore::getDOMNodeMap): + (WebCore::getDOMObjectMap): + (WebCore::getActiveDOMObjectMap): + (WebCore::getDOMSVGElementInstanceMap): + (WebCore::getDOMSVGObjectWithContextMap): + +2009-11-26 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Holger Freyther. + + [Qt] Mac Plugins : Pass mouse position relative to the fake window + + When using off-screen rendering, we need to pass mouse events relative + to the fake window instead of the global position. + + https://bugs.webkit.org/show_bug.cgi?id=31794 + + * plugins/mac/PluginViewMac.cpp: + (WebCore::PluginView::platformStart): + (WebCore::PluginView::handleMouseEvent): + +2009-11-24 Holger Hans Peter Freyther <zecke@selfish.org> + + Reviewed by Eric Seidel. + + [Qt] Use QNetworkReply::rawHeaderPairs + https://bugs.webkit.org/show_bug.cgi?id=31826 + + The QNetworkReply is internally storing the HTTP headers + as a list of pairs. Currently we have to ask the QNetworkReply + to put all header names into a QStringList. Afterwards we will + iterate over this QStringList and ask the QNetworkReply to + give us the value for this header name. The current Qt implementation + is doing a linear to find the header value. + + Use a new API to directly access the list of pairs and push + this into WebCore. This avoids doing some allocations and doing + linear searches from within a loop. + + * platform/network/qt/QNetworkReplyHandler.cpp: + (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): + +2009-11-21 Holger Hans Peter Freyther <zecke@selfish.org> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Add Qt specific information of RenderPart + https://bugs.webkit.org/show_bug.cgi?id=31203 + + The WebCore::Widget of the RenderPart (RenderWidget) might be + backed with a platform widget. Print both the WebCore::Widget + and platform widget state. In the above bug we had a problem + that the WebCore::Widget was invisible but the QWidget was + visible. + + * rendering/RenderTreeAsText.cpp: + (WebCore::operator<<): Add special case for RenderPart + +2009-11-17 Holger Hans Peter Freyther <zecke@selfish.org> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Call Widget::setSelfVisible from hide/show + https://bugs.webkit.org/show_bug.cgi?id=31203 + + Call Widget::setSelfVisible from Widget::show and + Widget::hide and use isParentVisible to decide + if the widget should be shown. This way client + code can rely on isVisible. + + Change PluginViewQt::show, PluginViewQt::hide to + call the base class as it is doing the right thing + now. Add an assert verify that platfomWidget and + platformPluginWidget are the same. + + * manual-tests/qt/qtplugin.html: Modify manual test + * platform/qt/WidgetQt.cpp: + (WebCore::Widget::show): + (WebCore::Widget::hide): + * plugins/qt/PluginViewQt.cpp: + (WebCore::PluginView::show): + (WebCore::PluginView::hide): + +2009-11-24 Holger Hans Peter Freyther <zecke@selfish.org> + + Reviewed by Alexey Proskuryakov. + + Fix compilation of REQUEST_DEBUG debug code + https://bugs.webkit.org/show_bug.cgi?id=31850 + + In r47907 the single parameter KURL constructor to parse + from a WebCore::String was replaced with a two parameter + constructor. I think in this debug case parsing the urls + again is no problem and I have changed the code to use the + two parameter version. + + * loader/loader.cpp: + (WebCore::Loader::Host::didFinishLoading): + +2009-11-26 Søren Gjesse <sgjesse@chromium.org> + + Reviewed by Pavel Feldman. + + [V8] Avoid using JavaScript objects as context data + https://bugs.webkit.org/show_bug.cgi?id=31873 + + Change the context "data" from a JavaScript object holding the two properties type and value to + a string holding type and value separated by a comma. + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::setInjectedScriptContextDebugId): + (WebCore::V8Proxy::setContextDebugId): + (WebCore::V8Proxy::contextDebugId): + +2009-11-25 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by David Levin. + + [Chromium] Implement canSetValueAttribute in the API, the clean-up part. + https://bugs.webkit.org/show_bug.cgi?id=31894 + + * accessibility/chromium/AccessibilityObjectWrapper.h: Added RefCounted decl. + (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper): Removed mis-refcountingness. + +2009-11-25 Kenneth Russell <kbr@google.com> + + Reviewed by Oliver Hunt. + + Off-by-one error in index validation for drawElements and drawArrays + https://bugs.webkit.org/show_bug.cgi?id=31891 + + Fixed computation of number of elements for bound array objects. + + Test: fast/canvas/webgl/index-validation.html + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::vertexAttribPointer): + +2009-11-25 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin. + + Update SharedScript to use eventNames() instead of EventNames() + https://bugs.webkit.org/show_bug.cgi?id=31890 + + * SharedScript/WebKitSharedScript.cpp: + (WebCore::LoadEventTask::performTask): + +2009-11-25 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Simon Fraser. + + <rdar://problem/7409331> Windows: Support closed caption in <video> element + + Enable closed captions in QuickTime/Windows media engine. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + (WebCore::MediaPlayerPrivate::hasClosedCaptions): + (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible): + New, all through to m_qtMovie. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: + Make all but the destructor private since MediaPlayer call through the media + engine interface. + + * platform/graphics/win/QTMovieWin.cpp: + (QTMovieWin::disableUnsupportedTracks): + Use handy new constants for QuickTime track types. + (QTMovieWin::hasClosedCaptions): + (QTMovieWin::setClosedCaptionsVisible): + New, closed caption support. + * platform/graphics/win/QTMovieWin.h: + + * rendering/RenderMediaControls.cpp: + (WebCore::RenderMediaControls::paintMediaControlsPart): + Deal with closed caption buttons. + + * rendering/RenderThemeWin.cpp: + (WebCore::RenderThemeWin::shouldRenderMediaControlPart): + New, don't ask the media engine if it has closed captions unless the Safari theme will + be able to render the button. + (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton): + New. + * rendering/RenderThemeWin.h: + +2009-11-25 Drew Wilson <atwilson@chromium.org> + + Reviewed by David Levin. + + MessagePorts always look remotely entangled even when closed. + https://bugs.webkit.org/show_bug.cgi?id=31698 + + Tests: Existing tests suffice, Chromium soak test passes now. + + * bindings/v8/custom/V8CustomBinding.h: + Removed kMessagePortEntangledPortIndex which is no longer used. + * bindings/v8/V8GCController.cpp: + (WebCore::GCPrologueVisitor::visitDOMWrapper): + Simplified GC code to reflect the Chromium MessagePort implementation + (locallyEntangledPort() always returns false). + (WebCore::GCEpilogueVisitor::visitDOMWrapper): + Cleaned up epilogue code to handle the case where the port gets closed + in mid-GC (due to the parent context being freed). + * dom/MessagePort.cpp: + (WebCore::MessagePort::MessagePort): + (WebCore::MessagePort::close): + Now sets the closed flag. + (WebCore::MessagePort::disentanglePorts): + Updated to use new isCloned() API instead of relying on isEntangled(), which was incorrect. + * dom/MessagePort.h: + Added a m_closed flag and updated isEntangled() to check it. + (WebCore::MessagePort::isEntangled): + Now returns false if the port has been closed. + (WebCore::MessagePort::isCloned): + Added new API to differentiate between cloned and closed ports (closed ports can still be passed to postMessage). + +2009-11-25 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Fix crash of QtWebKit on any page with Flash when compiled with MinGW. + + Fix inline assembly, don't dereference the function pointer twice. + + * plugins/win/PluginViewWin.cpp: + (WebCore::PluginView::hookedBeginPaint): + (WebCore::PluginView::hookedEndPaint): + +2009-11-22 Jakub Wieczorek <faw217@gmail.com> + + Reviewed by Adam Barth. + + [Qt] Remove the Referer header when redirecting to a non-secure site + https://bugs.webkit.org/show_bug.cgi?id=31785 + + This makes Qt pass two tests introduced in r50226. + + * platform/network/qt/QNetworkReplyHandler.cpp: + (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): + +2009-11-25 Andrei Popescu <andreip@google.com> + + Reviewed by Dimitri Glazkov. + + The select elements do not reflect the actual choice the user makes. + https://bugs.webkit.org/show_bug.cgi?id=31831 + + Handle the drawing of the listboxes in Android code. + + No new features, just fixing an Android problem. Existing layout tests are sufficient. + + * platform/android/RenderThemeAndroid.cpp: + (WebCore::theme): + (WebCore::RenderThemeAndroid::platformActiveSelectionBackgroundColor): + (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionBackgroundColor): + (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionBackgroundColor): + (WebCore::RenderThemeAndroid::platformActiveListBoxSelectionForegroundColor): + (WebCore::RenderThemeAndroid::platformInactiveListBoxSelectionForegroundColor): + (WebCore::RenderThemeAndroid::adjustButtonStyle): + (WebCore::RenderThemeAndroid::paintTextArea): + (WebCore::RenderThemeAndroid::adjustListboxStyle): + * platform/android/RenderThemeAndroid.h: + +2009-11-25 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Load InspectorResource mime type from CachedResource for 304 responses + + For network libraries that do not merge cache data into 304 ResourceResponses, + the mime type for cached resources is unknown. + https://bugs.webkit.org/show_bug.cgi?id=31868 + + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::updateResponse): + (WebCore::InspectorResource::updateScriptObject): + (WebCore::InspectorResource::type): + +2009-11-25 Andrei Popescu <andreip@google.com> + + Reviewed by Eric Seidel. + + Android is missing implementation of SSL Key generator functions. + https://bugs.webkit.org/show_bug.cgi?id=31825 + + This change adds the PlatformBridge class to platform/android. + PlarformBridge is used to access the embedding layer for things + such as key generator, cookies, plugins, etc. + + No new tests required, this is platform code. + + * platform/android/PlatformBridge.h: Added. + * platform/android/SSLKeyGeneratorAndroid.cpp: Added. + (WebCore::getSupportedKeySizes): + (WebCore::signedPublicKeyAndChallengeString): + +2009-11-25 Philippe Normand <pnormand@igalia.com> + + Reviewed by Eric Seidel. + + [GTK] use gst_init_check() instead of gst_init() + https://bugs.webkit.org/show_bug.cgi?id=31864 + + Use gst_init_check() instead of gst_init() to prevent eventual + unexpected exit of the application. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::do_gst_init): + (WebCore::MediaPlayerPrivate::isAvailable): + +2009-11-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + Some tests are crashing from time to time + https://bugs.webkit.org/show_bug.cgi?id=31866 + + Make sure we do not notify the client of a finished load, if the + load has been cancelled, or the client is gone. + + * platform/network/soup/ResourceHandleSoup.cpp: + (WebCore::): + +2009-11-24 Ben Murdoch <benm@google.com> + + Reviewed by Eric Seidel. + + [Android] Upstream Android changes to WebCore/bridge/jni + https://bugs.webkit.org/show_bug.cgi?id=31824 + + No new tests required as no new functionality. + + * bridge/jni/jni_class.cpp: + (JavaClass::JavaClass): Add calls to delete allocated references, to avoid potential leaks. + * bridge/jni/jni_instance.cpp: Add an Android include path. + * bridge/jni/jni_instance.h: Add getter/setter for JObjectWrapper::_instance and make the JavaInstance ctor and member variables protected. Both needed for the Android port, see bug for discussion. + (JSC::Bindings::JObjectWrapper::instance): Added. + (JSC::Bindings::JObjectWrapper::setInstance): Added. + * bridge/jni/jni_runtime.cpp: + (JavaMethod::JavaMethod): Delete an allocated reference to avoid a potential leak. + * bridge/jni/jni_utility.h: + (JSC::Bindings::callJNIMethodV): Delete an allocated reference to avoid a potential leak. + +2009-11-24 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for classes of the plugins and rendering directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31827 + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and no need to be copyable: + + class/struct name - instantiated at: WebCore/'location' + + class PluginRequest - plugins/PluginView.cpp:521 + class PluginMainThreadScheduler - plugins/PluginMainThreadScheduler.cpp:34 + class PluginDatabase - plugins/PluginDatabase.cpp:50 + struct MimeClassInfo - plugins/PluginInfoStore.cpp:50 + struct PluginInfo - plugins/PluginInfoStore.cpp:40 + class RenderArena - dom/Document.cpp:1401 + class RenderImageScaleData - rendering/RenderImage.cpp:149 + class TableLayout - (its child class) rendering/RenderTable.cpp:82 + struct ColumnInfo - rendering/RenderBlock.cpp:3590 + struct FloatingObject - rendering/RenderBlock.cpp:2300 + struct MaxMargin - rendering/RenderBlock.cpp:4794 + class RenderMarquee - rendering/RenderLayer.cpp:3277 + + * plugins/PluginData.h: + * plugins/PluginDatabase.h: + * plugins/PluginMainThreadScheduler.h: + * plugins/PluginView.h: + * rendering/RenderArena.h: + * rendering/RenderBlock.cpp: + * rendering/RenderBlock.h: + * rendering/RenderImage.cpp: + * rendering/RenderMarquee.h: + * rendering/TableLayout.h: + +2009-11-24 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin. + + Initial implementation of WebKitSharedScript and SharedScriptContext + https://bugs.webkit.org/show_bug.cgi?id=31569 + + No new tests since there are no bindings yet (soon to come). + + * DerivedSources.make: Add WebKitSharedScript and SharedScriptContext to a list of idl files. + * WebCore.xcodeproj/project.pbxproj: + * dom/Document.cpp: + (WebCore::Document::detach): Notify WebKitSharedScriptRepository that document is detaching. + * dom/EventTarget.cpp: Add new casting methods, since the new types are EventTargets. + (WebCore::EventTarget::toWebKitSharedScript): + (WebCore::EventTarget::toSharedScriptContext): + * dom/EventTarget.h: Ditto + * dom/ScriptExecutionContext.h: + (WebCore::ScriptExecutionContext::isSharedScriptContext): New virtual method, since there is a new type of context. + + * SharedScript/SharedScriptContext.cpp: Added. Similar to WorkerContext, but w/o threading. + (WebCore::SharedScriptContext::SharedScriptContext): + (WebCore::SharedScriptContext::~SharedScriptContext): + (WebCore::SharedScriptContext::clearScript): + (WebCore::SharedScriptContext::virtualURL): + (WebCore::SharedScriptContext::virtualCompleteURL): + (WebCore::SharedScriptContext::reportException): + (WebCore::SharedScriptContext::addMessage): + (WebCore::SharedScriptContext::resourceRetrievedByXMLHttpRequest): + (WebCore::SharedScriptContext::scriptImported): + (WebCore::SharedScriptContext::matches): + (WebCore::SharedScriptContext::addToDocumentsList): + (WebCore::SharedScriptContext::destructionTimerFired): + (WebCore::SharedScriptContext::removeFromDocumentList): + (WebCore::SharedScriptContext::load): + (WebCore::SharedScriptContext::postTask): + (WebCore::SharedScriptContext::eventTargetData): + (WebCore::SharedScriptContext::ensureEventTargetData): + (WebCore::SharedScriptContext::scriptExecutionContext): + * SharedScript/SharedScriptContext.h: Added. + (WebCore::SharedScriptContext::create): + (WebCore::SharedScriptContext::isSharedScriptContext): + (WebCore::SharedScriptContext::userAgent): + (WebCore::SharedScriptContext::toSharedScriptContext): + (WebCore::SharedScriptContext::self): + (WebCore::SharedScriptContext::script): + (WebCore::SharedScriptContext::loaded): + (WebCore::SharedScriptContext::name): + (WebCore::SharedScriptContext::refEventTarget): + (WebCore::SharedScriptContext::derefEventTarget): + (WebCore::SharedScriptContext::refScriptExecutionContext): + (WebCore::SharedScriptContext::derefScriptExecutionContext): + * SharedScript/SharedScriptContext.idl: Added. + + * SharedScript/SharedScriptController.h: + Added. Empty implementation of a ScriptController, will come later as part of bindings. Needed to compile. + + * SharedScript/WebKitSharedScript.cpp: Added. EventTarget-based DOM object. + (WebCore::WebKitSharedScript::WebKitSharedScript): + (WebCore::WebKitSharedScript::~WebKitSharedScript): + (WebCore::WebKitSharedScript::setContext): + (WebCore::LoadEventTask::create): Fires asynchronous 'load' event when underlying SharedScriptContext is initialized. + (WebCore::LoadEventTask::performTask): + (WebCore::LoadEventTask::LoadEventTask): + (WebCore::WebKitSharedScript::scheduleLoadEvent): + * SharedScript/WebKitSharedScript.h: Added. + (WebCore::WebKitSharedScript::create): + (WebCore::WebKitSharedScript::scriptExecutionContext): + (WebCore::WebKitSharedScript::toWebKitSharedScript): + (WebCore::WebKitSharedScript::context): + (WebCore::WebKitSharedScript::refEventTarget): + (WebCore::WebKitSharedScript::derefEventTarget): + (WebCore::WebKitSharedScript::eventTargetData): + (WebCore::WebKitSharedScript::ensureEventTargetData): + * SharedScript/WebKitSharedScript.idl: Added. + + * SharedScript/WebKitSharedScriptRepository.cpp: Added. Implements a list of running SharedScriptContexts. + (WebCore::ScriptLoader::ScriptLoader): The helper class to load an initial script of SharedScriptContext. + (WebCore::ScriptLoader::load): + (WebCore::ScriptLoader::notifyFinished): + (WebCore::WebKitSharedScriptRepository::instance): Repository has a static global instance. + (WebCore::WebKitSharedScriptRepository::connect): + (WebCore::WebKitSharedScriptRepository::documentDetached): Called from Document::detach(). + (WebCore::WebKitSharedScriptRepository::removeSharedScriptContext): Called from ~SharedScriptContext(). + (WebCore::WebKitSharedScriptRepository::connectToSharedScript): + (WebCore::WebKitSharedScriptRepository::getSharedScriptContext): + * SharedScript/WebKitSharedScriptRepository.h: Added. + (WebCore::WebKitSharedScriptRepository::WebKitSharedScriptRepository): + +2009-11-24 Dmitry Titov <dimich@chromium.org> + + Reviewed by Eric Seidel. + + Add ENABLE_SHARED_SCRIPT feature define and flag for build-webkit + https://bugs.webkit.org/show_bug.cgi?id=31444 + + * Configurations/FeatureDefines.xcconfig: + * GNUmakefile.am: + * WebCore.pro: + +2009-11-24 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Implement accelerated compositing + https://bugs.webkit.org/show_bug.cgi?id=27314 + + This part of the checkin adds the Windows specific GraphicsLayer support files. + It provides the interface between GraphicsLayer and CACF. It also deals with + the compositing loop, and provides the plumbing to pass the root layer up to + WebView. + + * WebCore.vcproj/WebCore.vcproj: + * WebCore.vcproj/WebCoreCommon.vsprops: + * page/FrameView.cpp: + (WebCore::FrameView::syncCompositingStateRecursive): + * platform/graphics/GraphicsLayer.cpp: + (WebCore::GraphicsLayer::GraphicsLayer): + * platform/graphics/GraphicsLayer.h: + * platform/graphics/win/GraphicsLayerCACF.cpp: Added. + * platform/graphics/win/GraphicsLayerCACF.h: Added. + * platform/graphics/win/WKCACFContextFlusher.cpp: Added. + * platform/graphics/win/WKCACFContextFlusher.h: Added. + * platform/graphics/win/WKCACFContextFlusherWin.cpp: Added. + * platform/graphics/win/WKCACFLayer.cpp: Added. + * platform/graphics/win/WKCACFLayer.h: Added. + * platform/graphics/win/WKCACFLayerWindow.cpp: Added. + * platform/graphics/win/WKCACFLayerWindow.h: Added. + +2009-11-24 Chris Marrin <cmarrin@apple.com> + + Reviewed by Eric Seidel. + + Do error checking of parameter to createShader + https://bugs.webkit.org/show_bug.cgi?id=31808 + + Test: fast/canvas/webgl/invalidPassedParams.html + + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::createShader): + * html/canvas/WebGLRenderingContext.h: + * html/canvas/WebGLRenderingContext.idl: + +2009-11-24 Kent Tamura <tkent@chromium.org> + + Reviewed by Eric Seidel. + + [Chromium] Ignore line-height CSS property specified to a search field on + Windows and Linux. + https://bugs.webkit.org/show_bug.cgi?id=31820 + + LayoutTests/fast/forms/control-restrict-line-height.html checks that the + following controls should ignore line-height CSS property. + - <select> + - <input type=button> + - <input type=search> + This change addresses the <input type=search> issue with Chromium/Windows + and Chromium/Linux. + + * rendering/RenderThemeChromiumSkia.cpp: + (WebCore::RenderThemeChromiumSkia::adjustSearchFieldStyle): Implement this to ignore line-height. + * rendering/RenderThemeChromiumSkia.h: Declare adjustSearchFieldStyle(). + +2009-11-24 Simon Fraser <simon.fraser@apple.com> + + No review. + + Stylistic fix: indent the member var initialisation. + + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::GraphicsLayerCA::GraphicsLayerCA): + +2009-11-24 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Geoff Garen. + + Bug 31848 - Remove uses of mainThreadCurrentWorld, and of currentWorld using a globalData. + + These methods get the world from the global data rather than from an execstate. + If the current world is always read from an exec state then it can be read + from the global object, and world entry can become automagical, rather than + being explicitly set by an EnterDOMWrapperWorld. + + * bindings/js/JSCSSRuleCustom.cpp: + (WebCore::toJS): + * bindings/js/JSCSSValueCustom.cpp: + (WebCore::toJS): + * bindings/js/JSDOMBinding.cpp: + (WebCore::currentWorld): + (WebCore::DOMObjectWrapperMapFor): + (WebCore::hasCachedDOMObjectWrapper): + (WebCore::getCachedDOMObjectWrapper): + (WebCore::cacheDOMObjectWrapper): + (WebCore::hasCachedDOMNodeWrapper): + (WebCore::getCachedDOMNodeWrapper): + (WebCore::cacheDOMNodeWrapper): + * bindings/js/JSDOMBinding.h: + (WebCore::createDOMObjectWrapper): + (WebCore::getDOMObjectWrapper): + (WebCore::createDOMNodeWrapper): + (WebCore::getDOMNodeWrapper): + * bindings/js/JSDOMWindowCustom.cpp: + (WebCore::JSDOMWindow::history): + (WebCore::JSDOMWindow::location): + * bindings/js/JSDocumentCustom.cpp: + (WebCore::JSDocument::location): + (WebCore::toJS): + * bindings/js/JSElementCustom.cpp: + (WebCore::toJSNewlyCreated): + * bindings/js/JSEventCustom.cpp: + (WebCore::toJS): + * bindings/js/JSHTMLCollectionCustom.cpp: + (WebCore::toJS): + * bindings/js/JSImageDataCustom.cpp: + (WebCore::toJS): + * bindings/js/JSNodeCustom.cpp: + (WebCore::JSNode::markChildren): + (WebCore::createWrapper): + (WebCore::toJS): + * bindings/js/JSSVGPathSegCustom.cpp: + (WebCore::toJS): + * bindings/js/JSStyleSheetCustom.cpp: + (WebCore::toJS): + * xml/XMLHttpRequest.cpp: + (WebCore::XMLHttpRequest::dropProtection): + +2009-11-24 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: Also, don't include the wrong one! + +2009-11-24 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: Include the proper WKSI header. + +2009-11-24 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Oliver Hunt. + + SVGUseElement::toClipPath can crash + <rdar://problem/7385270> + + Null-test m_shadowTreeRootElement again, because the call to buildPendingResource() may not + actually initialize it. + + * svg/SVGUseElement.cpp: + (WebCore::SVGUseElement::toClipPath): + +2009-11-24 Simon Fraser <simon.fraser@apple.com> + + Windows build fix. + + * page/win/FrameCGWin.cpp: + (WebCore::imageFromRect): + (WebCore::imageFromSelection): + +2009-11-24 Eric Carlson <eric.carlson@apple.com> + + Not reviewed. Revert r51351 until a new WebKitSupportLibrary is available. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: + * platform/graphics/win/QTMovieWin.cpp: + * platform/graphics/win/QTMovieWin.h: + * rendering/RenderMediaControls.cpp: + * rendering/RenderThemeWin.cpp: + * rendering/RenderThemeWin.h: + +2009-11-24 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Brady Eidson. + + https://bugs.webkit.org/show_bug.cgi?id=31844 + SocketStreamHandleCFNet should support CONNECT proxy credentials + + * WebCore.vcproj/WebCore.vcproj: + * WebCore.xcodeproj/project.pbxproj: + * platform/network/CredentialStorage.h: + * platform/network/mac/CredentialStorageMac.mm: Added. + (WebCore::CredentialStorage::getFromPersistentStorage): + * platform/network/cf/CredentialStorageCFNet.cpp: Added. + (WebCore::CredentialStorage::getFromPersistentStorage): + Add support for fetching credentials from persistent storage (CFNet version is currently + a stub). + + * bindings/js/JSWebSocketCustom.cpp: Removed an unneeded include. + + * platform/network/cf/SocketStreamHandle.h: + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::SocketStreamHandle): + (WebCore::SocketStreamHandle::createStreams): + (WebCore::getStoredCONNECTProxyCredentials): + (WebCore::authenticationSchemeFromAuthenticationMethod): + (WebCore::SocketStreamHandle::addCONNECTCredentials): + (WebCore::SocketStreamHandle::readStreamCallback): + Check if connection attempt was resulted in 407, and try stored credentials if it did. + + * platform/mac/WebCoreSystemInterface.h: + * platform/mac/WebCoreSystemInterface.mm: + * WebCore.base.exp: + Updated WKSI. + +2009-11-24 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Find highlight is drawn incorrectly on pages with compositing layers + <rdar://problem/7413925> + + Part 2: Add a new bit to the PaintBehavior flags, PaintBehaviorFlattenCompositingLayers, + and pass that down when painting into an image. + + When set, it forces painting of compositing layers to go down a software paint path + when all layers are painted, irrespective of compositing status, and where + 3d transforms are flattened to 2d. When doing this, we also need to use temporary + clip rects for layers which are normally composited. + + * page/FrameView.h: + (WebCore::FrameView::paintBehavior): + * page/mac/FrameMac.mm: + (WebCore::Frame::imageFromRect): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::renderableTransform): + (WebCore::expandClipRectForDescendantsAndReflection): + (WebCore::transparencyClipBox): + (WebCore::RenderLayer::beginTransparencyLayers): + (WebCore::RenderLayer::paintLayer): + * rendering/RenderLayer.h: + (WebCore::RenderLayer::paintsWithTransparency): + (WebCore::RenderLayer::paintsWithTransform): + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::calculateCompositedBounds): + * rendering/RenderObject.h: + +2009-11-24 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Find highlight is drawn incorrectly on pages with compositing layers + <rdar://problem/7413925> + + Part 1: Rename PaintRestriction to PaintBehavior, and make it a bitmask, in + preparation for adding a new flag related to painting into an image. + + PaintBehaviorSelectionOnly and PaintBehaviorForceBlackText are now separate flags. + + * page/FrameView.cpp: + (WebCore::FrameView::reset): + (WebCore::FrameView::paintContents): + (WebCore::FrameView::setPaintBehavior): + * page/FrameView.h: + * page/mac/FrameMac.mm: + (WebCore::Frame::selectionImage): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::paint): + (WebCore::RenderLayer::paintLayer): + * rendering/RenderLayer.h: + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::paintIntoLayer): + (WebCore::RenderLayerBacking::paintContents): + * rendering/RenderLayerBacking.h: + * rendering/RenderObject.h: + * rendering/RenderReplica.cpp: + (WebCore::RenderReplica::paint): + +2009-11-24 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Simon Fraser. + + <rdar://problem/7409331> Windows: Support closed caption in <video> element + + Enable closed captions in QuickTime/Windows media engine. + + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.cpp: + (WebCore::MediaPlayerPrivate::hasClosedCaptions): + (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible): + * platform/graphics/win/MediaPlayerPrivateQuickTimeWin.h: + * platform/graphics/win/QTMovieWin.cpp: + (QTMovieWin::hasClosedCaptions): + (QTMovieWin::setClosedCaptionsVisible): + * platform/graphics/win/QTMovieWin.h: + * rendering/RenderMediaControls.cpp: + (WebCore::RenderMediaControls::paintMediaControlsPart): + * rendering/RenderThemeWin.cpp: + (WebCore::RenderThemeWin::paintMediaToggleClosedCaptionsButton): + * rendering/RenderThemeWin.h: + +2009-11-24 Darin Fisher <darin@chromium.org> + + Reviewed by Adam Barth. + + [Chromium] Renderer hang when using www.expedia.com + https://bugs.webkit.org/show_bug.cgi?id=31822 + + Test: http/tests/cache/subresource-failover-to-network.html + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::loadResourceSynchronously): Use the originalRequest + when inheriting cache policy. This matches SubresourceLoader::create. + +2009-11-23 Kenneth Russell <kbr@google.com> + + Reviewed by Oliver Hunt. + + Change get... calls to latest spec + https://bugs.webkit.org/show_bug.cgi?id=30091 + + Removed old versions of get calls on WebGLRenderingContext and + added new ones per spec returning "any". New code simplifies + GraphicsContext3D and fixes previously unimplemented routines. + Added custom JS and V8 bindings. Added exhaustive test case + exercising all new code paths. Updated preexisting test cases for + new APIs. Fixed preexisting bugs in WebKit's and Chrome's WebGL + implementations. + + Ran WebGL layout tests in WebKit (clean) and Chrome (couple of + preexisting known failures) and manual WebGL tests in both + browsers. + + Test: fast/canvas/webgl/gl-object-get-calls.html + + * WebCore.gypi: + * WebCore.xcodeproj/project.pbxproj: + * bindings/js/JSWebGLRenderingContextCustom.cpp: + (WebCore::toJS): + (WebCore::): + (WebCore::getObjectParameter): + (WebCore::getProgramParameterHelper): + (WebCore::JSWebGLRenderingContext::getBufferParameter): + (WebCore::JSWebGLRenderingContext::getFramebufferAttachmentParameter): + (WebCore::JSWebGLRenderingContext::getParameter): + (WebCore::JSWebGLRenderingContext::getProgramParameter): + (WebCore::JSWebGLRenderingContext::getRenderbufferParameter): + (WebCore::JSWebGLRenderingContext::getShaderParameter): + (WebCore::JSWebGLRenderingContext::getTexParameter): + (WebCore::JSWebGLRenderingContext::getUniform): + (WebCore::JSWebGLRenderingContext::getVertexAttrib): + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::toV8): + (WebCore::): + (WebCore::getObjectParameter): + (WebCore::getProgramParameter): + (WebCore::CALLBACK_FUNC_DECL): + * html/canvas/CanvasObject.cpp: + (WebCore::CanvasObject::CanvasObject): + (WebCore::CanvasObject::setObject): + (WebCore::CanvasObject::deleteObject): + * html/canvas/CanvasObject.h: + * html/canvas/WebGLBuffer.cpp: + (WebCore::WebGLBuffer::create): + (WebCore::WebGLBuffer::WebGLBuffer): + * html/canvas/WebGLBuffer.h: + * html/canvas/WebGLGetInfo.cpp: Added. + (WebCore::WebGLGetInfo::WebGLGetInfo): + (WebCore::WebGLGetInfo::~WebGLGetInfo): + (WebCore::WebGLGetInfo::getType): + (WebCore::WebGLGetInfo::getBool): + (WebCore::WebGLGetInfo::getFloat): + (WebCore::WebGLGetInfo::getLong): + (WebCore::WebGLGetInfo::getString): + (WebCore::WebGLGetInfo::getUnsignedLong): + (WebCore::WebGLGetInfo::getWebGLBuffer): + (WebCore::WebGLGetInfo::getWebGLFloatArray): + (WebCore::WebGLGetInfo::getWebGLFramebuffer): + (WebCore::WebGLGetInfo::getWebGLIntArray): + (WebCore::WebGLGetInfo::getWebGLProgram): + (WebCore::WebGLGetInfo::getWebGLRenderbuffer): + (WebCore::WebGLGetInfo::getWebGLTexture): + (WebCore::WebGLGetInfo::getWebGLUnsignedByteArray): + * html/canvas/WebGLGetInfo.h: Added. + (WebCore::WebGLGetInfo::): + * html/canvas/WebGLRenderbuffer.cpp: + (WebCore::WebGLRenderbuffer::create): + (WebCore::WebGLRenderbuffer::WebGLRenderbuffer): + * html/canvas/WebGLRenderbuffer.h: + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLStateRestorer::WebGLStateRestorer): + (WebCore::WebGLStateRestorer::~WebGLStateRestorer): + (WebCore::WebGLRenderingContext::WebGLRenderingContext): + (WebCore::WebGLRenderingContext::activeTexture): + (WebCore::WebGLRenderingContext::bindBuffer): + (WebCore::WebGLRenderingContext::bindFramebuffer): + (WebCore::WebGLRenderingContext::bindRenderbuffer): + (WebCore::WebGLRenderingContext::bindTexture): + (WebCore::WebGLRenderingContext::getBufferParameter): + (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter): + (WebCore::WebGLRenderingContext::getParameter): + (WebCore::WebGLRenderingContext::getProgramParameter): + (WebCore::WebGLRenderingContext::getProgramInfoLog): + (WebCore::WebGLRenderingContext::getRenderbufferParameter): + (WebCore::WebGLRenderingContext::getShaderParameter): + (WebCore::WebGLRenderingContext::getShaderInfoLog): + (WebCore::WebGLRenderingContext::getShaderSource): + (WebCore::WebGLRenderingContext::getString): + (WebCore::WebGLRenderingContext::getTexParameter): + (WebCore::WebGLRenderingContext::getUniform): + (WebCore::WebGLRenderingContext::getVertexAttrib): + (WebCore::WebGLRenderingContext::useProgram): + (WebCore::WebGLRenderingContext::getBooleanParameter): + (WebCore::WebGLRenderingContext::getFloatParameter): + (WebCore::WebGLRenderingContext::getIntParameter): + (WebCore::WebGLRenderingContext::getLongParameter): + (WebCore::WebGLRenderingContext::getUnsignedLongParameter): + (WebCore::WebGLRenderingContext::getWebGLFloatArrayParameter): + (WebCore::WebGLRenderingContext::getWebGLIntArrayParameter): + (WebCore::WebGLRenderingContext::getWebGLUnsignedByteArrayParameter): + * html/canvas/WebGLRenderingContext.h: + * html/canvas/WebGLRenderingContext.idl: + * html/canvas/WebGLTexture.cpp: + (WebCore::WebGLTexture::create): + (WebCore::WebGLTexture::WebGLTexture): + * html/canvas/WebGLTexture.h: + * manual-tests/webgl/resources/utils3d.js: + (initWebGL): + (loadShader): + (Framerate.prototype.snapshot): + * platform/graphics/GraphicsContext3D.h: + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::bindRenderbuffer): + (WebCore::GraphicsContext3D::getBooleanv): + (WebCore::GraphicsContext3D::getBufferParameteriv): + (WebCore::GraphicsContext3D::getFloatv): + (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv): + (WebCore::GraphicsContext3D::getIntegerv): + (WebCore::GraphicsContext3D::getProgramiv): + (WebCore::GraphicsContext3D::getRenderbufferParameteriv): + (WebCore::GraphicsContext3D::getShaderiv): + (WebCore::GraphicsContext3D::getTexParameterfv): + (WebCore::GraphicsContext3D::getTexParameteriv): + (WebCore::GraphicsContext3D::getUniformfv): + (WebCore::GraphicsContext3D::getUniformiv): + (WebCore::GraphicsContext3D::getVertexAttribfv): + (WebCore::GraphicsContext3D::getVertexAttribiv): + +2009-11-24 Steve Falkenburg <sfalken@apple.com> + + Windows build fix. + + * WebCore.vcproj/QTMovieWin.vcproj: Add additional search path for QuickTime SDK. + +2009-11-24 Philippe Normand <pnormand@igalia.com> + + Reviewed by Gustavo Noronha Silva. + + [Gtk] GStreamer-CRITICAL's (and other warnings) on <video> + https://bugs.webkit.org/show_bug.cgi?id=26354 + + Implemented MediaPlayerPrivate::isAvailable by checking the + presence of the playbin2 GStreamer element. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::isAvailable): + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: + +2009-11-24 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25415 + [GTK][ATK] Please implement support for get_text_at_offset + + When building up the pango layout from text boxes, only append a + newline char after verifying there are no more boxes on this line. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (getPangoLayoutForAtk): + +2009-11-24 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Pavel Feldman. + + Web Inspector: Keyboard Shortcut to Clear Console Messages + https://bugs.webkit.org/show_bug.cgi?id=31780 + + All Platforms: Ctrl+L = Clear Console Messages + Mac Only: Cmd+K = Clear Console Messages + + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView): create shortcuts + (WebInspector.ConsoleView.prototype._promptKeyDown): handle shortcuts + * inspector/front-end/KeyboardShortcut.js: + (WebInspector.KeyboardShortcut.makeKey): convenience conversion of "a-z" character to keyCode + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): style fixes for keyboard shortcuts + +2009-11-24 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: touch inspector controller in order to + kick win bot inspector deploy. rs=aroben. + + * inspector/InspectorController.cpp: + +2009-11-23 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Implement expandable compartments on timeline panel. + + https://bugs.webkit.org/show_bug.cgi?id=31796 + + * inspector/front-end/TimelineOverviewPane.js: + (WebInspector.TimelineOverviewPane.prototype._setWindowPosition): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype.addRecordToTimeline): + (WebInspector.TimelinePanel.prototype._innerAddRecordToTimeline): + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype._refreshRecords): + (WebInspector.TimelinePanel.prototype._addToRecordsWindow): + (WebInspector.TimelineRecordListRow): + (WebInspector.TimelineRecordListRow.prototype.update): + (WebInspector.TimelineRecordListRow.prototype.dispose): + (WebInspector.TimelineRecordGraphRow): + (WebInspector.TimelineRecordGraphRow.prototype.update): + (WebInspector.TimelineRecordGraphRow.prototype._onClick): + (WebInspector.TimelineRecordGraphRow.prototype.dispose): + * inspector/front-end/inspector.css: + +2009-11-24 Mark Rowe <mrowe@apple.com> + + Fix production builds where the source tree may be read-only. + + * WebCore.xcodeproj/project.pbxproj: + +2009-11-23 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Include "config.h" to meet Coding Style Guidelines + https://bugs.webkit.org/show_bug.cgi?id=31792 + + No new tests as there is no new functionality. + + * platform/graphics/win/IntPointWin.cpp: + * platform/graphics/win/IntRectWin.cpp: + * platform/graphics/win/IntSizeWin.cpp: + * platform/network/chromium/ResourceRequest.cpp: + * platform/win/PlatformMouseEventWin.cpp: + +2009-11-23 Jian Li <jianli@chromium.org> + + Reviewed by NOBODY (Chromium build fix). + + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * platform/graphics/GraphicsContext3D.h: + +2009-11-23 Aaron Golden <agolden@apple.com> + + Reviewed by Alexey Proskuryakov. + + Prevent ResourceHandleMac's version of ResourceHandle::receivedCredential from stripping + identity and certificate information from a WebCore::Credential when receivedCredential + needs to modify the credential's persistence. + + Adding a new constructor Credential(const Credential& original, CredentialPersistence) + that copies every field from original except for persistence. + + * platform/network/Credential.cpp: + (WebCore::Credential::Credential): + * platform/network/Credential.h: + * platform/network/mac/ResourceHandleMac.mm: + (WebCore::ResourceHandle::receivedCredential): + +2009-11-23 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Geoff Garen. + + Part 2/3 of <rdar://problem/7377477> REGRESSION: Many web pages fail to render after interesting script runs in isolated world + + Some clients of the JavaScriptCore API expect to be able to make callbacks over the JSC API, + and for this to automagically cause execution to take place in the world associated with the + global object associated with the ExecState (JSContextRef) passed. However this is not how + things work - the world must be explicitly set within WebCore. + + Making this work just for API calls to evaluate & call will be a far from perfect solution, + since direct (non-API) use of JSC still relies on WebCore setting the current world correctly. + A better solution would be to make this all work automagically all throughout WebCore, but this + will require more refactoring. + + Add references from the JSDOMWindowShell and the JSDOMGlobalObject to the world that owns them, + so that we can get to the world from the lexical global object of an ExecState. In the long-term + we should switch over to using this approach for all cases we want to get a world from an exec state. + + * bindings/js/JSDOMBinding.cpp: + (WebCore::WebCoreJSClientData::beginningExecution): + (WebCore::WebCoreJSClientData::completedExecution): + * bindings/js/JSDOMBinding.h: + * bindings/js/JSDOMGlobalObject.h: + (WebCore::JSDOMGlobalObject::world): + (WebCore::JSDOMGlobalObject::JSDOMGlobalObjectData::JSDOMGlobalObjectData): + * bindings/js/JSDOMWindowBase.cpp: + (WebCore::JSDOMWindowBase::JSDOMWindowBaseData::JSDOMWindowBaseData): + * bindings/js/JSDOMWindowBase.h: + * bindings/js/JSDOMWindowShell.cpp: + (WebCore::JSDOMWindowShell::JSDOMWindowShell): + * bindings/js/JSDOMWindowShell.h: + (WebCore::JSDOMWindowShell::world): + * bindings/js/JSWorkerContextBase.cpp: + (WebCore::JSWorkerContextBase::JSWorkerContextBase): + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::initScript): + +2009-11-23 Chris Marrin <cmarrin@apple.com> + + Reviewed by Oliver Hunt. + + Add range checks to rendering calls in WebGL + https://bugs.webkit.org/show_bug.cgi?id=31239 + + I am now tracking the size of the data in each CanvasBuffer object + and keeping track of the buffer size of each active vertex attrib. + In drawArrays and drawElements I make sure no attempt is made to + access elements outside the valid buffer ranges. The test at: + + http://cs.helsinki.fi/u/ilmarihe/c3d/functions/drawArraysOutOfBounds.html + + no longer crashes. + + I also added all the WebGL enumerations to GraphicsContext3D to use them in the validation checks + + Tests: fast/canvas/webgl/drawArraysOutOfBounds.html + fast/canvas/webgl/drawElementssOutOfBounds.html + + * bindings/js/JSWebGLArrayCustom.cpp: + (WebCore::toJS): + * bindings/js/JSWebGLRenderingContextCustom.cpp: + (WebCore::JSWebGLRenderingContext::bufferData): + (WebCore::JSWebGLRenderingContext::bufferSubData): + (WebCore::JSWebGLRenderingContext::texSubImage2D): + * html/canvas/WebGLArrayBuffer.cpp: + (WebCore::WebGLArrayBuffer::create): + (WebCore::WebGLArrayBuffer::data): + * html/canvas/WebGLArrayBuffer.h: + * html/canvas/WebGLBuffer.cpp: + (WebCore::WebGLBuffer::WebGLBuffer): + (WebCore::WebGLBuffer::associateBufferData): + (WebCore::WebGLBuffer::associateBufferSubData): + (WebCore::WebGLBuffer::byteLength): + * html/canvas/WebGLBuffer.h: + (WebCore::WebGLBuffer::elementArrayBuffer): + * html/canvas/WebGLRenderingContext.cpp: + (WebCore::WebGLRenderingContext::WebGLRenderingContext): + (WebCore::WebGLRenderingContext::sizeInBytes): + (WebCore::WebGLRenderingContext::bindBuffer): + (WebCore::WebGLRenderingContext::bufferData): + (WebCore::WebGLRenderingContext::bufferSubData): + (WebCore::WebGLRenderingContext::createShader): + (WebCore::WebGLRenderingContext::disableVertexAttribArray): + (WebCore::WebGLRenderingContext::validateIndexArray): + (WebCore::WebGLRenderingContext::validateRenderingState): + (WebCore::WebGLRenderingContext::drawArrays): + (WebCore::WebGLRenderingContext::drawElements): + (WebCore::WebGLRenderingContext::enableVertexAttribArray): + (WebCore::WebGLRenderingContext::isFramebuffer): + (WebCore::WebGLRenderingContext::isProgram): + (WebCore::WebGLRenderingContext::isRenderbuffer): + (WebCore::WebGLRenderingContext::isShader): + (WebCore::WebGLRenderingContext::isTexture): + (WebCore::WebGLRenderingContext::useProgram): + (WebCore::WebGLRenderingContext::validateProgram): + (WebCore::WebGLRenderingContext::vertexAttribPointer): + (WebCore::WebGLRenderingContext::detachAndRemoveAllObjects): + * html/canvas/WebGLRenderingContext.h: + (WebCore::WebGLRenderingContext::VertexAttribState::VertexAttribState): + * html/canvas/WebGLRenderingContext.idl: + * html/canvas/WebGLShader.cpp: + (WebCore::WebGLShader::create): + (WebCore::WebGLShader::WebGLShader): + * html/canvas/WebGLShader.h: + * platform/graphics/GraphicsContext3D.h: + (WebCore::GraphicsContext3D::): + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::createShader): + +2009-11-23 Erik Arvidsson <arv@chromium.org> + + Reviewed by Eric Seidel. + + JSC bindings for HasIndexGetter generates incorrect code (affects + MediaList and CSSStyleDeclaration). + This cleans up the edge cases for indexing out of range for style and + computed style objects to return an empty string according to the spec. + MediaList now returns null when indexed out of range. + https://bugs.webkit.org/show_bug.cgi?id=31683 + + Tests: fast/dom/CSSStyleDeclaration/css-computed-style-item.html + fast/dom/CSSStyleDeclaration/css-style-item.html + fast/dom/StyleSheet/css-medialist-item.html + + * bindings/scripts/CodeGeneratorJS.pm: If IndexGetterReturnsString then + we do not check the length before calling the item function. + * css/CSSComputedStyleDeclaration.cpp: + (WebCore::CSSComputedStyleDeclaration::item): + * css/CSSMutableStyleDeclaration.cpp: + (WebCore::CSSMutableStyleDeclaration::item): + * css/CSSStyleDeclaration.idl: + +2009-11-23 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + DocumentMarkers need to be educated about transforms + https://bugs.webkit.org/show_bug.cgi?id=31751 + + Find highlight is incorrect with transforms + <rdar://problem/6358394> + + Allow callers to specify that Frame::selectionTextRects() takes transforms into account + when computing the set of rects that encompass a selection. For transformed elemenets, the + selection rect will be the bounding box of the selected content. + + Fix DocumentMarkers to cache rects in absolute coordinates, rather than painting coordinates. + + Test: editing/selection/transformed-selection-rects.html + + * WebCore.base.exp: + Frame::selectionTextRects() has a new parameter. + + * dom/Document.cpp: + (WebCore::Document::setRenderedRectForMarker): + * dom/Document.h: + Pass the marker as a const reference. + + * dom/Range.h: + * dom/Range.cpp: + (WebCore::Range::textQuads): + Add a new method, textQuads(), which returns a list of quads, respecting transforms. + + * page/Frame.h: + * page/Frame.cpp: + (WebCore::Frame::selectionTextRects): + Add a new parameter, respectTransforms, and when that is RespectTransforms, use the quad + method to get quads for ranges, and then take their bounding boxes. + + * rendering/InlineTextBox.h: + * rendering/InlineTextBox.cpp: + (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): + (WebCore::InlineTextBox::paintTextMatchMarker): + (WebCore::InlineTextBox::computeRectForReplacementMarker): + (WebCore::InlineTextBox::paintDocumentMarkers): + (WebCore::InlineTextBox::textPos): + (WebCore::InlineTextBox::offsetForPosition): + + Pass DocumentMarkers as a const references. + Convert the argument to setRenderedRectForMarker() into absolute coordinates. + + * rendering/RenderView.cpp: + (WebCore::RenderView::selectionBounds): + +2009-11-23 Dirk Schulze <krit@webkit.org> + + Reviewed by Oliver Hunt. + + [Cairo] support blurred test-shadow + [https://bugs.webkit.org/show_bug.cgi?id=31797] + + Support for blurred text-shadows on Cairo. This patch + reuses the code of blurred box-shadows, introduced in + bug 26102. For a full textshadow support, a filters enabled + build is needed. + + * platform/graphics/cairo/FontCairo.cpp: + (WebCore::Font::drawGlyphs): + +2009-11-23 Jens Alfke <snej@chromium.org> + + Reviewed by Geoffrey Garen. + + Change incorrect calls to the constructor "EventNames()" to the correct accessor + "eventNames()". This saves ~100 AtomicString lookups each time. + https://bugs.webkit.org/show_bug.cgi?id=31811 + + * dom/EventNames.h: Make constructor private to prevent this from happening again. + * history/CachedFrame.cpp: + (WebCore::CachedFrameBase::restore): EventNames() --> eventNames() + * html/HTMLFormControlElement.cpp: + (WebCore::HTMLFormControlElement::checkValidity): EventNames() --> eventNames() + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::stopLoading): EventNames() --> eventNames() + (WebCore::FrameLoader::pageHidden): EventNames() --> eventNames() + * page/DOMWindow.cpp: + (WebCore::DOMWindow::dispatchAllPendingUnloadEvents): EventNames() --> eventNames() + +2009-11-23 Adam Langley <agl@google.com> + + Reviewed by Dmitry Titov. + + Chromium Linux: Limit the stroke width and mitre limit. + + Limit the stroke width and mitre limit that we'll pass into Skia to + avoid overflowing Skia's uint16_t glyph widths. + + http://code.google.com/p/chromium/issues/detail?id=28250 + https://bugs.webkit.org/show_bug.cgi?id=31747 + + * platform/graphics/skia/PlatformContextSkia.cpp: + (scalarBound): + (PlatformContextSkia::setupPaintForStroking): + +2009-11-23 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=31812 + WebSocket code uses RefPtr::get() where it shouldn't + + No change in funcitonality, just coding style correction. + + * websockets/WebSocket.cpp: + (WebCore::WebSocket::~WebSocket): + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::connect): + (WebCore::WebSocketChannel::send): + (WebCore::WebSocketChannel::bufferedAmount): + (WebCore::WebSocketChannel::close): + (WebCore::WebSocketChannel::disconnect): + (WebCore::WebSocketChannel::didOpen): + (WebCore::WebSocketChannel::didClose): + (WebCore::WebSocketChannel::didReceiveData): + (WebCore::WebSocketChannel::didFail): + +2009-11-23 Alexey Proskuryakov <ap@apple.com> + + Build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): pacExecutionCallbackMainThread + is static, so it can't use member variables directly. + +2009-11-23 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Brady Eidson. + + https://bugs.webkit.org/show_bug.cgi?id=31748 + Make WebSocketHandleCFNet respect proxy auto-configuration files via CFProxySupport + + * platform/network/cf/SocketStreamHandle.h: Removed names from some void* arguments, since + they didn't carry useful information. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::SocketStreamHandle): When we need an http-style URL, we actually + always need https. + (WebCore::SocketStreamHandle::scheduleStreams): Factored out from constructor, since streams + only get scheduled after PAC is fetched and executed asynchronously. + (WebCore::SocketStreamHandle::copyPACExecutionDescription): Return a description for event + source. + (WebCore::MainThreadPACCallbackInfo::MainThreadPACCallbackInfo): Forward callback to main thread. + (WebCore::SocketStreamHandle::pacExecutionCallback): Ditto. + (WebCore::SocketStreamHandle::pacExecutionCallbackMainThread): Ditto. To avoid code duplication, + we make the call even on Mac. + (WebCore::SocketStreamHandle::executePACFileURL): Make an async call to CFNetworkExecuteProxyAutoConfigurationURL. + (WebCore::SocketStreamHandle::removePACRunLoopSource): Once PAC execution is done or aborted, + we need to get rid of the event source. + (WebCore::SocketStreamHandle::chooseProxy): Use stored m_httpsURL.get. + (WebCore::SocketStreamHandle::chooseProxyFromArray): Factored out from chooseProxy - the + array may come directly from system configuration, or from PAC. + (WebCore::SocketStreamHandle::chooseProxy): Tiger version of this function is now completely + separate. + (WebCore::SocketStreamHandle::~SocketStreamHandle): Run loop source should be destroyed + before we get to the destructor. + (WebCore::SocketStreamHandle::platformClose): Destroy the run loop source, if PAC execution + is still in progress. + +2009-11-23 Oliver Hunt <oliver@apple.com> + + Reviewed by Geoff Garen. + + Don't leak the CGImage we create when drawing a sub image. + + * platform/graphics/cg/ImageCG.cpp: + (WebCore::BitmapImage::draw): + +2009-11-23 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + [V8] Don't crash when OOM in creating isolated world + https://bugs.webkit.org/show_bug.cgi?id=31805 + + We need to add some more null checks to avoid crashing. No new tests + because we don't have a good way to test out-of-memory bugs. + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluateInIsolatedWorld): + (WebCore::V8Proxy::evaluateInNewContext): + (WebCore::V8Proxy::setInjectedScriptContextDebugId): + * bindings/v8/V8Proxy.h: + +2009-11-23 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + This is the implementation of the filterRes attribute. It + helps the SVG developer to set the quality of a filter by + giving the width or height of filter. + This patch also sets the filter resolution to lower values + if a intermediate ImageBuffer size is bigger than the given + maximal size. + The maximal size is set to 5000x5000 by default. This is a + subjectiv decission. Everthing greater than this values gets + sensible slower. Values of 10000x10000 crashed on WebKitGtk. + For mobil devices a maximum size of 100x100 or 200x200 seems + to be reasonable. + The important fact on filter resolution is, that the output + size is still the size given by the <filter> element. + + Tests: svg/filters/big-sized-filter-2.svg + svg/filters/big-sized-filter.svg + svg/filters/filterRes.svg + + * platform/graphics/FloatRect.cpp: + (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y. + * platform/graphics/FloatRect.h: + (WebCore::FloatRect::scale): Add the abbility to scale a rect by x and y. + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::createPlatformShadow): Use scaledSubRegion for + calculation. + * platform/graphics/filters/FEBlend.cpp: + (WebCore::FEBlend::apply): Use scaledSubRegion for effect intern calculations. + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::FEColorMatrix::apply): Use scaledSubRegion for effect intern calculations. + * platform/graphics/filters/FEComponentTransfer.cpp: + (WebCore::FEComponentTransfer::apply): Use scaledSubRegion for effect intern + calculations. + * platform/graphics/filters/FEComposite.cpp: + (WebCore::FEComposite::apply): Use scaledSubRegion for effect intern calculations. + * platform/graphics/filters/FEGaussianBlur.cpp: + (WebCore::FEGaussianBlur::apply): Use scaledSubRegion for effect intern calculations. + * platform/graphics/filters/Filter.h: Add the abbility to change the quality + of a filter output. + (WebCore::Filter::filterResolution): + (WebCore::Filter::setFilterResolution): + (WebCore::Filter::calculateEffectSubRegion): Calculates the correct subRegion + as well as the scaledSubRegion. It also searches for the biggest effect size. + We have to change the filter resolution, if one intermediate ImageBuffer size + doesn't fit in the maximal image size. + * platform/graphics/filters/FilterEffect.cpp: + (WebCore::FilterEffect::calculateDrawingIntRect): Use scaledSubRegion to get + the right part of a previous effect result. + (WebCore::FilterEffect::calculateDrawingRect): Use scaledSubRegion to get + the right part of a previous effect result. + (WebCore::FilterEffect::getEffectContext): Use scaledSubRegion to create + a new intermediate ImageBuffer for the result of the current effect. + * platform/graphics/filters/FilterEffect.h: + (WebCore::FilterEffect::scaledSubRegion): The scaled subRegion of a the + filter effect. + (WebCore::FilterEffect::setScaledSubRegion): + (WebCore::FilterEffect::effectBoundaries): The original values of the + EffectElement for a second subRegion calculation. + (WebCore::FilterEffect::setEffectBoundaries): + * platform/graphics/filters/ImageBufferFilter.cpp: + (WebCore::ImageBufferFilter::ImageBufferFilter): Set the scale factor to one. + * platform/graphics/filters/ImageBufferFilter.h: + (WebCore::ImageBufferFilter::maxImageSize): + (WebCore::ImageBufferFilter::calculateEffectSubRegion): + * platform/graphics/filters/SourceAlpha.cpp: + (WebCore::SourceAlpha::calculateEffectRect): Use scaledSubRegion for effect + intern calculations. + * platform/graphics/filters/SourceGraphic.cpp: + (WebCore::SourceGraphic::calculateEffectRect): Use scaledSubRegion for effect + intern calculations. + * svg/SVGFilterElement.cpp: + (WebCore::SVGFilterElement::parseMappedAttribute): Parse filterRes attribute. + (WebCore::SVGFilterElement::buildFilter): Give SVGResourceFilter the current + filterResolution. + * svg/SVGFilterPrimitiveStandardAttributes.cpp: + (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes): Save + values to effectBoundaries of the filter effect + * svg/graphics/SVGResourceFilter.cpp: + (WebCore::SVGResourceFilter::SVGResourceFilter): + (WebCore::shouldProcessFilter): Return signal if a neccessary value is zero. + (WebCore::SVGResourceFilter::fitsInMaximumImageSize): Checks if the given size + fits into the maximal image size, modifys scale factors if not and return a + bool: fits. + (WebCore::SVGResourceFilter::prepareFilter): Scale the SourceImage to + filterResolution (given by FilterElement or calculated on to big image sizes). + Set the scale level to SVGFilter. + (WebCore::SVGResourceFilter::applyFilter): Don't apply filters if shouldProcessFilter + is wrong. + * svg/graphics/SVGResourceFilter.h: + (WebCore::SVGResourceFilter::setFilterResolution): FilterResolution of FilterElement. + (WebCore::SVGResourceFilter::setHasFilterResolution): Does FilterElement provides + a FilterResolution? + (WebCore::SVGResourceFilter::scaleX): Current scale factor for horizontal. + (WebCore::SVGResourceFilter::scaleY): Current scale factor for vertical. + * svg/graphics/filters/SVGFEDisplacementMap.cpp: + (WebCore::FEDisplacementMap::apply): Use scaledSubRegion for effect intern calculations. + Kernel values are scaled to current filter resolution too. + * svg/graphics/filters/SVGFEFlood.cpp: + (WebCore::FEFlood::apply): Use scaledSubRegion for effect intern calculations. + * svg/graphics/filters/SVGFEMerge.cpp: + (WebCore::FEMerge::apply): Use scaledSubRegion for effect intern calculations. + Kernel values are scaled to current filter resolution too. + * svg/graphics/filters/SVGFEMorphology.cpp: + (WebCore::FEMorphology::apply): Use scaledSubRegion for effect intern calculations. + Kernel values are scaled to current filter resolution too. + * svg/graphics/filters/SVGFEOffset.cpp: + (WebCore::FEOffset::apply): Use scaledSubRegion for effect intern calculations. + * svg/graphics/filters/SVGFETile.cpp: + (WebCore::FETile::apply): Use scaledSubRegion for effect intern calculations. + * svg/graphics/filters/SVGFilter.cpp: + (WebCore::SVGFilter::calculateEffectSubRegion): Calculate subRegion for LayoutTests, + scaledSubRegion according to the current filterResolution and get the maximal image size. + * svg/graphics/filters/SVGFilter.h: + (WebCore::SVGFilter::effectBoundingBoxMode): Original values of the FilterElement. + (WebCore::SVGFilter::filterRegion): Use virtual for clarification. + (WebCore::SVGFilter::sourceImageRect): Use virtual for clarification. + (WebCore::SVGFilter::maxImageSize): Get the maximal image size. + +2009-11-23 Simon Hausmann <simon.hausmann@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Wrong runtime instance objects of wrapped QObjects may be used if + the wrapped object died before the gc removed the instance. + + https://bugs.webkit.org/show_bug.cgi?id=31681 + + Before using a cached instance, verify that its wrapped QObject is + still alive. + + * bridge/qt/qt_instance.cpp: + (JSC::Bindings::QtInstance::getQtInstance): + * bridge/qt/qt_instance.h: + (JSC::Bindings::QtInstance::hashKey): + +2009-11-22 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Oliver Hunt. + + ARIA: support aria-flowto + https://bugs.webkit.org/show_bug.cgi?id=31762 + + Test: platform/mac/accessibility/aria-flowto.html + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::ariaOwnsElements): + (WebCore::AccessibilityObject::supportsARIAFlowTo): + (WebCore::AccessibilityObject::ariaFlowToElements): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::linkedUIElements): + (WebCore::AccessibilityRenderObject::supportsARIAFlowTo): + (WebCore::AccessibilityRenderObject::ariaFlowToElements): + * accessibility/AccessibilityRenderObject.h: + * html/HTMLAttributeNames.in: + +2009-11-22 Nikolas Zimmermann <nzimmermann@rim.com> + + Not reviewed. Build fix for WML enabled builds. + Adopt WebCore API changes. + + * wml/WMLAElement.cpp: + (WebCore::WMLAElement::defaultEventHandler): + * wml/WMLInputElement.cpp: + (WebCore::WMLInputElement::defaultEventHandler): + +2009-11-22 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Introduce sidebar background on timeline panel in order + to prevent it from flickering on scroll. + + https://bugs.webkit.org/show_bug.cgi?id=31789 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype.setSidebarWidth): + (WebInspector.TimelinePanel.prototype._onScroll): + (WebInspector.TimelinePanel.prototype._scheduleRefresh): + * inspector/front-end/inspector.css: + +2009-11-22 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Reimplement TimelinePanel to make it fast: + - Extract grid and overview into separate files + - Make timeline create only divs for visible rows + + https://bugs.webkit.org/show_bug.cgi?id=31784 + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.createInterface): + (WebInspector.AbstractTimelinePanel.prototype.refresh): + (WebInspector.AbstractTimelinePanel.prototype.set calculator): + * inspector/front-end/TimelineGrid.js: Added. + (WebInspector.TimelineGrid): + (WebInspector.TimelineGrid.prototype.get itemsGraphsElement): + (WebInspector.TimelineGrid.prototype.updateDividers): + (WebInspector.TimelineGrid.prototype.addEventDivider): + (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop): + * inspector/front-end/TimelineOverviewPane.js: Added. + (WebInspector.TimelineOverviewPane): + (WebInspector.TimelineOverviewPane.prototype._onCheckboxClicked): + (WebInspector.TimelineOverviewPane.prototype.update): + (WebInspector.TimelineOverviewPane.prototype.setSidebarWidth): + (WebInspector.TimelineOverviewPane.prototype.updateMainViewWidth): + (WebInspector.TimelineOverviewPane.prototype.reset): + (WebInspector.TimelineOverviewPane.prototype._resizeWindow): + (WebInspector.TimelineOverviewPane.prototype._windowResizeDragging): + (WebInspector.TimelineOverviewPane.prototype._dragWindow): + (WebInspector.TimelineOverviewPane.prototype._windowDragging): + (WebInspector.TimelineOverviewPane.prototype._resizeWindowLeft): + (WebInspector.TimelineOverviewPane.prototype._resizeWindowRight): + (WebInspector.TimelineOverviewPane.prototype._setWindowPosition): + (WebInspector.TimelineOverviewPane.prototype._endWindowDragging): + (WebInspector.TimelineOverviewCalculator): + (WebInspector.TimelineOverviewCalculator.prototype.computeBarGraphPercentages): + (WebInspector.TimelineOverviewCalculator.prototype.reset): + (WebInspector.TimelineOverviewCalculator.prototype.updateBoundaries): + (WebInspector.TimelineOverviewCalculator.prototype.get boundarySpan): + (WebInspector.TimelineOverviewCalculator.prototype.formatValue): + (WebInspector.TimelineCategoryTreeElement): + (WebInspector.TimelineCategoryTreeElement.prototype.onattach): + (WebInspector.TimelineCategoryGraph): + (WebInspector.TimelineCategoryGraph.prototype.get graphElement): + (WebInspector.TimelineCategoryGraph.prototype.addChunk): + (WebInspector.TimelineCategoryGraph.prototype.clearChunks): + (WebInspector.TimelineCategoryGraph.prototype.set dimmed): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked): + (WebInspector.TimelinePanel.prototype.addRecordToTimeline): + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype.setSidebarWidth): + (WebInspector.TimelinePanel.prototype.updateMainViewWidth): + (WebInspector.TimelinePanel.prototype.resize): + (WebInspector.TimelinePanel.prototype.reset): + (WebInspector.TimelinePanel.prototype.show): + (WebInspector.TimelinePanel.prototype._onScroll): + (WebInspector.TimelinePanel.prototype._scheduleRefresh): + (WebInspector.TimelinePanel.prototype._refresh): + (WebInspector.TimelinePanel.prototype._refreshRecords): + (WebInspector.TimelinePanel.prototype._adjustScrollPosition): + (WebInspector.TimelineCategory): + (WebInspector.TimelineCalculator): + (WebInspector.TimelineCalculator.prototype.get boundarySpan): + (WebInspector.TimelineRecordListRow): + (WebInspector.TimelineRecordListRow.prototype.update): + (WebInspector.TimelineRecordGraphRow): + (WebInspector.TimelineRecordGraphRow.prototype.update): + * inspector/front-end/WebKit.qrc: + * inspector/front-end/inspector.css: + * inspector/front-end/inspector.html: + +2009-11-22 Chris Evans <cevans@chromium.org> + + Reviewed by Adam Barth. + + Disable access to file:/// directory listings + https://bugs.webkit.org/show_bug.cgi?id=31329 + + Deny access to directory listings. This needs doing in WebKit for + WebKit clients that do permit top-level navigation to file:///dir. + This matches Firefox, plus the existing Safari implementation (which + does not support any directory access at all). It will fix the + LayoutTest named below for Chromium. + + Test: fast/xmlhttprequest/xmlhttprequest-nonexistent-file.html + + * page/SecurityOrigin.cpp: Deny access to directory listings. + (WebCore::SecurityOrigin::SecurityOrigin): + (WebCore::SecurityOrigin::canRequest): + +2009-11-20 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Support Ctrl+P and Ctrl+N, Readline keyboard shortcuts in the Console + https://bugs.webkit.org/show_bug.cgi?id=31400 + + Handle the following when on a Mac: + + Ctrl+P = Previous (like Up arrow) + Ctrl+N = Next (like Down arrow) + + No longer rerun autocompletion when just pushing a modifier key + like Control, Alt, Shift, or Meta. + + Improved arrow key behavior with Multiline code in the Console, with the following behavior: + + Up = Previous Command if on First Line (caret moves to the end of the first line) + otherwise default caret movement in text. + Down = Next Command if on Last Line (caret naturally moves to the end) + otherwise default caret movement in text. + + * inspector/front-end/TextPrompt.js: + (WebInspector.TextPrompt.prototype.handleKeyEvent): handle new keyboard shortcuts + (WebInspector.TextPrompt.prototype.isCaretOnFirstLine): check if the caret is on the top line + (WebInspector.TextPrompt.prototype.isCaretOnLastLine): check if the caret is on the bottom line + (WebInspector.TextPrompt.prototype._upKeyPressed): + (WebInspector.TextPrompt.prototype._downKeyPressed): + (WebInspector.TextPrompt.prototype._moveBackInHistory): + (WebInspector.TextPrompt.prototype._moveForwardInHistory): + +2009-11-21 Jessie Berlin <jberlin@webkit.org> + + Reviewed by Timothy Hatcher. + + Adds a tooltip containing the full url of the resource to each element + in the Resources panel so that it is possible to quickly see the query + parameters. + https://bugs.webkit.org/show_bug.cgi?id=19103 + + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourceSidebarTreeElement.prototype.refresh): + Set the tooltip to be the resource's url. + +2009-11-21 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + CSSKeyframesRule::findRule() and deleteRule() should accept 'from' and 'to' as well as percentages + https://bugs.webkit.org/show_bug.cgi?id=31588 + + In WebKitCSSKeyframesRule::findRuleIndex(), map 'from' to 0% an 'to' to 100% + so that findRule() and deleteRule() work with these keywords. + + * css/WebKitCSSKeyframesRule.cpp: + (WebCore::WebKitCSSKeyframesRule::findRuleIndex): + +2009-11-21 Daniel Bates <dbates@webkit.org> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=31647 + + Changed KeyboardEvent::m_keyEvent from a raw pointer to an OwnPtr. + + No functionality was changed. So, no new tests. + + * dom/KeyboardEvent.cpp: + (WebCore::KeyboardEvent::~KeyboardEvent): + * dom/KeyboardEvent.h: Changed m_keyEvent to OwnPtr. + (WebCore::KeyboardEvent::keyEvent): + +2009-11-20 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + WAI-ARIA: add support for aria-owns + https://bugs.webkit.org/show_bug.cgi?id=31702 + + Re-organized how accessibilityAttributeNames are returned so + that it's possible for an element to add an attribute based on + a dynamic value. In this case, we only want to add AXOwn if the + element actually supports aria-owns. + + Test: platform/mac/accessibility/aria-owns.html + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::supportsARIAOwns): + (WebCore::AccessibilityObject::ariaOwnsElements): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::ariaOwnsElements): + (WebCore::AccessibilityRenderObject::supportsARIAOwns): + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + * html/HTMLAttributeNames.in: + +2009-11-20 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Simon Fraser. + + <rdar://problem/7414396> Leopard & Tiger: Support closed caption in <video> element + + * css/mediaControls.css: + Define closed caption toggle button. + + * rendering/RenderMedia.cpp: + (WebCore::RenderMedia::updateControls): + Create closed caption toggle button in display order. + + * rendering/RenderThemeMac.mm: + (WebCore::RenderThemeMac::shouldRenderMediaControlPart): + Don't require MediaControllerThemeQuickTime theme for captions toggle button. + No need to check if the movie has video, a closed captions track is a video + track. + +2009-11-20 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Running code in the Console that ends with a + single line comment no longer produces a parse error. + + * inspector/front-end/InjectedScript.js: + (InjectedScript._evaluateOn): + +2009-11-20 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + WAI-ARIA: add support for 'math' role + https://bugs.webkit.org/show_bug.cgi?id=31706 + + * accessibility/AccessibilityObject.cpp: + * accessibility/AccessibilityObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + +2009-11-20 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + NPN_ReloadPlugins does not reload the page even if reloadPages is true. + https://bugs.webkit.org/show_bug.cgi?id=30460 + + Replace call to PluginDatabase::installedPlugins()->refresh() with Page::refreshPlugins(). + It already refreshes plugins and reloads pages when necessary. + + Tests: plugins/reloadplugins-and-pages.html + plugins/reloadplugins-no-pages.html + + * plugins/PluginInfoStore.cpp: + (WebCore::refreshPlugins): + +2009-11-20 Oliver Hunt <oliver@apple.com> + + Reviewed by Dave Hyatt. + + <rdar://7409188> WebKit needs to be able to serialize and deserialize objects. + + Expose WebCore object serialization to WebKit. + + * WebCore.base.exp: + * bindings/js/SerializedScriptValue.cpp: + (WebCore::SerializedScriptValue::~SerializedScriptValue): + (WebCore::SerializedScriptValue::create): + (WebCore::SerializedScriptValue::deserialize): + * bindings/js/SerializedScriptValue.h: + +2009-11-20 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + Fixes <http://webkit.org/b/31741>. + Web Inspector: User Entered Data on the console should show up no matter what filters. + + Always show .console-user-command-result, no matter what the filter say + we should do with the other classes. + + * inspector/front-end/inspector.css: + +2009-11-20 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + Fixes <http://webkit.org/b/31700>. + Web Inspector: isMac should be in one central location + Cached. + + We should cache the value of isMac, and make the indexOf call in one + single location, because we are calling it from multiple places, and saving + the result can save us time, and make the call sites simpler. + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype._updateFilter): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype._updateFilter): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.handleKeyEvent): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._loaded): + * inspector/front-end/inspector.js: + (WebInspector.documentKeyDown): + (WebInspector.isMac): + +2009-11-19 Joseph Pecoraro <joepeck@webkit.org> + + Removed .DS_Store accidentally added in last (r51245). + +2009-11-19 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Add Console Only Layout Mode + https://bugs.webkit.org/show_bug.cgi?id=30282 + + Adds a Console Panel, which allows for a Full size Console. This + extends the Drawer to the size of a Panel. This also fixes previous + resize issues with the Drawer. + + * inspector/front-end/ConsolePanel.js: added. + (WebInspector.ConsolePanel): + (WebInspector.ConsolePanel.prototype.toolbarItemClass.get toolbarItemLabel): + (WebInspector.ConsolePanel.prototype.show): + (WebInspector.ConsolePanel.prototype.hide): + * inspector/front-end/Drawer.js: + (WebInspector.Drawer): + (WebInspector.Drawer.prototype.set visibleView): + (WebInspector.Drawer.prototype.get savedHeight): access the saved height of the variable console. + (WebInspector.Drawer.prototype.show.animationFinished): + (WebInspector.Drawer.prototype.show): + (WebInspector.Drawer.prototype.hide.animationFinished): + (WebInspector.Drawer.prototype.hide): + (WebInspector.Drawer.prototype.resize): resize appropriately if full/non-full + (WebInspector.Drawer.prototype.enterPanelMode): + (WebInspector.Drawer.prototype.exitPanelMode): + (WebInspector.Drawer.prototype.immediatelyExitPanelMode): + (WebInspector.Drawer.prototype._cancelAnimationIfNeeded): + (WebInspector.Drawer.prototype._animateDrawerHeight.animationFinished): + (WebInspector.Drawer.prototype._animateDrawerHeight): + (WebInspector.Drawer.prototype._animationDuration): + (WebInspector.Drawer.prototype._startStatusBarDragging): + (WebInspector.Drawer.prototype._statusBarDragging): + (WebInspector.Drawer.prototype._endStatusBarDragging): + + Miscellaneous changes and cleanup. + + * English.lproj/localizedStrings.js: "Console" toolbar title. + * inspector/front-end/ConsoleView.js: removed unnecessary element reordering + * inspector/front-end/Images/consoleIcon.png: added. + * inspector/front-end/inspector.css: added icon. + * inspector/front-end/inspector.html: + * inspector/front-end/inspector.js: + (WebInspector._createPanels): create console panel + (WebInspector.windowResize): resize drawer if necessary + (WebInspector.documentKeyDown): esc should not toggle the console when in panel mode + (WebInspector.animateStyle): start animation interval, returns the interval key + (WebInspector.toggleAttach): resize drawer if necessary + (WebInspector.showConsolePanel): restore the panel when the inspector restarts + (WebInspector.showProfileForURL): style fix + + Restore the panel when the inspector restarts. + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::setWindowVisible): + (WebCore::InspectorController::specialPanelForJSName): + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::showPanel): + + Build files. + + * WebCore.gypi: + * WebCore.vcproj/WebCore.vcproj: + * inspector/front-end/WebKit.qrc: + +2009-11-20 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + Fixes <http://webkit.org/b/31699>. + Web Inspector: Should Cache Values of InspectorController.platform() and port(). + + Refactor the Inspector to cache the value of InspectorController.platform + and InspectorController.port, because those need to call into C++, they are + being called more and more as we add platform specific keyboard shortcuts, and + they shouldn't change in the lifecycle of the Web Inspector. + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype._updateFilter): + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype._updateFilter): + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.handleKeyEvent): + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel): + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._loaded): + * inspector/front-end/inspector.js: + (WebInspector.get platform): + (WebInspector.get port): + (WebInspector.loaded): + (WebInspector.documentKeyDown): + (WebInspector.toolbarDragStart): + +2009-11-20 Dirk Schulze <krit@webkit.org> + + Unreviewed build fix for filters enabled builds. + + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::FEColorMatrix::apply): + * platform/graphics/filters/FEComposite.cpp: + (WebCore::FEComposite::apply): + * platform/graphics/filters/SourceGraphic.cpp: + (WebCore::SourceGraphic::apply): + * svg/graphics/SVGResourceFilter.cpp: + (WebCore::SVGResourceFilter::applyFilter): + * svg/graphics/filters/SVGFEMerge.cpp: + (WebCore::FEMerge::apply): + * svg/graphics/filters/SVGFEOffset.cpp: + (WebCore::FEOffset::apply): + * svg/graphics/filters/SVGFETile.cpp: + (WebCore::FETile::apply): + +2009-11-20 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Simon Fraser. + + <rdar://problem/7389945> QTKit based media engine should not claim to support + fullscreen on Leopard + + * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: + (WebCore::MediaPlayerPrivate::supportsFullscreen): + Only return true on SnowLeopard for now. + + * rendering/RenderThemeMac.mm: + (WebCore::RenderThemeMac::shouldRenderMediaControlPart): + No need to special case MediaFullscreenButtonPart as the default implementation + asks the media engine if it supports fullscreen. + +2009-11-18 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Simon Hausmann. + + Patch by Yongjun Zhang <yongjun.zhang@nokia.com> and + Girish Ramakrishnan <girish@forwardbias.in> + + [Qt] Implement support for rendering plugins on Qt/Mac when a page is used + without a QWebView or when inside QGraphicsWebView. + + Currently, the code provides the cgcontext of the PlatformPluginWidget to + the plugin. This approach does not work when we are printing, or using + QWebFrame::render() to render to a QImage/QPixmap since the plugin ends + up drawing on the QWebView (i.e platformPluginWidget's cgcontext) instead + of the QPaintDevice's context. + + To solve all cases and keep the code simple, we render the plugin to an + offscreen pixmap in all cases. This way, the plugin always renders to the + CGContext of the pixmap and we then use QPainter to blit the pixmap into + the QPaintDevice. We also create a fake window and set it's WindowRef in + NPWindow. Only with this WindowRef does Flash paint correctly to the QPixmap. + + Now, that's the theory. In practice, ATM, mouse events do not work when using + the fake window. So, setPlatformPluginWidget() is still called when using QWebView + so that there are no regressions after this patch. Once we get mouse events + working, setPlatformPluginWidget will be removed. + + https://bugs.webkit.org/show_bug.cgi?id=31183 + + * plugins/PluginView.cpp: + (WebCore::PluginView::PluginView): + * plugins/PluginView.h: + * plugins/mac/PluginViewMac.cpp: + (WebCore::PluginView::platformStart): + (WebCore::PluginView::platformDestroy): + (WebCore::PluginView::setNPWindowIfNeeded): + (WebCore::PluginView::updatePluginWidget): + (WebCore::PluginView::paint): + (WebCore::PluginView::invalidateRect): + +2009-11-19 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Resync Resources Backend and Frontend + https://bugs.webkit.org/show_bug.cgi?id=31705 + + * inspector/front-end/Resource.js: resync enum values with backend + (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType): return false if all else fails, not true in all cases + +2009-11-19 Steve Block <steveblock@google.com> + + Reviewed by Darin Fisher. + + Android port lacks configuration in Platform.h and config.h. + https://bugs.webkit.org/show_bug.cgi?id=31671 + + Build change only. No new tests possible. + + * config.h: Modified. Added Android-specific configuration. + +2009-11-20 Roland Steiner <rolandsteiner@chromium.org> + + Reviewed by Darin Adler. + + Change default stylesheet to reset text indentation for ruby elements by default. + (https://bugs.webkit.org/show_bug.cgi?id=31247) + + Test: fast/ruby/ruby-text-indent.html + + * css/html.css: reset text-indent on <ruby> and <rt> elements + +2009-11-19 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Darin Adler. + + Fixes <http://webkit.org/b/22754>. + Web Inspector: Keyboard shortcut for Element finder. + + Use Command + Shift + C as a shortcut for Node Search, to + match the Firebug shortcut to do the same thing. + + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.handleKeyEvent): + +2009-11-19 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31690 + Make SocketStreamHandleCFNet work on Windows + + * WebCore.vcproj/WebCore.vcproj: Added LoaderRunLoopCF. + + * platform/network/ResourceHandle.h: Removed loaderRunLoop(). + + * platform/network/cf/LoaderRunLoopCF.cpp: Added. + (WebCore::emptyPerform): + (WebCore::runLoaderThread): + (WebCore::loaderRunLoop): + * platform/network/cf/LoaderRunLoopCF.h: Added. + Moved the run loop that we use for CFNetwork from ResourceHandle to its own file, because + it's needed for more than just resource loading. + + * platform/network/cf/ResourceHandleCFNet.cpp: Use loaderRunLoop() from its new location. + + * platform/network/cf/DNSCFNet.cpp: (WebCore::DNSResolveQueue::resolve): Ditto. + + * platform/network/cf/SocketStreamHandle.h: Added static callbacks for forwarding events to + main thread. + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::SocketStreamHandle): Use loaderRunLoop() on Windows instead of + inoperable main run loop. + + (WebCore::MainThreadEventCallbackInfo::MainThreadEventCallbackInfo): + (WebCore::SocketStreamHandle::readStreamCallback): + (WebCore::SocketStreamHandle::writeStreamCallback): + (WebCore::SocketStreamHandle::readStreamCallbackMainThread): + (WebCore::SocketStreamHandle::writeStreamCallbackMainThread): + Forward stream events to main thread on Windows. + +2009-11-19 Avi Drissman <avi@chromium.org> + + Reviewed by Darin Adler. + + Quick style fix. + https://bugs.webkit.org/show_bug.cgi?id=27777 + + * platform/graphics/cg/PDFDocumentImage.cpp: + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * platform/chromium/ScrollbarThemeChromium.cpp: + (WebCore::ScrollbarThemeChromium::paintTickmarks): + * rendering/RenderMediaControlsChromium.cpp: + (WebCore::paintMediaButton): + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * rendering/RenderThemeChromiumSkia.cpp: + (WebCore::RenderThemeChromiumSkia::paintCheckbox): + (WebCore::RenderThemeChromiumSkia::paintRadio): + (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton): + (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration): + (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton): + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * platform/graphics/qt/StillImageQt.cpp: + (WebCore::StillImage::draw): + * platform/graphics/qt/StillImageQt.h: + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * rendering/RenderThemeWin.cpp: + (WebCore::RenderThemeWin::paintSearchFieldCancelButton): + (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration): + (WebCore::RenderThemeWin::paintSearchFieldResultsButton): + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * plugins/PluginView.cpp: + (WebCore::PluginView::paintMissingPluginIcon): + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * platform/graphics/win/ImageCGWin.cpp: + (WebCore::BitmapImage::getHBITMAPOfSize): + (WebCore::BitmapImage::drawFrameMatchingSourceSize): + +2009-11-19 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit- + color-correction work with untagged images + + Image's draw(), drawPattern(), and fillWithSolidColor() functions + now take a ColorSpace. A bunch of classes inherit from Image, so + draw() and drawPattern() functions there must also take a + ColorSpace. + * platform/graphics/Image.cpp: + (WebCore::Image::fillWithSolidColor): + (WebCore::Image::drawTiled): + * platform/graphics/Image.h: + * platform/graphics/BitmapImage.h: + * platform/graphics/GeneratedImage.cpp: + (WebCore::GeneratedImage::draw): + (WebCore::GeneratedImage::drawPattern): + * platform/graphics/GeneratedImage.h: + * platform/graphics/cg/PDFDocumentImage.cpp: + (WebCore::PDFDocumentImage::draw): + * platform/graphics/cg/PDFDocumentImage.h: + * svg/graphics/SVGImage.cpp: + (WebCore::SVGImage::draw): + * svg/graphics/SVGImage.h: + + All of the drawImage() functions and drawTiled() functions of + GraphicsContext now take a ColorSpace. + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::drawImage): + (WebCore::GraphicsContext::drawTiledImage): + * platform/graphics/GraphicsContext.h: + + This is where the actual work is done. + * platform/graphics/cg/ImageCG.cpp: + (WebCore::imageWithColorSpace): New static function that returns a + copy of the given image in the given ColorSpace *IF* we should use + the given ColorSpace. We will ignore the color space if the image + is tagged and return 0. + (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to + call imageWithColorSpace(). + (WebCore::Image::drawPattern): Same. + + Attempt to keep all ports building. + * platform/graphics/cairo/ImageCairo.cpp: + (WebCore::BitmapImage::draw): + (WebCore::Image::drawPattern): + * platform/graphics/haiku/ImageHaiku.cpp: + (WebCore::BitmapImage::draw): + (WebCore::Image::drawPattern): + * platform/graphics/qt/ImageQt.cpp: + (WebCore::Image::drawPattern): + (WebCore::BitmapImage::draw): + * platform/graphics/skia/BitmapImageSingleFrameSkia.h: + * platform/graphics/skia/ImageSkia.cpp: + (WebCore::Image::drawPattern): + (WebCore::BitmapImage::draw): + (WebCore::BitmapImageSingleFrameSkia::draw): + * platform/graphics/wx/ImageWx.cpp: + (WebCore::BitmapImage::draw): + (WebCore::BitmapImage::drawPattern): + + Callers of GraphicsContext's drawImage() and drawTiled() functions + now need to send a ColorSpace. + * html/HTMLCanvasElement.cpp: + (WebCore::HTMLCanvasElement::paint): + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::drawImage): + (WebCore::CanvasRenderingContext2D::drawImageFromRect): + * platform/ScrollView.cpp: + (WebCore::ScrollView::wheelEvent): + * platform/graphics/filters/FEColorMatrix.cpp: + (WebCore::FEColorMatrix::apply): + * platform/graphics/filters/FEComposite.cpp: + (WebCore::FEComposite::apply): + * platform/graphics/filters/SourceGraphic.cpp: + (WebCore::SourceGraphic::apply): + * platform/mac/ScrollbarThemeMac.mm: + (WebCore::ScrollbarThemeMac::paint): + * rendering/RenderBoxModelObject.cpp: + (WebCore::RenderBoxModelObject::paintFillLayerExtended): + (WebCore::RenderBoxModelObject::paintNinePieceImage): + * rendering/RenderImage.cpp: + (WebCore::RenderImage::paintReplaced): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::paintResizer): + * rendering/RenderListMarker.cpp: + (WebCore::RenderListMarker::paint): + * rendering/RenderSVGImage.cpp: + (WebCore::RenderSVGImage::paint): + * rendering/RenderWidget.cpp: + (WebCore::RenderWidget::paint): + * svg/graphics/SVGPaintServerPattern.cpp: + (WebCore::SVGPaintServerPattern::setup): + * svg/graphics/SVGResourceFilter.cpp: + (WebCore::SVGResourceFilter::applyFilter): + * svg/graphics/filters/SVGFEMerge.cpp: + (WebCore::FEMerge::apply): + * svg/graphics/filters/SVGFEOffset.cpp: + (WebCore::FEOffset::apply): + * svg/graphics/filters/SVGFETile.cpp: + (WebCore::FETile::apply): + +2009-11-19 Avi Drissman <avi@chromium.org> + + Reviewed by Darin Adler. + + Properly create a CGImageRef on non-PLATFORM(MAC). + https://bugs.webkit.org/show_bug.cgi?id=27777 + + * platform/graphics/cg/ImageSourceCG.cpp: + (WebCore::sharedBufferGetBytesAtPosition): + (WebCore::sharedBufferRelease): + (WebCore::ImageSource::setData): + * platform/graphics/cg/ImageSourceCG.h: + * platform/graphics/cg/PDFDocumentImage.cpp: + (WebCore::PDFDocumentImage::dataChanged): + +2009-11-19 Oliver Hunt <oliver@apple.com> + + Reviewed by Dave Hyatt. + + -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes + https://bugs.webkit.org/show_bug.cgi?id=31656 + + Make sure we're a child of the painting root before drawing overflow features. + + * manual-tests/user-drag-with-decorations.html: Added. + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::paint): + +2009-11-19 Dmitry Titov <dimich@chromium.org> + + Not reviewed, attempt to fix Chromium build. + + * rendering/RenderMediaControlsChromium.cpp: + (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile. + +2009-11-19 Rahul Kuchhal <kuchhal@chromium.org> + + Reviewed by Darin Adler. + + Do not assert when a high number is used for roman numerals in lists. + https://bugs.webkit.org/show_bug.cgi?id=31652 + + Test: fast/lists/ol-start-roman.html + + * rendering/RenderListMarker.cpp: + (WebCore::toRoman): Increase the char array size. + +2009-11-19 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Rubber-stamped by Oliver Hunt. + + Add translatable strings to cover validationMessage, after + r51172. Already covered by existing test. + + * platform/gtk/LocalizedStringsGtk.cpp: + (WebCore::validationMessageValueMissingText): + (WebCore::validationMessageTypeMismatchText): + (WebCore::validationMessagePatternMismatchText): + (WebCore::validationMessageTooLongText): + (WebCore::validationMessageRangeUnderflowText): + (WebCore::validationMessageRangeOverflowText): + (WebCore::validationMessageStepMismatchText): + +2009-11-19 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Darin Adler. + + Remove HAVE(FLOAT_H) guard + https://bugs.webkit.org/show_bug.cgi?id=31661 + + WebCore has a dependency on float.h, there is + no need to guard float.h. + + No new tests as there is no functional change. + + * html/HTMLInputElement.cpp: Remove include directive + for float.h as it is included in MathExtras.h already. + +2009-11-19 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Pavel Feldman. + + Instrumentation should account for painting in compositing layers + https://bugs.webkit.org/show_bug.cgi?id=31674 + + Add calls to InspectorTimelineAgent for painting into compositing layers, + which is not accounted for in FrameView::paintContents(). + + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::paintIntoLayer): + Avoid fetching the FrameView multiple times. + + (WebCore::inspectorTimelineAgent): + (WebCore::RenderLayerBacking::paintContents): + +2009-11-19 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Dan Bernstein. + + <rdar://problem/7035231> + Support closed caption in <video> element + + Test: media/media-captions.html + + * WebCore.base.exp: + * accessibility/AccessibilityMediaControls.cpp: + (WebCore::AccessibilityMediaControl::controlTypeName): + Define ShowClosedCaptionsButton and HideClosedCaptionsButton. + + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + Add MediaToggleClosedCaptionsButtonPart. + + * css/CSSSelector.cpp: + (WebCore::CSSSelector::extractPseudoType): + Define and match mediaControlsToggleClosedCaptionsButton. + + * css/CSSSelector.h: + (WebCore::CSSSelector::): + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector): + Define and match PseudoMediaControlsToggleClosedCaptions. + + * css/CSSValueKeywords.in: + Define and use media-toggle-closed-captions-button. + + * css/mediaControls.css: + * css/mediaControlsQuickTime.css: + Add webkit-media-controls-toggle-closed-captions-button. + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::HTMLMediaElement): + Initialize m_closedCaptionsVisible. + (WebCore::HTMLMediaElement::loadInternal): + Set m_closedCaptionsVisible to false. + (WebCore::HTMLMediaElement::hasClosedCaptions): + (WebCore::HTMLMediaElement::closedCaptionsVisible): + (WebCore::HTMLMediaElement::setClosedCaptionsVisible): + New, captions internal methods. + (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): + (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): + (WebCore::HTMLMediaElement::webkitHasClosedCaptions): + New, captions DOM API. + + * html/HTMLMediaElement.h: + * html/HTMLMediaElement.idl: + Declare methods needed for captions API. + + * platform/ThemeTypes.h: + Add MediaToggleClosedCaptionsButtonPart. + + * platform/android/LocalizedStringsAndroid.cpp: + (WebCore::localizedMediaControlElementString): + (WebCore::localizedMediaControlElementHelpText): + (WebCore::localizedMediaTimeDescription): + Add empty implmentations. + + * platform/graphics/MediaPlayer.cpp: + (WebCore::NullMediaPlayerPrivate::hasClosedCaptions): + (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible): + New, empty implementations of media engine closed caption functions. + (WebCore::MediaPlayer::hasClosedCaptions): + (WebCore::MediaPlayer::setClosedCaptionsVisible): + New, call media engine closed caption functions. + + * platform/graphics/MediaPlayer.h: + * platform/graphics/MediaPlayerPrivate.h: + (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions): + (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible): + Declare new media engine methods. + + * platform/graphics/mac/MediaPlayerPrivateQTKit.h: + * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: + (WebCore::MediaPlayerPrivate::hasClosedCaptions): + (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible): + New, QTKit implementation of closed caption methods. + + * platform/gtk/LocalizedStringsGtk.cpp: + (WebCore::localizedMediaControlElementString): + (WebCore::localizedMediaControlElementHelpText): + Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton. + + * platform/mac/WebCoreSystemInterface.h: + * platform/mac/WebCoreSystemInterface.mm: + Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions. + + * rendering/MediaControlElements.cpp: + (WebCore::MediaControlInputElement::MediaControlInputElement): + Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON. + (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement): + (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler): + (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType): + New, implement the closed caption toggle button, + + * rendering/MediaControlElements.h: + Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton, + declare MediaControlToggleClosedCaptionsButtonElement. + + * rendering/RenderMedia.cpp: + (WebCore::RenderMedia::styleDidChange): + (WebCore::RenderMedia::createToggleClosedCaptionsButton): + (WebCore::RenderMedia::createStatusDisplay): + (WebCore::RenderMedia::updateControls): + (WebCore::RenderMedia::forwardEvent): + * rendering/RenderMedia.h: + Deal with m_toggleClosedCaptionsButton. + + * rendering/RenderTheme.cpp: + (WebCore::RenderTheme::paint): + Deal with MediaToggleClosedCaptionsButtonPart. + + * rendering/RenderTheme.h: + * rendering/RenderThemeMac.h: + Declare paintMediaToggleClosedCaptionsButton. + + * rendering/RenderThemeMac.mm: + (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton): + New. + (WebCore::RenderThemeMac::shouldRenderMediaControlPart): + Don't render captions toggle button unless we are using the new theme, the + movie has captions, and the movie is in a <video> element since we currently + rely on QTKit to render the captions. + + * rendering/style/RenderStyleConstants.h: + Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON. + +2009-11-19 Kevin Ollivier <kevino@theolliviers.com> + + wx build fix. Add missing header. + + * platform/wx/LocalizedStringsWx.cpp: + +2009-11-19 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31634 + Ignore realm for proxy protection spaces + + Only affects WebSocket proxy authentication, cannot be tested in DRT. + + * platform/network/ProtectionSpace.cpp: + (WebCore::operator==): + * platform/network/ProtectionSpaceHash.h: + (WebCore::ProtectionSpaceHash::hash): + +2009-11-19 Olivier Goffart <ogoffart@trolltech.com> + + Reviewed by Simon Hausmann. + + [Qt] Normalize signal and slot signatures. + + * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: + (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): + +2009-11-19 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Store cookie domains in the WebInspector object + + The cookie domains have been moved from StoragePanel into WebInspector. + Also, the document URLs are now passed inside the WebInspector.addResource() + payload rather than pushed directly from InspectorController. + https://bugs.webkit.org/show_bug.cgi?id=31627 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::populateScriptObjects): + (WebCore::InspectorController::didFinishLoading): + * inspector/InspectorFrontend.cpp: + * inspector/InspectorFrontend.h: + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::createScriptObject): + (WebCore::InspectorResource::updateScriptObject): + * inspector/front-end/StoragePanel.js: + (WebInspector.StoragePanel.prototype.reset): + (WebInspector.StoragePanel.prototype.addCookieDomain): + * inspector/front-end/inspector.js: + (WebInspector.addResource): + (WebInspector.addCookieDomain): + (WebInspector.reset): + +2009-11-19 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for the other part of platform directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31585 + + Inherits the following classes from FastAllocBase because these are + instantiated by 'new': + + class RegularExpression - instantiated at: WebCore/page/Frame.cpp:415 + class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62 + class Path - instantiated at: WebCore/html/HTMLAreaElement.cpp:73 + class FontPlatformData - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188 + + Inherits the following classes from Noncopyable because these are + instantiated by 'new' and no need to be copyable: + + class Cursors - instantiated at: WebCore/platform/qt/CursorQt.cpp:146 + class NetworkStateNotifier - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37 + struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71 + + class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46 + class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119 + + * platform/graphics/MediaPlayerPrivate.h: + * platform/graphics/Path.h: + * platform/graphics/qt/FontPlatformData.h: + * platform/graphics/transforms/TransformationMatrix.h: + * platform/image-decoders/ImageDecoder.h: + * platform/network/NetworkStateNotifier.h: + * platform/network/ResourceRequestBase.h: + * platform/qt/CursorQt.cpp: + * platform/text/RegularExpression.h: + +2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Unreviewed. + + [Qt] Build fix for QtWebKit after r51172. + + * platform/qt/Localizations.cpp: + (WebCore::validationMessageValueMissingText): + (WebCore::validationMessageTypeMismatchText): + (WebCore::validationMessagePatternMismatchText): + (WebCore::validationMessageTooLongText): + (WebCore::validationMessageRangeUnderflowText): + (WebCore::validationMessageRangeOverflowText): + (WebCore::validationMessageStepMismatchText): + +2009-11-18 Dan Bernstein <mitz@apple.com> + + Reviewed by Simon Fraser. + + Fixed <rdar://problem/7398987> Assertion failure in + RenderLayer::updateClipRects when a plug-in’s enclosing layer is + enclosed by a transformed layer + + Tests: fast/layers/clip-rects-transformed-2.html + fast/layers/clip-rects-transformed.html + + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor + that is either transformed or composited. During painting and hit + testing, when a transformed or composited layer is hit, it becomes the + new root layer, which ultimately gets passed to calculateRects(). + (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the + root layer to calculateRects(), and return the bounding box of the + transformed rectangle. + (WebCore::RenderLayer::selfClipRect): Ditto. + * rendering/RenderLayer.h: + +2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Remove support for Qt v4.3 or older versions + https://bugs.webkit.org/show_bug.cgi?id=29469 + + No new tests as there is no change if compiled with + Qt v4.4 or later version. + + * WebCore.pro: + * dom/XMLTokenizerQt.cpp: + (WebCore::EntityResolver::resolveUndeclaredEntity): + (WebCore::XMLTokenizer::XMLTokenizer): + (WebCore::XMLTokenizer::~XMLTokenizer): + (WebCore::XMLTokenizer::doWrite): + (WebCore::XMLTokenizer::startDocument): + (WebCore::XMLTokenizer::parseDtd): + * platform/graphics/qt/FontQt.cpp: + * platform/graphics/qt/FontQt43.cpp: Removed. + * platform/graphics/qt/ImageQt.cpp: + * platform/network/ResourceHandleInternal.h: + * platform/network/qt/QNetworkReplyHandler.cpp: + * platform/network/qt/QNetworkReplyHandler.h: + * platform/network/qt/ResourceHandleQt.cpp: + (WebCore::ResourceHandle::start): + (WebCore::ResourceHandle::cancel): + (WebCore::ResourceHandle::loadResourceSynchronously): + (WebCore::ResourceHandle::setDefersLoading): + * platform/network/qt/ResourceRequest.h: + * platform/network/qt/ResourceRequestQt.cpp: + * platform/qt/ClipboardQt.cpp: + (WebCore::ClipboardQt::clearData): + * platform/qt/CookieJarQt.cpp: + (WebCore::cookieJar): + (WebCore::setCookies): + (WebCore::cookies): + (WebCore::cookiesEnabled): + * platform/qt/PlatformKeyboardEventQt.cpp: + (WebCore::keyIdentifierForQtKeyCode): + (WebCore::windowsKeyCodeForKeyEvent): + * platform/text/qt/TextBoundaries.cpp: + * platform/text/qt/TextBreakIteratorQt.cpp: + * plugins/qt/PluginDataQt.cpp: + (WebCore::PluginData::initPlugins): + +2009-11-18 Michelangelo De Simone <micdesim@gmail.com> + + Reviewed by Darin Adler. + + Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>. + Support for validationMessage attribute, as per HTML5 specs. + + Test: fast/forms/validationMessage.html + + * html/HTMLButtonElement.idl: validationMessage attribute + * html/HTMLFieldSetElement.idl: validationMessage attribute + * html/HTMLFormControlElement.cpp: + * html/HTMLFormControlElement.h: + * html/HTMLInputElement.idl: validationMessage attribute + * html/HTMLSelectElement.idl: validationMessage attribute + * html/HTMLTextAreaElement.idl: validationMessage attribute + * html/ValidityState.cpp: new method to retrieve pertinent localized text + * html/ValidityState.h: + * page/mac/WebCoreViewFactory.h: + * platform/LocalizedStrings.h: + * platform/android/LocalizedStringsAndroid.cpp: + * platform/gtk/LocalizedStringsGtk.cpp: + * platform/haiku/LocalizedStringsHaiku.cpp: + * platform/mac/LocalizedStringsMac.mm: + * platform/wx/LocalizedStringsWx.cpp: + +2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Unreviewed. + + Fix a typo. Remove the trailing semicolon + from an include directive after r51137. + + No new tests as there is no functional change. + + * platform/qt/QWebPageClient.h: + +2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Unreviewed. + + [Qt] Build fix for QtWebKit after r51159. + + Include float.h for DBL_MANT_DIG. Not sure why this + is not a problem for other ports. + + * html/HTMLInputElement.cpp: + +2009-11-19 Roland Steiner <rolandsteiner@chromium.org> + + Reviewed by Darin Adler. + + Bug 31574 - Crashing bug when removing <ruby> element + (https://bugs.webkit.org/show_bug.cgi?id=31574) + + Cause of the bug: + 1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren() + 2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove() + 3.) remove() is being redirected as parent()->removeChild() in RenderObject.h + 4.) this triggers the special handling of child removal in RenderRubyRun that + causes it to destroy itself + 5.) On returning from all this the renderer crashes when accessing a member + or virtual function on this now illegal object. + + I therefore added a flag that tracks if the ruby run is being destroyed. + If so, avoid doing the special handling in removeChild that caused this. + It's not the most elegant solution, but the easiest to implement without + touching unrelated code. Also, it's self-documenting. + + Test: fast/ruby/ruby-remove.html + + * rendering/RenderRubyRun.cpp: + (WebCore::RenderRubyRun::RenderRubyRun): + (WebCore::RenderRubyRun::destroy): + (WebCore::RenderRubyRun::removeChild): + * rendering/RenderRubyRun.h: + +2009-11-18 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used + https://bugs.webkit.org/show_bug.cgi?id=31643 + + No new tests as there is no functional change. + + * WebCore.pro: + +2009-11-18 Yong Li <yong.li@torchmobile.com> + + Reviewed by Eric Seidel. + + Implement TextBoundaries for WINCE port. + https://bugs.webkit.org/show_bug.cgi?id=27371 + + * platform/text/wince/TextBoundariesWince.cpp: Added. + +2009-11-18 Yong Li <yong.li@torchmobile.com> + + Reviewed by Eric Seidel. + + Implement TextBreakIterator for WINCE port. + https://bugs.webkit.org/show_bug.cgi?id=27371 + + * platform/text/wince/TextBreakIteratorWince.cpp: Added. + +2009-11-18 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Add support for ValidityState.typeMismatch for the following INPUT types: + date datetime datetime-local month time week + https://bugs.webkit.org/show_bug.cgi?id=31342 + + Tests: fast/forms/ValidityState-typeMismatch-date.html + fast/forms/ValidityState-typeMismatch-datetime.html + fast/forms/ValidityState-typeMismatch-datetimelocal.html + fast/forms/ValidityState-typeMismatch-month.html + fast/forms/ValidityState-typeMismatch-time.html + fast/forms/ValidityState-typeMismatch-week.html + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::formStringToISODateTime): Check the type + validity of the specified type and string using the ISODateTime class. + * html/HTMLInputElement.h: + * html/ValidityState.cpp: + (WebCore::ValidityState::typeMismatch): Check the type validity + for date, datetime, datetime-local, month, time and week with + HTMLInputElemtn::formStringToISODateTime() + +2009-11-18 Maciej Stachowiak <mjs@apple.com> + + Reviewed by Oliver Hunt. + + Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes + https://bugs.webkit.org/show_bug.cgi?id=31237 + + Also speeds up Dromaeo DOM Core tests by 1.31x. + + * bindings/js/JSNodeCustom.cpp: + (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree + mark bit was no longer effective; instead I changed things so only a node that has no ancestors + with wrappers would do marking; there should be only one in the typical case (the root of the + detached subtree). + * dom/Node.cpp: + (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions. + * dom/Node.h: ditto + +2009-11-18 Darin Adler <darin@apple.com> + + Reviewed by Sam Weinig. + + Get rid of the redundant strokeType and fillType data members on + a GraphicsContext as well as the FillOrStrokeType enum. Use + null pointers instead. + + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::setStrokeColor): Null out the pattern + and gradient. + (WebCore::GraphicsContext::setFillColor): Ditto. + (WebCore::GraphicsContext::setStrokePattern): Null out the graident. + (WebCore::GraphicsContext::setFillPattern): Ditto. + (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern. + (WebCore::GraphicsContext::setFillGradient): Ditto. + + * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::setPlatformFill): Use null checks on fillPattern and + fillGraident instead of a switch statement. + (WebCore::setPlatformStroke): Ditto. + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get. + (WebCore::GraphicsContext::applyFillPattern): Ditto. + (WebCore::calculateDrawingMode): Use fillPattern and strokePattern + to see if there is a pattern instead of fillType and strokeType. + (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient, + fillPattern, and strokePattern instead of fillType and strokeType. + (WebCore::GraphicsContext::fillPath): Added FIXME about color space that + is used in the pattern and gradient case probably erroneously. Moved + gradient code inside an if statement. Streamlined pattern code and + use an if statement. No switch any more. + (WebCore::GraphicsContext::strokePath): Ditto. + (WebCore::GraphicsContext::fillRect): Ditto. + (WebCore::GraphicsContext::strokeRect): Ditto. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and + fillGraident instead of a switch statement. + (WebCore::GraphicsContext::strokePath): Ditto. + (WebCore::GraphicsContext::fillRect): Ditto. + + * platform/graphics/wince/GraphicsContextWince.cpp: + (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType. + (WebCore::GraphicsContext::fillRect): Ditto. + +2009-11-18 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Support for step attribute and ValidityStae.stepMismatch for + type=number and range. stepMismatch will be false if the + difference between the current value and a multiple of the step + value is very small. + + Change the behavior of RenderSlider so that it always has a value + rounded to the step attribute value. + + https://bugs.webkit.org/show_bug.cgi?id=31331 + + Tests: fast/forms/ValidityState-stepMismatch-number.html + fast/forms/ValidityState-stepMismatch-range.html + fast/forms/ValidityState-stepMismatch-unsupported.html + fast/forms/input-step.html + + * html/HTMLAttributeNames.in: Add "step". + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::stepMismatch): + (WebCore::HTMLInputElement::getStepParameters): + (WebCore::HTMLInputElement::getAllowedValueStep): + * html/HTMLInputElement.h: + * html/HTMLInputElement.idl: Add "step". + * html/ValidityState.cpp: + (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch(). + * html/ValidityState.h: + * rendering/RenderSlider.cpp: + (WebCore::SliderRange::SliderRange): + (WebCore::SliderRange::clampValue): + +2009-11-18 Dmitry Titov <dimich@chromium.org> + + Reviewed by Darin Adler. + + Need to ASSERT(isMainThread()) in ThreadShared methods. + https://bugs.webkit.org/show_bug.cgi?id=31637 + + Added ASSERT(IsMainThread()) to all following methods: + * platform/TreeShared.h: + (WebCore::TreeShared::TreeShared): + (WebCore::TreeShared::~TreeShared): + (WebCore::TreeShared::ref): + (WebCore::TreeShared::deref): + (WebCore::TreeShared::setParent): + (WebCore::TreeShared::parent): + +2009-11-18 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Eric Seidel. + + Add plugin visibility manual test + + https://bugs.webkit.org/show_bug.cgi?id=31542 + + * manual-tests/plugins/windowed.html: + * manual-tests/plugins/windowless.html: + +2009-11-18 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Pavel Feldman. + + Web Inspector - remember last script displayed in Scripts panel + https://bugs.webkit.org/show_bug.cgi?id=27552 + + Manual test added + + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.showScript): + (WebInspector.ScriptsPanel.prototype.showResource): + (WebInspector.ScriptsPanel.prototype._showScriptOrResource): + (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu): + (WebInspector.ScriptsPanel.prototype._callFrameSelected): + (WebInspector.ScriptsPanel.prototype._goBack): + (WebInspector.ScriptsPanel.prototype._goForward): + * manual-tests/inspector/remember-last-script.html: Added. + +2009-11-18 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dimitri Glazkov. + + Win chromium is slow to draw transparent texts + https://bugs.webkit.org/show_bug.cgi?id=31258 + + Create bounded transparency layers instead of just clipping. + + No new tests because this is just a performance improvement. + + * platform/graphics/chromium/FontChromiumWin.cpp: + (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI): + +2009-11-18 Shu Chang <Chang.Shu@nokia.com> + + Reviewed by Eric Seidel. + + [Qt] Add support for displaying deleteButton. + https://bugs.webkit.org/show_bug.cgi?id=31560 + + Test: LayoutTests/editing/deleting/5408255.html + + * WebCore.qrc: + * platform/graphics/qt/ImageQt.cpp: + (loadResourcePixmap): + +2009-11-18 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Eric Seidel. + + Fix Qt build without JavaScript debugger. + + https://bugs.webkit.org/show_bug.cgi?id=31575 + + * page/Console.idl: + +2009-11-18 Daniel Bates <dbates@webkit.org> + + Reviewed by Dave Hyatt. + + https://bugs.webkit.org/show_bug.cgi?id=24971 + And + <rdar://problem/7138265> + + Fixes an issue where setting the height of a table row programmatically + (via JavaScript) causes the table to be improperly rendered because the + height of each row in the table is not recalculated with respect to the + CSS height property. + + In particular, programmatically setting the height of some table row causes + the rows of that table to be rendered with a height equal to the minimum + height required by the cells in that row, regardless of any specified cell + heights. Instead, when RenderTableSection::recalcCells is called, the height + of each row should be set to the CSS height property just as we do in + RenderTableSection::addChild. + + Test: fast/table/row-height-recalc2.html + + * rendering/RenderTableSection.cpp: + (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added. + (WebCore::RenderTableSection::addChild): Moved code that set row height into + method WebCore::setRowHeightToRowStyleHeightIfNotRelative. + (WebCore::RenderTableSection::recalcCells): Modified to call + WebCore::setRowHeightToRowStyleHeightIfNotRelative. + +2009-11-18 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for the part of platform directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31473 + + Inherits the following classes from FastAllocBase because these are + instantiated by 'new': + + class AnimationList - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85 + class Color - instantiated at WebCore/rendering/RenderTheme.cpp:48 + struct Length - instantiated at WebCore/platform/Length.cpp:103 + class PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63 + class ContextMenuItem - instantiated at WebCore/platform/ContextMenu.cpp:70 + class DeprecatedPtrList - instantiated at WebCore/rendering/RenderBlock.cpp:2284 + + Inherits the following classes from Noncopyable because these are + instantiated by 'new' and no need to be copyable: + + class GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78 + class FontCache - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43 + struct MediaPlayerFactory - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163 + class DeprecatedPtrListNode - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53 + + * platform/ContextMenuItem.h: + * platform/DeprecatedPtrList.h: + * platform/DeprecatedPtrListImpl.cpp: + * platform/Length.h: + * platform/PlatformKeyboardEvent.h: + * platform/animation/AnimationList.h: + * platform/graphics/Color.h: + * platform/graphics/FontCache.h: + * platform/graphics/GraphicsContextPrivate.h: + * platform/graphics/MediaPlayer.cpp: + +2009-11-18 Daniel Bates <dbates@webkit.org> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31186 + + Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to + m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively. + These are more descriptive names so as to clear an ambiguity surrounding + their usage. Also, renames associated setters and getters so that they + coincide with the renamed fields. + + No functionality was changed. So, no tests were included. + + * bindings/objc/DOMHTML.mm: + (-[DOMHTMLInputElement _isEdited]): + (-[DOMHTMLTextAreaElement _isEdited]): + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::defaultEventHandler): + * rendering/RenderTextControl.cpp: + (WebCore::RenderTextControl::RenderTextControl): + (WebCore::RenderTextControl::setInnerTextValue): + (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited. + (WebCore::RenderTextControl::subtreeHasChanged): + * rendering/RenderTextControl.h: + (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited. + (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited. + (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited. + * rendering/RenderTextControlSingleLine.cpp: + (WebCore::RenderTextControlSingleLine::subtreeHasChanged): + * wml/WMLInputElement.cpp: + (WebCore::WMLInputElement::defaultEventHandler): + +2009-11-18 Tony Chang <tony@chromium.org> + + Reviewed by Adam Barth. + + Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8. + https://bugs.webkit.org/show_bug.cgi?id=31499 + + No new tests, just a build cleanup. + + * WebCore.gypi: + * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed. + * bindings/v8/custom/V8CustomBinding.h: + +2009-11-18 Kevin Watters <kevinwatters@gmail.com> + + Reviewed by Kevin Ollivier. + + Enable wx plugin support using the Windows implementation as a base. + + https://bugs.webkit.org/show_bug.cgi?id=31636 + + * platform/graphics/GraphicsContext.h: + (WebCore::GraphicsContext::inTransparencyLayer): + * platform/graphics/wx/GraphicsContextWx.cpp: + (WebCore::GraphicsContext::getWindowsContext): + (WebCore::GraphicsContext::releaseWindowsContext): + * platform/wx/FileSystemWx.cpp: + (WebCore::unloadModule): + (WebCore::listDirectory): + * plugins/PluginDatabase.cpp: + * plugins/PluginView.cpp: + (WebCore::PluginView::stop): + (WebCore::PluginView::PluginView): + * plugins/PluginView.h: + * plugins/win/PluginViewWin.cpp: + (windowHandleForPageClient): + (WebCore::PluginView::handleMouseEvent): + (WebCore::PluginView::platformStart): + (WebCore::PluginView::snapshot): + * wscript: + +2009-11-18 Andrei Popescu <andreip@google.com> + + Reviewed by Dimitri Glazkov. + + [Android] Add shared timer and sound utilities to platform/android + https://bugs.webkit.org/show_bug.cgi?id=31584 + + No new tests required, this is platform specific code. + + * platform/android/SharedTimerAndroid.cpp: Added. + (WebCore::setSharedTimerFiredFunction): + (WebCore::setSharedTimerFireTime): + (WebCore::stopSharedTimer): + * platform/android/SoundAndroid.cpp: Added. + (WebCore::systemBeep): + +2009-11-18 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Timothy Hatcher. + + Fix profile tree nodes loss after focus / restore actions. + + Focusing on a node is currently implemented via nodes reattaching + with some caching involved. It seems that not all code was updated + to handle this scenario correctly. + + https://bugs.webkit.org/show_bug.cgi?id=31553 + + * inspector/front-end/BottomUpProfileDataGridTree.js: + (WebInspector.BottomUpProfileDataGridNode): + (WebInspector.BottomUpProfileDataGridNode.prototype._restore): + (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate): + (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren): + * inspector/front-end/DataGrid.js: + (WebInspector.DataGrid.prototype.insertChild): + (WebInspector.DataGridNode.prototype._detach): + (WebInspector.DataGridNode.prototype.savePosition): + (WebInspector.DataGridNode.prototype.restorePosition): + * inspector/front-end/TopDownProfileDataGridTree.js: + (WebInspector.TopDownProfileDataGridTree.prototype.focus): + (WebInspector.TopDownProfileDataGridTree.prototype.restore): + +2009-11-18 Carol Szabo <carol.szabo@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] QWebPageClient.h needs in some cases QCursor, but it does not + include it + https://bugs.webkit.org/show_bug.cgi?id=31527 + + No new tests as this is just a coding style fix that affects the + build of some not yet submitted patches (i.e. for bug 30173). + + * platform/qt/QWebPageClient.h: + +2009-11-18 Nicolas Roard <nicolas@roard.com> + + Reviewed by Dimitri Glazkov. + + InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR) + https://bugs.webkit.org/show_bug.cgi?id=31504 + + * inspector/InspectorTimelineAgent.h:Added the guard. + +2009-11-18 Jens Alfke <snej@chromium.org> + + Build fix to my previous checkin, for Windows Chromium + + * svg/SVGAnimatedProperty.h: + (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString. + +2009-11-18 Joseph Pecoraro <joepeck@webkit.org> + + Reviewed by Pavel Feldman. + + Web Inspector: Directly Access <head> Instead of Searching for It + https://bugs.webkit.org/show_bug.cgi?id=31641 + + Changed old access of the head element (document.getElementsByTagName) + to just use the document.head accessor. + + * inspector/front-end/FontView.js: + (WebInspector.FontView): + * inspector/front-end/InjectedScript.js: + (InjectedScript.addStyleSelector): + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._loaded): + * inspector/front-end/inspector.js: + (windowLoaded): + +2009-11-18 Sam Weinig <sam@webkit.org> + + Reviewed by Anders Carlsson. + + Fix two Geolocation assertions. + + * page/Chrome.cpp: + (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this + is not called from JS. + * page/Geolocation.cpp: + (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in + a RefPtr first. + +2009-11-18 Alexey Proskuryakov <ap@apple.com> + + Case sensitive file system build fix. + + * platform/network/Credential.h: It's not WTF, just wtf. + +2009-11-18 Aaron Golden <agolden@apple.com> + + Reviewed by Alexey Proskuryakov. + + Add support for certificates to WebCore::Credential so we can convert between NSURLCredential + objects and WebCore::Credential objects without losing certificate information. + + * platform/network/Credential.cpp: + (WebCore::Credential::Credential): Adding a constructor that takes an identity argument and a certificate chain argument + (WebCore::Credential::isEmpty): Modifying isEmpty to support certificate based credentials (which don't have a username or password) + (WebCore::Credential::identity): Accessor for the m_identity property + (WebCore::Credential::certificates): Accessor for the m_certificates property + (WebCore::Credential::type): Accessor for the m_type property + (WebCore::operator==): Modifying == to compare the identity and certificate chains of certificate based credentials. + * platform/network/Credential.h: Adding new fields to WebCore::Credential to support certificate based credentials. + * platform/network/mac/AuthenticationMac.mm: + (WebCore::mac): Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects. + (WebCore::core): Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects. + +2009-11-18 Dmitry Titov <dimich@chromium.org> + + Reviewed by Eric Seidel. + + Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread. + https://bugs.webkit.org/show_bug.cgi?id=31615 + + * dom/Document.cpp: + (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer): + (WebCore::ScriptExecutionContextTaskTimer::fired): + (WebCore::PerformTaskContext::PerformTaskContext): + (WebCore::performTask): + (WebCore::Document::postTask): + * dom/ScriptExecutionContext.cpp: + * dom/ScriptExecutionContext.h: + +2009-11-18 Jens Alfke <snej@chromium.org> + + Reviewed by Darin Adler. + + Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings, + by causing the right v8-to-WebCore conversion function to be called for every parameter. + This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations. + To enforce correctness, I added a mode that disables implicit + String-->AtomicString conversions while compiling the generated bindings. + https://bugs.webkit.org/show_bug.cgi?id=31168 + + * bindings/scripts/CodeGeneratorV8.pm: Generate usage of V8Parameter class. + * bindings/v8/DerivedSourcesAllInOne.cpp: Enable NO_IMPLICIT_ATOMICSTRING. + * bindings/v8/V8Binding.h: Add V8Parameter class. + * css/WebKitCSSKeyframesRule.h: Make AtomicString conversions explicit. + * dom/Document.idl: Remove obsolete [HintAtomic] annotation. + * platform/text/AtomicString.h: Added NO_IMPLICIT_ATOMICSTRING option. + * svg/SVGAnimatedTemplate.h: Change some return types to String to avoid implicit conversion. + * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate. + +2009-11-18 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + Move FillOrStrokeType out of public header. + + * platform/graphics/GraphicsContext.h: Updated copyright date to cover + some years we published Apple changes, sorted forward declarations, + removed FillOrStrokeType enum. + * platform/graphics/GraphicsContextPrivate.h: Updated copyright date + to cover some years we published Apple changes, sorted includes, + moved FillOrStrokeType enum here. + +2009-11-18 Chris Marrin <cmarrin@apple.com> + + Reviewed by Simon Fraser. + + Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter + https://bugs.webkit.org/show_bug.cgi?id=31601 + + These are used to debug accelerated compositing layers. I removed + the platform specific code from GraphicsLayerCA.mm and added calls + to GraphicsLayerClient to get it from the higher levels. The values + now get cached in RenderLayerCompositing and are queried from there + by RenderLayerBacking (which implements the GraphicsLayerClient interface). + + * WebCore.base.exp: + * page/FrameView.cpp: + (WebCore::FrameView::updateCompositingLayers): + * page/Settings.cpp: + (WebCore::Settings::Settings): + (WebCore::Settings::setShowDebugBorders): + (WebCore::Settings::setShowRepaintCounter): + * page/Settings.h: + (WebCore::Settings::showDebugBorders): + (WebCore::Settings::showRepaintCounter): + * platform/graphics/GraphicsLayer.h: + (WebCore::GraphicsLayer::showDebugBorders): + (WebCore::GraphicsLayer::showRepaintCounter): + * platform/graphics/GraphicsLayerClient.h: + * platform/graphics/mac/GraphicsLayerCA.mm: + * rendering/RenderLayerBacking.cpp: + (WebCore::RenderLayerBacking::showDebugBorders): + (WebCore::RenderLayerBacking::showRepaintCounter): + * rendering/RenderLayerBacking.h: + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::RenderLayerCompositor): + (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags): + * rendering/RenderLayerCompositor.h: + (WebCore::RenderLayerCompositor::showDebugBorders): + (WebCore::RenderLayerCompositor::showRepaintCounter): + +2009-11-18 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Get rid of metrics and properties sidebars' + flickering. + + https://bugs.webkit.org/show_bug.cgi?id=31629 + + * inspector/front-end/MetricsSidebarPane.js: + * inspector/front-end/PropertiesSidebarPane.js: + +2009-11-17 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Pavel Feldman. + + Fixes <http://webkit.org/b/31606>. + Web Inspector: Enter/Return key should enter edit mode for Editable Fields. + + This implements Enter starting editing mode in an editable DataGrid. If the + DataGrid is editable and the user hits return, startEditing the first child + of the selected node. Also refactored some editing functions to take an + event target instead of the event itself, because the functions only needed + the target. Lastly, added had return in editing mode stop propogation, because + when enter was hit to confirm text, it would propagate back to the datagrid + and try to start editing again. + + * inspector/front-end/DataGrid.js: + (WebInspector.DataGrid.prototype._ondblclick): + (WebInspector.DataGrid.prototype._startEditing): + (WebInspector.DataGrid.prototype.handleKeyEvent): + (WebInspector.DataGrid.prototype.dataGridNodeFromEvent): + (WebInspector.DataGrid.prototype._mouseDownInDataTable): + (WebInspector.DataGrid.prototype._clickInDataTable): + * inspector/front-end/inspector.js: + (WebInspector.startEditing.element.handleKeyEvent): + (WebInspector.startEditing): + +2009-11-18 Ben Murdoch <benm@google.com> + + Reviewed by Darin Adler. + + HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute. + https://bugs.webkit.org/show_bug.cgi?id=31593 + + Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html + + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL. + +2009-11-18 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Touch InspectorController so that frontend + JS files are deployed on Windows. + + * inspector/InspectorController.cpp: + +2009-11-18 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: clone timeline records array instead of + copying reference on invalidate all. + + https://bugs.webkit.org/show_bug.cgi?id=31596 + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems): + +2009-11-18 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Elements don't drop out of compositing layers when animation ends + https://bugs.webkit.org/show_bug.cgi?id=31613 + <rdar://problem/7402913> + + Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which + are compositing anyway for other reasons. Doing so can cause those layers + to stay in compositing mode even after animations finish, because needsToBeComposited() + continues to return true. + + No new tests because it's not possible to determine which elements are in + compositing layers from DRT output. + + * rendering/RenderLayerCompositor.cpp: + (WebCore::RenderLayerCompositor::computeCompositingRequirements): + +2009-11-18 Girish Ramakrishnan <girish@forwardbias.in> + + Reviewed by Tor Arne Vestbø. + + [Qt] Mac Plugins: Remove null timer + + A null timer was used to send mouse move events. Instead, we now use + move events to send nullEvent. This brings down CPU usage by 20-30%. + + https://bugs.webkit.org/show_bug.cgi?id=31624 + + * plugins/PluginView.h: + * plugins/mac/PluginViewMac.cpp: + (WebCore::PluginView::platformStart): + (WebCore::PluginView::handleMouseEvent): + +2009-11-18 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] WebKit crashes when loading certain SVG images + + Check if the familly exist before creating the PlatformData from it. + + https://bugs.webkit.org/show_bug.cgi?id=29443 + + Test: svg/text/text-font-invalid.html + + * platform/graphics/qt/FontFallbackListQt.cpp: + (WebCore::FontFallbackList::fontDataAt): + +2009-11-17 Nicolas Weber <thakis@chromium.org> + + Reviewed by Darin Fisher. + + Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly + after navigation. + https://bugs.webkit.org/show_bug.cgi?id=31609 + + * platform/chromium/PopupMenuChromium.cpp: + (WebCore::PopupContainer::showExternal): Set parent for external + dropdowns, so that |PopupListBox::hidePopup()| can successfully notify + its parent's client. + +2009-11-17 Hayato Ito <hayato@google.com> + + Reviewed by Darin Adler. + + Avoid infinite mutual recursion when deeply nested tags are loaded + https://bugs.webkit.org/show_bug.cgi?id=30651 + + Test: fast/parser/block-nesting-cap-table.html + + * html/HTMLParser.cpp: + (WebCore::HTMLParser::parseToken): + (WebCore::tagPriorityOfNode): + (WebCore::HTMLParser::limitBlockDepth): + (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth): + (WebCore::HTMLParser::insertNode): + * html/HTMLParser.h: + +2009-11-17 Brent Fulgham <bfulgham@webkit.org> + + Rubber-stamped by Alexey Proskuryakov. + + Final clean-ups for minor coding standard violations. + https://bugs.webkit.org/show_bug.cgi?id=26102. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + +2009-11-17 Johnny Ding <jnd@chromium.org> + + Reviewed by Darin Adler. + + In all valid script tags for JavaScript, the event handler in <script...for> should not get executed. + https://bugs.webkit.org/show_bug.cgi?id=31567 + + * dom/ScriptElement.cpp: + (WebCore::ScriptElementData::shouldExecuteAsJavaScript): + +2009-11-17 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Make DRT show web inspector for tests in inspector/ folder. + - Updated DRT to show/close inspector for all tests under /inspector + - Introduced LayoutTestController::setTimelineProfilingEnabled and + WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled + - Removed reload on each inspector test + - Renamed fast/inspector to fast/inspector-support in order not to trigger + inspector for those. + - Reimplemented timeline tests in order to get rid of reload there. + - Moved tests that don't require harness into the fast group. + + https://bugs.webkit.org/show_bug.cgi?id=31472 + + * WebCore.Inspector.exp: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._formatRecord): + +2009-11-17 Andrei Popescu <andreip@google.com> + + Reviewed by Dimitri Glazkov. + + [Android] Android is missing the implementation of the GeolocationService iface. + https://bugs.webkit.org/show_bug.cgi?id=31554 + + No new tests required as this is platform specific code. + + * platform/android/GeolocationServiceAndroid.cpp: Added. + (WebCore::GeolocationServiceAndroid::create): + (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid): + (WebCore::GeolocationServiceAndroid::startUpdating): + (WebCore::GeolocationServiceAndroid::stopUpdating): + (WebCore::GeolocationServiceAndroid::suspend): + (WebCore::GeolocationServiceAndroid::resume): + (WebCore::GeolocationServiceAndroid::newPositionAvailable): + (WebCore::GeolocationServiceAndroid::newErrorAvailable): + (WebCore::GeolocationServiceAndroid::timerFired): + (WebCore::GeolocationServiceAndroid::isPositionMovement): + (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate): + (WebCore::GeolocationServiceAndroid::isPositionMoreTimely): + * platform/android/GeolocationServiceAndroid.h: Added. + (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid): + (WebCore::GeolocationServiceAndroid::lastPosition): + (WebCore::GeolocationServiceAndroid::lastError): + * platform/android/GeolocationServiceBridge.cpp: Added. + (WebCore::): + (WebCore::GeolocationServiceBridge::GeolocationServiceBridge): + (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge): + (WebCore::GeolocationServiceBridge::start): + (WebCore::GeolocationServiceBridge::stop): + (WebCore::GeolocationServiceBridge::setEnableGps): + (WebCore::GeolocationServiceBridge::newLocationAvailable): + (WebCore::GeolocationServiceBridge::newErrorAvailable): + (WebCore::GeolocationServiceBridge::toGeoposition): + (WebCore::GeolocationServiceBridge::startJavaImplementation): + (WebCore::GeolocationServiceBridge::stopJavaImplementation): + * platform/android/GeolocationServiceBridge.h: Added. + +2009-11-16 Kent Tamura <tkent@chromium.org> + + Unreviewd build fix. + + - Fix typo in WebCore.vcproj. + - Intlude limits.h for INT_MAX. + - Enclose with parenthesis to suspress warning. + + * WebCore.vcproj/WebCore.vcproj: + * html/ISODateTime.cpp: + (WebCore::ISODateTime::addDay): + +2009-11-16 Robin Dunn <robin@alldunn.com> + + Reviewed by Kevin Ollivier. + + Make sure wx scrollbar drawing code factors in transforms when switching backends, + fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects. + + https://bugs.webkit.org/show_bug.cgi?id=31570 + + * platform/wx/ScrollbarThemeWx.cpp: + (WebCore::ScrollbarThemeWx::minimumThumbLength): + (WebCore::ScrollbarThemeWx::splitTrack): + (WebCore::ScrollbarThemeWx::forwardButtonRect): + * platform/wx/ScrollbarThemeWx.h: + * platform/wx/wxcode/gtk/scrollbar_render.cpp: + (wxRenderer_DrawScrollbar): + * platform/wx/wxcode/scrollbar_render.h: + (calcThumbStartAndLength): + * platform/wx/wxcode/win/scrollbar_render.cpp: + (wxRenderer_DrawScrollbar): + +2009-11-16 Kent Tamura <tkent@chromium.org> + + Reviewed by David Levin. + + Introduce WebCore::ISODateTime class. + https://bugs.webkit.org/show_bug.cgi?id=31340 + + This class represents a value of date/time types of the HTML5 INPUT + element, and has some parsing methods for ISO 8601. + + This change has no tests because the class is not used yet. + + * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h. + * WebCore.gypi: ditto. + * WebCore.pro: ditto. + * WebCore.vcproj/WebCore.vcproj: ditto. + * WebCore.xcodeproj/project.pbxproj: ditto. + * WebCoreSources.bkl: ditto. + * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class. + (WebCore::isLeapYear): + (WebCore::maxDayOfMonth): + (WebCore::dayOfWeek): + (WebCore::ISODateTime::maxWeekNumberInYear): + (WebCore::countDigits): + (WebCore::toInt): + (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek(). + (WebCore::ISODateTime::addDay): Private helper for parseTimeZone(). + (WebCore::ISODateTime::addMinute): ditto. + (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime(). + (WebCore::ISODateTime::parseMonth): Parser for <input type=month>. + (WebCore::ISODateTime::parseDate): Parser for <input type=date>. + (WebCore::ISODateTime::parseWeek): Parser for <input type=week>. + (WebCore::ISODateTime::parseTime): Parser for <input type=time>. + (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>. + (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>. + * html/ISODateTime.h: Added. Declare WebCore::ISODateTime class. + (WebCore::ISODateTime::ISODateTime): + (WebCore::ISODateTime::millisecond): + (WebCore::ISODateTime::second): + (WebCore::ISODateTime::minute): + (WebCore::ISODateTime::hour): + (WebCore::ISODateTime::monthDay): + (WebCore::ISODateTime::month): + (WebCore::ISODateTime::fullYear): + (WebCore::ISODateTime::week): + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Fix a typo in previous commit. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if. + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Fix a typo in previous commit. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Tiger build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named + differently in Tiger CFNetwork. + +2009-11-16 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Darin Fisher. + + [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly. + + Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784. + + Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html + + * platform/KURLGoogle.cpp: + (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified. + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Rubber-stamped by Jon Honeycutt. + + A better Windows build fix + + * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams): + Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports. + +2009-11-16 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Darin Adler. + + Rename protocolIsValid to isValidProtocol. + https://bugs.webkit.org/show_bug.cgi?id=31503 + + This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19. + + No new tests since no new functionality was introduced. + + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::setProtocol): + * platform/KURL.cpp: + (WebCore::isValidProtocol): + * platform/KURL.h: + * platform/KURLGoogle.cpp: + (WebCore::isValidProtocol): + +2009-11-16 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + AX: aria-labelledby duplicates some of its WAI-ARIA label + https://bugs.webkit.org/show_bug.cgi?id=31565 + + Test: accessibility/aria-labelledby-overrides-label.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::hasTextAlternative): + (WebCore::AccessibilityRenderObject::exposesTitleUIElement): + (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): + * accessibility/AccessibilityRenderObject.h: + +2009-11-16 Nate Chapin <japhet@chromium.org> + + Reviewed by Darin Fisher. + + Handle the case of a null NPObject* in NPN_SetException in + the V8 bindings. This allow out of process plugins calling + NPN_SetException to just send null instead of sending an + NPObject* that would be an address in a different + process's memory space. + + https://bugs.webkit.org/show_bug.cgi?id=31561 + + * bindings/v8/NPV8Object.cpp: + (_NPN_SetException): Allow null NPObject* and just throw a general error. + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams): + Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those. + +2009-11-14 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] ASSERT failure while running DRT + https://bugs.webkit.org/show_bug.cgi?id=30978 + + Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod. + These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren. + + * bridge/qt/qt_instance.cpp: + (JSC::Bindings::QtRuntimeObjectImp::createStructure): + * bridge/qt/qt_runtime.h: + (JSC::Bindings::QtRuntimeMethod::createStructure): + +2009-11-16 Mark Rowe <mrowe@apple.com> + + Attempt to fix the build. Land a file that was missing from r51049. + + * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl. + (WebCore::setWebGLArrayFromArray): + +2009-11-16 Kenneth Russell <kbr@google.com> + + Reviewed by Oliver Hunt. + + Update API of WebGLArray and friends + https://bugs.webkit.org/show_bug.cgi?id=31175 + + * bindings/js/JSWebGLArrayCustom.cpp: + (WebCore::toJS): + * bindings/js/JSWebGLArrayHelper.h: Added. + (WebCore::setWebGLArrayFromArray): + * bindings/js/JSWebGLByteArrayCustom.cpp: + (WebCore::JSWebGLByteArray::set): + * bindings/js/JSWebGLFloatArrayCustom.cpp: + (WebCore::JSWebGLFloatArray::set): + * bindings/js/JSWebGLIntArrayCustom.cpp: + (WebCore::JSWebGLIntArray::set): + * bindings/js/JSWebGLShortArrayCustom.cpp: + (WebCore::JSWebGLShortArray::set): + * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp: + (WebCore::JSWebGLUnsignedByteArray::set): + * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp: + (WebCore::JSWebGLUnsignedIntArray::set): + * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp: + (WebCore::JSWebGLUnsignedShortArray::set): + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::convertToV8Object): + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLArrayCustom.h: + (WebCore::constructWebGLArray): + (WebCore::getWebGLArrayElement): + (WebCore::setWebGLArrayFromArray): + (WebCore::setWebGLArray): + * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * html/canvas/WebGLArray.cpp: + (WebCore::WebGLArray::WebGLArray): + (WebCore::WebGLArray::~WebGLArray): + (WebCore::WebGLArray::setImpl): + * html/canvas/WebGLArray.h: + (WebCore::WebGLArray::isByteArray): + (WebCore::WebGLArray::isUnsignedByteArray): + (WebCore::WebGLArray::isShortArray): + (WebCore::WebGLArray::isUnsignedShortArray): + (WebCore::WebGLArray::isIntArray): + (WebCore::WebGLArray::isUnsignedIntArray): + (WebCore::WebGLArray::isFloatArray): + (WebCore::WebGLArray::buffer): + (WebCore::WebGLArray::baseAddress): + (WebCore::WebGLArray::byteOffset): + * html/canvas/WebGLArray.idl: + * html/canvas/WebGLArrayBuffer.cpp: + (WebCore::WebGLArrayBuffer::create): + (WebCore::WebGLArrayBuffer::WebGLArrayBuffer): + (WebCore::WebGLArrayBuffer::data): + (WebCore::WebGLArrayBuffer::byteLength): + (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer): + * html/canvas/WebGLArrayBuffer.h: + * html/canvas/WebGLByteArray.cpp: + (WebCore::WebGLByteArray::create): + (WebCore::WebGLByteArray::byteLength): + (WebCore::WebGLByteArray::slice): + (WebCore::WebGLByteArray::set): + * html/canvas/WebGLByteArray.h: + (WebCore::WebGLByteArray::isByteArray): + (WebCore::WebGLByteArray::data): + (WebCore::WebGLByteArray::set): + (WebCore::WebGLByteArray::get): + (WebCore::WebGLByteArray::item): + * html/canvas/WebGLByteArray.idl: + * html/canvas/WebGLFloatArray.cpp: + (WebCore::WebGLFloatArray::create): + (WebCore::WebGLFloatArray::WebGLFloatArray): + (WebCore::WebGLFloatArray::length): + (WebCore::WebGLFloatArray::byteLength): + (WebCore::WebGLFloatArray::slice): + (WebCore::WebGLFloatArray::set): + * html/canvas/WebGLFloatArray.h: + (WebCore::WebGLFloatArray::isFloatArray): + (WebCore::WebGLFloatArray::data): + (WebCore::WebGLFloatArray::set): + (WebCore::WebGLFloatArray::get): + (WebCore::WebGLFloatArray::item): + * html/canvas/WebGLFloatArray.idl: + * html/canvas/WebGLIntArray.cpp: + (WebCore::WebGLIntArray::create): + (WebCore::WebGLIntArray::WebGLIntArray): + (WebCore::WebGLIntArray::length): + (WebCore::WebGLIntArray::byteLength): + (WebCore::WebGLIntArray::slice): + (WebCore::WebGLIntArray::set): + * html/canvas/WebGLIntArray.h: + (WebCore::WebGLIntArray::isIntArray): + (WebCore::WebGLIntArray::data): + (WebCore::WebGLIntArray::set): + (WebCore::WebGLIntArray::get): + (WebCore::WebGLIntArray::item): + * html/canvas/WebGLIntArray.idl: + * html/canvas/WebGLShortArray.cpp: + (WebCore::WebGLShortArray::create): + (WebCore::WebGLShortArray::WebGLShortArray): + (WebCore::WebGLShortArray::length): + (WebCore::WebGLShortArray::byteLength): + (WebCore::WebGLShortArray::slice): + (WebCore::WebGLShortArray::set): + * html/canvas/WebGLShortArray.h: + (WebCore::WebGLShortArray::isShortArray): + (WebCore::WebGLShortArray::data): + (WebCore::WebGLShortArray::set): + (WebCore::WebGLShortArray::get): + (WebCore::WebGLShortArray::item): + * html/canvas/WebGLShortArray.idl: + * html/canvas/WebGLUnsignedByteArray.cpp: + (WebCore::WebGLUnsignedByteArray::create): + (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray): + (WebCore::WebGLUnsignedByteArray::length): + (WebCore::WebGLUnsignedByteArray::byteLength): + (WebCore::WebGLUnsignedByteArray::slice): + (WebCore::WebGLUnsignedByteArray::set): + * html/canvas/WebGLUnsignedByteArray.h: + (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray): + (WebCore::WebGLUnsignedByteArray::data): + (WebCore::WebGLUnsignedByteArray::set): + (WebCore::WebGLUnsignedByteArray::get): + (WebCore::WebGLUnsignedByteArray::item): + * html/canvas/WebGLUnsignedByteArray.idl: + * html/canvas/WebGLUnsignedIntArray.cpp: + (WebCore::WebGLUnsignedIntArray::create): + (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray): + (WebCore::WebGLUnsignedIntArray::length): + (WebCore::WebGLUnsignedIntArray::byteLength): + (WebCore::WebGLUnsignedIntArray::slice): + (WebCore::WebGLUnsignedIntArray::set): + * html/canvas/WebGLUnsignedIntArray.h: + (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray): + (WebCore::WebGLUnsignedIntArray::data): + (WebCore::WebGLUnsignedIntArray::set): + (WebCore::WebGLUnsignedIntArray::get): + (WebCore::WebGLUnsignedIntArray::item): + * html/canvas/WebGLUnsignedIntArray.idl: + * html/canvas/WebGLUnsignedShortArray.cpp: + (WebCore::WebGLUnsignedShortArray::create): + (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray): + (WebCore::WebGLUnsignedShortArray::length): + (WebCore::WebGLUnsignedShortArray::byteLength): + (WebCore::WebGLUnsignedShortArray::slice): + (WebCore::WebGLUnsignedShortArray::set): + * html/canvas/WebGLUnsignedShortArray.h: + (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray): + (WebCore::WebGLUnsignedShortArray::data): + (WebCore::WebGLUnsignedShortArray::set): + (WebCore::WebGLUnsignedShortArray::get): + (WebCore::WebGLUnsignedShortArray::item): + * html/canvas/WebGLUnsignedShortArray.idl: + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::bufferData): + (WebCore::GraphicsContext3D::bufferSubData): + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: Declare constants as extern "C". + +2009-11-15 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Oliver Hunt. + + Enable support for webkit-box-shadow in Cairo builds. + https://bugs.webkit.org/show_bug.cgi?id=26102. + + Covered by existing fast/box-shadow tests. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: Add + support for fillRect shadows. + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Windows build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: Don't try to include a file that's not + in WebKitSupportLibrary. + +2009-11-16 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31494 + Add unauthenticated proxy support to SocketStreamHandleCFNet + + Cannot be tested in DRT. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::chooseProxy): Fetch proxy information from OS. + (WebCore::SocketStreamHandle::createStreams): Apply it to the newly created streams. + +2009-11-14 Antonio Gomes <tonikitoo@webkit.org> + + Reviewed by Antti Koivisto. + + [Qt] Broken back/forward after using ErrorPageExtension to set error page + https://bugs.webkit.org/show_bug.cgi?id=30573 + + Make FrameLoader::checkLoadCompleteForThisFrame method + to check for any working DocumentLoader instance (through + activeDocumentLoader()) instead of only checking for + 'm_provisionalDocumentLoader' in order to decide to if + it is going to reset of not the back and forward history. + after an error page has been loaded. + + Test: LayoutTests/fast/history/back-forward-reset-after-error-handling.html + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::checkLoadCompleteForThisFrame): + +2009-11-14 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + Need to implement ARIA role="directory" + https://bugs.webkit.org/show_bug.cgi?id=31516 + + Test: platform/mac/accessibility/aria-directory.html + + * accessibility/AXObjectCache.cpp: + (WebCore::AXObjectCache::getOrCreate): + * accessibility/AccessibilityList.cpp: + (WebCore::AccessibilityList::isOrderedList): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::createARIARoleMap): + +2009-11-15 Dave Tapuska <dtapuska@rim.com> + + Reviewed by George Staikos. + + Compare UChars single unit at a time as opposed to the uint32_t + approach as casting to unaligned addresses may cause a bus failure + on ARMv5 and below. This change replicates the same defines that + exists in AtomicString.cpp + + https://bugs.webkit.org/show_bug.cgi?id=31475 + + * platform/text/StringHash.h: + (WebCore::StringHash::equal): + +2009-11-15 Evan Martin <evan@chromium.org> + + Reviewed by Adam Barth. + + Wrap some SVG code in V8DOMWrapper with an ENABLE(SVG) test. + + https://bugs.webkit.org/show_bug.cgi?id=31490 + + * bindings/v8/V8DOMWrapper.cpp: + +2009-11-15 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Adam Barth. + + [Haiku] Build fix. The FileChooser constructor doesn't need to be redefined. + + * platform/haiku/FileChooserHaiku.cpp: + +2009-11-15 Maxime Simon <simon.maxime@gmail.com> + + Reviewed by Adam Barth. + + [Haiku] Build fix. ColorSpace name had a wrong CamelCase. + + * platform/graphics/haiku/GraphicsContextHaiku.cpp: + (WebCore::GraphicsContext::setPlatformStrokeColor): + +2009-11-15 Daniel Bates <dbates@webkit.org> + + No review, rolling out r50999. + http://trac.webkit.org/changeset/50999 + + Need to fix some issues in the Windows build. Missed some places where + RenderTextControl::isEdited is called. + + * bindings/objc/DOMHTML.mm: + (-[DOMHTMLInputElement _isEdited]): + (-[DOMHTMLTextAreaElement _isEdited]): + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::defaultEventHandler): + * rendering/RenderTextControl.cpp: + (WebCore::RenderTextControl::RenderTextControl): + (WebCore::RenderTextControl::setInnerTextValue): + (WebCore::RenderTextControl::setUserEdited): + (WebCore::RenderTextControl::subtreeHasChanged): + * rendering/RenderTextControl.h: + (WebCore::RenderTextControl::isEdited): + (WebCore::RenderTextControl::setEdited): + (WebCore::RenderTextControl::isUserEdited): + * rendering/RenderTextControlSingleLine.cpp: + (WebCore::RenderTextControlSingleLine::subtreeHasChanged): + * wml/WMLInputElement.cpp: + (WebCore::WMLInputElement::defaultEventHandler): + +2009-11-15 Daniel Bates <dbates@webkit.org> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31186 + + Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to + m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively. + These are more descriptive names so as to clear an ambiguity surrounding + their usage. Also, renames associated setters and getters so that they + coincide with the renamed fields. + + No functionality was changed. So, no tests were included. + + * bindings/objc/DOMHTML.mm: + (-[DOMHTMLInputElement _isEdited]): + (-[DOMHTMLTextAreaElement _isEdited]): + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::defaultEventHandler): + * rendering/RenderTextControl.cpp: + (WebCore::RenderTextControl::RenderTextControl): + (WebCore::RenderTextControl::setInnerTextValue): + (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited. + (WebCore::RenderTextControl::subtreeHasChanged): + * rendering/RenderTextControl.h: + (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited. + (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited. + (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited. + * rendering/RenderTextControlSingleLine.cpp: + (WebCore::RenderTextControlSingleLine::subtreeHasChanged): + * wml/WMLInputElement.cpp: + (WebCore::WMLInputElement::defaultEventHandler): + +2009-11-14 Adele Peterson <adele@apple.com> + + Reviewed by Dan Bernstein. + + Fix for <rdar://problem/6946165> Would like to be able to specify the number of visible lines when using -webkit-line-clamp + + Test: fast/overflow/line-clamp.html + + * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to handle different types of values. + * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): ditto. + * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto. + + * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox): + Use the line count value if available. Otherwise, convert the percentage to the line count, as we did before. Also, + if there is anchor as the last child box, still allow adding the ellipsis. + + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::scrollByRecursively): Call isNone on the LineClampValue to see if the line-clamp property has been set. + (WebCore::RenderLayer::scrollRectToVisible): ditto. + + * WebCore.xcodeproj/project.pbxproj: Added LineClampValue.h + * rendering/style/LineClampValue.h: Added. + (WebCore::LineClampValue::LineClampValue): + (WebCore::LineClampValue::value): + (WebCore::LineClampValue::isPercentage): + (WebCore::LineClampValue::isNone): + (WebCore::LineClampValue::operator==): + (WebCore::LineClampValue::operator!=): + * rendering/style/RenderStyleConstants.h: (WebCore::): Define ELineClampType enum for percentage or line count. + + * rendering/style/RenderStyle.h: Use LineClampValue. + (WebCore::InheritedFlags::lineClamp): + (WebCore::InheritedFlags::setLineClamp): + (WebCore::InheritedFlags::initialLineClamp): + * rendering/style/StyleRareNonInheritedData.h: + +2009-11-14 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Oliver Hunt. + + <rdar://problem/7287487> + Do not use QuickTime version to detect media controller theme + + * WebCore.base.exp: Export wkMediaControllerThemeAvailable + * platform/mac/WebCoreSystemInterface.h: Ditto. + * platform/mac/WebCoreSystemInterface.mm: Ditto. + + * rendering/RenderThemeMac.mm: + (WebCore::mediaControllerTheme): Use wkMediaControllerThemeAvailable instead of the + QuickTime version to see if it is possible to use MediaControllerThemeQuickTime. + +2009-11-14 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + - Recognizes date/datetime/datetime-local/month/time/week types of INPUT element. + They have no dedicated UI and no type validation for now. + - Clean up setInputType() and formControlType() of HTMLInputElement. + https://bugs.webkit.org/show_bug.cgi?id=29004 + + Test: fast/forms/input-type-change3.html + + * html/HTMLInputElement.cpp: + (WebCore::HTMLInputElement::valueMissing): + (WebCore::HTMLInputElement::patternMismatch): + (WebCore::HTMLInputElement::tooLong): + (WebCore::createTypeMap): + (WebCore::HTMLInputElement::setInputType): + (WebCore::createFormControlTypes): + (WebCore::HTMLInputElement::formControlType): + (WebCore::HTMLInputElement::saveFormControlState): + (WebCore::HTMLInputElement::restoreFormControlState): + (WebCore::HTMLInputElement::accessKeyAction): + (WebCore::HTMLInputElement::rendererIsNeeded): + (WebCore::HTMLInputElement::createRenderer): + (WebCore::HTMLInputElement::appendFormData): + (WebCore::HTMLInputElement::isTextField): + (WebCore::HTMLInputElement::valueWithDefault): + (WebCore::HTMLInputElement::storesValueSeparateFromAttribute): + (WebCore::HTMLInputElement::defaultEventHandler): + (WebCore::HTMLInputElement::isRequiredFormControl): + (WebCore::HTMLInputElement::dataList): + * html/HTMLInputElement.h: + (WebCore::HTMLInputElement::): + +2009-11-13 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + WAI-ARIA: checkbox does not determine its label from text content + https://bugs.webkit.org/show_bug.cgi?id=31456 + + Test: accessibility/aria-checkbox-text.html + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::title): + +2009-11-13 Dimitri Glazkov <dglazkov@chromium.org> + + Unreviewed, build fix. + + [Chromium] Fix build to catch up with http://trac.webkit.org/changeset/50973. + This is just enough changes to unbreak the port. + + * bindings/v8/ScriptController.cpp: + (WebCore::mainThreadNormalWorld): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::initContextIfNeeded): + * loader/FrameLoaderClient.h: + +2009-11-13 Aaron Boodman <aa@chromium.org> + + Unreviewed fix for Chromium build. + + * loader/FrameLoaderClient.h: + (WebCore::FrameLoaderClient::dispatchDidClearWindowObjectInWorld): + Provide an empty implementation of this method because I don't know + what it is supposed to do on Chromium. + +2009-11-13 Aaron Boodman <aa@chromium.org> + + Unreviewed fix for Chromium build. + + * loader/FrameLoader.h: Make dispatchDidClearWindowObjectsInAllWorlds() + public, as Chromium's V8Proxy calls it. + +2009-11-13 Aaron Boodman <aa@chromium.org> + + Unreviewed fix to Chromium build. + + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::getAllWorlds): + +2009-11-13 Aaron Boodman <aa@chromium.org> + + Unreviewed fix for Chromium build. + + * platform/text/TextBoundaries.cpp: Use longer path to refer to Unicode.h. + +2009-11-13 Adam Barth <abarth@webkit.org> + + Unreviewed partial build fix for Chromium. Should fix failure #4. + + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::getAllWorlds): + * bindings/v8/ScriptController.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::initContextIfNeeded): + +2009-11-13 Adam Barth <abarth@webkit.org> + + Unreviewed partial build fix for Chromium. + + * bindings/v8/ScriptController.h: + (WebCore::ScriptController::getAllWorlds): + +2009-11-13 Eric Seidel <eric@webkit.org> + + No review, build fix only. + + Fix Windows and Chromium builds after http://trac.webkit.org/changeset/50977. + + Unify TextBoundaries implementations by only relying on WTF Unicode abstractions + https://bugs.webkit.org/show_bug.cgi?id=31468 + + * WebCore.gypi: Rename TextBoundariesICU -> TextBoundaries + * WebCore.vcproj/WebCore.vcproj: Rename TextBoundariesICU -> TextBoundaries + +2009-11-12 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Dmitry Titov. + + LocalStorage quota should include key sizes in its count + https://bugs.webkit.org/show_bug.cgi?id=31451 + + * storage/StorageMap.cpp: + (WebCore::StorageMap::setItem): + Count keys in the quota when adding a new item. + (WebCore::StorageMap::removeItem): + Remove the key's length from the quota if we're removing the item. + (WebCore::StorageMap::importItem): + Assume that we're adding things for the first time. + Count keys in the quota. + +2009-11-13 Dominik Röttsches <dominik.roettsches@access-company.com> + + Reviewed by Eric Seidel. + + Unify TextBoundaries implementations by only relying on WTF Unicode abstractions + https://bugs.webkit.org/show_bug.cgi?id=31468 + + Moving TextBoundariesICU.cpp to TextBoundaries.cpp + by removing the direct ICU dependency and replacing it + with WTF functions and WebCore's own TextBreakIterator + abstractions. + + * GNUmakefile.am: + * platform/graphics/gtk/SimpleFontDataGtk.cpp: + * platform/text/TextBoundaries.cpp: Added. + (WebCore::findNextWordFromIndex): + (WebCore::findWordBoundary): + * platform/text/TextBoundariesICU.cpp: Removed. + * platform/text/TextBreakIterator.h: + * platform/text/TextBreakIteratorICU.cpp: + (WebCore::textBreakLast): + (WebCore::textBreakPrevious): + +2009-11-13 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + WebCore::externalRepresentation should update layout before getting render object + https://bugs.webkit.org/show_bug.cgi?id=31459 + + * rendering/RenderTreeAsText.cpp: + (WebCore::externalRepresentation): + +2009-11-13 Adam Roben <aroben@apple.com> + + Tell FrameLoaderClient when window objects in isolated worlds are + cleared + + Fixes <http://webkit.org/b/31124> Tell the WebFrameLoadDelegate when + window objects in isolated worlds are cleared + + Test: http/tests/security/isolatedWorld/didClearWindowObject.html + + Reviewed by Dave Hyatt. + + * bindings/js/JSDOMBinding.h: + (WebCore::WebCoreJSClientData::getAllWorlds): Added. Copies all the + worlds in m_worldSet to the passed-in Vector. + + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::getAllWorlds): Added. Calls through to + WebCoreJSClientData. + (WebCore::ScriptController::initScript): Changed to call + FrameLoader::dispatchDidClearWindowObjectInWorld. + + * bindings/js/ScriptController.h: Added getAllWorlds. + + * loader/EmptyClients.h: + (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld): + Updated for FrameLoaderClient change. + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::receivedFirstData): + (WebCore::FrameLoader::begin): + Changed to call dispatchDidClearWindowObjectsInAllWorlds. + + (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds): + Added. Retrieves all the worlds, then calls through to + dispatchDidClearWindowObjectInWorld for each one. + (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld): Replaces + dispatchWindowObjectAvailable. Calls up to the client, then, if the + world is the mainThreadNormalWorld(), tells the Inspector about it, + too. + + * loader/FrameLoader.h: Replaced dispatchWindowObjectAvailable with + dispatchDidClearWindowObjectInWorld. Added + dispatchDidClearWindowObjectsInAllWorlds. + + * loader/FrameLoaderClient.h: Replaced windowObjectCleared with + dispatchDidClearWindowObjectForWorld. + +2009-11-13 Vitaly Repeshko <vitalyr@chromium.org> + + Reviewed by Dimitri Glazkov. + + [V8] Fix SVG context assignment for pod types. + https://bugs.webkit.org/show_bug.cgi?id=31497 + + I broke this in r50958. + + Tested by svg/custom/viewport-update2.svg. + + * bindings/scripts/CodeGeneratorV8.pm: + +2009-11-13 Andrei Popescu <andreip@google.com> + + Reviewed by Dmitry Titov. + + Bring the platform/android files inline with Android 2.0 + https://bugs.webkit.org/show_bug.cgi?id=31423 + + No new tests required: these are all Android-specific files. + + * platform/android/ClipboardAndroid.cpp: + (WebCore::ClipboardAndroid::files): + * platform/android/ClipboardAndroid.h: + * platform/android/FileChooserAndroid.cpp: + (WebCore::FileChooser::basenameForWidth): + (WebCore::fileButtonChooseFileLabel): + * platform/android/KeyEventAndroid.cpp: + (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent): + * platform/android/LocalizedStringsAndroid.cpp: + (WebCore::contextMenuItemTagOpenLinkInNewWindow): + (WebCore::contextMenuItemTagDownloadLinkToDisk): + (WebCore::contextMenuItemTagCopyLinkToClipboard): + (WebCore::contextMenuItemTagOpenImageInNewWindow): + (WebCore::contextMenuItemTagDownloadImageToDisk): + (WebCore::contextMenuItemTagCopyImageToClipboard): + (WebCore::contextMenuItemTagOpenFrameInNewWindow): + (WebCore::contextMenuItemTagCopy): + (WebCore::contextMenuItemTagGoBack): + (WebCore::contextMenuItemTagGoForward): + (WebCore::contextMenuItemTagStop): + (WebCore::contextMenuItemTagReload): + (WebCore::contextMenuItemTagCut): + (WebCore::contextMenuItemTagPaste): + (WebCore::contextMenuItemTagNoGuessesFound): + (WebCore::contextMenuItemTagIgnoreSpelling): + (WebCore::contextMenuItemTagLearnSpelling): + (WebCore::contextMenuItemTagSearchWeb): + (WebCore::contextMenuItemTagLookUpInDictionary): + (WebCore::contextMenuItemTagOpenLink): + (WebCore::contextMenuItemTagIgnoreGrammar): + (WebCore::contextMenuItemTagSpellingMenu): + (WebCore::contextMenuItemTagShowSpellingPanel): + (WebCore::contextMenuItemTagCheckSpelling): + (WebCore::contextMenuItemTagCheckSpellingWhileTyping): + (WebCore::contextMenuItemTagCheckGrammarWithSpelling): + (WebCore::contextMenuItemTagFontMenu): + (WebCore::contextMenuItemTagBold): + (WebCore::contextMenuItemTagItalic): + (WebCore::contextMenuItemTagUnderline): + (WebCore::contextMenuItemTagOutline): + (WebCore::contextMenuItemTagWritingDirectionMenu): + (WebCore::contextMenuItemTagTextDirectionMenu): + (WebCore::contextMenuItemTagDefaultDirection): + (WebCore::contextMenuItemTagLeftToRight): + (WebCore::contextMenuItemTagRightToLeft): + (WebCore::mediaElementLoadingStateText): + (WebCore::mediaElementLiveBroadcastStateText): + (WebCore::searchableIndexIntroduction): + (WebCore::resetButtonDefaultLabel): + (WebCore::submitButtonDefaultLabel): + (WebCore::inputElementAltText): + * platform/android/RenderThemeAndroid.cpp: + (WebCore::RenderTheme::themeForPage): + (WebCore::RenderThemeAndroid::baselinePosition): + (WebCore::RenderThemeAndroid::paintButton): + (WebCore::adjustMenuListStyleCommon): + (WebCore::RenderThemeAndroid::paintCombo): + * platform/android/ScreenAndroid.cpp: + * platform/android/ScrollViewAndroid.cpp: + (WebCore::ScrollView::platformOffscreenContentRectangle): + * platform/android/TemporaryLinkStubs.cpp: + (JSC::Bindings::dispatchJNICall): + * platform/android/WidgetAndroid.cpp: + (WebCore::Widget::setFrameRect): + +2009-11-13 Norbert Leser <norbert.leser&nokia.com> + + Reviewed by Eric Seidel. + + Added macros for USERINCLUDE paths within symbian blocks + to guarantee inclusion of respective header files from local path + first (to avoid clashes with same names of header files in system include path). + + * WebCore.pro: + +2009-11-13 Hironori Bono <hbono@chromium.org> + + Reviewed by Oliver Hunt. + + Implement composition events introduced in DOM Level 3. + This change adds a new IDL which defines the composition events, adds a class which + implements the composition events, and sends the composition events according to + the specification. + https://bugs.webkit.org/show_bug.cgi?id=26310 + + Test: fast/events/ime-composition-events-001.html + + * DerivedSources.make: Added CompositionEvent so we can compile "CompositionEvent.idl". + * GNUmakefile.am: Added "CompositionEvent.{cpp,h,idl}". + * WebCore.gypi: ditto. + * WebCore.pro: ditto + * WebCore.vcproj/WebCore.vcproj: ditto. + * WebCore.xcodeproj/project.pbxproj: Added "CompositionEvent.{cpp,h,idl}" and "JSCompositionEvent.{cpp,h}". + * WebCoreSources.bkl: Added "JSCompositionEvent.{cpp,h}". + * bindings/js/JSEventCustom.cpp: + (WebCore::toJS): Call isCompositionEvent() to create the CompositionEvent wrapper. + * bindings/v8/DOMObjectsInclude.h: Added "JSCompositionEvent.h". + * bindings/v8/DerivedSourcesAllInOne.cpp: Added "JSCompositionEvent.cpp". + * bindings/v8/V8DOMWrapper.cpp: Call isCompositionEvent() to identify an event as a CompositionEvent. + (WebCore::V8DOMWrapper::convertEventToV8Object): + * bindings/v8/V8Index.cpp: Added "V8CompositionEvent.h". + * bindings/v8/V8Index.h: Added V8Index::COMPOSITIONEVENT. + * dom/CompositionEvent.cpp: Implements the CompositionEvent class. + (WebCore::CompositionEvent::CompositionEvent): + (WebCore::CompositionEvent::~CompositionEvent): + (WebCore::CompositionEvent::initCompositionEvent): + (WebCore::CompositionEvent::isCompositionEvent): + * dom/CompositionEvent.h: Declares the CompositionEvent class. + (WebCore::CompositionEvent::create): + (WebCore::CompositionEvent::data): + * dom/CompositionEvent.idl: Added the IDL of DOM CompositionEvent. + * dom/Event.cpp: + (WebCore::Event::isCompositionEvent): Added a method to identify an event is a CompositionEvent. + * dom/Event.h: + * dom/EventNames.h: Added composition{start,update,end} to eventNames. + * editing/Editor.cpp: + (WebCore::Editor::confirmComposition): Sent a CompositionEnd event. + (WebCore::Editor::setComposition): Sent a Composition{Start,Update,End} event. + +2009-11-13 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + Fix a link error in unofficial GCC 4.4 builds on Linux. + https://bugs.webkit.org/show_bug.cgi?id=31477 + + * bindings/v8/V8Binding.cpp: Add explicit instantiations of v8StringToWebCoreString template. + +2009-11-13 Eric Seidel <eric@webkit.org> + + No review, build fix only. + + Fix Debug build after http://trac.webkit.org/changeset/50960. + + The CounterNode class does not support all methods necessary to efficiently update the counter tree as needed per CSS2.1 + https://bugs.webkit.org/show_bug.cgi?id=31213 + + * rendering/CounterNode.cpp: + (WebCore::showTreeAndMark): + * rendering/RenderCounter.cpp: + (WebCore::destroyCounterNodeChildren): + +2009-11-13 Dirk Schulze <krit@webkit.org> + + Reviewed by Gustavo Noronha. + + [CAIRO] shadow support for Canvas and SVG + [https://bugs.webkit.org/show_bug.cgi?id=30960] + + We currently fill a path with solid color instead of filling + a clipping path. This causes problems on some composite operators, + since Cairo modifies the area outside the path. + This fixes the behavior of WebKitGtk on fast/canvas/canvas-composite-alpha.html + + Thanks to Benjamin Otte for tracking the bug down. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::setPlatformFill): + +2009-11-12 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Adding Chromium's DatabaseTracker implementation. + + https://bugs.webkit.org/show_bug.cgi?id=31440 + + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * storage/DatabaseTracker.h: + * storage/chromium/DatabaseTrackerChromium.cpp: + (WebCore::DatabaseTracker::fullPathForDatabase): + (WebCore::DatabaseTracker::getMaxSizeForDatabase): + * storage/chromium/QuotaTracker.cpp: + (WebCore::QuotaTracker::updateDatabaseSize): + * storage/chromium/QuotaTracker.h: + +2009-11-13 Carol Szabo <carol.szabo@nokia.com> + + Reviewed by Darin Adler. + + The CounterNode class is missing some basic tree navigation methods common in other WebKit trees such as the rendering tree + https://bugs.webkit.org/show_bug.cgi?id=31213 + Added tree navigation methods that permit full implementation of CSS2.1 + counter feature without using recursion proportional to the counter + tree depth. + No new tests because I did not find any bug that is fixed by this + commit yet, this just reduces the size of the patch for 11031 and + helps respond to some concerns regarding that patch. + + * rendering/CounterNode.cpp: + (WebCore::CounterNode::CounterNode): + + (WebCore::CounterNode::nextInPreOrderAfterChildren): + (WebCore::CounterNode::nextInPreOrder): + Added to support non-recursive tree traversal necessary for + efficient full implementation of CSS2.1 counters. + + (WebCore::CounterNode::lastDescendant): + (WebCore::CounterNode::previousInPreOrder): + Moved this methods such that they occupy a place similar to that of + identically named methods on the render tree. This allows for their + broader use needed in full implementation of CSS2.1 counters. + + (WebCore::CounterNode::resetRenderer): + (WebCore::CounterNode::resetRenderers): + (WebCore::CounterNode::recount): + (WebCore::CounterNode::insertAfter): + (WebCore::CounterNode::removeChild): + Changed such that insertion/removal of a counter, triggers not only + recalculation of PrefixWidths, but also reassesment of values in + counter nodes. This is the basis full implementation of CSS2.1 + counters. It does not change current behavior by much because of + changes needed to the recalculation algorithm, but those are comming + in the patch for 11031. + (WebCore::showTreeAndMark): + * rendering/CounterNode.h: + * rendering/RenderCounter.cpp: + (WebCore::counter): + Only changed argument type to prepare for implementation of Darin + Adler's recommendation for the patch to 11031. + + (WebCore::RenderCounter::invalidate): + (WebCore::destroyCounterNodeChildren): + (WebCore::RenderCounter::destroyCounterNodes): + * rendering/RenderCounter.h: + * rendering/RenderObjectChildList.cpp: + (WebCore::invalidateCountersInContainer): + (WebCore::RenderObjectChildList::invalidateCounters): + * rendering/RenderObjectChildList.h: + Added the ability to restrict invalidation to counters with a given + identifier. + Also invalidated counters that are on the child container itself + which were missed by the previous algorithm, but were a valid case. + +2009-11-13 Vitaly Repeshko <vitalyr@chromium.org> + + Reviewed by Dimitri Glazkov. + + [V8] Protect SVG animated properties from destruction in bindings. + https://bugs.webkit.org/show_bug.cgi?id=31474 + + See http://crbug.com/26719. + + Tested by LayoutTests/svg/custom/js-update-transform-addition.svg + under Valgrind. + + Made sure we keep a reference to SVG properties while setting a + context: + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/V8Proxy.h: + (WebCore::V8Proxy::withSVGContext): + +2009-11-13 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Alexey Proskuryakov. + + [CAIRO] shadow support for Canvas and SVG. + [https://bugs.webkit.org/show_bug.cgi?id=30960] + + Incorporate Benjamin Otte's recommendations to avoid + a buffer overrun, and small performance improvement. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::copyContextProperties): Correctly size output + storage for cairo_get_dash to avoid buffer overrun. + (WebCore::drawPathShadow): Prefer cairo_fill_extents + to slower cairo_stroke_extents when not drawing shadows. + +2009-11-13 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Do not register Chromium's HTML5 DB VFS as the default + VFS. Otherwise, other sqlite DB users in the same process will + stop working. + + https://bugs.webkit.org/show_bug.cgi?id=31462 + + * platform/sql/chromium/SQLiteFileSystemChromium.cpp: + (WebCore::SQLiteFileSystem::openDatabase): + * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: + (WebCore::SQLiteFileSystem::registerSQLiteVFS): + * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp: + (WebCore::SQLiteFileSystem::registerSQLiteVFS): + +2009-11-13 Alexey Proskuryakov <ap@apple.com> + + Windows build fix + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::SocketStreamHandle): Explicitly cast "-1" to CFOptionFlags, + avoiding a sign mismatch warning. + +2009-11-13 Alexey Proskuryakov <ap@apple.com> + + Release build fix. + + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::readStreamCallback): + (WebCore::SocketStreamHandle::writeStreamCallback): + Use ASSERT_UNUSED for unused stream parameter. + +2009-11-12 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31441 + Implement SocketStreamHandleCFNet + + Existing WebSocket tests now pass on Mac. No proxy support yet. + + * platform/network/SocketStreamHandleClient.h: + * platform/network/cf/SocketStreamHandle.h: + (WebCore::SocketStreamHandle::shouldUseSSL): + (WebCore::SocketStreamHandle::refAuthenticationClient): + (WebCore::SocketStreamHandle::derefAuthenticationClient): + (WebCore::SocketStreamHandle::): + * platform/network/cf/SocketStreamHandleCFNet.cpp: + (WebCore::SocketStreamHandle::SocketStreamHandle): + (WebCore::SocketStreamHandle::chooseProxy): + (WebCore::SocketStreamHandle::createStreams): + (WebCore::SocketStreamHandle::copyCFStreamDescription): + (WebCore::SocketStreamHandle::readStreamCallback): + (WebCore::SocketStreamHandle::writeStreamCallback): + (WebCore::SocketStreamHandle::~SocketStreamHandle): + (WebCore::SocketStreamHandle::platformSend): + (WebCore::SocketStreamHandle::platformClose): + (WebCore::SocketStreamHandle::receivedCredential): + (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential): + (WebCore::SocketStreamHandle::receivedCancellation): + +2009-11-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: preload status bar button glyphs + in order to prevent them from flickering (take 2). + + https://bugs.webkit.org/show_bug.cgi?id=31439 + + * inspector/front-end/inspector.js: + (preloadImages): + +2009-11-13 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Adam Barth. + + Chromium: [REGRESSION] Crash while stopping on a breakpoint. + Rolling back r50890. + + https://bugs.webkit.org/show_bug.cgi?id=31467 + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::canAccessPrivate): + +2009-11-13 Dirk Schulze <krit@webkit.org> + + Reviewed by Gustavo Noronha. + + [CAIRO] shadow support for Canvas and SVG + [https://bugs.webkit.org/show_bug.cgi?id=30960] + + This is the fix of a regression, caused by the shadow patch + from the bug above. Reinserted the save and restore calls + that were accidently removed by the previous patch. + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::setPlatformFill): + (WebCore::setPlatformStroke): + +2009-11-13 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed. Reverting r50908 since it makes inspector tests + time out. + + https://bugs.webkit.org/show_bug.cgi?id=31439 + + * inspector/front-end/inspector.js: + +2009-11-13 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Timothy Hatcher. + + Enable 'console.profile()' and 'console.profileEnd()' + regardless of JAVASCRIPT_DEBUGGER. + + https://bugs.webkit.org/show_bug.cgi?id=31293 + + * WebCore.gypi: + * bindings/js/JSConsoleCustom.cpp: + (WebCore::JSConsole::profile): + (WebCore::JSConsole::profileEnd): + * bindings/v8/custom/V8ConsoleCustom.cpp: Added. + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8CustomBinding.h: + * page/Console.idl: + +2009-11-12 David Levin <levin@chromium.org> + + Reviewed by NOBODY. + + Chromium build fix. + + * bindings/v8/ScriptController.h: + (WebCore::ScriptController::evaluateInWorld): Add a dummy + method which isn't called in chromium to make things compile. + +2009-11-12 Anantanarayanan G Iyengar <ananta@chromium.org> + + Reviewed by Adam Barth. + + The document-open.html test was flaky at times. The test invokes the layout test plugin + which in its destroy stream handler opens a new document. This basically tears down the + stream and the associated plugin instance, which causes a crash when the plugin stream + dereferences an invalid m_client pointer which points to the PluginView instance which + is invalid at this time. Fix is to set the m_client pointer to NULL in the stop function + and check for the same. + + https://bugs.webkit.org/show_bug.cgi?id=31067 + + * plugins/PluginStream.cpp: + (WebCore::PluginStream::stop): + (WebCore::PluginStream::destroyStream): + +2009-11-12 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Renaming some parameters passed to DB-related methods to better + indicate their purpose. + + https://bugs.webkit.org/show_bug.cgi?id=31449 + + * platform/chromium/ChromiumBridge.h: + +2009-11-12 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Dan Bernstein. + + Transformed reflected elements are clipped inside element with opacity + https://bugs.webkit.org/show_bug.cgi?id=30957 + + transparencyClipBox() attemped to minimize the size of the transparency layer by mapping + each clip rect into painting space before taking the unions. This, however, did not work + correctly with combinations of reflections and transforms. Fixed by unioning the + clipRect and mapping through transforms along the way. + + Also leave some #ifdeffed code in beginTransparencyLayers() that makes it easy to see + where the transparency layers are. + + Test: fast/reflections/opacity-reflection-transform.html + + * rendering/RenderLayer.cpp: + (WebCore::expandClipRectForDescendantsAndReflection): + (WebCore::transparencyClipBox): + (WebCore::RenderLayer::beginTransparencyLayers): + +2009-11-12 Adam Barth <abarth@webkit.org> + + Reviewed by Darin Fisher. + + Improve SecurityOrigin::toString comment + https://bugs.webkit.org/show_bug.cgi?id=31041 + + * page/SecurityOrigin.h: + +2009-11-12 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + externalRepresentation should take Frame as the argument + https://bugs.webkit.org/show_bug.cgi?id=31393 + + No new tests as this is just a refactoring. + + * WebCore.base.exp: + * rendering/RenderTreeAsText.cpp: + (WebCore::externalRepresentation): + * rendering/RenderTreeAsText.h: + +2009-11-12 Ben Murdoch <benm@google.com> + + Reviewed by Dimitri Glazkov. + + [Android] The Android specific files in page/Android are out of date. + https://bugs.webkit.org/show_bug.cgi?id=31437 + + No tests required. + + * page/android/DragControllerAndroid.cpp: + (WebCore::DragController::dragOperation): Added. + (WebCore::DragController::cleanupAfterSystemDrag): + * page/android/EventHandlerAndroid.cpp: + (WebCore::EventHandler::accessKeyModifiers): Added. + * page/android/InspectorControllerAndroid.cpp: Removed. + +2009-11-12 Brent Fulgham <bfulgham@webkit.org> + + Reviewed by Simon Fraser. + + [CAIRO] shadow support for Canvas and SVG. + [https://bugs.webkit.org/show_bug.cgi?id=30960] + + Implement Canvas/SVG shadow support for Cairo. This patch + uses the filter code from SVG Filters. That means that it is + necessary to activate filters to see the shadows. + + Test: fast/canvas/canvas-shadow.html + + * GNUmakefile.am: + * WebCore.vcproj/WebCore.vcproj: Add new ImageBufferFilter files. + * platform/graphics/GraphicsContext.h: + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (GraphicsContext::calculateShadowBufferDimensions): New helper routine. + (WebCore::setPlatformFill): + (WebCore::setPlatformStroke): + (WebCore::copyContextProperties): + (WebCore::drawPathShadow): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::drawPath): + (WebCore::GraphicsContext::setPlatformShadow): + (WebCore::GraphicsContext::createPlatformShadow): + * platform/graphics/cairo/ImageCairo.cpp: + (WebCore::BitmapImage::draw): Add filter effect. + * platform/graphics/filters/Filter.h: Correct 'const' signatures. + * platform/graphics/filters/ImageBufferFilter.cpp: Added. + * platform/graphics/filters/ImageBufferFilter.h: Added. + * svg/graphics/filters/SVGFilter.cpp: Correct 'const' signatures. + * svg/graphics/filters/SVGFilter.h: Correct 'const' signatures. + +2009-11-12 Dmitry Titov <dimich@chromium.org> + + Reviewed by Alexey Proskuryakov. + + Add postTaskToMainThread to ScriptExecutionContext. + Move the code to post task to the main thread into a new method on ScriptExecutionContext, + to use as a helper implementation of the virtual ScriptExecutionContext::postTask(Task) in + contexts that live on the main thread. + https://bugs.webkit.org/show_bug.cgi?id=31427 + + No new tests - simply moving the code. + + * dom/Document.cpp: + (WebCore::Document::postTask): + * dom/ScriptExecutionContext.cpp: + (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer): + (WebCore::ScriptExecutionContextTaskTimer::fired): + (WebCore::PerformTaskData::PerformTaskData): + (WebCore::PerformTaskData::performTask): + (WebCore::ScriptExecutionContext::postTaskToMainThread): + * dom/ScriptExecutionContext.h: + +2009-11-12 Simon Fraser <simon.fraser@apple.com> + + Reviewed by Darin Adler. + + Fix crash when removing compositing layers when GC is enabled + https://bugs.webkit.org/show_bug.cgi?id=31429 + + Workaround <rdar://problem/7390716> by special-casing the removal + of all sublayers when GC is enabled. + + * platform/graphics/mac/GraphicsLayerCA.mm: + (WebCore::safeSetSublayers): + (WebCore::GraphicsLayerCA::updateSublayerList): + (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer): + +2009-11-12 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + The last of the V8 binding optimizations. + - Replace string-valued element accessors with a shared getter/setter function. + - Change error handling flow of control to avoid extra branches and function calls. + https://bugs.webkit.org/show_bug.cgi?id=31443 + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/V8Binding.cpp: + (WebCore::getElementStringAttr): Body of string-valued Element getter function. + (WebCore::setElementStringAttr): Body of string-valued Element setter function. + * bindings/v8/V8Binding.h: + +2009-11-12 Sam Weinig <sam@webkit.org> + + Reviewed by Oliver Hunt. + + Fix for <rdar://problem/7267951> + Canvas methods should reject uses of NaN and Infinity. + + Test: fast/canvas/canvas-with-illegal-args.html + + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::scale): + (WebCore::CanvasRenderingContext2D::rotate): + (WebCore::CanvasRenderingContext2D::translate): + (WebCore::CanvasRenderingContext2D::transform): + (WebCore::CanvasRenderingContext2D::setTransform): + +2009-11-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: profile timeline panel, fix obvious problems. + + https://bugs.webkit.org/show_bug.cgi?id=31432 + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._setWindowPosition): + (WebInspector.TimelineCalculator): + (WebInspector.TimelineCalculator.prototype.get minimumBoundary): + (WebInspector.TimelineCalculator.prototype.get maximumBoundary): + (WebInspector.TimelineCalculator.prototype.reset): + (WebInspector.TimelineCalculator.prototype.updateBoundaries): + (WebInspector.TimelineCalculator.prototype.formatValue): + (WebInspector.TimelineGraph): + (WebInspector.TimelineGraph.prototype.refresh): + * inspector/front-end/utilities.js: + (Element.prototype.hasStyleClass): + +2009-11-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: preload status bar button glyphs + in order to prevent them from flickering. + + https://bugs.webkit.org/show_bug.cgi?id=31439 + + * inspector/front-end/inspector.js: + (preloadImages): + +2009-11-12 Adam Roben <aroben@apple.com> + + Replace worldIDs with world objects + + Part of <http://webkit.org/b/31414> Implement new SPI for dealing with + user scripts/stylesheets and isolated worlds + + Reviewed by Sam Weinig. + + Covered by existing tests. + + * WebCore.base.exp: Update exported symbols to match what now exists + and is needed by WebKit. + + * bindings/js/ScheduledAction.cpp: + (WebCore::ScheduledAction::execute): Updated for function rename. + + * bindings/js/ScriptController.cpp: Removed code that dealt with + worldIDs. + (WebCore::ScriptController::createWorld): Added. Returns a new world + suitable for use on the main thread. + (WebCore::ScriptController::executeScriptInWorld): Renamed from + executeScriptInIsolatedWorld, since this works just fine with a + "normal" world. + + * bindings/js/ScriptController.h: Added createWorld, removed functions + that took worldIDs, renamed executeScriptInIsolatedWorld to + executeScriptInWorld. + + * page/Frame.cpp: + (WebCore::Frame::injectUserScripts): + (WebCore::Frame::injectUserScriptsForWorld): + Updated for changes to UserScriptMap and ScriptController. + + * page/Frame.h: Changed injectUserScriptsForWorld to take a + DOMWrapperWorld* instead of a worldID. + + * page/PageGroup.cpp: + (WebCore::PageGroup::addUserScriptToWorld): + (WebCore::PageGroup::addUserStyleSheetToWorld): + (WebCore::PageGroup::removeUserScriptFromWorld): + (WebCore::PageGroup::removeUserStyleSheetFromWorld): + (WebCore::PageGroup::removeUserScriptsFromWorld): + (WebCore::PageGroup::removeUserStyleSheetsFromWorld): + * page/PageGroup.h: + Changed these functions to take a DOMWrapperWorld* instead of a + worldID. Also updated for changes to UserScript and UserStyleSheet. + + * page/UserScript.h: + * page/UserStyleSheet.h: Changed not to hold a worldID, since it was + never used. + + * page/UserScriptTypes.h: + * page/UserStyleSheetTypes.h: Changed UserScriptMap and + UserStyleSheetMap to use a RefPtr<DOMWrapperWorld> instead of a + worldID as their key type. + + +2009-11-12 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + Fixes <http://webkit.org/b/31260>. + Web Inspector: Main Resources Other than HTML are mis-detected. + + Even if the resource is a main resource, look at its CachedResource type, + because it might be an image, stylesheet, or JavaScript file, and we + want to show them all correctly. + + * inspector/InspectorResource.cpp: + (WebCore::InspectorResource::cachedResourceType): Move this method out so it can be called in multiple places. + (WebCore::InspectorResource::type): + * inspector/InspectorResource.h: + +2009-11-12 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + Table-driven setup for V8 binding template callback functions. 100k in code savings. + https://bugs.webkit.org/show_bug.cgi?id=31420 + + * bindings/scripts/CodeGeneratorV8.pm: Change generated ConfigureXXXTemplate fn + to call configureTemplate(). + * bindings/v8/V8Binding.cpp: + (WebCore::configureTemplate): New function; does all the standard configuration work. + (WebCore::createCallback): De-inlined wrapper for FunctionTemplate creation. + * bindings/v8/V8Binding.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::batchConfigureAttributes): Just wrapped the very long fn parameter list. + (WebCore::batchConfigureCallbacks): New function, used by configureTemplate. + (WebCore::batchConfigureConstants): Just wrapped the very long fn parameter list. + * bindings/v8/V8Proxy.h: + +2009-11-12 Dumitru Daniliuc <dumi@chromium.org> + + Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50876. + + * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: + +2009-11-12 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Dan Bernstein. + + <rdar://problem/7388969> Add DOM API for fullscreen video + + DOM API for fullscreen <video>. + + Tests: media/media-fullscreen-inline.html + media/media-fullscreen-not-in-document.html + + * dom/EventNames.h: + Add webkitbeginfullscreen and webkitendfullscreen. + + * html/HTMLAttributeNames.in: + Add onwebkitbeginfullscreen and onwebkitendfullscreen. + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::parseMappedAttribute): + Deal with onwebkitbeginfullscreen and onwebkitendfullscreen. + (WebCore::HTMLMediaElement::enterFullscreen): + Schedule webkitbeginfullscreenEvent event, don't set m_isFullscreen unless we + actually do enter fullscreen. + (WebCore::HTMLMediaElement::exitFullscreen): + Schedule webkitendfullscreenEvent event. + (WebCore::HTMLMediaElement::webkitEnterFullScreen): + (WebCore::HTMLMediaElement::webkitExitFullScreen): + (WebCore::HTMLMediaElement::webkitSupportsFullscreen): + (WebCore::HTMLMediaElement::webkitDisplayingFullscreen): + New, access to fullscreen properties and methods. + + * html/HTMLMediaElement.h: + * html/HTMLMediaElement.idl: + Declare methods needed for fullscreen API. + + * html/HTMLVideoElement.cpp: + (WebCore::HTMLVideoElement::supportsFullscreen): + Return false if a movie does not have video. + + * page/DOMWindow.h: + Add webkitbeginfullscreen and webkitendfullscreen. + +2009-11-12 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + [Chromium] Sify compose button alerts error + https://bugs.webkit.org/show_bug.cgi?id=31394 + + Test: http/tests/security/calling-versus-current.html + + We're supposed to use the calling context for security checks. In JSC + land, this is the lexicalGlobalObject. + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::canAccessPrivate): + +2009-11-12 Daniel Bates <dbates@webkit.org> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=30291 + + Fixes an issue where the returned drop effect is incorrect when + effectAllowed == "uninitialized". + + According to section 7.9.2 of the HTML 5 spec. + <http://dev.w3.org/html5/spec/Overview.html#the-dragevent-and-datatransfer-interfaces> + when effectAllowed = "uninitialized" the resulting dropEffect should be the + user-specified dropEffect (i.e. "copy", "move", "link") and "none" for any + other case. + + No test cases are included because we have an existing test case from + bug #24731. + + * dom/Clipboard.cpp: + (WebCore::dragOpFromIEOp): Added case for op == "uninitialized". + +2009-11-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Do not highlight node on refresh. + + https://bugs.webkit.org/show_bug.cgi?id=31419 + + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype.reset): + +2009-11-12 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Minor timeline fixes. + + https://bugs.webkit.org/show_bug.cgi?id=31417 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._getRecordDetails): + (WebInspector.TimelineRecordTreeElement.prototype.onattach): + (WebInspector.TimelineRecordTreeElement.prototype._updateDetails): + (WebInspector.TimelineRecordTreeElement.prototype.refresh): + +2009-11-12 Alexey Proskuryakov <ap@apple.com> + + SnowLeopard build fix. + + Renamed initWithClient to initWithAuthenticationClient. + + * platform/network/mac/AuthenticationMac.mm: + (-[WebCoreAuthenticationClientAsChallengeSender initWithAuthenticationClient:]): + (WebCore::AuthenticationChallenge::setAuthenticationClient): + +2009-11-12 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Darin Adler. + + ARIA: add alert type roles + https://bugs.webkit.org/show_bug.cgi?id=31392 + + Test: platform/mac/accessibility/aria-alerts.html + + * accessibility/AccessibilityObject.h: + * accessibility/AccessibilityRenderObject.cpp: + * accessibility/mac/AccessibilityObjectWrapper.mm: + +2009-11-11 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31386 + Make Mac AuthenticationChallenge usable from cross-platform code + + No change in behavior, so no tests. + + * platform/network/ResourceHandle.cpp: + (WebCore::ResourceHandle::clearAuthentication): + * platform/network/ResourceHandleInternal.h: + (WebCore::ResourceHandleInternal::ResourceHandleInternal): + Don't store m_currentCFChallenge, which was only used for a single assertion. Unlike the + NSURLConnection case, CF challenge doesn't carry a sender with it, so the copy in web challenge + is identical. + + * platform/network/cf/AuthenticationChallenge.h: + (WebCore::AuthenticationChallenge::setAuthenticationClient): Added a setter to match the new + Mac interface. Previously, one had to create a new AuthenticationChallenge to replace client. + + * platform/network/cf/ResourceHandleCFNet.cpp: + (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Fixed assertions after removal + of m_currentCFChallenge. Also, there is no need to set client now, as it's guaranteed to + be already set. + + * platform/network/mac/AuthenticationChallenge.h: + (WebCore::AuthenticationChallenge::m_sender): Explained the existence of this member to the + best of my understanding. + (WebCore::AuthenticationChallenge::m_nsChallenge): Renamed from m_macChallenge to prevent + confusion with "mac" and "web" challenges in ResourceHandleInternal. + + * platform/network/mac/AuthenticationMac.mm: + (WebCoreAuthenticationClientAsChallengeSender): Added a Obj-C wrapper for AuthenticationClient, + making it possible to use the latter with NSURLAuthenticationChallenge. + (WebCore::AuthenticationChallenge::AuthenticationChallenge): Updated for m_macChallenge -> + m_nsChallenge renaming. + (WebCore::AuthenticationChallenge::setAuthenticationClient): Wrap the client in Obj-C and + set it as sender (or unset, if client is null). + + * platform/network/mac/ResourceHandleMac.mm: + (WebCoreResourceHandleAsDelegate) WebCoreResourceHandleAsDelegate no longer doubles as + authentication challenge sender. + (WebCore::ResourceHandle::~ResourceHandle): A navigation can happen underneath an + authentication sheet. + (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Form m_currentWebChallenge + using the new setAuthenticationClient() method. + (WebCore::ResourceHandle::didCancelAuthenticationChallenge): Fixed an incorrect assertion. + Since didCancelAuthenticationChallenge is called by connection, the passed challenge is + the original Mac one, not the one we created for use with authentication sheet. I don't + know when a connection would cancel authentication in practice, so I haven't tested this. + +2009-11-12 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: breakpoint sidebar entries should allow click over entire list item + https://bugs.webkit.org/show_bug.cgi?id=31411 + + No new tests; no new functionality, small usability change. + + * inspector/front-end/BreakpointsSidebarPane.js: + (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement): + (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.breakpointClicked): + +2009-11-12 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: breakpoints in named evals are not restored after a reload + https://bugs.webkit.org/show_bug.cgi?id=31375 + + Manual test added + + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.addScript): + * manual-tests/inspector/bp-in-named-eval-after-reload.html: Added. + +2009-11-12 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Custom printing shrink factors + https://bugs.webkit.org/show_bug.cgi?id=29042 + + This reverts commit r49769. The public API for this needs to be reviewed + before its inclusion in Qt. + + * page/PrintContext.cpp: + (WebCore::PrintContext::begin): + * page/Settings.cpp: + (WebCore::Settings::Settings): + * page/Settings.h: + +2009-11-12 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Web Inspector: Resource errors/warnings not shown in the Resource tree. + + Error/Warning bubbles are not displayed next to the resource in the + Resources panel if those occur before the resource is attached to the tree. + https://bugs.webkit.org/show_bug.cgi?id=31404 + + Test: manual-tests/inspector/styled-error-bubbles-in-scripts.html + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.removeItem): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourceSidebarTreeElement.prototype.onattach): + +2009-11-12 Philippe Normand <pnormand@igalia.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=31047 + [GTK] Failing test media/video-played-ranges-1.html + + Follow-up of r50726, don't block the UI thread when calling + gst_element_get_state(). Also fixed a compilation warning and some + static casts. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::playbackPosition): + (WebCore::MediaPlayerPrivate::seek): + (WebCore::MediaPlayerPrivate::setRate): + +2009-11-12 Philippe Normand <pnormand@igalia.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=31047 + [GTK] Failing test media/video-played-ranges-1.html + + don't pause pipeline if already paused, same for play() + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::play): + (WebCore::MediaPlayerPrivate::pause): + +2009-11-12 Kinuko Yasuda <kinuko@google.com> + + Reviewed by David Levin. + + Support Gtk scrollwheel behavior for horizontal scrollbars on Linux + Chromium too. + https://bugs.webkit.org/show_bug.cgi?id=31292 + + No new tests. (Corresponding test for Gtk+ is + platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html) + + * page/EventHandler.cpp: + * page/chromium/EventHandlerChromium.cpp: + +2009-11-12 Yuta Kitamura <yutak@chromium.org> + + Reviewed by Eric Seidel. + + Prevent text inside a multi-column block from being split into columns. + + If the tentative height of a multi-column block was too small, we need to + expand the block height and try to layout again, in order to prevent text + from being split into different columns. + + CSS Multicolumn text is split awkwardly + https://bugs.webkit.org/show_bug.cgi?id=22249 + + Test: fast/multicol/single-line.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::layoutColumns): + * rendering/RenderBlock.h: + * rendering/RenderLineBoxList.cpp: + (WebCore::RenderLineBoxList::paint): + * rendering/RenderView.h: + (WebCore::RenderView::setTruncatedAt): + (WebCore::RenderView::setMinimumColumnHeight): + (WebCore::RenderView::minimumColumnHeight): + +2009-11-11 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Fix a bug that RenderFileUploadControl isn't initialized with multiple files. + https://bugs.webkit.org/show_bug.cgi?id=31195 + + Test: fast/forms/input-file-re-render.html + + * rendering/RenderFileUploadControl.cpp: + (WebCore::RenderFileUploadControl::RenderFileUploadControl): + +2009-11-09 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Fixing Chromium's POSIX VFS implementation, by adding the required + "used file descriptors" logic. + + https://bugs.webkit.org/show_bug.cgi?id=31275 + + * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp: + +2009-11-11 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Oliver Hunt. + + need to implement aria tree roles + https://bugs.webkit.org/show_bug.cgi?id=31284 + + Tests: platform/mac/accessibility/aria-multiselectable.html + platform/mac/accessibility/aria-tree.html + + * accessibility/AccessibilityList.cpp: + (WebCore::AccessibilityList::accessibilityIsIgnored): + * accessibility/AccessibilityObject.cpp: + (WebCore::AccessibilityObject::ariaTreeRows): + (WebCore::AccessibilityObject::ariaTreeItemContent): + (WebCore::AccessibilityObject::ariaTreeItemDisclosedRows): + * accessibility/AccessibilityObject.h: + (WebCore::): + (WebCore::AccessibilityObject::isTree): + (WebCore::AccessibilityObject::isTreeItem): + (WebCore::AccessibilityObject::setIsExpanded): + (WebCore::AccessibilityObject::canSetExpandedAttribute): + (WebCore::AccessibilityObject::hierarchicalLevel): + (WebCore::AccessibilityObject::setSelectedRows): + (WebCore::AccessibilityObject::performDefaultAction): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::hierarchicalLevel): + (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): + (WebCore::AccessibilityRenderObject::isExpanded): + (WebCore::AccessibilityRenderObject::setElementAttributeValue): + (WebCore::AccessibilityRenderObject::elementAttributeValue): + (WebCore::AccessibilityRenderObject::setIsExpanded): + (WebCore::AccessibilityRenderObject::isSelected): + (WebCore::AccessibilityRenderObject::setSelected): + (WebCore::AccessibilityRenderObject::setSelectedRows): + (WebCore::createARIARoleMap): + (WebCore::AccessibilityRenderObject::canSetExpandedAttribute): + (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows): + (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren): + (WebCore::AccessibilityRenderObject::selectedChildren): + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectMac.mm: + (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper accessibilityAttributeNames]): + (RoleEntry::): + (-[AccessibilityObjectWrapper subrole]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]): + (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]): + (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]): + (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]): + * html/HTMLAttributeNames.in: + +2009-11-11 Brent Fulgham <bfulgham@webkit.org> + + Build fix after @r50760 with ENABLE_FILTERS. + + * platform/graphics/filters/SourceAlpha.cpp: + (WebCore::SourceAlpha::apply): Supply ColorSpace to fillRect. + * svg/graphics/filters/SVGFEFlood.cpp: Supply ColorSpace argument + to fillRect. + +2009-11-11 Fumitoshi Ukai <ukai@chromium.org> + + Reviewed by Alexey Proskuryakov. + + Fix WebSocket frame parser of frame_type with high-order bit set. + https://bugs.webkit.org/show_bug.cgi?id=30668 + + If buffer is smaller than frame's length, it should break the loop + instead of reading next byte. + + Tests: websocket/tests/frame-length-longer-than-buffer.html + websocket/tests/frame-length-skip.html + + * websockets/WebSocketChannel.cpp: + (WebCore::WebSocketChannel::didReceiveData): + +2009-11-11 Yusuke Sato <yusukes@chromium.org> + + Reviewed by Adam Barth. + + [chromium] Remove t2embed.dll functions from FontCustomPlatformData.cpp for Chromium + https://bugs.webkit.org/show_bug.cgi?id=31345 + + Remove dependency on t2embed.dll so that Chromium for Windows can start even if t2embed.dll cannot be accessed. + + * platform/graphics/chromium/FontCustomPlatformData.cpp: + (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Remove TTDeleteEmbeddedFont() call. Always use RemoveFontMemResourceEx(). + (WebCore::FontCustomPlatformData::fontPlatformData): Remove TTGetNewFontName() call. + (WebCore::createFontCustomPlatformData): Remove TTLoadEmbeddedFont() call. Always use AddFontMemResourceEx() via renameAndActivateFont() in opentype/OpenTypeUtility.h. Remove EOTStream class as well. + +2009-11-11 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * platform/graphics/gtk/FontGtk.cpp: + (WebCore::Font::drawComplexText): + +2009-11-11 Beth Dakin <bdakin@apple.com> + + Build fix. No review needed. + + * platform/graphics/cairo/FontCairo.cpp: + (WebCore::Font::drawGlyphs): + +2009-11-11 Beth Dakin <bdakin@apple.com> + + Windows build fix. No review needed. + + * platform/graphics/win/FontCGWin.cpp: + (WebCore::Font::drawGlyphs): + +2009-11-11 Beth Dakin <bdakin@apple.com> + + Reviewed by Simon Fraser. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=31382 + Make -webkit-color-correction work with shadows + + From canvas, just send DeviceColorSpace to setShadow() for now. + Will fix soon when I address https://bugs.webkit.org/show_bug.cgi?id=31319 + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::setShadow): + (WebCore::CanvasRenderingContext2D::applyShadow): + + setShadow() and setPlatformShadow() now take a ColorSpace. + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::setShadow): + * platform/graphics/GraphicsContext.h: + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::createCGColorWithColorSpace): New helper to create a + color in a ColorSpace. + (WebCore::setCGFillColor): Call new helper. + (WebCore::setCGStrokeColor): Call new helper. + (WebCore::GraphicsContext::setPlatformShadow): Call new helper. + * platform/graphics/haiku/GraphicsContextHaiku.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + + Send appropriate ColorSpace to setShadow(). + * platform/graphics/mac/FontMac.mm: + (WebCore::Font::drawGlyphs): + * rendering/EllipsisBox.cpp: + (WebCore::EllipsisBox::paint): + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::paintTextDecorations): + * rendering/InlineTextBox.cpp: + (WebCore::paintTextWithShadows): + (WebCore::InlineTextBox::paintDecoration): + * rendering/RenderBoxModelObject.cpp: + (WebCore::RenderBoxModelObject::paintBoxShadow): + * rendering/SVGInlineTextBox.cpp: + (WebCore::SVGInlineTextBox::paintCharacters): + * rendering/SVGRenderSupport.cpp: + (WebCore::SVGRenderBase::prepareToRenderSVGContent): + + Attempt to keep ports building. + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + * platform/graphics/skia/GraphicsContextSkia.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + * platform/graphics/wince/GraphicsContextWince.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + * platform/graphics/wx/GraphicsContextWx.cpp: + (WebCore::GraphicsContext::setPlatformShadow): + +2009-11-11 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Print the file text of a file upload control in DumpRenderTree for ease of tests. + https://bugs.webkit.org/show_bug.cgi?id=31195 + + * rendering/RenderFileUploadControl.cpp: + (WebCore::RenderFileUploadControl::paintObject): + (WebCore::RenderFileUploadControl::fileTextValue): + * rendering/RenderFileUploadControl.h: + (WebCore::RenderFileUploadControl::isFileUploadControl): + (WebCore::toRenderFileUploadControl): + * rendering/RenderObject.h: + (WebCore::RenderObject::isFileUploadControl): + * rendering/RenderTreeAsText.cpp: + (WebCore::operator<<): + +2009-11-11 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Sam Weinig. + + DOM Wrappers for some nodes may not be marked. + https://bugs.webkit.org/show_bug.cgi?id=31380 + + Some markChildren methods are calling getCachedDOMNodeWrapper, which will find + the wrapper for the current world only. This means that wrappers may be GC'ed + prematurely, and properties lost. + + Move to a model more like markDOMObjectWrapper, mark wrappers for all worlds. + + * bindings/js/JSAttrCustom.cpp: + (WebCore::JSAttr::markChildren): + * bindings/js/JSDOMBinding.cpp: + (WebCore::markDOMNodeWrapper): + * bindings/js/JSDOMBinding.h: + * bindings/js/JSNamedNodeMapCustom.cpp: + (WebCore::JSNamedNodeMap::markChildren): + * bindings/js/JSNodeCustom.cpp: + (WebCore::JSNode::markChildren): + * bindings/js/JSSVGElementInstanceCustom.cpp: + (WebCore::JSSVGElementInstance::markChildren): + * bindings/js/JSStyleSheetCustom.cpp: + (WebCore::JSStyleSheet::markChildren): + +2009-11-11 Ben Murdoch <benm@google.com> + + Reviewed by Darin Adler. + + bindings/js/ScriptObject.cpp is missing and ENABLE(INSPECTOR) guard. + https://bugs.webkit.org/show_bug.cgi?id=31384 + + No functionality change so no tests required. + + * bindings/js/ScriptObject.cpp: Add ENABLE(INSPECTOR) guard around the JSInspectorBackend.h include. + +2009-11-11 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + The Big De-Inlining. 450k code size reduction (32-bit x86.) + - Various inline functions in V8Binding.h made non-inline. + - Some renaming for consistency. + - New function createRawTemplate(). + https://bugs.webkit.org/show_bug.cgi?id=31383 + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/V8Binding.cpp: + (WebCore::v8DOMWrapperToNative): + (WebCore::v8ValueToWebCoreString): + (WebCore::v8ValueToAtomicWebCoreString): + (WebCore::toInt32): + (WebCore::toWebCoreString): + (WebCore::toWebCoreStringWithNullCheck): + (WebCore::toAtomicWebCoreStringWithNullCheck): + (WebCore::toWebCoreStringWithNullOrUndefinedCheck): + (WebCore::isUndefinedOrNull): + (WebCore::v8Boolean): + (WebCore::v8UndetectableString): + (WebCore::v8StringOrNull): + (WebCore::v8StringOrUndefined): + (WebCore::v8StringOrFalse): + (WebCore::v8StringToWebCoreString): + (WebCore::v8ExternalString): + (WebCore::createRawTemplate): New function. + * bindings/v8/V8Binding.h: + (WebCore::v8DOMWrapperTo): + (WebCore::v8DOMWrapperToNode): + (WebCore::v8StringToWebCoreString): + (WebCore::v8StringToAtomicWebCoreString): + +2009-11-11 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + More V8 de-inlining (outlining?) Abstracted a chunk of boilerplate code from every + event-listener setter into a new subroutine transferHiddenDependency(). + https://bugs.webkit.org/show_bug.cgi?id=31377 + + * bindings/scripts/CodeGeneratorV8.pm: Replace boilerplate with call to transferHiddenDependency(). + * bindings/v8/V8Utilities.cpp: + (WebCore::transferHiddenDependency): New. + * bindings/v8/V8Utilities.h: Declaration of transferHiddenDependency. + +2009-11-11 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Beth Dakin. + + If we are on Windows, don't try and get the kCGColorSpaceSRGB ColorSpace, + because there is a CG bug preventing this from working. + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::sRGBColorSpaceRef): + +2009-11-11 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Check that if Storage panel exists before calling its methods + + https://bugs.webkit.org/show_bug.cgi?id=31343 + + * inspector/front-end/inspector.js: + (WebInspector.addDatabase): + (WebInspector.addCookieDomain): + (WebInspector.addDOMStorage): + (WebInspector.updateDOMStorage): + +2009-11-11 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + De-inline convertNodeToV8Object(), which expands to a lot of asm code and is inlined 136 + times in the generated V8 bindings. + https://bugs.webkit.org/show_bug.cgi?id=31368 + + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::convertNodeToV8Object): Moved body here from .h file + * bindings/v8/V8DOMWrapper.h: Removed inline method body. + +2009-11-11 Jessie Berlin <jberlin@webkit.org> + + Reviewed by Timothy Hatcher. + + Display the correct summary in the web inspector for the shorthands + border-color, border-width, border-style, margin, and padding. + https://bugs.webkit.org/show_bug.cgi?id=7987 + + Test: fast/css/shorthands-four-values.html + + * css/CSSMutableStyleDeclaration.cpp: + (WebCore::CSSMutableStyleDeclaration::get4Values): + Display the summary information in the same way the shorthand would be + specified in a css rule. + +2009-11-11 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + Make V8 bindings return NULL handles instead of calling v8::Undefined(). This has equivalent + meaning to the caller, saves code, and appears to save a few cycles at runtime too. + https://bugs.webkit.org/show_bug.cgi?id=31367 + + * bindings/scripts/CodeGeneratorV8.pm: Change "v8::Undefined()" to "v8::Handle<v8::Value>()" + +2009-11-11 Jens Alfke <snej@chromium.org> + + Reviewed by Dimitri Glazkov. + + Optimize V8 getDOMNodeMap(), a hot function in Dromaeo DOM tests, by increasing inlining. + + * bindings/v8/DOMData.cpp: + (WebCore::DOMData::getCurrent): Moved getCurrentMainThread to MainThreadDOMData::getCurrent + so it can be inlined by its caller. + * bindings/v8/DOMData.h: + * bindings/v8/MainThreadDOMData.cpp: + (WebCore::MainThreadDOMData::getCurrent): Moved here from DOMData.cpp. + (WebCore::MainThreadDOMData::getMainThreadStore): Added UNLIKELY macro to improve codegen. + (WebCore::MainThreadDOMData::getCurrentMainThreadStore): Combination of getCurrentMainThread + and getStore, which inline both calls together. + * bindings/v8/MainThreadDOMData.h: + (WebCore::MainThreadDOMData::getStore): Broke out nonvirtual getMainThreadStore for inlineability. + * bindings/v8/V8DOMMap.cpp: + (WebCore::getDOMNodeMap): Call new getCurrentMainThreadStore, which is faster. + +2009-11-11 Nate Chapin <japhet@chromium.org> + + Reviewed by Dimitri Glazkov. + + Add methods to KURLGoogle.cpp declared in http://trac.webkit.org/changeset/50784 but not defined when using KURLGoogle. + + https://bugs.webkit.org/show_bug.cgi?id=31357 + + * platform/KURLGoogle.cpp: + (WebCore::isSchemeFirstChar): + (WebCore::isSchemeChar): + (WebCore::KURL::hasPort): + (WebCore::KURL::removePort): + (WebCore::protocolIsValid): + +2009-11-11 Brent Fulgham <bfulgham@webkit.org> + + Build fix, no reviewed. + + Correct setPlatformFillColor and setPlatformStrokeColor calls + to match new ColorSpace-supporting signatures. + + * platform/graphics/win/GraphicsContextCairoWin.cpp: Add the + color space to the set[...]Color calls. + +2009-11-10 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Sam Weinig. + + https://bugs.webkit.org/show_bug.cgi?id=31327 + Clean up SocketStreamHandleClient interface + + No change in behavior. + + * platform/network/SocketStreamHandleClient.h: Removed willOpenStream and willSendData. + (WebCore::SocketStreamHandleClient::willOpenStream): Removed. This is currently not used by + the only client (WebSocketChannel), and it's not clear what this callback's semantics + should be. + (WebCore::SocketStreamHandleClient::willSendData): Ditto. + (WebCore::SocketStreamHandleClient::receivedCancellation): Removed, because it was misplaced. + For ResourceHandle, this method is called when the user cancels authentication sheet, + not when something happens with the stream. + + * websockets/WebSocketChannel.h: Some WebSocketChannel methods were virtual without any + reason. Also, added didReceiveAuthenticationChallenge/didCancelAuthenticationChallenge. + + * websockets/WebSocketChannel.cpp: Adjusted for the above change. Authentication-related + callbacks have no real implementation yet. + +2009-11-11 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for the part of page directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31350 + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and these are no need to be copyable: + + class DragController - instantiated at: WebCore/page/Page.cpp:107 + class FocusController - instantiated at: WebCore/page/Page.cpp:109 + class Settings - instantiated at: WebCore/page/Page.cpp:116 + class PluginHalter - instantiated at: WebCore/page/Page.cpp:160 + struct ScheduledEvent - instantiated at: WebCore/page/FrameView.cpp:1275 + class UserScript - instantiated at: WebCore/page/PageGroup.cpp:208 + struct EventHandlerDragState - instantiated at: WebCore/page/EventHandler.cpp:182 + class XSSAuditor - instantiated at: WebCore/bindings/js/ScriptController.cpp:70 + class UserStyleSheet - instantiated at: WebCore/page/PageGroup.cpp:222 + + Inherits PropertyWrapperBase class from Noncopyable because (its child class) + PropertyWrapper is instantiated by 'new' in + WebCore/page/animation/AnimationBase.cpp:564 it is no need to be copyable. + + * page/DragController.h: + * page/EventHandler.h: + * page/FocusController.h: + * page/FrameView.cpp: + * page/PluginHalter.h: + * page/Settings.h: + * page/UserScript.h: + * page/UserStyleSheet.h: + * page/XSSAuditor.h: + * page/animation/AnimationBase.cpp: + +2009-11-11 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + https://bugs.webkit.org/show_bug.cgi?id=31323 + Fix a few compiler warnings + + No new tests as there is no new functionality. + + * editing/htmlediting.cpp: + (WebCore::isRenderedAsNonInlineTableImageOrHR): Use explicit + parentheses to silence gcc 4.4 -Wparentheses warnings + +2009-11-11 Kenneth Rohde Christiansen <kenneth@webkit.org> + + Reviewed by Mark Rowe. + + Set m_hasPendingGeometryChange to true by default, so that + at least one call to NPP_SetWindow is executed, which is + needed by the DRT plugin testing framework. + + * plugins/PluginView.cpp: + (WebCore::PluginView::PluginView): + +2009-11-11 Csaba Osztrogonác <ossy@webkit.org> + + Rubber-stamped by Kenneth Rohde Christiansen. + + https://bugs.webkit.org/show_bug.cgi?id=31348 + [Qt] Remove unnecessary LUT creator from WebCore.pro + + * WebCore.pro: + +2009-11-11 Simon Hausmann <simon.hausmann@nokia.com> + + Reviewed by Tor Arne Vestbø. + + Introduce a function for querying the input method status + in QWebPageClient. + + * platform/qt/QWebPageClient.h: + +2009-11-11 Benjamin Otte <otte@gnome.org> + + Reviewed by Jan Alonzo. + + [GTK] Black artifacts in youtube.com/html5 + + Paint the video to the given size. It's the job of the callers to keep + track of aspect ratio. RenderVideo.cpp does it for the <video> + element. + https://bugs.webkit.org/show_bug.cgi?id=30925 + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::paint): + +2009-11-11 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=30901 + [Gtk] Need to de-lint the Atk a11y code + + Cleaned up some missed capitalization style-guideline violations. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + +2009-11-11 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> + + Reviewed by Eric Seidel. + + [Qt] Make the default style background color valid. + Currently the color is transparent but invalid, this causes + list boxes in QtWebKit to be drawn with a black background + since r49242. + https://bugs.webkit.org/show_bug.cgi?id=31295 + + * rendering/style/RenderStyle.h: + (WebCore::InheritedFlags::initialBackgroundColor): + * rendering/style/StyleBackgroundData.cpp: + (WebCore::StyleBackgroundData::StyleBackgroundData): + +2009-11-10 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Geoff Garen. + + Simplify the ownership model for worlds - rather than having a pair of weak references + between DOMWrapperWorld and ScriptController/ScriptCachedFrameData, give the latter an + ref pointer to the former. This reduces complexity & cost of the caching entries in the + back forward cache. + + * WebCore.base.exp: + * bindings/js/JSDOMBinding.cpp: + (WebCore::DOMWrapperWorld::~DOMWrapperWorld): + * bindings/js/JSDOMBinding.h: + (WebCore::DOMWrapperWorld::forgetDocument): + * bindings/js/ScriptCachedFrameData.cpp: + (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): + (WebCore::ScriptCachedFrameData::restore): + (WebCore::ScriptCachedFrameData::clear): + * bindings/js/ScriptCachedFrameData.h: + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::~ScriptController): + (WebCore::ScriptController::clearWindowShell): + (WebCore::ScriptController::initScript): + (WebCore::ScriptController::updateDocument): + * bindings/js/ScriptController.h: + +2009-11-10 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + rename counter to makeCounterNode in RenderCounter.cpp + https://bugs.webkit.org/show_bug.cgi?id=31289 + + No new test because this is just a small refactoring. + + * rendering/RenderCounter.cpp: + (WebCore::findPlaceForCounter): + (WebCore::makeCounterNode): + (WebCore::RenderCounter::originalText): + +2009-11-10 Daniel Bates <dbates@webkit.org> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=30754 + + Patch 2 of 2. + + Removed method EventHandler::dragSourceMovedTo, since it is no longer + needed. This method fired a drag event whenever the mouse moved, but + section 7.9.4 of the HTML 5 spec. defines the drag-and-drop processing + model independent of when the mouse moves. See "Among other changes..." + in the change log for patch 1 for more details. + + * WebCore.DragSupport.exp: + * page/EventHandler.cpp: Removed method EventHandler::dragSourceMovedTo. + (WebCore::EventHandler::handleDrag): Updated comment about reentrancy issue. + * page/EventHandler.h: + +2009-11-10 Daniel Bates <dbates@webkit.org> + + Reviewed by Oliver Hunt. + + https://bugs.webkit.org/show_bug.cgi?id=30754 + + Patch 1 of 2. + + As per Section 7.9.4 of the HTML 5 spec. <http://dev.w3.org/html5/spec/Overview.html#drag-and-drop-processing-model>, + the drag event should always fire before the dragover event. + + In fixing this bug, this patch also makes our drag processing model + conform to the HTML 5 spec. + + Among the changes, this patch ensures that the drag event isn't fired outside + of the drag-and-drop processing loop, WebCore::EventHandler::updateDragAndDrop. + Currently, the drag event is fired whenever the mouse button is down and the OS + detects the mouse moved. But, as per the spec, the drag event should + fire approx. every 350ms so long as the mouse button is down. + + Test: fast/events/drag-and-drop-fire-drag-dragover.html + + * page/EventHandler.cpp: + (WebCore::EventHandler::clear): + (WebCore::EventHandler::canHandleDragAndDropForTarget): Formerly named handleDragAndDropForTarget. + Modified to determine when we are in the correct instance of EventHandler to service the drag + and drop operation. + (WebCore::EventHandler::updateDragAndDrop): Moved code from WebCore::EventHandler::dragSourceMovedTo + into this method. + (WebCore::EventHandler::cancelDragAndDrop): + (WebCore::EventHandler::performDragAndDrop): + (WebCore::EventHandler::clearDragState): + * page/EventHandler.h: Added field m_shouldOnlyFireDragOverEvent to determine whether + we should fire both drag and dragover events or only the dragover event. + +2009-11-10 Vitaly Repeshko <vitalyr@chromium.org> + + Reviewed by Dimitri Glazkov. + + [V8] Fix crash in V8CustomXPathNSResolver (http://crbug.com/26726). + https://bugs.webkit.org/show_bug.cgi?id=31301 + + Tested by new fast/xpath/xpath-detached-iframe-resolver-crash.html. + + Allowed passing V8Proxy for the calling JS context: + * bindings/v8/V8DOMWrapper.h: + (WebCore::V8DOMWrapper::getXPathNSResolver): + * bindings/v8/custom/V8CustomXPathNSResolver.cpp: + (WebCore::V8CustomXPathNSResolver::create): + (WebCore::V8CustomXPathNSResolver::V8CustomXPathNSResolver): + (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI): + * bindings/v8/custom/V8CustomXPathNSResolver.h: + * bindings/v8/custom/V8DocumentCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-11-10 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Timothy Hatcher. + + Implement URL decomposition IDL attributes for HTMLAnchorElement. + https://bugs.webkit.org/show_bug.cgi?id=29972. + + Add methods for setting different parts of the URL in href attribute. + + Tests: fast/dom/HTMLAnchorElement/set-href-attribute-hash.html + fast/dom/HTMLAnchorElement/set-href-attribute-host.html + fast/dom/HTMLAnchorElement/set-href-attribute-hostname.html + fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html + fast/dom/HTMLAnchorElement/set-href-attribute-port.html + fast/dom/HTMLAnchorElement/set-href-attribute-protocol.html + fast/dom/HTMLAnchorElement/set-href-attribute-search.html + + * bindings/js/JSLocationCustom.cpp: + (WebCore::JSLocation::setPort): + * html/HTMLAnchorElement.cpp: + (WebCore::parsePortFromStringPosition): + (WebCore::HTMLAnchorElement::setHash): + (WebCore::HTMLAnchorElement::setHost): + (WebCore::HTMLAnchorElement::setHostname): + (WebCore::HTMLAnchorElement::setPathname): + (WebCore::HTMLAnchorElement::setPort): + (WebCore::HTMLAnchorElement::setProtocol): + (WebCore::HTMLAnchorElement::setSearch): + * html/HTMLAnchorElement.h: + * html/HTMLAnchorElement.idl: + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::iconURL): + * platform/KURL.cpp: + (WebCore::KURL::removePort): + (WebCore::KURL::setPort): + (WebCore::KURL::prettyURL): + (WebCore::protocolIsValid): + * platform/KURL.h: + (WebCore::KURL::canSetHostOrPort): + (WebCore::KURL::canSetPathname): + (WebCore::KURL::hasPort): + * platform/network/soup/ResourceHandleSoup.cpp: + (WebCore::): + +2009-11-10 Nate Chapin <japhet@chromium.org> + + Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50760. + + * platform/chromium/PopupMenuChromium.cpp: + (WebCore::PopupContainer::paintBorder): + (WebCore::PopupListBox::paint): + (WebCore::PopupListBox::paintRow): + * platform/graphics/chromium/TransparencyWin.cpp: + (WebCore::TransparencyWin::setupLayerForWhiteLayer): + * platform/graphics/skia/GraphicsContextSkia.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformFillColor): + (WebCore::GraphicsContext::setPlatformStrokeColor): + * rendering/RenderMediaControlsChromium.cpp: + (WebCore::paintMediaSlider): + (WebCore::paintMediaVolumeSlider): + (WebCore::paintMediaTimelineContainer): + * rendering/RenderThemeChromiumMac.mm: + (WebCore::RenderThemeChromiumMac::paintMenuListButton): + +2009-11-10 Brady Eidson <beidson@apple.com> + + Reviewed by Sam Weinig. + + Repro crash saving pcmag.com article as a webarchive. + <rdar://problem/7381219> and https://webkit.org/b/31322 + + Test: http/tests/webarchive/cross-origin-stylesheet-crash.html + + * css/CSSStyleSheet.cpp: + (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Walk the stylesheet itself instead + of creating a CSSRuleList (and subjecting ourselves to the security origin check) + +2009-11-10 Beth Dakin <bdakin@apple.com> + + Attempt 2 to fix Tiger build. No review needed. + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::deviceRGBColorSpaceRef): + (WebCore::sRGBColorSpaceRef): + +2009-11-10 Kevin Ollivier <kevino@theolliviers.com> + + wx build fix. Changes needed after r50760. + + * platform/graphics/wx/GraphicsContextWx.cpp: + (WebCore::GraphicsContext::GraphicsContext): + * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp: + (WebCore::drawTextWithSpacing): + +2009-11-10 Alexey Proskuryakov <ap@apple.com> + + Qt build fix. + + * platform/network/ResourceHandle.h: Only inherit from AuthenticationClient on platforms + that use ResourceHandle as a delegate (Mac, CFNetwork, Curl). + +2009-11-10 Beth Dakin <bdakin@apple.com> + + Tiger build fix. No review needed. + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::sRGBColorSpaceRef): + +2009-11-10 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=31312 + Decouple authentication panel callbacks from ResourceHandle + + No change in functionality. + + SocketStreamHandle also needs to request credentials, so it's not appropriate to store + ResourceHandle as delegate. + + * WebCore.vcproj/WebCore.vcproj: + * platform/network/AuthenticationClient.h: Added. + Added a new interface for listening to authentication panel notifications. + + * WebCore.xcodeproj/project.pbxproj: Added AuthenticationClient.h. Let Visual Studio do what + it wants with the project file. + + (WebCore::AuthenticationClient::ref): Using our usual method of exposing refcounting on an + interface class. + (WebCore::AuthenticationClient::deref): Ditto. + + * platform/network/ResourceHandle.h: + (WebCore::ResourceHandle::refAuthenticationClient): Ditto. + (WebCore::ResourceHandle::derefAuthenticationClient): Ditto. + + * platform/network/cf/AuthenticationCF.cpp: + (WebCore::AuthenticationChallenge::AuthenticationChallenge): + (WebCore::AuthenticationChallenge::platformCompare): + * platform/network/cf/AuthenticationChallenge.h: + (WebCore::AuthenticationChallenge::authenticationClient): + * platform/network/chromium/AuthenticationChallenge.h: + (WebCore::AuthenticationChallenge::authenticationClient): + * platform/network/curl/AuthenticationChallenge.h: + (WebCore::AuthenticationChallenge::authenticationClient): + Keeping a reference to AuthenticationClient, not to ResourceHandle. + +2009-11-10 Beth Dakin <bdakin@apple.com> + + Second attempted gtk build fix. No review needed. + + * html/canvas/CanvasStyle.cpp: + (WebCore::CanvasStyle::applyStrokeColor): + + +2009-11-10 Gavin Barraclough <barraclough@apple.com> + + Reviewed by Geoff Garen. + + Fix back/forwards cache with JSC isolated worlds. + https://bugs.webkit.org/show_bug.cgi?id=31310 + <rdar://problem/7328111> Cached back navigation doesn't restore global object in extension isolated world + + Store the global object for all worlds, not just the normal world. + Also maintain bidirectional weak references between the ScriptCachedFrameData and the DOMWrapperWorld, + so we can forget global objects if a world goes away. + + * bindings/js/JSDOMBinding.cpp: + (WebCore::DOMWrapperWorld::~DOMWrapperWorld): + * bindings/js/JSDOMBinding.h: + (WebCore::DOMWrapperWorld::rememberScriptCachedFrameData): + (WebCore::DOMWrapperWorld::forgetScriptCachedFrameData): + * bindings/js/ScriptCachedFrameData.cpp: + (WebCore::ScriptCachedFrameData::ScriptCachedFrameData): + (WebCore::ScriptCachedFrameData::forgetWorld): + (WebCore::ScriptCachedFrameData::domWindow): + (WebCore::ScriptCachedFrameData::restore): + (WebCore::ScriptCachedFrameData::clear): + * bindings/js/ScriptCachedFrameData.h: + * bindings/js/ScriptController.h: + +2009-11-10 Csaba Osztrogonác <ossy@webkit.org> + + [Qt] Unreviewed buildfix after r50760. + + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::GraphicsContext): + +2009-11-10 Beth Dakin <bdakin@apple.com> + + Attempted build fix. (No review needed.) + + * GNUmakefile.am: Adding ColorSpace.h + +2009-11-10 Brian Weinstein <bweinstein@apple.com> + + Reviewed by NOBODY - Build Fix. + + Updated function calls to take a ColorSpace argument, passing + in DeviceColorSpace for now - this should be fixed. Also added + ColorSpace.h to WebCore project. + + * WebCore.vcproj/WebCore.vcproj: + * platform/graphics/win/FontCGWin.cpp: + (WebCore::Font::drawGlyphs): + * platform/graphics/win/GraphicsContextCGWin.cpp: + (WebCore::GraphicsContext::GraphicsContext): + * platform/win/PopupMenuWin.cpp: + (WebCore::PopupMenu::paint): + * platform/win/WebCoreTextRenderer.cpp: + (WebCore::doDrawTextAtPoint): + * rendering/RenderThemeSafari.cpp: + (WebCore::RenderThemeSafari::paintMenuListButton): + +2009-11-10 Jens Alfke <snej@chromium.org> + + Reviewed by Darin Adler. + + Optimizations to Element::getAttribute + https://bugs.webkit.org/show_bug.cgi?id=30926 + + * dom/Element.cpp: + (WebCore::Element::getAttribute): User case-insensitive compare instead of lowercasing the name. + * dom/NamedAttrMap.cpp: + (WebCore::NamedNodeMap::getAttributeItem): Avoid redundant compares, and do fast/likely compares first. + * platform/text/PlatformString.h: + (WebCore::equalPossiblyIgnoringCase): New inline method, used by both of the above. + +2009-11-10 Beth Dakin <bdakin@apple.com> + + Reviewed by Darin Adler. + + Fix for <rdar://problem/7059710> + -and corresponding- + https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit- + color-correction for CSS colors + + New exported symbol for GraphicsContext::fillColor() which now + accepts a ColorSpace as an optional parameter. + * WebCore.base.exp: + + Added a new file, ColorSpace.h, to define the ColorSpace enum. + * WebCore.xcodeproj/project.pbxproj: + + Computed Style for -webkit-color-correction + * css/CSSComputedStyleDeclaration.cpp: + (WebCore::): + (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): + + Parse -webkit-color-correction + * css/CSSParser.cpp: + (WebCore::CSSParser::parseValue): + + Map CSS identifiers to the appropriate values of the ColorSpace enum + * css/CSSPrimitiveValueMappings.h: + (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): + (WebCore::CSSPrimitiveValue::operator ColorSpace): + + New property -webkit-color-correction + * css/CSSPropertyNames.in: + + Map -webkit-color-correction into the RenderStyle. + * css/CSSStyleSelector.cpp: + (WebCore::CSSStyleSelector::applyProperty): + + Add new value sRGB. + * css/CSSValueKeywords.in: + + Comment out the reference to sRGB since it will now be inherited as + a value from CSSValueKeywords. + * css/SVGCSSValueKeywords.in: + + Definition of the ColorSpace enum. + * platform/graphics/ColorSpace.h: Added. + (WebCore::): + + These functions all now take a ColorSpace as a parameter. + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::setStrokeColor): + (WebCore::GraphicsContext::setFillColor): + (WebCore::GraphicsContext::drawHighlightForText): + + Return the appropriate ColorSpace. + (WebCore::GraphicsContext::strokeColorSpace): + (WebCore::GraphicsContext::fillColorSpace): + + These functions all call other functions which require a ColorSpace + as a parameter. + (WebCore::GraphicsContext::setStrokePattern): + (WebCore::GraphicsContext::setFillPattern): + (WebCore::GraphicsContext::setStrokeGradient): + (WebCore::GraphicsContext::setFillGradient): + + All of the GraphicsContext functions that take a Color should now + also take a ColorSpace. + * platform/graphics/GraphicsContext.h: + + Added new member variables stokeColorSpace and fillColorSpace. + * platform/graphics/GraphicsContextPrivate.h: + (WebCore::GraphicsContextState::GraphicsContextState): + + Attempt to keep the Cairo port building with all of the massive + changes to GraphicsContext. + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::setPlatformFillColor): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::fillRoundedRect): + + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::sRGBColorSpaceRef): New static function that returns a + CGColorSpaceRef for the sRGB color space. + (WebCore::deviceRGBColorSpaceRef): New static function that returns + a CGColorSpaceRef for the device RGB color space. + + (WebCore::setCGFillColor): Now takes a ColorSpace parameter and + sets the fill color to the specified color in the given ColorSpace. + (WebCore::setCGStrokeColor): Same, but for stroke. + + (WebCore::setCGFillColorSpace): New static to set the + CGFillColorSpace to the given ColorSpace + (WebCore::setCGStrokeColorSpace): Same, but for stroke. + + Send ColorSpaces when appropriate, set ColorSpaces when + appropriate, and check ColorSpaces when appropriate. + (WebCore::GraphicsContext::GraphicsContext): + (WebCore::GraphicsContext::drawRect): + (WebCore::GraphicsContext::drawLine): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::strokeRect): + (WebCore::GraphicsContext::drawLineForText): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::setPlatformFillColor): + + Attempt to keep Haiku building. + * platform/graphics/haiku/GraphicsContextHaiku.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::setPlatformFillColor): + + Attempt to keep QT building. + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::setPlatformFillColor): + + Attempt to keep Wince building. + * platform/graphics/wince/GraphicsContextWince.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::setPlatformFillColor): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::clearRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformShadow): + + Attempt to keep WX building. + * platform/graphics/wx/GraphicsContextWx.cpp: + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::fillRoundedRect): + (WebCore::GraphicsContext::setPlatformStrokeColor): + (WebCore::GraphicsContext::setPlatformFillColor): + + Added functions colorSpace() and setColorSpace() + * rendering/style/RenderStyle.h: + (WebCore::InheritedFlags::colorSpace): + (WebCore::InheritedFlags::setColorSpace): + + The ColorSpace is stored here. + * rendering/style/StyleRareInheritedData.cpp: + (WebCore::StyleRareInheritedData::StyleRareInheritedData): + (WebCore::StyleRareInheritedData::operator==): + * rendering/style/StyleRareInheritedData.h: + + All of these call sites call GraphicsContext functions which now + require ColorSpaces. + * editing/SelectionController.cpp: + (WebCore::SelectionController::paintCaret): + * html/canvas/CanvasRenderingContext2D.cpp: + (WebCore::CanvasRenderingContext2D::drawTextInternal): + * html/canvas/CanvasStyle.cpp: + (WebCore::CanvasStyle::applyStrokeColor): + (WebCore::CanvasStyle::applyFillColor): + * inspector/InspectorController.cpp: + (WebCore::drawOutlinedQuad): + * page/FrameView.cpp: + (WebCore::FrameView::paintContents): + * platform/ScrollbarTheme.h: + (WebCore::ScrollbarTheme::paintScrollCorner): + * platform/ScrollbarThemeComposite.cpp: + (WebCore::ScrollbarThemeComposite::paintScrollCorner): + * platform/graphics/Image.cpp: + (WebCore::Image::fillWithSolidColor): + * platform/graphics/mac/FontMac.mm: + (WebCore::Font::drawGlyphs): + * platform/graphics/mac/MediaPlayerPrivateQTKit.mm: + (WebCore::MediaPlayerPrivate::paint): + * rendering/EllipsisBox.cpp: + (WebCore::EllipsisBox::paint): + * rendering/InlineFlowBox.cpp: + (WebCore::InlineFlowBox::paintTextDecorations): + * rendering/InlineTextBox.cpp: + (WebCore::updateGraphicsContext): + (WebCore::paintTextWithShadows): + (WebCore::InlineTextBox::paint): + (WebCore::InlineTextBox::paintSelection): + (WebCore::InlineTextBox::paintCompositionBackground): + (WebCore::InlineTextBox::paintDecoration): + (WebCore::InlineTextBox::paintTextMatchMarker): + (WebCore::InlineTextBox::paintCompositionUnderline): + * rendering/InlineTextBox.h: + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::fillHorizontalSelectionGap): + (WebCore::RenderBlock::fillVerticalSelectionGap): + (WebCore::RenderBlock::fillLeftSelectionGap): + (WebCore::RenderBlock::fillRightSelectionGap): + * rendering/RenderBoxModelObject.cpp: + (WebCore::RenderBoxModelObject::paintFillLayerExtended): + (WebCore::RenderBoxModelObject::paintBoxShadow): + * rendering/RenderFileUploadControl.cpp: + (WebCore::RenderFileUploadControl::paintObject): + * rendering/RenderFrameSet.cpp: + (WebCore::RenderFrameSet::paintColumnBorder): + (WebCore::RenderFrameSet::paintRowBorder): + * rendering/RenderImage.cpp: + (WebCore::RenderImage::paintReplaced): + * rendering/RenderLayer.cpp: + (WebCore::RenderLayer::paintScrollCorner): + (WebCore::RenderLayer::paintResizer): + * rendering/RenderListBox.cpp: + (WebCore::RenderListBox::paintItemForeground): + (WebCore::RenderListBox::paintItemBackground): + * rendering/RenderListMarker.cpp: + (WebCore::RenderListMarker::paint): + * rendering/RenderObject.cpp: + (WebCore::RenderObject::drawLineForBoxSide): + (WebCore::RenderObject::drawArcForBoxSide): + * rendering/RenderReplaced.cpp: + (WebCore::RenderReplaced::paint): + * rendering/RenderScrollbarTheme.cpp: + (WebCore::RenderScrollbarTheme::paintScrollCorner): + * rendering/RenderThemeMac.mm: + (WebCore::RenderThemeMac::paintMenuListButton): + * rendering/RenderView.cpp: + (WebCore::RenderView::paintBoxDecorations): + * rendering/RenderWidget.cpp: + (WebCore::RenderWidget::paint): + * rendering/SVGInlineTextBox.cpp: + (WebCore::SVGInlineTextBox::paintSelection): + * svg/graphics/SVGPaintServerGradient.cpp: + (WebCore::SVGPaintServerGradient::setup): + * svg/graphics/SVGPaintServerSolid.cpp: + (WebCore::SVGPaintServerSolid::setup): + +2009-11-10 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Speed up syntax highlighter + https://bugs.webkit.org/show_bug.cgi?id=31291 + + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._loaded): + (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine): Replace the line content node. + (WebInspector.SourceSyntaxHighlighter.prototype.process): + (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken): + (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode): + (WebInspector.CSSSourceSyntaxHighlighter): + (WebInspector.JavaScriptSourceSyntaxHighlighter): + +2009-11-09 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Eric Seidel. + + Remove session storage setting + https://bugs.webkit.org/show_bug.cgi?id=31279 + + Remove session storage from Settings. It was added temporarily so we could + disable it by default at runtime in Chromium. We now disable these things in a + different way, so it's time to remove it. Qt also depended on this setting for + a short period of time, but after talking to them we agreed that it should be + removed. + + This bug is the second half of https://bugs.webkit.org/show_bug.cgi?id=30602 + + * page/DOMWindow.cpp: + (WebCore::DOMWindow::sessionStorage): + * page/Settings.cpp: + (WebCore::Settings::Settings): + * page/Settings.h: + +2009-11-10 Dan Bernstein <mitz@apple.com> + + Reviewed by Eric Carlson and Darin Adler. + + WebCore part of making full-screen video pause during scrubbing. + + * WebCore.Video.exp: Sorted and added HTMLMediaElement::beginScrubbing() + and HTMLMediaElement::endScrubbing(). + +2009-11-10 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth. + + Reapply 50562 reverted by 50588 due to issues with sandboxing (should be fine now). + https://bugs.webkit.org/show_bug.cgi?id=31051 + + * bindings/v8/V8GCController.cpp: + (WebCore::V8GCController::gcEpilogue): + (WebCore::V8GCController::checkMemoryUsage): + * bindings/v8/V8GCController.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluate): + (WebCore::V8Proxy::runScript): + (WebCore::V8Proxy::callFunction): + +2009-11-10 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for the part of loader directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31161 + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and these are no need to be copyable: + + class Request - WebCore/loader/loader.cpp:100 + struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164 + class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121 + class ApplicationCacheHost - WebCore/loader/DocumentLoader.cpp:151 + class ImageEventSender - WebCore/loader/ImageLoader.cpp:54 + struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169 + + Inherits ThreadableLoaderClient class from Noncopyable because (its child class) + MainThreadBridge is instantiated by 'new' in + WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable. + + ThreadableLoaderClient's inheriting has been changed to public. + + * loader/ImageLoader.cpp: + * loader/ProgressTracker.cpp: + * loader/RedirectScheduler.cpp: + * loader/Request.h: + * loader/ThreadableLoaderClient.h: + * loader/WorkerThreadableLoader.h: + * loader/appcache/ApplicationCacheHost.h: + * loader/appcache/ApplicationCacheStorage.h: + +2009-11-10 Philippe Normand <pnormand@igalia.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=31047 + [GTK] Failing test media/video-played-ranges-1.html + + WebKit coding style fixes. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::mediaPlayerPrivateMessageCallback): + (WebCore::MediaPlayerPrivate::naturalSize): + (WebCore::MediaPlayerPrivate::paint): + (WebCore::mimeTypeCache): + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Remove build failure introduced by earlier build fix. + + * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Is this the last build fix? grep tells me yes. + + * bindings/v8/custom/V8DocumentCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Hopefully the last one. Why aren't these autogenerated? + + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray): + (WebCore::V8DOMWrapper::getTemplate): + (WebCore::V8DOMWrapper::convertToV8Object): + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Another chrome build fix. + + * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Yet another chrome buildfix + + * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8WebGLArrayCustom.h: + (WebCore::constructCanvasArray): + * bindings/v8/custom/V8WebGLByteArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLIntArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::vertexAttribAndUniformHelperf): + (WebCore::uniformHelperi): + (WebCore::uniformMatrixHelper): + * bindings/v8/custom/V8WebGLShortArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + (WebCore::INDEXED_PROPERTY_GETTER): + (WebCore::INDEXED_PROPERTY_SETTER): + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Chrome build fix. + + * bindings/v8/V8Index.h: + +2009-11-10 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=30901 + [Gtk] Need to de-lint the Atk a11y code + + Removal of various and sundry style-violating nits. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + +2009-11-10 Philippe Normand <pnormand@igalia.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=31047 + [GTK] Failing test media/video-played-ranges-1.html + + Fix playback rate setter by remembering the rate was changed. Also + correctly handle reverse playback by doing a seek from end to + beginning of the media. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): + (WebCore::MediaPlayerPrivate::currentTime): + (WebCore::MediaPlayerPrivate::seek): + (WebCore::MediaPlayerPrivate::hasAudio): + (WebCore::MediaPlayerPrivate::setVolume): + (WebCore::MediaPlayerPrivate::setRate): + (WebCore::MediaPlayerPrivate::updateStates): + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: + +2009-11-10 Oliver Hunt <oliver@apple.com> + + Reviewed by Maciej Stachowiak. + + Rename 3D Canvas related classes to use WebGL prefix + https://bugs.webkit.org/show_bug.cgi?id=29095 + + Automatic rename of all WebGL related types from Canvas* to + WebGL* per more recent version of the WebGL spec. + + Due to the automatic rename I've removed the 600+ line change list. + +2009-11-09 Dirk Schulze <krit@webkit.org> + + Reviewed by Oliver Hunt. + + SVG feDisplacementMap is not implemented + [https://bugs.webkit.org/show_bug.cgi?id=31255] + + This is the implementation of the SVG filter effect + feDisplacementMap. + + Test: svg/filters/feDisplacementMap.svg + + * svg/graphics/filters/SVGFEDisplacementMap.cpp: + (WebCore::FEDisplacementMap::apply): + +2009-11-09 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Add a comment about null strings and hash functions. + https://bugs.webkit.org/show_bug.cgi?id=29118 + + * platform/text/StringHash.h: + +2009-11-09 Martin Robinson <martin.james.robinson@gmail.com> + + Reviewed by Darin Adler. + + Compiler warnings in InspectorResource.h + https://bugs.webkit.org/show_bug.cgi?id=29231 + + Fix compilation warnings by removing addition operation on an enum type. + + * inspector/InspectorResource.h: + (WebCore::InspectorResource::): + (WebCore::InspectorResource::Changes::hasChange): + (WebCore::InspectorResource::Changes::set): + (WebCore::InspectorResource::Changes::setAll): + +2009-11-09 Anders Carlsson <andersca@apple.com> + + Reviewed by Darin Adler and Dan Bernstein. + + <rdar://problem/7328395> + https://bugs.webkit.org/show_bug.cgi?id=31277 + + When an object tag's style changes (for example when child nodes are added/removed), + reuse its Frame (if it has one) instead of creating multiple Frames. + + Test: fast/dom/HTMLObjectElement/children-changed.html + + * loader/FrameLoader.cpp: + (WebCore::FrameLoader::requestObject): + +2009-11-09 Norbert Leser <norbert.leser@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Moved macro MMP_RULES (LINKEROPTION) into symbian instead of symbian-sbsv2, + since adjustment of RW-section base address will be needed for all new symbian + tool chains, specifically for arm and gcc compilation targets. + Also, change target address to 0xE00000 to be sufficient for all targets. + + * WebCore.pro: + +2009-11-09 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Crash when inspecting + WebCore\manual-tests\inspector\dom-mutation.html + + https://bugs.webkit.org/show_bug.cgi?id=31259 + + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::handleEvent): + +2009-11-09 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Few classes have virtual functions but non-virtual destructor + https://bugs.webkit.org/show_bug.cgi?id=31269 + + No new tests as there is no functional change. + + * platform/qt/QWebPageClient.h: + (QWebPageClient::~QWebPageClient): Add virtual destructor. + +2009-11-09 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Allow setting HTTP headers with empty value in XMLHTTPRequest + https://bugs.webkit.org/show_bug.cgi?id=31140 + + QtNetwork interprets null string as request to remove the header, not add it. + Replace null values with empty values before passing them to QtNetwork. + + Test: http/tests/xmlhttprequest/xmlhttprequest-setrequestheader-no-value.html + + * platform/network/qt/ResourceRequestQt.cpp: + (WebCore::ResourceRequest::toNetworkRequest): + +2009-11-09 Vadim Zeitlin <vadim@wxwidgets.org> + + Reviewed by Kevin Ollivier. + + [wx] Fix handling of alpha channel when using wxWidgets 2.9: it was + simply ignored before resulting in transparent areas being black in PNG + images for example. + + https://bugs.webkit.org/show_bug.cgi?id=30823 + + * platform/image-decoders/wx/ImageDecoderWx.cpp: + (WebCore::RGBA32Buffer::asNewNativeImage): + +2009-11-09 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + Use explicit parentheses to silence gcc 4.4 -Wparentheses warnings + https://bugs.webkit.org/show_bug.cgi?id=31040 + + No new tests as there is no functional change. + + * dom/Document.cpp: + (WebCore::Document::recalcStyleSelector): + * editing/TextIterator.cpp: + (WebCore::pushFullyClippedState): + * editing/VisibleSelection.cpp: + (WebCore::VisibleSelection::appendTrailingWhitespace): + * html/HTMLLinkElement.cpp: + (WebCore::HTMLLinkElement::process): + * loader/RedirectScheduler.cpp: + (WebCore::RedirectScheduler::mustLockBackForwardList): + * loader/appcache/ApplicationCacheGroup.cpp: + (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): + * platform/graphics/qt/FontCacheQt.cpp: + (WebCore::FontPlatformDataCacheKey::computeHash): + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::handleRunInChild): + * rendering/RenderBox.cpp: + (WebCore::RenderBox::calcHeight): + * rendering/RenderTextControlMultiLine.cpp: + (WebCore::RenderTextControlMultiLine::nodeAtPoint): + * rendering/style/RenderStyle.cpp: + (WebCore::RenderStyle::diff): + * svg/SVGAnimateElement.cpp: + (WebCore::parseNumberValueAndUnit): + * svg/SVGAnimationElement.cpp: + (WebCore::SVGAnimationElement::startedActiveInterval): + * svg/SVGPreserveAspectRatio.cpp: + (WebCore::SVGPreserveAspectRatio::getCTM): + +2009-11-09 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Dimitri Glazkov. + + Win chromium is slow to draw transparent texts + https://bugs.webkit.org/show_bug.cgi?id=31258 + + Clip graphics context to reduce calculation. + + No new tests because this change only affects performance. + + * platform/graphics/chromium/FontChromiumWin.cpp: + (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI): + (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::~TransparencyAwareFontPainter): + +2009-11-09 Carol Szabo <carol.szabo@nokia.com> + + Reviewed by Darin Adler. + + showTree(CounterNode*) generates too little info and has too many spaces. + https://bugs.webkit.org/show_bug.cgi?id=31212 + + No new tests as the change has no functional effect it is just for + improved debugging. + + * rendering/CounterNode.cpp: + (WebCore::showTreeAndMark): + Changed to also show addresses of parent, next and previous + siblings. + +2009-11-09 Stuart Morgan <stuartmorgan@chromium.org> + + Reviewed by Darin Adler. + + Moves Mac implementation of setUseSecureKeyboardEntry to Frame.cpp and + enables it PLATFORM(CHROMIUM) in addition to PLATFORM(MAC). + + https://bugs.webkit.org/show_bug.cgi?id=31083 + + No new tests; implementation is unchanged. + + * page/Frame.cpp: + (WebCore::Frame::setUseSecureKeyboardEntry): + * page/mac/FrameMac.mm: + +2009-11-09 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Jan Alonzo. + + Make XP_UNIX tests consistent + https://bugs.webkit.org/show_bug.cgi?id=31250 + + No new tests as there is no functional change. + + * plugins/PluginView.cpp: + (WebCore::PluginView::setFrameRect): Test if XP_UNIX is defined + instead of the value of the macro + + * plugins/gtk/PluginViewGtk.cpp: + (WebCore::PluginView::setNPWindowIfNeeded): Test if the XP_UNIX is + defined instead of using the PLATFORM macro to be consistent + (WebCore::PluginView::getValue): Ditto. + +2009-11-09 Kevin Watters <kevinwatters@gmail.com> + + Reviewed by Darin Adler. + + Thunk to the main thread from ~Database to deref Database's m_document. + + If the Database was the Document's last referrer, then ~Document occurs on the + Database thread, and ASSERT(!m_styleRecalcTimer.isActive()) hits a main thread + ASSERT in debug builds. + + * storage/Database.cpp: + (WebCore::derefDocument): + (WebCore::Database::~Database): + +2009-11-09 Mark Mentovai <mark@chromium.org> + + Reviewed by Dan Bernstein. + + Track "can have scrollbar" state within FrameView independently of the + individual scrollbar states in ScrollView. + + rdar://problem/7215132, https://bugs.webkit.org/show_bug.cgi?id=29167 + REGRESSION (r48064): mint.com loses scrollbars after coming out of + edit mode. + + rdar://problem/7314421, https://bugs.webkit.org/show_bug.cgi?id=30517 + REGRESSION (r48064): Extra scroll bars in GarageBand Lesson Store. + + Test: fast/overflow/scrollbar-restored.html + + * WebCore.base.exp: + * page/FrameView.cpp: + (WebCore::FrameView::FrameView): + (WebCore::FrameView::resetScrollbars): + (WebCore::FrameView::setCanHaveScrollbars): + (WebCore::FrameView::updateCanHaveScrollbars): + (WebCore::FrameView::layout): + * page/FrameView.h: + * platform/ScrollView.h: + +2009-11-09 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: CSS syntax highlighter doesn't recognize negative numbers + https://bugs.webkit.org/show_bug.cgi?id=31257 + + * inspector/front-end/SourceFrame.js: + +2009-11-09 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Debugger shortcuts (F8, F10, F11) have no effect if the Console view is open + https://bugs.webkit.org/show_bug.cgi?id=31252 + + Route F1-F12 keypresses in the Console view to the current panel if there is one. + + Test: manual-tests/inspector/debugger-shortcuts-with-console-opened.html + + * inspector/front-end/ConsoleView.js: + (WebInspector.ConsoleView.prototype._promptKeyDown): + * inspector/front-end/utilities.js: + (): + * manual-tests/inspector/debugger-shortcuts-with-console-opened.html: Added. + +2009-11-09 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Kenneth Rohde Christiansen. + + [Qt] Pass credentials provided by XMLHTTPRequest to the network request. + https://bugs.webkit.org/show_bug.cgi?id=31208 + + After r42483, the credentials are no longer passed to the network request + in the URL of the request. + Pass the credentials from XMLHTTPRequest to the network request, the same + way that other ports do. + + After this patch LayoutTests/http/xmlhttprequest/basic-auth.html passes. + + * platform/network/qt/ResourceHandleQt.cpp: + (WebCore::ResourceHandle::start): + (WebCore::ResourceHandle::loadResourceSynchronously): + +2009-11-09 Zoltan Horvath <zoltan@webkit.org> + + Unreviewed. + + https://bugs.webkit.org/show_bug.cgi?id=31161 + + Roll back r50657 because it breaks the MAC builds. + + * loader/ImageLoader.cpp: + * loader/ProgressTracker.cpp: + * loader/RedirectScheduler.cpp: + * loader/Request.h: + * loader/ThreadableLoaderClient.h: + * loader/WorkerThreadableLoader.h: + * loader/appcache/ApplicationCacheHost.h: + * loader/appcache/ApplicationCacheStorage.h: + * loader/icon/IconDatabaseClient.h: + +2009-11-09 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for the part of loader directory in WebCore + https://bugs.webkit.org/show_bug.cgi?id=31161 + + Inherits the following classes from Noncopyable because these are instantiated + by 'new' and these are no need to be copyable: + + class Request - WebCore/loader/loader.cpp:100 + struct ScheduledRedirection - WebCore/loader/RedirectScheduler.cpp:164 + class IconDatabaseClient - WebCore/loader/icon/IconDatabase.cpp:89 + class ApplicationCacheStorage - WebCore/loader/appcache/ApplicationCacheStorage.cpp:1121 + class ApplicationCacheHost - WebCore/loader/DocumentLoader.cpp:151 + class ImageEventSender - WebCore/loader/ImageLoader.cpp:54 + struct ProgressItem - WebCore/loader/ProgressTracker.cpp:169 + + Inherits ThreadableLoaderClient class from Noncopyable because (its child class) + MainThreadBridge is instantiated by 'new' in + WebCore/loader/WorkerThreadableLoader.cpp:59 it is no need to be copyable. + + ThreadableLoaderClient's inheriting has been changed to public. + + * loader/ImageLoader.cpp: + * loader/ProgressTracker.cpp: + * loader/RedirectScheduler.cpp: + * loader/Request.h: + * loader/ThreadableLoaderClient.h: + * loader/WorkerThreadableLoader.h: + * loader/appcache/ApplicationCacheHost.h: + * loader/appcache/ApplicationCacheStorage.h: + * loader/icon/IconDatabaseClient.h: + +2009-11-09 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's DocLoader + https://bugs.webkit.org/show_bug.cgi?id=31163 + + Inherits DocLoader class from Noncopyable because it is + instantiated by 'new' in WebCore/dom/Document.cpp:370 and + it is no need to be copyable. + + * loader/DocLoader.h: + +2009-11-09 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's Tokenizer + https://bugs.webkit.org/show_bug.cgi?id=31162 + + Inherits Tokenizer class from Noncopyable because (its child class) + ImageTokenizer instantiated by 'new' in WebCore/loader/ImageDocument.cpp:178 + and it is no need to be copyable. + + * dom/Tokenizer.h: + +2009-11-09 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's DeleteButtonController + https://bugs.webkit.org/show_bug.cgi?id=31105 + + Inherits DeleteButtonController class from Noncopyable because it is + instantiated by 'new' in WebCore/editing/Editor.cpp:919 and + it is no need to be copyable. + + * editing/DeleteButtonController.h: + +2009-11-09 Martin Robinson <martin.james.robinson@gmail.com> + + Reviewed by Jan Alonzo. + + [GTK] Expose Page::tabKeyCyclesThroughElements in the API + https://bugs.webkit.org/show_bug.cgi?id=30482 + + Expose Page::tabKeyCyclesThroughElements as a property of + WebKitWebView. + + No new tests; fast/events/keypress-insert-tab.html is no longer skipped. + + * platform/gtk/KeyEventGtk.cpp: Correct m_text for tab key presses. + (WebCore::singleCharacterString): + +2009-11-09 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25415 + [GTK][ATK] Please implement support for get_text_at_offset + + Fix a crasher that occurred with text which included newline + chars in the markup. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (convertUniCharToUTF8): + +2009-11-05 Jakub Wieczorek <faw217@gmail.com> + + Reviewed by Holger Freyther. + + [Qt] The XML tokenizer reports a parse error twice if it occurs before the document element is found. + https://bugs.webkit.org/show_bug.cgi?id=31144 + + XMLTokenizer::doEnd() uses an additional logic to report a parse failure in + documents that end prematurely but are not considered invalid by QXmlStream. + This is to stay compatible with the libxml2 implementation. + However, that code path would be also hit in situations when it should not, + i.e. the error would have already been caught and handled. As a result, the + same error would be reported twice. + + No new tests, because the problem is already covered by + fast/parser/xml-declaration-missing-ending-mark.html. + + * dom/XMLTokenizerQt.cpp: + (WebCore::XMLTokenizer::doEnd): + +2009-11-08 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Pavel Feldman. + + Web Inspector: Inspector should support copy() in the command line + https://bugs.webkit.org/show_bug.cgi?id=31238 + + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::copyText): Added. + * inspector/InspectorBackend.h: Added copyText + * inspector/InspectorBackend.idl: Added copyText + * inspector/front-end/InjectedScript.js: + (InjectedScript._copy): Added. + (InjectedScript._ensureCommandLineAPIInstalled): + +2009-11-08 Drew Wilson <atwilson@chromium.org> + + Reviewed by Dimitri Glazkov. + + V8 WorkerContextExecutionProxy does not handle SharedWorkers + https://bugs.webkit.org/show_bug.cgi?id=31226 + + Now checks to see what type of context is active and creates the + appropriate wrapper (DEDICATEDWORKERCONTEXT vs SHAREDWORKERCONTEXT). + + Added support for converting to SharedWorkers and SharedWorkerContexts. + + Test: Existing layout tests cover this case (start passing in Chrome). + + * bindings/v8/WorkerContextExecutionProxy.cpp: + (WebCore::WorkerContextExecutionProxy::initContextIfNeeded): + Now generates the right type of DOMWrapper for SharedWorkerContexts. + (WebCore::WorkerContextExecutionProxy::convertToV8Object): + Added support for SHAREDWORKERCONTEXT. + (WebCore::WorkerContextExecutionProxy::convertEventTargetToV8Object): + Added support for SharedWorker and SharedWorkerContext. + +2009-11-08 Johnny Ding <johnnyding.webkit@gmail.com> + + Reviewed by Dimitri Glazkov. + + https://bugs.webkit.org/show_bug.cgi?id=31224 + [V8] Return StyleSheet object instead of HTMLStyleElement w/document.styleSheets named property getter. + + Test: fast/dom/StyleSheet/get-stylesheet-byname.html + + * bindings/v8/custom/V8StyleSheetListCustom.cpp: + (WebCore::NAMED_PROPERTY_GETTER): + +2009-11-08 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: "Search again" on scripts panel switches + to the script this search started with. + + https://bugs.webkit.org/show_bug.cgi?id=31243 + + * inspector/front-end/Panel.js: + (WebInspector.Panel.prototype.jumpToNextSearchResult): + +2009-11-08 Kent Tamura <tkent@chromium.org> + + Reviewed by Darin Adler. + + Simplify Icon interface. + https://bugs.webkit.org/show_bug.cgi?id=31154 + + - Remove Icon::createIconForFile(). createIconForFiles() covers + createIconForFile()'s role. + - Remove FileChooser::chooseIcon() + - Change the parameter types of FileChooser constructor and the + factory method, String -> const Vector<String>&, in order to + support initialization with multiple files. + - Remove the icon loading code in IconChromiumWin.cpp, which + doesn't work because of the sandbox. + + No tests because it's just a refactoring. + + * platform/FileChooser.cpp: + (WebCore::FileChooser::FileChooser): + (WebCore::FileChooser::create): + (WebCore::FileChooser::chooseFile): + (WebCore::FileChooser::chooseFiles): + * platform/FileChooser.h: + * platform/graphics/Icon.h: + * platform/graphics/chromium/IconChromiumLinux.cpp: + * platform/graphics/chromium/IconChromiumMac.cpp: + * platform/graphics/chromium/IconChromiumWin.cpp: + (WebCore::Icon::createIconForFiles): + * platform/graphics/gtk/IconGtk.cpp: + (WebCore::Icon::createIconForFiles): + * platform/graphics/haiku/IconHaiku.cpp: + * platform/graphics/mac/IconMac.mm: + (WebCore::Icon::createIconForFiles): + * platform/graphics/qt/IconQt.cpp: + (WebCore::Icon::createIconForFiles): + * platform/graphics/win/IconWin.cpp: + (WebCore::Icon::createIconForFiles): + * platform/graphics/wx/IconWx.cpp: + * rendering/RenderFileUploadControl.cpp: + (WebCore::RenderFileUploadControl::RenderFileUploadControl): + +2009-11-08 Daniel Bates <dbates@webkit.org> + + Reviewed by Adam Barth. + + https://bugs.webkit.org/show_bug.cgi?id=31098 + + Allows same-origin plugin-based content to load. + + Test: http/tests/security/xssAuditor/object-src-inject.html + + * page/XSSAuditor.cpp: + (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): Modified to call XSSAuditor::isSameOriginResource. + (WebCore::XSSAuditor::canLoadObject): Ditto. + (WebCore::XSSAuditor::canSetBaseElementURL): Ditto. + (WebCore::XSSAuditor::isSameOriginResource): Added. + * page/XSSAuditor.h: + +2009-11-08 David Levin <levin@chromium.org> + + Reviewed by NOBODY (chromium build fix). + + * platform/network/HTTPParsers.cpp: + (WebCore::parseDate): Changed this to not + use a date parser that needs ExecState passed. + +2009-11-08 David Levin <levin@chromium.org> + + Unreviewed build fix for chromium. + + * platform/graphics/skia/GraphicsContextSkia.cpp: + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::strokeRect): + +2009-11-08 David Levin <levin@chromium.org> + + Unreviewed build fix for chromium. + + Build fix for https://bugs.webkit.org/show_bug.cgi?id=31219 + Clean up GraphicsContext's current concept of ColorSpace + + * platform/graphics/skia/GraphicsContextSkia.cpp: + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::strokeRect): + +2009-11-08 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: [REGRESSION] committing style edit + clears elements panel selection. + + https://bugs.webkit.org/show_bug.cgi?id=31242 + + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype.update): + * inspector/front-end/StylesSidebarPane.js: + (WebInspector.StylePropertyTreeElement.prototype.): + (WebInspector.StylePropertyTreeElement.prototype): + +2009-11-08 Janne Koskinen <janne.p.koskinen@digia.com> + + Reviewed by Holger Freyther. + + ResourceRequest to be class instead of struct + https://bugs.webkit.org/show_bug.cgi?id=30670 + + Started as a compilation fix for Symbian where the compiler makes a distinction between + class and struct in function argument signatures. + Changed all forward declarations of ResourceRequest to have class in the forward + declaration instead of struct and changed the definition of ResourceRequest to be class + and added access qualifiers where missing. Additionally two references of friend + struct ResourceRequestBase changed to class instead. + + * history/HistoryItem.h: + * inspector/InspectorController.h: + * inspector/InspectorResource.h: + * loader/DocumentThreadableLoader.h: + * loader/FrameLoaderClient.h: + * loader/MainResourceLoader.h: + * loader/ResourceLoadNotifier.h: + * loader/SubresourceLoader.h: + * loader/SubresourceLoaderClient.h: + * loader/ThreadableLoader.h: + * loader/WorkerThreadableLoader.h: + * loader/appcache/ApplicationCache.h: + * loader/appcache/ApplicationCacheHost.h: + * platform/CrossThreadCopier.h: + * platform/network/ResourceHandle.h: + * platform/network/ResourceHandleClient.h: + * platform/network/ResourceRequestBase.h: + * platform/network/cf/ResourceRequest.h: + * platform/network/cf/ResourceRequestCFNet.h: + * platform/network/chromium/ResourceRequest.h: + * platform/network/curl/ResourceRequest.h: + * platform/network/qt/ResourceRequest.h: + * platform/network/soup/ResourceRequest.h: + * xml/XMLHttpRequest.h: + +2009-11-08 Dan Bernstein <mitz@apple.com> + + Reviewed by Simon Fraser. + + <rdar://problem/7363434> Crash inside RenderObject::localToAbsolute + below FrameView::layout + https://bugs.webkit.org/show_bug.cgi?id=31093 + + Test: fast/block/positioning/relative-positioned-inline-container.html + + In <http://trac.webkit.org/changeset/19148>, setStaticY() was changed + to mark the object for layout, doing so without marking its ancestors. + However, RenderBlock::skipLeadingWhitespace and + RenderBlock::skipTrailingWhitespace() call setStaticY() on a relative- + positioned inline container, causing it to be marked for layout without + ever going back to give it layout, and thus layout could end with a + dirty object still in the tree, leading to all sorts of badness. + + The fix is to revert setStaticY() to not marking the object dirty, and + instead do it in the call sites that require it, which are in + RenderBlock and RenderFlexibleBox. + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::adjustPositionedBlock): + * rendering/RenderFlexibleBox.cpp: + (WebCore::RenderFlexibleBox::layoutHorizontalBox): + (WebCore::RenderFlexibleBox::layoutVerticalBox): + * rendering/RenderLayer.cpp: + * rendering/RenderLayer.h: + (WebCore::RenderLayer::setStaticY): + +2009-11-07 Daniel Bates <dbates@webkit.org> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=20780 + + Fixes an issue where the onchange event handler is not fired when the + input field is autocompleted. + + We cannot test this using DRT since DRT cannot emulate autocompletion. + So, a manual-test is included. + + Tests: manual-tests/autocompletion-fire-onchange.html + + * manual-tests/autocompletion-fire-onchange.html: Added. + * rendering/RenderTextControl.cpp: + (WebCore::RenderTextControl::setInnerTextValue): + +2009-11-07 Benjamin Otte <otte@gnome.org> + + Reviewed by Holger Freyther. + + Mark redrawn areas on image surfaces as dirty. + + This is required to conform to the Cairo API, but is currently only + used by debugging tools like cairo-trace. + + * platform/graphics/cairo/ImageBufferCairo.cpp: + (WebCore::ImageBuffer::platformTransformColorSpace): + (WebCore::putImageData): + +2009-11-07 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=30878 + [Gtk] atk_text_get_text() fails in entries when the end_offset is -1 + + If the end_offset is -1, use the String length as the end_offset. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (webkit_accessible_text_get_text): + +2009-11-06 Beth Dakin <bdakin@apple.com> + + Reviewed by Adele Peterson. + + Fix for https://bugs.webkit.org/show_bug.cgi?id=31219 Clean up + GraphicsContext's current concept of ColorSpace + + ColorSpace is now called ColorType. The variables on the state we + appropriately re-named as well. I removed strokeColorSpace() and + fillColorSpace() from GraphicsContext since they were never called. + + * platform/graphics/GraphicsContext.cpp: + (WebCore::GraphicsContext::setStrokeColor): + (WebCore::GraphicsContext::setFillColor): + (WebCore::GraphicsContext::setStrokePattern): + (WebCore::GraphicsContext::setFillPattern): + (WebCore::GraphicsContext::setStrokeGradient): + (WebCore::GraphicsContext::setFillGradient): + * platform/graphics/GraphicsContext.h: + (WebCore::): + * platform/graphics/GraphicsContextPrivate.h: + (WebCore::GraphicsContextState::GraphicsContextState): + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::calculateDrawingMode): + (WebCore::GraphicsContext::drawPath): + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + (WebCore::GraphicsContext::strokeRect): + * platform/graphics/qt/GraphicsContextQt.cpp: + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::strokePath): + (WebCore::GraphicsContext::fillRect): + * platform/graphics/wince/GraphicsContextWince.cpp: + (WebCore::GraphicsContext::fillPath): + (WebCore::GraphicsContext::fillRect): + +2009-11-06 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Tim Hatcher. + + Fixes <http://webkit.org/b/31177>. + Web Inspector: Bind backspace to delete cookies and DOM Storage. + + Refactor editing code from DOMStorageDataGrid to DataGrid, so other + places in the inspector can use editing in DataGrid (added a FIXME for + some stuff that needs to be generalized). + + Also added deleting functionality to DataGrid, and implemented it for + Cookies and DOM Storage. The reason this patch is so big is because of + the refactoring of editing code, which won't be used yet in a cross-datagrid + way, but should be able to. + + Additionally, moved the callbacks members from DOMStorageDataGrid to + DOMStorageItemsView, which allowed us to delete DOMStorageDataGrid, to + make the architecture of DOM Storage look a lot more like the Cookies view. + + Lastly, added a preventDefault call in ElementsTreeOutline to prevent the + inspector from beeping at you when you delete an element. + + * WebCore.gypi: Removed DOMStorageDataGrid. + * WebCore.vcproj/WebCore.vcproj: Removed DOMStorageDataGrid. + * inspector/front-end/CookieItemsView.js: + (WebInspector.CookieItemsView.prototype.dataGridForCookies): + (WebInspector.CookieItemsView.prototype._deleteButtonClicked): + (WebInspector.CookieItemsView.prototype._deleteCookieCallback): + * inspector/front-end/DOMStorageDataGrid.js: Removed. + * inspector/front-end/DOMStorageItemsView.js: + (WebInspector.DOMStorageItemsView.prototype._dataGridForDOMStorageEntries): + (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked): + (WebInspector.DOMStorageItemsView.prototype._refreshButtonClicked): + (WebInspector.DOMStorageItemsView.prototype._editingCallback): + (WebInspector.DOMStorageItemsView.prototype.deleteSelectedRow): + (WebInspector.DOMStorageItemsView.prototype._deleteCallback): + * inspector/front-end/DataGrid.js: + (WebInspector.DataGrid): + (WebInspector.DataGrid.prototype._ondblclick): Moved from DOMStorageDataGrid to DataGrid + Refactoring. + (WebInspector.DataGrid.prototype._startEditingColumnOfDataGridNode): Ditto. + (WebInspector.DataGrid.prototype._startEditing): Ditto. + (WebInspector.DataGrid.prototype._editingCommitted.moveToNextIfNeeded): Ditto. + (WebInspector.DataGrid.prototype._editingCommitted): Ditto. + (WebInspector.DataGrid.prototype._editingCancelled): Ditto. + (WebInspector.DataGrid.prototype.handleKeyEvent): Added case for delete/backspace. + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeOutline.prototype.handleKeyEvent): Added preventDefault call. + * inspector/front-end/WebKit.qrc: Removed DOMStorageDataGrid. + * inspector/front-end/inspector.html: Removed DOMStorageDataGrid. + +2009-11-06 Geoffrey Garen <ggaren@apple.com> + + Qt build fix: added an ExecState parameter. + + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + (JSC::Bindings::convertQVariantToValue): + +2009-11-06 Geoffrey Garen <ggaren@apple.com> + + https://bugs.webkit.org/show_bug.cgi?id=31197 + Implemented a timezone cache not based on Mac OS X's notify_check API. + + Updated for JavaScriptCore internal API change. + + * bridge/qt/qt_runtime.cpp: + (JSC::Bindings::convertValueToQVariant): + (JSC::Bindings::convertQVariantToValue): Updated for namespace change. + + * platform/network/HTTPParsers.cpp: + (WebCore::parseDate): Pass 0 for ExecState, since we don't have one. + (This function probably shouldn't be using a JavaScript date parser + to begin with, but oh well.) + +2009-11-06 Anantanarayanan G Iyengar <ananta@chromium.org> + + Reviewed by Adam Barth. + + The associated webkit bug is https://bugs.webkit.org/show_bug.cgi?id=31067, + which affects Chromium only. + + Changes to V8HTMLDocumentCustom.cpp are as below:- + 1. The HTMLDocumentOpen function would cause a crash in Chromium if + there was no calling javascript context. We now check for this case + and pass in NULL to the HTMLDocument::open function which can handle + a NULL document parameter. + 2. The other functions like HTMLDocumentWrite, HTMLDocumentWriteln, etc + had ASSERTS for a NULL caller frame, which was bogus as it would crash + anyway. We now check for this case and return a failure. + + Changes to V8DOMWindowCustom.cpp are as below:- + 1. Instead of failing the window.open call made by NPAPI for lack of a + calling javascript context, we now use the entered context as the calling + context. + + Tests: plugins/document-open.html + plugins/window-open.html + + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + * bindings/v8/custom/V8HTMLDocumentCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-11-06 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + Geolocation error code UNKNOWN_ERROR is deprecated. + https://bugs.webkit.org/show_bug.cgi?id=31184 + + Remove this error code from PositionError, both for use from C++ code and from the JS object. + + Updated fast/dom/Geolocation/error.html to test this. + + * page/PositionError.h: Modified. + (WebCore::PositionError::): Remove ErrorCode::UNKNOWN_ERROR. + * page/PositionError.idl: Modified. Remove UNKNOWN_ERROR constant. + * page/Geolocation.cpp: Modified. + (WebCore::Geolocation::startRequest): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE. + * platform/gtk/GeolocationServiceGtk.cpp: Modified. + (WebCore::GeolocationServiceGtk::startUpdating): Replace UNKNOWN_ERROR with POSITION_UNAVAILABLE. + +2009-11-06 Dirk Schulze <krit@webkit.org> + + Reviewed by Nikolas Zimmermann. + + feMorphology filter is not implemented + [https://bugs.webkit.org/show_bug.cgi?id=5863] + + The Implementation of feMorphology. + + Test: We have allready a test for feMorphology + svg/W3C-SVG-1.1/filters-morph-01-f.svg + + * svg/graphics/filters/SVGFEMorphology.cpp: + (WebCore::FEMorphology::apply): + +2009-11-06 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + V8DOMWindowCustom.cpp is missing WEB_SOCKETS guard on include. + https://bugs.webkit.org/show_bug.cgi?id=31209 + + Build fix only. No new tests possible. + + * bindings/v8/custom/V8DOMWindowCustom.cpp: Modified. Added WEB_SOCKETS guard on inclue of WebSockets.h. + +2009-11-06 Drew Wilson <atwilson@chromium.org> + + Reviewed by David Levin. + + V8 bindings do not support SharedWorkers as event targets + https://bugs.webkit.org/show_bug.cgi?id=31199 + + No new tests because existing layout tests suffice (they currently + crash on Chromium) + + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::convertEventTargetToV8Object): + Added clause to create a DOM wrapper for SharedWorkers. + +2009-11-06 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth. + + Do not unnecessarly synchronzie in weak reference callbacks. + https://bugs.webkit.org/show_bug.cgi?id=31191 + + * bindings/v8/DOMData.h: + (WebCore::DOMData::handleWeakObject): + +2009-11-06 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Fix resource content search. + https://bugs.webkit.org/show_bug.cgi?id=31202 + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.refresh): + (WebInspector.AbstractTimelinePanel.prototype.removeItem): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelineGraph.prototype.refresh): + +2009-11-05 Yuta Kitamura <yutak@chromium.org> + + Reviewed by Eric Seidel. + + Fix ASSERT(currentStyle = renderStyle()). + https://bugs.webkit.org/show_bug.cgi?id=31152 + + * dom/Element.cpp: + (WebCore::Element::pseudoStyleCacheIsInvalid): We should have used "==" instead of "=". + +2009-11-05 Alpha Lam <hclam@chromium.org> + + Revert 50562 because it broke Chromium. Not reviewed since this is a build fix and revert. + + * bindings/v8/V8GCController.cpp: + (WebCore::V8GCController::gcEpilogue): + * bindings/v8/V8GCController.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluate): + (WebCore::V8Proxy::runScript): + (WebCore::V8Proxy::callFunction): + +2009-11-05 Adam Barth <abarth@webkit.org> + + Reviewed by Sam Weinig. + + Cross-domain access to stylesheet text should not be allowed + https://bugs.webkit.org/show_bug.cgi?id=20527 + + Check whether whether the current document can read the cssRules from + the style sheet. Firefox throws a security error here, but we return + null instead because that's what we usually do in these cases. + + Test: http/tests/security/cannot-read-cssrules-redirect.html + http/tests/security/cannot-read-cssrules.html + + * css/CSSStyleSheet.cpp: + (WebCore::CSSStyleSheet::cssRules): + +2009-11-05 Steve Block <steveblock@google.com> + + Reviewed by Eric Seidel. + + If the Geolocation service fails to start, invoke the error callback asynchronously. + https://bugs.webkit.org/show_bug.cgi?id=28276 + + All Geolocation callbacks must be invoked asynchronously. + See http://www.w3.org/TR/geolocation-API/#geolocation_interface + + No new tests possible with current LayoutTestController. + + * page/Geolocation.cpp: + (WebCore::Geolocation::getCurrentPosition): Modified. Asserts that startRequest returned a notifier. + (WebCore::Geolocation::watchPosition): Modified. Asserts that startRequest returned a notifier. + (WebCore::Geolocation::startRequest): Modified. If the Geolocation service fails to start, set a fatal error on the notifier. + +2009-11-05 Chris Jerdonek <chris.jerdonek@gmail.com> + + Reviewed by Eric Seidel. + + Removed the "this is part of the KDE project" comments from + all *.h, *.cpp, *.idl, and *.pm files. + + https://bugs.webkit.org/show_bug.cgi?id=31167 + + The maintenance and architecture page in the project wiki lists + this as a task. + + This change includes no changes or additions to test cases + since the change affects only comments. + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/scripts/IDLParser.pm: + * bindings/scripts/IDLStructure.pm: + * css/CSSInheritedValue.cpp: + * css/CSSInitialValue.cpp: + * css/CSSMediaRule.cpp: + * css/CSSNamespace.h: + * css/CSSProperty.cpp: + * css/CSSProperty.h: + * css/CSSRuleList.cpp: + * css/CSSRuleList.h: + * css/CSSSelector.h: + * css/CSSValueList.cpp: + * css/FontValue.cpp: + * css/MediaFeatureNames.cpp: + * css/MediaFeatureNames.h: + * css/Pair.h: + * css/SVGCSSStyleSelector.cpp: + * css/ShadowValue.cpp: + * css/StyleSheet.cpp: + * css/StyleSheetList.cpp: + * css/maketokenizer: + * dom/BeforeUnloadEvent.cpp: + * dom/BeforeUnloadEvent.h: + * dom/CSSMappedAttributeDeclaration.cpp: + * dom/EventNames.cpp: + * dom/EventTarget.cpp: + * dom/MappedAttributeEntry.h: + * dom/MouseRelatedEvent.h: + * dom/RangeException.h: + * dom/StyleElement.h: + * dom/Tokenizer.h: + * html/HTMLHeadElement.h: + * html/HTMLHeadingElement.cpp: + * html/HTMLHeadingElement.h: + * html/HTMLHtmlElement.h: + * html/HTMLImageLoader.h: + * html/HTMLMetaElement.h: + * html/HTMLModElement.cpp: + * html/HTMLModElement.h: + * html/HTMLOptionsCollection.cpp: + * html/HTMLPlugInElement.cpp: + * html/HTMLPreElement.cpp: + * html/HTMLPreElement.h: + * html/HTMLTableCellElement.cpp: + * html/HTMLTableCellElement.h: + * html/HTMLTableColElement.cpp: + * html/HTMLTableColElement.h: + * html/HTMLTablePartElement.cpp: + * html/HTMLTablePartElement.h: + * html/HTMLTitleElement.h: + * page/MouseEventWithHitTestResults.h: + * platform/StaticConstructors.h: + * platform/text/AtomicStringImpl.h: + * platform/text/qt/TextBreakIteratorQt.cpp: + * rendering/AutoTableLayout.h: + * rendering/CounterNode.cpp: + * rendering/EllipsisBox.cpp: + * rendering/EllipsisBox.h: + * rendering/FixedTableLayout.cpp: + * rendering/FixedTableLayout.h: + * rendering/HitTestRequest.h: + * rendering/HitTestResult.h: + * rendering/InlineRunBox.h: + * rendering/PointerEventsHitRules.cpp: + * rendering/PointerEventsHitRules.h: + * rendering/RenderBR.cpp: + * rendering/RenderBR.h: + * rendering/RenderButton.cpp: + * rendering/RenderButton.h: + * rendering/RenderFieldset.cpp: + * rendering/RenderFrameSet.cpp: + * rendering/RenderListItem.cpp: + * rendering/RenderTableRow.cpp: + * rendering/RenderView.h: + * rendering/RootInlineBox.h: + * rendering/SVGInlineTextBox.cpp: + * rendering/SVGInlineTextBox.h: + * rendering/TableLayout.h: + * rendering/break_lines.h: + * rendering/style/SVGRenderStyle.cpp: + * rendering/style/SVGRenderStyle.h: + * rendering/style/SVGRenderStyleDefs.cpp: + * rendering/style/SVGRenderStyleDefs.h: + * svg/GradientAttributes.h: + * svg/LinearGradientAttributes.h: + * svg/PatternAttributes.h: + * svg/RadialGradientAttributes.h: + * svg/SVGAElement.cpp: + * svg/SVGAngle.idl: + * svg/SVGAnimateColorElement.cpp: + * svg/SVGAnimateColorElement.h: + * svg/SVGAnimateElement.cpp: + * svg/SVGAnimateElement.h: + * svg/SVGAnimateTransformElement.h: + * svg/SVGAnimatedPathData.cpp: + * svg/SVGAnimatedPathData.h: + * svg/SVGAnimatedPoints.cpp: + * svg/SVGAnimatedPoints.h: + * svg/SVGAnimationElement.cpp: + * svg/SVGCircleElement.cpp: + * svg/SVGClipPathElement.cpp: + * svg/SVGColor.cpp: + * svg/SVGColor.idl: + * svg/SVGComponentTransferFunctionElement.cpp: + * svg/SVGComponentTransferFunctionElement.h: + * svg/SVGCursorElement.cpp: + * svg/SVGDefsElement.cpp: + * svg/SVGDescElement.cpp: + * svg/SVGDescElement.h: + * svg/SVGDocument.idl: + * svg/SVGElement.idl: + * svg/SVGElementInstanceList.cpp: + * svg/SVGElementInstanceList.h: + * svg/SVGEllipseElement.cpp: + * svg/SVGExternalResourcesRequired.cpp: + * svg/SVGFEBlendElement.cpp: + * svg/SVGFEBlendElement.h: + * svg/SVGFEColorMatrixElement.cpp: + * svg/SVGFEColorMatrixElement.h: + * svg/SVGFEComponentTransferElement.cpp: + * svg/SVGFEComponentTransferElement.h: + * svg/SVGFECompositeElement.cpp: + * svg/SVGFECompositeElement.h: + * svg/SVGFEFloodElement.cpp: + * svg/SVGFEFloodElement.h: + * svg/SVGFEFuncAElement.cpp: + * svg/SVGFEFuncAElement.h: + * svg/SVGFEFuncBElement.cpp: + * svg/SVGFEFuncBElement.h: + * svg/SVGFEFuncGElement.cpp: + * svg/SVGFEFuncGElement.h: + * svg/SVGFEFuncRElement.cpp: + * svg/SVGFEFuncRElement.h: + * svg/SVGFEGaussianBlurElement.cpp: + * svg/SVGFEGaussianBlurElement.h: + * svg/SVGFEImageElement.cpp: + * svg/SVGFEMergeElement.cpp: + * svg/SVGFEMergeElement.h: + * svg/SVGFEMergeNodeElement.cpp: + * svg/SVGFEOffsetElement.cpp: + * svg/SVGFEOffsetElement.h: + * svg/SVGFETileElement.cpp: + * svg/SVGFETileElement.h: + * svg/SVGFETurbulenceElement.cpp: + * svg/SVGFETurbulenceElement.h: + * svg/SVGFilterElement.cpp: + * svg/SVGGElement.cpp: + * svg/SVGGradientElement.cpp: + * svg/SVGHKernElement.idl: + * svg/SVGLangSpace.cpp: + * svg/SVGLangSpace.h: + * svg/SVGLength.cpp: + * svg/SVGLength.h: + * svg/SVGLength.idl: + * svg/SVGLengthList.cpp: + * svg/SVGLengthList.h: + * svg/SVGLineElement.cpp: + * svg/SVGLinearGradientElement.h: + * svg/SVGList.h: + * svg/SVGListTraits.h: + * svg/SVGLocatable.h: + * svg/SVGMaskElement.cpp: + * svg/SVGMatrix.idl: + * svg/SVGMetadataElement.cpp: + * svg/SVGMetadataElement.h: + * svg/SVGMetadataElement.idl: + * svg/SVGNumber.idl: + * svg/SVGNumberList.cpp: + * svg/SVGNumberList.h: + * svg/SVGPaint.cpp: + * svg/SVGPathElement.cpp: + * svg/SVGPathSeg.h: + * svg/SVGPathSegArc.cpp: + * svg/SVGPathSegArc.h: + * svg/SVGPathSegClosePath.cpp: + * svg/SVGPathSegClosePath.h: + * svg/SVGPathSegCurvetoCubic.cpp: + * svg/SVGPathSegCurvetoCubic.h: + * svg/SVGPathSegCurvetoCubicSmooth.cpp: + * svg/SVGPathSegCurvetoCubicSmooth.h: + * svg/SVGPathSegCurvetoQuadratic.cpp: + * svg/SVGPathSegCurvetoQuadratic.h: + * svg/SVGPathSegCurvetoQuadraticSmooth.cpp: + * svg/SVGPathSegCurvetoQuadraticSmooth.h: + * svg/SVGPathSegLineto.cpp: + * svg/SVGPathSegLineto.h: + * svg/SVGPathSegLinetoHorizontal.cpp: + * svg/SVGPathSegLinetoHorizontal.h: + * svg/SVGPathSegLinetoVertical.cpp: + * svg/SVGPathSegLinetoVertical.h: + * svg/SVGPathSegMoveto.cpp: + * svg/SVGPathSegMoveto.h: + * svg/SVGPatternElement.cpp: + * svg/SVGPoint.idl: + * svg/SVGPointList.cpp: + * svg/SVGPointList.h: + * svg/SVGPolyElement.cpp: + * svg/SVGPolygonElement.cpp: + * svg/SVGPolygonElement.h: + * svg/SVGPolylineElement.cpp: + * svg/SVGPolylineElement.h: + * svg/SVGPreserveAspectRatio.cpp: + * svg/SVGPreserveAspectRatio.h: + * svg/SVGRadialGradientElement.h: + * svg/SVGRect.idl: + * svg/SVGRectElement.cpp: + * svg/SVGRenderingIntent.h: + * svg/SVGSVGElement.idl: + * svg/SVGScriptElement.cpp: + * svg/SVGSetElement.cpp: + * svg/SVGSetElement.h: + * svg/SVGStopElement.cpp: + * svg/SVGStringList.cpp: + * svg/SVGStringList.h: + * svg/SVGStylable.cpp: + * svg/SVGStylable.h: + * svg/SVGStyleElement.cpp: + * svg/SVGStyleElement.h: + * svg/SVGStyledElement.h: + * svg/SVGStyledLocatableElement.cpp: + * svg/SVGStyledLocatableElement.h: + * svg/SVGStyledTransformableElement.cpp: + * svg/SVGStyledTransformableElement.h: + * svg/SVGSwitchElement.cpp: + * svg/SVGSymbolElement.cpp: + * svg/SVGTRefElement.cpp: + * svg/SVGTSpanElement.cpp: + * svg/SVGTSpanElement.h: + * svg/SVGTests.h: + * svg/SVGTextElement.cpp: + * svg/SVGTextElement.h: + * svg/SVGTextPathElement.cpp: + * svg/SVGTextPositioningElement.cpp: + * svg/SVGTextPositioningElement.h: + * svg/SVGTitleElement.cpp: + * svg/SVGTitleElement.h: + * svg/SVGTransform.cpp: + * svg/SVGTransform.h: + * svg/SVGTransform.idl: + * svg/SVGTransformList.cpp: + * svg/SVGTransformList.h: + * svg/SVGTransformable.h: + * svg/SVGURIReference.h: + * svg/SVGUnitTypes.h: + * svg/SVGUseElement.cpp: + * svg/SVGViewElement.cpp: + * svg/SVGZoomAndPan.cpp: + * svg/SVGZoomAndPan.h: + * svg/SVGZoomEvent.cpp: + +2009-11-05 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Dimitri Glazkov. + + REGRESSION Clean up security origin usage in DOM Storage. + https://bugs.webkit.org/show_bug.cgi?id=31188 + + Clean up security origin usage in DOM Storage. This fixes a bug in my + refactoring here: https://bugs.webkit.org/show_bug.cgi?id=31149 + + Instead of having StorageAreaSync's constructor (which is called in the + constructor for StorageAreaImpl) calling a method on StoargeAreaImpl to get the + database identifier, simply have StorageAreaImpl pass the identifier into + StorageAreaSync. + + No test because there's no change in externally observable behavior. + + * storage/StorageAreaImpl.cpp: + (WebCore::StorageAreaImpl::StorageAreaImpl): + * storage/StorageAreaImpl.h: + * storage/StorageAreaSync.cpp: + (WebCore::StorageAreaSync::create): + (WebCore::StorageAreaSync::StorageAreaSync): + * storage/StorageAreaSync.h: + +2009-11-05 Scott Violet <sky@google.com> + + Reviewed by Dimitri Glazkov. + + Need notification of scrolling frame + https://bugs.webkit.org/show_bug.cgi?id=31145 + + Adds FrameLoaderClient::didChangeScrollOffset that is called when + the frame scrolls. This will be used to know when history state + needs to be updated. + + * loader/FrameLoaderClient.h: + (WebCore::FrameLoaderClient::didChangeScrollOffset): + * page/FrameView.cpp: + (WebCore::FrameView::valueChanged): + +2009-11-05 Kenneth Russell <kbr@google.com> + + Reviewed by Dimitri Glazkov. + + [V8] Update bindings to use new API for external arrays + https://bugs.webkit.org/show_bug.cgi?id=31181 + + No new tests; covered by existing WebGL tests. + + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::setIndexedPropertiesToExternalArray): + (WebCore::V8DOMWrapper::getTemplate): + (WebCore::V8DOMWrapper::convertToV8Object): + * bindings/v8/V8DOMWrapper.h: + * bindings/v8/custom/V8CanvasArrayCustom.h: + (WebCore::constructCanvasArray): + +2009-11-05 Alpha Lam <hclam@chromium.org> + + Not reviewed, Chromium build fix. + + 50561 introduces a custom method for SVGMatrix, we need to implement + this in V8. + + * bindings/v8/custom/V8CustomBinding.h: + Adding definition for V8SVGMatrixMultiply. + * bindings/v8/custom/V8SVGMatrixCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + Implement V8SVGMatrixMultiply according to the same method in JSC. + +2009-11-05 Jeremy Orlow <jorlow@chromium.org> + + Revert 50569 since it broke QT. Build fix and just a revert, so no review. + + * page/DOMWindow.cpp: + (WebCore::DOMWindow::sessionStorage): + * page/Settings.cpp: + (WebCore::Settings::Settings): + (WebCore::Settings::setSessionStorageEnabled): + * page/Settings.h: + (WebCore::Settings::sessionStorageEnabled): + +2009-11-05 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + REGRESSION: Web Inspector doesn't show CSS rules properly for iframes + + https://bugs.webkit.org/show_bug.cgi?id=30884 + + Test: inspector/styles-iframe.html + + * inspector/front-end/DOMAgent.js: + (WebInspector.DOMNode): + * inspector/front-end/InjectedScript.js: + (InjectedScript.getStyles): + (InjectedScript.getComputedStyle): + (InjectedScript.addStyleSelector): + * inspector/front-end/TestController.js: + (WebInspector.TestController.prototype.notifyDone): + (WebInspector.TestController.prototype.runAfterPendingDispatches): + (WebInspector.evaluateForTestInFrontend.invokeMethod): + (WebInspector.evaluateForTestInFrontend): + +2009-11-05 Vitaly Repeshko <vitalyr@chromium.org> + + Reviewed by Geoffrey Garen and Dimitri Glazkov. + + Rehashing of EventListenerMap leads to loss of EvenListenerList. + https://bugs.webkit.org/show_bug.cgi?id=31027 + + Tested by new fast/events/event-listener-map-rehash-crash.html. + + EventListenerMap modified to store pointers to listener vectors: + * dom/EventTarget.cpp: + (WebCore::EventTargetData::~EventTargetData): + (WebCore::EventTarget::addEventListener): + (WebCore::EventTarget::removeEventListener): + (WebCore::EventTarget::fireEventListeners): + (WebCore::EventTarget::getEventListeners): + (WebCore::EventTarget::removeAllEventListeners): + * dom/EventTarget.h: + + Usages updated after interface changes: + * inspector/InspectorDOMAgent.cpp: + (WebCore::InspectorDOMAgent::getEventListenersForNode): + * svg/SVGUseElement.cpp: + (WebCore::SVGUseElement::transferEventListenersToShadowTree): + +2009-11-05 Dan Kegel <dank@chromium.org> + + Reviewed by Dmitri Titov. + + Add missing initialization for m_createdByParser. + https://bugs.webkit.org/show_bug.cgi?id=31089 + + Test: fast/dom/beforeload/pi-before-load.xhtml in Valgrind + + * dom/ProcessingInstruction.cpp: + (WebCore::ProcessingInstruction::ProcessingInstruction): + +2009-11-04 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Adam Barth. + + DOM Storage runtime flag changes + https://bugs.webkit.org/show_bug.cgi?id=30602 + + Part 2/2. + + Revert my changes to Settings and instead implement DOM Storage enabling via + the methods agreed upon in https://bugs.webkit.org/show_bug.cgi?id=30240 + + This stuff was (intentionally) never exposed to web pages or DRT, so there's no + LayoutTest visible changes and thus no tests. + + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_RUNTIME_ENABLER): + * page/DOMWindow.cpp: + (WebCore::DOMWindow::sessionStorage): + * page/DOMWindow.idl: + * page/Settings.cpp: + (WebCore::Settings::Settings): + * page/Settings.h: + * storage/Storage.cpp: + (WebCore::Storage::setLocalStorageAvailable): + (WebCore::Storage::localStorageAvailable): + (WebCore::Storage::setSessionStorageAvailable): + (WebCore::Storage::sessionStorageAvailable): + * storage/Storage.h: + +2009-11-05 Jian Li <jianli@chromium.org> + + Reviewed by Pavel Feldman. + + Bug 31108 - [V8] REGRESSION: Pause on exception is broken + https://bugs.webkit.org/show_bug.cgi?id=31108 + + * bindings/v8/V8AbstractEventListener.cpp: + (WebCore::V8AbstractEventListener::invokeEventHandler): + * bindings/v8/V8Utilities.cpp: + (WebCore::reportException): + +2009-11-05 Jian Li <jianli@chromium.org> + + Reviewed by Dmitri Titov. + + We should not bubble up events if we drag something to an iframe that + has an invalid source. + https://bugs.webkit.org/show_bug.cgi?id=30469 + + Test: http/tests/misc/bubble-drag-events.html + + * page/EventHandler.cpp: + (WebCore::EventHandler::handleDragAndDropForTarget): + (WebCore::EventHandler::updateDragAndDrop): + (WebCore::EventHandler::cancelDragAndDrop): + (WebCore::EventHandler::performDragAndDrop): + * page/EventHandler.h: + (WebCore::EventHandler::): + +2009-11-05 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: speed up Timelines Clear by a factor of thousands. + + https://bugs.webkit.org/show_bug.cgi?id=31160 + + * inspector/front-end/utilities.js: + (Element.prototype.removeChildren): + +2009-11-05 Anton Muhin <antonm@chromium.org> + + Reviewed by Adam Barth. + + If high memory usage is detected, hint to V8 that it might be due + to external objects retained by V8 objects. + https://bugs.webkit.org/show_bug.cgi?id=31051 + + * bindings/v8/V8GCController.cpp: + (WebCore::GetMemoryUsageInMB): + (WebCore::V8GCController::gcEpilogue): + (WebCore::V8GCController::checkMemoryUsage): + * bindings/v8/V8GCController.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluate): + (WebCore::V8Proxy::runScript): + (WebCore::V8Proxy::callFunction): + +2009-11-05 Jeff Schiller <codedread@gmail.com> + + Reviewed by Simon Fraser. + + Correct order of matrix multiplication for SVGMatrix. + https://bugs.webkit.org/show_bug.cgi?id=16062 + + Test: svg/dom/SVGMatrix-interface.xhtml + + * bindings/js/JSSVGMatrixCustom.cpp: + (WebCore::JSSVGMatrix::multiply): + * svg/SVGMatrix.idl: + +2009-11-04 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Make resource-related records in timeline + actually take some time. + + https://bugs.webkit.org/show_bug.cgi?id=31139 + + * English.lproj/localizedStrings.js: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype._getRecordDetails): + (WebInspector.TimelinePanel.prototype.reset): + +2009-11-04 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + Simplify LocalStorageThread + https://bugs.webkit.org/show_bug.cgi?id=30935 + + This is a re-submit of 50519. LocalStorageTask should have never been ref + counted. I've removed that and switched a PassRefPtr over to a PassOwnPtr. + + On LocalStoragethread: Remove reference counting. Get rid of locking. Make some + of the method names a bit more clear. Assert proper thread usage. Join rather + than detaching the thread and doing an ad-hoc form of join. Avoid touching + variables on the background thread when simple to do so. Also create a generic + scheduleTask function rather than one for each task. + + No behavior should have changed. + + * storage/LocalStorageTask.h: + * storage/LocalStorageThread.cpp: + (WebCore::LocalStorageThread::create): + (WebCore::LocalStorageThread::LocalStorageThread): + (WebCore::LocalStorageThread::~LocalStorageThread): + (WebCore::LocalStorageThread::start): + (WebCore::LocalStorageThread::threadEntryPointCallback): + (WebCore::LocalStorageThread::threadEntryPoint): + (WebCore::LocalStorageThread::scheduleTask): + (WebCore::LocalStorageThread::terminate): + (WebCore::LocalStorageThread::performTerminate): + * storage/LocalStorageThread.h: + * storage/StorageSyncManager.cpp: + (WebCore::StorageSyncManager::StorageSyncManager): + (WebCore::StorageSyncManager::~StorageSyncManager): + (WebCore::StorageSyncManager::scheduleImport): + (WebCore::StorageSyncManager::scheduleSync): + * storage/StorageSyncManager.h: + +2009-11-04 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + Calling databaseIdentifier on LocalStorage's background thread is not safe. + https://bugs.webkit.org/show_bug.cgi?id=31149 + + Calling SecurityOrigin::databaseIdentifier on LocalStorage's background thread + is not safe. databaseIdentifier does a bunch of string concatenation which + ref-counts StringImpls in some cases. This was caught by valgrind thread + sanitizer: http://code.google.com/p/chromium/issues/detail?id=25645 + + There's no way to test for such racyness, unfortunately. + + * storage/StorageAreaSync.cpp: + (WebCore::StorageAreaSync::StorageAreaSync): + (WebCore::StorageAreaSync::performImport): + * storage/StorageAreaSync.h: + * storage/StorageSyncManager.cpp: + (WebCore::StorageSyncManager::fullDatabaseFilename): + * storage/StorageSyncManager.h: + +2009-11-03 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + Clean up StorageAreaSync + https://bugs.webkit.org/show_bug.cgi?id=31100 + + Major fixes: Break the ref count cycle for StorageArea on the main + thread, not the background thread since the latter is not safe. + Length() needs to block on the import completing. + + Small fixes: setItem needs to handle the copy on write case even if it + has an exception. setItem and removeItem should just bail from the + the function if the value hasn't changed rather than wrapping the end + in an if block. Clear should only send an event if it wasn't already + cleared. StorageAreaSync should assert that the final sync was + scheduled. + + * storage/StorageAreaImpl.cpp: + (WebCore::StorageAreaImpl::length): + Forgot to block on the import. + (WebCore::StorageAreaImpl::key): + (WebCore::StorageAreaImpl::setItem): + Handle the copy on write case even when there's an exception. + (WebCore::StorageAreaImpl::removeItem): + (WebCore::StorageAreaImpl::clear): + * storage/StorageAreaSync.cpp: + (WebCore::StorageAreaSync::~StorageAreaSync): + (WebCore::StorageAreaSync::scheduleFinalSync): + (WebCore::StorageAreaSync::performImport): + (WebCore::StorageAreaSync::markImported): + (WebCore::StorageAreaSync::blockUntilImportComplete): + * storage/StorageAreaSync.h: + +2009-11-05 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Eric Seidel. + + Allow custom memory allocation control for WebCore's CachedResource + https://bugs.webkit.org/show_bug.cgi?id=31114 + + Inherits CachedResource class from Noncopyable because its (its child + class) CachedCSSStyleSheet instantiated by 'new' in WebCore/loader/Cache.cpp:75 + and it is no need to be copyable. + + * loader/CachedResource.h: + +2009-11-04 Mark Mentovai <mark@chromium.org> + + Reviewed by Mark Rowe. + + Separate the difference between HAVE(CGINTERPOLATION_MEDIUM), which + is true when building on 10.6 or later, and USE(CGINTERPOLATION_MEDIUM) + which is true when targeting 10.6 or later. + + HAVE(CGINTERPOLATION_MEDIUM) indicates that kCGInterpolationMedium + is present in the CGInterpolationQuality enum, and must be handled + by a switch that has cases for each enumerated value. + + USE(CGINTERPOLATION_MEDIUM) indicates that the product will only run + on 10.6 or later, and that CoreGraphics will understand when + InterpolationMedium is mapped to kCGInterpolationMedium at runtime. + + * platform/graphics/cg/GraphicsContextCG.cpp: + (WebCore::GraphicsContext::setImageInterpolationQuality): + (WebCore::GraphicsContext::imageInterpolationQuality): + +2009-11-04 Dan Kegel <dank@chromium.org> + + Reviewed by Alexey Proskuryakov. + + Fix buffer overrun in WebCore::Page::userStyleSheetLocationChanged() + https://bugs.webkit.org/show_bug.cgi?id=31138 + + Test: LayoutTests/platform/mac/fast/loader/user-stylesheet-fast-path.html in Valgrind + + * page/Page.cpp: + (WebCore::Page::userStyleSheetLocationChanged): + +2009-11-04 Timothy Hatcher <timothy@apple.com> + + Update the Web Inspector Timeline panel to better match the mock-up. + + https://bugs.webkit.org/show_bug.cgi?id=31150 + + Reviewed by Pavel Feldman. + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._getRecordDetails): + (WebInspector.TimelinePanel.prototype._dragWindow): + (WebInspector.TimelinePanel.prototype._resizeWindowLeft): + (WebInspector.TimelinePanel.prototype._resizeWindowRight): + (WebInspector.TimelineCategoryTreeElement.prototype.onattach): + (WebInspector.TimelineRecordTreeElement.prototype.onattach): + (WebInspector.TimelineRecordTreeElement.prototype.refresh): + (WebInspector.TimelineCategoryGraph): + * inspector/front-end/inspector.css: + +2009-11-05 Justin Garcia <justin.garcia@apple.com> + + Reviewed by Adele Peterson. + + https://bugs.webkit.org/show_bug.cgi?id=25439 + Deleting when in front of a block image removes character from previous paragraph + + Added editing/deleting/25439-{1,2,3}.html + + * editing/DeleteSelectionCommand.cpp: + (WebCore::DeleteSelectionCommand::mergeParagraphs): Block images, tables and HRs cannot + be made inline with other content. Instead of merging, just move the caret to just before + the selection we deleted. + * editing/htmlediting.cpp: + (WebCore::firstInSpecialElement): Added a FIXME. This function begins iterating up from pos.node(), which + doesn't necessarily contain pos (suppose pos was [img, 0]). + (WebCore::lastInSpecialElement): Ditto. + (WebCore::isRenderedAsNonInlineTableImageOrHR): Moved from visible_units.cpp. Added a check for non-inline images. + * editing/htmlediting.h: + * editing/visible_units.cpp: + (WebCore::startOfParagraph): Use moved/renamed function. Removed FIXME. The problem causing + 5027702 is now squarely in first/lastInSpecialElement + (WebCore::endOfParagraph): Ditto. + +2009-11-04 Enrica Casucci <enrica@apple.com> + + Reviewed by Adele Peterson. + + Hang in Mail on attempting to change indent level. + <rdar://problem/7131805> + https://bugs.webkit.org/show_bug.cgi?id=31127 + + The hang was caused by an infinite loop inside outdentRegion. + The code did not account for the fact that, when a list item + contains multiple paragraphs, outdent moves all paragraphs at + once, invalidating some of the positions we keep track of in the loop. + Some code refactoring has also been done to minimize duplicated code. + + Test: editing/execCommand/outdent-multiparagraph-list.html + + * editing/IndentOutdentCommand.cpp: + (WebCore::IndentOutdentCommand::indentRegion): Moved code in common with + outdentRegion to doApply. + (WebCore::IndentOutdentCommand::outdentRegion): Fixed endless loop. + (WebCore::IndentOutdentCommand::doApply): Some code refactoring. + * editing/IndentOutdentCommand.h: Added VisiblePosition parameters to + indentRegion and outdentRegion. + +2009-11-04 Alpha Lam <hclam@chromium.org> + + Reviewed by Eric Carlson. + + Volume slider doesn't have a thumb + https://bugs.webkit.org/show_bug.cgi?id=31135 + + Fixed an incorrect if statement that prevents volume slider + being updated. + + The statement checks if the slider value equals to the current + volume value of the media control to avoid updating the volume + slider. Updating the volume slider control shouldn't be within + this condition because we explicitly set them to be equals + during creation of the controls and also when mouse events are + received on the volume control. + + No new tests because existing code breaks: + LayoutTests/media/video-volume-slider.html + + It should now start passing on Chromium. + + * rendering/MediaControlElements.cpp: + (WebCore::MediaControlVolumeSliderElement::update): + Update the volume slider regardless of the current volume value + of the media control. + +2009-11-04 Jenn Braithwaite <jennb@chromium.org> + + Reviewed by David Levin. + + Need to properly disable applicationCache at runtime + https://bugs.webkit.org/show_bug.cgi?id=30417 + + Adding applicationCacheEnabled bit to V8 RuntimeEnabledFeatures. + + No new exposed functionality, so no new tests. + + * bindings/v8/RuntimeEnabledFeatures.cpp: + * bindings/v8/RuntimeEnabledFeatures.h: + (WebCore::RuntimeEnabledFeatures::setApplicationCacheEnabled): + (WebCore::RuntimeEnabledFeatures::applicationCacheEnabled): + * bindings/v8/custom/V8CustomBinding.h: + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_RUNTIME_ENABLER): + * page/DOMWindow.idl: + +2009-11-04 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=31143 + Assertion failure in CredentialStorage::set() when proxy credentials are being set + + No test, cannot test proxy behavior. + + * platform/network/CredentialStorage.cpp: (WebCore::CredentialStorage::set): Account for the + possibility of null url. Release mode changes are likely inconsequential - e.g. we used to + add "://" to origin set, which is weird, but safe. + +2009-11-04 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Leftover Breakpoints in the Sidebar Pane + https://bugs.webkit.org/show_bug.cgi?id=30659 + + No new tests. + + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype.addScript): + +2009-11-04 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> + + Reviewed by Timothy Hatcher. + + WebInspector: Use a different method to identify the webkit port in + InspectorBackent::platform(). + This corrects the inspector expected behavior with Qt on Windows. + https://bugs.webkit.org/show_bug.cgi?id=31116 + + * inspector/InspectorBackend.cpp: + (WebCore::InspectorBackend::platform): + (WebCore::InspectorBackend::port): + * inspector/InspectorBackend.h: + * inspector/InspectorBackend.idl: + * inspector/front-end/InspectorControllerStub.js: + (.WebInspector.InspectorControllerStub.prototype.port): + * inspector/front-end/inspector.css: + * inspector/front-end/inspector.js: + (WebInspector.loaded): + (WebInspector.toolbarDragStart): + +2009-11-04 Benjamin Otte <otte@gnome.org> + + Reviewed by Gustavo Noronha. + + Update Cairo requirement to 1.6. + + Also remove all conditional code and workarounds for older versions of + Cairo. + In particular, gain image quality by removing the use of + CAIRO_FILTER_NEAREST when rendering images and use the default + bilinear filter instead. + https://bugs.webkit.org/show_bug.cgi?id=19266 + + * platform/graphics/cairo/GraphicsContextCairo.cpp: + (WebCore::GraphicsContext::clipOut): + * platform/graphics/cairo/ImageCairo.cpp: + (WebCore::BitmapImage::draw): + (WebCore::BitmapImage::drawPattern): + * platform/graphics/cairo/PathCairo.cpp: + (WebCore::Path::isEmpty): + (WebCore::Path::boundingRect): + * platform/gtk/RenderThemeGtk.cpp: + (WebCore::paintMozWidget): + +2009-11-04 Kevin Ollivier <kevino@theolliviers.com> + + wx build fix. Restore removed string conversion after cleanup. + + * platform/graphics/wx/FontPlatformDataWx.cpp: + (WebCore::FontPlatformData::computeHash): + +2009-11-04 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + Need to implement ARIA role="combobox" + https://bugs.webkit.org/show_bug.cgi?id=31096 + + Test: accessibility/aria-combobox.html + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::isComboBox): + (WebCore::AccessibilityObject::isExpanded): + (WebCore::AccessibilityObject::expandObject): + (WebCore::AccessibilityObject::increment): + (WebCore::AccessibilityObject::decrement): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::expandObject): + (WebCore::AccessibilityRenderObject::isExpanded): + (WebCore::createARIARoleMap): + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + (-[AccessibilityObjectWrapper accessibilityAttributeNames]): + (-[AccessibilityObjectWrapper accessibilityAttributeValue:]): + (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]): + * html/HTMLAttributeNames.in: + +2009-11-04 Kelly Norton <knorton@google.com> + + Reviewed by Pavel Feldman. + + Fixes naming inconsistencies in TimelineRecordFactory. + https://bugs.webkit.org/show_bug.cgi?id=31132 + + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::willPaint): + (WebCore::InspectorTimelineAgent::willChangeXHRReadyState): + (WebCore::InspectorTimelineAgent::willLoadXHR): + (WebCore::InspectorTimelineAgent::willEvaluateScript): + (WebCore::InspectorTimelineAgent::willSendResourceRequest): + (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): + (WebCore::InspectorTimelineAgent::didFinishLoadingResource): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createXHRReadyStateChangeRecord): + (WebCore::TimelineRecordFactory::createXHRLoadRecord): + (WebCore::TimelineRecordFactory::createEvaluateScriptRecord): + (WebCore::TimelineRecordFactory::createMarkTimelineRecord): + (WebCore::TimelineRecordFactory::createResourceSendRequestRecord): + (WebCore::TimelineRecordFactory::createResourceReceiveResponseRecord): + (WebCore::TimelineRecordFactory::createResourceFinishRecord): + (WebCore::TimelineRecordFactory::createPaintRecord): + * inspector/TimelineRecordFactory.h: + +2009-11-04 Eric Z. Ayers <zundel@google.com> + + Reviewed by Pavel Feldman. + + Followon to bug 31080, which protects Timeline + instrumentation in the case where InspectorTimelineAgent + is enabled or disabled during an event dispatch. + + https://bugs.webkit.org/show_bug.cgi?id=31121 + + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluate): + * dom/Document.cpp: + (WebCore::Document::recalcStyle): + * dom/Node.cpp: + (WebCore::Node::dispatchGenericEvent): + * html/HTMLTokenizer.cpp: + (WebCore::HTMLTokenizer::write): + * page/DOMWindow.cpp: + (WebCore::DOMWindow::inspectorTimelineAgent): + (WebCore::DOMWindow::dispatchEvent): + * page/DOMWindow.h: + * page/FrameView.cpp: + (WebCore::FrameView::layout): + (WebCore::FrameView::paintContents): + * xml/XMLHttpRequest.cpp: + (WebCore::XMLHttpRequest::callReadyStateChangeListener): + +2009-11-04 Jeremy Orlow <jorlow@chromium.org> + + Revert 50519 while I work out what went wrong. + + * storage/LocalStorageThread.cpp: + (WebCore::LocalStorageThread::create): + (WebCore::LocalStorageThread::LocalStorageThread): + (WebCore::LocalStorageThread::start): + (WebCore::LocalStorageThread::localStorageThreadStart): + (WebCore::LocalStorageThread::localStorageThread): + (WebCore::LocalStorageThread::scheduleImport): + (WebCore::LocalStorageThread::scheduleSync): + (WebCore::LocalStorageThread::terminate): + (WebCore::LocalStorageThread::performTerminate): + * storage/LocalStorageThread.h: + * storage/StorageSyncManager.cpp: + (WebCore::StorageSyncManager::StorageSyncManager): + (WebCore::StorageSyncManager::~StorageSyncManager): + (WebCore::StorageSyncManager::scheduleImport): + (WebCore::StorageSyncManager::scheduleSync): + * storage/StorageSyncManager.h: + +2009-11-04 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Add basic support for resource events and marks. + Couple of drive-by fixes. Enabling the panel! + + https://bugs.webkit.org/show_bug.cgi?id=31130 + + * English.lproj/localizedStrings.js: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype._getRecordDetails): + (WebInspector.TimelinePanel.prototype.reset): + (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClicked): + (WebInspector.TimelineRecordTreeElement.prototype.onattach): + * inspector/front-end/inspector.js: + (WebInspector._createPanels): + +2009-11-03 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + Simplify LocalStorageThread + https://bugs.webkit.org/show_bug.cgi?id=30935 + + On LocalStoragethread: Remove reference counting. Get rid of locking. Make some + of the method names a bit more clear. Assert proper thread usage. Join rather + than detaching the thread and doing an ad-hoc form of join. Avoid touching + variables on the background thread when simple to do so. Also create a generic + scheduleTask function rather than one for each task. + + No behavior should have changed. + + * storage/LocalStorageThread.cpp: + (WebCore::LocalStorageThread::create): + (WebCore::LocalStorageThread::LocalStorageThread): + (WebCore::LocalStorageThread::~LocalStorageThread): + (WebCore::LocalStorageThread::start): + (WebCore::LocalStorageThread::threadEntryPointCallback): + (WebCore::LocalStorageThread::threadEntryPoint): + (WebCore::LocalStorageThread::scheduleTask): + (WebCore::LocalStorageThread::terminate): + (WebCore::LocalStorageThread::performTerminate): + * storage/LocalStorageThread.h: + * storage/StorageSyncManager.cpp: + (WebCore::StorageSyncManager::StorageSyncManager): + (WebCore::StorageSyncManager::~StorageSyncManager): + (WebCore::StorageSyncManager::scheduleImport): + (WebCore::StorageSyncManager::scheduleSync): + * storage/StorageSyncManager.h: + +2009-11-04 Vadim Zeitlin <vadim@wxwidgets.org> + + Reviewed by Eric Seidel. + + [wx] Small cleanup: avoid unnecessary wxString::mb_str() calls. + + * platform/graphics/wx/FontPlatformDataWx.cpp: + (WebCore::FontPlatformData::computeHash): + +2009-11-04 Kelly Norton <knorton@google.com> + + Reviewed by Pavel Feldman. + + Adds lightweight network resources to InspectorTimelineAgent. + https://bugs.webkit.org/show_bug.cgi?id=31065 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::willSendRequest): + (WebCore::InspectorController::didReceiveResponse): + (WebCore::InspectorController::didFinishLoading): + (WebCore::InspectorController::didFailLoading): + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::willSendResourceRequest): + (WebCore::InspectorTimelineAgent::didReceiveResourceResponse): + (WebCore::InspectorTimelineAgent::didFinishLoadingResource): + * inspector/InspectorTimelineAgent.h: + (WebCore::): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createResourceSendRequestTimelineRecord): + (WebCore::TimelineRecordFactory::createResourceReceiveResponseTimelineRecord): + (WebCore::TimelineRecordFactory::createResourceFinishTimelineRecord): + * inspector/TimelineRecordFactory.h: + * inspector/front-end/TimelineAgent.js: + +2009-11-04 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Tor Arne Vestbø. + + [Qt] ASSERT failure when receiving 401 HTTP Authentication response. + https://bugs.webkit.org/show_bug.cgi?id=31077 + + Allow sending the response body under the same conditions that we + allow it to finish without reporting an error. + + * platform/network/qt/QNetworkReplyHandler.cpp: + (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): + +2009-11-04 Adam Roben <aroben@apple.com> + + Sort WebCore.base.exp + + Rubber-stamped by Dan Bernstein. + + * WebCore.base.exp: Sorted. + +2009-11-04 Csaba Osztrogonác <ossy@webkit.org> + + Unreviewed rollout. + + Revert r50496 because it broke all layout tests on QtBuildBot. + + * WebCore.pro: + * platform/graphics/qt/FontCacheQt.cpp: + (WebCore::fontCache): + (WebCore::FontCache::FontCache): + (WebCore::FontCache::getTraitsInFamily): + (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): + (WebCore::FontPlatformDataCacheKey::isHashTableDeletedValue): + (WebCore::FontPlatformDataCacheKey::): + (WebCore::FontPlatformDataCacheKey::operator==): + (WebCore::FontPlatformDataCacheKey::hash): + (WebCore::FontPlatformDataCacheKey::computeHash): + (WebCore::FontPlatformDataCacheKey::hashTableDeletedSize): + (WebCore::FontPlatformDataCacheKeyHash::hash): + (WebCore::FontPlatformDataCacheKeyHash::equal): + (WebCore::FontPlatformDataCacheKeyTraits::emptyValue): + (WebCore::FontPlatformDataCacheKeyTraits::constructDeletedValue): + (WebCore::FontPlatformDataCacheKeyTraits::isDeletedValue): + (WebCore::FontCache::getCachedFontPlatformData): + (WebCore::FontCache::getCachedFontData): + (WebCore::FontCache::getLastResortFallbackFont): + (WebCore::FontCache::releaseFontData): + (WebCore::FontCache::purgeInactiveFontData): + (WebCore::FontCache::addClient): + (WebCore::FontCache::removeClient): + (WebCore::FontCache::invalidate): + * platform/graphics/qt/FontFallbackListQt.cpp: Added. + (WebCore::FontFallbackList::FontFallbackList): + (WebCore::FontFallbackList::invalidate): + (WebCore::FontFallbackList::releaseFontData): + (WebCore::FontFallbackList::determinePitch): + (WebCore::FontFallbackList::fontDataAt): + (WebCore::FontFallbackList::fontDataForCharacters): + (WebCore::FontFallbackList::setPlatformFont): + * platform/graphics/qt/FontPlatformData.h: + (WebCore::FontPlatformData::pixelSize): + * platform/graphics/qt/FontPlatformDataQt.cpp: + (WebCore::FontPlatformData::FontPlatformData): + +2009-11-04 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=31044 + [Gtk] assertion when webkit_accessible_get_index_in_parent attempts to get parent of the web view + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (atkParentOfWebView): + (webkit_accessible_get_index_in_parent): + (webkit_accessible_get_parent): + +2009-11-04 Dominik Röttsches <dominik.roettsches@access-company.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=15914 + [GTK] Implement Unicode functionality using GLib + + Initial version of this patch by Jürg Billeter and Naiem Shaik. + Patch 2/4 - Moving TextCodecs to GLib + + Added probing for a hard-coded lists of text encodings. + The basis of this list is taken from the encodings supported by iconv, + then extended by e.g. tis-620, windows-1251, euc-kr, windows-1253 and + a number of Chinese ones. + + Probing is necessary with the current design of text codecs + as iconv/GLib do not support enumerating available encodings. + + * GNUmakefile.am: + * platform/ThreadGlobalData.cpp: + (WebCore::ThreadGlobalData::ThreadGlobalData): + (WebCore::ThreadGlobalData::~ThreadGlobalData): + * platform/text/TextEncoding.cpp: + (WebCore::TextEncoding::encode): + * platform/text/TextEncodingRegistry.cpp: + (WebCore::buildBaseTextCodecMaps): + (WebCore::extendTextCodecMaps): + * platform/text/gtk/TextCodecGtk.cpp: Added. + (WebCore::): + (WebCore::newTextCodecGtk): + (WebCore::TextCodecGtk::isEncodingAvailable): + (WebCore::TextCodecGtk::registerEncodingNames): + (WebCore::TextCodecGtk::registerCodecs): + (WebCore::TextCodecGtk::registerBaseEncodingNames): + (WebCore::TextCodecGtk::registerBaseCodecs): + (WebCore::TextCodecGtk::registerExtendedEncodingNames): + (WebCore::TextCodecGtk::registerExtendedCodecs): + (WebCore::TextCodecGtk::TextCodecGtk): + (WebCore::TextCodecGtk::~TextCodecGtk): + (WebCore::TextCodecGtk::releaseIConv): + (WebCore::TextCodecGtk::createIConvDecoder): + (WebCore::TextCodecGtk::createIConvEncoder): + (WebCore::TextCodecGtk::decode): + (WebCore::TextCodecGtk::encode): + * platform/text/gtk/TextCodecGtk.h: Added. + +2009-11-04 Martin Robinson <martin.james.robinson@gmail.com> + + Reviewed by Jan Alonzo. + + [GTK] Enable DOM clipboard and drag-and-drop access + https://bugs.webkit.org/show_bug.cgi?id=30623 + + Unify redudant methods which will always return the same value. + + * platform/gtk/PasteboardGtk.cpp: + (WebCore::Pasteboard::writeSelection): + * platform/gtk/PasteboardHelper.h: + +2009-11-04 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=31035 + [GTK] some accessibility tests hitting assertion in debug builds + + Removes the assertions in webkit_accessible_ref_child; adds sanity checks. + Any app or AT can attempt to ref a child at a bogus index. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (webkit_accessible_ref_child): + +2009-11-04 Benjamin Otte <otte@gnome.org> + + Reviewed by Jan Alonzo. + + [gtk] Use gst_element_class_set_details_simple() + + Cosmetic change, just code simplification + + * platform/graphics/gtk/VideoSinkGStreamer.cpp: + (webkit_video_sink_base_init): +2009-11-04 Kelly Norton <knorton@google.com> + + Reviewed by Timothy Hatcher. + + Adds paint rectangle information to TimelineAgent's didPaint callback. + https://bugs.webkit.org/show_bug.cgi?id=31087 + + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::willPaint): + * inspector/InspectorTimelineAgent.h: + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createPaintTimelineRecord): + * inspector/TimelineRecordFactory.h: + * page/FrameView.cpp: + (WebCore::FrameView::paintContents): + +2009-11-04 Jaime Yap <jaimeyap@google.com> + + Reviewed by Timothy Hatcher. + + This patch adds API to the console object for annotating the + inspector timeline. This allows developers to mark logical + checkpoints in their apps and have them overlaid in the event + record tree. + + tests updated: LayoutTests/fast/dom/Window/window-properties.html + https://bugs.webkit.org/show_bug.cgi?id=31082 + + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::markTimeline): + * inspector/InspectorController.h: + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::didMarkTimeline): + * inspector/InspectorTimelineAgent.h: + (WebCore::): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createMarkTimelineRecord): + * inspector/TimelineRecordFactory.h: + * inspector/front-end/TimelineAgent.js: + * page/Console.cpp: + (WebCore::Console::markTimeline): + * page/Console.h: + * page/Console.idl: + +2009-11-03 Simon Hausmann <hausmann@webkit.org> + + Unreviewed build fix for WebInspector with Qt build. + + Simply re-generate the Qt resource file by running + WebKitTools/Scripts/generate-qt-inspector-resource + + * inspector/front-end/WebKit.qrc: + +2009-11-02 Benjamin Poulain <benjamin.poulain@nokia.com> + + Reviewed by Simon Hausmann. + + [Qt] Handle fonts like the other ports + + Remove FontFallbackListQt and rely on the common FontFallbackList + to handle the fonts. FontCache and FontPlatformData have been + updated to work with the common FontFallbackList. + + In the previous implementation, FontPlatformDataCacheKey + was a clone of FontPlatformData with the hashing + capabilities added in order to use it as a key in the cache's + hashmap. FontPlatformData has been modified to handle the hashing + function directly so the data are not copied twice in memory. + + FontFallbackList::fontDataAt() from FontFallbackListQt was a copy of + code from FontCache::getFontData() and FontFallbackList::fontDataAt(). + The behavior is similar except currFamily->family().length() was + not tested and the fallback fonts selector were not used. + + https://bugs.webkit.org/show_bug.cgi?id=29856 + + Test: svg/text/text-font-invalid.html + + * WebCore.pro: + * platform/graphics/qt/FontCacheQt.cpp: + (WebCore::FontCache::platformInit): + (WebCore::FontCache::getFontDataForCharacters): + (WebCore::FontCache::getSimilarFontPlatformData): + (WebCore::FontCache::getLastResortFallbackFont): + (WebCore::FontCache::getTraitsInFamily): + (WebCore::FontCache::createFontPlatformData): + * platform/graphics/qt/FontFallbackListQt.cpp: + Removed. We now use the implementation from FontFallbackList.cpp + * platform/graphics/qt/FontPlatformData.h: + Add hashing capabilities to be able to use the data with the FontCache. + This was previously done in FontCacheQt.cpp + (WebCore::FontPlatformData::FontPlatformData): + Added a boolean to identify deleted value in the hash table. + (WebCore::FontPlatformData::isHashTableDeletedValue): + (WebCore::FontPlatformData::hash): + (WebCore::FontPlatformData::operator==): + * platform/graphics/qt/FontPlatformDataQt.cpp: + (WebCore::FontPlatformData::FontPlatformData): + +2009-11-03 Dan Bernstein <mitz@apple.com> + + Leopard build fix + + * platform/network/mac/AuthenticationMac.mm: + (WebCore::mac): + (WebCore::core): + +2009-11-03 Dan Bernstein <mitz@apple.com> + + Reviewed by Alexey Proskuryakov. + + Fix an assertion failure in core(NSURLProtectionSpace *) by handling NTLM + authentication in AuthenticationMac + + * platform/network/mac/AuthenticationMac.mm: + +2009-11-03 Eric Z. Ayers <zundel@google.com> + + Reviewed by Timothy Hatcher. + + Fixes a problem where the timeline instrumentation crashes if + timeline profiling is enabled or disabled in the middle of an + event dispatch. + + https://bugs.webkit.org/show_bug.cgi?id=31080 + + Test: inspector/timeline-trivial.html + + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::evaluateInWorld): + (WebCore::ScriptController::processingUserGestureEvent): + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord): + * page/DOMTimer.cpp: + (WebCore::DOMTimer::fired): + +2009-11-03 Dan Bernstein <mitz@apple.com> + + Reviewed by Dave Hyatt. + + Allow a frame to go back to copy-on-scroll when it ceases being overlapped + + The code was not testing slow-scrolling frames for overlappedness, thinking the answer + would not matter. That is not the case if the only reason for the slow-scrolling is + being overlapped. + + * page/FrameView.cpp: + (WebCore::FrameView::useSlowRepaintsIfNotOverlapped): Added. Returns whether there is any + reason besides being overlapped that the frame would need to fully repaint on scroll. + * page/FrameView.h: + * rendering/RenderWidget.cpp: + (WebCore::RenderWidget::paint): Use useSlowRepaintsIfNotOverlapped(). + +2009-11-03 Dmitry Titov <dimich@chromium.org> + + Not reviewed, Qt build fix. + + Need to use right capitalization for include file. + + * page/Navigator.cpp: + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Migrate from top bar filters to check boxes in Timeline. + + https://bugs.webkit.org/show_bug.cgi?id=31081 + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.showCategory): + (WebInspector.AbstractTimelinePanel.prototype.hideCategory): + (WebInspector.AbstractTimelinePanel.prototype.filter): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelineCategoryTreeElement.prototype.onattach): + (WebInspector.TimelineCategoryTreeElement.prototype._onCheckboxClick): + (WebInspector.TimelineCategoryGraph.prototype.clearChunks): + (WebInspector.TimelineCategoryGraph.prototype.set dimmed): + * inspector/front-end/inspector.css: + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: clear overview on Clear action and panel reset. + + https://bugs.webkit.org/show_bug.cgi?id=31078 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._getRecordDetails): + (WebInspector.TimelinePanel.prototype.reset): + +2009-11-03 Yaar Schnitman <yaar@chromium.org> + + Reviewed by Dimitri Glazkov. + + Imported action and rules python files that WebCore.gyp depends on. + These files used to live in chromium.org and deal mostly with auto-generation + of code by wrapping existing webkit perl scripts. + + https://bugs.webkit.org/show_bug.cgi?id=31071 + + * WebCore.gyp/WebCore.gyp: Fixed paths in actions and rules. + * WebCore.gyp/scripts/action_csspropertynames.py: Added. + * WebCore.gyp/scripts/action_cssvaluekeywords.py: Added. + * WebCore.gyp/scripts/action_makenames.py: Added. + * WebCore.gyp/scripts/action_maketokenizer.py: Added. + * WebCore.gyp/scripts/action_useragentstylesheets.py: Added. + * WebCore.gyp/scripts/rule_binding.py: Added. + * WebCore.gyp/scripts/rule_bison.py: Added. + * WebCore.gyp/scripts/rule_gperf.py: Added. + +2009-11-03 Bradley Green <brg@chromium.org> + + Reviewed by Dmitry Titov. + + Implement window.navigator.registerProtocolHandler in webkit, + https://bugs.webkit.org/b/29651 + + Also implemented its sister API window.navigator.registerContentHandler. + + These methods are as described in the HTML5 specification which can be + found here, + http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registerprotocolhandler + http://dev.w3.org/html5/spec/Overview.html#dom-navigator-registercontenthandler + + As specified in the document, the behavior of the browser is determined + by the current registered handler. The state of a registered handler + can change at any time, with the user clearing a registered handler, + registering a different page as handler, or deferring the hander to the + OS. If webkit was to track the state of the currently registered + handlers, it would need more APIs and complexity to keep in sync with + user actions reported to webkit from the UA. For simplicity, the state + of protocol handlers should be kept isolated from webkit and webkit only + notifies the UA that a page has made the call. The UA is then + responsible for correctly handling the registerProtocolHandler call and + the redirects which result from registration. + + We do however follow the specification in insuring that the reserved + schemes and mimeTypes are not passed to the UA as custom handler + registration tests. We also insure that the "%s" token is present as + required by the specification. + + Updated test expectations for window.clientInformation and navigator + objects. + + Tests: fast/dom/registerContentHandler.html + fast/dom/registerProtocolHandler.html + + * page/Chrome.cpp: + (WebCore::Chrome::registerProtocolHandler): + (WebCore::Chrome::registerContentHandler): + * page/Chrome.h: + * page/ChromeClient.h: + (WebCore::ChromeClient::registerProtocolHandler): + (WebCore::ChromeClient::registerContentHandler): + * page/Navigator.cpp: + (WebCore::verifyCustomHandlerURL): + (WebCore::verifyProtocolHandlerScheme): + (WebCore::Navigator::registerProtocolHandler): + (WebCore::verifyProtocolHandlerMimeType): + (WebCore::Navigator::registerContentHandler): + * page/Navigator.h: + * page/Navigator.idl: + +2009-11-03 Brady Eidson <beidson@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=31079 - Remove #include "Page.h" from Document.h + + No new tests. (No change in functionality) + + * dom/Document.cpp: + (WebCore::Document::inspectorTimelineAgent): Moved from Document.h + * dom/Document.h: + + Include "Page.h" directly: + * html/HTMLVideoElement.cpp: + * loader/RedirectScheduler.cpp: + * page/History.cpp: + * rendering/MediaControlElements.cpp: + * storage/StorageAreaImpl.cpp: + +2009-11-03 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: hover over JS "things" in source and see their values + https://bugs.webkit.org/show_bug.cgi?id=30913 + + * inspector/front-end/SourceFrame.js: + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: update timeline content boundaries on timer. + + https://bugs.webkit.org/show_bug.cgi?id=31072 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype.refresh): + (WebInspector.TimelinePanel.prototype._setWindowPosition): + +2009-11-03 Dan Bernstein <mitz@apple.com> + + Reviewed by Anders Carlsson and Beth Dakin. + + https://bugs.webkit.org/show_bug.cgi?id=31070 + Fix <rdar://problem/7194735> Crashes at RenderText::RenderText() + Fix <rdar://problem/6937089> Crashes at RenderWidget::destroy() + + Tests: plugins/attach-during-destroy.html + plugins/destroy-reentry.html + + These crashes were caused by plug-in code running during detach(), + causing re-entry into RenderWidget::destroy() in one case and a call + into attach() in the other. The fix is to prevent plug-in code from + being called at certain unsafe times (during attach(), detach(), and + recalcStyle()) by deferring changes to the widget hierarchy. + + * dom/Document.cpp: + (WebCore::Document::recalcStyle): Suspend widget hierarchy updates + during style recalculation. + + * dom/Element.cpp: + (WebCore::Element::attach): Suspend widget hierarchy updates during + attach(). + (WebCore::Element::detach): Suspend widget hierarchy updates during + detach(). + + * rendering/RenderWidget.cpp: + (WebCore::widgetNewParentMap): Returns a static map of pending changes + to the widget hierarchy. + (WebCore::RenderWidget::suspendWidgetHierarchyUpdates): Increments the + suspend count. + (WebCore::RenderWidget::resumeWidgetHierarchyUpdates): Decrements the + suspend count. If the count is going to be zero, updates the widget + hierarchy by executing the pending changes stored in the map. + (WebCore::moveWidgetToParentSoon): Updates the widget hierarchy + immediately or makes or updates an entry in the map, depending on + whether updates are suspended. + (WebCore::RenderWidget::destroy): Removed earlier bandaid fix for + <rdar://problem/6937089>. + (WebCore::RenderWidget::setWidgetGeometry): Assert that widget updates + are not suspended, because this function updates the widget’s + bounds, which can result in arbitrary native and JavaScript code + execution. I think this assertion is true thanks to some deferred- + update mechanisms that have already been deployed in other places + in the code. + (WebCore::RenderWidget::setWidget): Call moveWidgetToParentSoon instead + of changing the widget hierarchy directly. + * rendering/RenderWidget.h: Declared suspendWidgetHierarchyUpdates() + and resumeWidgetHierarchyUpdates(). + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: only show timeline records that contribute + to the current window. + + https://bugs.webkit.org/show_bug.cgi?id=31069 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype.refresh): + (WebInspector.TimelineGraph): + (WebInspector.TimelineGraph.prototype.refresh): + +2009-11-03 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Watch expression editor should stay open after Add button was clicked + https://bugs.webkit.org/show_bug.cgi?id=31049 + + No new tests, was a regression, use existing manual test. + + * inspector/front-end/WatchExpressionsSidebarPane.js: + (WebInspector.WatchExpressionsSection.prototype.update): + (WebInspector.WatchExpressionsSection.prototype.addExpression): + +2009-11-03 Evan Martin <evan@chromium.org> + + Reviewed by Darin Adler. + + Fix an off-by-one in the CSS lexer that causes memory corruption in + hard-to-trigger circumstances. + + https://bugs.webkit.org/show_bug.cgi?id=30827 + + Test: fast/css/end-of-buffer-crash.html + + * css/maketokenizer: Add comments, fix off-by-one. + +2009-11-02 Darin Adler <darin@apple.com> + + Reviewed by Dan Bernstein. + + Crash due to double-destroy related to CSS run-in property + https://bugs.webkit.org/show_bug.cgi?id=31034 + rdar://problem/7328458 + + Test: fast/css/run-in-crash.html + + * rendering/RenderBlock.cpp: + (WebCore::RenderBlock::destroy): Reorder destruction so the + continuation is destroyed after anonymous children. See comment + in the code for more details of why this is right. + * rendering/RenderInline.cpp: + (WebCore::RenderInline::destroy): Ditto. + +2009-11-03 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Pavel Feldman. + + Fix exception in ElementsPanel.js when moving pointer out of crumbs and window + + There might be no new node under mouse if the pointer is moved out of the window + in which case we get an exception. + https://bugs.webkit.org/show_bug.cgi?id=31061 + + * inspector/front-end/ElementsPanel.js: + (WebInspector.ElementsPanel.prototype._mouseMovedOutOfCrumbs): + +2009-11-03 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for the dom directory of WebCore + https://bugs.webkit.org/show_bug.cgi?id=31053 + + Inherits the following classes from Noncopyable because these are + instantiated by 'new' and these are no need to be copyable: + + class EventNames - 'new' call: WebCore/platform/ThreadGlobalData.cpp:73 + struct PerformTaskContext - 'new' call: WebCore/dom/Document.cpp:4581 + class EventData - 'new' call: WebCore/dom/MessagePortChannel.cpp:38 + struct NodeListsNodeData - 'new' call: WebCore/dom/NodeRareData.h:51 + struct EventTargetData - 'new' call: WebCore/dom/NodeRareData.h:100 + class NodeRareData - 'new' call: WebCore/dom/Node.cpp:552 + + Inherits QualifiedName class from FastAllocBase because it is + instantiated by 'new' in WebCore/editing/markup.cpp:319 + + * dom/Document.cpp: + * dom/EventNames.h: + * dom/EventTarget.h: + * dom/MessagePortChannel.h: + * dom/NodeRareData.h: + * dom/QualifiedName.h: + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Implement timeline summary panel. + + https://bugs.webkit.org/show_bug.cgi?id=31064 + + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._createOverview): + (WebInspector.TimelinePanel.prototype.refresh): + (WebInspector.TimelineCategoryGraph): + (WebInspector.TimelineCategoryGraph.prototype.get graphElement): + (WebInspector.TimelineCategoryGraph.prototype.addChunk): + (WebInspector.TimelineCategoryGraph.prototype.clearChunks): + (WebInspector.TimelineGraph.prototype.refresh): + * inspector/front-end/inspector.css: + +2009-11-03 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Timothy Hatcher. + + Toggle off 'Search for node' when the Inspector window is closing + + Searching for node should be toggled off when the Inspector window is closed, + in a platform-independent manner. + https://bugs.webkit.org/show_bug.cgi?id=31059 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::setWindowVisible): + +2009-11-03 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Timothy Hatcher. + + Prepare for heap profiles upstreaming: + - pass profile type id from InspectorController; + - this makes WebInspector.CPUProfile redundant---removed; + - support multiple profile types when populating profiles. + + https://bugs.webkit.org/show_bug.cgi?id=31052 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::createProfileHeader): + * inspector/front-end/ProfileView.js: + (WebInspector.CPUProfileView.profileCallback): + (WebInspector.CPUProfileView): + (WebInspector.CPUProfileView.prototype._sortData): + * inspector/front-end/ProfilesPanel.js: + (WebInspector.ProfilesPanel.prototype.addProfileHeader): + * inspector/front-end/inspector.js: + (WebInspector.addProfileHeader): + +2009-11-03 Dan Kegel <dank@chromium.org> + + Reviewed by Dimitri Glazkov. + + UMR in WebCore::AccessibilityRenderObject::children(); m_childrenDirty uninitialized in constructor + https://bugs.webkit.org/show_bug.cgi?id=31063 + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::AccessibilityRenderObject): + +2009-11-03 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Implement Timeline Window, wire it to the bottom timeline. + + https://bugs.webkit.org/show_bug.cgi?id=31056 + + * English.lproj/localizedStrings.js: + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.get items): + (WebInspector.AbstractTimelinePanel.prototype.createInterface): + (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded): + (WebInspector.AbstractTimelinePanel.prototype._updateDividersLabelBarPosition): + (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems): + (WebInspector.AbstractTimelinePanel.prototype.refresh): + (WebInspector.AbstractTimelinePanel.prototype.adjustScrollPosition): + (WebInspector.AbstractTimelinePanel.prototype.addExtraDivider): + (WebInspector.TimelineGrid): + (WebInspector.TimelineGrid.prototype.get itemsGraphsElement): + (WebInspector.TimelineGrid.prototype.updateDividers): + (WebInspector.TimelineGrid.prototype.addExtraDivider): + (WebInspector.TimelineGrid.prototype.setScrollAndDividerTop): + * inspector/front-end/ResourcesPanel.js: + (WebInspector.ResourcesPanel): + (WebInspector.ResourcesPanel.prototype.updateGraphDividersIfNeeded): + (WebInspector.ResourcesPanel.prototype.get _resources): + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel): + (WebInspector.TimelinePanel.prototype.get categories): + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype.reset): + (WebInspector.TimelinePanel.prototype._createOverview): + (WebInspector.TimelinePanel.prototype.setSidebarWidth): + (WebInspector.TimelinePanel.prototype.updateMainViewWidth): + (WebInspector.TimelinePanel.prototype.updateGraphDividersIfNeeded): + (WebInspector.TimelinePanel.prototype.refresh): + (WebInspector.TimelinePanel.prototype._resizeWindow): + (WebInspector.TimelinePanel.prototype._windowResizeDragging): + (WebInspector.TimelinePanel.prototype._dragWindow): + (WebInspector.TimelinePanel.prototype._windowDragging): + (WebInspector.TimelinePanel.prototype._resizeWindowLeft): + (WebInspector.TimelinePanel.prototype._resizeWindowRight): + (WebInspector.TimelinePanel.prototype._setWindowPosition): + (WebInspector.TimelinePanel.prototype._endWindowDragging): + (WebInspector.TimelineCategoryTreeElement): + (WebInspector.TimelineCategoryTreeElement.prototype.onattach): + (WebInspector.TimelineCalculator.prototype.computeBarGraphPercentages): + (WebInspector.TimelineCalculator.prototype.get minimumBoundary): + (WebInspector.TimelineCalculator.prototype.get maximumBoundary): + (WebInspector.TimelineCalculator.prototype.reset): + (WebInspector.TimelineCalculator.prototype.updateBoundaries): + (WebInspector.TimelineCalculator.prototype.formatValue): + * inspector/front-end/inspector.css: + +2009-11-03 Simon Hausmann <hausmann@webkit.org> + + Reviewed by Tor Arne Vestbø. + + Make QWebPluginDatabase private API for now. + + https://bugs.webkit.org/show_bug.cgi?id=30775 + + * WebCore.pro: + +2009-11-03 Simon Hausmann <hausmann@webkit.org> + + Reviewed by Tor Arne Vestbø. + + Extended the conversion of the WebCore ResourceRequest to the + QNetworkRequest with a mandatory originating object argument, + which is meant to be the QWebFrame the request belongs to. + + https://bugs.webkit.org/show_bug.cgi?id=29975 + + * platform/network/qt/QNetworkReplyHandler.cpp: + (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): + (WebCore::QNetworkReplyHandler::sendResponseIfNeeded): + (WebCore::QNetworkReplyHandler::start): + * platform/network/qt/ResourceRequest.h: + * platform/network/qt/ResourceRequestQt.cpp: + (WebCore::ResourceRequest::toNetworkRequest): + +2009-11-03 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Pavel Feldman. + + Web Inspector: monitorEvent should be monitorEvents + https://bugs.webkit.org/show_bug.cgi?id=31042 + + * inspector/front-end/InjectedScript.js: + (InjectedScript._ensureCommandLineAPIInstalled): + +2009-11-02 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> + + Rubber-stamped by Antti Koivisto. + + [Qt] Build fix for Windows CE + + * plugins/PluginDatabase.cpp: + +2009-11-02 Chris Fleizach <cfleizach@apple.com> + + Reviewed by David Levin. + + fix accessibility webkit-style-check errors + https://bugs.webkit.org/show_bug.cgi?id=29672 + + * accessibility/AXObjectCache.cpp: + (WebCore::AXObjectCache::getOrCreate): + (WebCore::AXObjectCache::remove): + (WebCore::AXObjectCache::platformGenerateAXID): + (WebCore::AXObjectCache::removeAXID): + * accessibility/AXObjectCache.h: + (WebCore::AXObjectCache::enableAccessibility): + (WebCore::AXObjectCache::enableEnhancedUserInterfaceAccessibility): + (WebCore::AXObjectCache::accessibilityEnabled): + (WebCore::AXObjectCache::accessibilityEnhancedUserInterfaceEnabled): + (WebCore::AXObjectCache::isIDinUse): + (WebCore::AXObjectCache::objectFromAXID): + (WebCore::AXObjectCache::): + (WebCore::AXObjectCache::handleActiveDescendantChanged): + (WebCore::AXObjectCache::handleAriaRoleChanged): + (WebCore::AXObjectCache::detachWrapper): + (WebCore::AXObjectCache::attachWrapper): + (WebCore::AXObjectCache::selectedChildrenChanged): + (WebCore::AXObjectCache::postNotification): + (WebCore::AXObjectCache::postPlatformNotification): + (WebCore::AXObjectCache::handleFocusedUIElementChanged): + (WebCore::AXObjectCache::handleScrolledToAnchor): + * accessibility/AccessibilityARIAGrid.cpp: + (WebCore::AccessibilityARIAGrid::cellForColumnAndRow): + * accessibility/AccessibilityAllInOne.cpp: + * accessibility/AccessibilityImageMapLink.cpp: + * accessibility/AccessibilityList.h: + (WebCore::AccessibilityList::isList): + * accessibility/AccessibilityListBox.cpp: + * accessibility/AccessibilityListBox.h: + (WebCore::AccessibilityListBox::isListBox): + * accessibility/AccessibilityListBoxOption.cpp: + * accessibility/AccessibilityListBoxOption.h: + (WebCore::AccessibilityListBoxOption::isListBoxOption): + * accessibility/AccessibilityMediaControls.h: + (WebCore::AccessibilityMediaControl::~AccessibilityMediaControl): + (WebCore::AccessibilityMediaTimeline::~AccessibilityMediaTimeline): + (WebCore::AccessibilityMediaTimeline::isMediaTimeline): + (WebCore::AccessibilityMediaControlsContainer::~AccessibilityMediaControlsContainer): + (WebCore::AccessibilityMediaControlsContainer::roleValue): + (WebCore::AccessibilityMediaControlsContainer::accessibilityIsIgnored): + (WebCore::AccessibilityMediaTimeDisplay::~AccessibilityMediaTimeDisplay): + (WebCore::AccessibilityMediaTimeDisplay::roleValue): + * accessibility/AccessibilityObject.cpp: + (WebCore::AccessibilityObject::parentObjectUnignored): + (WebCore::AccessibilityObject::rightLineVisiblePositionRange): + (WebCore::replacedNodeNeedsCharacter): + (WebCore::AccessibilityObject::stringForVisiblePositionRange): + (WebCore::AccessibilityObject::lengthForVisiblePositionRange): + (WebCore::AccessibilityObject::actionVerb): + * accessibility/AccessibilityObject.h: + (WebCore::PlainTextRange::isNull): + (WebCore::AccessibilityObject::isAccessibilityRenderObject): + (WebCore::AccessibilityObject::isAnchor): + (WebCore::AccessibilityObject::isAttachment): + (WebCore::AccessibilityObject::isHeading): + (WebCore::AccessibilityObject::isLink): + (WebCore::AccessibilityObject::isImage): + (WebCore::AccessibilityObject::isNativeImage): + (WebCore::AccessibilityObject::isImageButton): + (WebCore::AccessibilityObject::isPasswordField): + (WebCore::AccessibilityObject::isTextControl): + (WebCore::AccessibilityObject::isNativeTextControl): + (WebCore::AccessibilityObject::isWebArea): + (WebCore::AccessibilityObject::isCheckboxOrRadio): + (WebCore::AccessibilityObject::isListBox): + (WebCore::AccessibilityObject::isFileUploadButton): + (WebCore::AccessibilityObject::isProgressIndicator): + (WebCore::AccessibilityObject::isSlider): + (WebCore::AccessibilityObject::isControl): + (WebCore::AccessibilityObject::isList): + (WebCore::AccessibilityObject::isDataTable): + (WebCore::AccessibilityObject::isTableRow): + (WebCore::AccessibilityObject::isTableColumn): + (WebCore::AccessibilityObject::isTableCell): + (WebCore::AccessibilityObject::isFieldset): + (WebCore::AccessibilityObject::isGroup): + (WebCore::AccessibilityObject::isChecked): + (WebCore::AccessibilityObject::isEnabled): + (WebCore::AccessibilityObject::isSelected): + (WebCore::AccessibilityObject::isFocused): + (WebCore::AccessibilityObject::isHovered): + (WebCore::AccessibilityObject::isIndeterminate): + (WebCore::AccessibilityObject::isLoaded): + (WebCore::AccessibilityObject::isMultiSelect): + (WebCore::AccessibilityObject::isOffScreen): + (WebCore::AccessibilityObject::isPressed): + (WebCore::AccessibilityObject::isReadOnly): + (WebCore::AccessibilityObject::isVisited): + (WebCore::AccessibilityObject::isRequired): + (WebCore::AccessibilityObject::canSetFocusAttribute): + (WebCore::AccessibilityObject::canSetTextRangeAttributes): + (WebCore::AccessibilityObject::canSetValueAttribute): + (WebCore::AccessibilityObject::hasIntValue): + (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId): + (WebCore::AccessibilityObject::accessibilityIsIgnored): + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::AccessibilityRenderObject::parentObjectIfExists): + (WebCore::AccessibilityRenderObject::parentObject): + (WebCore::AccessibilityRenderObject::isMenuRelated): + (WebCore::AccessibilityRenderObject::accessibilityDescription): + (WebCore::AccessibilityRenderObject::accessibilityIsIgnored): + (WebCore::AccessibilityRenderObject::isFocused): + (WebCore::AccessibilityRenderObject::visiblePositionRangeForLine): + (WebCore::AccessibilityRenderObject::setSelectedVisiblePositionRange): + (WebCore::AccessibilityRenderObject::doAXRangeForLine): + (WebCore::AccessibilityRenderObject::doAXStringForRange): + (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest): + (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute): + (WebCore::AccessibilityRenderObject::determineAccessibilityRole): + (WebCore::AccessibilityRenderObject::isPresentationalChildOfAriaRole): + (WebCore::AccessibilityRenderObject::canSetFocusAttribute): + (WebCore::AccessibilityRenderObject::canHaveChildren): + (WebCore::AccessibilityRenderObject::actionVerb): + (WebCore::shouldReturnTagNameAsRoleForMSAA): + * accessibility/AccessibilityRenderObject.h: + (WebCore::AccessibilityRenderObject::isAccessibilityRenderObject): + * accessibility/AccessibilitySlider.cpp: + (WebCore::AccessibilitySlider::orientation): + * accessibility/AccessibilitySlider.h: + (WebCore::AccessibilitySlider::~AccessibilitySlider): + (WebCore::AccessibilitySlider::roleValue): + (WebCore::AccessibilitySlider::accessibilityIsIgnored): + (WebCore::AccessibilitySlider::isSlider): + (WebCore::AccessibilitySlider::canSetValueAttribute): + (WebCore::AccessibilitySliderThumb::~AccessibilitySliderThumb): + (WebCore::AccessibilitySliderThumb::roleValue): + (WebCore::AccessibilitySliderThumb::accessibilityIsIgnored): + (WebCore::AccessibilitySliderThumb::setParentObject): + (WebCore::AccessibilitySliderThumb::parentObject): + * accessibility/AccessibilityTable.cpp: + (WebCore::AccessibilityTable::isTableExposableThroughAccessibility): + * accessibility/AccessibilityTableColumn.cpp: + * accessibility/AccessibilityTableHeaderContainer.cpp: + (WebCore::AccessibilityTableHeaderContainer::addChildren): + * accessibility/AccessibilityTableRow.cpp: + * accessibility/mac/AccessibilityObjectWrapper.h: + +2009-11-02 Darin Fisher <darin@chromium.org> + + Fixing JSC build bustage. + + * bindings/js/ScriptController.cpp: Added missing #include + +2009-10-30 Darin Fisher <darin@chromium.org> + + Reviewed by Adam Barth. + + Give the FrameLoaderClient the ability to override Settings::isJavaScriptEnabled. + https://bugs.webkit.org/show_bug.cgi?id=30967 + + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::isEnabled): + * bindings/v8/ScriptController.cpp: + (WebCore::ScriptController::isEnabled): + * bindings/v8/V8Proxy.cpp: Move implementation of isEnabled to ScriptController + * bindings/v8/V8Proxy.h: Ditto + * loader/FrameLoaderClient.h: + (WebCore::FrameLoaderClient::allowJavaScript): + * platform/chromium/ChromiumBridge.h: Delete uiResourceProtocol function + +2009-11-02 Brady Eidson <beidson@apple.com> + + Rubberstamped by Mark Rowe. + + Fix a typo in Mark's last commit. + + * loader/archive/ArchiveFactory.cpp: + (WebCore::archiveMIMETypes): + +2009-11-02 Mark Rowe <mrowe@apple.com> + + Rubber-stamped by Brady Eidson. + + Re-enable support for web archives on Windows. It was mistakenly disabled in r50438. + + * loader/archive/ArchiveFactory.cpp: + (WebCore::archiveMIMETypes): + +2009-11-02 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Darin Adler. + + PLATFORM(CF) should be set when building for Qt on Darwin + https://bugs.webkit.org/show_bug.cgi?id=23671 + + * WebCore.pro: Add SharedBufferCF.cpp and SmartReplaceCF.cpp + to the Darwin build. + * loader/archive/ArchiveFactory.cpp: Change the support for + legacy WebArchive from all CF platforms to Mac and Chromium + CF platforms. + (WebCore::archiveMIMETypes): + * platform/text/AtomicString.h: Remove PLATFORM(QT) && + PLATFORM(DARWIN) test as it is redundant now. + * platform/text/PlatformString.h: Ditto. + * platform/text/StringImpl.h: Ditto. + * platform/text/cf/StringCF.cpp: Ditto. + * platform/text/cf/StringImplCF.cpp: Ditto. + +2009-11-02 Adam Barth <abarth@webkit.org> + + Reviewed by David Levin. + + [Chromium] Actually declare getPluginMimeTypeFromExtension in a header. + https://bugs.webkit.org/show_bug.cgi?id=30985 + + Our current code does not conform to our style guide. + + * WebCore.gyp/WebCore.gyp: + * WebCore.gypi: + * platform/chromium/MIMETypeRegistryChromium.cpp: + * plugins/chromium/PluginDataChromium.cpp: + * plugins/chromium/PluginDataChromium.h: Added. + +2009-11-02 Adele Peterson <adele@apple.com> + + Reviewed by Darin Adler. + + Fix for <rdar://problem/7038305> REGRESSION (Safari 4.0.2 - ToT): After navigating back to a known phishy page, the "Ignore warning" button appears highlighted (along with the "Go Back" button) + + This bug is timing dependent, and not always reproducible. I could not think of a way to add a + layout test that would demonstrate the problem and fix. + + * platform/mac/ThemeMac.mm: + (WebCore::checkbox): Update style. + (WebCore::paintCheckbox): ditto. + (WebCore::radio): ditto. + (WebCore::paintRadio): ditto. + (WebCore::setupButtonCell): Added convenience method. + (WebCore::button): Use a separate NSButtonCell for defaultButtons and regular buttons. + (WebCore::paintButton): Don't check for the key window here. Consider that when deciding if the button should have the default style in RenderTheme. + * rendering/RenderTheme.cpp: (WebCore::RenderTheme::isDefault): Only consider a button to be default if the page is active. This fixes + a problem I noticed where the button would flicker crazily if the page with the default button was in the background. + +2009-11-02 Dan Bernstein <mitz@apple.com> + + Reviewed by Anders Carlsson. + + Minor RenderWidget clean-up in preparation for deferring widget tree + mutation when it is not safe. + + * rendering/RenderWidget.cpp: + (WebCore::RenderWidget::RenderWidget): Initialize m_refCount to 1 + instead of calling ref(). + (WebCore::RenderWidget::destroy): Call setWidget(0) instead of + repeating what it does. + (WebCore::RenderWidget::setWidgetGeometry): Now returns a boolean + indicating whether the bounds have changed. + (WebCore::RenderWidget::setWidget): Replaced all-encompassing if + statement with an early return. + (WebCore::RenderWidget::updateWidgetPosition): Call setWidgetGeometry(). + * rendering/RenderWidget.h: + +2009-11-02 Dumitru Daniliuc <dumi@chromium.org> + + Reviewed by Dimitri Glazkov. + + Adding Chromium's DatabaseTracker and SQLTransactionClient + implementations. + + https://bugs.webkit.org/show_bug.cgi?id=30701 + + * storage/chromium: Added. + * storage/chromium/DatabaseObserver.h: Added. + * storage/chromium/DatabaseTrackerChromium.cpp: Added. + * storage/chromium/QuotaTracker.cpp: Added. + * storage/chromium/QuotaTracker.h: Added. + * storage/chromium/SQLTransactionClientChromium.cpp: Added. + +2009-11-02 Enrica Casucci <enrica@apple.com> + + Reviewed by Adele Peterson and Dan Bernstein. + + Safari crashes when calling execCommand on formatted html in special case + <rdar://problem/7318656> + https://bugs.webkit.org/show_bug.cgi?id=31023 + + Test: editing/execCommand/align-in-span.html + + * rendering/RenderObject.cpp: + (WebCore::RenderObject::containingBlock): Modified comment on containingBlock returning NULL. + * rendering/RenderText.cpp: + (WebCore::RenderText::setSelectionState): Added check for NULL return from containingBlock, + since it is possible when dealing with orphaned trees. + +2009-11-02 Chris Marrin <cmarrin@apple.com> + + Reviewed by Oliver Hunt. + + Exception checks were being too aggressive + https://bugs.webkit.org/show_bug.cgi?id=31005 + + Several calls in CanvasRenderingContext3D are allowed to + have a null value passed, which indicated that the + object is being unbound. Handle this case and the corresponding + null handling in GraphicsContext3DMac. + + * html/canvas/CanvasRenderingContext3D.cpp: + (WebCore::CanvasRenderingContext3D::bindBuffer): + (WebCore::CanvasRenderingContext3D::bindFramebuffer): + (WebCore::CanvasRenderingContext3D::bindRenderbuffer): + (WebCore::CanvasRenderingContext3D::bindTexture): + (WebCore::CanvasRenderingContext3D::framebufferRenderbuffer): + (WebCore::CanvasRenderingContext3D::framebufferTexture2D): + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::framebufferRenderbuffer): + (WebCore::GraphicsContext3D::framebufferTexture2D): + +2009-11-02 Patrick Mueller <Patrick_Mueller@us.ibm.com> + + Reviewed by Timothy Hatcher. + + Each JS execution in console adds extra item into "scripts" combo + https://bugs.webkit.org/show_bug.cgi?id=30212 + + Added manual test + + * inspector/front-end/ScriptsPanel.js: + (WebInspector.ScriptsPanel.prototype._showScriptOrResource): + * manual-tests/inspector/hidden-evals.html: Added. + +2009-11-02 Kelly Norton <knorton@google.com> + + Reviewed by Timothy Hatcher. + + Adds a missed case for InspectorTimeline, DOMWindow dispatch of DOM events. + https://bugs.webkit.org/show_bug.cgi?id=31030 + + * dom/Node.cpp: + (WebCore::eventHasListeners): Checks DOMWindow for listeners. + (WebCore::Node::dispatchGenericEvent): + +2009-11-02 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin. + + Remove threadsafe refcounting from tasks used with WTF::MessageQueue. + https://bugs.webkit.org/show_bug.cgi?id=30612 + + No new tests since no new functionality. Storage, MessagePorts and Workers tests cover this. + + There are a lot of files but most changes are simply replace RefPtr and PassRefPtr with + OwnPtr and PassOwnPtr when dealing with Tasks. + + ScriptExecutionContext::Task, DatabaseTask and WorkerRunLoop::Task are no longer + threadsafe refcounted, but simply Noncopyable. + + * dom/Document.cpp: + (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer): + (WebCore::PerformTaskContext::PerformTaskContext): + (WebCore::Document::postTask): + * dom/Document.h: + * dom/ScriptExecutionContext.cpp: + (WebCore::ProcessMessagesSoonTask::create): + * dom/ScriptExecutionContext.h: + * dom/default/PlatformMessagePortChannel.cpp: + (WebCore::PlatformMessagePortChannel::tryGetMessageFromRemote): + * dom/default/PlatformMessagePortChannel.h: + (WebCore::PlatformMessagePortChannel::MessagePortQueue::tryGetMessage): + (WebCore::PlatformMessagePortChannel::MessagePortQueue::appendAndCheckEmpty): + * loader/FrameLoader.cpp: + (WebCore::HashChangeEventTask::create): + * loader/appcache/ApplicationCacheGroup.cpp: + (WebCore::CallCacheListenerTask::create): + * storage/Database.cpp: + (WebCore::Database::openAndVerifyVersion): + (WebCore::Database::markAsDeletedAndClose): + (WebCore::Database::scheduleTransaction): + (WebCore::Database::scheduleTransactionStep): + (WebCore::Database::tableNames): + * storage/DatabaseTask.h: + (WebCore::DatabaseOpenTask::create): + (WebCore::DatabaseCloseTask::create): + (WebCore::DatabaseTransactionTask::create): + (WebCore::DatabaseTableNamesTask::create): + * storage/DatabaseThread.cpp: + (WebCore::DatabaseThread::databaseThread): + (WebCore::DatabaseThread::scheduleTask): + (WebCore::DatabaseThread::scheduleImmediateTask): + (WebCore::SameDatabasePredicate::operator()): + * storage/DatabaseThread.h: + * storage/LocalStorageTask.h: + (WebCore::LocalStorageTask::createImport): + (WebCore::LocalStorageTask::createSync): + (WebCore::LocalStorageTask::createTerminate): + * storage/LocalStorageThread.cpp: + (WebCore::LocalStorageThread::localStorageThread): + * storage/LocalStorageThread.h: + * websockets/WebSocket.cpp: + (WebCore::ProcessWebSocketEventTask::create): + * workers/DefaultSharedWorkerRepository.cpp: + (WebCore::SharedWorkerProxy::postTaskToLoader): + (WebCore::SharedWorkerProxy::postTaskForModeToWorkerContext): + (WebCore::SharedWorkerConnectTask::create): + * workers/GenericWorkerTask.h: + (WebCore::GenericWorkerTask1::create): + (WebCore::GenericWorkerTask2::create): + (WebCore::GenericWorkerTask3::create): + (WebCore::GenericWorkerTask4::create): + (WebCore::GenericWorkerTask5::create): + (WebCore::GenericWorkerTask6::create): + (WebCore::GenericWorkerTask7::create): + (WebCore::GenericWorkerTask8::create): + (WebCore::createCallbackTask): + * workers/WorkerContext.cpp: + (WebCore::WorkerContext::postTask): + * workers/WorkerContext.h: + * workers/WorkerLoaderProxy.h: + * workers/WorkerMessagingProxy.cpp: + (WebCore::MessageWorkerContextTask::create): + (WebCore::MessageWorkerTask::create): + (WebCore::WorkerExceptionTask::create): + (WebCore::WorkerContextDestroyedTask::create): + (WebCore::WorkerTerminateTask::create): + (WebCore::WorkerThreadActivityReportTask::create): + (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerContext): + (WebCore::WorkerMessagingProxy::postTaskToLoader): + (WebCore::WorkerMessagingProxy::workerThreadCreated): + * workers/WorkerMessagingProxy.h: + * workers/WorkerRunLoop.cpp: + (WebCore::ModePredicate::operator()): + (WebCore::WorkerRunLoop::runInMode): + (WebCore::WorkerRunLoop::postTask): + (WebCore::WorkerRunLoop::postTaskForMode): + (WebCore::WorkerRunLoop::Task::create): + (WebCore::WorkerRunLoop::Task::performTask): + (WebCore::WorkerRunLoop::Task::Task): + * workers/WorkerRunLoop.h: + (WebCore::WorkerRunLoop::Task::~Task): + (WebCore::WorkerRunLoop::Task::mode): + +2009-11-02 Philippe Normand <pnormand@igalia.com> + + Reviewed by Jan Alonzo. + + [GTK] Failing media/video-played-reset.html + https://bugs.webkit.org/show_bug.cgi?id=30589 + + new m_seekTime attribute to keep track of the seek position + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::currentTime): + (WebCore::MediaPlayerPrivate::seek): + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h: + +2009-11-02 Xan Lopez <xlopez@igalia.com> + + Reviewed by Jan Alonzo. + + [GTK] Remove Referer when redirecting to non-secure site + https://bugs.webkit.org/show_bug.cgi?id=31021 + + Remove referer from HTTP headers when redirecting to a non-secure + site. + + * platform/network/soup/ResourceHandleSoup.cpp: + (WebCore::restartedCallback): + +2009-11-02 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=18539 + multipart/form-data not being parsed correctly on server due to '+' in boundary string + + No test - the characters that the boundary is made of are not deterministic. + + * platform/network/FormDataBuilder.cpp: (WebCore::FormDataBuilder::generateUniqueBoundaryString): + Don't ever put a '+' in boundary string, either. Removed a FIXME to bring '/' back once + GMail is fixed - I don't think we'll ever want to allow non-alphanumeric characters, as + they cause problems on many web sites. + +2009-10-30 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Darin Adler. + + https://bugs.webkit.org/show_bug.cgi?id=30969 + A no-prefix XPath node test should not match no-namespace elements in HTML document + + Test: fast/xpath/null-namespace-in-html.html + + * xml/XPathStep.cpp: (WebCore::XPath::nodeMatchesBasicTest): Special case non-HTML elements + in HTML documents (as these are the ones that can have null namespace). + +2009-11-02 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: [REGRESSION] No timeline marks on resources panel. + + https://bugs.webkit.org/show_bug.cgi?id=31013 + + * inspector/front-end/AbstractTimelinePanel.js: + (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded): + +2009-11-02 David Levin <levin@chromium.org> + + Reviewed by Dan Bernstein. + + Possible crash in RenderSlider::layout. + https://bugs.webkit.org/show_bug.cgi?id=31016 + + Fix out of place line of code. + + Test: scrollbars/overflow-scrollbar-combinations.html + This crash only seems to repro when WebKit draws the play controls, + so the crash repros in chromium running this test but not WebKit + nightlies which use QuickTime to draw the controls. + + * rendering/RenderSlider.cpp: + (WebCore::RenderSlider::layout): + +2009-11-02 Jocelyn Turcotte <jocelyn.turcotte@nokia.com> + + Reviewed by Tor Arne Vestbø. + + [Qt] Fix Qt build on Windows. + https://bugs.webkit.org/show_bug.cgi?id=30905 + + * WebCore.pro: + * platform/graphics/BitmapImage.h: + * platform/graphics/qt/ImageQt.cpp: + (WebCore::BitmapImage::BitmapImage): + (WebCore::BitmapImage::create): + +2009-11-02 Jedrzej Nowacki <jedrzej.nowacki@nokia.com> + + Reviewed by Adam Barth. + + QWebView crash fix. + + The QWebView should not crash if the stop() method is called from + a function triggered by the loadProgress signal. + + A null pointer protection was added in the ProgressTracker::incrementProgress. + + New autotest was created. + + https://bugs.webkit.org/show_bug.cgi?id=29425 + + * loader/ProgressTracker.cpp: + (WebCore::ProgressTracker::incrementProgress): + +2009-11-02 Mikhail Naganov <mnaganov@chromium.org> + + Reviewed by Pavel Feldman. + + Fix a leftover from profiles panel generalization. + + https://bugs.webkit.org/show_bug.cgi?id=31010 + + * inspector/front-end/ProfilesPanel.js: + (WebInspector.ProfilesPanel.prototype.get searchableViews): + +2009-11-02 Kai Koehne <kai.koehne@nokia.com> + + Reviewed by Holger Freyther. + + Remove implementation of ImageDecocerQt::clearFrameBufferCache. + The implementation was buggy, and will visually break repeating + animations anyway. + + https://bugs.webkit.org/show_bug.cgi?id=31009 + + * platform/graphics/qt/ImageDecoderQt.cpp: + (WebCore::ImageDecoderQt::clearFrameBufferCache): + +2009-11-02 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=30964 + [Gtk] Implemment AtkDocument + + Provides access to the reported content language. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (webkit_accessible_document_get_locale): + +2009-11-02 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Rewrite CSSSourceSyntaxHighlighter so it shares more code + https://bugs.webkit.org/show_bug.cgi?id=30907 + + Test: inspector/css-syntax-highlight.html + + * inspector/front-end/ElementsTreeOutline.js: + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype.syntaxHighlightCSS): + (WebInspector.SourceSyntaxHighlighter): + (WebInspector.SourceSyntaxHighlighter.prototype.process.processChunk): + (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine): + (WebInspector.SourceSyntaxHighlighter.prototype.process): + (WebInspector.SourceSyntaxHighlighter.prototype.lex): + (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken): + (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode): + (WebInspector.CSSSourceSyntaxHighlighter): + * inspector/front-end/inspectorSyntaxHighlight.css: + +2009-11-02 Chris Fleizach <cfleizach@apple.com> + + Reviewed by Beth Dakin. + + Support ARIA "tab" roles + https://bugs.webkit.org/show_bug.cgi?id=30842 + + Implement support for ARIA "tab", "tabpanel" and "tablist". + As a consequence, we also needed to implement aria-selected + and aria-controls. + + Tests: accessibility/aria-controls-with-tabs.html + accessibility/aria-tab-roles.html + + * accessibility/AXObjectCache.cpp: + * accessibility/AccessibilityObject.h: + * accessibility/AccessibilityRenderObject.cpp: + * accessibility/AccessibilityRenderObject.h: + * accessibility/mac/AccessibilityObjectWrapper.mm: + * html/HTMLAttributeNames.in: + +2009-10-27 Stephen White <senorblanco@chromium.org> + + Reviewed by Dmitry Titov. + + This is the WebKit-side change needed to fix canvas.getImageData() for + Chromium. The unpremultiply code in Skia assumes that unpremultiplied + values should be rounded, while CG does not. In addition, the fixed + point inversion used by Skia introduces slight inaccuracies that make + us fail this test. This change brings Chromium in line with + the CG path. + https://bugs.webkit.org/show_bug.cgi?id=30825 + + Covered by LayoutTests/fast/canvas/canvas-getImageData.html + + * platform/graphics/skia/ImageBufferSkia.cpp: + (WebCore::getImageData): + +2009-11-01 Kelly Norton <knorton@google.com> + + Reviewed by Timothy Hatcher. + + Adds window event dispatches to InspectorTimelineAgent. + https://bugs.webkit.org/show_bug.cgi?id=31002 + + * English.lproj/localizedStrings.js: + * dom/Node.cpp: Updated call site to willDispatchEvent and didDispatchEvent. + (WebCore::Node::dispatchGenericEvent): + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::willDispatchEvent): Renamed. + (WebCore::InspectorTimelineAgent::didDispatchEvent): Renamed. + * inspector/InspectorTimelineAgent.h: + (WebCore::): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createEventDispatchRecord): Renamed. + * inspector/TimelineRecordFactory.h: + * inspector/front-end/TimelineAgent.js: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype._getRecordDetails): + * page/DOMWindow.cpp: + (WebCore::DOMWindow::dispatchEvent): + +2009-11-01 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Convert script tag event into a more generic + script eval event in timeline. + + https://bugs.webkit.org/show_bug.cgi?id=30999 + + * bindings/js/ScriptController.cpp: + (WebCore::ScriptController::evaluateInWorld): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluate): + * html/HTMLTokenizer.cpp: + (WebCore::HTMLTokenizer::scriptExecution): + * inspector/InspectorTimelineAgent.cpp: + (WebCore::InspectorTimelineAgent::willEvaluateScript): + (WebCore::InspectorTimelineAgent::didEvaluateScript): + * inspector/InspectorTimelineAgent.h: + (WebCore::): + * inspector/TimelineRecordFactory.cpp: + (WebCore::TimelineRecordFactory::createEvaluateScriptTimelineRecord): + * inspector/TimelineRecordFactory.h: + * inspector/front-end/TimelineAgent.js: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._formatRecord): + (WebInspector.TimelinePanel.prototype._getRecordDetails): + +2009-11-01 Brian Weinstein <bweinstein@apple.com> + + Rubber-stamped by Mark Rowe. + + Fix for loop to use an size_t instead of unsigned and some spacing + style fixes. + + * dom/Node.cpp: + (WebCore::eventHasListeners): + +2009-11-01 Kelly Norton <knorton@google.com> + + Reviewed by Timothy Hatcher. + + Does not send DOM dispatches to the InspectorTimelineAgent if there + are no event listeners. + https://bugs.webkit.org/show_bug.cgi?id=30995 + + * dom/Node.cpp: + (WebCore::eventHasListeners): + (WebCore::Node::dispatchGenericEvent): + * xml/XMLHttpRequest.cpp: + (WebCore::XMLHttpRequest::callReadyStateChangeListener): + +2009-11-01 Roland Steiner <rolandsteiner@chromium.org> + + No review (build fix). + + Add missing files for Ruby implementation to WebCore.vcproj + (Fix build break after 50397) + https://bugs.webkit.org/show_bug.cgi?id=31001 + + No new tests. (No functional change) + + * WebCore.vcproj/WebCore.vcproj: + +2009-11-02 Roland Steiner <rolandsteiner@chromium.org> + + Reviewed by Dave Hyatt. + + Bug 28420 - Implement HTML5 <ruby> rendering + (https://bugs.webkit.org/show_bug.cgi?id=28420) + + First rudimentary implementation of HTML5 ruby rendering support. + + Following the HTML 5 spec, the box object model for a <ruby> element allows several runs of ruby + bases with their respective ruby texts looks as follows: + + 1 RenderRuby object, corresponding to the whole <ruby> HTML element + 1+ RenderRubyRun (anonymous) + 0 or 1 RenderRubyText - shuffled to the front in order to re-use existing block layouting + 0-n inline object(s) + 0 or 1 RenderRubyBase - contains the inline objects that make up the ruby base + 1-n inline object(s) + + Note: <rp> elements are defined as having 'display:none' and thus normally are not assigned a renderer. + + New layout tests will be committed in a follow-up patch under fast/ruby. + + Makefiles, etc. + * GNUmakefile.am: + * WebCore.gypi: + * WebCore.pro: + * WebCore.xcodeproj/project.pbxproj: + + CSS + * css/html.css: Added <ruby> and <rt> + + Existing render files: + * rendering/RenderBlock.cpp: make moveChild a member function moveChildTo + (WebCore::RenderBlock::moveChildTo): + (WebCore::RenderBlock::makeChildrenNonInline): + (WebCore::RenderBlock::removeChild): + * rendering/RenderBlock.h: + * rendering/RenderObject.cpp: + (WebCore::RenderObject::createObject): instantiate ruby renderers based on element name + * rendering/RenderObject.h: add query methods for ruby renderers + (WebCore::RenderObject::isRuby): + (WebCore::RenderObject::isRubyBase): + (WebCore::RenderObject::isRubyRun): + (WebCore::RenderObject::isRubyText): + + New ruby renderers: + * rendering/RenderRuby.cpp: Added. + (WebCore::lastRubyRun): + (WebCore::findRubyRunParent): + (WebCore::RenderRubyAsInline::RenderRubyAsInline): + (WebCore::RenderRubyAsInline::~RenderRubyAsInline): + (WebCore::RenderRubyAsInline::isChildAllowed): + (WebCore::RenderRubyAsInline::addChild): + (WebCore::RenderRubyAsInline::removeChild): + (WebCore::RenderRubyAsBlock::RenderRubyAsBlock): + (WebCore::RenderRubyAsBlock::~RenderRubyAsBlock): + (WebCore::RenderRubyAsBlock::isChildAllowed): + (WebCore::RenderRubyAsBlock::addChild): + (WebCore::RenderRubyAsBlock::removeChild): + * rendering/RenderRuby.h: Added. + (WebCore::RenderRubyAsInline::renderName): + (WebCore::RenderRubyAsInline::isRuby): + (WebCore::RenderRubyAsBlock::renderName): + (WebCore::RenderRubyAsBlock::isRuby): + * rendering/RenderRubyBase.cpp: Added. + (WebCore::RenderRubyBase::RenderRubyBase): + (WebCore::RenderRubyBase::~RenderRubyBase): + (WebCore::RenderRubyBase::isChildAllowed): + (WebCore::RenderRubyBase::splitToLeft): + (WebCore::RenderRubyBase::mergeWithRight): + * rendering/RenderRubyBase.h: Added. + (WebCore::RenderRubyBase::renderName): + (WebCore::RenderRubyBase::isRubyBase): + * rendering/RenderRubyRun.cpp: Added. + (WebCore::RenderRubyRun::RenderRubyRun): + (WebCore::RenderRubyRun::~RenderRubyRun): + (WebCore::RenderRubyRun::hasRubyText): + (WebCore::RenderRubyRun::hasRubyBase): + (WebCore::RenderRubyRun::isEmpty): + (WebCore::RenderRubyRun::rubyText): + (WebCore::RenderRubyRun::rubyBase): + (WebCore::RenderRubyRun::rubyBaseSafe): + (WebCore::RenderRubyRun::firstLineBlock): + (WebCore::RenderRubyRun::updateFirstLetter): + (WebCore::RenderRubyRun::isChildAllowed): + (WebCore::RenderRubyRun::addChild): + (WebCore::RenderRubyRun::removeChild): + (WebCore::RenderRubyRun::createRubyBase): + (WebCore::RenderRubyRun::staticCreateRubyRun): + * rendering/RenderRubyRun.h: Added. + (WebCore::RenderRubyRun::renderName): + (WebCore::RenderRubyRun::isRubyRun): + * rendering/RenderRubyText.cpp: Added. + (WebCore::RenderRubyText::RenderRubyText): + (WebCore::RenderRubyText::~RenderRubyText): + (WebCore::RenderRubyText::isChildAllowed): + * rendering/RenderRubyText.h: Added. + (WebCore::RenderRubyText::renderName): + (WebCore::RenderRubyText::isRubyText): + +2009-11-01 Alexey Proskuryakov <ap@apple.com> + + Reviewed by Dan Bernstein. + + https://bugs.webkit.org/show_bug.cgi?id=30992 + Node.isDefaultNamespace doesn't convert empty strings to null + + Test: fast/dom/Node/default-namespace-empty-argument.html + + * dom/Node.cpp: (WebCore::Node::isDefaultNamespace): Per DOM 3 Core, treat empty input + as null. + +2009-11-01 Yael Aharon <yael.aharon@nokia.com> + + Reviewed by Darin Adler. + + Don't add '/' to the URL path if the it does not include '/' after the protocol component + https://bugs.webkit.org/show_bug.cgi?id=30971 + + Match IE8 behaviour, that does not add '/' if there is none after the protocol component. + + * platform/KURL.cpp: + (WebCore::KURL::parse): + +2009-10-31 Oliver Hunt <oliver@apple.com> + + Reviewed by Darin Adler. + + Fix layering violations in GraphicsContext3D + https://bugs.webkit.org/show_bug.cgi?id=30986 + + Remove uses of HTMLImageElement and HTMLCanvasElement + + * html/canvas/CanvasRenderingContext3D.cpp: + (WebCore::CanvasRenderingContext3D::texImage2D): + (WebCore::CanvasRenderingContext3D::texSubImage2D): + * platform/graphics/GraphicsContext3D.h: + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::texImage2D): + (WebCore::GraphicsContext3D::texSubImage2D): + +2009-11-01 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=30964 + [Gtk] Implemment AtkDocument + + Provides access to expected document attributes. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (documentAttributeValue): + (webkit_accessible_document_get_document_attribute_value): + (webkit_accessible_document_get_document_attributes): + +2009-11-03 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Jan Alonzo. + + https://bugs.webkit.org/show_bug.cgi?id=30964 + [Gtk] Implemment AtkDocument + + Implements what has been implemented in AT-SPI. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (GetAtkInterfaceTypeFromWAIType): + (getInterfaceMaskFromObject): + (atk_document_interface_init): + (webkit_accessible_document_get_document_attribute_value): + (webkit_accessible_document_get_document_attributes): + (webkit_accessible_document_get_locale): + +2009-11-01 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Eric Seidel. + + Turn on warnings for QtWebKit for gcc + https://bugs.webkit.org/show_bug.cgi?id=30958 + + No new tests as there is no functional change. + + * platform/image-decoders/qt/RGBA32BufferQt.cpp: + (WebCore::RGBA32Buffer::RGBA32Buffer): Reorder + initialization list to fix compiler warnings. + + +2009-11-01 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Pavel Feldman. + + [Regression] monitorEvent doesn't work + + * inspector/front-end/InjectedScript.js: + (InjectedScript._ensureCommandLineAPIInstalled): + +2009-11-01 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Pavel Feldman. + + Fix Web Inspector: Bug with Message Bubble in Syntax Highlighter + https://bugs.webkit.org/show_bug.cgi?id=30990 + + * inspector/front-end/SourceFrame.js: + +2009-10-31 Alexey Proskuryakov <ap@apple.com> + + Reviewed by John Sullivan. + + https://bugs.webkit.org/show_bug.cgi?id=30982 + createHTMLDocument doesn't escape ampersand and less-than in title + + Test: fast/dom/DOMImplementation/createHTMLDocument-title.html + + * dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createHTMLDocument): + Set document title after creating the document, avoiding parser intricacies. + +2009-11-01 Keishi Hattori <casey.hattori@gmail.com> + + Reviewed by Timothy Hatcher. + + Web Inspector: Double clicking on a breakpoints should not select text + https://bugs.webkit.org/show_bug.cgi?id=30950 + + * inspector/front-end/SourceFrame.js: + (WebInspector.SourceFrame.prototype._documentMouseDown): + +2009-11-01 Yuta Kitamura <yutak@chromium.org> + + Reviewed by Darin Adler. + + Fix assertion falure in RenderObjectChildList::updateBeforeAfterContent(). + + [Crash (debug)] Combination of list-item and :after causes assertion failure + https://bugs.webkit.org/show_bug.cgi?id=30944 + + Test: fast/css/list-item-pseudo-nocrash.html + + * rendering/RenderObjectChildList.cpp: + (WebCore::RenderObjectChildList::updateBeforeAfterContent): + +2009-11-01 Philippe Normand <pnormand@igalia.com> + + Reviewed by Eric Seidel. + + https://bugs.webkit.org/show_bug.cgi?id=30586 + [GTK] Failing test media/video-src-empty.html + + Correctly set network/ready state depending on GStreamer errors + received on the bus. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::mediaPlayerPrivateMessageCallback): + +2009-10-31 Oliver Hunt <oliver@apple.com> + + Build fix + + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::attachShader): + +2009-10-31 Oliver Hunt <oliver@apple.com> + + Reviewed by Darin Adler. + + Remove obsolete null checks from CanvasRenderingContext3DMac + https://bugs.webkit.org/show_bug.cgi?id=30983 + + * platform/graphics/mac/GraphicsContext3DMac.cpp: + (WebCore::GraphicsContext3D::attachShader): + (WebCore::GraphicsContext3D::bindAttribLocation): + (WebCore::GraphicsContext3D::compileShader): + (WebCore::GraphicsContext3D::detachShader): + (WebCore::GraphicsContext3D::framebufferRenderbuffer): + (WebCore::GraphicsContext3D::framebufferTexture2D): + (WebCore::GraphicsContext3D::linkProgram): + (WebCore::GraphicsContext3D::shaderSource): + (WebCore::GraphicsContext3D::useProgram): + (WebCore::GraphicsContext3D::validateProgram): + (WebCore::GraphicsContext3D::getProgramInfoLog): + (WebCore::GraphicsContext3D::getShaderi): + (WebCore::GraphicsContext3D::getShaderiv): + (WebCore::GraphicsContext3D::getShaderInfoLog): + (WebCore::GraphicsContext3D::getShaderSource): + (WebCore::GraphicsContext3D::getUniformLocation): + +2009-10-31 Oliver Hunt <oliver@apple.com> + + Reviewed by Jon Honeycutt. + + WebGL allows objects to be used with the wrong context + https://bugs.webkit.org/show_bug.cgi?id=30981 + + Simply add null checks and a few context guards to ensure we don't + deref null or attempt to use an object from a different context. + + Tests: fast/canvas/webgl/incorrect-context-object-behaviour.html + fast/canvas/webgl/null-object-behaviour.html + + * html/canvas/CanvasRenderingContext3D.cpp: + (WebCore::CanvasRenderingContext3D::attachShader): + (WebCore::CanvasRenderingContext3D::bindAttribLocation): + (WebCore::CanvasRenderingContext3D::bindBuffer): + (WebCore::CanvasRenderingContext3D::bindFramebuffer): + (WebCore::CanvasRenderingContext3D::bindRenderbuffer): + (WebCore::CanvasRenderingContext3D::bindTexture): + (WebCore::CanvasRenderingContext3D::compileShader): + (WebCore::CanvasRenderingContext3D::detachShader): + (WebCore::CanvasRenderingContext3D::framebufferRenderbuffer): + (WebCore::CanvasRenderingContext3D::framebufferTexture2D): + (WebCore::CanvasRenderingContext3D::getProgrami): + (WebCore::CanvasRenderingContext3D::getProgramiv): + (WebCore::CanvasRenderingContext3D::getProgramInfoLog): + (WebCore::CanvasRenderingContext3D::getShaderi): + (WebCore::CanvasRenderingContext3D::getShaderiv): + (WebCore::CanvasRenderingContext3D::getShaderInfoLog): + (WebCore::CanvasRenderingContext3D::getShaderSource): + (WebCore::CanvasRenderingContext3D::getUniformf): + (WebCore::CanvasRenderingContext3D::getUniformfv): + (WebCore::CanvasRenderingContext3D::getUniformi): + (WebCore::CanvasRenderingContext3D::getUniformiv): + (WebCore::CanvasRenderingContext3D::getUniformLocation): + (WebCore::CanvasRenderingContext3D::isBuffer): + (WebCore::CanvasRenderingContext3D::linkProgram): + (WebCore::CanvasRenderingContext3D::shaderSource): + * html/canvas/CanvasRenderingContext3D.h: + * html/canvas/CanvasRenderingContext3D.idl: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's MediaQueryResult + https://bugs.webkit.org/show_bug.cgi?id=30857 + + Inherits MediaQueryResult class from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSStyleSelector.cpp:5984 and + it is no need to be copyable. + + * css/CSSStyleSelector.h: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's MediaQueryEvaluator + https://bugs.webkit.org/show_bug.cgi?id=30854 + + Inherits MediaQueryEvaluator class from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSStyleSelector.cpp:401 and + it is no need to be copyable. + + * css/MediaQueryEvaluator.h: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's CSSRuleSet + https://bugs.webkit.org/show_bug.cgi?id=30852 + + Inherits CSSRuleSet class from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSStyleSelector.cpp:455 and + it is no need to be copyable. + + * css/CSSStyleSelector.cpp: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's CSSRuleData + https://bugs.webkit.org/show_bug.cgi?id=30851 + + Inherits CSSRuleData class from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSStyleSelector.h:320 and + it is no need to be copyable. + + * css/CSSStyleSelector.h: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's CSSRuleDataList + https://bugs.webkit.org/show_bug.cgi?id=30850 + + Inherits CSSRuleDataList class from Noncopyable because it has been + instantiated by 'new' in WebCore/css/CSSStyleSelector.cpp:2715 and + it is no need to be copyable. + + * css/CSSStyleSelector.h: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's CSSNamespace + https://bugs.webkit.org/show_bug.cgi?id=30849 + + Inherits CSSNamespace struct from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSStyleSheet.cpp:141 and + it is no need to be copyable. + + * css/CSSNamespace.h: + +2009-10-30 Dmitry Titov <dimich@chromium.org> + + Reviewed by David Levin. + + Refactor DatabaseTask in preparation for removing threadsafe refcounting from it. + Move the synchronizer object out of the DatabaseTask so there is no need to keep + the pointer to Databasetask around after passing it to MessageQueue. + Also pass the references to return parameters to the task so it can update them. + https://bugs.webkit.org/show_bug.cgi?id=30941 + + No new tests, since this is just moving the code around, no change in functionality. + + * storage/Database.cpp: + (WebCore::Database::Database): + (WebCore::Database::openAndVerifyVersion): Use new DatabaseTaskSynchronizer to wait for task completion. + (WebCore::Database::markAsDeletedAndClose): Ditto. + (WebCore::Database::tableNames): Ditto. + (WebCore::Database::stop): Use the boolean flag rather then 'killed' flag built into MessageQueue. + (WebCore::Database::scheduleTransaction): Transaction queue is a Deque now, change the way to fetch the transaction. + * storage/Database.h: Change the SQLTransaction queue to be a Deque rather then a MessageQueue. + * storage/DatabaseTask.cpp: + (WebCore::DatabaseTaskSynchronizer::DatabaseTaskSynchronizer): + (WebCore::DatabaseTaskSynchronizer::waitForTaskCompletion): + (WebCore::DatabaseTaskSynchronizer::taskCompleted): + (WebCore::DatabaseTask::DatabaseTask): Ctor takes DatabaseTaskSynchronizer which can be 0. + (WebCore::DatabaseTask::performTask): Signal completion. m_synchronizer should still be around since main thread is waiting on it. + (WebCore::DatabaseOpenTask::DatabaseOpenTask): Pass synchronizer and return parameters via constructor. + (WebCore::DatabaseCloseTask::DatabaseCloseTask): Ditto. + (WebCore::DatabaseTransactionTask::DatabaseTransactionTask): Ditto. + (WebCore::DatabaseTableNamesTask::DatabaseTableNamesTask): Ditto. + * storage/DatabaseTask.h: + (WebCore::DatabaseOpenTask::create): + (WebCore::DatabaseCloseTask::create): + (WebCore::DatabaseTransactionTask::create): + (WebCore::DatabaseTableNamesTask::create): + +2009-10-30 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + REGRESSION: In Mail, Undo does not restore some characters I have deleted at the end of a line + https://bugs.webkit.org/show_bug.cgi?id=30955 + <rdar://problem/7067033> + + When the command is deleteWordBackward or deleteWordForward + we should not add to the open typing command, but + create a new one. + + Test: editing/undo/undo-deleteWord.html + + * editing/TypingCommand.cpp: + (WebCore::TypingCommand::deleteKeyPressed): Always start a new command if the granularity is + not CharacterGranularity. + (WebCore::TypingCommand::forwardDeleteKeyPressed): Always start a new command if the granularity is + not CharacterGranularity. + +2009-10-30 Eric Carlson <eric.carlson@apple.com> + + Reviewed by Darin Adler. + + Make MediaPlayer constructor private + https://bugs.webkit.org/show_bug.cgi?id=30965 + + * html/HTMLMediaElement.cpp: + (WebCore::HTMLMediaElement::loadResource): + (WebCore::HTMLMediaElement::finishParsingChildren): Use MediaPlayer::create. + + * platform/graphics/MediaPlayer.h: + (WebCore::MediaPlayer::create): New. + +2009-10-29 Jon Honeycutt <jhoneycutt@apple.com> + + MSAA: Accessibility of headings is not correct + + https://bugs.webkit.org/show_bug.cgi?id=30937 + + Reviewed by Alice Liu. + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::stringRoleForMSAA): + (WebCore::AccessibilityObject::descriptionForMSAA): + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::shouldReturnTagNameAsRoleForMSAA): + If the element's tag name is one of h1, h2, h3, h4, h5, h6, return + true. + (WebCore::AccessibilityRenderObject::stringRoleForMSAA): + If the element should return its tag name as the role, return the tag + name. + (WebCore::AccessibilityRenderObject::positionalDescriptionForMSAA): + If the object is a heading, return the string "L" followed by the + heading level. + (WebCore::AccessibilityRenderObject::descriptionForMSAA): + If the object has a positional description, return it. Otherwise, get + the accessibility description, and prefix it with "Description" so that + MSAA clients know that it's not a positional description. + + * accessibility/AccessibilityRenderObject.h: + +2009-10-29 Jon Honeycutt <jhoneycutt@apple.com> + + MSAA: Accessibility of links is wrong + + https://bugs.webkit.org/show_bug.cgi?id=30928 + + Reviewed by Darin Adler. + + * accessibility/AccessibilityImageMapLink.cpp: + (WebCore::AccessibilityImageMapLink::stringValueForMSAA): + Return the URL. + (WebCore::AccessibilityImageMapLink::nameForMSAA): + Return the alt text. + + * accessibility/AccessibilityImageMapLink.h: + (WebCore::AccessibilityImageMapLink::isLinked): + Return true. + + * accessibility/AccessibilityObject.h: + (WebCore::AccessibilityObject::isLinked): + (WebCore::AccessibilityObject::stringValueForMSAA): + (WebCore::AccessibilityObject::nameForMSAA): + + * accessibility/AccessibilityRenderObject.cpp: + (WebCore::isLinkable): + Return true if the element is considered "linkable" with respect to + accessibility. + (WebCore::AccessibilityRenderObject::stringValueForMSAA): + If the element is linkable, check whether it has a parent anchor + element. If so, return the anchor element's href. + (WebCore::AccessibilityRenderObject::isLinked): + Return true if the element is linkable and if it's parent anchor tag's + href is non-empty. + (WebCore::AccessibilityRenderObject::nameForMSAA): + For text nodes, return the text. + + * accessibility/AccessibilityRenderObject.h: + +2009-10-30 Evan Stade <estade@chromium.org> + + Reviewed by David Levin. + + Notify the chrome when the focused node has changed. + https://bugs.webkit.org/show_bug.cgi?id=30832 + + This is similar to AX code that is already in place, except that this also informs the + chrome when there stops being a focused node. This is needed for a browser to show the + anchor for links that have keyboard focus. + + * dom/Document.cpp: + (WebCore::Document::setFocusedNode): + * loader/EmptyClients.h: + (WebCore::EmptyChromeClient::focusedNodeChanged): + * page/Chrome.cpp: + (WebCore::Chrome::focusedNodeChanged): + * page/Chrome.h: + * page/ChromeClient.h: + +2009-10-30 Ben Murdoch <benm@google.com> + + Reviewed by David Kilzer. + + openDatabase() with empty version sets db version up incorrectly + https://bugs.webkit.org/show_bug.cgi?id=28417 + + Test: storage/open-database-set-empty-version.html + + * storage/Database.cpp: + (WebCore::Database::performOpenAndVerify): Raise an exception if the current database version does not match the expected version when the current version is the empty string. + +2009-10-30 John Gregg <johnnyg@google.com> + + Reviewed by David Levin. + + Need to turn off notifications properly at runtime + https://bugs.webkit.org/show_bug.cgi?id=30409 + + Moving the notificationsEnabled bit from NotificationCenter + to the new V8 RuntimeEnabledFeatures object. + + Just moving a bit around, so no new tests. + + * bindings/v8/RuntimeEnabledFeatures.cpp: + * bindings/v8/RuntimeEnabledFeatures.h: + (WebCore::RuntimeEnabledFeatures::setNotificationsEnabled): + (WebCore::RuntimeEnabledFeatures::notificationsEnabled): + * bindings/v8/custom/V8DOMWindowCustom.cpp: + (WebCore::ACCESSOR_RUNTIME_ENABLER): + * bindings/v8/custom/V8WorkerContextCustom.cpp: + (WebCore::ACCESSOR_RUNTIME_ENABLER): + * notifications/NotificationCenter.cpp: + * notifications/NotificationCenter.h: + +2009-10-30 Dmitry Titov <dimich@chromium.org> + + Reviewed by Dimitri Glazkov. + + [V8] More cleanup after r49949: remove ListenerGuard. + ListenerGuard is no longer needed since EventListeners do not depend on frame or v8 context. + https://bugs.webkit.org/show_bug.cgi?id=30943 + + Covered by fast/events/add-event-without-document.html which will now pass in Chromium. + + * bindings/v8/V8AbstractEventListener.cpp: + (WebCore::V8AbstractEventListener::V8AbstractEventListener): + (WebCore::V8AbstractEventListener::handleEvent): + * bindings/v8/V8AbstractEventListener.h: + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::getEventListener): + * bindings/v8/V8EventListenerList.h: + (WebCore::V8EventListenerList::findOrCreateWrapper): + * bindings/v8/V8LazyEventListener.cpp: + (WebCore::V8LazyEventListener::V8LazyEventListener): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::V8Proxy): + (WebCore::V8Proxy::disconnectFrame): + (WebCore::V8Proxy::clearForNavigation): + * bindings/v8/V8Proxy.h: + * bindings/v8/V8WorkerContextEventListener.cpp: + (WebCore::V8WorkerContextEventListener::V8WorkerContextEventListener): + (WebCore::V8WorkerContextEventListener::handleEvent): + (WebCore::V8WorkerContextEventListener::reportError): + * bindings/v8/V8WorkerContextEventListener.h: + (WebCore::V8WorkerContextEventListener::create): + * bindings/v8/WorkerContextExecutionProxy.cpp: + (WebCore::WorkerContextExecutionProxy::WorkerContextExecutionProxy): + (WebCore::WorkerContextExecutionProxy::dispose): + (WebCore::WorkerContextExecutionProxy::findOrCreateEventListener): + * bindings/v8/WorkerContextExecutionProxy.h: + * bindings/v8/custom/V8CustomEventListener.cpp: + (WebCore::V8EventListener::V8EventListener): + * bindings/v8/custom/V8CustomEventListener.h: + (WebCore::V8EventListener::create): + +2009-10-30 Shinichiro Hamaji <hamaji@chromium.org> + + Reviewed by Darin Adler. + + counterValueForElementById should return space-separated string for multiple counters + https://bugs.webkit.org/show_bug.cgi?id=30939 + + Test: fast/css/counters/counterValueForElementById.html + + * rendering/RenderTreeAsText.cpp: + (WebCore::writeCounterValuesFromChildren): + (WebCore::counterValueForElement): + +2009-10-30 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + Reviewed by Gustavo Noronha. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::paint): + Add some comments to explain what is happening here. + +2009-10-30 Alexander Pavlov <apavlov@chromium.org> + + Reviewed by Timothy Hatcher. + + Fix Web Inspector crash on the errors/warnings counter click + + RenderObject::createVisiblePosition(const Position& position) + understands "null Positions", so we can construct such a Position manually. + + https://bugs.webkit.org/show_bug.cgi?id=30499 + + * rendering/RenderBox.cpp: + (WebCore::RenderBox::positionForPoint): + +2009-10-30 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25534 + [GTK] Objects of ROLE_TABLE should implement the accessible table interface + + Third part of the implementation of AtkTable. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (nameFromChildren): + (webkit_accessible_get_name): + New convenience function to construct an object's name using the name(s) of + any children it has. + + (atk_table_interface_init): + (webkit_accessible_table_get_column_description): + (webkit_accessible_table_get_row_description): + Implemented. + + (webkit_accessible_table_get_column_header): + Stub function added so that webkit_accessible_table_get_column_description + could be implemented in the meantime. + +2009-10-30 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25534 + [GTK] Objects of ROLE_TABLE should implement the accessible table interface + + Second part of the implementation of AtkTable. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (cellAtIndex): + (webkit_accessible_table_get_column_at_index): + (webkit_accessible_table_get_row_at_index): + (webkit_accessible_table_get_caption): + (atk_table_interface_init): + +2009-10-30 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Add TimelinePanel into the panels enum. + + https://bugs.webkit.org/show_bug.cgi?id=30915 + + * inspector/InspectorFrontend.cpp: + (WebCore::InspectorFrontend::showPanel): + * inspector/front-end/inspector.js: + (WebInspector.showTimelinePanel): + +2009-10-30 Kenneth Rohde Christiansen <kenneth@webkit.org> + + Reviewed by Holger Hans Peter Freyther. + + If the owner widget of the page has a palette set, we + should use that one. This was only working when the + owner was a QWebView. This patch fixes that. + + * platform/qt/RenderThemeQt.cpp: + (WebCore::RenderThemeQt::applyTheme): + +2009-10-30 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: Wire CookieJarChromium to the cookies + backend. This is a final step of a 3-steps raw cookies + access implementation in Chromium. + + * platform/network/chromium/CookieJarChromium.cpp: + (WebCore::getRawCookies): + (WebCore::deleteCookie): + +2009-10-30 Yury Semikhatsky <yurys@chromium.org> + + Reviewed by Pavel Feldman. + + Fix Chromium crash in console.log in "deeply recursive" function + + Check that result of 'frameSourceName' is not null handle + before casting it to String. + + Allow V8Proxy::sourceName/sourceLineNumber() to report + that they have failed due to JavaScript stack overflow. + + https://bugs.webkit.org/show_bug.cgi?id=30904 + + * bindings/scripts/CodeGeneratorV8.pm: + * bindings/v8/ScriptCallStack.cpp: + (WebCore::ScriptCallStack::create): + (WebCore::ScriptCallStack::ScriptCallStack): + * bindings/v8/ScriptCallStack.h: + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::sourceLineNumber): + (WebCore::V8Proxy::sourceName): + * bindings/v8/V8Proxy.h: + * bindings/v8/custom/V8WorkerContextCustom.cpp: + (WebCore::CALLBACK_FUNC_DECL): + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's MediaQuery + https://bugs.webkit.org/show_bug.cgi?id=30856 + + Inherits MediaQuery class from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSParser.cpp:4905 and + it is no need to be copyable. + + * css/CSSStyleSelector.h: + +2009-10-30 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's MediaQueryExp + https://bugs.webkit.org/show_bug.cgi?id=30855 + + Inherits MediaQueryExp class from FastAllocBase because it is + instantiated by 'new' in WebCore/css/CSSParser.cpp:4874. + + * css/MediaQueryExp.h: + +2009-10-30 Roland Steiner <rolandsteiner@chromium.org> + + Reviewed by Eric Seidel. + + Remove ENABLE_RUBY guards as discussed with Dave Hyatt and Maciej Stachowiak. + + Bug 28420 - Implement HTML5 <ruby> rendering + (https://bugs.webkit.org/show_bug.cgi?id=28420) + + No new tests (no functional change). + + * Configurations/FeatureDefines.xcconfig: + * DerivedSources.make: + * GNUmakefile.am: + * WebCore.pro: + * WebCore.vcproj/WebCoreCommon.vsprops: + * WebCore.vcproj/build-generated-files.sh: + +2009-10-30 Dan Bernstein <mitz@apple.com> + + Reviewed by Adele Peterson. + + Removed test for an impossible condition (a glyph in a right-to-left run not having + the RTL flag 0x800) + + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: + (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): + +2009-10-29 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + [V8] Out-of-memory crash in isolated worlds + https://bugs.webkit.org/show_bug.cgi?id=30906 + + We need to handle the fact that creating a V8:Context might fail. I + don't know how to test this change because creating a context usually + only fails when V8 decides it's using too much memory. + + * bindings/v8/V8IsolatedWorld.cpp: + (WebCore::V8IsolatedWorld::V8IsolatedWorld): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluateInIsolatedWorld): + (WebCore::V8Proxy::evaluateInNewContext): + +2009-10-29 Erik Arvidsson <arv@chromium.org> + + Reviewed by Eric Seidel. + + Make links mouse focusable only on GTK and QT. + + Links are now always mouse focusable on GTK and QT. On other platforms + the link needs a tabIndex or it needs to be contentEditable. + + https://bugs.webkit.org/show_bug.cgi?id=26856 + + * html/HTMLAnchorElement.cpp: + (WebCore::HTMLAnchorElement::isMouseFocusable): + +2009-10-29 Dan Bernstein <mitz@apple.com> + + Reviewed by Sam Weinig. + + Complete the fix for hit-testing and selection highlighting in ligatures for the ATSUI + code path. + + * platform/graphics/mac/ComplexTextController.h: Added m_ltr member to ComplexTextRun. + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: + (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): Skip over deleted + glyphs, but update indexes and advances correctly. + (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Initialize m_ltr. + +2009-10-29 Enrica Casucci <enrica@apple.com> + + Reviewed by Darin Adler. + + REGRESSION(3.2.3 - 4.0.2): Message composing: when I undo a color change to text in Mail, undo/redo behaves strangely + <rdar://problem/7115041> + https://bugs.webkit.org/show_bug.cgi?id=30892 + + This problem shows in any scenario where it is necessary to split a text + node to apply a style. SplitElementCommand and WrapContentsInDummySpanCommand both + have member variables initialized in the constructor to keep reference to elements + they need to operate upon. These reference are not updated when reapplying the command. + For this reason it is necessary to guarantee that unapply doesn not delete the references + and that these commands implement doReapply to correctly reuse the existing + elements. + + Test: editing/undo/redo-style.html + + * editing/SplitElementCommand.cpp: + (WebCore::SplitElementCommand::executeApply): Added. + (WebCore::SplitElementCommand::doApply): Modified to call executeApply. + (WebCore::SplitElementCommand::doUnapply): Doesn't release m_element1. + (WebCore::SplitElementCommand::doReapply): Added. + * editing/SplitElementCommand.h: Added doReapply and executeApply. + * editing/WrapContentsInDummySpanCommand.cpp: + (WebCore::WrapContentsInDummySpanCommand::executeApply): Added. + (WebCore::WrapContentsInDummySpanCommand::doApply): Modified to call executeApply. + (WebCore::WrapContentsInDummySpanCommand::doUnapply): Doesn't release m_dummySpan. + (WebCore::WrapContentsInDummySpanCommand::doReapply): Added. + * editing/WrapContentsInDummySpanCommand.h: Added doReapply and executeApply. + +2009-10-29 Jeremy Orlow <jorlow@chromium.org> + + Reviewed by Darin Fisher. + + DOM Storage's condition variable needs to handle spurious wakeups + https://bugs.webkit.org/show_bug.cgi?id=30920 + + Add a boolean to keep track of whether it's been terminated. Clean + up the locking code a tiny bit to make it easier to read. There's + no way to reproduce this reliably in a LayoutTest. + + * storage/LocalStorageThread.cpp: + (WebCore::LocalStorageThread::LocalStorageThread): + (WebCore::LocalStorageThread::terminate): + (WebCore::LocalStorageThread::performTerminate): + * storage/LocalStorageThread.h: + +2009-10-29 Dimitri Glazkov <dglazkov@chromium.org> + + Unreviewed, build fix. + + [Chromium] Include ComplextTextController into Chromium Mac project. + + * WebCore.gyp/WebCore.gyp: Added include rule for ComplextText* files. + +2009-10-29 Timothy Hatcher <timothy@apple.com> + + Fix tabbing through element attributes in the Web Insector. + + https://bugs.webkit.org/show_bug.cgi?id=30429 + + Reviewed by Pavel Feldman. + + * inspector/front-end/ElementsTreeOutline.js: + (WebInspector.ElementsTreeElement.prototype._attributeEditingCommitted): Don't call _updateTitle, + it is called for us when removeAttribute succeeds in the back-end. + (WebInspector.ElementsTreeElement.prototype._textNodeEditingCommitted): Ditto except for nodeValue. + (WebInspector.ElementsTreeElement.prototype._editingCancelled): Don't call _updateTitle, editing code reverts. + (WebInspector.ElementsTreeElement.prototype._updateTitle): Return early if we are editing. + +2009-10-29 Dan Bernstein <mitz@apple.com> + + Reviewed by Sam Weinig. + + Problem editing or selecting text containing ligatures + https://bugs.webkit.org/show_bug.cgi?id=30025 + + Test: platform/mac/fast/text/ligature-subdivision.html + + * platform/graphics/mac/ComplexTextController.cpp: + (WebCore::ComplexTextController::ComplexTextController): Initialize + m_characterInCurrentGlyph. + (WebCore::ComplexTextController::offsetForPosition): If the hit glyph spans multiple + characters, compute the hit character based on dividing the glyph’s total advance into + a number of equal intervals equal to the number of characters and assigning the hit to the + character corresponding to the hit interval. + (WebCore::ComplexTextController::advance): If the final offset occurs mid-glyph, advance + by a fraction of the glyph’s total advance. + * platform/graphics/mac/ComplexTextController.h: Added m_characterInCurrentGlyph. + +2009-10-29 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Timothy Hatcher. + + Fixes <http://webkit.org/b/30918>. + Web Inspector: Datagrid Rows on Windows not properly aligned. + + Use line-height for the table rows to make sure the height + of our text and the height of the table rows are consistent. + + * inspector/front-end/inspector.css: + +2009-10-29 Adam Barth <abarth@webkit.org> + + No review, rolling out r50296. + http://trac.webkit.org/changeset/50296 + + * bindings/v8/V8IsolatedWorld.cpp: + (WebCore::V8IsolatedWorld::V8IsolatedWorld): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluateInIsolatedWorld): + (WebCore::V8Proxy::evaluateInNewContext): + +2009-10-29 Adam Barth <abarth@webkit.org> + + Reviewed by Dimitri Glazkov. + + [V8] Out-of-memory crash in isolated worlds + https://bugs.webkit.org/show_bug.cgi?id=30906 + + We need to handle the fact that creating a V8:Context might fail. I + don't know how to test this change because creating a context usually + only fails when V8 decides it's using too much memory. + + * bindings/v8/V8IsolatedWorld.cpp: + (WebCore::V8IsolatedWorld::V8IsolatedWorld): + * bindings/v8/V8Proxy.cpp: + (WebCore::V8Proxy::evaluateInIsolatedWorld): + (WebCore::V8Proxy::evaluateInNewContext): + +2009-10-29 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Reviewed by Xan Lopez. + + Remove build warning introduced by r50284. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::duration): + +2009-10-29 Dimitri Glazkov <dglazkov@chromium.org> + + Reviewed by Adam Barth. + + [V8] Remove random crashes by removing retrieval of V8 context during garbage collection. + + https://bugs.webkit.org/show_bug.cgi?id=30919 + + Unfortunately, I haven't been able to trigger this crash explicitly, so no test :(. + + * bindings/v8/V8DOMWrapper.cpp: + (WebCore::V8DOMWrapper::jsWrapperForDOMObject): Added new "assume-it's-there" getter. + * bindings/v8/V8DOMWrapper.h: Added getter decl. + * bindings/v8/V8GCController.cpp: + (WebCore::GCPrologueVisitor::visitDOMWrapper): Changed to use explicit getter. + +2009-10-29 Dimitri Glazkov <dglazkov@chromium.org> + + Unreviewed, build fix. + + [Chromium] Adjust the project files to sync up with + http://trac.webkit.org/changeset/50259 + + * WebCore.gypi: Renamed and added files. + +2009-10-29 Laszlo Gombos <laszlo.1.gombos@nokia.com> + + Reviewed by Tor Arne Vestbø. + + [Qt] Implement DELETE HTTP method for XmlHttpRequest + https://bugs.webkit.org/show_bug.cgi?id=30894 + + No new tests as this functionality is already tested by the + xmlhttprequest LayoutTests. As this patch depends on an unreleased + version of the dependent QtNetwork library and the tests will be + enabled later once the dependent library is released (and the + buildbot is updated). + + * platform/network/qt/QNetworkReplyHandler.cpp: + (WebCore::QNetworkReplyHandler::QNetworkReplyHandler): + (WebCore::QNetworkReplyHandler::start): + +2009-10-29 Brian Weinstein <bweinstein@apple.com> + + Reviewed by Timothy Hatcher. + + Part of <http://webkit.org/b/30483>. + Web Inspector: Always show the Local and Session Storage Views. + + Even if the length of the DOM Storage entry array is 0, still + generate the Datagrid because users can add things storage items + through the UI, so we should allow them to even if there isn't + anything there currently. + + * English.lproj/localizedStrings.js: Removed "This Storage is Empty". + * inspector/front-end/DOMStorageItemsView.js: + (WebInspector.DOMStorageItemsView.prototype._showDOMStorageEntries): + +2009-10-29 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: Add TimelinePanel into the panels enum. + + https://bugs.webkit.org/show_bug.cgi?id=30915 + + * inspector/InspectorController.cpp: + (WebCore::InspectorController::specialPanelForJSName): + * inspector/InspectorController.h: + (WebCore::InspectorController::): + +2009-10-29 Xan Lopez <xlopez@igalia.com> + + Reviewed by Oliver Hunt. + + [GTK] Threading problems with some of the tests + https://bugs.webkit.org/show_bug.cgi?id=30814 + + Create strings shared among threads with crossThreadString + constructor method. + + * storage/Database.cpp: + (WebCore::Database::Database): + +2009-10-29 Sebastian Dröge <sebastian.droege@collabora.co.uk> + + Reviewed by Gustavo Noronha. + + https://bugs.webkit.org/show_bug.cgi?id=30308 + + Add support for ARGB videos. + + * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp: + (WebCore::MediaPlayerPrivate::paint): + Create the Cairo image surface for ARGB32 or RGB24 + depending on the buffer's caps. + + * platform/graphics/gtk/VideoSinkGStreamer.cpp: + (webkit_video_sink_timeout_func): + (webkit_video_sink_render): + Handle ARGB video and convert GStreamer's ARGB to + Cairo's for displaying. + +2009-10-29 Anton Muhin <antonm@chromium.org> + + Reviewed by David Levin. + + [chromium] expose a method to access memory usage information in ChromiumBridge + Declare a static method to be implemented by http://codereview.chromium.org/332010/ + https://bugs.webkit.org/show_bug.cgi?id=30829 + + * platform/chromium/ChromiumBridge.h: + +2009-10-29 Joanmarie Diggs <joanmarie.diggs@gmail.com> + + Reviewed by Xan Lopez. + + https://bugs.webkit.org/show_bug.cgi?id=25679 + [Gtk] Improve accessibility of focusable lists + + Implements the AtkSelection interface and enables the corresponding + (and expected) object:selection-changed event. + + * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp: + (optionFromList): + (optionFromSelection): + (atk_selection_interface_init): + (webkit_accessible_selection_add_selection): + (webkit_accessible_selection_clear_selection): + (webkit_accessible_selection_ref_selection): + (webkit_accessible_selection_get_selection_count): + (webkit_accessible_selection_is_child_selected): + (webkit_accessible_selection_remove_selection): + (webkit_accessible_selection_select_all_selection): + (GetAtkInterfaceTypeFromWAIType): + * accessibility/gtk/AXObjectCacheAtk.cpp: + (AXObjectCache::postPlatformNotification): + +2009-10-29 Jian Li <jianli@chromium.org> + + Reviewed by Darin Adler. + + Bug 30655 - Only plain text should be copied to clipboard for TextArea. + https://bugs.webkit.org/show_bug.cgi?id=30655 + + * editing/Editor.cpp: + (WebCore::nodeIsInTextFormControl): + (WebCore::Editor::cut): + (WebCore::Editor::copy): + +2009-10-29 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: hide timeline for now - not yet ready. + + https://bugs.webkit.org/show_bug.cgi?id=30912 + + * inspector/front-end/inspector.js: + (WebInspector._createPanels): + +2009-10-29 Pavel Feldman <pfeldman@chromium.org> + + Not reviewed: deploy Web Inspector's images in WebCore.gypi. + + * WebCore.gypi: + +2009-10-29 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Timothy Hatcher. + + Web Inspector: get rid of timelineProfilerEnabled method. + + https://bugs.webkit.org/show_bug.cgi?id=30911 + + * inspector/InspectorBackend.cpp: + * inspector/InspectorBackend.h: + * inspector/InspectorBackend.idl: + * inspector/InspectorController.cpp: + (WebCore::InspectorController::setWindowVisible): + * inspector/InspectorController.h: + * inspector/front-end/TimelinePanel.js: + (WebInspector.TimelinePanel.prototype._toggleTimelineButtonClicked): + +2009-10-29 Pavel Feldman <pfeldman@chromium.org> + + Reviewed by Darin Fisher. + + Create stub methods for raw cookies access in ChromiumBridge.h + + https://bugs.webkit.org/show_bug.cgi?id=30910 + + * platform/chromium/ChromiumBridge.h: + +2009-10-29 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's RareData + https://bugs.webkit.org/show_bug.cgi?id=30858 + + Inherits RareData struct from Noncopyable because it is + instantiated by 'new' in WebCore/css/CSSSelector.h:259 and + it is no need to be copyable. + + * css/CSSSelector.h: + +2009-10-29 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's ShorthandScope + https://bugs.webkit.org/show_bug.cgi?id=30859 + + Inherits ShorthandScope class from FastAllocBase because it is + instantiated by 'new' in WebCore/css/CSSParser.cpp:902 and + it is no need to be copyable. + + * css/CSSParser.h: + +2009-10-29 Zoltan Horvath <zoltan@webkit.org> + + Reviewed by Darin Adler. + + Allow custom memory allocation control for WebCore's AXObjectCache + https://bugs.webkit.org/show_bug.cgi?id=30848 + + Inherits AXObjectCache class from FastAllocBase because it is + instantiated by 'new' in WebCore/dom/Document.cpp:1537 and + it is no need to be copyable. + + * accessibility/AXObjectCache.h: + +2009-10-28 Adam Barth <abarth@webkit.org> + + Reviewed by Eric Seidel. + + Don't run JavaScript URLs in view source mode + https://bugs.webkit.org/show_bug.cgi?id=30881 + + Just say no. + + Test: http/tests/security/view-source-no-javascript-url.html + + * bindings/ScriptControllerBase.cpp: + (WebCore::ScriptController::executeIfJavaScriptURL): + +2009-10-29 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> + + Unreviewed. Fixes style problems pointed out by Evan Martin. + + * platform/gtk/Language.cpp: + (WebCore::defaultLanguage): + +2009-10-29 Dan Bernstein <mitz@apple.com> + + Rubber-stamped by Mark Rowe. + + 64-bit Leopard build fix after r50259 + + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: + Declared ATSUTextInserted in 64-bit. + (WebCore::fontHasMirroringInfo): Use %d format and cast to int. + (WebCore::disableLigatures): Ditto. + (WebCore::initializeATSUStyle): Ditto. + (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Ditto. + +2009-10-29 Dan Bernstein <mitz@apple.com> + + Tiger build fix after r50259 + + * platform/graphics/mac/ComplexTextController.h: + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: + +2009-10-29 Dan Bernstein <mitz@apple.com> + + Attempted Tiger build fix after r50259 + + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: + +2009-10-28 Steve Falkenburg <sfalken@apple.com> + + Rubber stamped by Mark Rowe. + + https://bugs.webkit.org/show_bug.cgi?id=30899 + WebKit fails to build release on 32-bit Windows systems + + * WebCore.vcproj/WebCore.vcproj: Excluded files from project. + * bindings/js/JSBindingsAllInOne.cpp: Added. + +2009-10-28 Dan Bernstein <mitz@apple.com> + + Reviewed by Jon Honeycutt. + + Fixed typos in color names. + + * inspector/front-end/Color.js: + +2009-10-28 Dan Bernstein <mitz@apple.com> + + Reviewed by Sam Weinig. + + Share code between the ATSUI- and Core Text-based Font implementations by doing the + following: + - Generalize CoreTextController as ComplexTextController, keeping the Core Text-specific + parts in ComplexTextControllerCoreText.cpp. + - Generalize FontMacCoreText as FontComplexTextMac using ComplexTextController + - Implement ATSUI-specific parts of ComplexTextController in ComplexTextControllerATSUI. + - Remove FontMacATSUI. + + * WebCore.xcodeproj/project.pbxproj: Removed CoreTextController.{cpp,h}, FontMacATSUI.mm, + and FontMacCoreText.cpp, and added ComplexTextController.{cpp,h}, + ComplexTextControllerATSUI.cpp, ComplexTextControllerCoreText.cpp, and + FontComplexTextMac.cpp. + + * platform/graphics/mac/ComplexTextController.cpp: Copied from CoreTextController.cpp and + kept the non-Core Text-specific bits. + (WebCore::ComplexTextController::ComplexTextController): Updated for renames, including + its own. + (WebCore::ComplexTextController::offsetForPosition): Updated for renames and for + m_complexTextRuns holding references instead of objects. + (WebCore::ComplexTextController::collectComplexTextRuns): Updated for renames, including + its own. + (WebCore::ComplexTextController::advance): Updated for renames. + (WebCore::ComplexTextController::adjustGlyphsAndAdvances): Updated for renames and for + m_complexTextRuns holding references instead of objects, and changed to use the glyphs() + and advances() accessors. + + * platform/graphics/mac/ComplexTextController.h: Copied from CoreTextController.h and + renamed CoreTextController to ComplexTextController and CoreTextRun to ComplexTextRun. Made + the latter RefCounted, added ATSUI-specific members to it, and made some other members + Core Text-specific. Renamed m_coreTextRuns to m_complexTextRuns and made it hold references + rather than objects. + (WebCore::ComplexTextController::ComplexTextRun::create): + (WebCore::ComplexTextController::ComplexTextRun::glyphs): + (WebCore::ComplexTextController::ComplexTextRun::advances): + + * platform/graphics/mac/ComplexTextControllerATSUI.cpp: Added. Includes ATSUI-specific + parts of the ComplexTextController implementation. + (WebCore::ComplexTextController::ComplexTextRun::overrideLayoutOperation): This ATSUI + callback populates the ComplexTextRun’s glyphs, advances and indices vectors. It is invoked + when the ComplexTextRun constructor calls ATSUGetGlyphBounds(). + (WebCore::isArabicLamWithAlefLigature): Helper function, copied from FontMacATSUI.mm. + (WebCore::shapeArabic): Helper function, adapted from FontMacATSUI.mm. + (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Sets up the + ATSUTextLayout, substituting the text buffer if necessary for things like shaping Arabic, + mirroring glyphs or directionality overrides, then calls ATSUGetGlyphBounds() in order to + get the glyphs, advances and indices vectors populated. + (WebCore::fontHasMirroringInfo): Helper function, copied from FontMacATSUI.mm. + (WebCore::disableLigatures): Ditto. + (WebCore::initializeATSUStyle): Ditto, somewhat cleaned up and simplified. + (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Constructs + ComplexTextRuns, either missing-glyphs ones or ATSUTextLayout-based ones. + + * platform/graphics/mac/ComplexTextControllerCoreText.cpp: Copied from + CoreTextController.cpp and kept the Core Text-specific bits. + (WebCore::ComplexTextController::ComplexTextRun::ComplexTextRun): Updated for renames, + including its own, and moved the code to initialize m_glyphs and m_advances here. Previously + this was done in adjustGlyphsAndAdvances(). + (WebCore::ComplexTextController::collectComplexTextRunsForCharacters): Updated for renames, + including its own. + * platform/graphics/mac/CoreTextController.cpp: Removed. + * platform/graphics/mac/CoreTextController.h: Removed. + * platform/graphics/mac/FontComplexTextMac.cpp: Renamed FontMacCoreText.cpp to this. + (WebCore::Font::selectionRectForComplexText): Changed to use ComplexTextController instead + of CoreTextController. + (WebCore::Font::drawComplexText): Ditto. + (WebCore::Font::floatWidthForComplexText): Ditto. + (WebCore::Font::offsetForPositionForComplexText): Ditto. + * platform/graphics/mac/FontMacATSUI.mm: Removed. + * platform/graphics/mac/FontMacCoreText.cpp: Removed. + 2009-10-27 Chris Fleizach <cfleizach@apple.com> Reviewed by Darin Adler. @@ -44,7 +16715,7 @@ * xml/XPathFunctions.cpp: (WebCore::XPath::createFunctionMap): Fix struct visibiity warning. -2009-10-28 Adam Barth <abarth@webkit.org> +2009-10-29 Adam Barth <abarth@webkit.org> Reviewed by Darin Adler. |