2010-07-12 Eric Seidel Reviewed by Sam Weinig. Fix a typo in the adoption agency causing test failures https://bugs.webkit.org/show_bug.cgi?id=42133 The new behavior actually differs from old webkit.

TEST was not bold in the old parser, but is bold now. This matches Minefield and the HTML5 spec. Covered by two tests in html5lib/runner.html. * html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::callTheAdoptionAgency): 2010-07-12 Pavel Feldman Reviewed by Joseph Pecoraro. Web Inspector: provide starts and ends for network phases instead of duration. https://bugs.webkit.org/show_bug.cgi?id=42091 * inspector/InspectorResource.cpp: (WebCore::InspectorResource::updateResponse): (WebCore::InspectorResource::updateScriptObject): (WebCore::InspectorResource::buildObjectForTiming): * platform/network/ResourceLoadTiming.h: (WebCore::ResourceLoadTiming::deepCopy): (WebCore::ResourceLoadTiming::operator==): (WebCore::ResourceLoadTiming::ResourceLoadTiming): * platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::ResourceResponseBase): (WebCore::ResourceResponseBase::wasCached): (WebCore::ResourceResponseBase::setWasCached): * platform/network/ResourceResponseBase.h: 2010-07-12 Adam Barth Reviewed by Eric Seidel. HTML5 Parser: document.write after onload blows away document https://bugs.webkit.org/show_bug.cgi?id=40745 Rather than blowing away the document when we get a document.write call after the document is closed, we new ignore the write. This technically violates the spec (which requires us to blow away the document), but blowing away the document breaks too many web sites. Rather than this patch, we could go back to our old behavior (which was to append the bytes just before EOF), but implementing this approach (suggested by Henri) will let us gather data about whether his approach is workable. See also: http://www.w3.org/Bugs/Public/show_bug.cgi?id=9767 * dom/Document.cpp: (WebCore::Document::write): * html/HTMLDocumentParser.cpp: (WebCore::HTMLDocumentParser::insert): 2010-07-12 Tony Gentilcore Reviewed by Oliver Hunt. Strip BOMs from source before passing to V8 https://bugs.webkit.org/show_bug.cgi?id=42102 This extra copy may carry a performance penalty. We should investigate whether this allows any simplification in v8/scanner.cc:SkipJavaScriptWhiteSpace(). No new tests because no new functionality. * bindings/v8/ScriptSourceCode.h: (WebCore::ScriptSourceCode::ScriptSourceCode): 2010-07-12 Gustavo Noronha Silva Unreviewed. make distcheck fix. * GNUmakefile.am: 2010-07-12 Yuta Kitamura Reviewed by Alexey Proskuryakov. Fix crash caused by unintentional deletion of worker bridge and channel. WebSocket: Crash caused by calling close() within onmessage handler https://bugs.webkit.org/show_bug.cgi?id=41507 Test: websocket/tests/workers/close-in-onmessage-crash.html * websockets/WebSocket.cpp: (WebCore::WebSocket::close): bufferedAmount() may call WebSocket::didClose(), which causes m_channel to get freed. * websockets/WorkerThreadableWebSocketChannel.cpp: (WebCore::WorkerThreadableWebSocketChannel::Bridge::send): Add reference to the bridge because waitForMethodCompletion() may dereference the bridge. (WebCore::WorkerThreadableWebSocketChannel::Bridge::bufferedAmount): Ditto. (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion): The root cause is a call to WorkerRunLoop::runInMode in this function. It may call WebSocket::didClose() even inside WebSocket::close(), which frees everything including the worker bridge and the channel. 2010-07-12 Adam Barth Reviewed by Eric Seidel. REGRESSION (HTML5 parser?): Impossible to get past the CAPTCHA on postcode.royalmail.com https://bugs.webkit.org/show_bug.cgi?id=41797 Once we resume parsing after script execution, we want to clear the preload scanner so we don't scan any bytes it might have accumulated. Test: http/tests/loading/preload-slow-loading.php * html/HTMLDocumentParser.cpp: (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution): 2010-07-12 Albert J. Wong Reviewed by Jian Li. Adding directional property enums back into CSSComputedStyleDeclaration::getPropertyCSSValue(). https://bugs.webkit.org/show_bug.cgi?id=42122 The four directional -webkit- properties -- CSSPropertyWebkitMarginEnd, CSSPropertyWebkitMarginStart, CSSPropertyWebkitPaddingEnd, and CSSPropertyWebkitPaddingStart -- are resolved into other css properties before the swtich statement via a call to CSSProperty::resolveDirectionAwareProperty(). Thus, they are never seen by the switch statement. However, if you leave out a potential enum value from the switch, gcc will generate a warning if -Wall is specified. This warning breaks the Chromium build. To avoid this, we add in the enum values and ASSERT_NOT_REACHED() if they are hit. * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): 2010-07-12 Chris Fleizach Reviewed by Darin Adler. AX converts AtomicStrings to .string() more than needed https://bugs.webkit.org/show_bug.cgi?id=42056 No behavior change. No new tests. * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::isPressed): (WebCore::siblingWithAriaRole): (WebCore::AccessibilityRenderObject::intValue): (WebCore::AccessibilityRenderObject::accessibilityDescription): (WebCore::AccessibilityRenderObject::hasTextAlternative): (WebCore::AccessibilityRenderObject::supportsARIAFlowTo): (WebCore::AccessibilityRenderObject::supportsARIADropping): (WebCore::AccessibilityRenderObject::supportsARIADragging): (WebCore::AccessibilityRenderObject::determineARIADropEffects): (WebCore::AccessibilityRenderObject::isExpanded): (WebCore::AccessibilityRenderObject::isRequired): (WebCore::AccessibilityRenderObject::isSelected): (WebCore::AccessibilityRenderObject::supportsARIAOwns): (WebCore::AccessibilityRenderObject::isEnabled): (WebCore::AccessibilityRenderObject::activeDescendant): (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute): (WebCore::AccessibilityRenderObject::orientation): (WebCore::AccessibilityRenderObject::canSetExpandedAttribute): (WebCore::AccessibilityRenderObject::canSetValueAttribute): 2010-07-12 Tony Chang Reviewed by David Hyatt. crash in FrameView::detachCustomScrollbars https://bugs.webkit.org/show_bug.cgi?id=41196 Test: scrollbars/hidden-iframe-scrollbar-crash.html * page/FrameView.cpp: (WebCore::FrameView::detachCustomScrollbars): 2010-07-12 Eric Seidel Reviewed by Adam Barth. HTML tags should break out of foreign content https://bugs.webkit.org/show_bug.cgi?id=42106 Implement another paragraph of the spec to pass another bunch of foreign content tests. This fixes a bunch of tests in html5lib/runner.html. After this change we only have 4 remaining foreign content failures. * html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processStartTag): 2010-07-12 Zhenyao Mo Reviewed by Darin Fisher. Bring bufferData and clear to GLES2 compliant https://bugs.webkit.org/show_bug.cgi?id=41574 * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::bufferData): Call validateBufferDataUsage(). (WebCore::WebGLRenderingContext::clear): Check mask. (WebCore::WebGLRenderingContext::validateBufferDataUsage): Check usage. * html/canvas/WebGLRenderingContext.h: Declare validateBufferDataUsage. 2010-07-12 Eric Seidel Unreviewed. Attempt to fix Chromium Windows build. Always generate SVGNames and MathMLNames for all ports (to support HTML5) https://bugs.webkit.org/show_bug.cgi?id=42050 Another way to fix this might be to mark all the .in files with svn:eol=native. But fixing the perl to be more robust against stray whitespace seems to be a better long-term fix. No functional change, thus no tests. * bindings/scripts/InFilesParser.pm: 2010-07-12 Andreas Kling Reviewed by Kenneth Rohde Christiansen. Remove dependency on PlatformString.h in Color.h https://bugs.webkit.org/show_bug.cgi?id=42109 * platform/graphics/Color.cpp: * platform/graphics/Color.h: 2010-07-12 Eric Seidel Unreviewed, build fix. Update HTMLTreeBuilder now that MathMLNames is always generated https://bugs.webkit.org/show_bug.cgi?id=42059 Fix the Windows project file to build MathMLNames.*. Also added MathMLElementFactory.* which is a NOOP now, but will prevent folks from breaking the build when they turn MathML on. * WebCore.vcproj/WebCore.vcproj: 2010-07-12 Eric Carlson Reviewed by Darin Adler. Update media element's handling of empty 'src' attribute https://bugs.webkit.org/show_bug.cgi?id=42001 * html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::src): Return getNonEmptyURLAttribute(). (WebCore::HTMLMediaElement::selectMediaResource): Call noneSupported() for empty 'src'. (WebCore::HTMLMediaElement::selectNextSourceChild): Use getNonEmptyURLAttribute() to convert 'src' to URL instead of document()->completeURL(). Don't consider a with an empty 'src'. * html/HTMLMediaElement.idl: Add 'NonEmpty' option to 'src' attribute. * html/HTMLSourceElement.cpp: (WebCore::HTMLSourceElement::src): Return getNonEmptyURLAttribute(). (WebCore::HTMLSourceElement::isURLAttribute): New, 'src' is a URL attribute. * html/HTMLSourceElement.h: * html/HTMLSourceElement.idl: Add 'NonEmpty' option to 'src' attribute. * html/HTMLVideoElement.cpp: (WebCore::HTMLVideoElement::parseMappedAttribute): Use getNonEmptyURLAttribute() to convert 'poster' to URL instead of document()->completeURL(). * html/HTMLVideoElement.idl: Add 'NonEmpty' option to 'poster' attribute. 2010-07-12 Martin Robinson Reviewed by Xan Lopez. [GTK] make dist is broken because of missing headers and other miscellaneous reasons https://bugs.webkit.org/show_bug.cgi?id=42107 * GNUmakefile.am: Remove InspectorFrontend2.idl from the list of IDL files, so that it is not built into libWebCoreJS. Add missing header to the source list. Make sure to distribute the new file: WebCore/inspector/CodeGeneratorInspector.pm. 2010-07-12 Eric Seidel Reviewed by Adam Barth. HTMLTreeBuilder needs to support mixing SVG and MathML content https://bugs.webkit.org/show_bug.cgi?id=42096 This is just a direct transcription of another paragraph of the HTML5 spec. This improved a couple results in html5lib/runner.html, but more work to do yet to pass all the foreign content tests. * html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processStartTag): (WebCore::HTMLTreeBuilder::processEndTag): (WebCore::HTMLTreeBuilder::processUsingSecondaryInsertionModeAndAdjustInsertionMode): * html/HTMLTreeBuilder.h: * mathml/mathtags.in: 2010-07-12 Eric Seidel Reviewed by Adam Barth. Update HTMLTreeBuilder now that MathMLNames is always generated https://bugs.webkit.org/show_bug.cgi?id=42059 Fix the HTMLTreeBuilder MathML code path to compile and remove the MathML and SVG guards now that SVGNames and MathMLNames are always compiled into ever port after: https://bugs.webkit.org/show_bug.cgi?id=42050 This fixed a whole bunch of libhtml5 tests now that we have the mathml code paths enabled. * html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processStartTagForInBody): (WebCore::HTMLTreeBuilder::processStartTag): (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): (WebCore::HTMLTreeBuilder::processEndTag): * page/Frame.cpp: (WebCore::Frame::Frame): - Always init SVGNames and MathML names. 2010-07-12 Simon Fraser Reviewed by Dan Bernstein. Don't go into compositing mode for 0x0 plugins https://bugs.webkit.org/show_bug.cgi?id=34009 Don't use compositing for small (0-height or width, or 1x1) plugins, or iframes whose height or width is zero. Previously we made all compositing decisions inside styleChanged(). However, now that plugin and iframe compositing behavior depends on renderer size, we have to wait until layout before deciding whether to composite these. This behavior change is controlled by the m_compositingDependsOnGeometry flag. When set, updateCompositingLayers() always does a hierarchy update. Tests: compositing/iframes/iframe-size-from-zero.html compositing/iframes/iframe-size-to-zero.html compositing/plugins/1x1-composited-plugin.html compositing/plugins/large-to-small-composited-plugin.html compositing/plugins/small-to-large-composited-plugin.html * page/FrameView.cpp: (WebCore::FrameView::updateCompositingLayers): No longer bail if usesCompositing() is false; we have to always enter updateCompositingLayers(). (WebCore::FrameView::repaintFixedElementsAfterScrolling): Ditto (WebCore::FrameView::enterCompositingMode): Remove bogus return of a void. * rendering/RenderLayerCompositor.h: Add m_compositingDependsOnGeometry. * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::RenderLayerCompositor): Initialize m_compositingDependsOnGeometry to false. (WebCore::RenderLayerCompositor::updateCompositingLayers): If m_compositingDependsOnGeometry is true, we always need to run through the layer hierarchy looking for things which need to be composited, even if we're not (yet) in compositing mode. (WebCore::RenderLayerCompositor::computeCompositingRequirements): Because we can enter compositing mode on the fly inside updateCompositingLayers() now, the state of willBeComposited needs to be updated when processing the root layer, for the case where the compositing mode changes. (WebCore::RenderLayerCompositor::requiresCompositingForPlugin): Set the m_compositingDependsOnGeometry flag if we see a potentially-composited plugin. Once we have layout information, only composite the plugin if height * width > 1. (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): Set the m_compositingDependsOnGeometry flag if we see a potentially-composited iframe. Once we have layout information, only composite the plugin if height or width is greater than zero. 2010-07-12 Simon Fraser Reviewed by Dan Bernstein. Need to do a layout when RenderLayers come and go because of compositing https://bugs.webkit.org/show_bug.cgi?id=42108 If we create or destroy RenderLayers for reasons other than style changes (e.g. because of composited iframes or plugins), then we need to ensure that we do a layout. Test: compositing/iframes/layout-on-compositing-change.html * rendering/RenderObject.cpp: (WebCore::RenderObject::adjustStyleDifference): 2010-07-11 Eric Seidel Reviewed by Darin Adler. Always generate SVGNames and MathMLNames for all ports (to support HTML5) https://bugs.webkit.org/show_bug.cgi?id=42050 Historically, FOONames has only been generate when ENABLE(FOO) is defined. However, for HTML5 parser support, we need to have access to the SVG and MathML tag names regardless of whether we the engine is configured to render SVG or MathML content. This change enables generation of SVGNames and MathMLNames on all ports and makes it so that ports can include FOOElementFactory.* regardless of whether ENABLE(FOO) is defined (and have it do the right thing). No functional change (yet) so no tests. * DerivedSources.make: * GNUmakefile.am: * WebCore.gyp/WebCore.gyp: * WebCore.pri: * dom/make_names.pl: 2010-07-10 Eric Seidel Reviewed by Adam Barth. make_names.pl should always generate all names in Names.* files https://bugs.webkit.org/show_bug.cgi?id=42023 Only the *ElementFactory files need to have conditional contents based on enabled features. WebCore should always have all known names for SVG, MathML, XML, XLink, HTML, etc. generated in the various *Names files, even if features are disabled. make_names.pl is kinda a big hack at this point. I tried to clean up a little as I went. The way I made *Names include all names was to read the .in files twice, once using the preprocessor and once without. * dom/make_names.pl: 2010-07-12 Andreas Kling Reviewed by Oliver Hunt. Canvas: Move fillRect() save/restore into GraphicsContext implementations https://bugs.webkit.org/show_bug.cgi?id=42088 Saving the platform painter state is an expensive operation, so don't do it in fillRect() for platforms that don't need it. (CG, Qt) * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::fillRect): * platform/graphics/cairo/GraphicsContextCairo.cpp: (WebCore::GraphicsContext::fillRect): * platform/graphics/skia/GraphicsContextSkia.cpp: (WebCore::GraphicsContext::fillRect): * platform/graphics/wince/GraphicsContextWince.cpp: (WebCore::GraphicsContext::fillRect): * platform/graphics/wx/GraphicsContextWx.cpp: (WebCore::GraphicsContext::fillRect): 2010-07-12 Nate Chapin Reviewed by Darin Fisher. Ensure that a cache policy that forces validation is cleared once the load event is fired, rather than only doing so at the next navigation. This leads to a lot of unnecessary load on AJAX-y websites. https://bugs.webkit.org/show_bug.cgi?id=41813 Test: http/tests/xmlhttprequest/cache-headers-after-reload.html * loader/FrameLoader.cpp: (WebCore::FrameLoader::handledOnloadEvents): Reset m_loadType to FrameLoadTypeStandard. (WebCore::FrameLoader::addExtraFieldsToRequest): Only respect the original request's cache policy if the DocumentLoader is still loading, and handle the other cache policy settings that were scattered around the loader. (WebCore::FrameLoader::loadResourceSynchronously): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest. * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::create): Merge cachePolicy setting into FrameLoader::addExtraFieldsToRequest. 2010-07-12 Andreas Kling Reviewed by Oliver Hunt. CSS color parsing optimizations https://bugs.webkit.org/show_bug.cgi?id=42073 - Avoid instantiating a CSSParser in parseColor() unless necessary. - Fixed hex color fast-path to support strings starting with '#'. - Avoid allocating a new string for the value part of a '#' color. * css/CSSParser.cpp: (WebCore::CSSParser::parseColor): * platform/graphics/Color.cpp: (WebCore::Color::parseHexColor): (WebCore::Color::Color): * platform/graphics/Color.h: 2010-07-09 Alexey Proskuryakov Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=13075 XMLHttpRequest with failed authentication should set status to 401 https://bugs.webkit.org/show_bug.cgi?id=6871 401 error page is never shown * platform/network/mac/ResourceHandleMac.mm: (WebCore::ResourceHandle::receivedCredential): Added a comment explaining why we handle empty credentials differently here. * platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::receivedCredential): Bring this code in sync with Mac. 2010-07-12 Anders Carlsson Reviewed by Adam Roben. Add a PluginController class, use it for invalidation and getting the user agent https://bugs.webkit.org/show_bug.cgi?id=42084 * WebCore.exp.in: Export Widget::convertToContainingWindow. 2010-07-12 Andreas Kling Reviewed by Simon Hausmann. [Qt] Dragging within webkit with a drag created via Javascript ends up misinterpreting the data https://bugs.webkit.org/show_bug.cgi?id=41457 Treat non-special-cased mime-types as Unicode strings in ClipboardQt's getData() Fixes corruption when retrieving data that was set with anything other than text/plain Also use QMimeData::setHtml() when applicable to be consistent with PasteboardQt. * platform/qt/ClipboardQt.cpp: (WebCore::isHtmlMimeType): (WebCore::ClipboardQt::getData): (WebCore::ClipboardQt::setData): 2010-07-12 Steve Block Reviewed by Jeremy Orlow. add ANDROID to STORE_FONT_CUSTOM_PLATFORM_DATA https://bugs.webkit.org/show_bug.cgi?id=32273 Tested by existing tests, just adding ANDROID to the list of platforms that use this feature. * loader/CachedFont.cpp: 2010-07-12 Lucas De Marchi Unreviewed. [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to CMakeListsEfl.txt. * CMakeLists.txt: * CMakeListsEfl.txt: 2010-07-12 Lucas De Marchi Unreviewed build fix after r60050. * CMakeLists.txt: Add WebCore/bindings to the include path. 2010-07-09 Gustavo Noronha Silva Reviewed by Xan Lopez. [GTK] Crashes when going back with page cache in unknown circunstances https://bugs.webkit.org/show_bug.cgi?id=41710 Could not yet find a way to reproduce this in a layout test. The issue is document being NULL, so this NULL-check should be enough to get rid of the crash. We are working on trying to find a better solution for these null cases, like attaching the document earlier when openning a cached page. * page/EventHandler.cpp: (WebCore::EventHandler::sendScrollEvent): 2010-07-12 Alexander Pavlov Reviewed by Yury Semikhatsky. [Chromium] Crash when stepping on a breakpoint while debugging Web Inspector https://bugs.webkit.org/show_bug.cgi?id=41958 * page/PageGroupLoadDeferrer.cpp: (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer): * page/PageGroupLoadDeferrer.h: 2010-07-12 François Sausset Reviewed by Kenneth Rohde Christiansen. Make the mathsize MathML attribute handle values in em, px, pt,... https://bugs.webkit.org/show_bug.cgi?id=42067 Test: mathml/presentation/attributes.xhtml * css/mathml.css: (math[mathsize="small"], mstyle[mathsize="small"], mo[mathsize="small"], mn[mathsize="small"], mi[mathsize="small"], mtext[mathsize="small"], mspace[mathsize="small"], ms[mathsize="small"]): (math[mathsize="normal"], mstyle[mathsize="normal"], mo[mathsize="normal"], mn[mathsize="normal"], mi[mathsize="normal"], mtext[mathsize="normal"], mspace[mathsize="normal"], ms[mathsize="normal"]): (math[mathsize="big"], mstyle[mathsize="big"], mo[mathsize="big"], mn[mathsize="big"], mi[mathsize="big"], mtext[mathsize="big"], mspace[mathsize="big"], ms[mathsize="big"]): * mathml/MathMLElement.cpp: (WebCore::MathMLElement::parseMappedAttribute): 2010-07-12 Xan Lopez Reviewed by Gustavo Noronha. Fix compilation with sealed GTK+. * platform/gtk/GtkVersioning.h: * platform/gtk/PasteboardHelper.cpp: (WebCore::PasteboardHelper::fillDataObjectFromDropData): 2010-07-12 François Sausset Reviewed by Kenneth Rohde Christiansen. Fix a bug preventing msqrt and mfrac to use style color to draw themselves. In mfrac, the fraction bar is now using the color defined by the element style instead of black. In msqrt, the radical was always drawn in black due to a colorSpace problem. https://bugs.webkit.org/show_bug.cgi?id=41889 Test: mathml/presentation/roots.xhtml Test: mathml/presentation/fractions.xhtml * mathml/RenderMathMLFraction.cpp: (WebCore::RenderMathMLFraction::paint): * mathml/RenderMathMLSquareRoot.cpp: (WebCore::RenderMathMLSquareRoot::paint): 2010-07-12 Andreas Kling Reviewed by Antti Koivisto. Canvas: arc() with startAngle == endAngle shouldn't add to the path https://bugs.webkit.org/show_bug.cgi?id=41420 Spec link: http://www.whatwg.org/specs/web-apps/current-work/#dom-context-2d-stroke * html/canvas/CanvasRenderingContext2D.cpp: (WebCore::CanvasRenderingContext2D::arc): 2010-07-12 Shinichiro Hamaji Reviewed by Ojan Vafai. Update padding on Windows? https://bugs.webkit.org/show_bug.cgi?id=38016 Remove internal padding and add 1px vertical padding for Windows. * css/themeWin.css: (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button): * rendering/RenderButton.cpp: (WebCore::RenderButton::setupInnerStyle): * rendering/RenderTheme.h: * rendering/RenderThemeWin.cpp: * rendering/RenderThemeWin.h: * rendering/RenderThemeWince.cpp: * rendering/RenderThemeWince.h: 2010-07-12 Pavel Feldman Not reviewed. Chromium tests fix. [Chromium, V8] r63057 regressed url tests. https://bugs.webkit.org/show_bug.cgi?id=42063 * bindings/scripts/CodeGeneratorV8.pm: 2010-07-12 Steve Block Reviewed by Alexey Proskuryakov. XPath substring function does not correctly handle non-positive values for the position argument https://bugs.webkit.org/show_bug.cgi?id=41913 This patch changes the behavior of the XPath evaluate function when a non-positive position argument is supplied and no length argument is supplied. In this case, we reset the position to 1. This follows the spec and matches the current behaviour when a length argument is supplied. Test: fast/xpath/substring-non-positive-postion.html * xml/XPathFunctions.cpp: (WebCore::XPath::FunSubstring::evaluate): 2010-06-27 Jeremy Orlow Reviewed by Dumitru Daniliuc. Implement IDBObjectStore.get/set/remove https://bugs.webkit.org/show_bug.cgi?id=41250 Implement these functions in IDBObjectStore, add plumbing, teach IDBAny/Callbacks how to deal with IDBKey, and a few small bits of cleanup. Test: Modified existing test to provide basic coverage. Will add much more extensive layout test coverage in future patches. * Android.derived.jscbindings.mk: * Android.derived.v8bindings.mk: * Android.jscbindings.mk: * Android.mk: * Android.v8bindings.mk: * CMakeLists.txt: * WebCore.gypi: * WebCore.pri: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * bindings/js/JSIDBAnyCustom.cpp: (WebCore::toJS): * bindings/v8/custom/V8IDBAnyCustom.cpp: (WebCore::toV8): * storage/IDBAny.cpp: (WebCore::IDBAny::idbKey): (WebCore::IDBAny::set): * storage/IDBAny.h: (WebCore::IDBAny::): * storage/IDBAny.idl: * storage/IDBCallbacks.h: * storage/IDBDatabaseRequest.h: * storage/IDBDatabaseRequest.idl: * storage/IDBKeyRange.h: * storage/IDBObjectStore.h: (WebCore::IDBObjectStore::): * storage/IDBObjectStoreImpl.cpp: (WebCore::IDBObjectStoreImpl::IDBObjectStoreImpl): (WebCore::IDBObjectStoreImpl::get): (WebCore::IDBObjectStoreImpl::set): (WebCore::IDBObjectStoreImpl::remove): * storage/IDBObjectStoreImpl.h: * storage/IDBObjectStoreRequest.cpp: (WebCore::IDBObjectStoreRequest::get): (WebCore::IDBObjectStoreRequest::add): (WebCore::IDBObjectStoreRequest::modify): (WebCore::IDBObjectStoreRequest::addOrModify): (WebCore::IDBObjectStoreRequest::remove): * storage/IDBObjectStoreRequest.h: * storage/IDBObjectStoreRequest.idl: * storage/IDBRequest.cpp: (WebCore::IDBRequest::onSuccess): * storage/IDBRequest.h: 2010-07-11 Maciej Stachowiak Reviewed by Dan Bernstein. Implement animation-related methods for WebKitTestRunner https://bugs.webkit.org/show_bug.cgi?id=42053 * WebCore.exp.in: Export Document::getElementById for WebKit2's benefit. 2010-07-11 Adam Barth Rubber-stamped by Eric Seidel Add a complete list of the HTML5 entities in JSON format. * html/HTMLEntityNames.json: Added. 2010-07-11 Martin Robinson Reviewed by Xan Lopez. [GTK] WebKitWebView should support drops https://bugs.webkit.org/show_bug.cgi?id=39843 Add support for dropping content onto GTK+ WebViews. No new tests, as the DRT does not support simulating drops yet. * platform/gtk/ClipboardUtilitiesGtk.cpp: (WebCore::dragOperationToGdkDragAction): Added. (WebCore::gdkDragActionToDragOperation): Properly detect DragOperationEvery. * platform/gtk/ClipboardUtilitiesGtk.h: Add declaration for dragOperationToGdkDragAction. * platform/gtk/PasteboardHelper.cpp: Add new target atom and rename the markup target type to match the others. Add a method which fills a data object from drop data. (WebCore::PasteboardHelper::initializeTargetList): Add support for new atoms. (WebCore::selectionDataToUTF8String): Added this helper. (WebCore::PasteboardHelper::getClipboardContents): Use the selectionDataToUTF8String helper. (WebCore::PasteboardHelper::targetListForDataObject): Change to reflect markup atom rename. (WebCore::PasteboardHelper::fillDataObjectFromDropData): Added. (WebCore::PasteboardHelper::dropAtoms): Added. * platform/gtk/PasteboardHelper.h: Add declarations of new methods. 2010-07-10 Darin Adler Reviewed by Anders Carlsson. Enhance content attribute reflection for URL attributes, including adding a non-empty option https://bugs.webkit.org/show_bug.cgi?id=42040 Test: fast/dom/URL-attribute-reflection.html Changed syntax from [ReflectURL] to [Reflect,URL] and also added support for a new option, NonEmpty, which implements the non-empty URL concept from the HTML5 specification. * bindings/scripts/CodeGenerator.pm: Changed code to expect the Reflect and URL extended attributes to come in separately. The URL one simply means "the string of this attribute is a URL", since we don't have a distinct type for URL. Also added a new NonEmpty extended attribute. * bindings/scripts/CodeGeneratorJS.pm: Removed now-unneeded code to handle ReflectURL. * bindings/scripts/CodeGeneratorV8.pm: Ditto. * bindings/scripts/test/CPP/WebDOMTestObj.cpp: Updated for new added test cases and the fix I made to the reflectedCustomURLAttr test. * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto. * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp: Ditto. * bindings/scripts/test/GObject/WebKitDOMTestObj.h: Ditto. * bindings/scripts/test/JS/JSTestObj.cpp: Ditto. * bindings/scripts/test/JS/JSTestObj.h: Ditto. * bindings/scripts/test/ObjC/DOMTestObj.h: Ditto. * bindings/scripts/test/ObjC/DOMTestObj.mm: Ditto. * bindings/scripts/test/V8/V8TestObj.cpp: Ditto. Also, for some reason the V8 bindig writes out the keywords into the generated file as comments, so the keyword change had a direct efffect on the output file. * bindings/scripts/test/TestObj.idl: Changed the test cases for ReflectURL to use the new syntax. Added test cases for NonEmpty. Fixed the name of reflectedNonEmptyURLAttr, which accidentally was repeating reflectedURLAttr instead; never noticed because we never compile the test output. * dom/Element.cpp: (WebCore::Element::getNonEmptyURLAttribute): Added. For use by NonEmpty and also by any code that wants to implement the non-empty URL content attribute semantic. * dom/Element.h: Ditto. * html/HTMLAnchorElement.idl: Use Reflect,URL instead of ReflectURL. * html/HTMLAreaElement.idl: Ditto. * html/HTMLFrameElement.idl: Ditto. * html/HTMLImageElement.idl: Ditto. * html/HTMLInputElement.idl: Ditto. * html/HTMLLinkElement.idl: Ditto. * html/HTMLMediaElement.idl: Ditto. * html/HTMLObjectElement.idl: Ditto. * html/HTMLScriptElement.idl: Ditto. * html/HTMLVideoElement.idl: Ditto. 2010-07-10 Tony Gentilcore Reviewed by Darin Adler. Add missing derrived sources to xcode project https://bugs.webkit.org/show_bug.cgi?id=42034 This allows --web-timing to work with build-webkit on OSX with JSC. This should have been done in bug 41442. No new tests because no new functionality. * WebCore.xcodeproj/project.pbxproj: 2010-07-10 Anders Carlsson Reviewed by Sam Weinig. Don't initialize plug-ins until allowed by the page https://bugs.webkit.org/show_bug.cgi?id=42033 * WebCore.exp.in: Export Document::addMediaCanStartListener and Document::removeMediaCanStartListener. 2010-07-10 Sam Weinig Reviewed by Anders Carlsson. Patch for https://bugs.webkit.org/show_bug.cgi?id=42021 isEqualNode should work for DocumentType nodes Test: fast/dom/Node/isEqualNode.html * dom/Node.cpp: (WebCore::Node::isEqualNode): Add DocumentType logic from the DOM3 spec. 2010-07-10 Daniel Bates Reviewed by Adam Barth. Move enum ReasonForCallingCanExecuteScripts to header ScriptControllerBase.h https://bugs.webkit.org/show_bug.cgi?id=39339 Moved the enum ReasonForCallingCanExecuteScripts, which was defined in both the JSC and V8 ScriptController.h file, into a shared file called ScriptControllerBase.h. No functionality was changed, so no new tests. * GNUmakefile.am: Added file bindings/ScriptControllerBase.h. * WebCore.gypi: Ditto. * WebCore.pro: Ditto. * WebCore.vcproj/WebCore.vcproj: Ditto. * WebCore.vcproj/WebCoreCommon.vsprops: Ditto. * WebCore.xcodeproj/project.pbxproj: Ditto. * bindings/ScriptControllerBase.h: Added. (WebCore::): * bindings/js/ScriptController.h: #include ScriptControllerBase.h * bindings/v8/ScriptController.h: Ditto. 2010-07-10 Dan Bernstein Reviewed by Anders Carlsson. Continuation outlines in layers do not paint correctly Test: fast/inline/continuation-outlines-with-layers-2.html Continuation outlines are normally painted by the containing block. However, when the block and the inline are not enclosed by the same self-painting layer, the inline has to paint its own outlines. This was handled correctly only for the case where the inline had its own self-painting layer, but now when an ancestor inline had the self-painting layer. * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paint): Instead of testing for having a self-painting layer, test whether any intermediate box between the inline and the containing block has a self-painting layer. * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintObject): Ditto. * rendering/RenderObject.cpp: (WebCore::RenderObject::enclosingBoxModelObject): Added this utility method. * rendering/RenderObject.h: 2010-07-10 François Sausset Reviewed by Kenneth Rohde Christiansen. Build fix: syntax and typo issues https://bugs.webkit.org/show_bug.cgi?id=41859 * html/HTMLTreeBuilder.cpp: (WebCore::HTMLTreeBuilder::processStartTagForInBody): (WebCore::HTMLTreeBuilder::processStartTag): 2010-07-10 Eric Seidel Reviewed by Adam Barth. HTMLTreeBuilder needs adjustForeignAttributes support https://bugs.webkit.org/show_bug.cgi?id=42022 To add adjust foreign attributes support I had to add an AtomicString (prefixed name) to QualifiedName hash. Once I had done that, I decided it would be best for the other "adjust" functions to share the same hash logic, so I moved them to using the same AtomicString -> QualifiedName hash as well. Tested by html5lib/runner.html * dom/Attribute.h: (WebCore::Attribute::parserSetName): * html/HTMLTreeBuilder.cpp: 2010-07-10 Rob Buis Reviewed by Darin Adler. https://bugs.webkit.org/show_bug.cgi?id=41978 Remove namespace prefixes from idl files No new tests, idl syntax fixes. * css/CSSImportRule.idl: * css/CSSMediaRule.idl: * css/CSSStyleSheet.idl: * css/CSSVariablesRule.idl: * svg/SVGAnimatedString.idl: * svg/SVGColor.idl: * svg/SVGDocument.idl: * svg/SVGLangSpace.idl: * svg/SVGSVGElement.idl: * svg/SVGStringList.idl: * svg/SVGStylable.idl: * svg/SVGStyleElement.idl: * svg/SVGTests.idl: * svg/SVGZoomEvent.idl: * xml/XPathEvaluator.idl: 2010-07-10 Dumitru Daniliuc Unreviewed, GTK build fix. * bindings/gobject/GObjectEventListener.h: 2010-07-10 Dumitru Daniliuc Reviewed by Darin Adler. Remove unnecessary includes in header files in WebCore/dom. https://bugs.webkit.org/show_bug.cgi?id=41941 * css/StyleMedia.h: * dom/BeforeLoadEvent.h: * dom/CustomEvent.h: * dom/DOMStringMap.h: * dom/DeviceOrientationEvent.h: * dom/EventListener.h: * dom/MessagePort.h: * dom/Node.cpp: * dom/NodeFilter.h: * dom/NodeRareData.h: * dom/RegisteredEventListener.h: * dom/SelectorNodeList.cpp: * dom/SelectorNodeList.h: * dom/StyleElement.h: * dom/Traversal.h: 2010-07-09 Tony Chang Reviewed by Ojan Vafai. crash in WebCore::CompositeEditCommand::splitTreeToNode when indenting pre https://bugs.webkit.org/show_bug.cgi?id=38231 Test: editing/execCommand/indent-pre.html * editing/IndentOutdentCommand.cpp: (WebCore::countParagraphs): (WebCore::IndentOutdentCommand::indentRegion): Split text nodes into one node per paragraph so moveParagraph doesn't get confused. (WebCore::IndentOutdentCommand::splitTextNodes): * editing/IndentOutdentCommand.h: 2010-07-09 Erik Arvidsson Reviewed by Darin Adler. Computed style is not implemented for padding-start, padding-end, margin-start, margin-end https://bugs.webkit.org/show_bug.cgi?id=41496 * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): * css/CSSProperty.cpp: (WebCore::CSSProperty::resolveDirectionAwareProperty): This function resolves the property ID for a direction aware property. * css/CSSProperty.h: * css/CSSStyleSelector.cpp: Use helper function. (WebCore::CSSStyleSelector::applyProperty): 2010-07-09 Adam Barth Reviewed by Eric Seidel. HTML5 tree builder should pass some LayoutTests https://bugs.webkit.org/show_bug.cgi?id=41991 Before this patch, we weren't attaching text nodes to the render tree, which turns out to be important. :) This patch fixes more than 10,000 LayoutTests. * html/HTMLConstructionSite.cpp: (WebCore::HTMLConstructionSite::attach): (WebCore::HTMLConstructionSite::attachAtSite): 2010-07-09 Patrick Gansterer Reviewed by Darin Adler. [WINCE] Buildfix for TextEncodingRegistry https://bugs.webkit.org/show_bug.cgi?id=41992 Renamed TextCodecWince to TextCodecWinCE. * platform/text/TextEncodingRegistry.cpp: (WebCore::buildBaseTextCodecMaps): (WebCore::extendTextCodecMaps): 2010-07-09 Leon Clarke Reviewed by Adam Barth. add support for link prefetching https://bugs.webkit.org/show_bug.cgi?id=3652 Test: fast/dom/HTMLLinkElement/prefetch.html * Configurations/FeatureDefines.xcconfig: * html/HTMLLinkElement.cpp: (WebCore::HTMLLinkElement::tokenizeRelAttribute): (WebCore::HTMLLinkElement::process): * html/HTMLLinkElement.h: (WebCore::HTMLLinkElement::RelAttribute::RelAttribute): * loader/Cache.cpp: (WebCore::createResource): * loader/CachedResource.cpp: (WebCore::CachedResource::data): (WebCore::CachedResource::didAddClient): * loader/CachedResource.h: (WebCore::CachedResource::): (WebCore::CachedResource::error): (WebCore::CachedResource::isPrefetch): (WebCore::CachedResource::schedule): * loader/CachedScript.cpp: * loader/CachedScript.h: * loader/DocLoader.cpp: (WebCore::DocLoader::requestLinkPrefetch): (WebCore::DocLoader::canRequest): (WebCore::DocLoader::incrementRequestCount): (WebCore::DocLoader::decrementRequestCount): * loader/DocLoader.h: * loader/loader.cpp: (WebCore::cachedResourceTypeToTargetType): (WebCore::Loader::determinePriority): (WebCore::Loader::load): (WebCore::Loader::Host::servePendingRequests): (WebCore::Loader::Host::didFinishLoading): (WebCore::Loader::Host::didFail): (WebCore::Loader::Host::didReceiveResponse): (WebCore::Loader::Host::cancelPendingRequests): * loader/loader.h: (WebCore::Loader::): * platform/network/ResourceRequestBase.h: (WebCore::ResourceRequestBase::): 2010-07-09 James Robinson Unreviewed build fix. Add #include to pick up ExceptionCode values for config (like Qt) where it's not picked up indirectly. * html/HTMLCanvasElement.cpp: 2010-07-09 James Robinson Reviewed by Darin Adler. Removes CanvasSurface and moves all of its functionality to HTMLCanvasElement. https://bugs.webkit.org/show_bug.cgi?id=42005 http://trac.webkit.org/changeset/55201 introduced a new base class for HTMLCanvasElement called CanvasSurface. The intention was that this would allow for code sharing with the then-proposed OffscreenCanvas. However, there is no OffscreenCanvas and there's unlikely to be one soon. Additionally CanvasSurface breaks encapsulation pretty badly by doing "static_cast(this)". Until an abstraction is really needed we should just use HTMLCanvasElement when we want to talk about a canvas. This patch moves all of CanvasSurface's functionality back up to HTMLCanvasElement and reorders the header to be a bit more logical. Refactor with no behavior change, thus no new tests. * CMakeLists.txt: * GNUmakefile.am: * WebCore.gypi: * WebCore.pro: * WebCore.vcproj/WebCore.vcproj: * WebCore.xcodeproj/project.pbxproj: * dom/CanvasSurface.cpp: Removed. * dom/CanvasSurface.h: Removed. * html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::HTMLCanvasElement): (WebCore::HTMLCanvasElement::willDraw): (WebCore::HTMLCanvasElement::setSurfaceSize): (WebCore::HTMLCanvasElement::toDataURL): (WebCore::HTMLCanvasElement::convertLogicalToDevice): (WebCore::HTMLCanvasElement::securityOrigin): (WebCore::HTMLCanvasElement::styleSelector): (WebCore::HTMLCanvasElement::createImageBuffer): (WebCore::HTMLCanvasElement::drawingContext): (WebCore::HTMLCanvasElement::buffer): (WebCore::HTMLCanvasElement::baseTransform): * html/HTMLCanvasElement.h: (WebCore::HTMLCanvasElement::setObserver): (WebCore::HTMLCanvasElement::width): (WebCore::HTMLCanvasElement::height): (WebCore::HTMLCanvasElement::size): (WebCore::HTMLCanvasElement::toDataURL): (WebCore::HTMLCanvasElement::setOriginTainted): (WebCore::HTMLCanvasElement::originClean): (WebCore::HTMLCanvasElement::hasCreatedImageBuffer): 2010-07-09 Simon Fraser Reviewed by Darin Adler. Calling layoutTestController.layerTreeAsText() should update layout https://bugs.webkit.org/show_bug.cgi?id=41818 Need to call updateLayout() before we check for any layers, not after, since layout will update compositing, and may create layers. * page/Frame.cpp: (WebCore::Frame::layerTreeAsText): 2010-07-09 Kenneth Russell Reviewed by Nate Chapin. bufferSubData causes crash in WebGLBuffer::associateBufferSubData https://bugs.webkit.org/show_bug.cgi?id=42004 Test: fast/canvas/webgl/index-validation-crash-with-buffer-sub-data.html * html/canvas/WebGLBuffer.cpp: (WebCore::WebGLBuffer::associateBufferData): - Allocate m_elementArrayBuffer for entry point taking only size. Guard against allocation failures of m_elementArrayBuffer. (WebCore::WebGLBuffer::associateBufferSubData): - Guard against any possibility of crashes due to m_elementArrayBuffer being NULL. 2010-07-09 Dumitru Daniliuc Unreviewed, but pre-approved by Eric Seidel. Remove unnecessary includes in header files in WebCore/css. https://bugs.webkit.org/show_bug.cgi?id=41941 * css/CSSComputedStyleDeclaration.h: * css/CSSFontFaceSource.cpp: (WebCore::CSSFontFaceSource::getFontData): * css/CSSFontFaceSource.h: * css/CSSPrimitiveValueMappings.h: * css/StyleMedia.h: 2010-07-09 Eric Seidel Reviewed by Adam Barth. Get rid of manual case maps in HTMLTreeBuilder https://bugs.webkit.org/show_bug.cgi?id=42000 No functional change, thus no tests. * html/HTMLTreeBuilder.cpp: 2010-07-09 Tony Gentilcore Reviewed by Dimitri Glazkov. Implement performance.timing.navigationStart https://bugs.webkit.org/show_bug.cgi?id=41815 See: http://dev.w3.org/2006/webapi/WebTiming/#nt-navigation-start * loader/FrameLoader.cpp: (WebCore::FrameLoader::loadWithDocumentLoader): * loader/FrameLoaderTypes.h: (WebCore::FrameLoadTimeline::FrameLoadTimeline): * page/Timing.cpp: (WebCore::Timing::navigationStart): 2010-07-09 Jesus Sanchez-Palencia Reviewed by Kenneth Rohde Christiansen. [Qt] GraphicsLayerQt must have syncCompositingStateForThisLayerOnly() implemented https://bugs.webkit.org/show_bug.cgi?id=41954 Add GraphicsLayerQt::syncCompositingStateForThisLayerOnly, a non-recursive implementation of GraphicsLayerQt::syncCompositingState and which targets the current layer only. * platform/graphics/qt/GraphicsLayerQt.cpp: (WebCore::GraphicsLayerQt::syncCompositingStateForThisLayerOnly): * platform/graphics/qt/GraphicsLayerQt.h: 2010-07-09 David Kozub Reviewed by Darin Adler. Fix build by adding missing html/TimeRanges.idl to CMakeLists.txt. https://bugs.webkit.org/show_bug.cgi?id=41945 No functional changes, thus no tests. * CMakeLists.txt: 2010-07-09 Eric Seidel Reviewed by Adam Barth. Fix SVG tag name casing for HTMLTreeBuilder https://bugs.webkit.org/show_bug.cgi?id=41998 Tested by html5lib/runner.html * html/HTMLTreeBuilder.cpp: (WebCore::): 2010-07-09 Eric Seidel Reviewed by Adam Barth. Implement SVG attribute case mapping for HTMLTreeBuilder https://bugs.webkit.org/show_bug.cgi?id=41949 Tested by html5lib/runner.html. * html/HTMLTreeBuilder.cpp: 2010-07-09 Andy Estes Reviewed by Adele Peterson. Remove the workaround for a Core Animation bug on platforms where the bug has been fixed. https://bugs.webkit.org/show_bug.cgi?id=41927 * platform/graphics/mac/GraphicsLayerCA.mm: (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes): Add a compile-time check for platforms that have a Core Animation bug that needs working around. 2010-07-08 Tony Gentilcore Reviewed by Nate Chapin. Implement unloadEventEnd, loadEventStart, and loadEventEnd for Web Timing https://bugs.webkit.org/show_bug.cgi?id=41332 Test: fast/dom/webtiming.html * loader/FrameLoader.cpp: (WebCore::FrameLoader::stopLoading): (WebCore::FrameLoader::loadWithDocumentLoader): * loader/FrameLoader.h: (WebCore::FrameLoader::frameLoadTimeline): * loader/FrameLoaderTypes.h: (WebCore::FrameLoadTimeline::FrameLoadTimeline): * page/DOMWindow.cpp: (WebCore::DOMWindow::dispatchLoadEvent): * page/Timing.cpp: (WebCore::Timing::navigationStart): (WebCore::Timing::unloadEventEnd): (WebCore::Timing::loadEventStart): (WebCore::Timing::loadEventEnd): * page/Timing.h: * page/Timing.idl: 2010-07-09 Dumitru Daniliuc Unreviewed, but pre-approved by Eric Seidel. Remove all unnecessary includes from the header files in WebCore/accessibility/. https://bugs.webkit.org/show_bug.cgi?id=41941 * accessibility/AXObjectCache.h: * accessibility/AccessibilityListBox.cpp: * accessibility/AccessibilityListBox.h: * accessibility/AccessibilityMenuList.h: * accessibility/mac/AccessibilityObjectWrapper.h: 2010-07-09 Patrick Gansterer Reviewed by Kent Tamura. [WINCE] Buildfix for EventHandlerWin https://bugs.webkit.org/show_bug.cgi?id=41909 Use Clipboard.h instead of ClipboardWin.h on WinCE. * page/win/EventHandlerWin.cpp: 2010-07-09 Sheriff Bot Unreviewed, rolling out r62946. http://trac.webkit.org/changeset/62946 https://bugs.webkit.org/show_bug.cgi?id=41965 AppCache inspector support should be enabled in WebKit ToT. (Requested by pfeldman_ on #webkit). * inspector/front-end/StoragePanel.js: (WebInspector.StoragePanel): (WebInspector.StoragePanel.prototype.reset): (WebInspector.StoragePanel.prototype.addApplicationCache): 2010-07-09 François Sausset Reviewed by Kenneth Rohde Christiansen. Implement MathML mathcolor & mathbackground attributes https://bugs.webkit.org/show_bug.cgi?id=41895 Test: mathml/presentation/attributes.xhtml * dom/MappedAttributeEntry.h: (WebCore::): * mathml/MathMLElement.cpp: (WebCore::MathMLElement::MathMLElement): (WebCore::MathMLElement::mapToEntry): (WebCore::MathMLElement::parseMappedAttribute): * mathml/MathMLElement.h: * mathml/mathattrs.in: 2010-07-09 Xiaomei Ji Reviewed by David Levin. Fix characters with unicode-bidi-mirror property are not correctly mirrored in Linux. https://bugs.webkit.org/show_bug.cgi?id=41305 Since harfbuzz does not do mirroring, chromium should iterate each character in the string and mirror it if needed before passing the string to harfbuzz for shaping. Test: fast/text/international/bidi-mirror-he-ar.html * platform/graphics/chromium/FontLinux.cpp: (WebCore::TextRunWalker::TextRunWalker): (WebCore::TextRunWalker::~TextRunWalker): (WebCore::TextRunWalker::mirrorCharacters): 2010-07-09 Anders Carlsson Reviewed by Simon Fraser. Instantiate Netscape plug-ins, pass geometry information to Plugin https://bugs.webkit.org/show_bug.cgi?id=41960 * WebCore.exp.in: Export ScrollView::contentsToWindow. 2010-07-09 Patrick Gansterer Reviewed by Kent Tamura. [WINCE] Buildfix for FrameWince after r47440 https://bugs.webkit.org/show_bug.cgi?id=41904 * page/wince/FrameWince.cpp: Added property svn:eol-style. (WebCore::computePageRectsForFrame): (WebCore::imageFromSelection): 2010-07-09 Vitaly Repeshko Reviewed by Pavel Feldman. [v8] Call JS gc in a fresh context to avoid retaining the current one. https://bugs.webkit.org/show_bug.cgi?id=41963 http://crbug.com/46571 * bindings/v8/ScriptController.cpp: (WebCore::ScriptController::collectGarbage): 2010-07-09 Kenneth Russell Reviewed by Dimitri Glazkov. Crash with uniform array test https://bugs.webkit.org/show_bug.cgi?id=36028 * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp: (WebCore::vertexAttribAndUniformHelperf): (WebCore::uniformHelperi): (WebCore::uniformMatrixHelper): - Fixed type tests and casting of incoming arrays. * html/canvas/WebGLRenderingContext.cpp: (WebCore::WebGLRenderingContext::getUniform): - Fixed crash when null WebGLUniform is passed to getUniform. 2010-07-09 Chris Fleizach Reviewed by Darin Adler. AX: text editing not spoken by VO on web view contenteditable textbox https://bugs.webkit.org/show_bug.cgi?id=41912 Test: platform/mac/accessibility/selection-value-changes-for-aria-textbox.html * accessibility/AccessibilityRenderObject.cpp: (WebCore::AccessibilityRenderObject::renderObjectIsObservable): 2010-07-09 Michael Nordman Reviewed by Dumitru Daniliuc. Use class ProgressEvent when raising appcache related progress events and set the 'total', 'loaded', and 'lengthComputable' attributes. Also raise the final progress event with the 'total' and 'loaded' attribute values are equal to one another to keep pace with the spec for this feature. https://bugs.webkit.org/show_bug.cgi?id=37602 Test: http/tests/appcache/progress-counter.html * loader/appcache/ApplicationCacheGroup.cpp: (WebCore::ApplicationCacheGroup::ApplicationCacheGroup): (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): (WebCore::ApplicationCacheGroup::startLoadingEntry): (WebCore::CallCacheListenerTask::create): (WebCore::CallCacheListenerTask::performTask): (WebCore::CallCacheListenerTask::CallCacheListenerTask): (WebCore::ApplicationCacheGroup::postListenerTask): * loader/appcache/ApplicationCacheGroup.h: (WebCore::ApplicationCacheGroup::postListenerTask): * loader/appcache/ApplicationCacheHost.cpp: (WebCore::ApplicationCacheHost::notifyDOMApplicationCache): (WebCore::ApplicationCacheHost::stopDeferringEvents): (WebCore::ApplicationCacheHost::dispatchDOMEvent): * loader/appcache/ApplicationCacheHost.h: (WebCore::ApplicationCacheHost::DeferredEvent::DeferredEvent): 2010-07-09 Sebastian Dröge Reviewed by Gustavo Noronha Silva. Bug 41340 - [GStreamer] Subtle race condition during seeks https://bugs.webkit.org/show_bug.cgi?id=41340 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp: (webKitWebSrcStop): (webKitWebSrcNeedDataMainCb): (webKitWebSrcNeedDataCb): (webKitWebSrcEnoughDataMainCb): (webKitWebSrcEnoughDataCb): (webKitWebSrcSeekDataCb): (StreamingClient::didFinishLoading): Fix two subtle race conditions that can happen during seeks: - The timeout callback could be called before the callback ID is assigned to the instance private data. This causes the ID to be set after the callback has finished and breaks all future processing. - The source must not go EOS while a seek is pending because this confuses appsrc due to the different threads involved here. 2010-07-09 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Removed hard-coded enabled default of video support Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true.Properly detect video/audio instead of defaulting to true. * WebCore.pri: 2010-07-09 Ben Murdoch Reviewed by Steve Block. [Arm] Missing NaN check in XPath substring function https://bugs.webkit.org/show_bug.cgi?id=41862 Test: fast/xpath/substring-nan-position.html * xml/XPathFunctions.cpp: (WebCore::XPath::FunSubstring::evaluate): Add an isnan() to the value returned from evaluating the position argument and early out and return the empty string. 2010-07-09 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Prospective build fix. Moved the media element detection from WebCore.pro into WebCore.pri, where all the features are detected. This is also used by build-webkit to determine the defaults, which may be the reason for the build breakage. * WebCore.pri: * WebCore.pro: 2010-07-09 Simon Hausmann Reviewed by Tor Arne Vestbø. [Qt] Re-enable support for QtMultimediaKit as backend for the media elements Experimental support is re-enabled if QtMobility is available and the Qt version is 4.7 or above. * WebCore.pro: * platform/graphics/MediaPlayer.cpp: * platform/graphics/qt/MediaPlayerPrivateQt.cpp: (WebCore::MediaPlayerPrivate::supportsType): Adapt to latest QtMultimediaKit API changes. (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::totalBytes): 2010-07-09 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: do not show default tooltip when detailed network info is available. https://bugs.webkit.org/show_bug.cgi?id=41957 * English.lproj/localizedStrings.js: * inspector/front-end/ResourcesPanel.js: (WebInspector.ResourcesPanel): (WebInspector.ResourcesPanel.prototype.reset): (WebInspector.ResourcesPanel.prototype.showResource): (WebInspector.ResourcesPanel.prototype._getPopoverAnchor): (WebInspector.ResourcesPanel.prototype._showPopover): (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels): 2010-07-09 François Sausset Reviewed by Beth Dakin. Correct the default font variant of mtext (regular instead of italic). https://bugs.webkit.org/show_bug.cgi?id=41626 Add test to be sure that only elements use italic fonts by default. Update test with fractions to take into account the correct behaviour of mtext (regular instead of italic). * css/mathml.css: (mi): 2010-07-09 Tony Gentilcore Reviewed by Dimitri Glazkov. Implement performance.navigation.type https://bugs.webkit.org/show_bug.cgi?id=41564 Tests: fast/dom/navigation-type-back-forward.html fast/dom/navigation-type-navigate.html fast/dom/navigation-type-reload.html * page/Navigation.cpp: (WebCore::Navigation::type): * page/Navigation.h: (WebCore::Navigation::): * page/Navigation.idl: 2010-07-09 Pavel Feldman Reviewed by Yury Semikhatsky. Web Inspector: hide AppCache until implemented. https://bugs.webkit.org/show_bug.cgi?id=41858 * inspector/front-end/StoragePanel.js: (WebInspector.StoragePanel): (WebInspector.StoragePanel.prototype.reset): (WebInspector.StoragePanel.prototype.addApplicationCache): 2010-07-09 François Sausset Reviewed by Kenneth Rohde Christiansen. Set the good default behaviour for the columalign attribute on MathML mtable element https://bugs.webkit.org/show_bug.cgi?id=41631 Test update: mathml/tables.xhtml * css/mathml.css: (math): 2010-07-09 Sheriff Bot Unreviewed, rolling out r62937. http://trac.webkit.org/changeset/62937 https://bugs.webkit.org/show_bug.cgi?id=41955 Crashes SnowLeopard leaks and Windows debug bot in fast/xsl /xslt-relative-path.xml, with assertion in XSLTProcessorLibxslt.cpp:264 (Requested by WildFox on #webkit). * xml/XSLTProcessor.h: (WebCore::XSLTProcessor::XSLTProcessor): * xml/XSLTProcessorLibxslt.cpp: (WebCore::docLoaderFunc): (WebCore::setXSLTLoadCallBack): (WebCore::xsltStylesheetPointer): (WebCore::XSLTProcessor::transformToString): 2010-07-09 Yael Aharon Reviewed by Laszlo Gombos. NotificationPresenter needs a cancelRequestPermission API https://bugs.webkit.org/show_bug.cgi?id=41783 Updated NotificationPresenter API, to use ScriptExecutionContext instead of origin. Added new API NotificationPresenter::cancelRequestsForPermision The new API will be implemented and a test will be added in a followup patch. * notifications/Notification.cpp: (WebCore::Notification::Notification): * notifications/NotificationCenter.cpp: (WebCore::NotificationCenter::checkPermission): (WebCore::NotificationCenter::requestPermission): (WebCore::NotificationCenter::disconnectFrame): * notifications/NotificationCenter.h: * notifications/NotificationPresenter.h: 2010-07-09 Andreas Wictor Reviewed by Alexey Proskuryakov. Remove global variables from XSLTProcessorLibxslt.cpp https://bugs.webkit.org/show_bug.cgi?id=41348 Remove the globalProcessor and globalDocLoader global variables by using the _private field that exists on most libxml structs. No new tests, existing tests covers this. * xml/XSLTProcessor.h: (WebCore::XSLTProcessor::sourceNode): (WebCore::XSLTProcessor::XSLTProcessor): * xml/XSLTProcessorLibxslt.cpp: (WebCore::registeredXSLTProcessors): (WebCore::registeredXSLStyleSheets): (WebCore::docLoaderFunc): (WebCore::clearSavedStyleSheetPointers): (WebCore::xsltStylesheetPointer): (WebCore::XSLTProcessor::transformToString): 2010-07-09 Adam Barth Unreviewed build fix. We recently taught the HTMLTokenizer to recognize self-closing tags, , but that confused the LegacyHTMLTreeBuilder. It turns out that it's much happier if we never say a tag is self-closing. * html/HTMLTreeBuilder.cpp: (WebCore::convertToOldStyle): 2010-07-09 Nikolas Zimmermann Reviewed by Rob Buis. svg/custom/use-instanceRoot-event-bubbling.xhtml test crashes https://bugs.webkit.org/show_bug.cgi?id=41931 Be careful to not mutate (marking it for recreation) the shadow tree, while building it. The recent change that cloneNode() properly synchronizes the style/SVG attributes caused this problem. Fixes crash seen on the buildbots in svg/custom/use-instanceRoot-event-bubbling.xhtml. * svg/SVGUseElement.cpp: (WebCore::SVGUseElement::SVGUseElement): (WebCore::SVGUseElement::recalcStyle): (WebCore::SVGUseElement::buildShadowAndInstanceTree): (WebCore::SVGUseElement::invalidateShadowTree): * svg/SVGUseElement.h: (WebCore::SVGUseElement::setUpdatesBlocked): 2010-07-09 Adam Barth Reviewed by Eric Seidel. Skip leading newlines in