summaryrefslogtreecommitdiffstats
path: root/WebCore/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/ChangeLog')
-rw-r--r--WebCore/ChangeLog5851
1 files changed, 5851 insertions, 0 deletions
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index c27e3b2..e0d5843 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,5854 @@
+2010-07-12 Eric Seidel <eric@webkit.org>
+
+ 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.
+ <p><b><p>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 <pfeldman@chromium.org>
+
+ 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 <abarth@webkit.org>
+
+ 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 <tonyg@chromium.org>
+
+ 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 <gns@gnome.org>
+
+ Unreviewed. make distcheck fix.
+
+ * GNUmakefile.am:
+
+2010-07-12 Yuta Kitamura <yutak@chromium.org>
+
+ 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 <abarth@webkit.org>
+
+ 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 <ajwong@chromium.org>
+
+ 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 <cfleizach@apple.com>
+
+ 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 <tony@chromium.org>
+
+ 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 <eric@webkit.org>
+
+ 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 <zmo@google.com>
+
+ 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 <eric@webkit.org>
+
+ 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 <andreas.kling@nokia.com>
+
+ 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 <eric@webkit.org>
+
+ 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 <eric.carlson@apple.com>
+
+ 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 <source> 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 <mrobinson@igalia.com>
+
+ 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 <eric@webkit.org>
+
+ 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 <eric@webkit.org>
+
+ 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 <simon.fraser@apple.com>
+
+ 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 <simon.fraser@apple.com>
+
+ 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 <eric@webkit.org>
+
+ 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 <eric@webkit.org>
+
+ 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 <andreas.kling@nokia.com>
+
+ 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 <japhet@chromium.org>
+
+ 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 <andreas.kling@nokia.com>
+
+ 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 <ap@apple.com>
+
+ 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
+ <rdar://problem/3363403> 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 <andersca@apple.com>
+
+ 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 <andreas.kling@nokia.com>
+
+ 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 <steveblock@google.com>
+
+ 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 <lucas.demarchi@profusion.mobi>
+
+ Unreviewed.
+
+ [EFL] Move ScriptConcotrollerEfl.cpp from CMakeLists.txt to
+ CMakeListsEfl.txt.
+
+ * CMakeLists.txt:
+ * CMakeListsEfl.txt:
+
+2010-07-12 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Unreviewed build fix after r60050.
+
+ * CMakeLists.txt: Add WebCore/bindings to the include path.
+
+2010-07-09 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ 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 <apavlov@chromium.org>
+
+ 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 <sausset@gmail.com>
+
+ 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 <xlopez@igalia.com>
+
+ 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 <sausset@gmail.com>
+
+ 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 <andreas.kling@nokia.com>
+
+ 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 <hamaji@chromium.org>
+
+ 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 <pfeldman@chromium.org>
+
+ 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 <steveblock@google.com>
+
+ 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 <jorlow@chromium.org>
+
+ 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 <mjs@apple.com>
+
+ 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 <abarth@webkit.org>
+
+ 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 <mrobinson@igalia.com>
+
+ 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 <darin@apple.com>
+
+ 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 <tonyg@chromium.org>
+
+ 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 <andersca@apple.com>
+
+ 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 <sam@webkit.org>
+
+ 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 <dbates@rim.com>
+
+ 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 <mitz@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ <rdar://problem/8153214> 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 <sausset@gmail.com>
+
+ 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 <eric@webkit.org>
+
+ 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 <rwlbuis@gmail.com>
+
+ 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 <dumi@chromium.org>
+
+ Unreviewed, GTK build fix.
+
+ * bindings/gobject/GObjectEventListener.h:
+
+2010-07-10 Dumitru Daniliuc <dumi@chromium.org>
+
+ 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 <tony@chromium.org>
+
+ 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 <arv@chromium.org>
+
+ 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 <abarth@webkit.org>
+
+ 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 <paroga@paroga.com>
+
+ 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 <leonclarke@google.com>
+
+ 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 <jamesr@chromium.org>
+
+ 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 <jamesr@chromium.org>
+
+ 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<HTMLCanvasElement* const>(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 <simon.fraser@apple.com>
+
+ 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 <kbr@google.com>
+
+ 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 <dumi@chromium.org>
+
+ 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 <eric@webkit.org>
+
+ 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 <tonyg@chromium.org>
+
+ 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 <jesus.palencia@openbossa.org>
+
+ 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 <zub@linux.fjfi.cvut.cz>
+
+ 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 <eric@webkit.org>
+
+ 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 <eric@webkit.org>
+
+ 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 <aestes@apple.com>
+
+ 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
+ <rdar://problem/7920153>
+
+ * 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 <tonyg@chromium.org>
+
+ 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 <dumi@chromium.org>
+
+ 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 <paroga@paroga.com>
+
+ 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 <webkit.review.bot@gmail.com>
+
+ 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 <sausset@gmail.com>
+
+ 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 <xji@chromium.org>
+
+ 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 <andersca@apple.com>
+
+ 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 <paroga@paroga.com>
+
+ 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 <vitalyr@chromium.org>
+
+ 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 <kbr@google.com>
+
+ 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 <cfleizach@apple.com>
+
+ 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 <michaeln@google.com>
+
+ 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 <sebastian.droege@collabora.co.uk>
+
+ 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 <simon.hausmann@nokia.com>
+
+ 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 <benm@google.com>
+
+ 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 <simon.hausmann@nokia.com>
+
+ 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 <simon.hausmann@nokia.com>
+
+ 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 <pfeldman@chromium.org>
+
+ 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 <sausset@gmail.com>
+
+ 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 <mi> 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 <tonyg@chromium.org>
+
+ 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 <pfeldman@chromium.org>
+
+ 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 <sausset@gmail.com>
+
+ 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 <webkit.review.bot@gmail.com>
+
+ 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 <yael.aharon@nokia.com>
+
+ 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 <andreas.wictor@xcerion.com>
+
+ 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 <abarth@webkit.org>
+
+ Unreviewed build fix.
+
+ We recently taught the HTMLTokenizer to recognize self-closing tags,
+ <http://trac.webkit.org/changeset/62926>, 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 <nzimmermann@rim.com>
+
+ 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 <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Skip leading newlines in <textarea>
+ https://bugs.webkit.org/show_bug.cgi?id=41947
+
+ We would have caught this earlier with the ASSERT.
+
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::nextToken):
+
+2010-07-08 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Provide detailed network info in the resources panel.
+
+ https://bugs.webkit.org/show_bug.cgi?id=40227
+
+ * English.lproj/localizedStrings.js:
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::willSendRequest):
+ (WebCore::InspectorController::didReceiveResponse):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::InspectorResource):
+ (WebCore::InspectorResource::updateResponse):
+ (WebCore::InspectorResource::updateScriptObject):
+ (WebCore::InspectorResource::buildObjectForTiming):
+ * inspector/InspectorResource.h:
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel):
+ (WebInspector.ResourcesPanel.prototype.elementsToRestoreScrollPositionsFor):
+ (WebInspector.ResourcesPanel.prototype._getPopoverAnchor):
+ (WebInspector.ResourcesPanel.prototype._showPopover):
+ (WebInspector.ResourcesPanel.prototype.hide):
+ (WebInspector.ResourceTimeCalculator.prototype.computeBarGraphLabels):
+ (WebInspector.ResourceGraph):
+ * inspector/front-end/inspector.js:
+ (WebInspector.updateResource):
+ * platform/network/ResourceLoadTiming.h:
+ (WebCore::ResourceLoadTiming::create):
+ (WebCore::ResourceLoadTiming::deepCopy):
+ (WebCore::ResourceLoadTiming::operator==):
+ (WebCore::ResourceLoadTiming::ResourceLoadTiming):
+ * platform/network/ResourceRequestBase.h:
+ (WebCore::ResourceRequestBase::reportLoadTiming):
+ (WebCore::ResourceRequestBase::setReportLoadTiming):
+ (WebCore::ResourceRequestBase::ResourceRequestBase):
+ * platform/network/ResourceResponseBase.cpp:
+ (WebCore::ResourceResponseBase::connectionID):
+ (WebCore::ResourceResponseBase::setConnectionID):
+ * platform/network/ResourceResponseBase.h:
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Implement self closing start tag state in the tokenizer
+ https://bugs.webkit.org/show_bug.cgi?id=41946
+
+ Amazingly we got this far w/o needing self closing.
+ The LegacyHTMLTreeBuilder clearly uses the self-closing
+ state, but the fact that we never exposed it seems to
+ not have caused any test failures. Sad.
+
+ The new HTMLTreeBuilder only needs the self closing state
+ for foreign content mode (and a few parse error cases).
+
+ * html/HTMLToken.h:
+ (WebCore::HTMLToken::setSelfClosing):
+ * html/HTMLTokenizer.cpp:
+ (WebCore::HTMLTokenizer::nextToken):
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::):
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add basic "in foreign content" support to the TreeBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=41943
+
+ This is covered by numerous tests in html5lib/runner.html.
+
+ "in foreign content" mode requires us to be able to process
+ tokens using the "secondary insertion mode". We have to set
+ a fake insertion mode to do that, so much of this code is enabling
+ setting of fake insertion modes, and then later restoration of the
+ insertion mode after execution.
+
+ There is a lot more of foreign content mode to implement, but this is
+ a good start resulting in huge test progressions.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
+ - Use createHTMLElementAndAttachToCurrent instead of copy/paste code.
+ - No need to include HTMLElementFactory in this file.
+ * html/HTMLConstructionSite.h:
+ - RedirectToFosterParentGuard does not need to be a friend class.
+ * html/HTMLElementStack.cpp:
+ (WebCore::HTMLElementStack::isOnlyHTMLElementsInScope):
+ * html/HTMLElementStack.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::):
+ * html/HTMLTreeBuilder.h:
+ (WebCore::HTMLTreeBuilder::setInsertionMode):
+ (WebCore::HTMLTreeBuilder::isFakeInsertionMode):
+ (WebCore::HTMLTreeBuilder::setFakeInsertionMode):
+
+2010-07-09 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Coalesce text nodes when foster parenting
+ https://bugs.webkit.org/show_bug.cgi?id=41921
+
+ Introduces the notion of an AttachmentSite to the overall
+ HTMLConstructionSite. Maybe we should rename HTMLConstructionSite to
+ HTMLConstructionArea since we construct things all over the tree? :)
+
+ There's something wrong in the internal layering in this class, but I
+ can't quite see what it is. I added a FIXME for the some of the
+ symptoms.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::attach):
+ (WebCore::HTMLConstructionSite::attachAtSite):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::findFosterSite):
+ (WebCore::HTMLConstructionSite::fosterParent):
+ * html/HTMLConstructionSite.h:
+
+2010-07-08 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ RenderSVGRoot does not include border/padding while repainting
+ https://bugs.webkit.org/show_bug.cgi?id=41854
+
+ RenderSVGRoot does not include border/padding in the repaint rect.
+ clippedOverflowRectForRepaint() was missing. Affects all DRT results,
+ as <svg> now gets properly sized.
+
+ Test: svg/custom/repaint-moving-svg-and-div.xhtml
+
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::repaintRectInLocalCoordinates):
+ (WebCore::RenderSVGRoot::clippedOverflowRectForRepaint):
+ * rendering/RenderSVGRoot.h:
+
+2010-07-09 Albert J. Wong <ajwong@chromium.org>
+
+ Reviewed by Nikolas Zimmermann.
+
+ Add RuntimeEnabledFeatures::timeRangesEnabled() required by r62880
+
+ https://bugs.webkit.org/show_bug.cgi?id=41935
+
+ * bindings/generic/RuntimeEnabledFeatures.cpp:
+ (WebCore::RuntimeEnabledFeatures::timeRangesEnabled):
+ Add in timeRangesEnabled() implementation.
+ * bindings/generic/RuntimeEnabledFeatures.h:
+ Add in timeRangesEnabled() declaration.
+
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add setInsertionMode setter in preparation for "in foreign content" mode
+ https://bugs.webkit.org/show_bug.cgi?id=41942
+
+ "in foreign content" mode needs to be able to use a fake
+ insertion mode for processing. We need to be able to save the
+ original insertion mode, set a fake one, and then restore the original
+ if it wasn't changed. To detect changes, we need all callsites to
+ use a setInsertionMode accessor instead of m_insertionMode =
+
+ No functional changes, thus no tests.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+ (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
+ (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
+ (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
+ (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add insertForeignElement in preparation for adding "in foreign content" support
+ https://bugs.webkit.org/show_bug.cgi?id=41940
+
+ No functional changes, thus no tests.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertForeignElement):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ * html/HTMLConstructionSite.h:
+
+2010-07-09 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implementing pending table characters
+ https://bugs.webkit.org/show_bug.cgi?id=41916
+
+ This turned out to not be as scary as I thought it would be.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processDoctypeToken):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processComment):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::processDefaultForInTableTextMode):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-08 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Handle whitespace correctly
+ https://bugs.webkit.org/show_bug.cgi?id=41907
+
+ This patch introduces an extra memcpy in the character token pipeline.
+ I'll remove the memcpy in a future patch.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ * html/HTMLConstructionSite.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Move more mode handling into functions for later re-use
+ https://bugs.webkit.org/show_bug.cgi?id=41939
+
+ No functional changes, thus no tests.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInTableBody):
+ (WebCore::HTMLTreeBuilder::processEndTagForInRow):
+ (WebCore::HTMLTreeBuilder::processEndTagForInCell):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add new popUntilPopped functions to clean up code
+ https://bugs.webkit.org/show_bug.cgi?id=41936
+
+ Pretty self explanatory. Much awesome code reduction.
+
+ No functional changes, thus no tests.
+
+ * html/HTMLElementStack.cpp:
+ (WebCore::HTMLElementStack::popUntilPopped):
+ * html/HTMLElementStack.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
+ (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Unreviewed. Just renaming (discussed with Adam Barth).
+
+ Rename createElement* to createHTMLElement* to better reflect
+ behavior. This is in preparation for adding foreign content support.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::createHTMLElementAndAttachToCurrent):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
+ (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
+ (WebCore::HTMLConstructionSite::insertHTMLElement):
+ (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
+ (WebCore::HTMLConstructionSite::createHTMLElement):
+ * html/HTMLConstructionSite.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+
+2010-07-09 Eric Seidel <eric@webkit.org>
+
+ Unreviewed. Just renaming (discussed with Adam Barth).
+
+ Rename insertElement to insertHTMLElement and
+ insertSelfClosingElement to insertSelfClosingHTMLElement
+ to better reflect what they actually do. This is in preparation
+ for adding foreign content support.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::insertHTMLElement):
+ (WebCore::HTMLConstructionSite::insertSelfClosingHTMLElement):
+ (WebCore::HTMLConstructionSite::insertFormattingElement):
+ (WebCore::HTMLConstructionSite::reconstructTheActiveFormattingElements):
+ (WebCore::HTMLConstructionSite::fosterParent):
+ * html/HTMLConstructionSite.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::processStartTagForInHead):
+ (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
+ (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
+
+2010-07-08 Rob Buis <rwlbuis@gmail.com>
+
+ Reviewed by Eric Seidel.
+
+ Implement SVGSVGElement.getElementById
+ https://bugs.webkit.org/show_bug.cgi?id=41655
+
+ Implement getElementById for SVGSVGElement by trying to
+ reuse Document.getElementById. If that fails to find an
+ SVG element in the document fragent do a subtree search.
+
+ Test: svg/custom/svg-getelementid.xhtml
+
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::getElementById):
+ * svg/SVGSVGElement.h:
+ * svg/SVGSVGElement.idl:
+
+2010-07-08 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Unwrap a few || blocks for easier readability
+ https://bugs.webkit.org/show_bug.cgi?id=41838
+
+ No functional change, thus no tests.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::adjustedLexerState):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processComment):
+ (WebCore::HTMLTreeBuilder::processStartTagForInHead):
+
+2010-07-08 Sam Magnuson <smagnuson@netflix.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] for debugging purposes nice I'm contributing back my FPS
+ counter in the AnimationQtBase
+ https://bugs.webkit.org/show_bug.cgi?id=40381
+
+ Simply start a timer and count frames in the AnimationQtBase and
+ spit out the FPS count at the end of a single animation.
+
+ No new tests: this is a simple debugging aid.
+
+ * platform/graphics/qt/GraphicsLayerQt.cpp:
+ (WebCore::AnimationQt::updateState):
+ (WebCore::AnimationQt::updateCurrentTime):
+ (WebCore::TransformAnimationQt::updateState):
+ (WebCore::OpacityAnimationQt::updateState):
+
+2010-07-08 Sam Magnuson <smagnuson@netflix.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] instance objects created for QObjects are somtimes GC'd
+ https://bugs.webkit.org/show_bug.cgi?id=40352
+
+ In markAggregate loop over all the current fields and for any that
+ still have a dynamic property or a child, mark them as
+ well. Otherwise the proxy instance will go away and the JS that
+ was bound to it will be lost.
+
+ * bridge/qt/qt_instance.cpp:
+ (JSC::Bindings::QtInstance::getQtInstance):
+ (JSC::Bindings::QtInstance::removeCachedMethod):
+ (JSC::Bindings::QtInstance::markAggregate):
+ (JSC::Bindings::QtInstance::getPropertyNames):
+
+2010-07-08 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ WebInspector: migrate InspectorDOMAgent to the generated version of
+ InspectorFrontend interface. This is the next step on the way to
+ Remote Debugging.
+
+ * bindings/js/ScriptEventListener.cpp:
+ (WebCore::eventListenerHandlerBody):
+ (WebCore::eventListenerHandlerLocation):
+ * bindings/js/ScriptEventListener.h:
+ * bindings/v8/ScriptEventListener.cpp:
+ (WebCore::eventListenerHandlerBody):
+ (WebCore::eventListenerHandlerLocation):
+ * bindings/v8/ScriptEventListener.h:
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InspectorCSSStore.cpp:
+ (WebCore::InspectorCSSStore::inspectorStyleSheet):
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::connectFrontend):
+ * inspector/InspectorController.h:
+ (WebCore::InspectorController::inspectorFrontend2):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::InspectorDOMAgent):
+ (WebCore::InspectorDOMAgent::setDocument):
+ (WebCore::InspectorDOMAgent::handleEvent):
+ (WebCore::InspectorDOMAgent::pushChildNodesToFrontend):
+ (WebCore::InspectorDOMAgent::getEventListenersForNode):
+ (WebCore::InspectorDOMAgent::buildObjectForNode):
+ (WebCore::InspectorDOMAgent::buildArrayForElementAttributes):
+ (WebCore::InspectorDOMAgent::buildArrayForContainerChildren):
+ (WebCore::InspectorDOMAgent::buildObjectForEventListener):
+ (WebCore::InspectorDOMAgent::didInsertDOMNode):
+ (WebCore::InspectorDOMAgent::getStyles):
+ (WebCore::InspectorDOMAgent::getAllStyles):
+ (WebCore::InspectorDOMAgent::getStyleSheet):
+ (WebCore::InspectorDOMAgent::getRuleRangesForStyleSheetId):
+ (WebCore::InspectorDOMAgent::getInlineStyle):
+ (WebCore::InspectorDOMAgent::getComputedStyle):
+ (WebCore::InspectorDOMAgent::buildObjectForAttributeStyles):
+ (WebCore::InspectorDOMAgent::buildArrayForCSSRules):
+ (WebCore::InspectorDOMAgent::buildArrayForPseudoElements):
+ (WebCore::InspectorDOMAgent::applyStyleText):
+ (WebCore::InspectorDOMAgent::toggleStyleEnabled):
+ (WebCore::InspectorDOMAgent::setRuleSelector):
+ (WebCore::InspectorDOMAgent::addRule):
+ (WebCore::InspectorDOMAgent::buildObjectForStyle):
+ (WebCore::InspectorDOMAgent::populateObjectWithStyleProperties):
+ (WebCore::InspectorDOMAgent::buildArrayForDisabledStyleProperties):
+ (WebCore::InspectorDOMAgent::buildObjectForStyleSheet):
+ (WebCore::InspectorDOMAgent::buildObjectForRule):
+ (WebCore::InspectorDOMAgent::toArray):
+ (WebCore::InspectorDOMAgent::reportNodesAsSearchResults):
+ * inspector/InspectorDOMAgent.h:
+ (WebCore::InspectorDOMAgent::create):
+ * inspector/InspectorFrontend.cpp:
+ * inspector/InspectorFrontend.h:
+ * inspector/InspectorFrontend2.idl:
+ * inspector/front-end/inspector.js:
+ (WebInspector.dispatchMessageFromBackend):
+
+2010-07-08 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ compositing/iframes/iframe-resize.html displays incorrectly after the resize
+ https://bugs.webkit.org/show_bug.cgi?id=41794
+
+ The clip and scroll layers of a composited iframe's RenderLayerCompositor are updated from
+ from updateGraphicsLayerGeometry(), but this is too early to get the correct layoutWidth and
+ layoutHeight from the FrameView which happen later in layout. So when a widget size changes,
+ call updateAfterWidgetResize() directly on the RenderLayerBacking (if any).
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::updateAfterWidgetResize): New method that updates the clip
+ and scroll layers of the iframe's content RenderLayerCompositor.
+ (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Call updateAfterWidgetResize()
+ * rendering/RenderLayerBacking.h: Add updateAfterWidgetResize().
+ * rendering/RenderWidget.cpp:
+ (WebCore::RenderWidget::setWidgetGeometry): Call updateAfterWidgetResize().
+
+2010-07-08 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Calling layoutTestController.layerTreeAsText() should update layout
+ https://bugs.webkit.org/show_bug.cgi?id=41818
+
+ Call updateLayout() on the document before obtaining the layer tree.
+ This will update compositing layers.
+
+ * page/Frame.cpp:
+ (WebCore::Frame::layerTreeAsText):
+
+2010-07-08 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Get my head wrapped around processCharacter
+ https://bugs.webkit.org/show_bug.cgi?id=41812
+
+ The bulk of the patch is just stubbing out functions to document what
+ the spec tells us to do. I'll implement these functions in subsequent
+ patches.
+
+ * html/HTMLConstructionSite.h:
+ (WebCore::HTMLConstructionSite::insertLeadingWhitespace):
+ (WebCore::HTMLConstructionSite::insertLeadingWhitespaceWithActiveFormattingElements):
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ * html/HTMLTreeBuilder.h:
+ (WebCore::HTMLTreeBuilder::skipLeadingWhitespace):
+
+2010-07-08 Tony Chang <tony@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ WebCore::InsertLineBreakCommand::shouldUseBreakElement ReadAV@NULL
+ https://bugs.webkit.org/show_bug.cgi?id=30116
+ Fixing the crash causes text insertions on hidden elements to get ignored
+ (not a new bug). This is https://bugs.webkit.org/show_bug.cgi?id=40342
+
+ Test: editing/inserting/return-key-in-hidden-textarea.html
+
+ * editing/InsertLineBreakCommand.cpp:
+ (WebCore::InsertLineBreakCommand::doApply):
+ * editing/InsertParagraphSeparatorCommand.cpp:
+ (WebCore::InsertParagraphSeparatorCommand::doApply):
+
+2010-07-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Oliver Hunt.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=41923
+ TimeRanges should expose a JS constructor
+
+ * html/TimeRanges.idl: Remove [OmitConstructor].
+ * page/DOMWindow.idl: Add constructor.
+
+2010-07-08 Erik Arvidsson <arv@chromium.org>
+
+ Reviewed by Ojan Vafai.
+
+ Add missing padding-end and margin-end CSS properties.
+ https://bugs.webkit.org/show_bug.cgi?id=25761
+
+ Tests: fast/css/margin-start-end.html
+ fast/css/padding-start-end.html
+
+ * css/CSSComputedStyleDeclaration.cpp:
+ (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseValue):
+ * css/CSSPropertyNames.in:
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyProperty):
+ * inspector/front-end/SourceCSSTokenizer.js:
+ (WebInspector.SourceCSSTokenizer):
+
+2010-07-08 Aaron Boodman <aa@chromium.org>
+
+ Reviewed by Timothy Hatcher.
+
+ Add the ability for user scripts and user styles to affect just the top frame.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41529
+
+ Tests: userscripts/user-script-all-frames.html
+ userscripts/user-script-top-frame-only.html
+ userscripts/user-style-all-frames.html
+ userscripts/user-style-top-frame-only.html
+
+ * WebCore.base.exp: Update PageGroup method signatures.
+ * dom/Document.cpp:
+ (WebCore::Document::pageGroupUserSheets): Check allFrames before injecting.
+ * page/Frame.cpp:
+ (WebCore::Frame::injectUserScriptsForWorld): Ditto.
+ * page/PageGroup.cpp:
+ (WebCore::PageGroup::addUserScriptToWorld):
+ (WebCore::PageGroup::addUserStyleSheetToWorld):
+ * page/PageGroup.h:
+ * page/UserScript.h:
+ (WebCore::UserScript::UserScript):
+ (WebCore::UserScript::injectedFrames):
+ * page/UserScriptTypes.h:
+ (WebCore::):
+ * page/UserStyleSheet.h:
+ (WebCore::UserStyleSheet::UserStyleSheet):
+ (WebCore::UserStyleSheet::injectedFrames):
+
+2010-07-08 Adele Peterson <adele@apple.com>
+
+ Reviewed by Jon Honeycutt, Adam Roben, and Darin Adler.
+
+ Fix for https://bugs.webkit.org/show_bug.cgi?id=41721
+ <rdar://problem/8158561> Missing plug-in indicator should have a pressed state
+
+ Test: plugins/clicking-missing-plugin-fires-delegate.html
+
+ * html/HTMLPlugInElement.cpp:
+ (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize m_isCapturingMouseEvents.
+ (WebCore::HTMLPlugInElement::detach): If we're still capturing when getting detached, clear the capturing node on the EventHandler.
+ (WebCore::HTMLPlugInElement::defaultEventHandler): Call handleMissingPluginIndicatorEvent when the missing plugin indicator is showing.
+ * html/HTMLPlugInElement.h:
+ (WebCore::HTMLPlugInElement::isCapturingMouseEvents):
+ (WebCore::HTMLPlugInElement::setIsCapturingMouseEvents):
+ * page/ChromeClient.h:
+ (WebCore::ChromeClient::shouldMissingPluginMessageBeButton): Added default implementation.
+ * rendering/RenderEmbeddedObject.cpp:
+ (WebCore::replacementTextRoundedRectPressedColor):
+ (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
+ (WebCore::RenderEmbeddedObject::setMissingPluginIndicatorIsPressed): Added. Causes a repaint when the state changes.
+ (WebCore::RenderEmbeddedObject::paintReplaced): Call getReplacementTextGeometry.
+ (WebCore::RenderEmbeddedObject::getReplacementTextGeometry): Factored this out so it can be used in paintReplaced and in isInMissingPluginIndicator.
+ (WebCore::RenderEmbeddedObject::isInMissingPluginIndicator): Hit test to see if the mouse event is in the missing plugin indicator.
+ (WebCore::RenderEmbeddedObject::handleMissingPluginIndicatorEvent): Capture mouse events as needed and track the pressed appearance.
+ * rendering/RenderEmbeddedObject.h:
+
+2010-07-08 James Robinson <jamesr@google.com>
+
+ Reviewed by Darin Fisher.
+
+ Allow resizing and getting the texture id from an offscreen GLES2Context
+ https://bugs.webkit.org/show_bug.cgi?id=41828
+
+ When using an offscreen GLES2Context the caller needs to be able to resize the backing store
+ managed by the embedder and get access to a texture id to pass to the compositor. WebGL
+ does these actions in an indirect way, it will be refactored to use this path.
+
+ * platform/chromium/GLES2Context.h:
+
+2010-07-02 Ojan Vafai <ojan@chromium.org>
+
+ Reviewed by Adam Barth.
+
+ Crash in RenderObject::containingBlock when clearing selection in a display:none node.
+ https://bugs.webkit.org/show_bug.cgi?id=41523
+
+ updateStyleIfNeeded before clearing the selection in the RenderView. Otherwise,
+ m_selectionStart and m_selectionEnd in RenderView point to garbage object.
+ This fixes the crash because updateStyleIfNeeded clears the selection before
+ clobbering nodes that contain the selection.
+
+ Test: editing/selection/crash-on-clear-selection.html
+
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::updateAppearance):
+
+2010-07-08 Brent Fulgham <bfulgham@webkit.org>
+
+ Reviewed by Xan Lopez.
+
+ Correct a mistake in calculating squiggle extents. The entire
+ quantity was being divided by two, rather than just the unitWidth.
+ This error caused the squiggle to be about half the expected length.
+
+ * platform/graphics/cairo/DrawErrorUnderline.h:
+ (drawErrorUnderline):
+
+2010-07-08 John Abd-El-Malek <jam@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [V8] Navigation policy doesn't play nicely with pepper plugins
+ https://bugs.webkit.org/show_bug.cgi?id=41864
+
+ * bindings/v8/V8Utilities.cpp:
+ (WebCore::callingOrEnteredFrame):
+ (WebCore::shouldAllowNavigation):
+ (WebCore::navigateIfAllowed):
+
+2010-07-08 Jon Honeycutt <jhoneycutt@apple.com>
+
+ Missing plug-ins may cause an assertion failure.
+ https://bugs.webkit.org/show_bug.cgi?id=41900
+
+ Reviewed by Adele Peterson.
+
+ Test: plugins/missing-plugin.html
+
+ * plugins/PluginView.cpp:
+ (WebCore::PluginView::~PluginView):
+ Check whether m_instance is null before trying to remove it from the
+ map. Trying to remove a null instance results in an assertion failure.
+ (WebCore::PluginView::PluginView):
+ Initialize m_instance to 0, because there is an early return that may
+ skip its being assigned its proper value.
+
+2010-07-08 Darin Adler <darin@apple.com>
+
+ Reviewed by Oliver Hunt.
+
+ Fix a test failure seen only on the Leopard bot.
+
+ * bindings/js/JSSharedWorkerCustom.cpp:
+ (WebCore::JSSharedWorkerConstructor::constructJSSharedWorker):
+ If SharedWorker::create returns an exception, don't try to create a wrapper
+ for its return value, which can be 0.
+
+2010-07-08 Albert J. Wong <ajwong@chromium.org>
+
+ Not reviewed, build break fix for chromium.
+
+ A new MediaControlElementType enum was added which caused a warning in
+ the Chromium build.
+
+ * rendering/RenderMediaControlsChromium.cpp:
+ (WebCore::RenderMediaControlsChromium::paintMediaControlsPart):
+ Add MediaVolumeSliderMuteButton enumartion entry.
+
+2010-07-08 Dmitry Titov <dimich@chromium.org>
+
+ Reviewed by David Levin.
+
+ Remove IDL declarations and stubs for navigator.registerProtocolHandler and navigator.registerContentHandler.
+ https://bugs.webkit.org/show_bug.cgi?id=41878
+
+ This is practically a rollback of http://trac.webkit.org/changeset/50477.
+
+ * page/Chrome.cpp:
+ * page/Chrome.h:
+ * page/ChromeClient.h:
+ * page/Navigator.cpp:
+ * page/Navigator.h:
+ * page/Navigator.idl:
+
+2010-07-08 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Darin Adler.
+
+ Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
+ https://bugs.webkit.org/show_bug.cgi?id=41823
+
+ Create the ResourceHandle manually for now instead of calling
+ ::create, since that methods does a few extra checks that make us
+ fail a couple of HTTP tests.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::):
+
+2010-07-08 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by David Levin.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41886
+ Shorten access control failure explanation messages
+
+ * loader/CrossOriginAccessControl.cpp:
+ (WebCore::passesAccessControlCheck):
+ * loader/CrossOriginPreflightResultCache.cpp:
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
+ Removed "response header field" parts from error text - it's long, but doesn't add much
+ to header field name.
+
+ * platform/network/ResourceErrorBase.cpp:
+ * platform/network/ResourceErrorBase.h:
+ * xml/XMLHttpRequest.cpp:
+ (WebCore::XMLHttpRequest::didFail):
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
+ (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
+ (WebCore::DocumentThreadableLoader::didReceiveResponse):
+ (WebCore::DocumentThreadableLoader::preflightFailure):
+ Renamed the constant for domain. WebCore shouldn't be creating errors observable by WebKit
+ clients, because it can't create a platform error, and cannot load a localized string.
+ We don't treat cross origin access check failures as true loading failures, so we don't tell
+ clients about these.
+
+2010-07-08 Eric Carlson <eric.carlson@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Mac OS X media controls should have a way to adjust volume incrementally
+ https://bugs.webkit.org/show_bug.cgi?id=41718
+ <rdar://problem/5679472>
+
+ * css/CSSPrimitiveValueMappings.h:
+ (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Handle MediaVolumeSliderMuteButtonPart.
+
+ * css/CSSSelector.cpp:
+ (WebCore::CSSSelector::pseudoId): Handle PseudoMediaControlsVolumeSliderMuteButton.
+ (WebCore::nameToPseudoTypeMap): Define mediaControlsVolumeSliderMuteButton.
+ (WebCore::CSSSelector::extractPseudoType): Handle PseudoMediaControlsVolumeSliderMuteButton.
+
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::): Define PseudoMediaControlsVolumeSliderMuteButton.
+
+ * css/CSSValueKeywords.in: Define media-volume-slider-mute-button.
+
+ * css/mediaControls.css:
+ (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button): New.
+
+ * css/mediaControlsQuickTime.css:
+ (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel): Add "overflow: visible"
+ so volume slider pop-up will be visible.
+
+ (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button): Make
+ mute button 14x12 instead of 15x14 so it matches the size in the volume slider.
+
+ (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
+ (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
+ (audio::-webkit-media-controls-volume-slider-mute-button, video::-webkit-media-controls-volume-slider-mute-button):
+ New.
+
+ * platform/ThemeTypes.h: Define MediaVolumeSliderMuteButtonPart.
+
+ * rendering/MediaControlElements.cpp:
+ (WebCore::MediaControlInputElement::MediaControlInputElement): Handle MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
+ (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement): Add ButtonLocation
+ parameter both mute buttons can be created.
+ (WebCore::MediaControlMuteButtonElement::create): Ditto.
+
+ * rendering/MediaControlElements.h: Define MediaVolumeSliderMuteButton and ButtonLocation.
+
+ * rendering/RenderMedia.cpp:
+ (WebCore::RenderMedia::styleDidChange): Update volume slider mute button.
+ (WebCore::RenderMedia::createMuteButton): Pass ButtonLocation parameter to MediaControlMuteButtonElement::create.
+ (WebCore::RenderMedia::createVolumeSliderMuteButton): New.
+ (WebCore::RenderMedia::updateControls): Deal with volume slider mute button.
+ (WebCore::RenderMedia::updateVolumeSliderContainer): Don't assume all ports want to position
+ the volume slider in the same place, call new volumeSliderOffsetFromMuteButton theme function.
+ (WebCore::RenderMedia::forwardEvent): Handle volume slider mute button.
+ * rendering/RenderMedia.h:
+
+ * rendering/RenderTheme.cpp:
+ (WebCore::RenderTheme::paint): Handle MediaVolumeSliderMuteButtonPart.
+ (WebCore::RenderTheme::volumeSliderOffsetFromMuteButton): New, return location previously hard
+ coded in RenderMedia::updateVolumeSliderContainer.
+ * rendering/RenderTheme.h:
+
+ * rendering/RenderThemeMac.h:
+ * rendering/RenderThemeMac.mm:
+ (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Deal with the volume slider thumb.
+ (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): New, call the WKSI paint function
+ for this button.
+ (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
+ (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
+ (WebCore::RenderThemeMac::shouldRenderMediaControlPart): Draw the volume slider parts when
+ using the new controller UI for a movie that has audio.
+ (WebCore::RenderThemeMac::volumeSliderOffsetFromMuteButton): New, position the volume slider
+ directly above the mute button.
+
+ * rendering/style/RenderStyleConstants.h: Define MEDIA_CONTROLS_VOLUME_SLIDER_MUTE_BUTTON.
+
+2010-07-08 Antonio Gomes <tonikitoo@webkit.org>
+
+ Unreviewed complementary fix for r62815
+
+ One last time change made me blind to a "!" in a if statment.
+
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyle):
+
+2010-07-07 Ojan Vafai <ojan@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Regression: Selection anchor + focus swap when arrow keys after setBaseAndExtent
+ https://bugs.webkit.org/show_bug.cgi?id=32605
+
+ Only have selections be non-directional when they are set via the mouse.
+ Otherwise, all selections are directional.
+
+ Test: editing/selection/extend-forward-after-set-base-and-extent.html
+
+ * WebCore.base.exp:
+ * editing/SelectionController.cpp:
+ (WebCore::SelectionController::setSelection):
+ * editing/SelectionController.h:
+ (WebCore::SelectionController::setSelection):
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::selectClosestWordFromMouseEvent):
+ (WebCore::EventHandler::selectClosestWordOrLinkFromMouseEvent):
+ (WebCore::EventHandler::handleMousePressEventTripleClick):
+ (WebCore::EventHandler::handleMousePressEventSingleClick):
+ (WebCore::EventHandler::updateSelectionForMouseDrag):
+
+2010-07-08 Antonio Gomes <tonikitoo@webkit.org>
+
+ Reviewed by Ojan Vafai.
+
+ Refactor platform dependent editing behavior code out of Settings (part II)
+ https://bugs.webkit.org/show_bug.cgi?id=39854
+
+ Mac port is currently the only port relying on a style to be present on the start
+ of a selection to consider the style as applied or not. All other ports
+ have to have the style present in all text node of the selection for such.
+
+ Patch makes situations that depend on this check like this to be controlled by
+ the EditingBehavior class.
+
+ Refactoring, so no new tests needed.
+
+ * editing/EditingBehavior.h:
+ (WebCore::EditingBehavior::shouldToggleStyleBasedOnStartOfSelection):
+ * editing/EditorCommand.cpp:
+ (WebCore::executeToggleStyle):
+
+2010-07-08 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add stubbed out PluginView class
+ https://bugs.webkit.org/show_bug.cgi?id=41879
+
+ Export functions needed by WebKit2.
+
+ * WebCore.exp.in:
+
+2010-07-08 Ben Murdoch <benm@google.com>
+
+ Reviewed by Pavel Feldman.
+
+ Fix build break in V8ConsoleCustom.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=40825
+
+ No new tests as just fixing a build break.
+
+ * bindings/v8/custom/V8ConsoleCustom.cpp: Guard profilesAccessorGetter
+ appropriately.
+
+2010-07-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Pass Page to BackForwardControllerClient::createBackForwardList since it
+ may be called before implementations of BackForwardControllerClient have
+ access to a Page.
+
+ * history/BackForwardController.cpp:
+ (WebCore::BackForwardController::BackForwardController):
+ * history/BackForwardControllerClient.h:
+
+2010-07-08 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r62778.
+ http://trac.webkit.org/changeset/62778
+ https://bugs.webkit.org/show_bug.cgi?id=41866
+
+ Broke svg/W3C-SVG-1.1/text-intro-05-t.svg in debug (Requested
+ by pfeldman on #webkit).
+
+ * platform/graphics/chromium/FontLinux.cpp:
+ (WebCore::TextRunWalker::TextRunWalker):
+ (WebCore::TextRunWalker::~TextRunWalker):
+
+2010-07-08 Vitaly Repeshko <vitalyr@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Fix adoptRef usage violation in IDBObjectStoreRequest
+ https://bugs.webkit.org/show_bug.cgi?id=41869
+
+ * storage/IDBObjectStoreRequest.cpp:
+ (WebCore::IDBObjectStoreRequest::IDBObjectStoreRequest):
+
+2010-07-08 Sam Weinig <sam@webkit.org>
+
+ Another chromium build fix.
+
+ * history/BackForwardListChromium.cpp:
+ (WebCore::BackForwardListImpl::goBack):
+ (WebCore::BackForwardListImpl::goForward):
+ (WebCore::BackForwardListImpl::backListWithLimit):
+ (WebCore::BackForwardListImpl::forwardListWithLimit):
+ (WebCore::BackForwardListImpl::containsItem):
+ (WebCore::BackForwardListImpl::removeItem):
+
+2010-07-08 Sam Weinig <sam@webkit.org>
+
+ Fix Chromium build.
+
+ * WebCore.gyp/WebCore.gyp:
+
+2010-07-08 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=41826
+ Convert BackForwardList to an abstract base class and add BackForwardListImpl
+ as the concrete implementation of it.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.exp.in:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * history/BackForwardController.cpp:
+ (WebCore::BackForwardController::BackForwardController):
+ * history/BackForwardController.h:
+ * history/BackForwardList.cpp: Removed.
+ * history/BackForwardList.h:
+ (WebCore::BackForwardList::~BackForwardList):
+ (WebCore::BackForwardList::isBackForwardListImpl):
+ (WebCore::BackForwardList::BackForwardList):
+ * history/BackForwardListChromium.cpp:
+ * history/BackForwardListImpl.cpp: Copied from WebCore/history/BackForwardList.cpp.
+ * history/BackForwardListImpl.h: Copied from WebCore/history/BackForwardList.h.
+ (WebCore::BackForwardListImpl::isBackForwardListImpl):
+
+2010-07-08 Vitaly Repeshko <vitalyr@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Fix adoptRef usage violations (mostly in chromium)
+ https://bugs.webkit.org/show_bug.cgi?id=41863
+
+ * bindings/v8/V8DOMWrapper.cpp:
+ (WebCore::V8DOMWrapper::wrapNativeNodeFilter):
+ * bindings/v8/V8NodeFilterCondition.h:
+ (WebCore::V8NodeFilterCondition::create):
+ * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
+ (WebCore::getNamedItems):
+ * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
+ (WebCore::getNamedItems):
+ * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
+ (WebCore::V8HTMLFormElement::namedPropertyGetter):
+ * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
+ (WebCore::V8HTMLSelectElement::namedPropertyGetter):
+ * bindings/v8/custom/V8NamedNodesCollection.h:
+ (WebCore::V8NamedNodesCollection::create):
+ (WebCore::V8NamedNodesCollection::V8NamedNodesCollection):
+ * storage/IDBDatabaseRequest.cpp:
+ (WebCore::IDBDatabaseRequest::IDBDatabaseRequest):
+ * storage/IndexedDatabaseRequest.cpp:
+ (WebCore::IndexedDatabaseRequest::IndexedDatabaseRequest):
+
+2010-07-08 Xan Lopez <xlopez@igalia.com>
+
+ Reviewed by Gustavo Noronha.
+
+ Silence a few noisy build rules.
+
+ * GNUmakefile.am:
+
+2010-07-08 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Simon Hausmann.
+
+ [Qt] Canvas putImageData() resets painter state
+ https://bugs.webkit.org/show_bug.cgi?id=41827
+
+ Use drawImage() to copy pixels in putImageData() instead of QPixmap::operator=
+
+ Test: fast/canvas/canvas-state-intact-after-putImageData.html
+
+ * platform/graphics/qt/ImageBufferQt.cpp:
+ (WebCore::putImageData):
+
+2010-07-08 Andrey Kosyakov <caseq@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: Do not invoke shortcuts popup upon bare '?' if it's typed
+ into an input field.
+ https://bugs.webkit.org/show_bug.cgi?id=41760
+
+ * inspector/front-end/inspector.js:
+ (WebInspector.documentKeyDown):
+
+2010-07-08 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Kent Tamura.
+
+ [WINCE] Buildfix for EventHandler
+ https://bugs.webkit.org/show_bug.cgi?id=41829
+
+ SM_MENUDROPALIGNMENT isn't supported on WinCE.
+
+ * page/EventHandler.cpp:
+ (WebCore::EventHandler::sendContextMenuEventForKey):
+
+2010-07-08 Xiaomei Ji <xji@chromium.org>
+
+ 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):
+
+2010-07-08 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Rob Buis & Dirk Schulze.
+
+ SVG text transformed incorrectly when a transform and gradient applied
+ https://bugs.webkit.org/show_bug.cgi?id=41563
+
+ When rendering filled/stroked text with a gradient, RenderSVGResourceGradient creates a mask image,
+ renders the text into the image, and then clips the current context against that image buffer,
+ and filling a rect afterwards. This happened in the wrong coordinate space so far. Don't actually
+ try to compute the right transformation matrix (which failed), but extract it directly from the
+ GraphicsContext and apply this transformation to the mask image context.
+
+ Fixes pixellation in svg/batik/text/textEffect3.svg and makes the new test svg/custom/text-rotated-gradient.svg pass.
+ Only affects CoreGraphics platforms.
+
+ Test: svg/custom/text-rotated-gradient.svg
+
+ * rendering/RenderSVGResourceGradient.cpp:
+ (WebCore::absoluteTransformFromContext):
+ (WebCore::createMaskAndSwapContextForTextGradient):
+ (WebCore::clipToTextMask):
+
+2010-07-07 Alexander Pavlov <apavlov@chromium.org>
+
+ Reviewed by Darin Fisher.
+
+ [Chromium] Crash when re-entering message loop
+ https://bugs.webkit.org/show_bug.cgi?id=41697
+
+ A Chromium-specific test case will be submitted into Chromium shortly.
+
+ * page/PageGroupLoadDeferrer.cpp:
+ (WebCore::PageGroupLoadDeferrer::PageGroupLoadDeferrer):
+ * page/PageGroupLoadDeferrer.h:
+ (WebCore::PageGroupLoadDeferrer::nextDeferrer):
+
+2010-07-07 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: skip breakpoints when script is already paused
+ https://bugs.webkit.org/show_bug.cgi?id=41768
+
+ Test: inspector/debugger-no-nested-pause.html
+
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::handleV8DebugEvent):
+
+2010-07-08 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ WebCore/benchmarks/parser/html-parser.html spends a lot of time in deprecatedParseURL
+ https://bugs.webkit.org/show_bug.cgi?id=41807
+
+ Wow. This was an awful bug. We were always taking the slow case
+ every time we parsed a URL. This is about a 10% speedup on our
+ parsing benchmark, and might cause as much as a 1% speedup for Apple's
+ PLT (even though I can't run that).
+
+ We still spend a lot of time in deprecatedParseURL. We might consider
+ inlining it if its being kept around much longer.
+
+ No behavioral change, just fixing a broken optimization.
+
+ * css/CSSHelper.cpp:
+ (WebCore::deprecatedParseURL):
+ - We only need to strip characters <= '\r', not >.
+
+2010-07-08 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: factor out common part of debugger tests
+ https://bugs.webkit.org/show_bug.cgi?id=41836
+
+ * bindings/js/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::recompileAllJSFunctions): postpone script recompilation if JS stack is not empty.
+
+2010-07-08 Patrick Gansterer <paroga@paroga.com>
+
+ Reviewed by Kent Tamura.
+
+ Buildfix for !ENABLE(SVG_ANIMATION) after r51567.
+ https://bugs.webkit.org/show_bug.cgi?id=41803
+
+ * svg/SVGDocumentExtensions.cpp:
+ (WebCore::SVGDocumentExtensions::sampleAnimationAtTime):
+
+2010-07-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Nate Chapin.
+
+ [V8] Fix document wrapper memory leak in bindings.
+ https://bugs.webkit.org/show_bug.cgi?id=41771
+
+ * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
+ (WebCore::V8HTMLDocument::WrapInShadowObject): Do not create static persistent handle
+ to shadowConstructor because it keeps the first context alive forever.
+
+2010-07-07 Andreas Kling <andreas.kling@nokia.com>
+
+ Reviewed by Tor Arne Vestbø.
+
+ [Qt] Enable smooth pixmap transforms by default
+ https://bugs.webkit.org/show_bug.cgi?id=41774
+
+ * platform/graphics/qt/GraphicsContextQt.cpp:
+ (WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
+ (WebCore::GraphicsContext::setImageInterpolationQuality):
+
+2010-07-07 Jesus Sanchez-Palencia <jesus@webkit.org>
+
+ Reviewed by Antti Koivisto.
+
+ [Qt] Missing include to build QtWebKit with WebKit2 in MediaPlayerPrivatePhonon.cpp
+ https://bugs.webkit.org/show_bug.cgi?id=41767
+
+ * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp: Add Logging.h include
+
+2010-07-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: Move v8-related script offset conversion to DebuggerScript.js
+ https://bugs.webkit.org/show_bug.cgi?id=41755
+
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::dispatchDidParseSource):
+
+2010-07-07 Nicolas Weber <thakis@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+ https://bugs.webkit.org/show_bug.cgi?id=41580
+
+ Fix rendering of radial gradients in skia if both points of the
+ gradient are the same and r0 > 0.
+
+ Test: fast/gradients/radial-centered.html
+
+ * platform/graphics/skia/GradientSkia.cpp:
+ (WebCore::Gradient::platformGradient):
+
+2010-06-18 MORITA Hajime <morrita@google.com>
+
+ Reviewed by Ojan Vafai.
+
+ https://bugs.webkit.org/show_bug.cgi?id=26526
+ Add support for input events (oninput) to contentEditable elements
+
+ Made a default event handler on the Node to dispatch an input event when
+ webkitEditableContentChanged arrived.
+
+ Test: fast/events/event-input-contentEditable.html
+
+ * dom/Node.cpp:
+ (WebCore::Node::defaultEventHandler):
+
+2010-07-07 Darin Adler <darin@apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Fix adoptRef assertion failures caused by stack-allocated ResourceHandle objects
+ https://bugs.webkit.org/show_bug.cgi?id=41823
+
+ * platform/network/android/ResourceHandleAndroid.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously): Use adoptRef and new instead
+ of allocating an object on the stack.
+ * platform/network/curl/ResourceHandleCurl.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
+ * platform/network/qt/ResourceHandleQt.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously): Ditto.
+
+ * platform/network/soup/ResourceHandleSoup.cpp:
+ (WebCore::ResourceHandle::loadResourceSynchronously): Use create instead of
+ allocating an object on the stack.
+
+2010-07-07 Joseph Pecoraro <joepeck@webkit.org>
+
+ Rubber-stamped by Pavel Feldman.
+
+ Web Inspector: All RefPtr arguments and return values should be changed to PassRefPtr according to common practice.
+ https://bugs.webkit.org/show_bug.cgi?id=41759
+
+ * inspector/CodeGeneratorInspector.pm:
+
+2010-07-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Darin Adler.
+
+ AX: TextArea should return AXSelectedTextRange of 0,0 if the cursor is not in the text area
+ https://bugs.webkit.org/show_bug.cgi?id=41810
+
+ Test: platform/mac/accessibility/selected-text-range-for-empty-textarea.html
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
+
+2010-07-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: Data table heuristics: assume data table if at least one row or column of TH cells exist
+ https://bugs.webkit.org/show_bug.cgi?id=41806
+
+ Test: platform/mac/accessibility/table-with-row-col-of-headers.html
+
+ * accessibility/AccessibilityTable.cpp:
+ (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
+
+2010-07-07 Mark Rowe <mrowe@apple.com>
+
+ Fix the build.
+
+ Xcode decided to change the reference type from "Relative to Build Product" to "Relative to Group"
+ when I moved the file between folders. That's incredibly confusing so I'll file a bug against Xcode.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-07-07 Mark Rowe <mrowe@apple.com>
+
+ Fix the MathML build.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): Fix a typo in a variable name.
+
+2010-07-07 James Hawkins <jhawkins@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ Move setSuggestedValue() and suggestedValue() back to public as it's
+ now used by WebInputElement.
+ https://bugs.webkit.org/show_bug.cgi?id=41785
+
+ No new tests, as the method is only being used by Chromium's WebKit
+ API.
+
+ * html/HTMLInputElement.h:
+
+2010-07-07 Mark Rowe <mrowe@apple.com>
+
+ Rubber-stamped by Sam Weinig.
+
+ Clean up the project file slightly.
+
+ Remove obsolete .exp files, add the new .exp.in file, and move ExportFileGenerator.cpp in to the Exports collection.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-07-07 James Robinson <jamesr@chromium.org> and Vincent Scheib <schieb@chromium.org>
+
+ Reviewed by Dimitri Glazkov.
+
+ WebCore::GLES2Context should allow creating onscreen and offscreen contexts
+ https://bugs.webkit.org/show_bug.cgi?id=41492
+
+ You should be able to create a GLES2Context for rendering both on screen
+ and off screen (to a texture). Chromium's layer renderer (used for compositing)
+ does the former. Currently WebGL does the latter by side stepping the
+ WebCore::GLES2Context API completely. Longer term it should move over to using this.
+
+ * platform/chromium/GLES2Context.h:
+ * platform/graphics/chromium/LayerRendererChromium.cpp:
+ (WebCore::LayerRendererChromium::initGL):
+
+2010-07-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Document::ownerElement() should return an HTMLFrameOwnerElement
+ https://bugs.webkit.org/show_bug.cgi?id=41789
+
+ Change return type of RenderLayerCompositor::enclosingIFrameElement() to
+ HTMLFrameOwnerElement*. No behavioral changes.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingIFrame):
+ (WebCore::RenderLayerCompositor::enclosingIFrameElement):
+ * rendering/RenderLayerCompositor.h:
+
+2010-07-07 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Sam Weinig.
+
+ Add reverseFind to Vector and deploy in HTML5 parser
+ https://bugs.webkit.org/show_bug.cgi?id=41778
+
+ This patch moves reverseFind from begin an
+ HTMLFormattingElementList-specific concept to begin a general Vector
+ concept. Also, instead of using Entry as the type for operator==, we
+ now use elements directly. The old code compiled because the Entry
+ constructor wasn't explicit, which means we were churning refs on every
+ comparison!
+
+ * html/HTMLFormattingElementList.cpp:
+ (WebCore::HTMLFormattingElementList::find):
+ (WebCore::HTMLFormattingElementList::bookmarkFor):
+ (WebCore::HTMLFormattingElementList::insertAt):
+ (WebCore::HTMLFormattingElementList::remove):
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::Entry::operator==):
+ (WebCore::HTMLFormattingElementList::Entry::operator!=):
+
+2010-07-07 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Turn on adoptRef assertion for RefCounted
+ https://bugs.webkit.org/show_bug.cgi?id=41547
+
+ The WebCore part of this fixes all the assertions I saw in testing.
+
+ * html/FileReader.cpp:
+ (WebCore::FileReader::readAsBinaryString): Added null checks.
+ Callers from JavaScript can pass the wrong type, which becomes null.
+ (WebCore::FileReader::readAsText): Ditto.
+ (WebCore::FileReader::readAsDataURL): Ditto.
+
+ * html/FileStreamClient.h: Removed unneeded include.
+
+ * html/FileStreamProxy.cpp:
+ (WebCore::FileStreamProxy::FileStreamProxy): Made inline and moved
+ some of the code, including the ref, into the create function.
+ (WebCore::FileStreamProxy::create): Moved some of the code from
+ the constructor here. It's safe to ref once the object has been
+ created and adopted.
+
+ * html/FileStreamProxy.h: Changed create function to no longer be
+ inlined. Also removed an unneeded include.
+
+ * page/EventSource.cpp:
+ (WebCore::EventSource::EventSource): Made inline, changed arguments
+ and moved code that involves the need to ref this object into the
+ create function. Also moved failure handling out there since it's
+ cleaner to have a function that fails than a constructor. For
+ example, the function can return 0.
+ (WebCore::EventSource::create): Moved some of the code from the
+ constructor here.
+
+ * page/EventSource.h: Removed unneeded includes. Made the
+ creation function non-inline. Changed the arguments to the constructor.
+
+ * storage/StorageAreaSync.cpp:
+ (WebCore::StorageAreaSync::StorageAreaSync): Made inline. Moved
+ code that requires ref'ing this object out to the create function.
+ (WebCore::StorageAreaSync::create): Moved some of the code from the
+ constructor here.
+
+ * storage/StorageAreaSync.h: Removed unneeded includes. Changed
+ the type of one of the constructor arguments from String to
+ const String&.
+
+ * workers/SharedWorker.cpp:
+ (WebCore::SharedWorker::SharedWorker): Made inline. Moved most of
+ the setup code out of here into the create function.
+ (WebCore::SharedWorker::create): Moved the code here.
+
+ * workers/SharedWorker.h: Removed unneeded includes. Made the
+ create function non-inline. Marked the toSharedWorker override private
+ to catch people doing an unnecessary virtual function call if they
+ already have a SharedWorker*.
+
+ * workers/Worker.cpp:
+ (WebCore::Worker::Worker): Made inline. Moved most of the setup code
+ out of here into the create function.
+ (WebCore::Worker::create): Moved the code here.
+
+ * workers/Worker.h: Made the create function non-inline. Changed
+ the arguments to the constructor.
+
+2010-07-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: when a node's role changes, the AX tree might need to be updated
+ https://bugs.webkit.org/show_bug.cgi?id=41784
+
+ Test: platform/mac/accessibility/update-children-when-aria-role-changes.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
+ (WebCore::AccessibilityRenderObject::updateAccessibilityRole):
+
+2010-07-07 Chris Fleizach <cfleizach@apple.com>
+
+ Reviewed by Beth Dakin.
+
+ AX: when an element uses role="text" but no aria-label, it should default to textUnderElement()
+ https://bugs.webkit.org/show_bug.cgi?id=41780
+
+ Test: platform/mac/accessibility/static-text-role-uses-text-under-element.html
+
+ * accessibility/AccessibilityRenderObject.cpp:
+ (WebCore::AccessibilityRenderObject::stringValue):
+ Fallback to textUnderElement() if text() does not return any explicitly set text.
+ (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
+ Remove erroneous check to ignore text elements that didn't have a explicit text value.
+
+2010-07-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Darin Adler.
+
+ Document::ownerElement() should return an HTMLFrameOwnerElement
+ https://bugs.webkit.org/show_bug.cgi?id=41789
+
+ Change the return type of Document::ownerElement() to an HTMLFrameOwnerElement, for better
+ type checking. No behavioral changes.
+
+ * accessibility/mac/AccessibilityObjectWrapper.mm:
+ * dom/Document.cpp:
+ (WebCore::Document::ownerElement):
+ * dom/Document.h:
+ * editing/SelectionController.cpp:
+ * rendering/RenderBoxModelObject.cpp:
+ * rendering/RenderLayer.cpp:
+ * rendering/RenderView.cpp:
+
+2010-07-07 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ REGRESSION: GMail becomes blank after closing other tabs
+ https://bugs.webkit.org/show_bug.cgi?id=40421
+
+ RenderLayerCompositor's attach/detachRootPlatformLayer methods use
+ setNeedsStyleRecalc() in order to trigger acclerated compositing layers
+ to be hooked together across iframe boundaries. However, it was possible
+ for these to get called while inside of Document::recalcStyle(), which
+ is bad because it can cause the recalc to fail to get processed.
+
+ Fix this by using the existing queuePostAttachCallback() functionality
+ to delay the call to setNeedsStyleRecalc() if post-attach callbacks
+ are suspended (indicating that we're inside recalcStyle()).
+
+ No new tests because I wasn't able to make a test that shows the problem.
+
+ * dom/ContainerNode.h: Make queuePostAttachCallback() public.
+ * dom/ContainerNode.cpp:
+ (WebCore::ContainerNode::postAttachCallbacksAreSuspended): Added; returns
+ whether s_attachDepth is non-zero.
+
+ * rendering/RenderLayerCompositor.cpp:
+ (WebCore::RenderLayerCompositor::attachRootPlatformLayer): Call scheduleNeedsStyleRecalc()
+ instead of setNeedsStyleRecalc().
+ (WebCore::RenderLayerCompositor::detachRootPlatformLayer): Ditto.
+ (WebCore::needsStyleRecalcCallback): Here we call setNeedsStyleRecalc().
+ (WebCore::RenderLayerCompositor::scheduleNeedsStyleRecalc):
+ (WebCore::RenderLayerCompositor::notifyIFramesOfCompositingChange):
+ * rendering/RenderLayerCompositor.h: Add scheduleNeedsStyleRecalc().
+
+2010-07-06 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Incorrect compositing order with negative z-index
+ https://bugs.webkit.org/show_bug.cgi?id=38959
+
+ When painting the contents of compositing layers whose phase is "GraphicsLayerPaintBackground"
+ (indicating that they are used for the background of elements with negative z-index children),
+ we need to paint the non-composited negative-z-order descendants at the end of the background phase, so
+ they appear behind composited negative-z-order descendants.
+
+ Test: compositing/z-order/negative-z-index.html
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintIntoLayer):
+
+2010-07-06 Simon Fraser <simon.fraser@apple.com>
+
+ Reviewed by Dan Bernstein.
+
+ Incorrect compositing order with negative z-index
+ https://bugs.webkit.org/show_bug.cgi?id=38959
+
+ Prerequisite: adopt new paintList() method that was added when painting compositing layer contents.
+ No behavioral changes.
+
+ * rendering/RenderLayerBacking.cpp:
+ (WebCore::RenderLayerBacking::paintIntoLayer):
+
+2010-07-07 Adam Barth <abarth@webkit.org>
+
+ Unreviewed.
+
+ Fix ASSERT in Eric's previous patch. I think he tested his patch in
+ Release and not Debug.
+
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::Entry::Entry):
+ (WebCore::HTMLFormattingElementList::findIndex):
+
+2010-07-07 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Grease the TreeBuilder's lightning
+ https://bugs.webkit.org/show_bug.cgi?id=41756
+
+ Brings the new TreeBuilder from 7s to 3s on the parser benchmark.
+ This makes performance comparable to the old parser.
+
+ We have not begun to fight! There is so much fat left on these bones.
+
+ * html/HTMLFormattingElementList.cpp:
+ (WebCore::HTMLFormattingElementList::find):
+ (WebCore::HTMLFormattingElementList::bookmarkFor):
+ (WebCore::HTMLFormattingElementList::insertAt):
+ (WebCore::HTMLFormattingElementList::remove):
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::findIndex):
+
+2010-07-07 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ HTMLTreeBuilder is way too slow
+ https://bugs.webkit.org/show_bug.cgi?id=41754
+
+ This takes us from 14s to 7s on our parsing benchmark.
+ That's still much slower than the old tree builder, but there
+ is a huge amount of fat left to trim.
+
+ Vector<T> wasn't able to inline all the Entry functions when
+ they were buried in the cpp. Turns out the active formatting elements
+ list is very hot.
+
+ I'm not sure Vector<T> is going to be the right data structure for us
+ in the end, but it has done alright for bring-up.
+
+ * html/HTMLFormattingElementList.cpp:
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::Entry::Entry):
+ (WebCore::HTMLFormattingElementList::Entry::~Entry):
+ (WebCore::HTMLFormattingElementList::Entry::isMarker):
+ (WebCore::HTMLFormattingElementList::Entry::element):
+ (WebCore::HTMLFormattingElementList::Entry::replaceElement):
+ (WebCore::HTMLFormattingElementList::Entry::operator==):
+ (WebCore::HTMLFormattingElementList::Entry::operator!=):
+
+2010-07-06 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ More OwnPtr work, including making clear set the pointer to 0 before deletion
+ https://bugs.webkit.org/show_bug.cgi?id=41727
+
+ * WebCore.exp.in: Updated.
+
+ * css/CSSSelector.h:
+ (WebCore::CSSSelector::RareData::RareData): Use adoptPtr.
+ (WebCore::CSSSelector::createRareData): Ditto.
+ * dom/SpaceSplitString.h:
+ (WebCore::SpaceSplitString::SpaceSplitString): Ditto.
+ (WebCore::SpaceSplitString::set): Ditto.
+ * history/CachedFrame.cpp:
+ (WebCore::CachedFrame::CachedFrame): Ditto.
+ (WebCore::CachedFrame::setCachedFramePlatformData): Ditto.
+
+ * history/CachedFrame.h: Use PassOwnPtr.
+
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::CallCacheListenerTask::create): Use adoptPtr.
+ * loader/appcache/ApplicationCacheStorage.cpp:
+ (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
+ * platform/PurgeableBuffer.h:
+ (WebCore::PurgeableBuffer::create): Ditto.
+ * platform/graphics/GlyphMetricsMap.h:
+ (WebCore::::locatePageSlowCase): Ditto.
+ * platform/graphics/GraphicsLayer.h:
+ (WebCore::AnimationValue::AnimationValue): Ditto.
+ (WebCore::TransformAnimationValue::TransformAnimationValue): Ditto.
+ * platform/graphics/MediaPlayer.h:
+ (WebCore::MediaPlayer::create): Ditto.
+ * platform/graphics/SimpleFontData.h:
+ (WebCore::SimpleFontData::boundsForGlyph): Ditto.
+ * platform/mac/PurgeableBufferMac.cpp:
+ (WebCore::PurgeableBuffer::create): Ditto.
+ * rendering/InlineFlowBox.h:
+ (WebCore::InlineFlowBox::setHorizontalOverflowPositions): Ditto.
+ (WebCore::InlineFlowBox::setVerticalOverflowPositions): Ditto.
+ * rendering/RootInlineBox.h:
+ (WebCore::RootInlineBox::floats): Ditto.
+ * rendering/style/RenderStyle.h:
+ (WebCore::InheritedFlags::inheritAnimations): Ditto.
+ (WebCore::InheritedFlags::inheritTransitions): Ditto.
+
+ * rendering/style/SVGRenderStyleDefs.h: Use PassOwnPtr.
+
+2010-07-07 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=41772
+ Add basic piping for BackForwardControllerClient.
+
+ * WebCore.exp.in:
+ * WebCore.xcodeproj/project.pbxproj:
+ * history/BackForwardController.cpp:
+ (WebCore::BackForwardController::BackForwardController):
+ * history/BackForwardControllerClient.h:
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ * page/Page.h:
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImage::dataChanged):
+
+2010-07-07 Lucas De Marchi <lucas.demarchi@profusion.mobi>
+
+ Unreviewed build fix after r62577.
+
+ [EFL] build fix after r62577
+ https://bugs.webkit.org/show_bug.cgi?id=41764
+
+ No new functionality so no new tests.
+
+2010-07-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Scrollbars sometimes go dead and stop scrolling the view
+ https://bugs.webkit.org/show_bug.cgi?id=41711
+
+ Rework the setGtkAdjustment function slightly, make it have an
+ early return, and be more readable.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::setGtkAdjustments):
+
+2010-07-07 Kristian Monsen <kristianm@google.com>
+
+ Reviewed by Steve Block.
+
+ Updating Android to use the UserGestureIndicator class instead of Android specific code.
+ The rest of the changes are in parts of the Android port which are yet to be upstreamed.
+
+ No change in behavior, so no new test.
+
+ * platform/network/android/ResourceRequest.h:
+ (WebCore::ResourceRequest::ResourceRequest):
+ (WebCore::ResourceRequest::doUpdateResourceRequest):
+
+2010-07-07 Andy Estes <aestes@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Allow a beforeload listener to prevent loading of images in <object> tags.
+ https://bugs.webkit.org/show_bug.cgi?id=41027
+ <rdar://problem/8120596>
+
+ Tests: fast/dom/beforeload/image-object-before-load-innerHTML.html
+ fast/dom/beforeload/image-object-before-load.html
+
+ * html/HTMLObjectElement.cpp:
+ (WebCore::HTMLObjectElement::attach): Do not call
+ RenderImage::setCachedImage() at the end of attach(). Instead, allow
+ this to happen conditionally after beforeload is dispatched.
+ * loader/ImageLoader.cpp:
+ (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent): Render fallback
+ content if an object's load was cancelled.
+
+2010-07-06 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ <use> on <font-face> causes crashes, if SVGUseElement gets detached
+ https://bugs.webkit.org/show_bug.cgi?id=41621
+
+ Do not call removeFromMappedElementSheet() from the SVGFontFaceElement destructor,
+ as that can potentially cause the element to be reattached while destructing.
+
+ In order to fix the crash in the testcase, the order of calling the base-class detach
+ method in SVGUseElement and the instance/shadow tree destruction has to be reversed,
+ matching the order in removedFromDocument().
+
+ Test: svg/custom/use-font-face-crash.svg
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::~SVGFontFaceElement): Remove removeFromMappedElementSheet() call.
+ * svg/SVGUseElement.cpp:
+ (WebCore::SVGUseElement::detach): Reverse order of calling base-class detach method and instance/shadow tree destruction.
+
+2010-07-07 Steve Block <steveblock@google.com>
+
+ Reviewed by Adam Barth.
+
+ document.createEvent() should support DeviceOrientationEvent
+ https://bugs.webkit.org/show_bug.cgi?id=41618
+
+ Tests: fast/dom/DeviceOrientation/create-event.html
+
+ * dom/Document.cpp:
+ (WebCore::Document::createEvent):
+
+2010-07-07 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: show functions from internal browser scripts on the call stack if they
+ are there.
+ https://bugs.webkit.org/show_bug.cgi?id=41762
+
+ * English.lproj/localizedStrings.js:
+ * inspector/front-end/CallStackSidebarPane.js:
+ (WebInspector.CallStackSidebarPane.prototype.update):
+
+2010-07-07 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: All RefPtr arguments and return values should be
+ changed to PassRefPtr whenever it is possible according to common practice.
+ https://bugs.webkit.org/show_bug.cgi?id=41759
+
+ * inspector/CodeGeneratorInspector.pm:
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::didInstallTimer):
+ (WebCore::InspectorTimelineAgent::didRemoveTimer):
+ (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ (WebCore::InspectorTimelineAgent::didMarkTimeline):
+ (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
+ (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
+ (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+ (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
+ (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createGenericRecord):
+ (WebCore::TimelineRecordFactory::createGCEventData):
+ (WebCore::TimelineRecordFactory::createFunctionCallData):
+ (WebCore::TimelineRecordFactory::createEventDispatchData):
+ (WebCore::TimelineRecordFactory::createGenericTimerData):
+ (WebCore::TimelineRecordFactory::createTimerInstallData):
+ (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData):
+ (WebCore::TimelineRecordFactory::createXHRLoadData):
+ (WebCore::TimelineRecordFactory::createEvaluateScriptData):
+ (WebCore::TimelineRecordFactory::createMarkTimelineData):
+ (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
+ (WebCore::TimelineRecordFactory::createResourceSendRequestData):
+ (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
+ (WebCore::TimelineRecordFactory::createResourceFinishData):
+ (WebCore::TimelineRecordFactory::createReceiveResourceData):
+ (WebCore::TimelineRecordFactory::createPaintData):
+ (WebCore::TimelineRecordFactory::createParseHTMLData):
+ * inspector/TimelineRecordFactory.h:
+
+2010-07-07 Antti Koivisto <koivisto@iki.fi>
+
+ Reviewed by Kenneth Rohde Christiansen.
+
+ [Qt] Initial WebKit2 implementation
+ https://bugs.webkit.org/show_bug.cgi?id=40233
+
+ Export some event conversion functions needed for WebKit2.
+
+ * platform/PlatformKeyboardEvent.h:
+ * platform/qt/PlatformKeyboardEventQt.cpp:
+ (WebCore::keyIdentifierForQtKeyCode):
+ (WebCore::windowsKeyCodeForKeyEvent):
+
+2010-07-06 Steve Block <steveblock@google.com>
+
+ Reviewed by Adam Barth.
+
+ DeviceOrientationEventConstructor should be exposed at window.DeviceOrientationEvent
+ https://bugs.webkit.org/show_bug.cgi?id=41685
+
+ Test: fast/dom/Window/window-properties-device-orientation.html
+ fast/dom/DeviceOrientation/window-property.txt
+
+ * page/DOMWindow.idl:
+
+2010-07-07 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r62645.
+ http://trac.webkit.org/changeset/62645
+ https://bugs.webkit.org/show_bug.cgi?id=41757
+
+ "Broken inspector tests on several platforms" (Requested by
+ eseidel on #webkit).
+
+ * inspector/front-end/ScriptView.js:
+ (WebInspector.ScriptView.prototype._addBreakpoint):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
+ (WebInspector.ScriptsPanel.prototype._breakpointAdded):
+ (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
+ (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
+ (WebInspector.ScriptsPanel.prototype._toggleBreakpointsClicked):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype._addBreakpoint):
+
+2010-07-07 Steve Block <steveblock@google.com>
+
+ Reviewed by Adam Barth.
+
+ JavaInstanceV8 needs to push a local reference frame to avoid table overflow.
+ https://bugs.webkit.org/show_bug.cgi?id=41516
+
+ This change is required to help prevent the Java virtual machine from
+ running out of local references. The Java virtual machine supports only
+ a limited number of local references. Normally, local references are
+ cleared when the native method returns.
+
+ This change adds calls to PushLocalFrame() and PopLocalFrame() around
+ each invocation of a method on JavaInstance. These calls instruct the
+ virtual machine to clear local references when the frame is popped.
+ This means that in the case where many calls to JavaInstance methods
+ are made within the same native call, local references are cleared as
+ soon as they are no longer needed, thus conserving references.
+
+ This change mirrors exactly JavaInstanceJSC.
+
+ No new tests.
+
+ * bridge/jni/v8/JavaInstanceV8.cpp:
+ (JavaInstance::virtualBegin):
+ (JavaInstance::virtualEnd):
+ * bridge/jni/v8/JavaInstanceV8.h:
+
+2010-07-06 Yury Semikhatsky <yurys@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Inspector should remember the size of sidebars set by the user
+ https://bugs.webkit.org/show_bug.cgi?id=19207
+
+ * inspector/front-end/AbstractTimelinePanel.js:
+ (WebInspector.AbstractTimelinePanel):
+ * inspector/front-end/AuditsPanel.js:
+ (WebInspector.AuditsPanel):
+ * inspector/front-end/ConsolePanel.js:
+ (WebInspector.ConsolePanel):
+ * inspector/front-end/ElementsPanel.js:
+ (WebInspector.ElementsPanel.prototype.rightSidebarResizerDragEnd):
+ * inspector/front-end/Panel.js:
+ (WebInspector.Panel):
+ (WebInspector.Panel.prototype.get toolbarItemClass):
+ (WebInspector.Panel.prototype.show):
+ (WebInspector.Panel.prototype.createSidebar):
+ (WebInspector.Panel.prototype.get _sidebarWidthSettingName):
+ (WebInspector.Panel.prototype._endSidebarDragging):
+ (WebInspector.Panel.prototype.updateSidebarWidth):
+ (WebInspector.Panel.prototype.restoreSidebarWidth):
+ (WebInspector.Panel.prototype.saveSidebarWidth):
+ * inspector/front-end/ProfilesPanel.js:
+ (WebInspector.ProfilesPanel):
+ * inspector/front-end/ResourcesPanel.js:
+ (WebInspector.ResourcesPanel):
+ (WebInspector.ResourcesPanel.prototype.resourceTrackingWasEnabled):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype._endSidebarResizeDrag):
+ (WebInspector.ScriptsPanel.prototype._sidebarResizeDrag):
+ (WebInspector.ScriptsPanel.prototype.setSidebarWidth):
+ * inspector/front-end/Settings.js:
+ (WebInspector.populateApplicationSettings):
+ * inspector/front-end/StoragePanel.js:
+ (WebInspector.StoragePanel):
+ * inspector/front-end/TimelinePanel.js:
+ (WebInspector.TimelinePanel):
+
+2010-07-05 Steve Block <steveblock@google.com>
+
+ Reviewed by Adam Barth.
+
+ DeviceOrientation should be renamed to DeviceOrientationController
+ https://bugs.webkit.org/show_bug.cgi?id=41608
+
+ No new tests, renaming only.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * dom/DeviceOrientation.cpp: Removed.
+ * dom/DeviceOrientation.h: Removed.
+ * dom/DeviceOrientationController.cpp: Copied from WebCore/dom/DeviceOrientation.cpp.
+ (WebCore::DeviceOrientationController::DeviceOrientationController):
+ (WebCore::DeviceOrientationController::onDeviceOrientationChange):
+ * dom/DeviceOrientationController.h: Copied from WebCore/dom/DeviceOrientation.h.
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ * page/Page.h:
+ (WebCore::Page::deviceOrientationController):
+
+2010-07-07 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: do not activate all breakpoints on page reload
+ https://bugs.webkit.org/show_bug.cgi?id=41461
+
+ Test: inspector/debugger-breakpoints-not-activated-on-reload.html
+
+ * inspector/front-end/ScriptView.js:
+ (WebInspector.ScriptView.prototype._addBreakpoint):
+ * inspector/front-end/ScriptsPanel.js:
+ (WebInspector.ScriptsPanel):
+ (WebInspector.ScriptsPanel.prototype._breakpointAdded):
+ (WebInspector.ScriptsPanel.prototype.toggleBreakpointsClicked):
+ * inspector/front-end/SourceView.js:
+ (WebInspector.SourceView.prototype._addBreakpoint):
+
+2010-07-07 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Not reviewed. Rollout r62633 - test crashes after some last-minute modifications.
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
+
+2010-07-07 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix </html> handling in before head mode
+ https://bugs.webkit.org/show_bug.cgi?id=41752
+
+ Covered by html5lib/runner.html.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-07 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ </div> pops too many <div> elements in body
+ https://bugs.webkit.org/show_bug.cgi?id=41751
+
+ Another missing return!
+
+ While tracking this down I added some debugging code to both the
+ open elements stack and the active formatting elements list.
+
+ I also unwrapped a very long || chain to make it more readable.
+
+ * html/HTMLElementStack.cpp:
+ (WebCore::HTMLElementStack::show):
+ * html/HTMLElementStack.h:
+ * html/HTMLFormattingElementList.cpp:
+ (WebCore::HTMLFormattingElementList::show):
+ * html/HTMLFormattingElementList.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ HTMLTreeBuilder needs to handle <table><input>
+ https://bugs.webkit.org/show_bug.cgi?id=41744
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Teach HTMLTreeBuilder how to handle <button><button>
+ https://bugs.webkit.org/show_bug.cgi?id=41743
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Teach TreeBuilder how to handle <form><form>
+ https://bugs.webkit.org/show_bug.cgi?id=41741
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ <table> should auto-close <p> when not in quirks mode
+ https://bugs.webkit.org/show_bug.cgi?id=41740
+
+ This is already covered by multiple tests in html5lib/runner.html
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Make "in body" character handling reconstruct active formatting elements
+ https://bugs.webkit.org/show_bug.cgi?id=41739
+
+ This fixes a bunch of tests, and due to some other bug in our
+ formatting code, regresses two. I'll fix that bug in a separate
+ patch.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCharacter):
+
+2010-07-06 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Darin Adler.
+
+ <use> on <font-face> causes crashes, if SVGUseElement gets detached
+ https://bugs.webkit.org/show_bug.cgi?id=41621
+
+ Do not call removeFromMappedElementSheet() from the destructor, as the call to document()->updateStyleSelector() that can potentially
+ cause the element to be reattached while destructing. It's not needed at all, because removedFromDocument() is called before destruction,
+ which already calls removeFromMappedElementSheet() - at this point it's still safe to update the style selector.
+
+ The crash is reproducable when using <use> on <font-face>.
+
+ Test: svg/custom/use-font-face-crash.svg
+
+ * svg/SVGFontFaceElement.cpp:
+ (WebCore::SVGFontFaceElement::~SVGFontFaceElement):
+
+2010-07-07 Hayato Ito <hayato@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Rolling out 'page-break-inside:avoid' part of the r54929.
+ Rebased the related layout tests, which are now expected to fail, as well.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41532
+
+ * rendering/RenderBlock.cpp:
+ (WebCore::RenderBlock::paintChildren):
+
+2010-07-07 Mark Rowe <mrowe@apple.com>
+
+ Fix failures in a handful of Java-related tests.
+
+ * WebCore.exp.in: Remove an extraneous ENABLE_ from an #if so that the condition
+ evalutes to true when we expect it to.
+
+2010-07-06 Pavel Feldman <pfeldman@chromium.org>
+
+ Reviewed by Joseph Pecoraro.
+
+ Web Inspector: provide line numbers for inline styles.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41691
+
+ Test: inspector/styles-source-lines-inline.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseSheet):
+ * css/CSSParser.h:
+ * css/CSSStyleSheet.cpp:
+ (WebCore::CSSStyleSheet::parseString):
+ (WebCore::CSSStyleSheet::parseStringAtLine):
+ * css/CSSStyleSheet.h:
+ * dom/StyleElement.cpp:
+ (WebCore::StyleElement::process):
+ (WebCore::StyleElement::createSheet):
+ * dom/StyleElement.h:
+ * html/HTMLStyleElement.cpp:
+ (WebCore::HTMLStyleElement::HTMLStyleElement):
+ (WebCore::HTMLStyleElement::finishParsingChildren):
+ * html/HTMLStyleElement.h:
+ * inspector/InspectorCSSStore.cpp:
+ (WebCore::InspectorCSSStore::getRuleRangesForStyleSheet):
+ * inspector/InspectorDOMAgent.cpp:
+ (WebCore::InspectorDOMAgent::buildObjectForRule):
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.CSSStyleDeclaration.parseRule):
+ * inspector/front-end/StylesSidebarPane.js:
+ (WebInspector.StylePropertiesSection.else.linkifyUncopyable):
+ (WebInspector.StylePropertiesSection):
+
+2010-07-06 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Jon Honeycutt.
+
+ <rdar://problem/8163651> Wrong value type being supplied for kCTTypesetterOptionForcedEmbeddingLevel key
+
+ No change in behavior, so no new test.
+
+ * platform/graphics/mac/ComplexTextControllerCoreText.cpp:
+ (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Use CFNumber instances
+ as the values of the kCTTypesetterOptionForcedEmbeddingLevel key, instead of CFBooleans.
+
+2010-07-06 Mark Rowe <mrowe@apple.com>
+
+ Fix production builds on Mac OS X.
+
+ * DerivedSources.make: Don't try and generate the export file during the installhdrs build phase.
+ It's not useful until much later in the build process, and it's not possible to generate it until
+ after the tool has been compiled anyway.
+ * WebCore.xcodeproj/project.pbxproj: Tweak how the ICU and forwarding headers are copied so that it
+ works in production builds once more.
+
+2010-07-06 Steve Falkenburg <sfalken@apple.com>
+
+ Reviewed by Simon Fraser.
+
+ Expose URL matching from WebUserContentURLPattern
+ https://bugs.webkit.org/show_bug.cgi?id=41726
+ <rdar://problem/7910144>
+
+ * WebCore.exp.in: Export UserContentURLPattern::matches for use in WebKit.
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix <nobr><nobr> case in HTMLTreeBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=41735
+
+ We were both not handling <nobr> correctly, as well as
+ never hitting the <nobr> case because our formatting
+ elements check was overzealous.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement start table tag in table mode
+ https://bugs.webkit.org/show_bug.cgi?id=41736
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processTableEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement "act as if the banana has been peeled" (for lack of a better term)
+ https://bugs.webkit.org/show_bug.cgi?id=41734
+
+ The spec has a tricky passage that says "whenever a node would be
+ inserted into the current node, it must instead be foster parented."
+ This patch attempts to implement that requirement.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::attach):
+ (WebCore::HTMLConstructionSite::HTMLConstructionSite):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
+ (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLConstructionSite::fosterParent):
+ * html/HTMLConstructionSite.h:
+ (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::RedirectToFosterParentGuard):
+ (WebCore::HTMLConstructionSite::RedirectToFosterParentGuard::~RedirectToFosterParentGuard):
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix </optgroup> in "in select" mode
+ https://bugs.webkit.org/show_bug.cgi?id=41733
+
+ I had to add a oneBelowTop() accessor.
+ I added some ASSERTs after looking at the fragment case
+ documentation. I'm now convinced that top() and oneBeforeTop()
+ should never be NULL, so we just ASSERT they aren't.
+
+ This is a very obscure corner of the HTML spec, but at least
+ we have a test for it. This makes one more html5lib test pass.
+
+ * html/HTMLConstructionSite.h:
+ (WebCore::HTMLConstructionSite::oneBelowTop):
+ * html/HTMLElementStack.cpp:
+ (WebCore::HTMLElementStack::topRecord):
+ (WebCore::HTMLElementStack::top):
+ (WebCore::HTMLElementStack::oneBelowTop):
+ * html/HTMLElementStack.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix "in row" "Anything else" handling of end tags
+ https://bugs.webkit.org/show_bug.cgi?id=41731
+
+ I also fixed </br> handling to follow the spec more closely
+ since it implementation was old and didn't use all our
+ new processFake* hotness.
+
+ This is already covered by 3 tests, however we don't
+ pass them yet, due to lack of table foster parenting
+ code (which Adam is working on as we speak).
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-06 Mark Rowe <mrowe@apple.com>
+
+ Fix clean builds on Mac OS X.
+
+ Since "Copy Forwarding and ICU Headers" was split in to a separate target
+ from the WebCore framework it no longer had automatica access to the
+ PRIVATE_HEADERS_FOLDER_PATH variable. This caused it to copy the header
+ files in to the wrong location. Fix that by giving PRIVATE_HEADERS_FOLDER_PATH
+ its correct value and ensuring that the path exists.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-07-06 Sam Weinig <sam@webkit.org>
+
+ Fix Gtk build.
+
+ * GNUmakefile.am:
+
+2010-07-06 Mark Rowe <mrowe@apple.com>
+
+ Tiger build fix.
+
+ Don't use WebCore's LDFLAGS when building WebCoreExportFileGenerator.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ "In cell" does not correctly handle <td><tr> or <td><td>
+ https://bugs.webkit.org/show_bug.cgi?id=41729
+
+ This change is mostly cleanup to try and prevent forgetting
+ tag name checks in the future by using inlines to reduce
+ copy/paste code.
+
+ 3 little bugs in InCellMode:
+ - Missing trTag from the long or statement (reason for the cleanup)
+ - Used || instead of &&
+ - Forgot to reprocess the tag after closeTheCell()
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Move fosterParent to HTMLConstructionSite
+ https://bugs.webkit.org/show_bug.cgi?id=41728
+
+ This paves the way for handling the default case of InTableMode
+ properly.
+
+ * html/HTMLConstructionSite.cpp:
+ (WebCore::HTMLConstructionSite::fosterParent):
+ * html/HTMLConstructionSite.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Rubber-stamped by Eric Seidel.
+
+ Move HTMLConstructionSite to its own file. No behavior change.
+
+ * Android.mk:
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * html/HTMLConstructionSite.cpp: Copied from WebCore/html/HTMLTreeBuilder.cpp.
+ (WebCore::HTMLNames::hasImpliedEndTag):
+ (WebCore::HTMLConstructionSite::attach):
+ (WebCore::HTMLConstructionSite::HTMLConstructionSite):
+ (WebCore::HTMLConstructionSite::~HTMLConstructionSite):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
+ (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
+ (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
+ * html/HTMLConstructionSite.h: Copied from WebCore/html/HTMLTreeBuilder.h.
+ * html/HTMLTreeBuilder.cpp:
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Mark Rowe <mrowe@apple.com>
+
+ Build fix.
+
+ The path to the generated file needs to be relative to the built product directory,
+ not to the project file.
+
+ * WebCore.xcodeproj/project.pbxproj:
+
+2010-07-06 Mark Rowe <mrowe@apple.com>
+
+ Reviewed by Darin Adler.
+
+ <http://webkit.org/b/41725> REGRESSION(r62283): No longer possible to build for Tiger from SnowLeopard due to export file shenanigans
+
+ Change how the exports file is generated. Rather than having the logic for which symbols
+ to include be encoded in a Makefile that concatenated separate files, the logic is now
+ encoded as #if's in the base exports file. This ensures that the exact same preprocessor
+ settings are used when determining which symbols to export as when compiling the code that
+ defines the symbols.
+
+ * DerivedSources.make: Remove logic that determines which export files to concatenate.
+ Replace with an invocation of WebCoreExportFileGenerator.
+ * WebCore.3DRendering.exp: Removed.
+ * WebCore.AcceleratedCompositing.exp: Removed.
+ * WebCore.ClientBasedGeolocation.exp: Removed.
+ * WebCore.ContextMenus.exp: Removed.
+ * WebCore.DashboardSupport.exp: Removed.
+ * WebCore.DragSupport.exp: Removed.
+ * WebCore.Geolocation.exp: Removed.
+ * WebCore.Inspector.exp: Removed.
+ * WebCore.JNI.exp: Removed.
+ * WebCore.NPAPI.exp: Removed.
+ * WebCore.OrientationEvents.exp: Removed.
+ * WebCore.PluginHostProcess.exp: Removed.
+ * WebCore.ProtectionSpaceAuthCallback.exp: Removed.
+ * WebCore.SVG.Animation.exp: Removed.
+ * WebCore.SVG.Filters.exp: Removed.
+ * WebCore.SVG.ForeignObject.exp: Removed.
+ * WebCore.SVG.exp: Removed.
+ * WebCore.Tiger.exp: Removed.
+ * WebCore.Video.exp: Removed.
+ * WebCore.VideoProxy.exp: Removed.
+ * WebCore.exp.in: Renamed from WebCore/WebCore.base.exp. Merge the individual .exp
+ files in, wrapping the appropriate parts with the necessary #if's.
+ * WebCore.xcodeproj/project.pbxproj:
+ * make-exports-file-generator: Added.
+
+2010-07-06 Sam Weinig <sam@webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Patch for https://bugs.webkit.org/show_bug.cgi?id=41723
+ Add BackForwardController class
+
+ - Add BackForwardController which currently only forwards to the existing
+ BackForwardList implementation. This is a first step toward allowing
+ for a proxying BackForwardList implementation.
+
+ * CMakeLists.txt:
+ * GNUmakefile.am:
+ * WebCore.base.exp:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * history/BackForwardController.cpp: Added.
+ (WebCore::BackForwardController::BackForwardController):
+ (WebCore::BackForwardController::~BackForwardController):
+ * history/BackForwardController.h: Added.
+ (WebCore::BackForwardController::client):
+ (WebCore::BackForwardController::list):
+ * history/BackForwardControllerClient.h: Added.
+ (WebCore::BackForwardControllerClient::~BackForwardControllerClient):
+ * page/Page.cpp:
+ (WebCore::Page::Page):
+ (WebCore::Page::~Page):
+ (WebCore::Page::backForwardList):
+ (WebCore::Page::goBack):
+ (WebCore::Page::goForward):
+ (WebCore::Page::canGoBackOrForward):
+ (WebCore::Page::goBackOrForward):
+ (WebCore::Page::getHistoryLength):
+ * page/Page.h:
+
+2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Unreviewed.
+
+ Fixes regression on API test by disabling the scrollbars before
+ configuring the adjustments.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::setGtkAdjustments):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add support for <li>, <dd> and <dt> nested tag closing
+ https://bugs.webkit.org/show_bug.cgi?id=41720
+
+ li, dd, and dt have nearly identical logic in HTML5, so I
+ attempted to make them share as much code as possible.
+
+ This fixes a bunch of subtests for html5lib/runner.html
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCloseWhenNestedTag):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Factor HTMLConstructionSite out of HTMLTreeBuilder
+ https://bugs.webkit.org/show_bug.cgi?id=41716
+
+ The HTMLContructionSite is the model object on which the
+ HTMLTreeBuilder (a controller) acts.
+
+ No behavior change. I'll move this class into its own file in a
+ followup patch.
+
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::at):
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLConstructionSite::HTMLConstructionSite):
+ (WebCore::HTMLTreeBuilder::passTokenToLegacyParser):
+ (WebCore::HTMLTreeBuilder::processDoctypeToken):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagBeforeHTML):
+ (WebCore::HTMLConstructionSite::mergeAttributesFromTokenIntoElement):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlStartTagInBody):
+ (WebCore::HTMLConstructionSite::insertHTMLBodyStartTagInBody):
+ (WebCore::HTMLTreeBuilder::processFakePEndTagIfPInScope):
+ (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::closeTheCell):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::furthestBlockForFormattingElement):
+ (WebCore::HTMLTreeBuilder::findFosterParentFor):
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
+ (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processComment):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::processDefaultForBeforeHTMLMode):
+ (WebCore::HTMLTreeBuilder::processStartTagForInHead):
+ (WebCore::HTMLConstructionSite::insertDoctype):
+ (WebCore::HTMLConstructionSite::insertComment):
+ (WebCore::HTMLConstructionSite::insertCommentOnDocument):
+ (WebCore::HTMLConstructionSite::insertCommentOnHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::createElementAndAttachToCurrent):
+ (WebCore::HTMLConstructionSite::insertHTMLHtmlElement):
+ (WebCore::HTMLConstructionSite::insertHTMLHeadElement):
+ (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
+ (WebCore::HTMLConstructionSite::insertElement):
+ (WebCore::HTMLConstructionSite::insertSelfClosingElement):
+ (WebCore::HTMLConstructionSite::insertFormattingElement):
+ (WebCore::HTMLTreeBuilder::processGenericRCDATAStartTag):
+ (WebCore::HTMLTreeBuilder::processGenericRawTextStartTag):
+ (WebCore::HTMLConstructionSite::insertScriptElement):
+ (WebCore::HTMLTreeBuilder::processScriptStartTag):
+ (WebCore::HTMLConstructionSite::insertTextNode):
+ (WebCore::HTMLConstructionSite::createElement):
+ (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
+ (WebCore::HTMLTreeBuilder::reconstructTheActiveFormattingElements):
+ (WebCore::HTMLTreeBuilder::generateImpliedEndTagsWithExclusion):
+ (WebCore::HTMLTreeBuilder::generateImpliedEndTags):
+ * html/HTMLTreeBuilder.h:
+ (WebCore::HTMLConstructionSite::currentElement):
+ (WebCore::HTMLConstructionSite::openElements):
+ (WebCore::HTMLConstructionSite::activeFormattingElements):
+ (WebCore::HTMLConstructionSite::head):
+ (WebCore::HTMLConstructionSite::form):
+ (WebCore::HTMLConstructionSite::releaseForm):
+ (WebCore::HTMLConstructionSite::setForm):
+ (WebCore::HTMLConstructionSite::fragmentScriptingPermission):
+ (WebCore::HTMLConstructionSite::attach):
+
+2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Reviewed by Xan Lopez.
+
+ [GTK] Scrollbars sometimes go dead and stop scrolling the view
+ https://bugs.webkit.org/show_bug.cgi?id=41711
+
+ Fixes GtkScrolledWindow scrollbars not actually scrolling the page
+ in certain conditions. No tests because it is hard to reproduce,
+ and depends on interaction with a widget that is outside of the
+ WebView, which is tricky.
+
+ * platform/gtk/ScrollViewGtk.cpp:
+ (WebCore::ScrollView::setGtkAdjustments):
+
+2010-07-06 Darin Adler <darin@apple.com>
+
+ Reviewed by Geoffrey Garen.
+
+ Simplify access to element attribute map, removing unneeded functions
+ https://bugs.webkit.org/show_bug.cgi?id=41703
+
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::canShareStyleWithElement): Use the
+ attributeMap function instead of the mappedAttributes function.
+ (WebCore::CSSStyleSelector::styleForElement): Ditto.
+
+ * dom/Element.cpp:
+ (WebCore::Element::~Element): Renamed namedAttrMap to m_attributeMap.
+ (WebCore::Element::removeAttribute): Ditto.
+ (WebCore::Element::getAttribute): Ditto.
+ (WebCore::Element::setAttribute): Ditto.
+ (WebCore::Element::setAttributeMap): Ditto.
+ (WebCore::Element::hasAttributes): Ditto.
+ (WebCore::Element::createAttributeMap): Ditto.
+ (WebCore::Element::insertedIntoDocument): Ditto.
+ (WebCore::Element::removedFromDocument): Ditto.
+ (WebCore::Element::getURLAttribute): Ditto.
+
+ * dom/Element.h: Removed unneeded virtual attributes function.
+ Made read-only argument to attributes function default to false.
+ (Later, we'll eliminate this.) Renamed namedAttrMap to m_attributeMap
+ and made it private instead of protected.
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::attributeChanged): Use attributeMap function
+ instead of namedAttrMap data member or mappedAttributes function.
+ (WebCore::StyledElement::classAttributeChanged): Ditto.
+ (WebCore::StyledElement::parseMappedAttribute): Ditto.
+
+ * dom/StyledElement.h: Removed mappedAttributes function and changed
+ callers to use attributeMap function instead.
+
+ * html/HTMLInputElement.cpp:
+ (WebCore::HTMLInputElement::setInputType): Use attributeMap instead of
+ mappedAttributes.
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::getPresentationAttribute): Ditto.
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Add a build rule that removes the old generated Obj-C bindings for PluginArray and MimeTypeArray.
+
+ * DerivedSources.make:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Unreviewed.
+
+ Make the remaining insertion modes explicit.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-07-06 Alexey Proskuryakov <ap@apple.com>
+
+ Not reviewed, fixing a simple copy/paste mistake.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41156
+ Cross origin XMLHttpRequest should log the reason why connection failed
+
+ Covered by xmlhttprequest/access-control-basic-non-simple-deny-cached.html
+
+ * loader/CrossOriginPreflightResultCache.cpp:
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders): Fix incorrectly
+ copy/pasted header field name.
+
+2010-07-06 Xan Lopez <xlopez@igalia.com>
+
+ GTK+ fixes for the DOM plug-in renaming Apocalypse.
+
+ * GNUmakefile.am:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Yet another Windows build fix.
+
+ * DerivedSources.cpp:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Fix Windows build.
+
+ * WebCore.vcproj/WebCore.vcproj:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ More build fixes.
+
+ * WebCore.gypi:
+ * WebCore.pro:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Try to fix Qt build.
+
+ * WebCore.pro:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Attempt to fix GTK+ build.
+
+ * GNUmakefile.am:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Address reviewer comments from https://bugs.webkit.org/show_bug.cgi?id=41671
+
+ Deploy isTableBodyContextTag where possible. No behavior change.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Build fixes.
+
+ * WebCore.gypi:
+ * bindings/js/JSBindingsAllInOne.cpp:
+
+2010-07-06 Anders Carlsson <andersca@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ DOM plug-in related renames
+ https://bugs.webkit.org/show_bug.cgi?id=41709
+
+ This is in preparation for using "Plugin" for something other than a DOM object.
+
+ MimeType => DOMMimeType
+ MimeTypeArray => DOMMimeTypeArray
+ Plugin => DOMPlugin
+ PluginArray => DOMPluginArray
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/js/JSDOMMimeTypeArrayCustom.cpp: Added.
+ (WebCore::JSDOMMimeTypeArray::canGetItemsForName):
+ (WebCore::JSDOMMimeTypeArray::nameGetter):
+ * bindings/js/JSDOMPluginArrayCustom.cpp: Added.
+ (WebCore::JSDOMPluginArray::canGetItemsForName):
+ (WebCore::JSDOMPluginArray::nameGetter):
+ * bindings/js/JSDOMPluginCustom.cpp: Added.
+ (WebCore::JSDOMPlugin::canGetItemsForName):
+ (WebCore::JSDOMPlugin::nameGetter):
+ * bindings/js/JSMimeTypeArrayCustom.cpp: Removed.
+ * bindings/js/JSPluginArrayCustom.cpp: Removed.
+ * bindings/js/JSPluginCustom.cpp: Removed.
+ * bindings/scripts/CodeGeneratorJS.pm:
+ * page/DOMWindow.idl:
+ * page/Navigator.cpp:
+ (WebCore::Navigator::plugins):
+ (WebCore::Navigator::mimeTypes):
+ * page/Navigator.h:
+ * page/Navigator.idl:
+ * plugins/DOMMimeType.cpp: Added.
+ (WebCore::DOMMimeType::DOMMimeType):
+ (WebCore::DOMMimeType::~DOMMimeType):
+ (WebCore::DOMMimeType::type):
+ (WebCore::DOMMimeType::suffixes):
+ (WebCore::DOMMimeType::description):
+ (WebCore::DOMMimeType::enabledPlugin):
+ * plugins/DOMMimeType.h: Added.
+ (WebCore::DOMMimeType::create):
+ (WebCore::DOMMimeType::mimeClassInfo):
+ * plugins/DOMMimeType.idl: Added.
+ * plugins/DOMMimeTypeArray.cpp: Added.
+ (WebCore::DOMMimeTypeArray::DOMMimeTypeArray):
+ (WebCore::DOMMimeTypeArray::~DOMMimeTypeArray):
+ (WebCore::DOMMimeTypeArray::length):
+ (WebCore::DOMMimeTypeArray::item):
+ (WebCore::DOMMimeTypeArray::canGetItemsForName):
+ (WebCore::DOMMimeTypeArray::namedItem):
+ (WebCore::DOMMimeTypeArray::getPluginData):
+ * plugins/DOMMimeTypeArray.h: Added.
+ (WebCore::DOMMimeTypeArray::create):
+ (WebCore::DOMMimeTypeArray::disconnectFrame):
+ * plugins/DOMMimeTypeArray.idl: Added.
+ * plugins/DOMPlugin.cpp: Added.
+ (WebCore::DOMPlugin::DOMPlugin):
+ (WebCore::DOMPlugin::~DOMPlugin):
+ (WebCore::DOMPlugin::name):
+ (WebCore::DOMPlugin::filename):
+ (WebCore::DOMPlugin::description):
+ (WebCore::DOMPlugin::length):
+ (WebCore::DOMPlugin::item):
+ (WebCore::DOMPlugin::canGetItemsForName):
+ (WebCore::DOMPlugin::namedItem):
+ * plugins/DOMPlugin.h: Added.
+ (WebCore::DOMPlugin::create):
+ (WebCore::DOMPlugin::pluginInfo):
+ * plugins/DOMPlugin.idl: Added.
+ * plugins/DOMPluginArray.cpp: Added.
+ (WebCore::DOMPluginArray::DOMPluginArray):
+ (WebCore::DOMPluginArray::~DOMPluginArray):
+ (WebCore::DOMPluginArray::length):
+ (WebCore::DOMPluginArray::item):
+ (WebCore::DOMPluginArray::canGetItemsForName):
+ (WebCore::DOMPluginArray::namedItem):
+ (WebCore::DOMPluginArray::refresh):
+ (WebCore::DOMPluginArray::pluginData):
+ * plugins/DOMPluginArray.h: Added.
+ (WebCore::DOMPluginArray::create):
+ (WebCore::DOMPluginArray::disconnectFrame):
+ * plugins/DOMPluginArray.idl: Added.
+ * plugins/MimeType.cpp: Removed.
+ * plugins/MimeType.h: Removed.
+ * plugins/MimeType.idl: Removed.
+ * plugins/MimeTypeArray.cpp: Removed.
+ * plugins/MimeTypeArray.h: Removed.
+ * plugins/MimeTypeArray.idl: Removed.
+ * plugins/Plugin.cpp: Removed.
+ * plugins/Plugin.h: Removed.
+ * plugins/Plugin.idl: Removed.
+ * plugins/PluginArray.cpp: Removed.
+ * plugins/PluginArray.h: Removed.
+ * plugins/PluginArray.idl: Removed.
+
+2010-07-06 Alexey Proskuryakov <ap@apple.com>
+
+ Reviewed by Darin Adler.
+
+ https://bugs.webkit.org/show_bug.cgi?id=41156
+ Cross origin XMLHttpRequest should log the reason why connection failed
+
+ Covered by multiple existing tests.
+
+ * loader/CrossOriginAccessControl.cpp:
+ (WebCore::passesAccessControlCheck):
+ * loader/CrossOriginAccessControl.h:
+ * loader/CrossOriginPreflightResultCache.cpp:
+ (WebCore::CrossOriginPreflightResultCacheItem::parse):
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginMethod):
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsCrossOriginHeaders):
+ (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
+ * loader/CrossOriginPreflightResultCache.h:
+ Functions that check requests now take a string argument for error explanation.
+
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::DocumentThreadableLoader): Make an informative error
+ if crossOriginRequestPolicy is DenyCrossOriginRequests. This doesn't currently go anywhere,
+ since XMLHttpRequest is the only client that logs from didFail(), and it of course supports
+ cross origin requests.
+ (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest): Make an informative
+ error when trying to e.g. send a cross origin XMLHttpRequest to ftp://.
+ (WebCore::DocumentThreadableLoader::didReceiveResponse): Pass error explanation from cross
+ origin access control code.
+ (WebCore::DocumentThreadableLoader::preflightFailure): Ditto.
+
+ * loader/DocumentThreadableLoader.h: preflightFailure() now takes arguments.
+
+ * platform/network/ResourceErrorBase.cpp:
+ * platform/network/ResourceErrorBase.h:
+ Added a constant for WebKit error domain.
+
+ * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::didFail): Report the error to console.
+ One day we'll be able to also provide script file and line number here, so it's best to
+ pass error all the way down to XHR for reporting.
+
+2010-07-06 Pavel Podivilov <podivilov@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Web Inspector: convert script offset to webkit format in v8 ScriptDebugServer
+ https://bugs.webkit.org/show_bug.cgi?id=41696
+
+ * bindings/v8/ScriptDebugServer.cpp:
+ (WebCore::ScriptDebugServer::dispatchDidParseSource):
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement InTableBodyMode
+ https://bugs.webkit.org/show_bug.cgi?id=41671
+
+ In the process of implementing this patch, Eric and I discussed some of
+ the high-level organization of the HTMLTreeBuilder class. We'd like to
+ split it up into smaller pieces. In the meantime, I've reordered some
+ of the declarations in the header to make the relations between the
+ different kinds of functions clearer.
+
+ * html/HTMLElementStack.cpp:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTagForInTable):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTagForInTable):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Leandro Pereira <leandro@profusion.mobi>
+
+ Unreviewed build fix.
+
+ [EFL] Generate code for RemoteInspector.
+
+ * CMakeLists.txt:
+
+2010-07-06 Varun Jain <varunjain@chromium.org>
+
+ Reviewed by Oliver Hunt.
+
+ Implementing CURVE_TO_CUBIC specification for SVG Path Segments. Currently,
+ curves specified in relative cordinates such as using createCurvetoCubicRel()
+ javascript function are not displayed.
+
+ SVG CurvetoCubic Path not implemented for relative cordinates
+ https://bugs.webkit.org/show_bug.cgi?id=41294
+
+ Test: svg/custom/svg-curve-with-relative-cordinates.html
+
+ * svg/SVGPathSegList.cpp:
+ (WebCore::SVGPathSegList::toPathData):
+
+2010-07-06 Alexey Proskuryakov <ap@apple.com>
+
+ Roll out patch for https://bugs.webkit.org/show_bug.cgi?id=41348 "Remove global variables
+ from XSLTProcessorLibxslt.cpp", as it causes crashes on buildbot.
+
+ * xml/XSLTProcessor.h:
+ (WebCore::XSLTProcessor::xslStylesheet):
+ (WebCore::XSLTProcessor::XSLTProcessor):
+ * xml/XSLTProcessorLibxslt.cpp:
+ (WebCore::docLoaderFunc):
+ (WebCore::setXSLTLoadCallBack):
+ (WebCore::xsltStylesheetPointer):
+ (WebCore::XSLTProcessor::transformToString):
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add processing for "in cell" mode and end tag processing for "in row"
+ https://bugs.webkit.org/show_bug.cgi?id=41688
+
+ I added several new table tests, not all of which pass yet.
+ Remaining failures exist due to lack of full "in table body" mode
+ support, which Adam has an outstanding patch for.
+ I believe all of the various branches added by this change are
+ covered now by our tests.
+
+ * html/HTMLElementStack.cpp:
+ - Added QualifiedName versions of inScope functions.
+ Using tagName.localName() is wrong for non-HTML elements,
+ in preparation for supporting foreign content we should centralize
+ our handling of QualifiedName in these functions instead of
+ sprinkling more .localName() calls around the code.
+ (WebCore::HTMLElementStack::inScope):
+ (WebCore::HTMLElementStack::inListItemScope):
+ (WebCore::HTMLElementStack::inTableScope):
+ * html/HTMLElementStack.h:
+ * html/HTMLFormattingElementList.cpp:
+ (WebCore::HTMLFormattingElementList::Entry::operator==):
+ (WebCore::HTMLFormattingElementList::Entry::operator!=):
+ - Calling element() on markers will assert, so use m_element.
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::closeTheCell):
+ - Implemented per the spec.
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ - Use isTableBodyContextTag where possible.
+ - Add InCellMode.
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ - Use isTableBodyContextTag where possible.
+ (WebCore::HTMLTreeBuilder::processTrEndTagForInRow):
+ - This code is needed from at least two callsites.
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ - Add InCellMode and InRowMode
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Make <a> auto-close any parent <a> tag
+ https://bugs.webkit.org/show_bug.cgi?id=41684
+
+ I first fixed <a> to auto-close surrounding <a> tags.
+ That caused about 3 more test passes and one new test failure.
+ The test failure was due to <marque> not adding a marker
+ to the active formatting elements.
+
+ So I made a one-line change to fix <marque>. However that hit an
+ ASSERT due to a bug in indexOfFirstUnopenFormattingElement.
+ Fixing indexOfFirstUnopenFormattingElement fixed another bunch of
+ Adoption Agency related tests (clearly this was the second typo
+ which was causing all the adoption agency failures).
+
+ However fixing <marque> and indexOfFirstUnopenFormattingElement,
+ added yet another failure due to missing support for </p>
+ automatically adding an implicit <p> tag. Fixing </p> finally
+ got the tests to a stable (all improving) state.
+
+ In the end, these 4 minor (and very well tested) tweaks fixed a total
+ of 9 subtests in html5lib/runner.html.
+ Another subtest progressed, but did not fully pass due to missing
+ <table> foster-parenting support.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
+
+2010-07-02 Philippe Normand <pnormand@igalia.com>
+
+ Reviewed by Xan Lopez
+
+ [GStreamer] can't seek past maxTimeLoaded value
+ https://bugs.webkit.org/show_bug.cgi?id=40526
+
+ Extended the seekable range to the whole media. This allows video
+ played with progressive download to be seeked past the current
+ buffered position.
+
+ * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
+ (WebCore::MediaPlayerPrivateGStreamer::maxTimeSeekable):
+ (WebCore::MediaPlayerPrivateGStreamer::updateStates):
+
+2010-07-06 Andreas Wictor <andreas.wictor@xcerion.com>
+
+ 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::registredXSLTProcessors):
+ (WebCore::registredXSLStyleSheets):
+ (WebCore::docLoaderFunc):
+ (WebCore::xsltStylesheetPointer):
+ (WebCore::XSLTProcessor::transformToString):
+
+2010-07-06 Darin Adler <darin@apple.com>
+
+ Fix Cairo build.
+
+ * platform/graphics/cairo/GraphicsContextCairo.cpp:
+ (WebCore::GraphicsContext::createPlatformShadow): Removed unnneded release
+ in code that passes a PassOwnPtr to another PassOwnPtr.
+
+2010-07-06 Darin Adler <darin@apple.com>
+
+ Fix Chromium build.
+
+ * platform/graphics/skia/SkiaUtils.cpp:
+ (WebCore::scratchContext): Use leakPtr instead of release.
+
+2010-07-06 Martin Robinson <mrobinson@igalia.com>
+
+ Unreviewed.
+
+ Build fix after r62549.
+
+ * GNUmakefile.am: Generate RemoteInspector files by manually listing
+ them instead of building them into libWebCoreJS.la.
+
+2010-07-06 Darin Adler <darin@apple.com>
+
+ Reviewed by Adam Barth.
+
+ Add adoptPtr and leakPtr functions for OwnPtr and PassOwnPtr
+ https://bugs.webkit.org/show_bug.cgi?id=41320
+
+ Made code changes required because of the change to the release function.
+ The equivalent to the old release function is now named leakPtr and
+ should be used sparingly. The new release function returns a PassOwnPtr.
+
+ * css/CSSFontFaceSource.cpp:
+ (WebCore::CSSFontFaceSource::getFontData): Changed code to call
+ leakPtr instead of release.
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::addProperty): Ditto.
+
+ * css/CSSSegmentedFontFace.cpp:
+ (WebCore::CSSSegmentedFontFace::getFontData): Removed unneeded type
+ casting. Not sure why this changed the type to FontData* and then
+ casted back to SimpleFontData*.
+
+ * css/MediaQuery.cpp:
+ (WebCore::MediaQuery::MediaQuery): Removed call to release on a
+ PassOwnPtr, since the data member is now an OwnPtr.
+ (WebCore::MediaQuery::~MediaQuery): Removed now-unneeded delete.
+ * css/MediaQuery.h: Changed m_expressions to be an OwnPtr.
+
+ * html/HTMLToken.h:
+ (WebCore::AtomicHTMLToken::AtomicHTMLToken): Use assignment instead
+ of the set function since there are no raw pointers involved.
+ * loader/CachedResource.cpp:
+ (WebCore::CachedResource::makePurgeable): Ditto.
+
+ * loader/CrossOriginPreflightResultCache.cpp:
+ (WebCore::CrossOriginPreflightResultCache::appendEntry): Use
+ leakPtr instead of release, and also add FIXME about deleting the
+ old value if the original and URL are already in the map. I
+ believe dealing with this FIXME may fix a storage leak.
+
+ * loader/CrossOriginPreflightResultCache.h: Change the argument
+ to be PassOwnPtr instead of a raw pointer, since this function
+ does take ownership.
+
+ * loader/DocumentThreadableLoader.cpp:
+ (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
+ Use assignment instead of the set function since there are no raw
+ pointers involved.
+ * loader/FrameLoader.cpp:
+ (WebCore::FrameLoader::startIconLoader): Ditto.
+ * loader/TextResourceDecoder.cpp:
+ (WebCore::TextResourceDecoder::decode): Ditto.
+ (WebCore::TextResourceDecoder::flush): Ditto.
+
+ * page/DOMTimer.cpp:
+ (WebCore::DOMTimer::fired): Use OwnPtr instead of an explicit
+ delete.
+
+ * platform/CrossThreadCopier.h: Removed explicit code that tried
+ to copy PassOwnPtr in a complicated way. It did nothing different
+ from just returning the PassOwnPtr. This presumably was done because
+ PassRefPtr has issues when copied cross-thread, but there are no
+ similar issues for PassOwnPtr. Someone with more experience than I
+ might be able to remove the specialization altogether, because
+ CrossThreadCopierPassThrough does the right thing in this case.
+
+ * platform/SharedBuffer.cpp:
+ (WebCore::SharedBuffer::adoptPurgeableBuffer): Changed argument to
+ be a PassOwnPtr.
+ (WebCore::SharedBuffer::releasePurgeableBuffer): Changed result to
+ be a PassOwnPtr.
+ * platform/SharedBuffer.h: Updated for changes above.
+
+ * rendering/RenderSVGResourceFilter.cpp:
+ (WebCore::RenderSVGResourceFilter::applyResource): Changed one site
+ to use assignment instead of the set function since there are no raw
+ pointers involved. Changed another site to use leakPtr instead
+ of release.
+
+ * rendering/RenderSVGResourceGradient.cpp:
+ (WebCore::createMaskAndSwapContextForTextGradient): Use assignment
+ instead of the set function since there are no raw pointers involved.
+
+ * rendering/style/RenderStyle.cpp:
+ (WebCore::RenderStyle::setContent): Use leakPtr instead of release.
+ (WebCore::RenderStyle::setBoxShadow): Ditto.
+
+ * workers/DefaultSharedWorkerRepository.cpp:
+ (WebCore::DefaultSharedWorkerRepository::connectToWorker):
+ Removed unneeded call to release function in a code path that passes
+ a PassOwnPtr to a function that takes a PassOwnPtr.
+
+ * workers/WorkerContext.cpp:
+ (WebCore::WorkerContext::setTimeout): Changed argument type to PassOwnPtr.
+ (WebCore::WorkerContext::setInterval): Ditto.
+ * workers/WorkerContext.h: Updated for changes above.
+
+ * workers/WorkerMessagingProxy.cpp:
+ (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
+ (WebCore::WorkerMessagingProxy::postMessageToWorkerContext):
+ Removed unneeded call to release function in code paths that pass
+ a PassOwnPtr to a function that takes a PassOwnPtr.
+
+2010-07-06 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ WebInspector: generator part of the patch for bug 40675.
+ On the way to Remote Debugging we want to support JSON serialization
+ on both sides of WebInspector transport.
+ As far as InspectorFrontend class is a simple proxy to WebInspector
+ it would be better to generate it from an IDL file.
+ We have generator infrastructure for binding and will reuse it for
+ new generator.
+ https://bugs.webkit.org/show_bug.cgi?id=41692
+
+
+ * CMakeLists.txt:
+ * DerivedSources.make:
+ * GNUmakefile.am:
+ * WebCore.gyp/WebCore.gyp:
+ * WebCore.gyp/scripts/rule_binding.py:
+ * WebCore.gypi:
+ * WebCore.pri:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * bindings/scripts/CodeGenerator.pm:
+ * bindings/scripts/IDLParser.pm:
+ * bindings/scripts/generate-bindings.pl:
+ * inspector/CodeGeneratorInspector.pm: Added.
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::connectFrontend):
+ (WebCore::InspectorController::startTimelineProfiler):
+ * inspector/InspectorController.h:
+ * inspector/InspectorFrontend.cpp:
+ * inspector/InspectorFrontend.h:
+ * inspector/InspectorFrontend2.idl: Added.
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
+ (WebCore::InspectorTimelineAgent::resetFrontendProxyObject):
+ (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+ * inspector/InspectorTimelineAgent.h:
+
+2010-07-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>
+
+ Rubber-stamped by Xan Lopez.
+
+ [GTK] Crashes when going back with page cache in unknown circunstances
+ https://bugs.webkit.org/show_bug.cgi?id=41710
+
+ Also NULL-check document, in hopes of fixing this hard to
+ reproduce crash that we are getting reported quite a bit.
+
+ * page/FrameView.cpp:
+ (WebCore::FrameView::windowClipRect):
+
+2010-07-05 Ilya Tikhonovsky <loislo@chromium.org>
+
+ Reviewed by Yury Semikhatsky.
+
+ Web Inspector: On the way to Remote Debuging we want to support JSON
+ serialization on both sides of WebInspector transport. As far as
+ InspectorFrontend class is a simple proxy to WebInspector it would
+ be better to generate it from an IDL file. We have generator
+ infostructure for binding and will reuse it for new generator.
+ https://bugs.webkit.org/show_bug.cgi?id=40675
+
+ * bindings/js/ScriptCallStack.cpp:
+ (WebCore::ScriptCallStack::stackTrace):
+ * bindings/js/ScriptCallStack.h:
+ * bindings/v8/ScriptCallStack.cpp:
+ (WebCore::ScriptCallStack::stackTrace):
+ * bindings/v8/ScriptCallStack.h:
+ * inspector/InspectorFrontend.cpp:
+ (WebCore::InspectorFrontend::addRecordToTimeline):
+ * inspector/InspectorFrontend.h:
+ * inspector/InspectorTimelineAgent.cpp:
+ (WebCore::InspectorTimelineAgent::pushGCEventRecords):
+ (WebCore::InspectorTimelineAgent::willCallFunction):
+ (WebCore::InspectorTimelineAgent::willDispatchEvent):
+ (WebCore::InspectorTimelineAgent::willLayout):
+ (WebCore::InspectorTimelineAgent::willRecalculateStyle):
+ (WebCore::InspectorTimelineAgent::willPaint):
+ (WebCore::InspectorTimelineAgent::willWriteHTML):
+ (WebCore::InspectorTimelineAgent::didWriteHTML):
+ (WebCore::InspectorTimelineAgent::didInstallTimer):
+ (WebCore::InspectorTimelineAgent::didRemoveTimer):
+ (WebCore::InspectorTimelineAgent::willFireTimer):
+ (WebCore::InspectorTimelineAgent::willChangeXHRReadyState):
+ (WebCore::InspectorTimelineAgent::willLoadXHR):
+ (WebCore::InspectorTimelineAgent::willEvaluateScript):
+ (WebCore::InspectorTimelineAgent::didScheduleResourceRequest):
+ (WebCore::InspectorTimelineAgent::willSendResourceRequest):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceData):
+ (WebCore::InspectorTimelineAgent::willReceiveResourceResponse):
+ (WebCore::InspectorTimelineAgent::didFinishLoadingResource):
+ (WebCore::InspectorTimelineAgent::didMarkTimeline):
+ (WebCore::InspectorTimelineAgent::didMarkDOMContentEvent):
+ (WebCore::InspectorTimelineAgent::didMarkLoadEvent):
+ (WebCore::InspectorTimelineAgent::addRecordToTimeline):
+ (WebCore::InspectorTimelineAgent::setHeapSizeStatistic):
+ (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
+ (WebCore::InspectorTimelineAgent::pushCurrentRecord):
+ * inspector/InspectorTimelineAgent.h:
+ (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
+ * inspector/TimelineRecordFactory.cpp:
+ (WebCore::TimelineRecordFactory::createGenericRecord):
+ (WebCore::TimelineRecordFactory::createGCEventData):
+ (WebCore::TimelineRecordFactory::createFunctionCallData):
+ (WebCore::TimelineRecordFactory::createEventDispatchData):
+ (WebCore::TimelineRecordFactory::createGenericTimerData):
+ (WebCore::TimelineRecordFactory::createTimerInstallData):
+ (WebCore::TimelineRecordFactory::createXHRReadyStateChangeData):
+ (WebCore::TimelineRecordFactory::createXHRLoadData):
+ (WebCore::TimelineRecordFactory::createEvaluateScriptData):
+ (WebCore::TimelineRecordFactory::createMarkTimelineData):
+ (WebCore::TimelineRecordFactory::createScheduleResourceRequestData):
+ (WebCore::TimelineRecordFactory::createResourceSendRequestData):
+ (WebCore::TimelineRecordFactory::createResourceReceiveResponseData):
+ (WebCore::TimelineRecordFactory::createResourceFinishData):
+ (WebCore::TimelineRecordFactory::createReceiveResourceData):
+ (WebCore::TimelineRecordFactory::createPaintData):
+ (WebCore::TimelineRecordFactory::createParseHTMLData):
+ * inspector/TimelineRecordFactory.h:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement InColgroupMode
+ https://bugs.webkit.org/show_bug.cgi?id=41663
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processColgroupEndTagForInColumnGroup):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Implement bookmarking for HTML5 Adoption Agency algorithm
+ https://bugs.webkit.org/show_bug.cgi?id=41659
+
+ Was easier than I expected it to be.
+ Fixes a bunch of html5lib/runner.html tests.
+
+ * html/HTMLFormattingElementList.cpp:
+ (WebCore::HTMLFormattingElementList::bookmarkFor):
+ (WebCore::HTMLFormattingElementList::insertAt):
+ * html/HTMLFormattingElementList.h:
+ (WebCore::HTMLFormattingElementList::Bookmark::Bookmark):
+ (WebCore::HTMLFormattingElementList::Bookmark::moveToAfter):
+ (WebCore::HTMLFormattingElementList::Bookmark::elementBefore):
+ (WebCore::HTMLFormattingElementList::Bookmark::elementAfter):
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement more of InTableMode
+ https://bugs.webkit.org/show_bug.cgi?id=41652
+
+ By the time we got around to landing this patch, it turns out to be
+ just a bit of cleanup (the functional changes where landed already.)
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-07-06 Sheriff Bot <webkit.review.bot@gmail.com>
+
+ Unreviewed, rolling out r62529.
+ http://trac.webkit.org/changeset/62529
+ https://bugs.webkit.org/show_bug.cgi?id=41661
+
+ http/tests/inspector/resource-har-conversion.html is broken
+ (Requested by yutak on #webkit).
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::addResource):
+ (WebCore::InspectorController::removeResource):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp:
+ (WebCore::InspectorResource::InspectorResource):
+ (WebCore::InspectorResource::updateScriptObject):
+ (WebCore::InspectorResource::cachedResource):
+ (WebCore::InspectorResource::type):
+ (WebCore::InspectorResource::resourceData):
+ * inspector/InspectorResource.h:
+ (WebCore::InspectorResource::):
+ (WebCore::InspectorResource::create):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.Type.toString):
+ (WebInspector.Resource.prototype.set type):
+ (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.prototype._refreshRequestHeaders):
+ (WebInspector.ResourceView.prototype._refreshResponseHeaders):
+ (WebInspector.ResourceView.prototype._refreshHeaders):
+ * inspector/front-end/inspector.css:
+ (.resources-category-scripts, .resources-category-xhr, .resources-category-fonts, .resources-category-other):
+ * inspector/front-end/inspector.js:
+ (WebInspector.loaded):
+ (WebInspector.updateResource):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ (WebCore::WebSocketChannel::disconnect):
+ (WebCore::WebSocketChannel::didOpen):
+ (WebCore::WebSocketChannel::didClose):
+ (WebCore::WebSocketChannel::processBuffer):
+ * websockets/WebSocketChannel.h:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement InCaptionMode
+ https://bugs.webkit.org/show_bug.cgi?id=41660
+
+ Implementing this mode also turned up a subtle bug in the adoption
+ agency code.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processCaptionEndTagForInCaption):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::indexOfFirstUnopenFormattingElement):
+ - We're supposed to reutrn the first *unopened* formatting element.
+ The old code returned the first *opened* formatting element.
+ * html/HTMLTreeBuilder.h:
+
+2010-07-06 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement defaut cases for InTableMode
+ https://bugs.webkit.org/show_bug.cgi?id=41656
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Nikolas Zimmermann <nzimmermann@rim.com>
+
+ Reviewed by Dirk Schulze.
+
+ SVGRenderContainer forces too many kids to relayout
+ https://bugs.webkit.org/show_bug.cgi?id=15391
+
+ Fixing a long-standing performance issue. We should only ever need to relayout container children when the parent bounds change.
+ The bounds of a container can only change, if the outermost RenderSVGRoot container uses relative length values and its size changes.
+ This can either happen when the window resizes for standalone SVG documents, or if an enclosing RenderBox changes width/height values.
+
+ Only relayout container children if the container has selfNeedsLayout() true, or if the parent bounds change.
+ Lively Kernel doesn't do any relayouts anymore, except if you change the Safari window size, this is a great progression.
+
+ * rendering/RenderPath.cpp:
+ (WebCore::RenderPath::layout): No need to special case Path updates, if the element uses relative lengths. SVGRenderSupport now handles this case.
+ * rendering/RenderSVGContainer.cpp:
+ (WebCore::RenderSVGContainer::layout): Fix some style issues.
+ * rendering/RenderSVGContainer.h:
+ (WebCore::RenderSVGContainer::setDrawsContents): Inlined for speed.
+ (WebCore::RenderSVGContainer::drawsContents): Ditto.
+ * rendering/RenderSVGRoot.cpp:
+ (WebCore::RenderSVGRoot::RenderSVGRoot): Initialize m_isLayoutSizeChanged to false.
+ (WebCore::RenderSVGRoot::layout): Set m_isLayoutSizeChanged=true when the RenderSVGRoot size changes during layout.
+ (WebCore::RenderSVGRoot::calcViewport): Remove hasRelativeLengths() special case.
+ * rendering/RenderSVGRoot.h:
+ (WebCore::RenderSVGRoot::isLayoutSizeChanged): New function, which returns true during layout() if the outermost <svg> size changes.
+ * rendering/RenderSVGViewportContainer.cpp:
+ (WebCore::RenderSVGViewportContainer::calcViewport): Cleanup code, and remove obsolete hasRelativeLengths() special case.
+ * rendering/SVGRenderSupport.cpp:
+ (WebCore::svgRootTreeObject): Added helper function, that returns the RenderSVGRoot for a given RenderObject.
+ (WebCore::SVGRenderSupport::layoutChildren): Remove FIXME, only relayout container children, if the parent bounds change and the child uses relative lengths.
+ * svg/SVGStyledElement.cpp:
+ (WebCore::SVGStyledElement::updateRelativeLengthsInformation): Implemented this function. Keeps track of relative lengths elements, so that the
+ hasRelativeLengths() information is always up2date.
+ * svg/SVGStyledElement.h:
+ (WebCore::SVGStyledElement::hasRelativeLengths): Don't call the virtual selfHasRelativeLengths() information, just return wheter m_elementsWithRelativeLengths is not empty.
+
+2010-07-05 Yuzo Fujishima <yuzo@google.com>
+
+ Reviewed by Dan Bernstein.
+
+ Fix for Bug 41509 - Ranges for @font-face unicode-range must be separated by commas
+ https://bugs.webkit.org/show_bug.cgi?id=41509
+
+ Test: fast/css/font-face-multiple-ranges-for-unicode-range.html
+
+ * css/CSSParser.cpp:
+ (WebCore::CSSParser::parseFontFaceUnicodeRange):
+
+2010-07-05 Yuta Kitamura <yutak@chromium.org>
+
+ Reviewed by Pavel Feldman.
+
+ Add WebSocket resource type to Web Inspector.
+
+ When a new WebSocket connection is established, a line for that connection
+ will appear in Web Inspector's Resources tab. If the resource name is
+ clicked, the details of handshake request and response will be shown.
+
+ Web Inspector: WebSocket in Resources tab
+ https://bugs.webkit.org/show_bug.cgi?id=40768
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::addResource): WebSocket resource does not
+ have an associated loader, thus frame might be null. Need to check it.
+ (WebCore::InspectorController::removeResource): Ditto.
+ (WebCore::InspectorController::didCreateWebSocket):
+ (WebCore::InspectorController::willSendWebSocketHandshakeRequest):
+ (WebCore::InspectorController::didReceiveWebSocketHandshakeResponse):
+ (WebCore::InspectorController::didCloseWebSocket):
+ * inspector/InspectorController.h:
+ * inspector/InspectorResource.cpp: Add null checks of m_loader and m_frame,
+ because WebSocket does not have a loader and we need to allow null for
+ these variables.
+ (WebCore::createReadableStringFromBinary):
+ (WebCore::InspectorResource::InspectorResource):
+ (WebCore::InspectorResource::create): Factory function of
+ regular (non-WebSocket) resources.
+ (WebCore::InspectorResource::createWebSocket): Factory function of
+ WebSocket resources.
+ (WebCore::InspectorResource::updateWebSocketRequest):
+ (WebCore::InspectorResource::updateWebSocketResponse):
+ (WebCore::InspectorResource::updateScriptObject):
+ (WebCore::InspectorResource::cachedResource):
+ (WebCore::InspectorResource::type):
+ (WebCore::InspectorResource::resourceData):
+ * inspector/InspectorResource.h:
+ (WebCore::InspectorResource::):
+ (WebCore::InspectorResource::markWebSocket):
+ * inspector/front-end/Resource.js:
+ (WebInspector.Resource.Type.toString):
+ (WebInspector.Resource.prototype.set type):
+ (WebInspector.Resource.prototype._mimeTypeIsConsistentWithType):
+ * inspector/front-end/ResourceView.js:
+ (WebInspector.ResourceView.prototype._refreshRequestHeaders):
+ (WebInspector.ResourceView.prototype._refreshResponseHeaders):
+ (WebInspector.ResourceView.prototype._refreshHeaders):
+ * inspector/front-end/inspector.css:
+ (.resources-category-websockets, .resources-category-other):
+ (.resources-category-websockets .resources-graph-bar):
+ (.resources-category-websockets.resource-cached .resources-graph-bar):
+ * inspector/front-end/inspector.js:
+ (WebInspector.loaded):
+ (WebInspector.updateResource):
+ * websockets/WebSocketChannel.cpp:
+ (WebCore::WebSocketChannel::WebSocketChannel):
+ (WebCore::WebSocketChannel::disconnect):
+ (WebCore::WebSocketChannel::didOpen):
+ (WebCore::WebSocketChannel::didClose):
+ (WebCore::WebSocketChannel::processBuffer):
+ (WebCore::WebSocketChannel::identifier):
+ * websockets/WebSocketChannel.h:
+
+2010-07-05 Yury Semikhatsky <yurys@chromium.org>
+
+ Unreviewed. Fix Chromium build.
+
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ (WebCore::InspectorApplicationCacheAgent::fillResourceList):
+ (WebCore::InspectorApplicationCacheAgent::getApplicationCaches):
+
+2010-07-05 Adam Barth <abarth@webkit.org>
+
+ Unreviewed.
+
+ Move processStartTagForInBody to its own function.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTagForInBody):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ * html/HTMLTreeBuilder.cpp.orig: Added.
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Fix one more notImplemented in h1-h6 start tag handling
+ https://bugs.webkit.org/show_bug.cgi?id=41654
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Unreviewed. Just fixing proess to process.
+ Clearly Adam and I can't spell. Thankfully MikeSmith can.
+
+ Add <isindex> support, per HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=41650
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processFakeStartTag):
+ (WebCore::HTMLTreeBuilder::processFakeEndTag):
+ (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add <isindex> support, per HTML5
+ https://bugs.webkit.org/show_bug.cgi?id=41650
+
+ Covered by html5lib/runner.html including a new
+ isindex.dat test suite.
+
+ * html/HTMLToken.h:
+ (WebCore::AtomicHTMLToken::AtomicHTMLToken):
+ - Support passing attributes to the constructor.
+ (WebCore::AtomicHTMLToken::name):
+ (WebCore::AtomicHTMLToken::setName):
+ (WebCore::AtomicHTMLToken::getAttributeItem):
+ (WebCore::AtomicHTMLToken::attributes):
+ (WebCore::AtomicHTMLToken::takeAtributes):
+ - Reduces ref-churn, and makes it possible for callers
+ to modify attributes w/o affecting future uses of the attributes.
+ (WebCore::AtomicHTMLToken::usesName):
+ - Used by ASSERTS.
+ (WebCore::AtomicHTMLToken::usesAttributes):
+ - Used by ASSERTS.
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::convertToOldStyle):
+ - Can't be const, now that we use takeAttributes()
+ (WebCore::HTMLTreeBuilder::insertHTMLStartTagBeforeHTML):
+ (WebCore::HTMLTreeBuilder::proesssFakeStartTag):
+ - New function. I'm not sure this is the perfect design
+ (I'd kinda like AtomicHTMLToken to be copyable so we can
+ have create functions for it), but this makes the callsites
+ using fake tokens much more readable.
+ (WebCore::HTMLTreeBuilder::proesssFakeEndTag):
+ (WebCore::HTMLTreeBuilder::processFakeCharacters):
+ (WebCore::HTMLTreeBuilder::attributesForIsindexInput):
+ (WebCore::HTMLTreeBuilder::processIsindexStartTagForBody):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::insertScriptElement):
+ - Use takeAttributes() for less ref-churn.
+ (WebCore::HTMLTreeBuilder::createElement): ditto
+ (WebCore::HTMLTreeBuilder::finished):
+ - Remove bogus use of AtomicHTMLToken constructor which
+ wasn't even being used now that we support emitting EOF tokens
+ from the Tokenizer directly.
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ ASSERT that we're processing the correct type of token
+ https://bugs.webkit.org/show_bug.cgi?id=41647
+
+ Making these asserts work required a small (non-observable) tweak to
+ some old code.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processDoctypeToken):
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processBodyEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processComment):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+ (WebCore::HTMLTreeBuilder::processStartTagForInHead):
+
+2010-07-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement in select in table
+ https://bugs.webkit.org/show_bug.cgi?id=41646
+
+ This mode is mostly a fall-through to the InSelectMode.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-07-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement basic text node coalescing
+ https://bugs.webkit.org/show_bug.cgi?id=41623
+
+ This patch isn't the end-all, be-all of text node coalescing, but it's
+ a good start.
+
+ * dom/CharacterData.cpp:
+ (WebCore::CharacterData::parserAppendData):
+ (WebCore::CharacterData::appendData):
+ * dom/CharacterData.h:
+ - Added a new method to dance around mutation events.
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::insertTextNode):
+
+2010-07-05 Adam Barth <abarth@webkit.org>
+
+ Reviewed by Eric Seidel.
+
+ Implement InSelectMode
+ https://bugs.webkit.org/show_bug.cgi?id=41627
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ (WebCore::HTMLTreeBuilder::processCharacter):
+ (WebCore::HTMLTreeBuilder::processEndOfFile):
+
+2010-07-05 Fady Samuel <fsamuel@chromium.org>
+
+ Reviewed by Darin Adler.
+
+ Fixed a svg crash when setting class of an svg ellipse object.
+
+ Altering the CSS class of an attached SVG element causes WebKit to crash
+ https://bugs.webkit.org/show_bug.cgi?id=40857
+
+ Test: svg/css/svg-ellipse-render-crash.html
+
+ * dom/StyledElement.cpp:
+ (WebCore::StyledElement::classAttributeChanged):
+
+2010-07-05 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ Reproducible crash with Optimize Legibility extension
+ https://bugs.webkit.org/show_bug.cgi?id=41585
+
+ Test: fast/css/text-rendering-priority.html
+
+ Moved the text-rendering CSS property to the “high priority” group, because applying it
+ during style selection invalidates the font.
+
+ * css/CSSPropertyNames.in: Moved text-rendering to the “high priority” section at the top.
+ * css/CSSStyleSelector.cpp:
+ (WebCore::CSSStyleSelector::applyDeclarations): Updated compile-time assertion.
+
+2010-07-05 Dan Bernstein <mitz@apple.com>
+
+ Reviewed by Sam Weinig.
+
+ optimizeLegibility doesn't play nice with fonts that do not have a space glyph
+ https://bugs.webkit.org/show_bug.cgi?id=41599
+
+ No test because none of the fonts available to DumpRenderTree are missing a space glyph.
+
+ * rendering/RenderBlockLineLayout.cpp:
+ (WebCore::RenderBlock::findNextLineBreak): When the font does not map the space character
+ to a glyph, a fallback font is used for space. Therefore, wordTrailingSpaceWidth must be
+ initialized with the width of a space as measured by the Font rather than with the cached
+ space width.
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Implement HTML5's "reset insertion mode appropriately"
+ https://bugs.webkit.org/show_bug.cgi?id=41628
+
+ This has some minimal testing. One from my previous
+ </table> patch, and a few from the main suite.
+
+ Mostly resetInsertionModeAppropriately isn't used yet
+ but we're about to add a bunch of states which do use it
+ and our test coverage will expand further as we do.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::HTMLTreeBuilder):
+ (WebCore::HTMLTreeBuilder::setInsertionModeAndEnd):
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-04 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add </table> support for "in table" insertion mode
+ https://bugs.webkit.org/show_bug.cgi?id=41591
+
+ resetInsertionModeAppropriately isn't implemented yet, however
+ I've added a test for the usage I added.
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed build fix for r62503.
+
+ Chromium missing method. Filed bug 41632 to track.
+
+ * loader/appcache/ApplicationCacheHost.h:
+ (WebCore::ApplicationCacheHost::applicationCache):
+
+2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed build fix for r62503.
+
+ Missed GTK's build file.
+
+ * GNUmakefile.am:
+
+2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed build fix for r62503.
+
+ Pass a blank ResourceResponse instead of passing 0.
+
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::ApplicationCacheGroup::createResourceHandle):
+
+2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
+
+ Unreviewed build fix for r62503.
+
+ Forward declare ApplicationCache for Chromium.
+
+ * loader/appcache/ApplicationCacheHost.h:
+
+2010-07-05 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Pavel Feldman.
+
+ WebInspector: HTML5 Offline Web Applications Support (ApplicationCache)
+ https://bugs.webkit.org/show_bug.cgi?id=24529
+
+ Parts of this patch were written by Kavita Kanetkar <kkanetkar@chromium.org>.
+
+ Part 2: Pulling ApplicationCache Resources to Display in the Inspector.
+
+ The InspectorApplicationCacheAgent gathers the information it
+ needs and forwards it on to the inspector.
+
+ * inspector/InspectorApplicationCacheAgent.cpp:
+ (WebCore::InspectorApplicationCacheAgent::fillResourceList): get information about the resources.
+ (WebCore::InspectorApplicationCacheAgent::getApplicationCaches): gathers all the information from the ApplicationCacheHost.
+ (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCache):
+ (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
+ (WebCore::InspectorApplicationCacheAgent::buildObjectForApplicationCacheResource):
+ * inspector/InspectorApplicationCacheAgent.h: defines structures to hold information about caches and resources.
+ (WebCore::InspectorApplicationCacheAgent::ApplicationCacheInfo::ApplicationCacheInfo):
+ (WebCore::InspectorApplicationCacheAgent::ResourceInfo::ResourceInfo):
+ (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent):
+ * loader/appcache/ApplicationCacheHost.h:
+ (WebCore::ApplicationCacheHost::applicationCacheForInspector): new convention, public cache accessor for the inspector.
+ (WebCore::ApplicationCacheHost::documentLoader): added const.
+
+ The User Interface uses a DataGrid, like Cookies.
+
+ * inspector/front-end/ApplicationCacheItemsView.js:
+ (WebInspector.ApplicationCacheItemsView.prototype._update):
+ (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
+ (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
+ (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.numberCompare):
+ (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid.localeCompare):
+ (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
+
+ The usual frontend pull workflow, except this goes through
+ InspectorApplicationCacheAgent instead of InspectorController.
+
+ * inspector/InspectorBackend.cpp:
+ (WebCore::InspectorBackend::getApplicationCaches):
+ (WebCore::InspectorBackend::inspectorApplicationCacheAgent):
+ * inspector/InspectorBackend.h:
+ * inspector/InspectorBackend.idl:
+ * inspector/InspectorFrontend.cpp:
+ (WebCore::InspectorFrontend::didGetApplicationCaches):
+ * inspector/InspectorFrontend.h:
+ * inspector/front-end/DOMAgent.js:
+ (WebInspector.DOMNode.prototype.hasChildNodes): style fix.
+ (WebInspector.DOMAgent.prototype.nodeForId): style fix.
+ (WebInspector.ApplicationCache.getApplicationCachesAsync): pull.
+ (WebInspector.Cookies.getCookiesAsync):
+ * inspector/front-end/StoragePanel.js:
+ (WebInspector.StoragePanel.prototype.updateManifest):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect):
+ * inspector/front-end/inspector.js:
+ (WebInspector.updateResource):
+ (WebInspector._addAppCacheDomain):
+ (WebInspector.reset):
+
+ Miscellaneous. Localized Strings and fixes.
+
+ * English.lproj/localizedStrings.js: "Type", "%s (%s)"
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::deleteCookie):
+ * inspector/InspectorController.h:
+
+2010-07-04 Joseph Pecoraro <joepeck@webkit.org>
+
+ Reviewed by Pavel Feldman.
+
+ WebInspector: HTML5 Offline Web Applications Support (ApplicationCache)
+ https://bugs.webkit.org/show_bug.cgi?id=24529
+
+ Part 1: Backend -> Frontend Messages. ApplicationCache Status and Connectivity Status.
+
+ This patch adds an InspectorApplicationCacheAgent to monitor application
+ cache changes, starts a UI in the Storage panel, handles the boilerplate
+ of adding new files.
+
+ Added an agent to encapsulate and handle the application cache logic.
+ This is similar to the timeline agent.
+
+ * inspector/InspectorApplicationCacheAgent.cpp: Added.
+ (WebCore::InspectorApplicationCacheAgent::InspectorApplicationCacheAgent):
+ (WebCore::InspectorApplicationCacheAgent::~InspectorApplicationCacheAgent):
+ (WebCore::InspectorApplicationCacheAgent::didReceiveManifestResponse):
+ (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
+ (WebCore::InspectorApplicationCacheAgent::updateNetworkState):
+ * inspector/InspectorApplicationCacheAgent.h: Added.
+
+ InspectorController owns an InspectorApplicationCacheAgent. This
+ handles its lifetime management.
+
+ * inspector/InspectorController.cpp:
+ (WebCore::InspectorController::~InspectorController):
+ (WebCore::InspectorController::connectFrontend): create the agent with a frontend.
+ (WebCore::InspectorController::disconnectFrontend): remove the agent when closing.
+ (WebCore::InspectorController::releaseFrontendLifetimeAgents):
+ * inspector/InspectorController.h:
+
+ User Interface for ApplicationCache in the StoragePanel. This follows
+ very closely to Cookies, it will have a sortable table of items. The
+ status bar contains connectivity and application cache status
+ indicators which update when backend messages are received. There
+ are some stubs which the next part will implement.
+
+ * inspector/front-end/ApplicationCacheItemsView.js: Added.
+ (WebInspector.ApplicationCacheItemsView):
+ (WebInspector.ApplicationCacheItemsView.prototype.get statusBarItems): refresh, delete, connectivity, application cache status.
+ (WebInspector.ApplicationCacheItemsView.prototype.show):
+ (WebInspector.ApplicationCacheItemsView.prototype.hide):
+ (WebInspector.ApplicationCacheItemsView.prototype.updateStatus): this is the application cache status indicator.
+ (WebInspector.ApplicationCacheItemsView.prototype.updateNetworkState): this is the online/offline connectivity indicator.
+ (WebInspector.ApplicationCacheItemsView.prototype._update):
+ (WebInspector.ApplicationCacheItemsView.prototype._updateCallback):
+ (WebInspector.ApplicationCacheItemsView.prototype._createDataGrid):
+ (WebInspector.ApplicationCacheItemsView.prototype._populateDataGrid):
+ (WebInspector.ApplicationCacheItemsView.prototype.resize):
+ (WebInspector.ApplicationCacheItemsView.prototype._deleteButtonClicked):
+ (WebInspector.ApplicationCacheItemsView.prototype._deleteCallback):
+ (WebInspector.ApplicationCacheItemsView.prototype._refreshButtonClicked):
+
+ The usual dispatch flow from the backend, to the frontend, to the
+ panel, and then to the visible view. Some slight refactoring to
+ eliminate duplicated code.
+
+ * inspector/InspectorFrontend.cpp:
+ (WebCore::InspectorFrontend::updateDOMStorage):
+ (WebCore::InspectorFrontend::didGetApplicationCaches):
+ (WebCore::InspectorFrontend::updateApplicationCacheStatus):
+ * inspector/InspectorFrontend.h:
+ * inspector/front-end/StoragePanel.js:
+ (WebInspector.StoragePanel):
+ (WebInspector.StoragePanel.prototype.reset):
+ (WebInspector.StoragePanel.prototype.addApplicationCache):
+ (WebInspector.StoragePanel.prototype.showDatabase):
+ (WebInspector.StoragePanel.prototype.showDOMStorage):
+ (WebInspector.StoragePanel.prototype.showCookies):
+ (WebInspector.StoragePanel.prototype.showApplicationCache):
+ (WebInspector.StoragePanel.prototype._genericViewSetup):
+ (WebInspector.StoragePanel.prototype.updateApplicationCacheStatus):
+ (WebInspector.StoragePanel.prototype.updateNetworkState):
+ (WebInspector.CookieSidebarTreeElement.prototype.set subtitle):
+ (WebInspector.ApplicationCacheSidebarTreeElement):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.onselect):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get mainTitle):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set mainTitle):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.get subtitle):
+ (WebInspector.ApplicationCacheSidebarTreeElement.prototype.set subtitle):
+ * inspector/front-end/inspector.js:
+ (WebInspector.dispatch.delayDispatch):
+ (WebInspector.dispatch):
+ (WebInspector._addAppCacheDomain):
+ (WebInspector.addDOMStorage):
+ (WebInspector.updateDOMStorage):
+
+ Notify the InspectorApplicationCacheAgent on application cache changes
+ or specifics. Notify the InspectorController on generic resource events.
+ That is because ApplicationCacheController is a ResourceClient and needs
+ to trigger the resource events normally handled by ResourceLoader.
+
+ * loader/appcache/ApplicationCacheGroup.cpp:
+ (WebCore::inspectorUpdateApplicationCacheStatus): helper method to prevent duplicated code.
+ (WebCore::ApplicationCacheGroup::setNewestCache): status change.
+ (WebCore::ApplicationCacheGroup::makeObsolete): status change.
+ (WebCore::ApplicationCacheGroup::update): status change.
+ (WebCore::ApplicationCacheGroup::createResourceHandle): resource event.
+ (WebCore::ApplicationCacheGroup::willSendRequest): resource event.
+ (WebCore::ApplicationCacheGroup::didReceiveResponse): resource event.
+ (WebCore::ApplicationCacheGroup::didReceiveData): resource event.
+ (WebCore::ApplicationCacheGroup::didFinishLoading): resource event.
+ (WebCore::ApplicationCacheGroup::didFail): resource event.
+ (WebCore::ApplicationCacheGroup::didFinishLoadingManifest): resource event.
+ (WebCore::ApplicationCacheGroup::manifestNotFound): status change.
+ (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete): status change.
+ (WebCore::ApplicationCacheGroup::setUpdateStatus): single access point for status changes.
+ * loader/appcache/ApplicationCacheGroup.h:
+ * page/Page.cpp:
+ (WebCore::networkStateChanged): connectivity status change.
+
+ Final inspector details to add the new file, style new elements,
+ images, and localized strings.
+
+ * inspector/front-end/inspector.css:
+ (.application-cache-sidebar-tree-item .icon):
+ (.timeline-records-counter, .storage-application-cache-status, .storage-application-cache-connectivity):
+ (.storage-application-cache-status-icon, .storage-application-cache-connectivity-icon):
+ (.status-bar-divider):
+ (.storage-application-cache-status, .storage-application-cache-connectivity):
+ * inspector/front-end/inspector.html:
+ * inspector/front-end/Images/applicationCache.png: Added.
+ * English.lproj/localizedStrings.js: "APPLICATION CACHE", "No Application Cache information available.", "Online", "Offline"
+
+ Updated build files.
+
+ * CMakeLists.txt:
+ * WebCore.gypi:
+ * WebCore.pro:
+ * WebCore.vcproj/WebCore.vcproj:
+ * WebCore.xcodeproj/project.pbxproj:
+ * inspector/front-end/WebKit.qrc:
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add basic <col> support to the treebuilder
+ https://bugs.webkit.org/show_bug.cgi?id=41590
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Add basic "in row" mode to support <td> and <th> insertion
+ https://bugs.webkit.org/show_bug.cgi?id=41588
+
+ Also fixed <td> or <th> as a direct child of <table>.
+
+ Most of this was covered by html5lib/runner.html tests,
+ but I had to add a new tables01.dat to cover the <th> cases.
+
+ * html/HTMLElementStack.cpp:
+ (WebCore::HTMLNames::isTableRowScopeMarker):
+ (WebCore::HTMLElementStack::popUntilTableRowScopeMarker):
+ * html/HTMLElementStack.h:
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processStartTag):
+
+2010-07-05 Eric Seidel <eric@webkit.org>
+
+ Reviewed by Adam Barth.
+
+ Finish implementing "any other end tag" for "in body" mode
+ https://bugs.webkit.org/show_bug.cgi?id=41582
+
+ I believe I found a "bug" in the HTML5 spec when writing this:
+ http://www.w3.org/Bugs/Public/show_bug.cgi?id=10080
+
+ * html/HTMLTreeBuilder.cpp:
+ (WebCore::HTMLTreeBuilder::processAnyOtherEndTagForInBody):
+ (WebCore::HTMLTreeBuilder::processEndTag):
+ * html/HTMLTreeBuilder.h:
+
+2010-07-05 Martin Robinson <mrobinson@igalia.com>
+
+ Unreviewed.
+
+ Add a missing slash to the list of generated sources. This
+ was missing from a previous build fix.
+
+ * GNUmakefile.am:
+
2010-07-05 Pavel Feldman <pfeldman@chromium.org>
Reviewed by Joseph Pecoraro.