1. 26 Mar, 2011 13 commits
    • aestes@apple.com's avatar
      Skip fast/images/embed-image.html on Windows XP · 165d0d4b
      aestes@apple.com authored
      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: svn://svn.chromium.org/blink/trunk@82016 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      165d0d4b
    • aestes@apple.com's avatar
      Re-work a test to not be flaky. · 757392ba
      aestes@apple.com authored
      * plugins/embed-prefers-plugins-for-images.html:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@82015 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      757392ba
    • jer.noble@apple.com's avatar
      2011-03-25 Jer Noble <jer.noble@apple.com> · ec6e27a8
      jer.noble@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82014 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      ec6e27a8
    • mitz@apple.com's avatar
      <rdar://problem/9134330> Missing expansion before ideograph at the beginning or end of a text run · e1b3dff6
      mitz@apple.com authored
      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: svn://svn.chromium.org/blink/trunk@82013 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      e1b3dff6
    • andersca@apple.com's avatar
      2011-03-25 Anders Carlsson <andersca@apple.com> · 313d202f
      andersca@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82012 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      313d202f
    • jer.noble@apple.com's avatar
      2011-03-23 Jer Noble <jer.noble@apple.com> · 9c3b6fe3
      jer.noble@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82011 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      9c3b6fe3
    • commit-queue@webkit.org's avatar
      2011-03-25 Ben Taylor <bentaylor.solx86@gmail.com> · 85d0c00b
      commit-queue@webkit.org authored
              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: svn://svn.chromium.org/blink/trunk@82010 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      85d0c00b
    • jer.noble@apple.com's avatar
      2011-02-03 Jer Noble <jer.noble@apple.com> · eaca9067
      jer.noble@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82009 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      eaca9067
    • jam@chromium.org's avatar
      [chromium] add missing include from previous checkin · bbc0bc9f
      jam@chromium.org authored
      git-svn-id: svn://svn.chromium.org/blink/trunk@82008 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      bbc0bc9f
    • aestes@apple.com's avatar
      plugins/embed-prefers-plugins-for-images.html fails on Windows. · 0af4bb5b
      aestes@apple.com authored
      https://bugs.webkit.org/show_bug.cgi?id=57132
      
      * platform/win/Skipped: Skip plugins/embed-prefers-plugins-for-images.html
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@82007 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      0af4bb5b
    • jamesr@google.com's avatar
      2011-03-25 James Robinson <jamesr@chromium.org> · dd9b8f79
      jamesr@google.com authored
              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: svn://svn.chromium.org/blink/trunk@82006 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      dd9b8f79
    • beidson@apple.com's avatar
      <rdar://problem/8648311> and https://bugs.webkit.org/show_bug.cgi?id=56425 · f64051d3
      beidson@apple.com authored
      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: svn://svn.chromium.org/blink/trunk@82005 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f64051d3
    • weinig@apple.com's avatar
      WebScrollBar not updating when calling WebScrollBar::setValue. · 57ba62ce
      weinig@apple.com authored
      <rdar://problem/9143871>
      
      Reviewed by Jon Honeycutt.
      
      * WebScrollBar.cpp:
      (WebScrollBar::setValue):
      Call scrollToOffsetWithoutAnimation to actually update the scroll position.
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@82004 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      57ba62ce
  2. 25 Mar, 2011 27 commits
    • oliver@apple.com's avatar
      2011-03-25 Oliver Hunt <oliver@apple.com> · a694ae0c
      oliver@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82003 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a694ae0c
    • jeffm@apple.com's avatar
      2011-03-25 Jeff Miller <jeffm@apple.com> · 67f7259b
      jeffm@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82002 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      67f7259b
    • aestes@apple.com's avatar
      2011-03-25 Andy Estes <aestes@apple.com> · 07382359
      aestes@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82001 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      07382359
    • jer.noble@apple.com's avatar
      2011-03-23 Jer Noble <jer.noble@apple.com> · f4a6f767
      jer.noble@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@82000 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      f4a6f767
    • kinuko@chromium.org's avatar
      2011-03-25 Kinuko Yasuda <kinuko@chromium.org> · af6685e8
      kinuko@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81999 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      af6685e8
    • scheib@chromium.org's avatar
      2011-03-25 Vincent Scheib <scheib@chromium.org> · 1163b1fc
      scheib@chromium.org authored
              fast/forms/input-file-directory-upload.html timing out.
              http://crbug.com/77468
      
              * platform/chromium/test_expectations.txt:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@81998 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      1163b1fc
    • jberlin@webkit.org's avatar
      Unreviewed build correction. · 62f106a5
      jberlin@webkit.org authored
      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: svn://svn.chromium.org/blink/trunk@81997 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      62f106a5
    • scheib@chromium.org's avatar
      2011-03-25 Vincent Scheib <scheib@chromium.org> · 82a96bde
      scheib@chromium.org authored
              Attempting SLOW to resolve fast/forms/input-file-directory-upload.html
      
              * platform/chromium/test_expectations.txt:
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@81996 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      82a96bde
    • mrobinson@webkit.org's avatar
      2011-03-25 Martin Robinson <mrobinson@igalia.com> · 8f59dff4
      mrobinson@webkit.org authored
              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: svn://svn.chromium.org/blink/trunk@81995 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      8f59dff4
    • ggaren@apple.com's avatar
      2011-03-24 David Hyatt <hyatt@apple.com> · 35473d92
      ggaren@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@81994 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      35473d92
    • bfulgham@webkit.org's avatar
      Unreviewed build correction. · 08477ac2
      bfulgham@webkit.org authored
      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: svn://svn.chromium.org/blink/trunk@81993 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      08477ac2
    • hyatt@apple.com's avatar
      Source/WebCore: https://bugs.webkit.org/show_bug.cgi?id=56909 · a5ae24dc
      hyatt@apple.com authored
              
      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: svn://svn.chromium.org/blink/trunk@81992 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a5ae24dc
    • slewis@apple.com's avatar
      Fix the GTK+ build until we can implement the new cross-platform · 22436d2e
      slewis@apple.com authored
      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: svn://svn.chromium.org/blink/trunk@81991 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      22436d2e
    • mrobinson@webkit.org's avatar
      2011-03-25 Martin Robinson <mrobinson@igalia.com> · afbd4b00
      mrobinson@webkit.org authored
              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: svn://svn.chromium.org/blink/trunk@81990 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      afbd4b00
    • sfalken@apple.com's avatar
      2011-03-25 Steve Falkenburg <sfalken@apple.com> · b1a4d281
      sfalken@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@81989 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      b1a4d281
    • tony@chromium.org's avatar
      2011-03-25 Tony Chang <tony@chromium.org> · 57edbb03
      tony@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81988 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      57edbb03
    • jam@chromium.org's avatar
      2011-03-24 John Abd-El-Malek <jam@chromium.org> · a74353d4
      jam@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81987 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a74353d4
    • ggaren@apple.com's avatar
      2011-03-25 Geoffrey Garen <ggaren@apple.com> · bdb5d14c
      ggaren@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@81986 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      bdb5d14c
    • dglazkov@chromium.org's avatar
      2011-03-25 Dimitri Glazkov <dglazkov@chromium.org> · 1db5d5c9
      dglazkov@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81985 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      1db5d5c9
    • bfulgham@webkit.org's avatar
      Kick the build machines after r81977. · 6922e96b
      bfulgham@webkit.org authored
      * win/tools/vsprops/common.vsprops:
      
      
      
      git-svn-id: svn://svn.chromium.org/blink/trunk@81984 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      6922e96b
    • ggaren@apple.com's avatar
      2011-03-24 Geoffrey Garen <ggaren@apple.com> · 7b941609
      ggaren@apple.com authored
              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: svn://svn.chromium.org/blink/trunk@81983 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      7b941609
    • tony@chromium.org's avatar
      2011-03-25 Tony Chang <tony@chromium.org> · 09a5b8d5
      tony@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81982 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      09a5b8d5
    • bdakin@apple.com's avatar
      Fix for https://bugs.webkit.org/show_bug.cgi?id=57057 Overlay scrollbars in overflow · a531d9d6
      bdakin@apple.com authored
      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: svn://svn.chromium.org/blink/trunk@81981 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      a531d9d6
    • jberlin@webkit.org's avatar
      WebKit2: Need to be able to set and get the Cookie Storage Policy. · 483aa1f8
      jberlin@webkit.org authored
      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: svn://svn.chromium.org/blink/trunk@81980 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      483aa1f8
    • commit-queue@webkit.org's avatar
      2011-03-25 Cary Clark <caryclark@google.com> · 30cdb5b7
      commit-queue@webkit.org authored
              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: svn://svn.chromium.org/blink/trunk@81979 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      30cdb5b7
    • eae@chromium.org's avatar
      2011-03-25 Emil A Eklund <eae@chromium.org> · 3d731446
      eae@chromium.org authored
              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: svn://svn.chromium.org/blink/trunk@81978 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      3d731446
    • bfulgham@webkit.org's avatar
      Clean up FontPlatformData structure so that a single implementation · c621a7be
      bfulgham@webkit.org authored
      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: svn://svn.chromium.org/blink/trunk@81977 bbb929c8-8fbe-4397-9dbb-9b2b20218538
      c621a7be