1. 25 Feb, 2010 11 commits
    • xan@webkit.org's avatar
      2010-02-25 Xan Lopez <xlopez@igalia.com> · 74eb6efc
      xan@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Workaround Java plugins not drawing themselves properly on first
              expose by doing a late size-allocate after 'plug-added' has been
              emitted on the embedding GtkSocket. It's unclear to me if this is
              a bug in our side or theirs, but this should be pretty safe and
              fixes the annoyance while we investigate it further.
      
              * plugins/gtk/PluginViewGtk.cpp:
              (WebCore::plugAddedCallback):
              (WebCore::PluginView::platformStart):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55238 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      74eb6efc
    • jocelyn.turcotte@nokia.com's avatar
      Add missing include guards · 5de927ac
      jocelyn.turcotte@nokia.com authored
      Reviewed by Tor Arne Vestbø.
      
      * loader/CrossOriginPreflightResultCache.h:
      * loader/MainResourceLoader.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55237 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5de927ac
    • jocelyn.turcotte@nokia.com's avatar
      [Qt] Restrict the optimization flags for Symbian to release builds. · 8cb446cb
      jocelyn.turcotte@nokia.com authored
      Reviewed by Tor Arne Vestbø.
      
      * WebCore.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55236 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8cb446cb
    • eric@webkit.org's avatar
      2010-02-25 Jarkko Sakkinen <jarkko.sakkinen@tieto.com> · 17dee22d
      eric@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen.
      
              Qt WebGL support
      
              Adds GraphicsContext3D QtWebKit implementation.
              https://bugs.webkit.org/show_bug.cgi?id=35153
      
              * WebCore.pri:
              * WebCore.pro:
              * platform/graphics/GraphicsContext3D.h:
              * platform/graphics/qt/GraphicsContext3DQt.cpp: Added.
              (WebCore::GraphicsContext3DInternal::isValid):
              (WebCore::GraphicsContext3DInternal::GraphicsContext3DInternal):
              (WebCore::GraphicsContext3DInternal::~GraphicsContext3DInternal):
              (WebCore::GraphicsContext3DInternal::getProcAddress):
              (WebCore::GraphicsContext3D::create):
              (WebCore::GraphicsContext3D::GraphicsContext3D):
              (WebCore::GraphicsContext3D::~GraphicsContext3D):
              (WebCore::GraphicsContext3D::platformGraphicsContext3D):
              (WebCore::GraphicsContext3D::platformTexture):
              (WebCore::GraphicsContext3D::makeContextCurrent):
              (WebCore::GraphicsContext3D::beginPaint):
              (WebCore::GraphicsContext3D::endPaint):
              (WebCore::GraphicsContext3D::reshape):
              (WebCore::GraphicsContext3D::activeTexture):
              (WebCore::GraphicsContext3D::attachShader):
              (WebCore::GraphicsContext3D::bindAttribLocation):
              (WebCore::GraphicsContext3D::bindBuffer):
              (WebCore::GraphicsContext3D::bindFramebuffer):
              (WebCore::GraphicsContext3D::bindRenderbuffer):
              (WebCore::GraphicsContext3D::bindTexture):
              (WebCore::GraphicsContext3D::blendColor):
              (WebCore::GraphicsContext3D::blendEquation):
              (WebCore::GraphicsContext3D::blendEquationSeparate):
              (WebCore::GraphicsContext3D::blendFunc):
              (WebCore::GraphicsContext3D::blendFuncSeparate):
              (WebCore::GraphicsContext3D::bufferData):
              (WebCore::GraphicsContext3D::bufferSubData):
              (WebCore::GraphicsContext3D::checkFramebufferStatus):
              (WebCore::GraphicsContext3D::clearColor):
              (WebCore::GraphicsContext3D::clear):
              (WebCore::GraphicsContext3D::clearDepth):
              (WebCore::GraphicsContext3D::clearStencil):
              (WebCore::GraphicsContext3D::colorMask):
              (WebCore::GraphicsContext3D::compileShader):
              (WebCore::GraphicsContext3D::copyTexImage2D):
              (WebCore::GraphicsContext3D::copyTexSubImage2D):
              (WebCore::GraphicsContext3D::cullFace):
              (WebCore::GraphicsContext3D::depthFunc):
              (WebCore::GraphicsContext3D::depthMask):
              (WebCore::GraphicsContext3D::depthRange):
              (WebCore::GraphicsContext3D::detachShader):
              (WebCore::GraphicsContext3D::disable):
              (WebCore::GraphicsContext3D::disableVertexAttribArray):
              (WebCore::GraphicsContext3D::drawArrays):
              (WebCore::GraphicsContext3D::drawElements):
              (WebCore::GraphicsContext3D::enable):
              (WebCore::GraphicsContext3D::enableVertexAttribArray):
              (WebCore::GraphicsContext3D::finish):
              (WebCore::GraphicsContext3D::flush):
              (WebCore::GraphicsContext3D::framebufferRenderbuffer):
              (WebCore::GraphicsContext3D::framebufferTexture2D):
              (WebCore::GraphicsContext3D::frontFace):
              (WebCore::GraphicsContext3D::generateMipmap):
              (WebCore::GraphicsContext3D::getActiveAttrib):
              (WebCore::GraphicsContext3D::getActiveUniform):
              (WebCore::GraphicsContext3D::getAttribLocation):
              (WebCore::GraphicsContext3D::getContextAttributes):
              (WebCore::GraphicsContext3D::getError):
              (WebCore::GraphicsContext3D::getString):
              (WebCore::GraphicsContext3D::hint):
              (WebCore::GraphicsContext3D::isBuffer):
              (WebCore::GraphicsContext3D::isEnabled):
              (WebCore::GraphicsContext3D::isFramebuffer):
              (WebCore::GraphicsContext3D::isProgram):
              (WebCore::GraphicsContext3D::isRenderbuffer):
              (WebCore::GraphicsContext3D::isShader):
              (WebCore::GraphicsContext3D::isTexture):
              (WebCore::GraphicsContext3D::lineWidth):
              (WebCore::GraphicsContext3D::linkProgram):
              (WebCore::GraphicsContext3D::pixelStorei):
              (WebCore::GraphicsContext3D::polygonOffset):
              (WebCore::GraphicsContext3D::readPixels):
              (WebCore::GraphicsContext3D::releaseShaderCompiler):
              (WebCore::GraphicsContext3D::renderbufferStorage):
              (WebCore::GraphicsContext3D::sampleCoverage):
              (WebCore::GraphicsContext3D::scissor):
              (WebCore::GraphicsContext3D::shaderSource):
              (WebCore::GraphicsContext3D::stencilFunc):
              (WebCore::GraphicsContext3D::stencilFuncSeparate):
              (WebCore::GraphicsContext3D::stencilMask):
              (WebCore::GraphicsContext3D::stencilMaskSeparate):
              (WebCore::GraphicsContext3D::stencilOp):
              (WebCore::GraphicsContext3D::stencilOpSeparate):
              (WebCore::GraphicsContext3D::texParameterf):
              (WebCore::GraphicsContext3D::texParameteri):
              (WebCore::GraphicsContext3D::uniform1f):
              (WebCore::GraphicsContext3D::uniform1fv):
              (WebCore::GraphicsContext3D::uniform2f):
              (WebCore::GraphicsContext3D::uniform2fv):
              (WebCore::GraphicsContext3D::uniform3f):
              (WebCore::GraphicsContext3D::uniform3fv):
              (WebCore::GraphicsContext3D::uniform4f):
              (WebCore::GraphicsContext3D::uniform4fv):
              (WebCore::GraphicsContext3D::uniform1i):
              (WebCore::GraphicsContext3D::uniform1iv):
              (WebCore::GraphicsContext3D::uniform2i):
              (WebCore::GraphicsContext3D::uniform2iv):
              (WebCore::GraphicsContext3D::uniform3i):
              (WebCore::GraphicsContext3D::uniform3iv):
              (WebCore::GraphicsContext3D::uniform4i):
              (WebCore::GraphicsContext3D::uniform4iv):
              (WebCore::GraphicsContext3D::uniformMatrix2fv):
              (WebCore::GraphicsContext3D::uniformMatrix3fv):
              (WebCore::GraphicsContext3D::uniformMatrix4fv):
              (WebCore::GraphicsContext3D::useProgram):
              (WebCore::GraphicsContext3D::validateProgram):
              (WebCore::GraphicsContext3D::vertexAttrib1f):
              (WebCore::GraphicsContext3D::vertexAttrib1fv):
              (WebCore::GraphicsContext3D::vertexAttrib2f):
              (WebCore::GraphicsContext3D::vertexAttrib2fv):
              (WebCore::GraphicsContext3D::vertexAttrib3f):
              (WebCore::GraphicsContext3D::vertexAttrib3fv):
              (WebCore::GraphicsContext3D::vertexAttrib4f):
              (WebCore::GraphicsContext3D::vertexAttrib4fv):
              (WebCore::GraphicsContext3D::vertexAttribPointer):
              (WebCore::GraphicsContext3D::viewport):
              (WebCore::GraphicsContext3D::getBooleanv):
              (WebCore::GraphicsContext3D::getBufferParameteriv):
              (WebCore::GraphicsContext3D::getFloatv):
              (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
              (WebCore::GraphicsContext3D::getIntegerv):
              (WebCore::GraphicsContext3D::getProgramiv):
              (WebCore::GraphicsContext3D::getProgramInfoLog):
              (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
              (WebCore::GraphicsContext3D::getShaderiv):
              (WebCore::GraphicsContext3D::getShaderInfoLog):
              (WebCore::GraphicsContext3D::getShaderSource):
              (WebCore::GraphicsContext3D::getTexParameterfv):
              (WebCore::GraphicsContext3D::getTexParameteriv):
              (WebCore::GraphicsContext3D::getUniformfv):
              (WebCore::GraphicsContext3D::getUniformiv):
              (WebCore::GraphicsContext3D::getUniformLocation):
              (WebCore::GraphicsContext3D::getVertexAttribfv):
              (WebCore::GraphicsContext3D::getVertexAttribiv):
              (WebCore::GraphicsContext3D::getVertexAttribOffset):
              (WebCore::GraphicsContext3D::texImage2D):
              (WebCore::GraphicsContext3D::texSubImage2D):
              (WebCore::GraphicsContext3D::createBuffer):
              (WebCore::GraphicsContext3D::createFramebuffer):
              (WebCore::GraphicsContext3D::createProgram):
              (WebCore::GraphicsContext3D::createRenderbuffer):
              (WebCore::GraphicsContext3D::createShader):
              (WebCore::GraphicsContext3D::createTexture):
              (WebCore::GraphicsContext3D::deleteBuffer):
              (WebCore::GraphicsContext3D::deleteFramebuffer):
              (WebCore::GraphicsContext3D::deleteProgram):
              (WebCore::GraphicsContext3D::deleteRenderbuffer):
              (WebCore::GraphicsContext3D::deleteShader):
              (WebCore::GraphicsContext3D::deleteTexture):
              (WebCore::GraphicsContext3D::sizeInBytes):
              (WebCore::GraphicsContext3D::synthesizeGLError):
              (WebCore::GraphicsContext3D::getImageData):
      2010-02-25  Jarkko Sakkinen  <jarkko.sakkinen@tieto.com>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              Qt WebGL support
      
              Adds enabling and disabling of WebGL support to QWebSettings.
              https://bugs.webkit.org/show_bug.cgi?id=35153
      
              * Api/qwebsettings.cpp:
              (QWebSettingsPrivate::apply):
              (QWebSettings::QWebSettings):
              * Api/qwebsettings.h:
      2010-02-25  Jarkko Sakkinen  <jarkko.sakkinen@tieto.com>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              Qt WebGL support
      
              Adds toggling of WebGL support to QtLauncher.
              https://bugs.webkit.org/show_bug.cgi?id=35153
      
              * QtLauncher/main.cpp:
              (LauncherWindow::toggleWebGL):
              (LauncherWindow::setupUI):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55235 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      17dee22d
    • pfeldman@chromium.org's avatar
      2010-02-25 Pavel Feldman <pfeldman@chromium.org> · 58bf4747
      pfeldman@chromium.org authored
              Reviewed by Timothy Hatcher.
      
              Web Inspector: Swap images for activate and deactivate breakpoints.
      
              https://bugs.webkit.org/show_bug.cgi?id=35383
      
              * WebCore.gypi:
              * inspector/front-end/Images/breakpointsActivateButtonGlyph.png: Renamed from WebCore/inspector/front-end/Images/deactivateBreakpointsButtonGlyph.png.
              * inspector/front-end/Images/breakpointsDeactivateButtonGlyph.png: Renamed from WebCore/inspector/front-end/Images/deactivateBreakpointsDisabledButtonGlyph.png.
              * inspector/front-end/WebKit.qrc:
              * inspector/front-end/inspector.css:
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55233 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      58bf4747
    • kov@webkit.org's avatar
      2010-02-25 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk> · 16ccb995
      kov@webkit.org authored
              Reviewed by Xan Lopez.
      
              Go back on symlink resolution if we are loading the flash plugin,
              and the path contains /netscape/, following what Chromium does.
      
              Thanks to Evan Martin for the help on this!
      
              * plugins/gtk/PluginPackageGtk.cpp:
              (WebCore::PluginPackage::load):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55232 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      16ccb995
    • pfeldman@chromium.org's avatar
      2010-02-23 Pavel Feldman <pfeldman@chromium.org> · beffff7c
      pfeldman@chromium.org authored
              Reviewed by Timothy Hatcher.
      
              Web Inspector: Scripts panel shows blank source when stopping on a breakpoint on refresh.
      
              https://bugs.webkit.org/show_bug.cgi?id=35232
      
              * inspector/front-end/Panel.js:
              (WebInspector.Panel.prototype.canShowSourceLine):
              (WebInspector.Panel.prototype.showSourceLine):
              * inspector/front-end/ResourcesPanel.js:
              (WebInspector.ResourcesPanel.prototype.canShowSourceLine):
              (WebInspector.ResourcesPanel.prototype.showSourceLine):
              * inspector/front-end/Script.js:
              (WebInspector.Script):
              * inspector/front-end/ScriptView.js:
              (WebInspector.ScriptView.prototype.setupSourceFrameIfNeeded):
              * inspector/front-end/ScriptsPanel.js:
              (WebInspector.ScriptsPanel.prototype.show):
              (WebInspector.ScriptsPanel.prototype.get searchableViews):
              (WebInspector.ScriptsPanel.prototype.addScript):
              (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
              (WebInspector.ScriptsPanel.prototype.addBreakpoint):
              (WebInspector.ScriptsPanel.prototype.removeBreakpoint):
              (WebInspector.ScriptsPanel.prototype.reset):
              (WebInspector.ScriptsPanel.prototype.canShowSourceLine):
              (WebInspector.ScriptsPanel.prototype.showSourceLine):
              (WebInspector.ScriptsPanel.prototype._scriptOrResourceForURLAndLine):
              (WebInspector.ScriptsPanel.prototype.showView):
              (WebInspector.ScriptsPanel.prototype._sourceFrameForScriptOrResource):
              (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
              (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu.optionCompare):
              (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
              * inspector/front-end/SourceView.js:
              (WebInspector.SourceView.prototype._addBreakpoint):
              * inspector/front-end/inspector.js:
              (WebInspector.documentClick.followLink):
              (WebInspector.documentClick):
              (WebInspector._choosePanelToShowSourceLine):
              (WebInspector.canShowSourceLine):
              (WebInspector.showSourceLine):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      beffff7c
    • eric@webkit.org's avatar
      2010-02-25 Ben Murdoch <benm@google.com> · d72a19c1
      eric@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen.
      
              The target element of a Touch should be the target where that touch originated, not where it is now.
              https://bugs.webkit.org/show_bug.cgi?id=34585
      
              * fast/events/touch/basic-single-touch-events-expected.txt: Update expected target element.
              * fast/events/touch/script-tests/basic-single-touch-events.js: ditto.
              * fast/events/touch/script-tests/touch-target.js: Added.
              * fast/events/touch/touch-target-expected.txt: Added.
              * fast/events/touch/touch-target.html: Added.
      2010-02-25  Ben Murdoch  <benm@google.com>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              The target element of a Touch should be the target where that touch originated, not where it is now.
              https://bugs.webkit.org/show_bug.cgi?id=34585
      
              Currently the target of a touch is set to the resulting node of the hit test where the touch currently
              is. This does not match the behavior of iPhone or Android. This patch uses a hashmap on the EventHandler
              to keep track of the target element when a touch is first started. This target is then used as the target
              for subsequent touches with the same id. This matches observed behavior on iPhone and Android.
      
              Tests:
              fast/events/touch/touch-target.html: Added.
              fast/events/touch/basic-single-touch-events.html: Updated.
      
              * page/EventHandler.cpp:
              (WebCore::EventHandler::handleTouchEvent): Store the originating target element of a touch in a hashmap
                  so that we can reuse that target for future events caused by that touch. This matches observed behavior
                  on iPhone and Android.
              * page/EventHandler.h: Add hashmap as a member.
              * platform/PlatformTouchPoint.h:
              (WebCore::PlatformTouchPoint::id): Store the touch point id as unsigned.
              * platform/qt/PlatformTouchPointQt.cpp:
              (WebCore::PlatformTouchPoint::PlatformTouchPoint): Cast platform touch id from signed to unsigned. Qt API
                  docs state that it will always be >= 0.
      2010-02-25  Ben Murdoch  <benm@google.com>
      
              Reviewed by Kenneth Rohde Christiansen.
      
              The target element of a Touch should be the target where that touch originated, not where it is now.
              https://bugs.webkit.org/show_bug.cgi?id=34585
      
              * DumpRenderTree/qt/EventSenderQt.cpp:
              (EventSender::addTouchPoint): Fix a bug where touch points were not being given unique ids.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55230 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d72a19c1
    • tonikitoo@webkit.org's avatar
      Add a convenient center() method to IntRect · 6fe487e0
      tonikitoo@webkit.org authored
      https://bugs.webkit.org/show_bug.cgi?id=35346
      
      Reviewed by Simon Fraser.
      Patch by Antonio Gomes <tonikitoo@webkit.org>
      
      As it is a convenience method, and implemention is
      based on FloatRect's one, patch does not provide a
      layout test.
      
      * platform/graphics/IntRect.h:
      (WebCore::IntRect::center):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55228 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      6fe487e0
    • eric@webkit.org's avatar
      2010-02-25 Andrey Kosyakov <caseq@chromium.org> · 700c5b0d
      eric@webkit.org authored
              Reviewed by Pavel Feldman.
      
              Fake workers implementation that simulates workers using iframe and timer,
              needed to support workers debugging. Also, a facility to inject scripts into
              inspected page upon load.
              https://bugs.webkit.org/show_bug.cgi?id=35148
      
              * WebCore.gypi:
              * WebCore.vcproj/WebCore.vcproj:
              * inspector/InspectorBackend.cpp:
              (WebCore::InspectorBackend::addScriptToEvaluateOnLoad):
              (WebCore::InspectorBackend::removeAllScriptsToEvaluateOnLoad):
              * inspector/InspectorBackend.h:
              * inspector/InspectorBackend.idl:
              * inspector/InspectorController.cpp:
              (WebCore::InspectorController::didCommitLoad):
              (WebCore::InspectorController::addScriptToEvaluateOnLoad):
              (WebCore::InspectorController::removeAllScriptsToEvaluateOnLoad):
              * inspector/InspectorController.h:
              * inspector/front-end/InjectedFakeWorker.js: Added.
              (InjectedFakeWorker.Worker):
              (InjectedFakeWorker.FakeWorker):
              (InjectedFakeWorker.FakeWorker.prototype.postMessage):
              (InjectedFakeWorker.FakeWorker.prototype.terminate):
              (InjectedFakeWorker.FakeWorker.prototype._onmessageWrapper):
              (InjectedFakeWorker.FakeWorker.prototype._dispatchMessage):
              (InjectedFakeWorker.FakeWorker.prototype._handleException):
              (InjectedFakeWorker.FakeWorker.prototype._buildWorker):
              (InjectedFakeWorker.FakeWorker.prototype._setupWorkerContext.handler):
              (InjectedFakeWorker.FakeWorker.prototype._setupWorkerContext):
              (InjectedFakeWorker.FakeWorker.prototype._importScripts):
              (InjectedFakeWorker.FakeWorker.prototype._loadScript):
              (InjectedFakeWorker.URL):
              (InjectedFakeWorker.URL.prototype.urlRegEx.split):
              (InjectedFakeWorker.URL.prototype.mockLocation):
              (InjectedFakeWorker.URL.prototype.completeWith):
              (InjectedFakeWorker.URL.prototype.sameOrigin):
              (InjectedFakeWorker.DOMCoreException.formatError):
              (InjectedFakeWorker.DOMCoreException):
              (InjectedFakeWorker.noop):
              * inspector/front-end/InspectorBackendStub.js:
              (.WebInspector.InspectorBackendStub.prototype.setInjectedScriptSource):
              (.WebInspector.InspectorBackendStub.prototype.addScriptToEvaluateOnLoad):
              (.WebInspector.InspectorBackendStub.prototype.removeAllScriptsToEvaluateOnLoad):
              * inspector/front-end/WebKit.qrc:
              * inspector/front-end/inspector.html:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55227 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      700c5b0d
    • eric@webkit.org's avatar
      2010-02-24 Nicholas Young <nicholas.young@nokia.com> · 525cdb2d
      eric@webkit.org authored
              Reviewed by Eric Carlson.
      
              Add mediaPlayerOwningDocument() to MediaPlayerClient.
              https://bugs.webkit.org/show_bug.cgi?id=35374
      
              No new tests. These are interface changes only.
      
              * html/HTMLMediaElement.cpp:
              (WebCore::HTMLMediaElement::mediaPlayerOwningDocument): Implementation for media element.
              * html/HTMLMediaElement.h:
              * platform/graphics/MediaPlayer.h:
              (WebCore::MediaPlayerClient::mediaPlayerOwningDocument): New virtual method.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55225 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      525cdb2d
  2. 24 Feb, 2010 22 commits
    • eric@webkit.org's avatar
      2010-02-24 Andreas Kling <andreas.kling@nokia.com> · 248000cc
      eric@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen.
      
              Optimized Font::normalizeSpaces() by caching the String::characters()
              instead of repeatedly calling operator[]
      
              https://bugs.webkit.org/show_bug.cgi?id=35336
      
              * platform/graphics/Font.cpp:
              (WebCore::Font::normalizeSpaces):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55224 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      248000cc
    • eric@webkit.org's avatar
      2010-02-24 Jungshik Shin <jshin@chromium.org> · 0aff2ed4
      eric@webkit.org authored
              Reviewed by David Levin.
      
              [Chromium] Traditional Chinese Chrome on Windows should use PMingLiu instead of Simsun for Han characters
              https://bugs.webkit.org/show_bug.cgi?id=35319
      
              No visible change in the layout test.
      
              * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
              (WebCore::):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55223 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0aff2ed4
    • eric@webkit.org's avatar
      2010-02-24 Anthony Ricaud <rik@webkit.org> · 69eb4e28
      eric@webkit.org authored
              Reviewed by Pavel Feldman.
      
              Web Inspector: Reduce the timer to show the eval popover
              https://bugs.webkit.org/show_bug.cgi?id=35344
      
              * inspector/front-end/SourceFrame.js:
              (WebInspector.SourceFrame.prototype._mouseMove):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55221 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      69eb4e28
    • eric@webkit.org's avatar
      2010-02-24 Jay Campan <jcampan@google.com> · 2f851f1a
      eric@webkit.org authored
              Reviewed by David Levin.
      
              Don't show the autofill popup when the input text is disabled or read only.
      
              Test: manual-tests/chromium/no-autofill-on-readonly.html
      
              https://bugs.webkit.org/show_bug.cgi?id=35129
      
              * src/EditorClientImpl.cpp:
              (WebKit::EditorClientImpl::autofill):
              *  manual-tests/chromium/no-autofill-on-readonly.html: Added.
      2010-02-24  Jay Campan  <jcampan@google.com>
      
              Reviewed by David Levin.
      
              Don't show the autofill popup when the input text is disabled or read only.
      
              https://bugs.webkit.org/show_bug.cgi?id=35129
      
              * src/EditorClientImpl.cpp:
              (WebKit::EditorClientImpl::autofill):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55219 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      2f851f1a
    • eric@webkit.org's avatar
      2010-02-24 Dominic Mazzoni <dmazzoni@chromium.org> · d2abb717
      eric@webkit.org authored
              Reviewed by Jeremy Orlow.
      
              Wraps includes of SVG headers so that it's possible to
              compile the V8 bindings with SVG disabled, e.g. 'enable_svg=0'.
              https://bugs.webkit.org/show_bug.cgi?id=35345
      
              No new tests.
      
              * bindings/v8/V8DOMWrapper.cpp:
              * bindings/v8/V8Proxy.cpp:
              * bindings/v8/custom/V8CSSValueCustom.cpp:
              * bindings/v8/custom/V8DocumentCustom.cpp:
              * bindings/v8/custom/V8ElementCustom.cpp:
              * bindings/v8/custom/V8EventCustom.cpp:
              * bindings/v8/custom/V8SVGElementCustom.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55217 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d2abb717
    • mjs@apple.com's avatar
      Unreviewed build fix. · 633bc4d8
      mjs@apple.com authored
      Fix gtk build.
      
      Include JSC headers as runtime/ instead of JavaScriptCore/
      
      * bindings/js/JSDOMWrapper.h:
      * bindings/js/ScriptWrappable.h:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55216 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      633bc4d8
    • mjs@apple.com's avatar
      2010-02-24 Maciej Stachowiak <mjs@apple.com> · 8da090ca
      mjs@apple.com authored
              Reviewed by Oliver Hunt.
      
              Cache JavaScript wrappers inline in DOM nodes
              https://bugs.webkit.org/show_bug.cgi?id=35226
      
              <rdar://problem/7664202>
              
              7.4% speedup on Dromaeo DOM Core tests.
              2.3% speedup on Hixie DOM Core tests.
      
              This fixes the following things from the last attempt:
              - Now builds in both debug and release and passes all tests
              - Properly use a WeakGCPtr, not just a raw pointer, in ScriptWrappable
              - Properly look in the appropriate per-document or per-world map
              - Added an assert that would have caught any of the problems I found
              - Handle clearing the inline cache properly in all cases
              
              * bindings/js/JSDOMBinding.cpp:
              (WebCore::cacheDOMObjectWrapper): Adjust for name changes.
              (WebCore::forgetDOMNode): Clear wrapper pointer.
              (WebCore::cacheDOMNodeWrapper): Cache inline too if caching for normal world.
              * bindings/js/JSDOMBinding.h:
              (WebCore::Document::getWrapperCache): Inlined.
              (WebCore::domObjectWrapperMapFor): Renamed to start with lowercase. Moved to header to inline.
              * bindings/js/JSDOMWrapper.h: Added.
              (WebCore::DOMObject::DOMObject): Factored this out of JSDOMBinding.h to avoid include
              cycle. I think the class should be renamed, I picked a forward-looking header name because
              we already have a DOMObject.h
              * bindings/js/JSNodeCustom.cpp:
              (WebCore::createWrapperInline): Renamed version of original createWrapper.
              (WebCore::createWrapper): Call createWrapperInline. Out-of-line version.
              (WebCore::toJSNewlyCreated): Call createWrapperInline instead of createWrapper.
              * bindings/js/JSNodeCustom.h: Added.
              (WebCore::getCachedDOMNodeWrapper): Moved from JSDOMBinding.cpp and moved here,
              so it could inline everywhere without creating an include cycle. Consider inline
              cache.
              (WebCore::toJS): Moved to header to inline.
              * bindings/js/ScriptWrappable.h:
              (WebCore::ScriptWrappable::ScriptWrappable): Implement this in the obvious
              way for JavaScriptCore. (Using a WeakGCPtr).
              (WebCore::ScriptWrappable::wrapper):
              (WebCore::ScriptWrappable::setWrapper):
              (WebCore::ScriptWrappable::clearWrapper):
              * bindings/scripts/CodeGeneratorJS.pm: Include CustomHeader heaaders
              in the header, not just the impl file, so they can add inlining.
              * dom/Node.idl: Add CustomHeader directive.
              
              Add new files to build.
      
              * GNUmakefile.am:
              * WebCore.gypi:
              * WebCore.pro:
              * WebCore.vcproj/WebCore.vcproj:
              * WebCore.xcodeproj/project.pbxproj:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55215 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      8da090ca
    • eric@webkit.org's avatar
      2010-02-24 Jochen Eisinger <jochen@chromium.org> · f4bbad1f
      eric@webkit.org authored
              Reviewed by Jeremy Orlow.
      
              Expose Database object of currently active task on the database thread
              https://bugs.webkit.org/show_bug.cgi?id=35341
      
              * storage/DatabaseThread.cpp:
              (WebCore::DatabaseThread::DatabaseThread):
              (WebCore::DatabaseThread::databaseThread):
              * storage/DatabaseThread.h:
              (WebCore::DatabaseThread::getDatabaseOfCurrentTask):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55214 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      f4bbad1f
    • eric@webkit.org's avatar
      2010-02-24 Nicholas Young <nicholas.young@nokia.com> · 26bf5eae
      eric@webkit.org authored
              Reviewed by Eric Carlson.
      
              supportsMuting() should be an internal interface between MediaPlayer and MediaPlayerPrivate.
              https://bugs.webkit.org/show_bug.cgi?id=35327
      
              No new tests. Refactoring Only.
      
              * html/HTMLMediaElement.cpp:
              (WebCore::HTMLMediaElement::setMuted): Do not check supportsMuting()
              (WebCore::HTMLMediaElement::updateVolume): Set volume and muted
              * platform/graphics/MediaPlayer.cpp:
              (WebCore::MediaPlayer::setVolume): Check supportsMuting()
              (WebCore::MediaPlayer::setMuted): Check supportsMuting()
              * platform/graphics/MediaPlayer.h: Remove supportsMuting()
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55213 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      26bf5eae
    • pkasting@chromium.org's avatar
      [Chromium API] Disambiguate allowJavaScript from didNotAllowScript · 19a9534d
      pkasting@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=35205
      
      Patch by Adam Barth <abarth@webkit.org> on 2010-02-24
      Reviewed by Darin Fisher.
      
      WebCore: 
      
      For clients that want to show a user interface element when JavaScript
      was blocked on a page, we need to disambiguate between querying the
      client for whether JavaScript is enabled from actually failing to
      execute some script.
      
      This patch adds a new FrameLoaderClient callback for when WebCore would
      like to execute JavaScript but fails to because JavaScript is disabled.
      
      This patch also touches every client of canExecuteScripts so they can
      indicate whether we should make this callback.  I was hoping there was
      a better choke point, but my first two attempts were wrong in subtle
      ways.  pkasting points out that this will be easy to screw up in the
      future, so it's better to make all the clients be explicit.
      
      * WebCore.PluginHostProcess.exp:
      * bindings/ScriptControllerBase.cpp:
      (WebCore::ScriptController::canExecuteScripts):
      (WebCore::ScriptController::executeScript):
      * bindings/js/JSEventListener.cpp:
      (WebCore::JSEventListener::handleEvent):
      * bindings/js/JSLazyEventListener.cpp:
      (WebCore::JSLazyEventListener::initializeJSFunction):
      * bindings/js/ScheduledAction.cpp:
      (WebCore::ScheduledAction::execute):
      * bindings/js/ScriptController.cpp:
      (WebCore::ScriptController::bindingRootObject):
      (WebCore::ScriptController::windowScriptNPObject):
      (WebCore::ScriptController::jsObjectForPluginElement):
      (WebCore::ScriptController::executeScriptInWorld):
      * bindings/js/ScriptController.h:
      (WebCore::):
      * bindings/js/ScriptControllerMac.mm:
      (WebCore::ScriptController::windowScriptObject):
      * bindings/js/ScriptDebugServer.cpp:
      (WebCore::ScriptDebugServer::setJavaScriptPaused):
      * bindings/js/ScriptEventListener.cpp:
      (WebCore::createAttributeEventListener):
      * bindings/js/ScriptState.cpp:
      (WebCore::scriptStateFromNode):
      * bindings/v8/ScriptController.cpp:
      (WebCore::ScriptController::windowScriptNPObject):
      (WebCore::ScriptController::createScriptObjectForPluginElement):
      * bindings/v8/ScriptController.h:
      (WebCore::):
      * bindings/v8/ScriptEventListener.cpp:
      (WebCore::createAttributeEventListener):
      * bindings/v8/V8Proxy.cpp:
      (WebCore::V8Proxy::retrieve):
      * dom/ScriptElement.cpp:
      (WebCore::ScriptElementData::evaluateScript):
      * dom/XMLTokenizerLibxml2.cpp:
      (WebCore::XMLTokenizer::startElementNs):
      * html/HTMLMediaElement.cpp:
      (WebCore::HTMLMediaElement::controls):
      * html/HTMLTokenizer.cpp:
      (WebCore::HTMLTokenizer::parseTag):
      (WebCore::HTMLTokenizer::processToken):
      * inspector/InspectorController.cpp:
      (WebCore::canPassNodeToJavaScript):
      * loader/FrameLoader.cpp:
      (WebCore::FrameLoader::isProcessingUserGesture):
      (WebCore::FrameLoader::open):
      (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
      (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
      * loader/FrameLoaderClient.h:
      (WebCore::FrameLoaderClient::didNotAllowScript):
      
      WebKit/chromium: 
      
      Plumb didNotAllowScript through Chromium's WebKit API.
      
      * public/WebFrameClient.h:
      (WebKit::WebFrameClient::didNotAllowScript):
      * src/DebuggerAgentImpl.cpp:
      (WebKit::DebuggerAgentImpl::createUtilityContext):
      * src/FrameLoaderClientImpl.cpp:
      (WebKit::FrameLoaderClientImpl::didNotAllowScript):
      * src/FrameLoaderClientImpl.h:
      * src/WebFrameImpl.cpp:
      (WebKit::WebFrameImpl::bindToWindowObject):
      
      WebKit/mac: 
      
      Make these two callsites explicit about not running script immediately.
      
      * Plugins/Hosted/NetscapePluginInstanceProxy.mm:
      (WebKit::NetscapePluginInstanceProxy::getWindowNPObject):
      (WebKit::NetscapePluginInstanceProxy::demarshalValueFromArray):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55207 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      19a9534d
    • pkasting@chromium.org's avatar
      Add call to FrameLoaderClient::allowPlugins everywhere arePluginsEnabled is called · 0b0b6580
      pkasting@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=34997
      
      Patch by Adam Barth <abarth@webkit.org> on 2010-02-24
      Reviewed by Darin Fisher.
      
      If we want to let the FrameLoaderClient override arePluginsEnabled,
      then we need to call out to the FrameLoaderClient every time we read
      the setting.
      
      We don't have testing infrustructure for these changes, which is lame.
      I'm supposed to fix that in Bug 33991.
      
      * dom/DOMImplementation.cpp:
      (WebCore::DOMImplementation::createDocument):
      * loader/MainResourceLoader.cpp:
      (WebCore::MainResourceLoader::substituteMIMETypeFromPluginDatabase):
      * loader/PluginDocument.cpp:
      (WebCore::PluginTokenizer::writeRawData):
      * page/Page.cpp:
      (WebCore::Page::pluginData):
      * plugins/MimeType.cpp:
      (WebCore::MimeType::enabledPlugin):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55206 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0b0b6580
    • jamesr@google.com's avatar
      2010-02-24 James Robinson <jamesr@chromium.org> · c3cbb6fe
      jamesr@google.com authored
              Reviewed by Dmitry Titov.
      
              Do not fire focus events while a modal dialog is up.
              https://bugs.webkit.org/show_bug.cgi?id=33962
      
              Modifies the FocusController to check the frame's page's defersLoading() flag before firing blur/focus events.
              This flag is set while a modal dialog (like a window.alert or window.confirm) is up.  Firing the events causes
              assertion failures, since when the dialog is dismissed the PageGroupLoadDeferrer assumes that no script has run.
      
              Manual tests only as DumpRenderTree does not support modal dialogs
      
              * manual-tests/modal-dialog-blur-selfclose.html: Added.
              * manual-tests/modal-dialog-blur.html: Added.
              * page/FocusController.cpp:
              (WebCore::dispatchEventsOnWindowAndFocusedNode):
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55205 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      c3cbb6fe
    • mitz@apple.com's avatar
      <rdar://problem/7018611> innerHTML applies meta/link/title tags from a detached html element · a1ccbd93
      mitz@apple.com authored
      Reviewed by Anders Carlsson.
      
      WebCore: 
      
      Test: fast/parser/fragment-parser.html
      
      Ensure that fragment parsing has no side effects on the fragment’s owner
      document.
      
      * html/HTMLParser.cpp:
      (WebCore::HTMLParser::insertNode): Don’t call
      dispatchDocumentElementAvailable() for fragments.
      (WebCore::HTMLParser::handleError): Don’t copy attributes to the owner
      document’s <html> and <body> elements when a redundant <html> or <body>
      is encountered while parsing a fragment.
      (WebCore::HTMLParser::framesetCreateErrorCheck): Don’t change the owner
      document’s <body> element’s style when parsing a fragment.
      (WebCore::HTMLParser::createHead): Don’t attach the new <head> to the
      ownder document of a fragment.
      
      LayoutTests: 
      
      * fast/parser/fragment-parser-expected.txt: Added.
      * fast/parser/fragment-parser.html: Added.
      * fast/parser/script-tests/fragment-parser.js: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      a1ccbd93
    • levin@chromium.org's avatar
      Need to create a CanvasSurface base class for HTMLCanvasElement. · 0fcdb6b9
      levin@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=35322
      
      Reviewed by Darin Adler.
      
      This is an initial step in making the OffscreenCanvas object.
      
      No new functionality so no new tests.
      
      * GNUmakefile.am: Added CanvasSurface to the build.
      * WebCore.gypi: ditto
      * WebCore.pro: ditto
      * WebCore.vcproj/WebCore.vcproj: ditto
      * WebCore.xcodeproj/project.pbxproj: ditto
      * dom/CanvasSurface.cpp: Added.
      * dom/CanvasSurface.h: Added.
      * html/HTMLCanvasElement.h: Made HTMLCanvasElement inherit from CanvasSurface.
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55201 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0fcdb6b9
    • pkasting@chromium.org's avatar
      Fix regression in calculating an animated image's start time. · af4a924c
      pkasting@chromium.org authored
      https://bugs.webkit.org/show_bug.cgi?id=35115
      
      Reviewed by Adam Barth.
      
      * platform/graphics/BitmapImage.cpp:
      (WebCore::BitmapImage::startAnimation):
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55199 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      af4a924c
    • mitz@apple.com's avatar
      <rdar://problem/7682827> Text with :first-letter lingers after being removed · 3c9de1c6
      mitz@apple.com authored
      Reviewed by Simon Fraser.
      
      WebCore: 
      
      Test: fast/css/first-letter-set-text.html
      
      * rendering/RenderTextFragment.cpp:
      (WebCore::RenderTextFragment::setTextInternal): Set this back as the
      text node’s renderer, as removing the first letter has resets the node’s
      renderer.
      
      LayoutTests: 
      
      * fast/css/first-letter-set-text-expected.checksum: Added.
      * fast/css/first-letter-set-text-expected.png: Added.
      * fast/css/first-letter-set-text-expected.txt: Added.
      * fast/css/first-letter-set-text.html: Added.
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55196 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      3c9de1c6
    • ariya@webkit.org's avatar
      2010-02-24 Ariya Hidayat <ariya.hidayat@gmail.com> · 5bf61098
      ariya@webkit.org authored
              Reviewed by Kenneth Rohde Christiansen.
      
              [Qt] Faster cut-off for rectangle fill without shadow.
              https://bugs.webkit.org/show_bug.cgi?id=35337
      
              * platform/graphics/qt/GraphicsContextQt.cpp:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55193 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      5bf61098
    • jocelyn.turcotte@nokia.com's avatar
      [Qt] Corrects build break of QtLauncher on Windows. · 883337a3
      jocelyn.turcotte@nokia.com authored
      The VERSION variable was not set anymore while building in trunk.
      
      Reviewed by nobody, build fix.
      
      * WebCore.pro:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55190 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      883337a3
    • xan@webkit.org's avatar
      2010-02-24 Xan Lopez <xlopez@igalia.com> · 26c6469a
      xan@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Get rid of an extra call to
              setNPWindowIfNeeded. updatePluginWidget already calls this for us
              if needed.
      
              * plugins/gtk/PluginViewGtk.cpp:
              (WebCore::PluginView::platformStart):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55189 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      26c6469a
    • apavlov@chromium.org's avatar
      2010-02-24 Alexander Pavlov <apavlov@chromium.org> · 7cb77de3
      apavlov@chromium.org authored
              Reviewed by Pavel Feldman.
      
              Web Inspector: Activate/Deactivate breaks does not look consistent with rest of the toolbar.
      
              Fix style and add the new images to the related file sets.
              https://bugs.webkit.org/show_bug.cgi?id=35307
      
              * WebCore.gypi:
              * inspector/front-end/Images/deactivateBreakpointsButtonGlyph.png:
              * inspector/front-end/Images/deactivateBreakpointsDisabledButtonGlyph.png:
              * inspector/front-end/WebKit.qrc:
              * inspector/front-end/inspector.css:
      
      
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55187 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      7cb77de3
    • xan@webkit.org's avatar
      2010-02-24 Xan Lopez <xlopez@igalia.com> · 0cd3b056
      xan@webkit.org authored
              Reviewed by Gustavo Noronha.
      
              Try to sanitize a bit the geometry management of plugins.
      
              Stop doing contradictory things in updatePluginWidget (we were at
              the same time pretending the geometry setting was delayed until
              ::paint and setting the geometry not once but twice) and just set
              it any time the windowRect or clipRect for the plugin has changed.
      
              This is closer to what the Mac port does, and fixes instances of
              the plugins not being drawn until the window is resized or
              scrolled. Other than that all manual and layout tests seems to
              still work.
      
              * plugins/gtk/PluginViewGtk.cpp:
              (WebCore::PluginView::updatePluginWidget):
              (WebCore::PluginView::setNPWindowIfNeeded):
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55186 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      0cd3b056
    • oliver@apple.com's avatar
      2010-02-23 Geoff Garen <ggaren@apple.com> · d4c01312
      oliver@apple.com authored
              Reviewed by Oliver Hunt.
      
              Simplify animation lifetime handling.  Previously we manually
              determined whether our base element was safe when we unregistered
              our listener, now we simply ensure that the base element itself
              registers and unregisters the animation listener.
      
              * svg/animation/SVGSMILElement.cpp:
              (WebCore::ConditionEventListener::create):
              (WebCore::ConditionEventListener::disconnectAnimation):
              (WebCore::ConditionEventListener::ConditionEventListener):
              (WebCore::ConditionEventListener::operator==):
              (WebCore::ConditionEventListener::handleEvent):
              (WebCore::SVGSMILElement::eventBaseFor):
              (WebCore::SVGSMILElement::connectConditions):
              (WebCore::SVGSMILElement::disconnectConditions):
              * svg/animation/SVGSMILElement.h:
      
      git-svn-id: http://svn.webkit.org/repository/webkit/trunk@55182 268f45cc-cd09-0410-ab3c-d52691b4dbfc
      d4c01312
  3. 23 Feb, 2010 7 commits