WebKit.git
9 years ago[wx] Build fix, don't use the new FPD implementation yet, until we can merge ours...
kevino@webkit.org [Sat, 26 Mar 2011 01:21:30 +0000 (01:21 +0000)]
[wx] Build fix, don't use the new FPD implementation yet, until we can merge ours with it.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82018 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoLayoutTestController.setPluginsEnabled() isn't implemented in WebKit2,
aestes@apple.com [Sat, 26 Mar 2011 01:17:31 +0000 (01:17 +0000)]
LayoutTestController.setPluginsEnabled() isn't implemented in WebKit2,
and that is now required for fast/images/embed-image.html.

* platform/mac-wk2/Skipped: Skip fast/images/embed-image.html

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82017 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoSkip fast/images/embed-image.html on Windows XP
aestes@apple.com [Sat, 26 Mar 2011 01:13:37 +0000 (01:13 +0000)]
Skip fast/images/embed-image.html on Windows XP
https://bugs.webkit.org/show_bug.cgi?id=57135

It would appear that the Windows XP bot is loading a plug-in despite
the test calling layoutTestController.setPluginsEnabled(false).

* platform/win-xp/Skipped: Skip fast/images/embed-image.html

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82016 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRe-work a test to not be flaky.
aestes@apple.com [Sat, 26 Mar 2011 00:52:29 +0000 (00:52 +0000)]
Re-work a test to not be flaky.

* plugins/embed-prefers-plugins-for-images.html:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82015 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Sat, 26 Mar 2011 00:51:00 +0000 (00:51 +0000)]
2011-03-25  Jer Noble  <jer.noble@apple.com>

        Reviewed by Eric Carlson.

        MediaPlayerPrivateQuickTimeVisualContext should use the Application Cache during load.
        https://bugs.webkit.org/show_bug.cgi?id=57047

        No new tests.

        When loading a URL, checkk osee if the Appplication Cache has a version of that URL
        stored; if so, use the local path to that cached media instead of the remote URL.

        * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
        (WebCore::MediaPlayerPrivateQuickTimeVisualContext::loadInternal):
        * platform/graphics/win/QTMovie.cpp:
        (QTMovie::loadPath):
        * platform/graphics/win/QTMovie.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82014 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago<rdar://problem/9134330> Missing expansion before ideograph at the beginning or end...
mitz@apple.com [Sat, 26 Mar 2011 00:46:26 +0000 (00:46 +0000)]
<rdar://problem/9134330> Missing expansion before ideograph at the beginning or end of a text run
https://bugs.webkit.org/show_bug.cgi?id=57106

Reviewed by Darin Adler.

Source/WebCore:

Test: fast/text/justify-ideograph-leading-expansion.html

* platform/graphics/TextRun.h:
Replaced TrailingExpansionBehavior enum with ExpansionBehavior flags.
(WebCore::TextRun::TextRun): Constructors now take an expansionBehavior parameter.
(WebCore::TextRun::allowsLeadingExpansion): Added this accessor.
(WebCore::TextRun::allowsTrailingExpansion): Changed to use the m_expansionBehavior member.
* platform/graphics/WidthIterator.cpp:
(WebCore::WidthIterator::WidthIterator): Initialize m_isAfterExpansion from the TextRun, allowing
leading expansion when appropriate.
(WebCore::WidthIterator::advance): Moved the last-glyph-in-run check to only apply to expansion
after the glyph, not expansion before the glyph, since that is not trailing expansion. Added code
to handle expansion before the first glyph.
* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::ComplexTextController::ComplexTextController): Initialize m_afterExpansion from the
TextRun, allowing leading expansion when appropriate. Set m_runWidthSoFar to the leading expansion.
(WebCore::ComplexTextController::offsetForPosition): Account for leading expansion.
(WebCore::ComplexTextController::adjustGlyphsAndAdvances): Similar to WidthIterator::advance()
* platform/graphics/mac/ComplexTextController.h: Added m_leadingExpansion member variable.
* rendering/InlineBox.h:
(WebCore::InlineBox::InlineBox): Renamed m_hasSelectedChildren to m_hasSelectedChildrenOrCanHaveLeadingExpansion
to reflect the use of this bit by InlineTextBox.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::selectionRect): Replaced calls to trailingExpansionBehavior() with expansionBehavior().
(WebCore::InlineTextBox::paint): Ditto.
(WebCore::InlineTextBox::paintSelection): Ditto.
(WebCore::InlineTextBox::paintCompositionBackground): Ditto.
(WebCore::InlineTextBox::paintSpellingOrGrammarMarker): Ditto.
(WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
(WebCore::InlineTextBox::computeRectForReplacementMarker): Ditto.
(WebCore::InlineTextBox::offsetForPosition): Ditto.
(WebCore::InlineTextBox::positionForOffset): Ditto.
* rendering/InlineTextBox.h:
(WebCore::InlineTextBox::canHaveLeadingExpansion): Added this accessor.
(WebCore::InlineTextBox::setCanHaveLeadingExpansion): Ditto.
(WebCore::InlineTextBox::expansionBehavior): Replaced trailingExpansionBehavior() with this function,
which also considers canHaveLeadingExpansion().
* rendering/RenderBlockLineLayout.cpp:
(WebCore::RenderBlock::computeInlineDirectionPositionsForLine): Call setCanHaveLeadingExpansion() on
text boxes that can have leading expansion. Avoid negative expansion.
* rendering/RootInlineBox.cpp:
* rendering/RootInlineBox.h:
(WebCore::RootInlineBox::hasSelectedChildren): Updated for renaming of the flag.
(WebCore::RootInlineBox::setHasSelectedChildren): Ditto.

LayoutTests:

* fast/text/justify-ideograph-leading-expansion.html: Added.
* platform/mac/fast/text/justify-ideograph-leading-expansion-expected.checksum: Added.
* platform/mac/fast/text/justify-ideograph-leading-expansion-expected.png: Added.
* platform/mac/fast/text/justify-ideograph-leading-expansion-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82013 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Anders Carlsson <andersca@apple.com>
andersca@apple.com [Sat, 26 Mar 2011 00:45:02 +0000 (00:45 +0000)]
2011-03-25  Anders Carlsson  <andersca@apple.com>

        Reviewed by Sam Weinig.

        PluginView's call to invalidateContentsAndWindow() in invalidateRect() is wrong for plug-ins which paint into compositing layers
        https://bugs.webkit.org/show_bug.cgi?id=57133
        <rdar://problem/9029442>

        * WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
        (WebKit::NetscapePlugin::platformInvalidate):
        Return true under the Core Animation drawing model, since that prevents the plug-in from calling PluginController::invalidate.

        * WebProcess/Plugins/PluginView.cpp:
        (WebKit::PluginView::invalidateRect):
        Don't call invalidateContentsAndWindow() if the plug-in has a Core Animation layer.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82012 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-23 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Sat, 26 Mar 2011 00:41:12 +0000 (00:41 +0000)]
2011-03-23  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        MediaPlayerPrivateAVFoundation should use the Application Cache during load.
        https://bugs.webkit.org/show_bug.cgi?id=56997

        No new tests.

        When loading a URL, check to see if the Application Cache has a version of that URL
        stored; if so, use the local path to that cached media instead of the remote URL.

        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
        (WebCore::MediaPlayerPrivateAVFoundation::prepareToPlay): Check to see if the media should be loaded
            from the application cache.
        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.h:
        * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundationObjC.mm:
        (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForURL):
        (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerForCacheResource): Added.
        (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer): Split out from createAVPlayerForURL.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82011 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Ben Taylor <bentaylor.solx86@gmail.com>
commit-queue@webkit.org [Sat, 26 Mar 2011 00:30:40 +0000 (00:30 +0000)]
2011-03-25  Ben Taylor  <bentaylor.solx86@gmail.com>

        Reviewed by Darin Adler.

        https://bugs.webkit.org/show_bug.cgi?id=57122. Solaris 10/SunStudio 12 expect
        both sides of a ?: operation to have the same types.  Extracted from original
        https://bugs.webkit.org/show_bug.cgi?id=24932, patch 13 of 17, and originally
        created by Thiago Macieira.

        fixes a compile issue on Solaris 10/SunStudio 12

        * loader/DocumentLoader.h:
        (WebCore::DocumentLoader::serverRedirectSourceForHistory):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::load):
        (WebCore::FrameLoader::loadWithNavigationAction):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82010 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-02-03 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Sat, 26 Mar 2011 00:29:03 +0000 (00:29 +0000)]
2011-02-03  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        MediaPlayerPrivateQTKit should use the Application Cache during load.
        https://bugs.webkit.org/show_bug.cgi?id=53818

        No new tests.

        When loading a URL, check to see if the Application Cache has a version of that URL
        stored; if so, use that data instead of the remote URL.

        * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
        * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
        (WebCore::MediaPlayerPrivateQTKit::commonMovieAttributes):
        (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
        (WebCore::MediaPlayerPrivateQTKit::loadInternal):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82009 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[chromium] add missing include from previous checkin
jam@chromium.org [Sat, 26 Mar 2011 00:14:02 +0000 (00:14 +0000)]
[chromium] add missing include from previous checkin

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82008 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoplugins/embed-prefers-plugins-for-images.html fails on Windows.
aestes@apple.com [Sat, 26 Mar 2011 00:12:16 +0000 (00:12 +0000)]
plugins/embed-prefers-plugins-for-images.html fails on Windows.
https://bugs.webkit.org/show_bug.cgi?id=57132

* platform/win/Skipped: Skip plugins/embed-prefers-plugins-for-images.html

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82007 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 James Robinson <jamesr@chromium.org>
jamesr@google.com [Sat, 26 Mar 2011 00:10:07 +0000 (00:10 +0000)]
2011-03-25  James Robinson  <jamesr@chromium.org>

        Reviewed by Kenneth Russell.

        [chromium] Move draw implementations to CCLayerImpl for everything except content layers
        https://bugs.webkit.org/show_bug.cgi?id=56793

        Moves the implementation of the layer's draw() function from LayerChromium subclasses to CCLayerImpl subclasses for
        all layer types except content layers.  This gets us closer to decoupling the composite step itself from updating the layers.

        The biggest change in this patch is adding a set of CCLayerImpl subclasses to implement the different drawing routines
        and moving the code from each XXXLayerChromium to CCXXXLayerImpl.  In order to render from the CCLayerImpl side all state
        needed at draw time also has to be synchronized, which is performed in pushPropertiesTo().

        On the LayerRendererChromium side there are a few changes.  I've split the updateContents calls on LayerChromiums into two operations
        tentatively named 'paintContentsIfNeeded' and 'updateCompositorResources'.  paintContents() is used for any code that calls into WebKit in order to generate
        new pixel data.  It's expected that this call may take a long period of time and may involve "odd" side effects.  updateCompositorResources() is used for
        code that needs to update the compositor's texture data or other state.  It is not expected that this callback will take long (since it's just inserting
        commands into the GL command stream, ideally) and this call is expected to have access to the compositor's context, unlike paintContents().

        The updateAndDrawLayers cycle now looks like this:
        1.) update the root content layer
        2.) update the root layer scrollbars
        3.) for each LayerChromium in tree order:
          a.) ensure a CCLayerImpl of the correct type exists for this layer
          b.) push all draw time properties from the LayerChromium to the CCLayerImpl
          c.) construct the appropriate draw transforms, render surfaces and render surface z-order sublayer lists
        4.) for each LayerChromium in tree order, paint the layer's contents
        5.) for each LayerChromium in tree order, update the associate compositor resources (textures, etc)
        6.) draw the root layer and its scrollbars
        7.) for each CCLayerImpl in render surface order, draw it

        Step 3 should really happen after step 5, but right now painting a content layer requires knowledge of the render surface properties and draw transforms
        in order to paint.  We also currently push layer properties from LayerChromium->CCLayerImpls twice now - once at 3.b and once after 5 so we can pick
        up any texture updates.  This will also get fixed when the paint dependency on render surfaces is resolved.

        I haven't modified the root layer or content layers in order to minimize conflicts with the other pending work in that area.

        Tests: compositing/

        * WebCore.gypi:
        * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
        (WebCore::Canvas2DLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/Canvas2DLayerChromium.h:
        * platform/graphics/chromium/CanvasLayerChromium.cpp:
        (WebCore::CanvasLayerChromium::createCCLayerImpl):
        (WebCore::CanvasLayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/CanvasLayerChromium.h:
        * platform/graphics/chromium/ContentLayerChromium.cpp:
        (WebCore::ContentLayerChromium::requiresClippedUpdateRect):
        (WebCore::ContentLayerChromium::paintContentsIfDirty):
        (WebCore::ContentLayerChromium::updateCompositorResources):
        (WebCore::ContentLayerChromium::bindContentsTexture):
        * platform/graphics/chromium/ContentLayerChromium.h:
        * platform/graphics/chromium/ImageLayerChromium.cpp:
        (WebCore::ImageLayerChromium::paintContentsIfDirty):
        * platform/graphics/chromium/ImageLayerChromium.h:
        * platform/graphics/chromium/LayerChromium.cpp:
        (WebCore::LayerChromium::LayerChromium):
        (WebCore::LayerChromium::cleanupResources):
        (WebCore::LayerChromium::setLayerRenderer):
        (WebCore::LayerChromium::setName):
        (WebCore::LayerChromium::pushPropertiesTo):
        (WebCore::LayerChromium::dumpLayer):
        (WebCore::LayerChromium::createCCLayerImpl):
        (WebCore::LayerChromium::createCCLayerImplIfNeeded):
        (WebCore::LayerChromium::ccLayerImpl):
        (WebCore::LayerChromium::layerRenderer):
        * platform/graphics/chromium/LayerChromium.h:
        (WebCore::LayerChromium::paintContentsIfDirty):
        (WebCore::LayerChromium::updateCompositorResources):
        * platform/graphics/chromium/LayerRendererChromium.cpp:
        (WebCore::LayerRendererChromium::updateLayers):
        (WebCore::LayerRendererChromium::updatePropertiesAndRenderSurfaces):
        (WebCore::LayerRendererChromium::paintContentsRecursive):
        (WebCore::LayerRendererChromium::updateCompositorResourcesRecursive):
        (WebCore::LayerRendererChromium::drawLayer):
        (WebCore::LayerRendererChromium::initializeSharedObjects):
        * platform/graphics/chromium/LayerRendererChromium.h:
        (WebCore::LayerRendererChromium::canvasLayerProgram):
        (WebCore::LayerRendererChromium::pluginLayerProgram):
        (WebCore::LayerRendererChromium::videoLayerRGBAProgram):
        (WebCore::LayerRendererChromium::videoLayerYUVProgram):
        * platform/graphics/chromium/PluginLayerChromium.cpp:
        (WebCore::PluginLayerChromium::createCCLayerImpl):
        (WebCore::PluginLayerChromium::setTextureId):
        (WebCore::PluginLayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/PluginLayerChromium.h:
        (WebCore::PluginLayerChromium::textureId):
        * platform/graphics/chromium/VideoLayerChromium.cpp:
        (WebCore::VideoLayerChromium::createCCLayerImpl):
        (WebCore::VideoLayerChromium::updateCompositorResources):
        (WebCore::VideoLayerChromium::pushPropertiesTo):
        * platform/graphics/chromium/VideoLayerChromium.h:
        * platform/graphics/chromium/WebGLLayerChromium.cpp:
        (WebCore::WebGLLayerChromium::updateCompositorResources):
        * platform/graphics/chromium/WebGLLayerChromium.h:
        * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.cpp.
        (WebCore::CCCanvasLayerImpl::CCCanvasLayerImpl):
        (WebCore::CCCanvasLayerImpl::~CCCanvasLayerImpl):
        (WebCore::CCCanvasLayerImpl::draw):
        (WebCore::CCCanvasLayerImpl::dumpLayerProperties):
        * platform/graphics/chromium/cc/CCCanvasLayerImpl.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h.
        (WebCore::CCCanvasLayerImpl::create):
        (WebCore::CCCanvasLayerImpl::setTextureId):
        (WebCore::CCCanvasLayerImpl::setPremultipliedAlpha):
        * platform/graphics/chromium/cc/CCLayerImpl.cpp:
        (WebCore::CCLayerImpl::descendantsDrawsContent):
        (WebCore::CCLayerImpl::updateCompositorResources):
        (WebCore::CCLayerImpl::writeIndent):
        * platform/graphics/chromium/cc/CCLayerImpl.h:
        (WebCore::CCLayerImpl::setAnchorPoint):
        (WebCore::CCLayerImpl::setAnchorPointZ):
        (WebCore::CCLayerImpl::setMasksToBounds):
        (WebCore::CCLayerImpl::setOpacity):
        (WebCore::CCLayerImpl::setPosition):
        (WebCore::CCLayerImpl::setPreserves3D):
        (WebCore::CCLayerImpl::setSublayerTransform):
        (WebCore::CCLayerImpl::setTransform):
        * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.cpp.
        (WebCore::CCPluginLayerImpl::CCPluginLayerImpl):
        (WebCore::CCPluginLayerImpl::~CCPluginLayerImpl):
        (WebCore::CCPluginLayerImpl::draw):
        (WebCore::CCPluginLayerImpl::dumpLayerProperties):
        * platform/graphics/chromium/cc/CCPluginLayerImpl.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h.
        (WebCore::CCPluginLayerImpl::create):
        (WebCore::CCPluginLayerImpl::setTextureId):
        * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp: Added.
        (WebCore::CCVideoLayerImpl::CCVideoLayerImpl):
        (WebCore::CCVideoLayerImpl::~CCVideoLayerImpl):
        (WebCore::CCVideoLayerImpl::setTexture):
        (WebCore::CCVideoLayerImpl::draw):
        (WebCore::CCVideoLayerImpl::drawYUV):
        (WebCore::CCVideoLayerImpl::drawRGBA):
        (WebCore::CCVideoLayerImpl::dumpLayerProperties):
        * platform/graphics/chromium/cc/CCVideoLayerImpl.h: Copied from Source/WebCore/platform/graphics/chromium/PluginLayerChromium.h.
        (WebCore::CCVideoLayerImpl::create):
        (WebCore::CCVideoLayerImpl::setSkipsDraw):
        (WebCore::CCVideoLayerImpl::setFrameFormat):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82006 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago<rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56425
beidson@apple.com [Sat, 26 Mar 2011 00:09:07 +0000 (00:09 +0000)]
<rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56425
WebKit2 IconDatabase and API

Reviewed by Sam Weinig.

This gets a basic, usable API in place.
Enhancements can come in other bugs as they're needed.

* UIProcess/API/C/WKIconDatabase.cpp:
(WKIconDatabaseRetainIconForURL):
(WKIconDatabaseReleaseIconForURL):
(WKIconDatabaseEnableDatabaseCleanup):
* UIProcess/API/C/WKIconDatabase.h:

The first actual accessor for an "icon for a URL" is for a CGImageRef:
* UIProcess/API/C/cg: Added.
* UIProcess/API/C/cg/WKIconDatabaseCG.cpp: Added.
(WKIconDatabaseGetCGImageForURL):
* UIProcess/API/C/cg/WKIconDatabaseCG.h: Added.

Expose relevant methods to support the above API:
* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::WebIconDatabase): New IconDatabases will have cleanup disabled from the start,
  and require a single call to "enableDatabaseCleanup" to allow cleanup.
(WebKit::WebIconDatabase::setDatabasePath):
(WebKit::WebIconDatabase::enableDatabaseCleanup):
(WebKit::WebIconDatabase::imageForPageURL):
* UIProcess/WebIconDatabase.h:

Project file stuff:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82005 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWebScrollBar not updating when calling WebScrollBar::setValue.
weinig@apple.com [Sat, 26 Mar 2011 00:04:41 +0000 (00:04 +0000)]
WebScrollBar not updating when calling WebScrollBar::setValue.
<rdar://problem/9143871>

Reviewed by Jon Honeycutt.

* WebScrollBar.cpp:
(WebScrollBar::setValue):
Call scrollToOffsetWithoutAnimation to actually update the scroll position.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82004 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Oliver Hunt <oliver@apple.com>
oliver@apple.com [Fri, 25 Mar 2011 23:20:39 +0000 (23:20 +0000)]
2011-03-25  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        Allow defineOwnProperty to work on DOMObjects
        https://bugs.webkit.org/show_bug.cgi?id=57129

        Now we disallow the cross origin accesses, rather than just disallowing
        the defineOwnProperty at all.

        * http/tests/security/xss-DENIED-defineProperty-expected.txt:
2011-03-25  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        Allow defineOwnProperty to work on DOMObjects
        https://bugs.webkit.org/show_bug.cgi?id=57129

        Fix a couple of places where we uses getter()/setter() rather
        than [gs]etterPresent().

        * runtime/JSObject.cpp:
        (JSC::JSObject::defineOwnProperty):
2011-03-25  Oliver Hunt  <oliver@apple.com>

        Reviewed by Darin Adler.

        Allow defineOwnProperty to work on DOMObjects
        https://bugs.webkit.org/show_bug.cgi?id=57129

        As other engines are allowing defineOwnProperty to be applied
        to host objects there's no reason for us to retain this
        restriction.

        * bindings/js/JSDOMWrapper.cpp:
        * bindings/js/JSDOMWrapper.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82003 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Jeff Miller <jeffm@apple.com>
jeffm@apple.com [Fri, 25 Mar 2011 23:15:07 +0000 (23:15 +0000)]
2011-03-25  Jeff Miller  <jeffm@apple.com>

        Reviewed by Darin Adler.

        Add CoreIPC::encodeResourceError() and CoreIPC::decodeResourceError() for all platforms
        https://bugs.webkit.org/show_bug.cgi?id=57125

        Currently, these are only implemented on the Mac, but we're going to need them for Windows as well, so we might as well make them always platform-specific.
        In this patch, just replicate the existing common non-Mac implementation in WebCoreArgumentCoders.h to platform-specific files.

        * Shared/WebCoreArgumentCoders.h: Move non-Mac implementations of encodeResourceError() and decodeResourceError() to common files.
        * Shared/gtk/WebCoreArgumentCodersGtk.cpp:
        (CoreIPC::encodeResourceError): Added.
        (CoreIPC::decodeResourceError): Added.
        * Shared/qt/WebCoreArgumentCodersQt.cpp:
        (CoreIPC::encodeResourceError): Added.
        (CoreIPC::decodeResourceError): Added.
        * Shared/win/WebCoreArgumentCodersWin.cpp:
        (CoreIPC::encodeResourceError): Added.
        (CoreIPC::decodeResourceError): Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82002 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Andy Estes <aestes@apple.com>
aestes@apple.com [Fri, 25 Mar 2011 23:07:43 +0000 (23:07 +0000)]
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        TestNetscapePlugIn needs to register support for an image MIME type so
        we can test that the embed tag prefers plug-ins to render image MIME
        types.

        * DumpRenderTree/TestNetscapePlugIn/mac/Info.plist: Register image/png.
        * DumpRenderTree/TestNetscapePlugIn/main.cpp:
        (NP_GetMIMEDescription): Ditto.
        * DumpRenderTree/TestNetscapePlugIn/win/TestNetscapePlugin.rc: Ditto.
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        * fast/images/embed-image.html: Disable plug-ins to continue testing
        native image rendering with embed.
        * plugins/embed-prefers-plugins-for-images-expected.txt: Added.
        * plugins/embed-prefers-plugins-for-images.html: Added.
        * plugins/plugin-javascript-access-expected.txt: Updated to include the
        new MIME type registered by TestNetscapePlugIn.
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::objectContentType):
        * src/FrameLoaderClientImpl.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::objectContentType):
        * WebCoreSupport/FrameLoaderClientQt.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::objectContentType):
        * WebCoreSupport/FrameLoaderClientGtk.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebFrame.cpp:
        (WebFrame::objectContentType):
        * WebFrame.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::objectContentType):
        * WebKitSupport/FrameLoaderClientWx.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::objectContentType):
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientHaiku.cpp:
        (WebCore::FrameLoaderClientHaiku::objectContentType):
        * WebCoreSupport/FrameLoaderClientHaiku.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientWinCE.cpp:
        (WebKit::FrameLoaderClientWinCE::objectContentType):
        * WebCoreSupport/FrameLoaderClientWinCE.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientEfl.cpp:
        (WebCore::FrameLoaderClientEfl::objectContentType):
        * WebCoreSupport/FrameLoaderClientEfl.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        AC_QuickTime.js uses the common <object>/<embed> paradigm to embed the
        QuickTime plug-in in web pages. r70748 removed our mapping of classids
        to MIME types, which causes WebKit to fall back from the object to the
        embed tag when QuickTime is embedded by this script. The script emits
        the following embed tag to embed a QuickTime movie with a poster frame:

        <embed src="poster-frame.png" target="quicktimeplayer" href="movie.mov">

        The expectation is that a QuickTime plug-in is instantiated to display the
        poster frame, since QuickTime registers for many common image MIME
        types. This is how Gecko behaves for embed. However, WebKit prefers to
        use its native image rendering for image embeds, in which case no movie
        is played when the poster frame is clicked.

        Fix this by changing embed to check for a plug-in that can handle the
        image type before rendering the image natively. This matches Gecko.

        Test: plugins/embed-prefers-plugins-for-images.html

        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::HTMLEmbedElement):
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::HTMLObjectElement):
        (WebCore::HTMLObjectElement::parametersForPlugin):
        * html/HTMLPlugInImageElement.cpp:
        (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
        (WebCore::HTMLPlugInImageElement::isImageType):
        (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
        * html/HTMLPlugInImageElement.h:
        (WebCore::HTMLPlugInImageElement::shouldPreferPlugInsForImages):
        * loader/EmptyClients.h:
        (WebCore::EmptyFrameLoaderClient::objectContentType):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::defaultObjectContentType):
        * loader/FrameLoader.h:
        * loader/FrameLoaderClient.h:
        * loader/SubframeLoader.cpp:
        (WebCore::SubframeLoader::resourceWillUsePlugin):
        (WebCore::SubframeLoader::requestPlugin):
        (WebCore::SubframeLoader::requestObject):
        (WebCore::SubframeLoader::shouldUsePlugin):
        * loader/SubframeLoader.h:
2011-03-25  Andy Estes  <aestes@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::objectContentType):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82001 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-23 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Fri, 25 Mar 2011 23:04:54 +0000 (23:04 +0000)]
2011-03-23  Jer Noble  <jer.noble@apple.com>

        Reviewed by Eric Carlson.

        Application Cache should save audio/ and video/ mime types as flat files
        https://bugs.webkit.org/show_bug.cgi?id=53784
        <rdar://problem/8932473>

        No new tests, as this behavior is not possible to test without changes to the MediaPlayer engines.

        Store certain mime types as flat files alongside the Application Cache database.
        This requires plumbing the saved file path from ApplicationCacheStorage through
        to ApplicationCacheResource.

        (WebCore::ApplicationCacheStorage::openDatabase): Modify the CacheResourceData schema and
            add a new DeletedCacheResources table, add a new CacheResourceDataDeleted trigger.
        (WebCore::ApplicationCacheStorage::store): Add the new path data when adding new rows in
            CacheResourceData, and store media resources as flat files.
        (WebCore::ApplicationCacheStorage::loadCache): Pull the "path" column from CacheResourceData
            when loading cache items.
        (WebCore::ApplicationCacheStorage::remove): Call checkForDeletedResources.
        (WebCore::ApplicationCacheStorage::empty): Ditto.
        (WebCore::ApplicationCacheStorage::storeCopyOfCache): Ditto.
        (WebCore::ApplicationCacheStorage::deleteCacheGroup): Ditto.
        (WebCore::ApplicationCacheStorage::checkForDeletedResources): Walk through DeletedCacheResourceData
            looking for entries with non-empty "path" columns; if found, delete.
        (WebCore::ApplicationCacheStorage::flatFileAreaSize): Walk through CacheResourceData rows
            and sum the file size of those rows with flat file storage.
        (WebCore::ApplicationCacheStorage::verifySchemaVersion): Call deleteTables() instead of
            clearAllTables() directly.
        (WebCore::ApplicationCacheStorage::deleteTables): Call empty() before deleting the tables,
            so that flat files get deleted.
        (WebCore::ApplicationCacheStorage::shouldStoreResourceAsFlatFile): Added.
        (WebCore::ApplicationCacheStorage::writeDataToUniqueFileInDirectory): Added.
        * loader/appcache/ApplicationCacheStorage.h:
        * platform/win/FileSystemWin.cpp:
        (WebCore::openFile): Implement openFile on Windows.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@82000 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Kinuko Yasuda <kinuko@chromium.org>
kinuko@chromium.org [Fri, 25 Mar 2011 23:01:00 +0000 (23:01 +0000)]
2011-03-25  Kinuko Yasuda  <kinuko@chromium.org>

        Reviewed by David Levin.

        Data race between ~WorkerFileSystemCallbacksBridge and runTasksOnWorkerThread
        https://bugs.webkit.org/show_bug.cgi?id=56138
        Stopped passing the WorkerFileSystemCallbacksBridge's reference to
        MainThreadFileSystemCallbacks so that in most cases (in normal cases)
        its reference is only maintained by WorkerThread.

        * src/WorkerFileSystemCallbacksBridge.cpp:
        (WebKit::MainThreadFileSystemCallbacks::createLeakedPtr):
        (WebKit::MainThreadFileSystemCallbacks::MainThreadFileSystemCallbacks):
        (WebKit::WorkerFileSystemCallbacksBridge::mayPostTaskToWorker):
        * src/WorkerFileSystemCallbacksBridge.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81999 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Vincent Scheib <scheib@chromium.org>
scheib@chromium.org [Fri, 25 Mar 2011 22:56:52 +0000 (22:56 +0000)]
2011-03-25  Vincent Scheib  <scheib@chromium.org>

        fast/forms/input-file-directory-upload.html timing out.
        http://crbug.com/77468

        * platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81998 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed build correction.
jberlin@webkit.org [Fri, 25 Mar 2011 22:33:54 +0000 (22:33 +0000)]
Unreviewed build correction.

Patch by Brent Fulgham <bfulgham@webkit.org> on 2011-03-25
Add stubs for WK2 cookie handling with cURL.

* WebProcess/Cookies/curl: Added.
* WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
* win/WebKit2.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81997 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Vincent Scheib <scheib@chromium.org>
scheib@chromium.org [Fri, 25 Mar 2011 22:15:59 +0000 (22:15 +0000)]
2011-03-25  Vincent Scheib  <scheib@chromium.org>

        Attempting SLOW to resolve fast/forms/input-file-directory-upload.html

        * platform/chromium/test_expectations.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81996 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Fri, 25 Mar 2011 22:04:14 +0000 (22:04 +0000)]
2011-03-25  Martin Robinson  <mrobinson@igalia.com>

        Add a GTK+ specific baseline for a text test that seems to have whitespace difference,
        probably due to font sizes resulting in newlines.

        * platform/gtk/fast/events/onchange-text-form-field-expected.txt: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81995 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 David Hyatt <hyatt@apple.com>
ggaren@apple.com [Fri, 25 Mar 2011 22:01:18 +0000 (22:01 +0000)]
2011-03-24  David Hyatt  <hyatt@apple.com>

        Reviewed by Dan Bernstein.

        Add a simplified normal flow layout path optimization for overflow recomputation
        and for positioned objects inside relative positioned containers.

        Currently there is an optimized code path for positioned objects, but as soon as
        we encounter a normal flow object in the containing block chain, we lose the
        optimization.

        This patch adds a new type of style difference called SimplifiedLayout that is
        returned when only overflow needs to be recomputed. Whenever a transform changes,
        this is the hint returned now instead of a full layout.

        In addition, when positioned objects need layout and start marking up the
        containing block chain, we now propagate the fact that the layout is simplified
        all the way up to the root, even when we encounter normal flow containing
        blocks.

        The layoutOnlyPositionedObjects function has been renamed to simplifiedLayout()
        and is now used for all of these cases (in addition to what it handled before).

        The simplified layout optimization (even in ToT) did not work correctly when
        static distances needed to be recomputed. In order to make static distance
        computations work with simplified layout, positioned objects now always compute
        their static offsets, even if they explicitly specify left/top.  That way normal
        flow layout never has to re-run when the positioned object moves.  This makes
        movement of a positioned object along a single non-auto axis much faster when the
        other axis is auto. Because this code kicked in more often for absolutely positioned
        objects whose original display was inline, I went ahead and fixed the trailing space
        issue with those objects.  This causes a bunch of layout tests to progress.

        Added fast/block/positioning/static-inline-position-dynamic.html and trailing-space-test.html.

        * animations/dynamic-stylesheet-loading-expected.txt:
        * animations/keyframe-timing-functions-expected.txt:
        * fast/block/positioning/static-inline-position-dynamic.html: Added.
        * fast/block/positioning/trailing-space-test.html: Added.
        * fast/dynamic/ancestor-to-absolute-expected.txt:
        * fast/forms/input-appearance-elementFromPoint-expected.txt:
        * fast/forms/input-hit-test-border-expected.txt:
        * platform/mac/fast/block/positioning/002-expected.png:
        * platform/mac/fast/block/positioning/003-expected.png:
        * platform/mac/fast/block/positioning/004-expected.png:
        * platform/mac/fast/block/positioning/005-expected.png:
        * platform/mac/fast/block/positioning/006-expected.png:
        * platform/mac/fast/block/positioning/007-expected.png:
        * platform/mac/fast/block/positioning/008-expected.png:
        * platform/mac/fast/block/positioning/009-expected.png:
        * platform/mac/fast/block/positioning/010-expected.png:
        * platform/mac/fast/block/positioning/011-expected.png:
        * platform/mac/fast/block/positioning/012-expected.png:
        * platform/mac/fast/block/positioning/013-expected.png:
        * platform/mac/fast/block/positioning/014-expected.png:
        * platform/mac/fast/block/positioning/015-expected.png:
        * platform/mac/fast/block/positioning/016-expected.png:
        * platform/mac/fast/block/positioning/017-expected.png:
        * platform/mac/fast/block/positioning/018-expected.png:
        * platform/mac/fast/block/positioning/019-expected.png:
        * platform/mac/fast/block/positioning/020-expected.png:
        * platform/mac/fast/block/positioning/021-expected.png:
        * platform/mac/fast/block/positioning/022-expected.png:
        * platform/mac/fast/block/positioning/023-expected.png:
        * platform/mac/fast/block/positioning/024-expected.png:
        * platform/mac/fast/block/positioning/025-expected.png:
        * platform/mac/fast/block/positioning/026-expected.png:
        * platform/mac/fast/block/positioning/027-expected.png:
        * platform/mac/fast/block/positioning/028-expected.png:
        * platform/mac/fast/block/positioning/029-expected.png:
        * platform/mac/fast/block/positioning/030-expected.png:
        * platform/mac/fast/block/positioning/031-expected.png:
        * platform/mac/fast/block/positioning/032-expected.png:
        * platform/mac/fast/block/positioning/033-expected.png:
        * platform/mac/fast/block/positioning/034-expected.png:
        * platform/mac/fast/block/positioning/035-expected.png:
        * platform/mac/fast/block/positioning/036-expected.png:
        * platform/mac/fast/block/positioning/037-expected.png:
        * platform/mac/fast/block/positioning/038-expected.png:
        * platform/mac/fast/block/positioning/039-expected.png:
        * platform/mac/fast/block/positioning/040-expected.png:
        * platform/mac/fast/block/positioning/041-expected.png:
        * platform/mac/fast/block/positioning/042-expected.png:
        * platform/mac/fast/block/positioning/043-expected.png:
        * platform/mac/fast/block/positioning/044-expected.png:
        * platform/mac/fast/block/positioning/045-expected.png:
        * platform/mac/fast/block/positioning/046-expected.png:
        * platform/mac/fast/block/positioning/047-expected.checksum:
        * platform/mac/fast/block/positioning/047-expected.png:
        * platform/mac/fast/block/positioning/048-expected.png:
        * platform/mac/fast/block/positioning/049-expected.png:
        * platform/mac/fast/block/positioning/050-expected.png:
        * platform/mac/fast/block/positioning/056-expected.txt:
        * platform/mac/fast/block/positioning/061-expected.png:
        * platform/mac/fast/block/positioning/062-expected.png:
        * platform/mac/fast/block/positioning/auto/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/007-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.png:
        * platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.txt:
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.checksum:
        * platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.png:
        * platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.txt:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.checksum:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.png:
        * platform/mac/fast/block/positioning/inline-block-relposition-expected.txt:
        * platform/mac/fast/block/positioning/move-with-auto-width-expected.png:
        * platform/mac/fast/block/positioning/negative-rel-position-expected.png:
        * platform/mac/fast/block/positioning/relative-overconstrained-expected.png:
        * platform/mac/fast/block/positioning/relative-overflow-block-expected.txt:
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.checksum: Added.
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.png: Added.
        * platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.txt: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.checksum: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.png: Added.
        * platform/mac/fast/block/positioning/trailing-space-test-expected.txt: Added.
        * platform/mac/fast/clip/001-expected.txt:
        * platform/mac/fast/clip/004-expected.txt:
        * platform/mac/fast/clip/006-expected.txt:
        * platform/mac/fast/clip/007-expected.txt:
        * platform/mac/fast/clip/008-expected.txt:
        * platform/mac/fast/clip/009-expected.txt:
        * platform/mac/fast/clip/010-expected.txt:
        * platform/mac/fast/clip/011-expected.txt:
        * platform/mac/fast/clip/012-expected.txt:
        * platform/mac/fast/clip/013-expected.txt:
        * platform/mac/fast/clip/014-expected.txt:
        * platform/mac/fast/clip/nestedTransparencyClip-expected.txt:
        * platform/mac/fast/clip/outline-overflowClip-expected.txt:
        * platform/mac/fast/forms/input-appearance-preventDefault-expected.txt:
        * platform/mac/fast/invalid/014-expected.txt:
        * platform/mac/fast/layers/layer-visibility-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset2-expected.txt:
        * platform/mac/fast/repaint/layout-state-scrolloffset3-expected.txt:
        * platform/mac/tables/mozilla/bugs/bug51140-expected.txt:
2011-03-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Crash when paused at a breakpoint caused by inaccurate Activation records.
        https://bugs.webkit.org/show_bug.cgi?id=57120

        * runtime/JSActivation.cpp:
        (JSC::JSActivation::symbolTableGet):
        (JSC::JSActivation::symbolTablePut):
        (JSC::JSActivation::getOwnPropertyNames):
        (JSC::JSActivation::symbolTablePutWithAttributes):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81994 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed build correction.
bfulgham@webkit.org [Fri, 25 Mar 2011 21:59:10 +0000 (21:59 +0000)]
Unreviewed build correction.

Add stubs for WK2 cookie handling with cURL.

* WebProcess/Cookies/curl: Added.
* WebProcess/Cookies/curl/WebCookieManagerCurl.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
* win/WebKit2.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81993 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoSource/WebCore: https://bugs.webkit.org/show_bug.cgi?id=56909
hyatt@apple.com [Fri, 25 Mar 2011 21:57:07 +0000 (21:57 +0000)]
Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=56909

Reviewed by Dan Bernstein.

Add a simplified normal flow layout path optimization for overflow recomputation
and for positioned objects inside relative positioned containers.

Currently there is an optimized code path for positioned objects, but as soon as
we encounter a normal flow object in the containing block chain, we lose the
optimization.

This patch adds a new type of style difference called SimplifiedLayout that is
returned when only overflow needs to be recomputed. Whenever a transform changes,
this is the hint returned now instead of a full layout.

In addition, when positioned objects need layout and start marking up the
containing block chain, we now propagate the fact that the layout is simplified
all the way up to the root, even when we encounter normal flow containing
blocks.

The layoutOnlyPositionedObjects function has been renamed to simplifiedLayout()
and is now used for all of these cases (in addition to what it handled before).

The simplified layout optimization (even in ToT) did not work correctly when
static distances needed to be recomputed. In order to make static distance
computations work with simplified layout, positioned objects now always compute
their static offsets, even if they explicitly specify left/top.  That way normal
flow layout never has to re-run when the positioned object moves.  This makes
movement of a positioned object along a single non-auto axis much faster when the
other axis is auto. Because this code kicked in more often for absolutely positioned
objects whose original display was inline, I went ahead and fixed the trailing space
issue with those objects.  This causes a bunch of layout tests to progress.

Added fast/block/positioning/static-inline-position-dynamic.html and trailing-space-test.html.

* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock):
(WebCore::RenderBlock::adjustPositionedBlock):
(WebCore::RenderBlock::simplifiedNormalFlowLayout):
(WebCore::RenderBlock::simplifiedLayout):
* rendering/RenderBlock.h:
* rendering/RenderBlockLineLayout.cpp:
(WebCore::setStaticPositions):
(WebCore::RenderBlock::findNextLineBreak):
* rendering/RenderBox.cpp:
(WebCore::RenderBox::styleDidChange):
(WebCore::RenderBox::positionLineBox):
* rendering/RenderBoxModelObject.cpp:
(WebCore::RenderBoxModelObject::styleWillChange):
* rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock):
(WebCore::RenderFlexibleBox::layoutHorizontalBox):
(WebCore::RenderFlexibleBox::layoutVerticalBox):
* rendering/RenderObject.cpp:
(WebCore::RenderObject::RenderObject):
(WebCore::RenderObject::adjustStyleDifference):
(WebCore::RenderObject::setStyle):
(WebCore::RenderObject::styleDidChange):
* rendering/RenderObject.h:
(WebCore::RenderObject::needsLayout):
(WebCore::RenderObject::needsPositionedMovementLayoutOnly):
(WebCore::RenderObject::needsSimplifiedNormalFlowLayout):
(WebCore::RenderObject::setNeedsLayout):
(WebCore::RenderObject::setChildNeedsLayout):
(WebCore::RenderObject::setNeedsSimplifiedNormalFlowLayout):
(WebCore::RenderObject::markContainingBlocksForLayout):
* rendering/RenderTable.cpp:
(WebCore::RenderTable::layout):
* rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::diff):
* rendering/style/RenderStyleConstants.h:
* rendering/svg/RenderSVGText.cpp:
(WebCore::RenderSVGText::layout):

LayoutTests: Add a simplified normal flow layout path optimization for overflow recomputation
and for positioned objects inside relative positioned containers.

Reviewed by Dan Bernstein.

Currently there is an optimized code path for positioned objects, but as soon as
we encounter a normal flow object in the containing block chain, we lose the
optimization.

This patch adds a new type of style difference called SimplifiedLayout that is
returned when only overflow needs to be recomputed. Whenever a transform changes,
this is the hint returned now instead of a full layout.

In addition, when positioned objects need layout and start marking up the
containing block chain, we now propagate the fact that the layout is simplified
all the way up to the root, even when we encounter normal flow containing
blocks.

The layoutOnlyPositionedObjects function has been renamed to simplifiedLayout()
and is now used for all of these cases (in addition to what it handled before).

The simplified layout optimization (even in ToT) did not work correctly when
static distances needed to be recomputed. In order to make static distance
computations work with simplified layout, positioned objects now always compute
their static offsets, even if they explicitly specify left/top.  That way normal
flow layout never has to re-run when the positioned object moves.  This makes
movement of a positioned object along a single non-auto axis much faster when the
other axis is auto. Because this code kicked in more often for absolutely positioned
objects whose original display was inline, I went ahead and fixed the trailing space
issue with those objects.  This causes a bunch of layout tests to progress.

Added fast/block/positioning/static-inline-position-dynamic.html and trailing-space-test.html.

* animations/dynamic-stylesheet-loading-expected.txt:
* animations/keyframe-timing-functions-expected.txt:
* fast/block/positioning/static-inline-position-dynamic.html: Added.
* fast/block/positioning/trailing-space-test.html: Added.
* fast/dynamic/ancestor-to-absolute-expected.txt:
* fast/forms/input-appearance-elementFromPoint-expected.txt:
* fast/forms/input-hit-test-border-expected.txt:
* platform/mac/fast/block/positioning/002-expected.png:
* platform/mac/fast/block/positioning/003-expected.png:
* platform/mac/fast/block/positioning/004-expected.png:
* platform/mac/fast/block/positioning/005-expected.png:
* platform/mac/fast/block/positioning/006-expected.png:
* platform/mac/fast/block/positioning/007-expected.png:
* platform/mac/fast/block/positioning/008-expected.png:
* platform/mac/fast/block/positioning/009-expected.png:
* platform/mac/fast/block/positioning/010-expected.png:
* platform/mac/fast/block/positioning/011-expected.png:
* platform/mac/fast/block/positioning/012-expected.png:
* platform/mac/fast/block/positioning/013-expected.png:
* platform/mac/fast/block/positioning/014-expected.png:
* platform/mac/fast/block/positioning/015-expected.png:
* platform/mac/fast/block/positioning/016-expected.png:
* platform/mac/fast/block/positioning/017-expected.png:
* platform/mac/fast/block/positioning/018-expected.png:
* platform/mac/fast/block/positioning/019-expected.png:
* platform/mac/fast/block/positioning/020-expected.png:
* platform/mac/fast/block/positioning/021-expected.png:
* platform/mac/fast/block/positioning/022-expected.png:
* platform/mac/fast/block/positioning/023-expected.png:
* platform/mac/fast/block/positioning/024-expected.png:
* platform/mac/fast/block/positioning/025-expected.png:
* platform/mac/fast/block/positioning/026-expected.png:
* platform/mac/fast/block/positioning/027-expected.png:
* platform/mac/fast/block/positioning/028-expected.png:
* platform/mac/fast/block/positioning/029-expected.png:
* platform/mac/fast/block/positioning/030-expected.png:
* platform/mac/fast/block/positioning/031-expected.png:
* platform/mac/fast/block/positioning/032-expected.png:
* platform/mac/fast/block/positioning/033-expected.png:
* platform/mac/fast/block/positioning/034-expected.png:
* platform/mac/fast/block/positioning/035-expected.png:
* platform/mac/fast/block/positioning/036-expected.png:
* platform/mac/fast/block/positioning/037-expected.png:
* platform/mac/fast/block/positioning/038-expected.png:
* platform/mac/fast/block/positioning/039-expected.png:
* platform/mac/fast/block/positioning/040-expected.png:
* platform/mac/fast/block/positioning/041-expected.png:
* platform/mac/fast/block/positioning/042-expected.png:
* platform/mac/fast/block/positioning/043-expected.png:
* platform/mac/fast/block/positioning/044-expected.png:
* platform/mac/fast/block/positioning/045-expected.png:
* platform/mac/fast/block/positioning/046-expected.png:
* platform/mac/fast/block/positioning/047-expected.checksum:
* platform/mac/fast/block/positioning/047-expected.png:
* platform/mac/fast/block/positioning/048-expected.png:
* platform/mac/fast/block/positioning/049-expected.png:
* platform/mac/fast/block/positioning/050-expected.png:
* platform/mac/fast/block/positioning/056-expected.txt:
* platform/mac/fast/block/positioning/061-expected.png:
* platform/mac/fast/block/positioning/062-expected.png:
* platform/mac/fast/block/positioning/auto/005-expected.txt:
* platform/mac/fast/block/positioning/auto/006-expected.txt:
* platform/mac/fast/block/positioning/auto/007-expected.png:
* platform/mac/fast/block/positioning/auto/vertical-lr/005-expected.txt:
* platform/mac/fast/block/positioning/auto/vertical-lr/006-expected.txt:
* platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.checksum:
* platform/mac/fast/block/positioning/auto/vertical-lr/007-expected.png:
* platform/mac/fast/block/positioning/auto/vertical-rl/005-expected.txt:
* platform/mac/fast/block/positioning/auto/vertical-rl/006-expected.txt:
* platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.checksum:
* platform/mac/fast/block/positioning/auto/vertical-rl/007-expected.png:
* platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.txt:
* platform/mac/fast/block/positioning/inline-block-relposition-expected.checksum:
* platform/mac/fast/block/positioning/inline-block-relposition-expected.png:
* platform/mac/fast/block/positioning/inline-block-relposition-expected.txt:
* platform/mac/fast/block/positioning/move-with-auto-width-expected.png:
* platform/mac/fast/block/positioning/negative-rel-position-expected.png:
* platform/mac/fast/block/positioning/relative-overconstrained-expected.png:
* platform/mac/fast/block/positioning/relative-overflow-block-expected.txt:
* platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.checksum: Added.
* platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.png: Added.
* platform/mac/fast/block/positioning/static-inline-position-dynamic-expected.txt: Added.
* platform/mac/fast/block/positioning/trailing-space-test-expected.checksum: Added.
* platform/mac/fast/block/positioning/trailing-space-test-expected.png: Added.
* platform/mac/fast/block/positioning/trailing-space-test-expected.txt: Added.
* platform/mac/fast/clip/001-expected.txt:
* platform/mac/fast/clip/004-expected.txt:
* platform/mac/fast/clip/006-expected.txt:
* platform/mac/fast/clip/007-expected.txt:
* platform/mac/fast/clip/008-expected.txt:
* platform/mac/fast/clip/009-expected.txt:
* platform/mac/fast/clip/010-expected.txt:
* platform/mac/fast/clip/011-expected.txt:
* platform/mac/fast/clip/012-expected.txt:
* platform/mac/fast/clip/013-expected.txt:
* platform/mac/fast/clip/014-expected.txt:
* platform/mac/fast/clip/nestedTransparencyClip-expected.txt:
* platform/mac/fast/clip/outline-overflowClip-expected.txt:
* platform/mac/fast/forms/input-appearance-preventDefault-expected.txt:
* platform/mac/fast/invalid/014-expected.txt:
* platform/mac/fast/layers/layer-visibility-expected.txt:
* platform/mac/fast/repaint/layout-state-scrolloffset-expected.txt:
* platform/mac/fast/repaint/layout-state-scrolloffset2-expected.txt:
* platform/mac/fast/repaint/layout-state-scrolloffset3-expected.txt:
* platform/mac/tables/mozilla/bugs/bug51140-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81992 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFix the GTK+ build until we can implement the new cross-platform
slewis@apple.com [Fri, 25 Mar 2011 21:21:17 +0000 (21:21 +0000)]
Fix the GTK+ build until we can implement the new cross-platform
FontPlatformData.h bits.

Patch by Martin Robinson <mrobinson@igalia.com> on 2011-03-25
* platform/graphics/FontPlatformData.h: Include the proper old font headers.
(WebCore::FontPlatformData::FontPlatformData): Eliminate GTK+ specific bits of this file
which reference our obsolete font implementation.
(WebCore::FontPlatformData::hash): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81991 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Martin Robinson <mrobinson@igalia.com>
mrobinson@webkit.org [Fri, 25 Mar 2011 21:13:54 +0000 (21:13 +0000)]
2011-03-25  Martin Robinson  <mrobinson@igalia.com>

        Fix the GTK+ build until we can implement the new cross-platform
        FontPlatformData.h bits.

        * platform/graphics/FontPlatformData.h: Include the proper old font headers.
        (WebCore::FontPlatformData::FontPlatformData): Eliminate GTK+ specific bits of this file
        which reference our obsolete font implementation.
        (WebCore::FontPlatformData::hash): Ditto.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81990 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Steve Falkenburg <sfalken@apple.com>
sfalken@apple.com [Fri, 25 Mar 2011 21:04:54 +0000 (21:04 +0000)]
2011-03-25  Steve Falkenburg  <sfalken@apple.com>

        Reviewed by Brian Weinstein.

        Microsoft Windows Presentation Foundation (WPF) plug-in complains about missing xpcom.dll
        https://bugs.webkit.org/show_bug.cgi?id=57119
        <rdar://problem/9054148>

        This plug-in from Microsoft links against xpcom.dll, which is a Firefox-specific DLL
        not available in WebKit. The plug-in is fairly widespread, since it was included in
        a Windows Update push at one point.

        * plugins/win/PluginPackageWin.cpp:
        (WebCore::PluginPackage::isPluginBlacklisted): Blacklist npwpf.dll.
2011-03-25  Steve Falkenburg  <sfalken@apple.com>

        Reviewed by Brian Weinstein.

        Microsoft Windows Presentation Foundation (WPF) plug-in complains about missing xpcom.dll
        https://bugs.webkit.org/show_bug.cgi?id=57119
        <rdar://problem/9054148>

        This plug-in from Microsoft links against xpcom.dll, which is a Firefox-specific DLL
        not available in WebKit. The plug-in is fairly widespread, since it was included in
        a Windows Update push at one point.

        * UIProcess/Plugins/win/PluginInfoStoreWin.cpp:
        (WebKit::PluginInfoStore::shouldUsePlugin): Blacklist npwpf.dll.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81989 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Tony Chang <tony@chromium.org>
tony@chromium.org [Fri, 25 Mar 2011 20:40:58 +0000 (20:40 +0000)]
2011-03-25  Tony Chang  <tony@chromium.org>

        Try to fix the chromium mac build.
        We used the mac FontPlatformData on chromium mac.

        * WebCore.gyp/WebCore.gyp:
        * WebCore.gypi:
        * platform/graphics/FontPlatformData.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81988 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 John Abd-El-Malek <jam@chromium.org>
jam@chromium.org [Fri, 25 Mar 2011 20:34:17 +0000 (20:34 +0000)]
2011-03-24  John Abd-El-Malek  <jam@chromium.org>

        Reviewed by Dimitri Glazkov.

        [chromium] Add setters for various client interfaces, and add WebSpellCheckClient
        https://bugs.webkit.org/show_bug.cgi?id=57070

        * public/WebSpellCheckClient.h: Added.
        (WebKit::WebSpellCheckClient::spellCheck):
        (WebKit::WebSpellCheckClient::requestCheckingOfText):
        (WebKit::WebSpellCheckClient::autoCorrectWord):
        (WebKit::WebSpellCheckClient::showSpellingUI):
        (WebKit::WebSpellCheckClient::isShowingSpellingUI):
        (WebKit::WebSpellCheckClient::updateSpellingUIWithMisspelledWord):
        (WebKit::WebSpellCheckClient::~WebSpellCheckClient):
        * public/WebView.h:
        * public/WebViewClient.h:
        * src/EditorClientImpl.cpp:
        (WebKit::EditorClientImpl::checkSpellingOfString):
        (WebKit::EditorClientImpl::requestCheckingOfString):
        (WebKit::EditorClientImpl::getAutoCorrectSuggestionForMisspelledWord):
        (WebKit::EditorClientImpl::updateSpellingUIWithMisspelledWord):
        (WebKit::EditorClientImpl::showSpellingUI):
        (WebKit::EditorClientImpl::spellingUIIsShowing):
        * src/WebViewImpl.cpp:
        (WebKit::WebViewImpl::setWebDevToolsAgentClient):
        (WebKit::WebViewImpl::setWebAutoFillClient):
        (WebKit::WebViewImpl::setWebSpellCheckClient):
        (WebKit::WebViewImpl::WebViewImpl):
        * src/WebViewImpl.h:
        (WebKit::WebViewImpl::spellCheckClient):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81987 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 25 Mar 2011 20:27:19 +0000 (20:27 +0000)]
2011-03-25  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Crash in debugger beneath MarkStack::drain @ me.com, ibm.com
        https://bugs.webkit.org/show_bug.cgi?id=57080
        <rdar://problem/8525907>

        * inspector/debugger/debugger-activation-crash-expected.txt: Added.
        * inspector/debugger/debugger-activation-crash.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81986 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 25 Mar 2011 20:08:17 +0000 (20:08 +0000)]
2011-03-25  Dimitri Glazkov  <dglazkov@chromium.org>

        Skip the test added in r81970 on WebKit2, because its harness doesn't
        yet support printing hooks.

        * platform/mac-wk2/Skipped: Added printing/page-count-layout-overflow.html.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81985 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoKick the build machines after r81977.
bfulgham@webkit.org [Fri, 25 Mar 2011 20:03:20 +0000 (20:03 +0000)]
Kick the build machines after r81977.

* win/tools/vsprops/common.vsprops:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81984 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Geoffrey Garen <ggaren@apple.com>
ggaren@apple.com [Fri, 25 Mar 2011 19:44:55 +0000 (19:44 +0000)]
2011-03-24  Geoffrey Garen  <ggaren@apple.com>

        Reviewed by Oliver Hunt.

        Crash in debugger beneath MarkStack::drain @ me.com, ibm.com
        https://bugs.webkit.org/show_bug.cgi?id=57080
        <rdar://problem/8525907>

        The crash was caused by changes in the executable after recompilation.

        The fix is for the activation to copy the data it needs instead of
        relying on the data in the executable.

        SunSpider and v8 report no change.

        * runtime/Arguments.h:
        (JSC::JSActivation::copyRegisters): Use our own data members instead of
        reading data out of the executable.

        * runtime/JSActivation.cpp:
        (JSC::JSActivation::JSActivation): Initialize our data members.

        (JSC::JSActivation::markChildren):
        (JSC::JSActivation::symbolTableGet):
        (JSC::JSActivation::symbolTablePut):
        (JSC::JSActivation::getOwnPropertyNames):
        (JSC::JSActivation::symbolTablePutWithAttributes):
        (JSC::JSActivation::isDynamicScope):
        (JSC::JSActivation::argumentsGetter): Use our own data members instead of
        reading data out of the executable.

        * runtime/JSActivation.h: Added new data members to track data previously
        tracked by the executable. Since I've removed the executable pointer,
        on a 64bit system, I've only made activations bigger by an int.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81983 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Tony Chang <tony@chromium.org>
tony@chromium.org [Fri, 25 Mar 2011 19:41:23 +0000 (19:41 +0000)]
2011-03-25  Tony Chang  <tony@chromium.org>

        Build fix:
        have chromium and qt use the correct FontPlatformData.h
        https://bugs.webkit.org/show_bug.cgi?id=57115

        * platform/graphics/FontPlatformData.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81982 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFix for https://bugs.webkit.org/show_bug.cgi?id=57057 Overlay scrollbars in overflow
bdakin@apple.com [Fri, 25 Mar 2011 19:29:35 +0000 (19:29 +0000)]
Fix for https://bugs.webkit.org/show_bug.cgi?id=57057 Overlay scrollbars in overflow
areas paint behind positive z-index content
-and corresponding-
<rdar://problem/9070500>

Reviewed by Dave Hyatt.

Since overlay scrollbars don't clip the scrollable content like other scrollbars do,
the only way to get them to paint on top of all possible scrollable content is to
make them paint on top of everything. To do this, this patch adds a second trip
through the layer tree if it contains overlay scrollbars that need painting.

After calling paint() on the rootLayer, call paintOverlayScrollers() if
containsDirtyOverlayScrollbars() is true.
* page/FrameView.cpp:
(WebCore::FrameView::paintContents):

RenderLayer has two new member variable. m_containsDirtyOverlayScrollbars is a bool
that is set on the root layer when it has child layers that need overlay scrollbars
to be painted. m_cachedOverlayScrollbarOffset is an IntPoint to cache the tx and ty
of the overlay scrollbars on the first (normal) pass through the layer tree. This
prevents us from having to re-enter the render tree during the second (overlay-only)
pass. Finally, there is also a new paint flag: PaintLayerPaintingOverlayScrollbars.
* rendering/RenderLayer.h:
(WebCore::RenderLayer::containsDirtyOverlayScrollbars):
(WebCore::RenderLayer::setContainsDirtyOverlayScrollbars):
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::paintOverflowControls):
(WebCore::RenderLayer::paintOverlayScrollbars):
(WebCore::RenderLayer::paintLayer):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81981 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWebKit2: Need to be able to set and get the Cookie Storage Policy.
jberlin@webkit.org [Fri, 25 Mar 2011 19:16:27 +0000 (19:16 +0000)]
WebKit2: Need to be able to set and get the Cookie Storage Policy.
https://bugs.webkit.org/show_bug.cgi?id=50780

Reviewed by Sam Weinig.

Source/WebCore:

* platform/network/cf/CookieStorageCFNet.cpp:
(WebCore::privateCookieStorage):
Rename privateBrowsingCookieStorage to privateCookieStorage.
(WebCore::currentCookieStorage):
Ditto.
(WebCore::setCurrentCookieStorage):
Ditto.
(WebCore::setCookieStoragePrivateBrowsingEnabled):
Ditto.
(WebCore::defaultCookieStorage):
Return the default cookie storage.
(WebCore::privateBrowsingCookieStorage):
Return privateCookieStorage().get()
* platform/network/cf/CookieStorageCFNet.h:

Source/WebKit2:

* Shared/HTTPCookieAcceptPolicy.h: Added.

* UIProcess/API/C/WKAPICast.h:
(WebKit::toHTTPCookieAcceptPolicy):
(WebKit::toAPI):

* UIProcess/API/C/WKCookieManager.cpp:
(WKCookieManagerSetHTTPCookieAcceptPolicy):
Call through to WebCookieManagerProxy.
(WKCookieManagerGetHTTPCookieAcceptPolicy):
Ditto.
* UIProcess/API/C/WKCookieManager.h:

* UIProcess/WebCookieManagerProxy.cpp:
(WebKit::WebCookieManagerProxy::invalidate):
Invalidate the get http cookie accept policy callbacks.
(WebKit::WebCookieManagerProxy::setHTTPCookieAcceptPolicy):
Send a message to the Web Process with the new value.
(WebKit::WebCookieManagerProxy::getHTTPCookieAcceptPolicy):
Keep track of the callback and send a message to the Web Process.
(WebKit::WebCookieManagerProxy::didGetHTTPCookieAcceptPolicy):
Invoke the callback.
* UIProcess/mac/WebCookieManagerProxyMac.mm: Added.
(WebKit::WebCookieManagerProxy::persistHTTPCookieAcceptPolicy):
On Mac, also set the policy in the UI Process because the sandboxed Web Process cannot
persist the policy.
* UIProcess/WebCookieManagerProxy.h:
* UIProcess/WebCookieManagerProxy.messages.in:

* WebKit2.pri:
* WebKit2.pro:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:
* win/WebKit2Common.vsprops:

* WebProcess/Cookies/WebCookieManager.cpp:
(WebKit::WebCookieManager::setHTTPCookieAcceptPolicy):
Call platformSetHTTPCookieAcceptPolicy.
(WebKit::WebCookieManager::getHTTPCookieAcceptPolicy):
Send the result of platformGetHTTPCookieAcceptPolicy to the UI Process.
* WebProcess/Cookies/WebCookieManager.h:
* WebProcess/Cookies/WebCookieManager.messages.in:

* WebProcess/Cookies/cf: Added.
* WebProcess/Cookies/cf/WebCookieManagerCFNet.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
Set the policy on both the default cookie storage and any Private Browsing cookie storage.
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
* WebProcess/Cookies/mac: Added.
* WebProcess/Cookies/mac/WebCookieManagerMac.mm: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
Set the policy on the default cookie storage and add a FIXME to set it on any Private
Browsing cookie storage.
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):

* WebProcess/Cookies/gtk: Added.
* WebProcess/Cookies/gtk/WebCookieManagerGtk.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):
* WebProcess/Cookies/qt: Added.
* WebProcess/Cookies/qt/WebCookieManagerQt.cpp: Added.
(WebKit::WebCookieManager::platformSetHTTPCookieAcceptPolicy):
(WebKit::WebCookieManager::platformGetHTTPCookieAcceptPolicy):

Tools:

Add a test for getting and setting the HTTP Cookie Accept Policy in WebKit2.

The test is named "CookieManager" so that we can eventually exercise more of the
CookieManager functionality in the test.

* TestWebKitAPI/Tests/WebKit2/CookieManager.cpp: Added.
(TestWebKitAPI::didGetTestHTTPCookieAcceptPolicy):
Assert that the policy returned is equal to the policy set in
didGetUserHTTPCookieAcceptPolicy, and then restore the user's policy.
(TestWebKitAPI::didGetUserHTTPCookieAcceptPolicy):
Set the policy to something different than the user's policy and get the policy again.
(TestWebKitAPI::didFinishLoadForFrame):
Get the user's policy so that it can be restored at the end of the test.
(TestWebKitAPI::TEST):
Load about:blank so that the Web Process gets instatiated (needed to get the
CookieManager).

* TestWebKitAPI/win/TestWebKitAPI.vcproj:
Add CookieManager.cpp.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81980 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Cary Clark <caryclark@google.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 19:12:23 +0000 (19:12 +0000)]
2011-03-25  Cary Clark  <caryclark@google.com>

        Reviewed by Dimitri Glazkov.

        Add CGBitmapContext.h include to WebViewImpl.cpp
        https://bugs.webkit.org/show_bug.cgi?id=57097

        No tests. Exposes no new functionality.

        * src/WebViewImpl.cpp:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81979 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Emil A Eklund <eae@chromium.org>
eae@chromium.org [Fri, 25 Mar 2011 19:08:27 +0000 (19:08 +0000)]
2011-03-25  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        Text field "onchange" event is triggered if actual value unchanged
        https://bugs.webkit.org/show_bug.cgi?id=36314

        Add tests for text field change events.

        * fast/events/onchange-text-form-field-expected.txt: Added.
        * fast/events/onchange-text-form-field.html: Added.
2011-03-25  Emil A Eklund  <eae@chromium.org>

        Reviewed by Dimitri Glazkov.

        Text field "onchange" event is triggered if actual value unchanged
        https://bugs.webkit.org/show_bug.cgi?id=36314

        Change RenderTextControl::subtreeHasChanged to only return true if the
        subtree has changed since the last event was triggered.

        * html/HTMLFormControlElement.cpp:
        (WebCore::HTMLTextFormControlElement::insertedIntoDocument):
        (WebCore::HTMLTextFormControlElement::dispatchFormControlChangeEvent):
        * html/HTMLFormControlElement.h:
        (WebCore::HTMLTextFormControlElement::setTextAsOfLastFormControlChangeEvent):
        * html/HTMLInputElement.cpp:
        (WebCore::HTMLInputElement::setChecked):
        (WebCore::HTMLInputElement::setValue):
        * html/HTMLTextAreaElement.cpp:
        (WebCore::HTMLTextAreaElement::setValue):
        (WebCore::HTMLTextAreaElement::setNonDirtyValue):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81978 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoClean up FontPlatformData structure so that a single implementation
bfulgham@webkit.org [Fri, 25 Mar 2011 18:59:07 +0000 (18:59 +0000)]
Clean up FontPlatformData structure so that a single implementation
is used across all ports.  This first patch works for the Windows
build (both CG and WinCairo), and Cocoa.

Reviewed by David Hyatt.

* WebCore.vcproj/WebCore.vcproj:
* platform/graphics/FontPlatformData.cpp: Added.
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::operator=):
* platform/graphics/FontPlatformData.h: Added.
(WebCore::toCTFontRef):
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::hfont):
(WebCore::FontPlatformData::useGDI):
(WebCore::FontPlatformData::font):
(WebCore::FontPlatformData::cgFont):
(WebCore::FontPlatformData::size):
(WebCore::FontPlatformData::setSize):
(WebCore::FontPlatformData::syntheticBold):
(WebCore::FontPlatformData::syntheticOblique):
(WebCore::FontPlatformData::isColorBitmapFont):
(WebCore::FontPlatformData::orientation):
(WebCore::FontPlatformData::textOrientation):
(WebCore::FontPlatformData::widthVariant):
(WebCore::FontPlatformData::setOrientation):
(WebCore::FontPlatformData::scaledFont):
(WebCore::FontPlatformData::fontFace):
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):
(WebCore::FontPlatformData::isHashTableDeletedValue):
(WebCore::FontPlatformData::hashTableDeletedFontValue):
* platform/graphics/cg/FontPlatformData.h: Removed.
* platform/graphics/cocoa/FontPlatformData.h: Removed.
* platform/graphics/cocoa/FontPlatformDataCocoa.mm:
(WebCore::~FontPlatformData):
(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
* platform/graphics/win/FontPlatformDataCGWin.cpp:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::~FontPlatformData):
(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
* platform/graphics/win/FontPlatformDataCairoWin.cpp:
(WebCore::FontPlatformData::FontPlatformData):
(WebCore::FontPlatformData::~FontPlatformData):
(WebCore::FontPlatformData::platformDataInit):
(WebCore::FontPlatformData::platformDataAssign):
* platform/graphics/win/FontPlatformDataWin.cpp:
(WebCore::FontPlatformData::FontPlatformData):
* platform/graphics/win/cairo/FontPlatformData.h: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81977 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoWebsockets tests sometimes time out on apple-windows-5
jberlin@webkit.org [Fri, 25 Mar 2011 18:50:51 +0000 (18:50 +0000)]
Websockets tests sometimes time out on apple-windows-5
https://bugs.webkit.org/show_bug.cgi?id=55579

Unreviewed, skipping all the websocket tests on Windows to get the bots green.

* platform/win/Skipped:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81976 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoREGRESSION(r79227): CFURLCache not initialized correctly in WebKit2
bweinstein@apple.com [Fri, 25 Mar 2011 18:48:00 +0000 (18:48 +0000)]
REGRESSION(r79227): CFURLCache not initialized correctly in WebKit2
https://bugs.webkit.org/show_bug.cgi?id=57109
<rdar://problem/9184590>

Reviewed by Alexey Proskuryakov.

Check for a trailing Windows path separator, not a Unix path separator.

* UIProcess/win/WebContextWin.cpp:
(WebKit::WebContext::platformInitializeWebProcess):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81975 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoPasteboard data's RTF data doesn't always include URLs via NSLinkAttributeName.
enrica@apple.com [Fri, 25 Mar 2011 18:47:45 +0000 (18:47 +0000)]
Pasteboard data's RTF data doesn't always include URLs via NSLinkAttributeName.
https://bugs.webkit.org/show_bug.cgi?id=57107
<rdar://problem/9084267>

Reviewed by Oliver Hunt.

If the selection is at the beginning of content inside an anchor tag
we move the selection start to include the anchor.

* platform/mac/PasteboardMac.mm:
(WebCore::Pasteboard::writeSelection): Modified to change the selection
start according to the new rule.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81974 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Adam Klein <adamk@chromium.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 18:26:16 +0000 (18:26 +0000)]
2011-03-25  Adam Klein  <adamk@chromium.org>

        Reviewed by David Levin.

        [chromium] Remove deprecated overload of openFileSystem for workers
        https://bugs.webkit.org/show_bug.cgi?id=57062

        * public/WebCommonWorkerClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81972 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Fri, 25 Mar 2011 17:55:03 +0000 (17:55 +0000)]
2011-03-25  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: refactor Network domain's frame tree API
        https://bugs.webkit.org/show_bug.cgi?id=57103

        * inspector/Inspector.json:
        * inspector/InspectorResourceAgent.cpp:
        (WebCore::buildObjectForFrameResource):
        (WebCore::buildObjectForCachedResource):
        (WebCore::InspectorResourceAgent::willSendRequest):
        (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
        (WebCore::buildObjectForFrame):
        (WebCore::buildObjectForFrameTree):
        (WebCore::InspectorResourceAgent::didCommitLoad):
        (WebCore::InspectorResourceAgent::enable):
        * inspector/front-end/NetworkManager.js:
        (WebInspector.NetworkManager.prototype.requestContent):
        (WebInspector.NetworkDispatcher):
        (WebInspector.NetworkDispatcher.prototype.willSendRequest):
        (WebInspector.NetworkDispatcher.prototype.didReceiveResponse):
        (WebInspector.NetworkDispatcher.prototype.didLoadResourceFromMemoryCache):
        (WebInspector.NetworkDispatcher.prototype.frameDetachedFromParent):
        (WebInspector.NetworkDispatcher.prototype.didCommitLoadForFrame):
        (WebInspector.NetworkDispatcher.prototype.didCreateWebSocket):
        (WebInspector.NetworkDispatcher.prototype._appendRedirect):
        (WebInspector.NetworkDispatcher.prototype._addFramesRecursively):
        (WebInspector.NetworkDispatcher.prototype._createResource):
        * inspector/front-end/ResourceTreeModel.js:
        (WebInspector.ResourceTreeModel.prototype.addOrUpdateFrame):
        (WebInspector.ResourceTreeModel.prototype.didCommitLoadForFrame):
        (WebInspector.ResourceTreeModel.prototype._clearChildFramesAndResources):
        (WebInspector.ResourceTreeModel.prototype._clearResources):
        * inspector/front-end/ResourcesPanel.js:
        (WebInspector.ResourcesPanel.prototype.addOrUpdateFrame):
        (WebInspector.ResourcesPanel.prototype.addResourceToFrame):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81971 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 25 Mar 2011 17:49:11 +0000 (17:49 +0000)]
2011-03-25  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Adele Peterson.

        REGRESSION(r77257): Only first page of a document is printed
        https://bugs.webkit.org/show_bug.cgi?id=56958

        * printing/page-count-layout-overflow-expected.txt: Added.
        * printing/page-count-layout-overflow.html: Added.
2011-03-25  Dave Hyatt  <hyatt@apple.com>

        Reviewed by Adele Peterson.

        REGRESSION(r77257): Only first page of a document is printed
        https://bugs.webkit.org/show_bug.cgi?id=56958

        Test: printing/page-count-layout-overflow.html

        * page/FrameView.cpp:
        (WebCore::FrameView::forceLayoutForPagination): Moved clearing of overflow
            to the right place.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81970 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRemove duplicate entry from JavaScriptCore.exp
ddkilzer@apple.com [Fri, 25 Mar 2011 17:32:00 +0000 (17:32 +0000)]
Remove duplicate entry from JavaScriptCore.exp

JSC::createStackOverflowError(JSC::ExecState*) was originally
exported in r60057, then duplicated in r60392.

* JavaScriptCore.exp: Removed duplicate entry.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81969 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
benjamin.poulain@nokia.com [Fri, 25 Mar 2011 17:25:34 +0000 (17:25 +0000)]
[Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
https://bugs.webkit.org/show_bug.cgi?id=57087

Reviewed by Andreas Kling.

Use explicit conversion for string to avoid depending on the default codec
installed by the user code.

* Platform/qt/SharedMemoryQt.cpp:
(WebKit::SharedMemory::create):
* Shared/Plugins/Netscape/x11/NetscapePluginModuleX11.cpp:
(WebKit::initializeGTK):
* UIProcess/API/qt/tests/qgraphicswkview/tst_qgraphicswkview.cpp:
(tst_QGraphicsWKView::loadEmptyPage):
(tst_QGraphicsWKView::loadEmptyUrl):
* UIProcess/API/qt/tests/qwkpage/tst_qwkpage.cpp:
(tst_QWKPage::loadEmptyUrl):
* UIProcess/Launcher/qt/ProcessLauncherQt.cpp:
(WebKit::ProcessLauncher::launchProcess):
* WebProcess/Plugins/Netscape/x11/NetscapePluginX11.cpp:
(WebKit::getPluginDisplay):
* WebProcess/qt/WebProcessMainQt.cpp:
(WebKit::EnvHttpProxyFactory::initializeFromEnvironment):
(WebKit::WebProcessMainQt):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81968 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
benjamin.poulain@nokia.com [Fri, 25 Mar 2011 17:21:41 +0000 (17:21 +0000)]
[Qt] QtWebKit will not compile with QT_ASCII_CAST_WARNINGS enabled
https://bugs.webkit.org/show_bug.cgi?id=57087

Reviewed by Andreas Kling.

Use explicit conversion for string to avoid depending on the default codec
installed by the user code.

* bridge/qt/qt_pixmapruntime.cpp:
(JSC::Bindings::QtPixmapToDataUrlMethod::invoke):
(JSC::Bindings::QtPixmapInstance::valueOf):
* platform/qt/LanguageQt.cpp:
(WebCore::platformDefaultLanguage):
* platform/qt/PasteboardQt.cpp:
(WebCore::Pasteboard::writeSelection):
* plugins/qt/PluginPackageQt.cpp:
(WebCore::initializeGtk):
* plugins/qt/PluginViewQt.cpp:
(WebCore::getPluginDisplay):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81967 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoCorrect project file missing $(WebKitVSPropsRedirectionDir)s
bfulgham@webkit.org [Fri, 25 Mar 2011 16:28:26 +0000 (16:28 +0000)]
Correct project file missing $(WebKitVSPropsRedirectionDir)s
after r81924.

* win/WebKit2.vcproj: Restore lost $(WebKitVSPropsRedirectionDir)

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81966 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Chang Shu <cshu@webkit.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 16:21:30 +0000 (16:21 +0000)]
2011-03-25  Chang Shu  <cshu@webkit.org>

        Reviewed by Ryosuke Niwa.

        rename Node::isContentEditable and all call sites to rendererIsEditable
        https://bugs.webkit.org/show_bug.cgi?id=54290

        This is part of the effort to separate JS API HTMLElement isContentEditable from
        internal Node::rendererIsEditable.

        Code refactoring. No new tests.

        * accessibility/AccessibilityRenderObject.cpp:
        (WebCore::AccessibilityRenderObject::isReadOnly):
        (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
        * dom/Document.cpp:
        (WebCore::acceptsEditingFocus):
        * dom/Node.cpp:
        (WebCore::Node::rendererIsEditable):
        (WebCore::Node::shouldUseInputMethod):
        (WebCore::Node::canStartSelection):
        (WebCore::Node::rootEditableElement):
        * dom/Node.h:
        (WebCore::Node::isContentEditable):
        (WebCore::Node::rendererIsEditable):
        (WebCore::Node::rendererIsRichlyEditable):
        * dom/Position.cpp:
        (WebCore::nextRenderedEditable):
        (WebCore::previousRenderedEditable):
        (WebCore::Position::atEditingBoundary):
        (WebCore::Position::parentEditingBoundary):
        (WebCore::Position::upstream):
        (WebCore::Position::downstream):
        (WebCore::Position::isCandidate):
        * dom/PositionIterator.cpp:
        (WebCore::PositionIterator::isCandidate):
        * editing/AppendNodeCommand.cpp:
        (WebCore::AppendNodeCommand::AppendNodeCommand):
        (WebCore::AppendNodeCommand::doApply):
        (WebCore::AppendNodeCommand::doUnapply):
        * editing/ApplyStyleCommand.cpp:
        (WebCore::containsNonEditableRegion):
        (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
        (WebCore::ApplyStyleCommand::removeInlineStyleFromElement):
        (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
        * editing/CompositeEditCommand.cpp:
        (WebCore::CompositeEditCommand::breakOutOfEmptyListItem):
        * editing/DeleteButtonController.cpp:
        (WebCore::isDeletableElement):
        (WebCore::enclosingDeletableElement):
        * editing/DeleteFromTextNodeCommand.cpp:
        (WebCore::DeleteFromTextNodeCommand::doApply):
        (WebCore::DeleteFromTextNodeCommand::doUnapply):
        * editing/DeleteSelectionCommand.cpp:
        (WebCore::DeleteSelectionCommand::removeNode):
        * editing/Editor.cpp:
        (WebCore::Editor::canDeleteRange):
        (WebCore::Editor::markMisspellingsOrBadGrammar):
        (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
        * editing/EditorCommand.cpp:
        (WebCore::verticalScrollDistance):
        * editing/FormatBlockCommand.cpp:
        (WebCore::enclosingBlockToSplitTreeTo):
        * editing/IndentOutdentCommand.cpp:
        (WebCore::IndentOutdentCommand::outdentParagraph):
        * editing/InsertIntoTextNodeCommand.cpp:
        (WebCore::InsertIntoTextNodeCommand::doApply):
        (WebCore::InsertIntoTextNodeCommand::doUnapply):
        * editing/InsertNodeBeforeCommand.cpp:
        (WebCore::InsertNodeBeforeCommand::InsertNodeBeforeCommand):
        (WebCore::InsertNodeBeforeCommand::doApply):
        (WebCore::InsertNodeBeforeCommand::doUnapply):
        * editing/JoinTextNodesCommand.cpp:
        (WebCore::JoinTextNodesCommand::doApply):
        (WebCore::JoinTextNodesCommand::doUnapply):
        * editing/MergeIdenticalElementsCommand.cpp:
        (WebCore::MergeIdenticalElementsCommand::doApply):
        (WebCore::MergeIdenticalElementsCommand::doUnapply):
        * editing/RemoveNodeCommand.cpp:
        (WebCore::RemoveNodeCommand::doApply):
        (WebCore::RemoveNodeCommand::doUnapply):
        * editing/ReplaceSelectionCommand.cpp:
        (WebCore::ReplacementFragment::ReplacementFragment):
        * editing/SelectionController.cpp:
        (WebCore::SelectionController::selectFrameElementInParentIfFullySelected):
        (WebCore::SelectionController::setSelectionFromNone):
        * editing/SplitElementCommand.cpp:
        (WebCore::SplitElementCommand::executeApply):
        (WebCore::SplitElementCommand::doUnapply):
        * editing/SplitTextNodeCommand.cpp:
        (WebCore::SplitTextNodeCommand::doApply):
        (WebCore::SplitTextNodeCommand::doUnapply):
        (WebCore::SplitTextNodeCommand::doReapply):
        * editing/SplitTextNodeContainingElementCommand.cpp:
        (WebCore::SplitTextNodeContainingElementCommand::doApply):
        * editing/VisiblePosition.cpp:
        (WebCore::VisiblePosition::canonicalPosition):
        * editing/WrapContentsInDummySpanCommand.cpp:
        (WebCore::WrapContentsInDummySpanCommand::doUnapply):
        (WebCore::WrapContentsInDummySpanCommand::doReapply):
        * editing/htmlediting.cpp:
        (WebCore::highestEditableRoot):
        (WebCore::lowestEditableAncestor):
        (WebCore::isEditablePosition):
        (WebCore::isRichlyEditablePosition):
        (WebCore::firstEditablePositionAfterPositionInRoot):
        (WebCore::extendRangeToWrappingNodes):
        (WebCore::enclosingNodeWithTag):
        (WebCore::enclosingNodeOfType):
        (WebCore::highestEnclosingNodeOfType):
        (WebCore::canMergeLists):
        * editing/visible_units.cpp:
        (WebCore::previousLeafWithSameEditability):
        (WebCore::previousLinePosition):
        (WebCore::nextLeafWithSameEditability):
        (WebCore::nextLinePosition):
        (WebCore::startOfParagraph):
        (WebCore::endOfParagraph):
        * html/HTMLAnchorElement.cpp:
        (WebCore::HTMLAnchorElement::supportsFocus):
        (WebCore::HTMLAnchorElement::defaultEventHandler):
        (WebCore::HTMLAnchorElement::setActive):
        (WebCore::HTMLAnchorElement::canStartSelection):
        (WebCore::HTMLAnchorElement::treatLinkAsLiveForEventType):
        * html/HTMLBodyElement.cpp:
        (WebCore::HTMLBodyElement::supportsFocus):
        * html/HTMLElement.cpp:
        (WebCore::HTMLElement::supportsFocus):
        (WebCore::HTMLElement::isContentEditable):
        (WebCore::HTMLElement::contentEditable):
        * html/HTMLElement.h:
        * page/DragController.cpp:
        (WebCore::DragController::operationForLoad):
        (WebCore::DragController::canProcessDrag):
        * page/EventHandler.cpp:
        (WebCore::EventHandler::handleMouseReleaseEvent):
        (WebCore::EventHandler::selectCursor):
        * page/FocusController.cpp:
        (WebCore::relinquishesEditingFocus):
        * rendering/HitTestResult.cpp:
        (WebCore::HitTestResult::isContentEditable):
        * rendering/RenderBlock.cpp:
        (WebCore::positionForPointRespectingEditingBoundaries):
        (WebCore::RenderBlock::hasLineIfEmpty):
        * rendering/RenderBlockLineLayout.cpp:
        (WebCore::RenderBlock::addOverflowFromInlineChildren):
        * rendering/RenderBox.cpp:
        (WebCore::RenderBox::canBeProgramaticallyScrolled):
        * rendering/RenderObject.cpp:
        (WebCore::RenderObject::createVisiblePosition):
        * rendering/RootInlineBox.cpp:
        (WebCore::isEditableLeaf):
        * svg/SVGAElement.cpp:
        (WebCore::SVGAElement::supportsFocus):
2011-03-25  Chang Shu  <cshu@webkit.org>

        Reviewed by Ryosuke Niwa.

        rename Node::isContentEditable and all call sites to rendererIsEditable
        https://bugs.webkit.org/show_bug.cgi?id=54290

        This is part of the effort to separate JS API HTMLElement isContentEditable from
        internal Node::rendererIsEditable.

        * src/WebNode.cpp:
        (WebKit::WebNode::isContentEditable):
        * src/WebViewImpl.cpp:
        (WebKit::WebViewImpl::setFocus):
        (WebKit::WebViewImpl::setComposition):
        (WebKit::WebViewImpl::confirmComposition):
2011-03-25  Chang Shu  <cshu@webkit.org>

        Reviewed by Ryosuke Niwa.

        rename Node::isContentEditable and all call sites to rendererIsEditable
        https://bugs.webkit.org/show_bug.cgi?id=54290

        This is part of the effort to separate JS API HTMLElement isContentEditable from
        internal Node::rendererIsEditable.

        * WebCoreSupport/EditorClientHaiku.cpp:
        (WebCore::EditorClientHaiku::handleKeyboardEvent):
2011-03-25  Chang Shu  <cshu@webkit.org>

        Reviewed by Ryosuke Niwa.

        rename Node::isContentEditable and all call sites to rendererIsEditable
        https://bugs.webkit.org/show_bug.cgi?id=54290

        This is part of the effort to separate JS API HTMLElement isContentEditable from
        internal Node::rendererIsEditable.

        * WebCoreSupport/EditorClientQt.cpp:
        (WebCore::EditorClientQt::handleKeyboardEvent):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81965 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Maciej Stachowiak <mjs@apple.com>
mjs@apple.com [Fri, 25 Mar 2011 16:11:57 +0000 (16:11 +0000)]
2011-03-25  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Antti Koivisto.

        Crash when a wbr element is inserted inside mroot
        https://bugs.webkit.org/show_bug.cgi?id=56352

        * mathml/wbr-in-mroot-crash-expected.txt: Added.
        * mathml/wbr-in-mroot-crash.html: Added.
2011-03-25  Maciej Stachowiak  <mjs@apple.com>

        Reviewed by Antti Koivisto.

        Crash when a wbr element is inserted inside mroot
        https://bugs.webkit.org/show_bug.cgi?id=56352

        Test: mathml/wbr-in-mroot-crash.html

        * rendering/mathml/RenderMathMLRoot.cpp:
        (WebCore::RenderMathMLRoot::layout): Look for the first box model child of the first
        child, instead of just assuming.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81964 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[Qt] MSVC Build Error - need to link advapi32.lib for jsc.exe
benjamin.poulain@nokia.com [Fri, 25 Mar 2011 15:28:09 +0000 (15:28 +0000)]
[Qt] MSVC Build Error - need to link advapi32.lib for jsc.exe
https://bugs.webkit.org/show_bug.cgi?id=56098

Patch by Jarred Nicholls <jarred@sencha.com> on 2011-03-25
Reviewed by Ariya Hidayat.

Need to link advapi32.lib for jsc.exe since wtf/OSRandomSource.cpp uses the Win32 Crypto API

* jsc.pro:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81963 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Vsevolod Vlasov <vsevik@chromium.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 15:10:32 +0000 (15:10 +0000)]
2011-03-25  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        XML Viewer: extensions can't render original XML
        https://bugs.webkit.org/show_bug.cgi?id=56263

        Added source xml to transformed document, renamed onload function.

        * fast/css/dumpAsText/xml-stylesheet-pi-not-in-prolog-expected.txt:
        * fast/encoding/dumpAsText/utf-16-no-bom-expected.txt:
        * http/tests/xmlviewer/dumpAsText/wml-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xlink-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-charset-cp1251-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-charset-utf8-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xmlviewer-expected.txt:
        * http/tests/xmlviewer/dumpAsText/xul-expected.txt:
        * platform/chromium-linux/http/tests/xmlviewer/dumpAsText/wml-expected.txt:
        * platform/chromium/http/tests/xmlviewer/dumpAsText/mathml-expected.txt:
        * svg/hixie/error/dumpAsText/004-expected.txt:
        * svg/hixie/error/dumpAsText/005-expected.txt:
        * xmlviewer/extensions-api-expected.txt: Added.
        * xmlviewer/extensions-api.html_disabled: Added.
        * xmlviewer/resources/sample.xml: Added.
2011-03-25  Vsevolod Vlasov  <vsevik@chromium.org>

        Reviewed by Pavel Feldman.

        XML Viewer: extensions can't render original XML
        https://bugs.webkit.org/show_bug.cgi?id=56263

        Added source xml to transformed document, renamed onload function.

        * xml/XMLTreeViewer.cpp:
        (WebCore::XMLTreeViewer::transformDocumentToTreeView):
        * xml/XMLViewer.xsl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81962 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Benjamin Poulain <benjamin.poulain@nokia.com>
benjamin.poulain@nokia.com [Fri, 25 Mar 2011 15:02:31 +0000 (15:02 +0000)]
2011-03-25  Benjamin Poulain  <benjamin.poulain@nokia.com>

        Reviewed by Andreas Kling.

        [Qt] Get rid of the invalid string conversion with ::fromAscii()
        https://bugs.webkit.org/show_bug.cgi?id=57102

        Replace ::fromAscii() with ::fromLatin1() to make sure the codec does not depend on the user code.

        * platform/network/qt/QNetworkReplyHandler.cpp:
        (WebCore::QNetworkReplyHandler::sendResponseIfNeeded):
        * platform/qt/CookieJarQt.cpp:
        (WebCore::cookies):
        (WebCore::cookieRequestHeaderFieldValue):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81961 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Leo Yang <leo.yang@torchmobile.com.cn>
commit-queue@webkit.org [Fri, 25 Mar 2011 14:17:02 +0000 (14:17 +0000)]
2011-03-25  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Dirk Schulze.

        SVG <use> element performance improvement
        https://bugs.webkit.org/show_bug.cgi?id=57077

        Add a manual test case which is from
        http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg
        for svg <use> element performance test.

        * PageLoad/svg/files/Sierpinski_carpet_6.svg: Added.
        * PageLoad/svg/svg.pltsuite:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81960 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Alexis Menard <alexis.menard@openbossa.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 14:15:16 +0000 (14:15 +0000)]
2011-03-25  Alexis Menard  <alexis.menard@openbossa.org>

        Reviewed by Andreas Kling.

        [Qt] The keyboard shortcuts during fullscreen playback do not work.
        https://bugs.webkit.org/show_bug.cgi?id=57095

        We need to explicitely set the focus on the widget in order to receive the keyboard events.

        * WebCoreSupport/FullScreenVideoWidget.cpp:
        (WebCore::FullScreenVideoWidget::show):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81959 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoRemove no-longer-necessary Windows results
aroben@apple.com [Fri, 25 Mar 2011 13:58:15 +0000 (13:58 +0000)]
Remove no-longer-necessary Windows results

r81925 made Windows match Mac on this test. New Windows results were checked in, but they
were generated using the wrong fonts. Since we match Mac now, we don't need Windows-specific
results at all.

* platform/win/fast/css/percentage-non-integer-expected.checksum: Removed.
* platform/win/fast/css/percentage-non-integer-expected.png: Removed.
* platform/win/fast/css/percentage-non-integer-expected.txt: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81958 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Sheriff Bot <webkit.review.bot@gmail.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 13:39:16 +0000 (13:39 +0000)]
2011-03-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81953.
        http://trac.webkit.org/changeset/81953
        https://bugs.webkit.org/show_bug.cgi?id=57096

        "inspector test breakage: part 2/2" (Requested by apavlov on
        #webkit).

        * inspector/styles/get-set-stylesheet-text-expected.txt: Removed.
        * inspector/styles/get-set-stylesheet-text.html: Removed.
        * inspector/styles/styles-new-API.html:
2011-03-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81953.
        http://trac.webkit.org/changeset/81953
        https://bugs.webkit.org/show_bug.cgi?id=57096

        "inspector test breakage: part 2/2" (Requested by apavlov on
        #webkit).

        * inspector/Inspector.json:
        * inspector/InspectorCSSAgent.cpp:
        (WebCore::InspectorCSSAgent::getAllStyles):
        * inspector/InspectorCSSAgent.h:
        * inspector/InspectorStyleSheet.cpp:
        (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
        * inspector/InspectorStyleSheet.h:
        * inspector/front-end/AuditRules.js:
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
        * inspector/front-end/CSSStyleModel.js:
        (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
        (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
        (WebInspector.CSSStyleModel.prototype._onRevert):
        (WebInspector.CSSStyleSheet):
        (WebInspector.CSSStyleSheet.prototype.setText):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81957 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Sheriff Bot <webkit.review.bot@gmail.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 12:48:17 +0000 (12:48 +0000)]
2011-03-25  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81954.
        http://trac.webkit.org/changeset/81954
        https://bugs.webkit.org/show_bug.cgi?id=57094

        "inspector test breakage: part 1/2" (Requested by apavlov on
        #webkit).

        * inspector/styles/resources/get-set-stylesheet-text.css: Removed.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81956 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Mikhail Naganov <mnaganov@chromium.org>
mnaganov@chromium.org [Fri, 25 Mar 2011 12:00:42 +0000 (12:00 +0000)]
2011-03-25  Mikhail Naganov  <mnaganov@chromium.org>

        Roll forward Chromium deps to r79379 to pick up V8 3.2.4.2.

        * DEPS:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81955 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Alexander Pavlov <apavlov@chromium.org>
apavlov@chromium.org [Fri, 25 Mar 2011 11:59:02 +0000 (11:59 +0000)]
2011-03-25  Alexander Pavlov  <apavlov@chromium.org>

        Unreviewed, build fix. Add file missing from r81953

        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81954 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-15 Alexander Pavlov <apavlov@chromium.org>
apavlov@chromium.org [Fri, 25 Mar 2011 11:11:32 +0000 (11:11 +0000)]
2011-03-15  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
        https://bugs.webkit.org/show_bug.cgi?id=56310

        * inspector/styles/get-set-stylesheet-text-expected.txt: Added.
        * inspector/styles/get-set-stylesheet-text.html: Added.
        * inspector/styles/resources/get-set-stylesheet-text.css: Added.
        (body):
        (/* comment before selector */body.main1/* comment after selector */):
        (body.main2):
        * inspector/styles/styles-new-API.html:
2011-03-15  Alexander Pavlov  <apavlov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Fix handling of the CSSAgent.setStyleSheetText() results in CSSStyleModel.js
        https://bugs.webkit.org/show_bug.cgi?id=56310

        Instead of stylesheet ids, CSSAgent.getAllStyleSheets() now returns metainfo objects containing
        "styleSheetId", "sourceURL", "disabled", and "title" fields. The latter three are not returned
        by CSSAgent.getStyleSheet() anymore.

        Test: inspector/styles/get-set-stylesheet-text.html

        * inspector/Inspector.json:
        * inspector/InspectorCSSAgent.cpp:
        (WebCore::InspectorCSSAgent::getAllStyleSheets):
        * inspector/InspectorCSSAgent.h:
        * inspector/InspectorStyleSheet.cpp:
        (WebCore::InspectorStyleSheet::buildObjectForStyleSheet):
        (WebCore::InspectorStyleSheet::buildObjectForStyleSheetInfo):
        * inspector/InspectorStyleSheet.h:
        * inspector/front-end/AuditRules.js:
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.styleSheetCallback):
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun.allStylesCallback):
        (WebInspector.AuditRules.UnusedCssRule.prototype.doRun):
        * inspector/front-end/CSSStyleModel.js:
        (WebInspector.CSSStyleModel.prototype._styleSheetChanged.callback):
        (WebInspector.CSSStyleModel.prototype._styleSheetChanged):
        (WebInspector.CSSStyleModel.prototype._onRevert):
        (WebInspector.CSSStyleSheet):
        (WebInspector.CSSStyleSheet.prototype.setText):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81953 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Priit Laes <plaes@plaes.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 10:33:21 +0000 (10:33 +0000)]
2011-03-25  Priit Laes  <plaes@plaes.org>

        Reviewed by Martin Robinson.

        [GTK] [PATCH] Avoid critical warning when free-ing list of plugins
        https://bugs.webkit.org/show_bug.cgi?id=57025

        * webkit/webkitwebplugindatabase.cpp:
        (webkit_web_plugin_database_plugins_list_free):
        Use regular check and return instead of g_return_if_fail.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81952 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Pavel Feldman <pfeldman@chromium.org>
pfeldman@chromium.org [Fri, 25 Mar 2011 10:05:24 +0000 (10:05 +0000)]
2011-03-25  Pavel Feldman  <pfeldman@chromium.org>

        Reviewed by Yury Semikhatsky.

        Web Inspector: extension server should not convert all resources to HAR when there are no extensions.
        https://bugs.webkit.org/show_bug.cgi?id=57044

        * inspector/front-end/ExtensionServer.js:
        (WebInspector.ExtensionServer.prototype._notifyResourceFinished):
        (WebInspector.ExtensionServer.prototype._hasSubscribers):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81951 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Leo Yang <leo.yang@torchmobile.com.cn>
commit-queue@webkit.org [Fri, 25 Mar 2011 09:19:55 +0000 (09:19 +0000)]
2011-03-25  Leo Yang  <leo.yang@torchmobile.com.cn>

        Reviewed by Nikolas Zimmermann.

        SVG <use> element performance improvement
        https://bugs.webkit.org/show_bug.cgi?id=57077

        SVG <use> element was expanding nesting <use> and <symbol> elements
        in an inefficient way. After it expanded an <use> or a <symbol>
        element it would restart expanding from the shadow tree root.
        This behavior was leading about 160 millions of calls to
        expandUseElementInShadowTree or expandSymbolElementInShadowTree for
        a single shadow tree which is illustrated by
        http://upload.wikimedia.org/wikipedia/commons/4/4e/Sierpinski_carpet_6.svg.
        But the effective calls, which really expand <use> or <symbol>
        elements, were about 5200; others were passing-by calls, which are
        recursively down to the children.

        This patch is altering the expanding path to reduce the passing-by
        calls. It will expand elements in sibling chain where there is an
        effective call, because the effective call replaces element which is
        expanded and the replacement results lose of the sibling chain of
        the replaced on the upper recursion stack. With this patch the
        passing-by calls are reduced from about 160 millions to about 30
        thousands.

        No functionality change, no new tests.

        * svg/SVGUseElement.cpp:
        (WebCore::SVGUseElement::expandUseElementsInShadowTree):
        (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
        * svg/SVGUseElement.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81950 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Sergio Villar Senin <svillar@igalia.com>
sergio@webkit.org [Fri, 25 Mar 2011 09:19:22 +0000 (09:19 +0000)]
2011-03-25  Sergio Villar Senin  <svillar@igalia.com>

        Rebaseline GTK+ tests results after r81887

        * platform/gtk/editing/pasteboard/5065605-expected.txt:
        * platform/gtk/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-011-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * platform/gtk/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81949 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Alejandro G. Castro <alex@igalia.com>
alex@webkit.org [Fri, 25 Mar 2011 08:29:15 +0000 (08:29 +0000)]
2011-03-25  Alejandro G. Castro  <alex@igalia.com>

        Reviewed by Martin Robinson.

        [WK2] Consider .c files in the generate-forwarding-headers script
        https://bugs.webkit.org/show_bug.cgi?id=56680

        * Scripts/generate-forwarding-headers.pl:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81948 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-25 Dominic Cooney <dominicc@google.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 08:18:34 +0000 (08:18 +0000)]
2011-03-25  Dominic Cooney  <dominicc@google.com>

        Reviewed by Kent Tamura.

        Adds a regression test for keygen autofocus.
        https://bugs.webkit.org/show_bug.cgi?id=57091

        * fast/forms/autofocus-keygen-expected.txt: Added.
        * fast/forms/autofocus-keygen.html: Added.
2011-03-25  Dominic Cooney  <dominicc@google.com>

        Reviewed by Kent Tamura.

        Makes keygen support autofocus attribute.
        https://bugs.webkit.org/show_bug.cgi?id=57091

        Test: fast/forms/autofocus-keygen.html

        * html/HTMLFormControlElement.cpp:
        (WebCore::HTMLFormControlElement::attach):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81947 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Mikhail Naganov <mnaganov@chromium.org>
mnaganov@chromium.org [Fri, 25 Mar 2011 07:29:28 +0000 (07:29 +0000)]
2011-03-24  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Add tests for HeapSnapshot module.
        https://bugs.webkit.org/show_bug.cgi?id=56835

        * http/tests/inspector/heap-snapshot-test.js: Added.
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMockObject):
        (initialize_HeapSnapshotTest.InspectorTest.createHeapSnapshotMock):
        (initialize_HeapSnapshotTest):
        * inspector/profiler/heap-snapshot-expected.txt: Added.
        * inspector/profiler/heap-snapshot.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81946 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Mikhail Naganov <mnaganov@chromium.org>
mnaganov@chromium.org [Fri, 25 Mar 2011 07:17:45 +0000 (07:17 +0000)]
2011-03-24  Mikhail Naganov  <mnaganov@chromium.org>

        Reviewed by Pavel Feldman.

        Web Inspector: Rework cpu-profiler-profiling.html to use capabilities of testing framework.
        https://bugs.webkit.org/show_bug.cgi?id=57006

        * http/tests/inspector/profiler-test.js: Added.
        (initialize_ProfilerTest.InspectorTest.startProfilerTest.startTest):
        (initialize_ProfilerTest.InspectorTest.startProfilerTest):
        (initialize_ProfilerTest.InspectorTest.completeProfilerTest):
        (initialize_ProfilerTest.InspectorTest.runProfilerTestSuite.runner):
        (initialize_ProfilerTest.InspectorTest.runProfilerTestSuite):
        (initialize_ProfilerTest):
        * inspector/cpu-profiler-profiling-expected.txt: Removed.
        * inspector/cpu-profiler-profiling.html: Removed.
        * inspector/profiler/cpu-profiler-profiling-expected.txt: Added.
        * inspector/profiler/cpu-profiler-profiling.html: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81945 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Gyuyoung Kim <gyuyoung.kim@samsung.com>
gyuyoung.kim@samsung.com [Fri, 25 Mar 2011 06:56:57 +0000 (06:56 +0000)]
2011-03-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Reviewed by Antonio Gomes.

        [EFL] Add sound / mute button to MediaControl UI
        https://bugs.webkit.org/show_bug.cgi?id=56726

        Add sound / mute button to MediaControl UI.

        * platform/efl/RenderThemeEfl.cpp:
        (WebCore::RenderThemeEfl::edjeGroupFromFormType):
        (WebCore::RenderThemeEfl::emitMediaButtonSignal):
        (WebCore::RenderThemeEfl::paintMediaMuteButton):
        * platform/efl/RenderThemeEfl.h:
2011-03-24  Gyuyoung Kim  <gyuyoung.kim@samsung.com>

        Reviewed by Antonio Gomes.

        [EFL] Add sound / mute button to MediaControl UI
        https://bugs.webkit.org/show_bug.cgi?id=56726

        Add sound / mute button to MediaControl UI.

        * DefaultTheme/default.edc:
        * DefaultTheme/widget/mediacontrol/mutebutton/mute_button.edc: Added.
        * DefaultTheme/widget/mediacontrol/mutebutton/mutebutton.png: Added.
        * DefaultTheme/widget/mediacontrol/mutebutton/unmutebutton.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81944 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Nikolas Zimmermann <nzimmermann@rim.com>
zimmermann@webkit.org [Fri, 25 Mar 2011 06:35:51 +0000 (06:35 +0000)]
2011-03-24  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Darin Adler.

        Introduce WTF HexNumber.h
        https://bugs.webkit.org/show_bug.cgi?id=56099

        Introduce a set of functions that ease converting from a bye or a number to a hex string,
        replacing several of these conversions and String::format("%x") usages all over WebCore.

        * GNUmakefile.am: Add HexNumber.h to build.
        * JavaScriptCore.exp: Export StringBuilder::reserveCapacity.
        * JavaScriptCore.gypi: Add HexNumber.h to build.
        * JavaScriptCore.vcproj/JavaScriptCore/JavaScriptCore.def: Export StringBuilder::reserveCapacity.
        * JavaScriptCore.vcproj/WTF/WTF.vcproj: Add HexNumber.h to build.
        * JavaScriptCore.xcodeproj/project.pbxproj: Ditto.
        * wtf/CMakeLists.txt: Ditto.
        * wtf/HexNumber.h: Added.
        (WTF::Internal::hexDigitsForMode): Internal helper.
        (WTF::appendByteAsHex): Free function, that appends a byte as hex string into a destination.
        (WTF::placeByteAsHex): Ditto, but places the result using *foo++ = '..' or foo[index++] = '..'
        (WTF::appendUnsignedAsHex): Free function, that appends a number as hex string into a destination.
2011-03-24  Nikolas Zimmermann  <nzimmermann@rim.com>

        Reviewed by Darin Adler.

        Introduce WTF HexNumber.h
        https://bugs.webkit.org/show_bug.cgi?id=56099

        Introduce a set of functions that ease converting from a bye or a number to a hex string,
        replacing several of these conversions and String::format("%x") usages all over WebCore.

        * ForwardingHeaders/wtf/HexNumber.h: Added.
        * css/CSSOMUtils.cpp:
        (WebCore::serializeCharacterAsCodePoint):
        * css/CSSParser.cpp:
        (WebCore::quoteCSSString):
        * inspector/InspectorResourceAgent.cpp:
        (WebCore::createReadableStringFromBinary):
        * platform/FileSystem.cpp:
        (WebCore::encodeForFileName):
        * platform/KURL.cpp:
        (WebCore::appendEscapedChar):
        * platform/UUID.cpp:
        (WebCore::createCanonicalUUIDString):
        * platform/graphics/Color.cpp:
        (WebCore::Color::serialized):
        * platform/network/FormDataBuilder.cpp:
        (WebCore::FormDataBuilder::encodeStringAsFormData):
        * rendering/RenderTreeAsText.cpp:
        (WebCore::quoteAndEscapeNonPrintables):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81943 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Yuta Kitamura <yutak@chromium.org>
yutak@chromium.org [Fri, 25 Mar 2011 06:31:52 +0000 (06:31 +0000)]
2011-03-24  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed, rebaseline Chromium test results for Mac Leopard.

        * platform/chromium-mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/blockflow/vertical-baseline-alignment-expected.png: Added.
        * platform/chromium-mac-leopard/fast/dynamic/text-combine-expected.checksum: Added.
        * platform/chromium-mac-leopard/fast/dynamic/text-combine-expected.png: Added.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81942 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com>
jer.noble@apple.com [Fri, 25 Mar 2011 06:27:50 +0000 (06:27 +0000)]
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81939.
        http://trac.webkit.org/changeset/81939
        https://bugs.webkit.org/show_bug.cgi?id=57084

        Rolling out 81939, as it's causing a number of app cache test
        failures. (Requested by jernoble on #webkit).

        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81941 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago[wx] A couple build fixes after recent changes.
kevino@webkit.org [Fri, 25 Mar 2011 06:05:11 +0000 (06:05 +0000)]
[wx] A couple build fixes after recent changes.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81940 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-23 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Fri, 25 Mar 2011 05:33:53 +0000 (05:33 +0000)]
2011-03-23  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        Application Cache should save audio/ and video/ mime types as flat files
        https://bugs.webkit.org/show_bug.cgi?id=53784
        <rdar://problem/8932473>

        No new tests.

        Initialize the AppCache Total size quotas with the values for WebKitPreferences
        upon startup.

        * WebView/WebView.mm:
        (-[WebView _preferencesChangedNotification:]):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Ilya Sherman <isherman@chromium.org>
commit-queue@webkit.org [Fri, 25 Mar 2011 05:06:30 +0000 (05:06 +0000)]
2011-03-24  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Adam Roben.

        Implement layoutTestController.setAutoFilled in DRT on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56828

        * platform/chromium/fast/forms/input-autofilled-expected.txt: Removed.
        * platform/chromium/fast/forms/reset-autofilled-expected.txt: Removed.
        * platform/win/fast/forms/input-autofilled-expected.txt: Removed.
        * platform/win/fast/forms/reset-autofilled-expected.txt: Removed.
2011-03-24  Ilya Sherman  <isherman@chromium.org>

        Reviewed by Adam Roben.

        Implement layoutTestController.setAutoFilled in DRT on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56828

        * DumpRenderTree/win/LayoutTestControllerWin.cpp:
        (LayoutTestController::setAutofilled): Implemented.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81938 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=57073
slewis@apple.com [Fri, 25 Mar 2011 04:10:59 +0000 (04:10 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=57073
Rework the AtomicHTMLConstructor to reserve space for attributes based on the size of the attribute list.
Saves 1.5 MB on Membuster.

Reviewed by Geoff Garen.

No new tests because there was no change in behavior.  Current tests pass.

* html/parser/HTMLToken.h:
(WebCore::AtomicHTMLToken::AtomicHTMLToken):
(WebCore::AtomicHTMLToken::initializeAttributes):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81937 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Yuta Kitamura <yutak@chromium.org>
yutak@chromium.org [Fri, 25 Mar 2011 03:23:33 +0000 (03:23 +0000)]
2011-03-24  Yuta Kitamura  <yutak@chromium.org>

        Unreviewed. Rebaseline Chromium test results for fast/css/percentage-non-integer.html.

        * platform/chromium-win/fast/css/percentage-non-integer-expected.checksum:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.png:
        * platform/chromium-win/fast/css/percentage-non-integer-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81934 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Sheriff Bot <webkit.review.bot@gmail.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 02:54:18 +0000 (02:54 +0000)]
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * fast/images/embed-image-plugins-disabled.html: Removed.
        * platform/mac/fast/images/embed-image-expected.checksum:
        * platform/mac/fast/images/embed-image-expected.png:
        * platform/mac/fast/images/embed-image-expected.txt:
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.checksum: Removed.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.png: Removed.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.txt: Removed.
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * html/HTMLEmbedElement.cpp:
        (WebCore::HTMLEmbedElement::HTMLEmbedElement):
        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::HTMLObjectElement):
        (WebCore::HTMLObjectElement::parametersForPlugin):
        * html/HTMLPlugInImageElement.cpp:
        (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
        (WebCore::HTMLPlugInImageElement::isImageType):
        (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
        * html/HTMLPlugInImageElement.h:
        * loader/EmptyClients.h:
        (WebCore::EmptyFrameLoaderClient::objectContentType):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::defaultObjectContentType):
        * loader/FrameLoader.h:
        * loader/FrameLoaderClient.h:
        * loader/SubframeLoader.cpp:
        (WebCore::SubframeLoader::resourceWillUsePlugin):
        (WebCore::SubframeLoader::requestObject):
        (WebCore::SubframeLoader::shouldUsePlugin):
        * loader/SubframeLoader.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::objectContentType):
        * src/FrameLoaderClientImpl.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/FrameLoaderClientEfl.cpp:
        (WebCore::FrameLoaderClientEfl::objectContentType):
        * WebCoreSupport/FrameLoaderClientEfl.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::objectContentType):
        * WebCoreSupport/FrameLoaderClientGtk.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/FrameLoaderClientHaiku.cpp:
        (WebCore::FrameLoaderClientHaiku::objectContentType):
        * WebCoreSupport/FrameLoaderClientHaiku.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::objectContentType):
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::objectContentType):
        * WebCoreSupport/FrameLoaderClientQt.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebFrame.cpp:
        (WebFrame::objectContentType):
        * WebFrame.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebCoreSupport/FrameLoaderClientWinCE.cpp:
        (WebKit::FrameLoaderClientWinCE::objectContentType):
        * WebCoreSupport/FrameLoaderClientWinCE.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::objectContentType):
        * WebKitSupport/FrameLoaderClientWx.h:
2011-03-24  Sheriff Bot  <webkit.review.bot@gmail.com>

        Unreviewed, rolling out r81916 and r81917.
        http://trac.webkit.org/changeset/81916
        http://trac.webkit.org/changeset/81917
        https://bugs.webkit.org/show_bug.cgi?id=57071

        broke a test on platforms that do not have QuickTime installed
        (Requested by estes on #webkit).

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::objectContentType):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81933 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Dimitri Glazkov <dglazkov@chromium.org>
dglazkov@chromium.org [Fri, 25 Mar 2011 02:34:30 +0000 (02:34 +0000)]
2011-03-24  Dimitri Glazkov  <dglazkov@chromium.org>

        Reviewed by Darin Adler.

        Eliminate Node::dispatchGenericEvent.
        https://bugs.webkit.org/show_bug.cgi?id=57045

        No functional change, covered by existing tests.

        * dom/Node.cpp:
        (WebCore::Node::dispatchEvent): Combined with the body of dispatchGenericEvent,
            removed unnecessary extra refs and a stale comment.
        * dom/Node.h:
        * page/DOMWindow.cpp:
        (WebCore::DOMWindow::dispatchLoadEvent): Changed to use dispatchEvent.
        * svg/SVGElement.cpp:
        (WebCore::SVGElement::sendSVGLoadEventIfPossible): Ditto.
        * svg/SVGElementInstance.cpp:
        (WebCore::SVGElementInstance::dispatchEvent): Ditto. The code here still
            works thanks to SVG-aware retargeting in Node.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81932 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Chris Rogers <crogers@google.com>
crogers@google.com [Fri, 25 Mar 2011 02:13:36 +0000 (02:13 +0000)]
2011-03-24  Chris Rogers  <crogers@google.com>

        Reviewed by Kenneth Russell.

        web audio: Properly sample-rate convert audio assets in chromium port
        https://bugs.webkit.org/show_bug.cgi?id=56980

        No new tests since audio API is not yet implemented.

        * WebCore.gypi:
        * platform/audio/AudioBus.cpp:
        (WebCore::AudioBus::createBySampleRateConverting):
        (WebCore::AudioBus::createByMixingToMono):
        * platform/audio/AudioBus.h:
        * platform/audio/HRTFKernel.cpp:
        (WebCore::extractAverageGroupDelay):
        (WebCore::HRTFKernel::HRTFKernel):
        * platform/audio/SincResampler.cpp:
        * platform/audio/chromium/AudioBusChromium.cpp:
        (WebCore::AudioBus::loadPlatformResource):
        (WebCore::createBusFromInMemoryAudioFile):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81931 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Min Qin <qinmin@google.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 02:09:03 +0000 (02:09 +0000)]
2011-03-24  Min Qin  <qinmin@google.com>

        Reviewed by James Robinson.

        Allow WebMediaPlayerClient to notify MediaPlayer that the playback state has changed

        https://bugs.webkit.org/show_bug.cgi?id=56837

        * public/WebMediaPlayerClient.h:
        * src/WebMediaPlayerClientImpl.cpp:
        (WebKit::WebMediaPlayerClientImpl::playbackStateChanged):
        * src/WebMediaPlayerClientImpl.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81930 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Vincent Scheib <scheib@chromium.org>
scheib@chromium.org [Fri, 25 Mar 2011 01:57:07 +0000 (01:57 +0000)]
2011-03-24  Vincent Scheib  <scheib@chromium.org>

        Update Chromium baselines for 81887

        * platform/chromium-win/editing/pasteboard/5065605-expected.txt:
        * platform/chromium-win/editing/pasteboard/display-block-on-spans-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-011-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-001-expected.txt:
        * platform/chromium-win/editing/pasteboard/paste-text-at-tabspan-002-expected.txt:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81929 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=57069
beidson@apple.com [Fri, 25 Mar 2011 01:34:50 +0000 (01:34 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=57069
Add WKIconDatabase api to the project files, and expose accessor on WKContext.

Reviewed by Darin Adler.

Project file stuffs:
* GNUmakefile.am:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:

* Shared/API/c/WKBase.h:
* UIProcess/API/C/WKAPICast.h:

* UIProcess/API/C/WKContext.cpp:
(WKContextGetIconDatabase):
* UIProcess/API/C/WKContext.h:

* UIProcess/API/C/WKIconDatabase.cpp: Added.
(WKIconDatabaseGetTypeID):
* UIProcess/API/C/WKIconDatabase.h: Added.

* UIProcess/WebContext.h:
(WebKit::WebContext::iconDatabase):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81928 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-23 John Abd-El-Malek <jam@chromium.org>
jam@chromium.org [Fri, 25 Mar 2011 01:29:20 +0000 (01:29 +0000)]
2011-03-23  John Abd-El-Malek  <jam@chromium.org>

        Reviewed by Tony Chang.

        [chromium] Get rid of WEB_TEXT_CHECKING_RESULT_IS_A_STRUCT since it&apos;s not needed anymore
        https://bugs.webkit.org/show_bug.cgi?id=56955

        * DEPS:
        * public/WebTextCheckingResult.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81927 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Bill Budge <bbudge@chromium.org>
dimich@chromium.org [Fri, 25 Mar 2011 01:10:38 +0000 (01:10 +0000)]
2011-03-24  Bill Budge  <bbudge@chromium.org>

        Reviewed by Eric Seidel.

        Change a forward declaration of WebURLLoaderOptions to struct to prevent a build break in Chromium.
        https://bugs.webkit.org/show_bug.cgi?id=57064

        No tests. Exposes no new functionality.

        * public/WebFrame.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81926 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Rik Cabanier <cabanier@adobe.com>
commit-queue@webkit.org [Fri, 25 Mar 2011 01:09:19 +0000 (01:09 +0000)]
2011-03-24  Rik Cabanier  <cabanier@adobe.com>

        Reviewed by David Hyatt.

        REGRESSION (r81625): fast/css/percentage-non-integer.html fails on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56829

        * platform/win/fast/css/percentage-non-integer-expected.checksum:
        * platform/win/fast/css/percentage-non-integer-expected.png:
        * platform/win/fast/css/percentage-non-integer-expected.txt:
2011-03-24  Rik Cabanier  <cabanier@adobe.com>

        Reviewed by David Hyatt.

        REGRESSION (r81625): fast/css/percentage-non-integer.html fails on Windows
        https://bugs.webkit.org/show_bug.cgi?id=56829

        Test: fast/css/percentage-non-integer.html

        * platform/Length.h:
        (WebCore::Length::calcValue):
        (WebCore::Length::calcMinValue):
        (WebCore::Length::calcFloatValue):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81925 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoBuild correction.
bfulgham@webkit.org [Fri, 25 Mar 2011 01:08:21 +0000 (01:08 +0000)]
Build correction.

Disable the CA Layer stuff when building with Cairo.

* win/WebKit2.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81924 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Mihai Parparita <mihaip@chromium.org>
mihaip@chromium.org [Fri, 25 Mar 2011 00:22:21 +0000 (00:22 +0000)]
2011-03-24  Mihai Parparita  <mihaip@chromium.org>

        Add Chromium Snow Leopard baselines for fast/css/bidi-override-in-anonymous-block.html.

        * platform/chromium-mac-leopard/fast/css/bidi-override-in-anonymous-block-expected.checksum: Copied from LayoutTests/platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.checksum.
        * platform/chromium-mac-leopard/fast/css/bidi-override-in-anonymous-block-expected.png: Copied from LayoutTests/platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.png.
        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.checksum:
        * platform/chromium-mac/fast/css/bidi-override-in-anonymous-block-expected.png:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81923 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoUnreviewed build correction.
bfulgham@webkit.org [Fri, 25 Mar 2011 00:18:18 +0000 (00:18 +0000)]
Unreviewed build correction.

Correct vsprops file for Debug variant of the CFLite build.
Disable a CFNETWORK-specific test when building for CFLite.

* TestWebKitAPI/Configurations/TestWebKitAPIDebugCairoCFLite.vsprops:
* TestWebKitAPI/win/TestWebKitAPI.vcproj:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81922 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Mihai Parparita <mihaip@chromium.org>
mihaip@chromium.org [Fri, 25 Mar 2011 00:17:08 +0000 (00:17 +0000)]
2011-03-24  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by James Robinson.

        [Chromium] Vertical Japanese text is not displayed on Snow Leopard
        https://bugs.webkit.org/show_bug.cgi?id=56962

        Pixel rebaselines after r80582 (vertical text was shifted by one pixel
        vertical).

        Make Snow Leopard check added by r80740 into a runtime check for
        Chromium, since it uses the same binary on both Leopard and Snow Leopard.

        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/chromium-mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/chromium-mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/broken-ideograph-small-caps-expected.txt: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-selection-expected.png: Added.
        * platform/chromium-mac/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-lr-text-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-expected.png:
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.png: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-align-table-baseline-expected.checksum: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-align-table-baseline-expected.png: Removed.
        * platform/chromium-mac/fast/blockflow/vertical-baseline-alignment-expected.checksum: Added.
        * platform/chromium-mac/fast/blockflow/vertical-baseline-alignment-expected.png: Added.
        * platform/chromium-mac/fast/dynamic/text-combine-expected.checksum:
        * platform/chromium-mac/fast/dynamic/text-combine-expected.png:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/chromium-mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.checksum:
        * platform/chromium-mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.checksum:
        * platform/chromium-mac/fast/ruby/base-shorter-than-text-expected.png:
        * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.checksum:
        * platform/chromium-mac/fast/text/justify-ideograph-vertical-expected.png:
        * platform/chromium/test_expectations.txt:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.checksum:
        * platform/mac/fast/blockflow/Kusa-Makura-background-canvas-expected.png:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/border-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/broken-ideographic-font-expected.checksum:
        * platform/mac/fast/blockflow/broken-ideographic-font-expected.png:
        * platform/mac/fast/blockflow/japanese-lr-selection-expected.checksum:
        * platform/mac/fast/blockflow/japanese-lr-selection-expected.png:
        * platform/mac/fast/blockflow/japanese-lr-text-expected.checksum:
        * platform/mac/fast/blockflow/japanese-lr-text-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-selection-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-selection-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-text-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-text-expected.png:
        * platform/mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.checksum:
        * platform/mac/fast/blockflow/japanese-rl-text-with-broken-font-expected.png:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-lr-expected.checksum:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-lr-expected.png:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-rl-expected.checksum:
        * platform/mac/fast/blockflow/japanese-ruby-vertical-rl-expected.png:
        * platform/mac/fast/blockflow/vertical-align-table-baseline-expected.checksum:
        * platform/mac/fast/blockflow/vertical-align-table-baseline-expected.png:
        * platform/mac/fast/blockflow/vertical-baseline-alignment-expected.checksum:
        * platform/mac/fast/blockflow/vertical-baseline-alignment-expected.png:
        * platform/mac/fast/blockflow/vertical-font-fallback-expected.checksum:
        * platform/mac/fast/blockflow/vertical-font-fallback-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-clear-expected.checksum:
        * platform/mac/fast/repaint/japanese-rl-selection-clear-expected.png:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.checksum:
        * platform/mac/fast/repaint/japanese-rl-selection-repaint-expected.png:
        * platform/mac/fast/repaint/repaint-across-writing-mode-boundary-expected.checksum:
        * platform/mac/fast/repaint/repaint-across-writing-mode-boundary-expected.png:
        * platform/mac/fast/ruby/base-shorter-than-text-expected.checksum:
        * platform/mac/fast/ruby/base-shorter-than-text-expected.png:
        * platform/mac/fast/text/justify-ideograph-vertical-expected.checksum:
        * platform/mac/fast/text/justify-ideograph-vertical-expected.png:
2011-03-24  Mihai Parparita  <mihaip@chromium.org>

        Reviewed by James Robinson.

        [Chromium] Vertical Japanese text is not displayed on Snow Leopard
        https://bugs.webkit.org/show_bug.cgi?id=56962

        Make Snow Leopard check added by r80740 into a runtime check for
        Chromium, since it uses the same binary on both Leopard and Snow Leopard.

        * platform/graphics/mac/FontMac.mm:
        (WebCore::hasBrokenCTFontGetVerticalTranslationsForGlyphs):
        (WebCore::showGlyphsWithAdvances):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81921 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agohttps://bugs.webkit.org/show_bug.cgi?id=57058
beidson@apple.com [Thu, 24 Mar 2011 23:58:35 +0000 (23:58 +0000)]
https://bugs.webkit.org/show_bug.cgi?id=57058
Hookup the UIProcess WebIconDatabase to a WebCore::IconDatabase as its implementation

Reviewed by Sam Weinig.

../WebCore:

* loader/icon/IconDatabase.cpp:
(WebCore::IconDatabase::synchronousLoadDecisionForIconURL): Only add the DocumentLoader to the set if it's non-zero.
(WebCore::IconDatabase::IconDatabase): Add more logging.
(WebCore::IconDatabase::performURLImport): Dispatch the "didFinishURLImport" client callback using the following 3 methods.
(WebCore::FinishedURLImport::FinishedURLImport):
(WebCore::FinishedURLImport::performWork):
(WebCore::IconDatabase::dispatchDidFinishURLImportOnMainThread):

* loader/icon/IconDatabase.h:
(WebCore::IconDatabase::create): Expose a PassOwnPtr<> creator.

* WebCore.exp.in:

../WebKit2:

* UIProcess/WebIconDatabase.cpp:
(WebKit::WebIconDatabase::WebIconDatabase):
(WebKit::WebIconDatabase::setDatabasePath): Create a new WebCore::IconDatabase and open it to this path.
(WebKit::WebIconDatabase::retainIconForPageURL): Actually retain the url, using the impl.
(WebKit::WebIconDatabase::releaseIconForPageURL): Actually release the url, using the impl.
(WebKit::WebIconDatabase::setIconURLForPageURL): Actually set the url, using the impl.
(WebKit::WebIconDatabase::setIconDataForIconURL): Actually set the data, using the impl.
(WebKit::WebIconDatabase::getLoadDecisionForIconURL): Actually ask for a load decision to call back with.
(WebKit::WebIconDatabase::performImport):
(WebKit::WebIconDatabase::didImportIconURLForPageURL):
(WebKit::WebIconDatabase::didImportIconDataForPageURL):
(WebKit::WebIconDatabase::didChangeIconForPageURL):
(WebKit::WebIconDatabase::didRemoveAllIcons):
(WebKit::WebIconDatabase::didFinishURLImport): Notify all the pending callbacks what their load decisions
  are now that they're available.
* UIProcess/WebIconDatabase.h:

Add an IconDatabase logging channel:
* Platform/Logging.cpp:
(WebKit::initializeLogChannelsIfNecessary):
* Platform/Logging.h:

* UIProcess/WebContext.cpp:
(WebKit::WebContext::setIconDatabasePath): Pass the new path on to the WebIconDatabase, possibly
  opening it.
* UIProcess/WebContext.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81920 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-23 Jer Noble <jer.noble@apple.com>
jer.noble@apple.com [Thu, 24 Mar 2011 23:57:46 +0000 (23:57 +0000)]
2011-03-23  Jer Noble  <jer.noble@apple.com>

        Reviewed by Maciej Stachowiak.

        Application Cache should save audio/ and video/ mime types as flat files
        https://bugs.webkit.org/show_bug.cgi?id=53784
        <rdar://problem/8932473>

        No new tests.

        ApplicationCacheResource::create() now takes an additional "path" parameter.  To facilitate
        extracting this path information, two functions in ApplicationCacheHost have been made public.

        * loader/appcache/ApplicationCacheGroup.cpp:
        (WebCore::ApplicationCacheGroup::didReceiveResponse): Pass along new "path" parameter.
        (WebCore::ApplicationCacheGroup::didFail): Ditto.
        * loader/appcache/ApplicationCacheHost.h:
        (WebCore::ApplicationCacheHost::shouldLoadResourceFromApplicationCache): Made public.
        (WebCore::ApplicationCacheHost::getApplicationCacheFallbackResource): Made public.
        * loader/appcache/ApplicationCacheResource.cpp:
        (WebCore::ApplicationCacheResource::ApplicationCacheResource): Add new "path" parameter.
        * loader/appcache/ApplicationCacheResource.h:
        (WebCore::ApplicationCacheResource::create): Ditto.
        (WebCore::ApplicationCacheResource::path): New accessor.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81919 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Dirk Pranke <dpranke@chromium.org>
dpranke@chromium.org [Thu, 24 Mar 2011 23:44:17 +0000 (23:44 +0000)]
2011-03-24  Dirk Pranke  <dpranke@chromium.org>

        Reviewed by Adam Barth.

        fix regressions introduced in 81908 - there were a couple of
        code paths that only fired under python 2.5 that I missed.

        Also change a couple of 'python' references to sys.executable
        in order to handle runing test-webkitpy with a binary other than
        something called 'python'.

        https://bugs.webkit.org/show_bug.cgi?id=57063

        * Scripts/webkitpy/layout_tests/port/mac.py:
        * Scripts/webkitpy/layout_tests/port/port_testcase.py:
        * Scripts/webkitpy/test/cat.py:
        * Scripts/webkitpy/test/echo.py:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81918 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years agoFix the chromium build.
aestes@apple.com [Thu, 24 Mar 2011 23:37:25 +0000 (23:37 +0000)]
Fix the chromium build.

* src/FrameLoaderClientImpl.cpp:
(WebKit::FrameLoaderClientImpl::objectContentType):

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81917 268f45cc-cd09-0410-ab3c-d52691b4dbfc

9 years ago2011-03-24 Andy Estes <aestes@apple.com>
aestes@apple.com [Thu, 24 Mar 2011 23:34:53 +0000 (23:34 +0000)]
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        * fast/images/embed-image-plugins-disabled.html: Added.
        * platform/mac/fast/images/embed-image-expected.checksum:
        * platform/mac/fast/images/embed-image-expected.png:
        * platform/mac/fast/images/embed-image-expected.txt:
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.checksum: Added.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.png: Added.
        * platform/mac/fast/images/embed-image-plugins-disabled-expected.txt: Added.
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * src/FrameLoaderClientImpl.cpp:
        (WebKit::FrameLoaderClientImpl::objectContentType):
        * src/FrameLoaderClientImpl.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientQt.cpp:
        (WebCore::FrameLoaderClientQt::objectContentType):
        * WebCoreSupport/FrameLoaderClientQt.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientGtk.cpp:
        (WebKit::FrameLoaderClient::objectContentType):
        * WebCoreSupport/FrameLoaderClientGtk.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebFrame.cpp:
        (WebFrame::objectContentType):
        * WebFrame.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebKitSupport/FrameLoaderClientWx.cpp:
        (WebCore::FrameLoaderClientWx::objectContentType):
        * WebKitSupport/FrameLoaderClientWx.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/WebFrameLoaderClient.h:
        * WebCoreSupport/WebFrameLoaderClient.mm:
        (WebFrameLoaderClient::objectContentType):
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientHaiku.cpp:
        (WebCore::FrameLoaderClientHaiku::objectContentType):
        * WebCoreSupport/FrameLoaderClientHaiku.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientWinCE.cpp:
        (WebKit::FrameLoaderClientWinCE::objectContentType):
        * WebCoreSupport/FrameLoaderClientWinCE.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebCoreSupport/FrameLoaderClientEfl.cpp:
        (WebCore::FrameLoaderClientEfl::objectContentType):
        * WebCoreSupport/FrameLoaderClientEfl.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        AC_QuickTime.js uses the common <object>/<embed> paradigm to embed the
        QuickTime plug-in in web pages. r70748 removed our mapping of classids
        to MIME types, which causes WebKit to fall back from the object to the
        embed tag when QuickTime is embedded by this script. The script emits
        the following embed tag to embed a QuickTime movie with a poster frame:

        <embed src="poster-frame.png" target="quicktimeplayer" href="movie.mov">

        The expectation is that a QuickTime plug-in is instantiated to display the
        poster frame, since QuickTime registers for many common image MIME
        types. This is how Gecko behaves for embed. However, WebKit prefers to
        use its native image rendering for image embeds, in which case no movie
        is played when the poster frame is clicked.

        Fix this by changing embed to check for a plug-in that can handle the
        image type before rendering the image natively. This matches Gecko.

        Test: fast/images/embed-image-plugins-disabled.html

        * html/HTMLObjectElement.cpp:
        (WebCore::HTMLObjectElement::parametersForPlugin):
        * html/HTMLPlugInImageElement.cpp:
        (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
        (WebCore::HTMLPlugInImageElement::isImageType):
        (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
        * html/HTMLPlugInImageElement.h:
        (WebCore::HTMLPlugInImageElement::preferPluginsForImages):
        * loader/EmptyClients.h:
        (WebCore::EmptyFrameLoaderClient::objectContentType):
        * loader/FrameLoader.cpp:
        (WebCore::FrameLoader::defaultObjectContentType):
        * loader/FrameLoader.h:
        * loader/FrameLoaderClient.h:
        * loader/SubframeLoader.cpp:
        (WebCore::SubframeLoader::resourceWillUsePlugin):
        (WebCore::SubframeLoader::requestPlugin):
        (WebCore::SubframeLoader::requestObject):
        (WebCore::SubframeLoader::shouldUsePlugin):
        * loader/SubframeLoader.h:
2011-03-24  Andy Estes  <aestes@apple.com>

        Reviewed by Darin Adler.

        REGRESSION (r70748): latest nightly builds kills AC_QuickTime.js
        https://bugs.webkit.org/show_bug.cgi?id=49016

        Update objectContentType() implementation to handle the
        shouldPreferPlugInsForImages flag.

        * WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
        (WebKit::WebFrameLoaderClient::objectContentType):
        * WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@81916 268f45cc-cd09-0410-ab3c-d52691b4dbfc